{"_id":"@dharbur/open-claw-monitor","name":"@dharbur/open-claw-monitor","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@dharbur/open-claw-monitor","version":"1.0.0","description":"Security interceptor MCP server for OpenClaw — intercepts, classifies, and blocks dangerous AI agent actions","main":"dist/openclaw-plugin.js","openclaw":{"extensions":["./dist/openclaw-plugin.js"]},"bin":{"open-claw-monitor":"dist/index.js"},"scripts":{"build":"tsc","start":"node dist/index.js","setup":"node dist/index.js setup","dev":"tsx src/index.ts","test":"jest --config jest.config.js","test:e2e":"tsx src/e2e-test.ts"},"keywords":["openclaw","mcp","security","ai-agent","firewall"],"author":"","license":"ISC","type":"commonjs","dependencies":{"@google/generative-ai":"^0.24.1","@modelcontextprotocol/sdk":"^1.26.0","dotenv":"^17.3.1","express":"^5.2.1","groq-sdk":"^0.37.0","resend":"^6.9.2","winston":"^3.19.0","ws":"^8.19.0","yaml":"^2.8.2","zod":"^3.25.76"},"devDependencies":{"@types/jest":"^30.0.0","@types/node":"^25.3.0","@vitejs/plugin-react":"^6.0.1","autoprefixer":"^10.4.27","concurrently":"^9.2.1","jest":"^30.2.0","postcss":"^8.5.8","tailwindcss":"^4.2.2","ts-jest":"^29.4.6","tsx":"^4.21.0","typescript":"^5.9.3","vite":"^8.0.1"},"_id":"@dharbur/open-claw-monitor@1.0.0","gitHead":"9344a7b1027fe75a07f72457e3bc4d0e77b5e8e5","types":"./dist/openclaw-plugin.d.ts","_nodeVersion":"22.22.0","_npmVersion":"10.9.4","dist":{"integrity":"sha512-GeMni/34A1+sIZnht3rivxVzRTS3IuCjhYEop2Rn4ahTWtLlMke/ktE3+uqYpiV60bqmIAArummUCdZcmQDZsw==","shasum":"fb83374b7d16d8c5e887a95211c6fc4476324f83","tarball":"https://registry.npmjs.org/@dharbur/open-claw-monitor/-/open-claw-monitor-1.0.0.tgz","fileCount":100,"unpackedSize":739205,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAk8HuXNK85kbXohIYynFTBaIIP3ezqIOE9tiDcqPdWLAiBIFkUaMPyVgWjkhBtT3jGI5G5ONG9aVWToCnjPUi8cew=="}]},"_npmUser":{"name":"dharbur","email":"dharbur0309@gmail.com"},"directories":{},"maintainers":[{"name":"dharbur","email":"dharbur0309@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/open-claw-monitor_1.0.0_1774802551187_0.29717857254587954"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-29T16:42:31.120Z","1.0.0":"2026-03-29T16:42:31.393Z","modified":"2026-03-29T16:42:31.565Z"},"maintainers":[{"name":"dharbur","email":"dharbur0309@gmail.com"}],"description":"Security interceptor MCP server for OpenClaw — intercepts, classifies, and blocks dangerous AI agent actions","keywords":["openclaw","mcp","security","ai-agent","firewall"],"license":"ISC","readme":"# 🛡️ OpenClaw Monitor\n\n**Security Interceptor MCP Server for OpenClaw**\n\nA proxy gateway that intercepts, classifies, and blocks dangerous AI agent actions before they execute. Built as an MCP (Model Context Protocol) server that sits between OpenClaw and its tools.\n\n## Features\n\n- 🔒 **Action Interception** — Intercepts all tool calls before execution\n- 📊 **Risk Classification** — Categorizes actions by severity (SAFE → CRITICAL)\n- 🚫 **Policy Engine** — Configurable ALLOW/BLOCK decisions with strict mode\n- 📧 **Email Alerts** — Immediate alerts for HIGH/CRITICAL via Resend, digest for MEDIUM\n- 📝 **Audit Trail** — Structured JSONL logging of all intercepted actions\n- ⚙️ **YAML Policies** — Customizable security rules\n\n## Security Rules\n\n| Category | Examples |\n|----------|----------|\n| **File System** | Blocks `.ssh`, `.env`, credentials, sensitive extensions |\n| **Shell** | Blocks `rm -rf /`, reverse shells, privilege escalation |\n| **Network** | Domain allowlist/blocklist, exfiltration detection |\n| **Secrets** | Detects API keys, private keys, connection strings |\n\n## Quick Start\n\n```bash\n# Install dependencies\nnpm install\n\n# Set environment variables\nexport OCM_EMAIL_TO=\"you@example.com\"\nexport OCM_RESEND_API_KEY=\"re_...\"\n\n# Development\nnpm run dev\n\n# Production\nnpm run build\nnpm start\n```\n\n## MCP Tools\n\n| Tool | Description |\n|------|-------------|\n| `intercept_action` | Core proxy — evaluates any tool call |\n| `check_file_safety` | Quick file path safety check |\n| `check_command_safety` | Quick shell command safety check |\n| `check_url_safety` | Quick URL/domain safety check |\n| `get_security_stats` | View audit statistics |\n| `get_security_policy` | View current policy (keys redacted) |\n\n## Connect to OpenClaw\n\nAdd to your MCP configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"open-claw-monitor\": {\n      \"command\": \"node\",\n      \"args\": [\"/path/to/open-claw-monitor/dist/index.js\"]\n    }\n  }\n}\n```\n\n## Severity Levels\n\n| Level | Action | Alert |\n|-------|--------|-------|\n| 🟢 SAFE | Allow | — |\n| 🔵 LOW | Allow + Log | — |\n| 🟡 MEDIUM | Allow + Log | Digest email |\n| 🟠 HIGH | **Block** | Immediate email |\n| 🔴 CRITICAL | **Block** | Immediate email |\n\n## License\n\nISC\n","readmeFilename":"README.md","_rev":"1-355cec5f61c999fd1c044137b1153c24"}