{
  "name": "@node9/proxy",
  "version": "2.0.0",
  "description": "The Sudo Command for AI Agents. Execution Security for Claude Code, Codex, Gemini, Cursor, Opencode, Pi, and any MCP server.",
  "main": "./dist/index.js",
  "module": "./dist/index.mjs",
  "types": "./dist/index.d.ts",
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.mjs",
      "require": "./dist/index.js"
    }
  },
  "bin": {
    "node9": "./dist/cli.js"
  },
  "engines": {
    "node": ">=18"
  },
  "workspaces": [
    "packages/*"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/node9-ai/node9-proxy.git"
  },
  "bugs": {
    "url": "https://github.com/node9-ai/node9-proxy/issues"
  },
  "homepage": "https://github.com/node9-ai/node9-proxy#readme",
  "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": "Nadav <nadav@node9.ai>",
  "license": "Apache-2.0",
  "files": [
    "dist",
    "README.md",
    "LICENSE"
  ],
  "scripts": {
    "build": "npm --workspace @node9/policy-engine run build && tsup",
    "dev": "tsup --watch",
    "demo": "tsx examples/demo.ts",
    "typecheck": "tsc --noEmit",
    "lint": "eslint .",
    "lint:fix": "eslint . --fix",
    "format": "prettier --write .",
    "format:check": "prettier --check .",
    "check:extractor-version": "node scripts/check-extractor-version.mjs",
    "bump-extractor-version": "node scripts/check-extractor-version.mjs --bump",
    "fix": "npm run format && npm run lint:fix",
    "validate": "npm run format && npm run lint && npm run typecheck && npm run test && npm run test:e2e && npm run build",
    "test:e2e": "cross-env NODE9_TESTING=1 bash scripts/e2e.sh",
    "test": "cross-env NODE9_TESTING=1 vitest --run",
    "test:coverage": "cross-env NODE9_TESTING=1 vitest --run --coverage",
    "test:watch": "cross-env NODE9_TESTING=1 vitest",
    "preuninstall": "node9 uninstall || echo 'node9 uninstall failed — remove hooks manually from ~/.claude/settings.json'",
    "prepublishOnly": "npm run validate",
    "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"
  },
  "dependencies": {
    "@inquirer/prompts": "^8.3.0",
    "chalk": "^4.1.2",
    "commander": "^14.0.3",
    "execa": "^9.6.1",
    "ink": "^7.0.2",
    "mvdan-sh": "^0.10.1",
    "picomatch": "^4.0.3",
    "react": "^19.2.6",
    "safe-regex2": "^5.1.0",
    "smol-toml": "^1.6.1",
    "string-width": "^4.2.3",
    "yaml": "^2.9.0",
    "zod": "^3.25.76"
  },
  "bundleDependencies": [
    "mvdan-sh"
  ],
  "devDependencies": {
    "@anthropic-ai/sdk": "^0.78.0",
    "@octokit/rest": "^22.0.1",
    "@semantic-release/commit-analyzer": "^13.0.1",
    "@semantic-release/git": "^10.0.1",
    "@semantic-release/github": "^12.0.6",
    "@semantic-release/npm": "^13.1.5",
    "@semantic-release/release-notes-generator": "^14.1.0",
    "@types/node": "^25.3.1",
    "@types/picomatch": "^4.0.2",
    "@types/react": "^19.2.14",
    "@vitest/coverage-v8": "4.1.2",
    "cross-env": "^10.1.0",
    "ink-testing-library": "^4.0.0",
    "prettier": "^3.4.2",
    "semantic-release": "^25.0.3",
    "tsup": "^8.5.1",
    "tsx": "^4.21.0",
    "typescript": "^5.9.3",
    "typescript-eslint": "^8.20.0",
    "vitest": "4.1.2"
  },
  "overrides": {
    "undici": "^7.24.0",
    "ws": "^8.21.0"
  },
  "publishConfig": {
    "access": "public"
  },
  "release": {
    "branches": [
      "main"
    ],
    "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}"
        }
      ]
    ]
  }
}
