{
  "name": "wind-agent-cli",
  "version": "1.39.2",
  "productName": "WindCli",
  "description": "A local-first web interface for AI coding agents",
  "type": "module",
  "engines": {
    "node": ">=22"
  },
  "main": "dist-server/server/index.js",
  "bin": {
    "wacli": "dist-server/server/modules/cli/cli.js"
  },
  "files": [
    "electron/",
    "server/",
    "shared/",
    "public/api-docs.html",
    "dist/",
    "dist-server/",
    "scripts/",
    "README.md"
  ],
  "homepage": "https://github.com/CaineWind/wacli#readme",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/CaineWind/wacli.git"
  },
  "bugs": {
    "url": "https://github.com/CaineWind/wacli/issues"
  },
  "publishConfig": {
    "access": "public"
  },
  "scripts": {
    "dev": "concurrently --kill-others \"npm run server:dev\" \"npm run client\"",
    "preserver": "node scripts/promote-dist-server.mjs recover",
    "server": "node dist-server/server/index.js",
    "server:dev": "tsx --tsconfig server/tsconfig.json server/index.ts",
    "server:dev-watch": "tsx watch --tsconfig server/tsconfig.json server/index.ts",
    "client": "vite",
    "desktop": "electron electron/main.js",
    "desktop:dev": "cross-env ELECTRON_DEV_URL=http://127.0.0.1:5200 electron electron/main.js",
    "desktop:stage": "node scripts/release/prepare-desktop-app.js",
    "desktop:pack": "npm run build && npm run desktop:stage && electron-builder --projectDir .desktop-build/desktop-app --dir",
    "desktop:dist:mac": "npm run build && npm run desktop:stage && electron-builder --projectDir .desktop-build/desktop-app --mac dmg",
    "desktop:dist:win": "npm run build && npm run desktop:stage && electron-builder --projectDir .desktop-build/desktop-app --win nsis",
    "server:bundle": "npm run build && node scripts/release/build-server-bundle.js",
    "desktop:icon:mac": "node electron/scripts/generate-macos-icon.js",
    "build": "npm run build:client && npm run build:server",
    "build:client": "node scripts/build-client.mjs && node scripts/verify-pwa-build.mjs",
    "prebuild:server": "node -e \"require('node:fs').rmSync('dist-server.next', { recursive: true, force: true })\"",
    "build:server": "tsc -p server/tsconfig.json && tsc-alias -p server/tsconfig.json",
    "postbuild:server": "node scripts/promote-dist-server.mjs",
    "preview": "vite preview",
    "typecheck": "tsc --noEmit -p tsconfig.json && tsc --noEmit -p server/tsconfig.json",
    "test": "tsx --tsconfig server/tsconfig.json --test \"server/**/*.test.ts\" \"server/**/*.test.js\"",
    "test:client": "tsx --test \"src/**/*.test.ts\" \"src/**/*.test.tsx\"",
    "lint": "eslint src/ server/ --max-warnings=0",
    "lint:fix": "eslint src/ server/ --fix",
    "start": "npm run build && npm run server",
    "release": "./release.sh",
    "prepublishOnly": "npm run build",
    "postinstall": "node scripts/fix-node-pty.js && node scripts/fix-codex-sdk-windows-hide.js",
    "prepare": "husky",
    "update:platform": "./update-platform.sh",
    "audit:production": "npm audit --omit=dev --audit-level=low",
    "audit:all": "npm audit --audit-level=low"
  },
  "build": {
    "appId": "ai.cloudcli.desktop",
    "productName": "WindCli",
    "asar": false,
    "artifactName": "windcli-desktop-${version}-${os}-${arch}.${ext}",
    "directories": {
      "output": "release/desktop"
    },
    "extraMetadata": {
      "main": "electron/main.js"
    },
    "files": [
      "electron/",
      "public/",
      "dist/",
      "dist-server/",
      "shared/",
      "server/",
      "package.json",
      "!**/node_modules/@anthropic-ai/claude-agent-sdk-{darwin,linux,win32}-*/**"
    ],
    "protocols": [
      {
        "name": "WindCli",
        "schemes": [
          "cloudcli"
        ]
      }
    ],
    "mac": {
      "category": "public.app-category.developer-tools",
      "icon": "electron/assets/logo-macos.icns",
      "notarize": true,
      "target": [
        "dmg"
      ],
      "extendInfo": {
        "CFBundleName": "WindCli",
        "CFBundleDisplayName": "WindCli",
        "CFBundleURLTypes": [
          {
            "CFBundleURLName": "WindCli",
            "CFBundleURLSchemes": [
              "cloudcli"
            ]
          }
        ]
      }
    },
    "win": {
      "icon": "electron/assets/logo-windows.ico",
      "target": [
        "nsis"
      ]
    },
    "nsis": {
      "installerIcon": "electron/assets/logo-windows.ico",
      "uninstallerIcon": "electron/assets/logo-windows.ico"
    }
  },
  "keywords": [
    "claude code",
    "claude-code",
    "claude-code-ui",
    "cloudcli",
    "codex",
    "cursor",
    "cursor-cli",
    "anthropic",
    "openai",
    "google",
    "coding-agent",
    "web-ui",
    "ui",
    "mobile IDE"
  ],
  "author": "WindCli contributors",
  "license": "AGPL-3.0-or-later",
  "dependencies": {
    "@anthropic-ai/claude-agent-sdk": "^0.3.165",
    "@codemirror/lang-css": "^6.3.1",
    "@codemirror/lang-html": "^6.4.9",
    "@codemirror/lang-javascript": "^6.2.4",
    "@codemirror/lang-json": "^6.0.1",
    "@codemirror/lang-markdown": "^6.3.3",
    "@codemirror/lang-python": "^6.2.1",
    "@codemirror/merge": "^6.11.1",
    "@codemirror/theme-one-dark": "^6.1.2",
    "@iarna/toml": "^2.2.5",
    "@octokit/rest": "^22.0.0",
    "@openai/codex-sdk": "^0.146.0",
    "@replit/codemirror-minimap": "^0.5.2",
    "@tailwindcss/typography": "^0.5.16",
    "@uiw/react-codemirror": "^4.23.13",
    "@vscode/ripgrep": "^1.18.0",
    "@xterm/addon-clipboard": "^0.1.0",
    "@xterm/addon-fit": "^0.10.0",
    "@xterm/addon-web-links": "^0.11.0",
    "@xterm/addon-webgl": "^0.18.0",
    "@xterm/xterm": "^5.5.0",
    "bcrypt": "^6.0.0",
    "better-sqlite3": "^13.0.3",
    "chokidar": "^4.0.3",
    "class-variance-authority": "^0.7.1",
    "clsx": "^2.1.1",
    "cmdk": "^1.1.1",
    "cors": "^2.8.5",
    "cross-spawn": "^7.0.3",
    "dompurify": "^3.4.14",
    "express": "^4.22.2",
    "fuse.js": "^7.0.0",
    "gray-matter": "^4.0.3",
    "i18next": "^25.7.4",
    "i18next-browser-languagedetector": "^8.2.0",
    "ignore": "^7.0.6",
    "jsonwebtoken": "^9.0.2",
    "jszip": "^3.10.1",
    "katex": "^0.16.25",
    "lucide-react": "^0.515.0",
    "mermaid": "^11.16.1",
    "mime-types": "^3.0.1",
    "multer": "^2.3.0",
    "node-fetch": "^2.7.0",
    "node-pty": "^1.2.0-beta.12",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-dropzone": "^14.2.3",
    "react-error-boundary": "^4.1.2",
    "react-i18next": "^16.5.3",
    "react-markdown": "^10.1.0",
    "react-router-dom": "^7.18.3",
    "react-syntax-highlighter": "^16.1.1",
    "rehype-katex": "^7.0.1",
    "rehype-raw": "^7.0.0",
    "remark-breaks": "^4.0.0",
    "remark-gfm": "^4.0.0",
    "remark-math": "^6.0.0",
    "tailwind-merge": "^3.3.1",
    "web-push": "^3.6.7",
    "ws": "^8.21.3"
  },
  "devDependencies": {
    "@commitlint/cli": "^20.5.0",
    "@commitlint/config-conventional": "^20.5.0",
    "@eslint/js": "^9.39.3",
    "@release-it/conventional-changelog": "^12.0.0",
    "@testing-library/dom": "^10.4.1",
    "@testing-library/react": "^16.3.3",
    "@types/better-sqlite3": "^9.6.0",
    "@types/cors": "^2.8.19",
    "@types/cross-spawn": "^6.0.6",
    "@types/express": "^5.0.6",
    "@types/jsdom": "^30.0.0",
    "@types/mime-types": "^3.0.1",
    "@types/multer": "^2.2.0",
    "@types/node": "^22.19.7",
    "@types/react": "^18.2.43",
    "@types/react-dom": "^18.2.17",
    "@types/ws": "^8.18.1",
    "@vitejs/plugin-react": "^5.2.0",
    "auto-changelog": "^2.5.0",
    "autoprefixer": "^10.4.16",
    "concurrently": "^8.2.2",
    "conventional-changelog-conventionalcommits": "^10.4.0",
    "cross-env": "^10.1.0",
    "electron": "^44.1.1",
    "electron-builder": "^26.15.3",
    "eslint": "^9.39.3",
    "eslint-import-resolver-typescript": "^4.4.4",
    "eslint-plugin-boundaries": "^6.0.2",
    "eslint-plugin-import-x": "^4.16.1",
    "eslint-plugin-react": "^7.37.5",
    "eslint-plugin-react-hooks": "^7.0.1",
    "eslint-plugin-react-refresh": "^0.5.2",
    "eslint-plugin-tailwindcss": "^3.18.2",
    "eslint-plugin-unused-imports": "^4.4.1",
    "globals": "^17.4.0",
    "husky": "^9.1.7",
    "jsdom": "^29.1.1",
    "lint-staged": "^16.3.2",
    "node-gyp": "^12.4.0",
    "postcss": "^8.5.26",
    "release-it": "^21.0.2",
    "sharp": "^0.35.4",
    "tailwindcss": "^3.4.19",
    "tsc-alias": "^1.8.16",
    "tsx": "^4.23.13",
    "typescript": "^5.9.3",
    "typescript-eslint": "^8.56.1",
    "vite": "^7.3.6",
    "vite-plugin-pwa": "^1.3.0"
  },
  "overrides": {
    "@humanfs/node": "0.16.8",
    "qs": "6.16.0"
  },
  "lint-staged": {
    "src/**/*.{ts,tsx,js,jsx}": "eslint --max-warnings=0",
    "server/**/*.{js,ts}": "eslint --max-warnings=0"
  },
  "allowScripts": {
    "bcrypt@6.0.0": true,
    "electron-winstaller@5.4.0": true,
    "esbuild@0.28.2": true,
    "node-pty@1.2.0-beta.12": true,
    "unrs-resolver@1.11.1": true,
    "better-sqlite3": false
  }
}
