원클릭으로
file-server-guard
Scan a directory for sensitive files before serving it over HTTP. Always run this before using the file-server skill.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Scan a directory for sensitive files before serving it over HTTP. Always run this before using the file-server skill.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Browse, search, and install skills from the CrawHub skill marketplace.
Agent Messaging (ClawMeets). Send, read, list, and delete messages via the ClawMeets agent-to-agent protocol.
Expose a local port to the public internet using ngrok. Use when the user wants a public URL for a locally running web service.
Notion API for creating and managing pages, databases, and blocks.
Create or update MMClaw skills. Use this when the user wants to add new capabilities, automate a specific tool, or define complex multi-step workflows for the agent.
Search the web using a configured search provider. Use when the user explicitly asks to search, look up current information, or needs real-time data such as news, prices, or recent events.
| name | file-server-guard |
| description | Scan a directory for sensitive files before serving it over HTTP. Always run this before using the file-server skill. |
| metadata | {"mmclaw":{"emoji":"🛡️","os":["linux","darwin","win32"],"requires":{"bins":["python"]}}} |
This skill scans a target directory for sensitive files before it is exposed over HTTP. It is a mandatory prerequisite for the file-server skill.
Always run this before starting a file server. Never skip it.
Run the following Python script via shell_execute, replacing <DIRECTORY> with the target directory path:
import os, fnmatch
SENSITIVE_PATTERNS = [
".env", ".env.*", "*.pem", "*.key", "*.p12", "*.pfx",
"id_rsa", "id_rsa.*", "id_ed25519", "id_ed25519.*",
"*.ppk", "credentials", "credentials.*", "secrets.*",
"*.secret", "token.*", "*.token", "config.json",
"*.sqlite", "*.db", "shadow", "passwd",
"*.ovpn", "*.crt", "*.cer",
]
directory = os.path.expanduser("<DIRECTORY>")
found = []
for root, dirs, files in os.walk(directory):
# Skip hidden dirs like .git
dirs[:] = [d for d in dirs if not d.startswith(".git")]
for filename in files:
for pattern in SENSITIVE_PATTERNS:
if fnmatch.fnmatch(filename, pattern) or fnmatch.fnmatch(filename.lower(), pattern):
rel = os.path.relpath(os.path.join(root, filename), directory)
found.append(rel)
break
if found:
print("WARNING: Sensitive files detected in directory:")
for f in found:
print(f" - {f}")
print("\nDo NOT serve this directory without removing or excluding these files.")
print("STATUS: UNSAFE")
else:
print("No sensitive files detected.")
print("STATUS: SAFE")
STATUS: UNSAFE: stop immediately. Report the full list of flagged files to the user. Ask the user to either remove the sensitive files, or choose a different directory. Do NOT start the file server.STATUS: SAFE: inform the user the directory is clean and proceed with the file-server skill..git directories are skipped (git internals, not user data)