{
  "name": "vansrouter",
  "version": "0.9.62",
  "description": "9Router CLI - Start and manage 9Router server",
  "repository": "https://github.com/Vanszs/VansRouter",
  "bin": {
    "vansrouter": "./cli.js"
  },
  "files": [
    "cli.js",
    "README.md",
    "LICENSE",
    "hooks",
    "src",
    "app"
  ],
  "scripts": {
    "build": "node scripts/build-cli.js",
    "pack:cli": "npm run build && npm pack --pack-destination ../..",
    "publish:cli": "npm run build && npm publish",
    "prepublishOnly": "npm run build",
    "postinstall": "node hooks/postinstall.js"
  },
  "dependencies": {
    "chalk": "^4.1.2",
    "commander": "^11.1.0",
    "esbuild": "^0.20.2",
    "node-forge": "^1.3.1",
    "node-machine-id": "^1.1.12",
    "open": "^8.4.2",
    "ora": "^9.1.0",
    "react": "19.2.4",
    "react-dom": "19.2.4",
    "ws": "^8.16.0"
  },
  "comment_name": "DO NOT rename this package back to 9router. It must remain vansrouter to match the global updater configuration (see UPDATER_CONFIG in src/shared/constants/config.js). Changing this causes update loops and data mismatches.",
  "comment_sqlite": "sql.js + better-sqlite3 are NOT bundled here. They are installed into ~/.9router/runtime/node_modules by hooks/postinstall.js (and re-checked at runtime by cli.js). This avoids Windows EBUSY errors when updating the global CLI, since native .node files no longer live under the locked install dir.",
  "comment_systray": "systray2 is NOT bundled here. It is lazy-installed into ~/.9router/runtime/node_modules by hooks/postinstall.js on macOS/Linux only. Windows uses PowerShell NotifyIcon (zero binary). This avoids shipping unsigned Go binaries that trigger antivirus false positives (Kaspersky). We use the systray2 fork because the legacy systray@1.0.5 ships a 2017 x86_64 binary that fails on modern macOS dyld.",
  "keywords": [
    "9router",
    "ai",
    "proxy",
    "copilot",
    "cursor",
    "antigravity"
  ],
  "author": "Vanszs",
  "license": "MIT"
}
