{"_id":"xingshu-coder","_rev":"28-7edb720da9ed25089c3179e01f55ddd4","name":"xingshu-coder","dist-tags":{"latest":"0.15.0-4"},"versions":{"0.10.1":{"name":"xingshu-coder","version":"0.10.1","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.10.1","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/happy.mjs","xingshu-mcp":"bin/happy-mcp.mjs"},"dist":{"shasum":"223613a4f79b7871dc0ae93767a5c656a82d4276","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.10.1.tgz","fileCount":44,"integrity":"sha512-Odaf8L2iESzvWDo1O8c8KaH7SI9PQbqWVXxWR9JXcGq/nz+pGjKZAlJFQ/1YoeneOnXd83vfxWzFD969ObT3hw==","signatures":[{"sig":"MEUCIGBTHZ+oTNQxeZB/B2zJalNIVP+6RMndr+rB/eNsy3JQAiEAt5CNJnF/2gaKhHpwamBnUemExza6v6c717MUurgM/U0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":225655062},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"5681bb4235a09c1fa6b5705d846e08dbca23cf5f","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"yarn build && tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started happy"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.18.3","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"^0.56.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"^1.0.102","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.10.1_1757476868033_0.6714163149978736","host":"s3://npm-registry-packages-npm-production"}},"0.10.1-4":{"name":"xingshu-coder","version":"0.10.1-4","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.10.1-4","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/happy.mjs","xingshu-mcp":"bin/happy-mcp.mjs"},"dist":{"shasum":"735c1c9c5403565cfbd855b2f59b73c179d95ed2","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.10.1-4.tgz","fileCount":44,"integrity":"sha512-wISiU4TD8AhNww0VUJoNbM3orx3OnNXJqq3D+x1dMmpEDgdv13xlHDPQVTu11st4bsLbB8FOg1Cc2sVwOuh4MA==","signatures":[{"sig":"MEUCIQDaPsQ1xQvbcYutHqgot/OOp7zCk2ftgCoYXt3M+A8+9QIgK8W9DH0ENkBthStaY6gQlkNtnppZHvO+nABdky0QqW0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":225650589},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"e3be42ab68516fa0a592c94a4aaee2ea47c53dd5","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"yarn build && tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started happy"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"^0.56.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"^1.0.102","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.10.1-4_1757580316222_0.6197208361190238","host":"s3://npm-registry-packages-npm-production"}},"0.10.1-5":{"name":"xingshu-coder","version":"0.10.1-5","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.10.1-5","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/happy.mjs","xingshu-mcp":"bin/happy-mcp.mjs"},"dist":{"shasum":"dc6b35c41f6a54e4c894246294ce8fbb598e30c1","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.10.1-5.tgz","fileCount":44,"integrity":"sha512-3XTe8xfXlNF30nazzZ4A8o++cPD5fEkBH8Gt2+hInZl7NtJ9BQXTM0H2byqbwXOdVnPKOWtZn7iQqF8apI3Cqg==","signatures":[{"sig":"MEUCID5wsdeRJM/GxlfIeEEHTGX5w/qffrSpIRoBXYwz9WnNAiEAr60wzrkWkPKc3DsV6HWyUWWhncnndnH94YqTmMq4DSw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":225652261},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"e3be42ab68516fa0a592c94a4aaee2ea47c53dd5","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started happy"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.18.3","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"^0.56.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"^1.0.102","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.10.1-5_1757608867960_0.7061116676537851","host":"s3://npm-registry-packages-npm-production"}},"0.10.1-6":{"name":"xingshu-coder","version":"0.10.1-6","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.10.1-6","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/happy.mjs","xingshu-mcp":"bin/happy-mcp.mjs"},"dist":{"shasum":"9f24e192e0fa348c8a212ceac279ce9107f23b96","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.10.1-6.tgz","fileCount":98,"integrity":"sha512-kl5udwXrZGvQ05ttTwTSFKAg7pqDZrAsfsTX4ZybR4sj2i0b/JIcJWY6yD3Tp62walrgFPqotDa9hy81PG/kbg==","signatures":[{"sig":"MEUCIHjoyLpKG6QgHmBrgCsoZgdGre4Jel1WFcFHpJvrQC/GAiEAtKo9+AOVc3EFfPsJclzsOAcVk51LrSfky64xnJfuHYE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":303725882},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"e3be42ab68516fa0a592c94a4aaee2ea47c53dd5","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started happy"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.18.3","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"^0.56.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"^1.0.102","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.10.1-6_1757610074546_0.002671128143061363","host":"s3://npm-registry-packages-npm-production"}},"0.10.1-7":{"name":"xingshu-coder","version":"0.10.1-7","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.10.1-7","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/happy.mjs","xingshu-mcp":"bin/happy-mcp.mjs"},"dist":{"shasum":"6ec2564c95a63702a6312832c12a7e80f1168b58","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.10.1-7.tgz","fileCount":64,"integrity":"sha512-3V2Qo1OpIxcz1TXYQYxQAp6KjwTBNF0SlIBDv1rUqtwb1HPVt5HfS2TlSNxie2vQ4rRzbxMjN4YJ284oHDqHQg==","signatures":[{"sig":"MEYCIQCnR1OG0X5tjXYR+pplEH6/qSeIR3s1okQFd4uMC2IIXQIhANXOvRgBwFXT/QMhaP9iwyVUeK1kKtn0UnQ9SIf5EQFz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291209197},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"e3be42ab68516fa0a592c94a4aaee2ea47c53dd5","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"^0.56.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"^1.0.102","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.10.1-7_1757611247093_0.17623214136017973","host":"s3://npm-registry-packages-npm-production"}},"0.10.1-8":{"name":"xingshu-coder","version":"0.10.1-8","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.10.1-8","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/happy.mjs","xingshu-mcp":"bin/happy-mcp.mjs"},"dist":{"shasum":"51a881e6fc8c1544fd6ba2d3907f1162472e057b","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.10.1-8.tgz","fileCount":64,"integrity":"sha512-tI01OeFY4h+vdtwuK0BGD+hnWTenNVQ3Rt5PKqmKgjMtigS+7b+Cmhha9PHgYY5mu+MZT4nmSD6tWWy5Mjc2og==","signatures":[{"sig":"MEQCIFluei55prgGr0TWU2rjp0j/ugGuyi8K8nIM2FxldET5AiACQnmS3oTxrFSs4KYqGv7hcWv2p1EYQAxqSt0h1mi0Zg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291209277},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"e3be42ab68516fa0a592c94a4aaee2ea47c53dd5","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"^0.56.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"^1.0.102","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.10.1-8_1757611944905_0.43243839374574433","host":"s3://npm-registry-packages-npm-production"}},"0.10.1-9":{"name":"xingshu-coder","version":"0.10.1-9","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.10.1-9","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"8015d209b6c96ac2eeb4d808cf8b5194389d49ee","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.10.1-9.tgz","fileCount":64,"integrity":"sha512-+DgGtz+sKLC0zxFLHkw9g7dBKI8nPXcvMuUMD37opZ64EG/z9sAr4aPLg4ffpLbrMFzw5K4AgK4M1J0IJj66dg==","signatures":[{"sig":"MEQCIDM+auuDVBIXYBtvnh1XR08aL+U4IT0a+CFpsix2/WeaAiAE0FxdOMP5+bwxQbo4PiBPuJVkrm98c+oV4+Sa04ERug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291219058},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"7c9f616626215a2035a3538016c6e39090aea005","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"^0.56.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"^1.0.102","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.10.1-9_1758316651586_0.06527983769849799","host":"s3://npm-registry-packages-npm-production"}},"0.10.1-10":{"name":"xingshu-coder","version":"0.10.1-10","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.10.1-10","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"76851371087c00b3f1fe238a41c034147785862d","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.10.1-10.tgz","fileCount":45,"integrity":"sha512-y3GkIaS5tytolbRmUMchPxNAGFiyt4rNsUE/5rS+qBX638hI0waYxTNDglJVL6o0CLDRYMZFGDeslBb+LA3wAQ==","signatures":[{"sig":"MEQCIDXDTjEfgayYNyv8XUdB5NCQMbtyyNo2869MMhQCAZ7QAiBVddAXJcpFKQ0tsPPmnmSxvtJZkyd+B0hhq3YG/r7iFA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":225667072},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"ef032b388b2cfaf9eeb130fe9234d09bcc37c70a","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"^0.56.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"1.0.120","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.10.1-10_1758421875726_0.8158360637521427","host":"s3://npm-registry-packages-npm-production"}},"0.10.1-11":{"name":"xingshu-coder","version":"0.10.1-11","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.10.1-11","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"5868b2062db99b0c2cbcf7c3499f4acfb96e7f4e","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.10.1-11.tgz","fileCount":64,"integrity":"sha512-kxciKa0iyWoCDDrKcwPN75yD1TdRMXQUUgJ7KhlOEACqempgjE4He0g9zRW+2Vfc+F+7PfUqYgSFnWubEnD9pw==","signatures":[{"sig":"MEUCIQCBjReT6eZsI8dYMet8oEgzqR60TRg31qeegcG+DTLHIgIgW7RmIyIMiD4ezHednG7VF4+bkdmLFeppnNQTMaW5Dko=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291411138},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"ef032b388b2cfaf9eeb130fe9234d09bcc37c70a","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"^0.56.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"1.0.120","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.10.1-11_1758422255969_0.6265419382684159","host":"s3://npm-registry-packages-npm-production"}},"0.10.2":{"name":"xingshu-coder","version":"0.10.2","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.10.2","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"48f689179ed2cf6a036b9a1cd7d8ef194b20ec01","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.10.2.tgz","fileCount":64,"integrity":"sha512-1OUxG6tADEzyhVIvqy0P/vB08pmvLSqRnnNf9TO4z0S7ROJgOAEapXNzIhpZCbwPtyrcKFGJQupzsSDkCbuULw==","signatures":[{"sig":"MEQCIHdSj8Fvw/71jNR9OzES/qztjb2kcF+h4BuVbXMtHbYxAiBemTE+BgsK/q+Ob7il7KuLxnBMpMCVNsS5TFZpB8nNGw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291440571},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"7b6369e7f076a0801dcfcc80d2c27a17ded8ba31","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.65.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"2.0.2","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.10.2_1759301763594_0.6625793022305309","host":"s3://npm-registry-packages-npm-production"}},"0.11.2-0":{"name":"xingshu-coder","version":"0.11.2-0","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.11.2-0","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"c069a1c84a5ec8ab5e62dec6993abe9e2fa1a874","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.11.2-0.tgz","fileCount":64,"integrity":"sha512-D+KSXjvVmFBezwsj2X9/JlJXj6K3+g8eh6DjybjwPQ39zzlE5kX8wEokKCkWBLqk8tjvnHws0t9cGPpFb2JBGw==","signatures":[{"sig":"MEUCIA64WTnk/CsZMKMN3p9shkVkLB6XdiHcHBVzTO0jpNCdAiEA1rSEqMjm+GyYfX9xNrWGdGkLptMv0jbidJ+KKgRZsv4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291649751},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"6f376b34e70f58811ffc1d45b465759a02122e49","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","start":"yarn build && ./bin/happy.mjs","release":"release-it","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"yarn build && tsx --env-file .env.dev-local-server src/index.ts","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.65.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"2.0.14","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.11.2-0_1760184528986_0.3317130872915597","host":"s3://npm-registry-packages-npm-production"}},"0.11.3":{"name":"xingshu-coder","version":"0.11.3","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.11.3","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"a6696091b3d23487242e9c2916acb731bf39eb71","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.11.3.tgz","fileCount":80,"integrity":"sha512-OsLlkfnvYU8gSMvDioYTCVS4ju6aPZekv+L1QO/ewXKiLAvye/cEEUKgBUvmHxW2Sv69GUTwUgYPw4UWdxkHGQ==","signatures":[{"sig":"MEUCIQDi4Q7Pun9Ao0pDfIJkvQD6O4uxleLt/6C+ujEj9RxWgQIgQuYSg5ZdBrOOzq0WGiO998TEH/f4IXCsB9agI1+pQ4Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":317464155},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"36b15c7bc047751fe62a28c48823bd37149f0c72","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"yarn build && ./bin/happy.mjs","esbuild":"bun x esbuild claude-code/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"release-it","beautify":"bun run scripts/beautify.js","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"yarn build && tsx --env-file .env.dev-local-server src/index.ts","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.65.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"2.0.22","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.11.3_1763652011233_0.07600368062230212","host":"s3://npm-registry-packages-npm-production"}},"0.11.4":{"name":"xingshu-coder","version":"0.11.4","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.11.4","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"14aa60291a23714db8f8859a758a7d23d646da7b","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.11.4.tgz","fileCount":67,"integrity":"sha512-xDahD/nb27fbCbk4qA+ZpjrEGZwCRh/ZY51Juv71VNaedhoeUEjbzSVirABkXs9ro8xCCdbry436yNbe5xpBwA==","signatures":[{"sig":"MEQCID8puVdX/pdWcOskbgjywMPcXfKA+iHAVWGcRqfRqMnyAiB3W18uBFUibvfQC5A+NOJbCTRJ9FpjMKTavngYUCjjPg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291894578},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"36b15c7bc047751fe62a28c48823bd37149f0c72","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"yarn build && ./bin/happy.mjs","esbuild":"bun x esbuild claude-code/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"release-it","beautify":"bun run scripts/beautify.js","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"yarn build && tsx --env-file .env.dev-local-server src/index.ts","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.65.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"2.0.22","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.11.4_1763652767460_0.2083392169532714","host":"s3://npm-registry-packages-npm-production"}},"0.11.5":{"name":"xingshu-coder","version":"0.11.5","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.11.5","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"b6a55e29ce3112503bdb7abb49e0b464c6bcc412","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.11.5.tgz","fileCount":67,"integrity":"sha512-6SMyT6035hloxV5a1w3DNiKS2/72nbYnM4yOi58W2If4l1C2lAlvtPzh5Z204tE/M9YEwvLrVmWw5HH8EkVchw==","signatures":[{"sig":"MEUCIAI9qW4VRLApXfF+4JaMq9WQQjSp+Wh7ro3bUthsH2NwAiEApdJZBjMM5igdFZ7EhPJu1jLuzM1nH5UB+HkjjZV6ZL0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291894578},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"36b15c7bc047751fe62a28c48823bd37149f0c72","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"yarn build && ./bin/happy.mjs","esbuild":"bun x esbuild claude-code/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"release-it","beautify":"bun run scripts/beautify.js","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"yarn build && tsx --env-file .env.dev-local-server src/index.ts","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.65.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"2.0.22","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.11.5_1763653268533_0.44229042818944175","host":"s3://npm-registry-packages-npm-production"}},"0.11.5-1":{"name":"xingshu-coder","version":"0.11.5-1","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.11.5-1","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"11c17733a24dde71d9ee23bac0daa2e5936dedca","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.11.5-1.tgz","fileCount":67,"integrity":"sha512-0j97LBkgRqNwvyDRM0UGAr4ToRwBjvv4i8ufgq9V8McLbVvQfOh+JATGMs3/cT7eucRviAE0TuMdQ+WANPYXVQ==","signatures":[{"sig":"MEQCIEakMipDXgX/lR0aBeAhB1FmVamC4nMYSGzVitpFKz7YAiAWgggjabX3GHY5QxvnfxCTeIKTa0YJR2nmLqmwivpS4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291894616},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"36b15c7bc047751fe62a28c48823bd37149f0c72","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"yarn build && ./bin/happy.mjs","esbuild":"bun x esbuild claude-code/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"release-it","beautify":"bun run scripts/beautify.js","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"yarn build && tsx --env-file .env.dev-local-server src/index.ts","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.65.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"2.0.22","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.11.5-1_1763655777149_0.866926434356732","host":"s3://npm-registry-packages-npm-production"}},"0.11.5-2":{"name":"xingshu-coder","version":"0.11.5-2","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.11.5-2","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"1ad8f54550bf04ed46fb35af9b7aa86e5e3096e4","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.11.5-2.tgz","fileCount":67,"integrity":"sha512-LZIw3BY7bfl+p/dtpZkb+ws8fY+a7XOi8uF/phZ0bKqovbD9/a6mKOzH1AoADOX9eQC4Bnb/mnU4BMkDafLKng==","signatures":[{"sig":"MEYCIQDVJiy3TCNLzTXb81b29CvOmZuF4H+JMFy6IOnC1zfoIAIhANMpF1KSrROJfFEwW4gNAra0asLefJ0OmFR6+MMbqw9F","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":291897362},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"36b15c7bc047751fe62a28c48823bd37149f0c72","scripts":{"dev":"tsx --env-file .env.dev src/index.ts","test":"yarn build && tsx --env-file .env.integration-test node_modules/.bin/vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"yarn build && ./bin/happy.mjs","esbuild":"bun x esbuild claude-code/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"release-it","beautify":"bun run scripts/beautify.js","typecheck":"tsc --noEmit","postinstall":"node scripts/unpack-tools.cjs && node scripts/copy-claude-code.cjs","prepublishOnly":"yarn build ","prepublishOnly2":"yarn build && yarn test","dev:local-server":"yarn build && tsx --env-file .env.dev-local-server src/index.ts","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","dev:integration-test-env":"yarn build && tsx --env-file .env.integration-test src/index.ts","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"^6.1.0","tar":"^7.4.3","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.10.0","chalk":"^5.4.1","react":"^19.1.1","fastify":"^5.5.0","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.1.9","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.65.0","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.16","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@anthropic-ai/claude-code":"2.0.22","@modelcontextprotocol/sdk":"^1.15.1","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.3","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.0.0","release-it":"^19.0.4","typescript":"^5","@types/node":">=20","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.11.5-2_1763661862462_0.8908231084490639","host":"s3://npm-registry-packages-npm-production"}},"0.14.0-0":{"name":"xingshu-coder","version":"0.14.0-0","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.14.0-0","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"a7695e3f09f6cdef46136d7048aee3f53458d848","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.14.0-0.tgz","fileCount":78,"integrity":"sha512-IunZqNDd3YhcAYxizoRzjc6FpzoJv0ojErhc27C3yUjSLijPYBDG7ZJeTn9KjSgeNzlyuYZUNVQNretiwq4rmA==","signatures":[{"sig":"MEYCIQCiUuSyYpF57FxYbfXkoxLrVLoDcdhZ48NbBypSDo1ASQIhALsISwO74ZZBgLfKfNli7Bbod5Nq7Jb7DV6ccpxbA3Y1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295022803},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"34be15add906c6e7a0672baaeab4c121dc473691","scripts":{"dev":"tsx src/index.ts","test":"$npm_execpath run build && vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"$npm_execpath run build && node ./bin/happy.mjs","doctor":"node scripts/env-wrapper.cjs stable doctor","stable":"node scripts/env-wrapper.cjs stable","esbuild":"bun x esbuild claude-code-2.0.59/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"$npm_execpath install && release-it","beautify":"bun run scripts/beautify.js","dev:auth":"node scripts/env-wrapper.cjs dev auth","link:dev":"node scripts/link-dev.cjs","setup:dev":"node scripts/setup-dev.cjs","typecheck":"tsc --noEmit","unlink:dev":"node scripts/link-dev.cjs unlink","dev:variant":"node scripts/env-wrapper.cjs dev","postinstall":"node scripts/unpack-tools.cjs","stable:auth":"node scripts/env-wrapper.cjs stable auth","prepublishOnly":"$npm_execpath run build && $npm_execpath test","dev:daemon:stop":"node scripts/env-wrapper.cjs dev daemon stop","dev:daemon:start":"node scripts/env-wrapper.cjs dev daemon start","dev:local-server":"$npm_execpath run build && tsx --env-file .env.dev-local-server src/index.ts","dev:daemon:status":"node scripts/env-wrapper.cjs dev daemon status","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","// ==== Setup ====":"","stable:daemon:stop":"node scripts/env-wrapper.cjs stable daemon stop","stable:daemon:start":"node scripts/env-wrapper.cjs stable daemon start","stable:daemon:status":"node scripts/env-wrapper.cjs stable daemon status","dev:integration-test-env":"$npm_execpath run build && tsx --env-file .env.integration-test src/index.ts","// ==== Development Linking ====":"","// ==== Dev/Stable Variant Management ====":"","// ==== Stable Version Quick Commands ====":"","// ==== Development Version Quick Commands ====":"","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ai":"^5.0.107","ink":"^6.5.1","tar":"^7.5.2","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.13.2","chalk":"^5.6.2","react":"^19.2.0","yargs":"^18.0.0","fastify":"^5.6.2","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.2.7","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.71.2","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.17","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@agentclientprotocol/sdk":"0.12.0","@anthropic-ai/claude-code":"2.0.69","@modelcontextprotocol/sdk":"^1.22.0","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.6","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.1.0","release-it":"^19.0.6","typescript":"^5","@types/node":">=20","js-beautify":"^1.15.4","@types/yargs":"^17.0.35","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.14.0-0_1772090913826_0.42148882303945023","host":"s3://npm-registry-packages-npm-production"}},"0.14.0-1":{"name":"xingshu-coder","version":"0.14.0-1","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.14.0-1","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"a4ba3950ea66dbaca70e8ed94ec94487a72c0b22","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.14.0-1.tgz","fileCount":78,"integrity":"sha512-vJFiZwUm+2tKA5mbSojHO/WAirakKvgfVD7MSpgukHr848WGAm0QIWA+9BPvtOz/1+L+4NoebngHDusjCQ3qMQ==","signatures":[{"sig":"MEQCIBaX4H57epsmjdkaRL+z9upphF7sHSjsMUg2DeQyRgp4AiAcik4clsP3XHtngdO/+I3yR7cyoeoJnG5U9DYudc+T3A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295023114},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"34be15add906c6e7a0672baaeab4c121dc473691","scripts":{"dev":"XINGSHU_DEBUG_ONBOARDING_STATUS_SCHEMA=1 tsx src/index.ts","test":"$npm_execpath run build && vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"$npm_execpath run build && node ./bin/happy.mjs","doctor":"node scripts/env-wrapper.cjs stable doctor","stable":"node scripts/env-wrapper.cjs stable","esbuild":"bun x esbuild claude-code-2.0.59/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"$npm_execpath install && release-it","beautify":"bun run scripts/beautify.js","dev:auth":"node scripts/env-wrapper.cjs dev auth","link:dev":"node scripts/link-dev.cjs","setup:dev":"node scripts/setup-dev.cjs","typecheck":"tsc --noEmit","unlink:dev":"node scripts/link-dev.cjs unlink","dev:variant":"node scripts/env-wrapper.cjs dev","postinstall":"node scripts/unpack-tools.cjs","stable:auth":"node scripts/env-wrapper.cjs stable auth","prepublishOnly":"$npm_execpath run build && $npm_execpath test","dev:daemon:stop":"node scripts/env-wrapper.cjs dev daemon stop","dev:daemon:start":"node scripts/env-wrapper.cjs dev daemon start","dev:local-server":"$npm_execpath run build && tsx --env-file .env.dev-local-server src/index.ts","dev:daemon:status":"node scripts/env-wrapper.cjs dev daemon status","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","// ==== Setup ====":"","stable:daemon:stop":"node scripts/env-wrapper.cjs stable daemon stop","stable:daemon:start":"node scripts/env-wrapper.cjs stable daemon start","stable:daemon:status":"node scripts/env-wrapper.cjs stable daemon status","dev:integration-test-env":"$npm_execpath run build && tsx --env-file .env.integration-test src/index.ts","// ==== Development Linking ====":"","// ==== Dev/Stable Variant Management ====":"","// ==== Stable Version Quick Commands ====":"","// ==== Development Version Quick Commands ====":"","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ai":"^5.0.107","ink":"^6.5.1","tar":"^7.5.2","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.13.2","chalk":"^5.6.2","react":"^19.2.0","yargs":"^18.0.0","fastify":"^5.6.2","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.2.7","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.71.2","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.17","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@agentclientprotocol/sdk":"0.12.0","@anthropic-ai/claude-code":"2.0.69","@modelcontextprotocol/sdk":"^1.22.0","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.6","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.1.0","release-it":"^19.0.6","typescript":"^5","@types/node":">=20","js-beautify":"^1.15.4","@types/yargs":"^17.0.35","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.14.0-1_1772175618432_0.47338919671151447","host":"s3://npm-registry-packages-npm-production"}},"0.14.0-2":{"name":"xingshu-coder","version":"0.14.0-2","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.14.0-2","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"5bede4b0aca535a44abb4e4165db964526f2d9b8","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.14.0-2.tgz","fileCount":78,"integrity":"sha512-TEXAEyWu4gqYAcBLxVfULPHnSOO4rM6T8b1Wz0mG7zOFfEy1tKYYqeiSH84s2FnkuSRgWNL5ytqhJdRq6qcpmw==","signatures":[{"sig":"MEUCIQCxK+WQgHorS3+Ebg+22ZNu8Y5f6JLF5/96JYq+UhxcjwIgA4taI3ygCvHkP0gnebv47+cdrGWxg3FYgghOuC6Elvs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295023116},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"34be15add906c6e7a0672baaeab4c121dc473691","scripts":{"dev":"XINGSHU_DEBUG_ONBOARDING_STATUS_SCHEMA=1 tsx src/index.ts","test":"$npm_execpath run build && vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"$npm_execpath run build && node ./bin/happy.mjs","doctor":"node scripts/env-wrapper.cjs stable doctor","stable":"node scripts/env-wrapper.cjs stable","esbuild":"bun x esbuild claude-code-2.0.59/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"$npm_execpath install && release-it","beautify":"bun run scripts/beautify.js","dev:auth":"node scripts/env-wrapper.cjs dev auth","link:dev":"node scripts/link-dev.cjs","setup:dev":"node scripts/setup-dev.cjs","typecheck":"tsc --noEmit","unlink:dev":"node scripts/link-dev.cjs unlink","dev:variant":"node scripts/env-wrapper.cjs dev","postinstall":"node scripts/unpack-tools.cjs","stable:auth":"node scripts/env-wrapper.cjs stable auth","prepublishOnly":"$npm_execpath run build && $npm_execpath test","dev:daemon:stop":"node scripts/env-wrapper.cjs dev daemon stop","dev:daemon:start":"node scripts/env-wrapper.cjs dev daemon start","dev:local-server":"$npm_execpath run build && tsx --env-file .env.dev-local-server src/index.ts","dev:daemon:status":"node scripts/env-wrapper.cjs dev daemon status","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","// ==== Setup ====":"","stable:daemon:stop":"node scripts/env-wrapper.cjs stable daemon stop","stable:daemon:start":"node scripts/env-wrapper.cjs stable daemon start","stable:daemon:status":"node scripts/env-wrapper.cjs stable daemon status","dev:integration-test-env":"$npm_execpath run build && tsx --env-file .env.integration-test src/index.ts","// ==== Development Linking ====":"","// ==== Dev/Stable Variant Management ====":"","// ==== Stable Version Quick Commands ====":"","// ==== Development Version Quick Commands ====":"","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ai":"^5.0.107","ink":"^6.5.1","tar":"^7.5.2","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.13.2","chalk":"^5.6.2","react":"^19.2.0","yargs":"^18.0.0","fastify":"^5.6.2","ps-list":"^8.1.1","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.2.7","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.71.2","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.17","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@agentclientprotocol/sdk":"0.12.0","@anthropic-ai/claude-code":"2.0.69","@modelcontextprotocol/sdk":"^1.22.0","fastify-type-provider-zod":"4.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.6","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.1.0","release-it":"^19.0.6","typescript":"^5","@types/node":">=20","js-beautify":"^1.15.4","@types/yargs":"^17.0.35","@eslint/compat":"^1","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.14.0-2_1772178797095_0.4322857509850102","host":"s3://npm-registry-packages-npm-production"}},"0.14.0-3":{"name":"xingshu-coder","version":"0.14.0-3","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.14.0-3","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"9e3f2e3d8ae7ff5f9065b276c6181cb25e80f3c3","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.14.0-3.tgz","fileCount":79,"integrity":"sha512-WUCHGZcQnG0XZfmYikUO9A4BU9Bg9tSzuIhLhpKJgcpnVRzTa9p6zeUhpVDS/jtyl/TfkPh0sVWWT5XFceuSZA==","signatures":[{"sig":"MEYCIQCW9q3wAUWpDZJ6xuRWv4ItwHHQ3Q2/MrXKSHf4X5jecwIhAMosQQnM/aOkXCplHR2PP4HSOjm/4rBGtxK33cYULaYy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295519390},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"7588447d806acb65350a6e246c3eab7127f6695a","scripts":{"dev":"XINGSHU_DEBUG_ONBOARDING_STATUS_SCHEMA=1 tsx src/index.ts","test":"$npm_execpath run build && vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"$npm_execpath run build && node ./bin/happy.mjs","doctor":"node scripts/env-wrapper.cjs stable doctor","stable":"node scripts/env-wrapper.cjs stable","esbuild":"bun x esbuild claude-code-2.0.59/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"$npm_execpath install && release-it","beautify":"bun run scripts/beautify.js","dev:auth":"node scripts/env-wrapper.cjs dev auth","link:dev":"node scripts/link-dev.cjs","setup:dev":"node scripts/setup-dev.cjs","typecheck":"tsc --noEmit","unlink:dev":"node scripts/link-dev.cjs unlink","dev:variant":"node scripts/env-wrapper.cjs dev","postinstall":"node scripts/unpack-tools.cjs","stable:auth":"node scripts/env-wrapper.cjs stable auth","prepublishOnly":"$npm_execpath run build && $npm_execpath test","dev:daemon:stop":"node scripts/env-wrapper.cjs dev daemon stop","dev:daemon:start":"node scripts/env-wrapper.cjs dev daemon start","dev:local-server":"$npm_execpath run build && tsx --env-file .env.dev-local-server src/index.ts","dev:daemon:status":"node scripts/env-wrapper.cjs dev daemon status","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","// ==== Setup ====":"","stable:daemon:stop":"node scripts/env-wrapper.cjs stable daemon stop","stable:daemon:start":"node scripts/env-wrapper.cjs stable daemon start","stable:daemon:status":"node scripts/env-wrapper.cjs stable daemon status","dev:integration-test-env":"$npm_execpath run build && tsx --env-file .env.integration-test src/index.ts","// ==== Development Linking ====":"","// ==== Dev/Stable Variant Management ====":"","// ==== Stable Version Quick Commands ====":"","// ==== Development Version Quick Commands ====":"","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"22.21.1","dependencies":{"ai":"^5.0.107","ink":"^6.5.1","tar":"^7.5.2","tmp":"^0.2.5","zod":"^3.23.8","open":"^10.2.0","axios":"^1.13.2","chalk":"^5.6.2","react":"^19.2.0","yargs":"^18.0.0","fastify":"^5.6.2","ps-list":"^8.1.1","inquirer":"13.3.0","tweetnacl":"^1.0.3","@types/tmp":"^0.2.6","http-proxy":"^1.18.1","cross-spawn":"^7.0.6","@types/react":"^19.2.7","@stablelib/hex":"^2.0.1","@types/ps-list":"^6.2.1","expo-server-sdk":"^3.15.0","qrcode-terminal":"^0.12.0","socket.io-client":"^4.8.1","@anthropic-ai/sdk":"0.71.2","@stablelib/base64":"^2.0.1","@types/http-proxy":"^1.17.17","@types/cross-spawn":"^6.0.6","http-proxy-middleware":"^3.0.5","@types/qrcode-terminal":"^0.12.2","@agentclientprotocol/sdk":"0.15.0","@modelcontextprotocol/sdk":"^1.22.0","fastify-type-provider-zod":"4.0.2","@anthropic-ai/sandbox-runtime":"0.0.39","@anthropic-ai/claude-agent-sdk":"0.2.71"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.6","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.1.0","release-it":"^19.0.6","typescript":"^5","@types/node":">=20","js-beautify":"^1.15.4","@types/yargs":"^17.0.35","@eslint/compat":"^1","@types/inquirer":"^9.0.9","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.14.0-3_1773137247768_0.610927056171287","host":"s3://npm-registry-packages-npm-production"}},"0.14.0-4":{"name":"xingshu-coder","version":"0.14.0-4","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.14.0-4","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"fe492bd978831c5dca93362e521fc06896a8b22e","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.14.0-4.tgz","fileCount":57,"integrity":"sha512-kzT/yKAh0ycgkYzqvb2SkOZiY06ywROo2cUHOsiUOFaZWQIDV27MEh/yV+W57YPSBJSPsxgYy3mz6pbk9p0tYA==","signatures":[{"sig":"MEUCIBRIml437eQHsCTo35FdoWokW8BxGow4bYVX2Lz7GSWYAiEAurAAu4uznrBgpQ3E/4GTG8Bn3HRAT9MPR0e36McGCTI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":226070862},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"scripts":{"dev":"XINGSHU_DEBUG_ONBOARDING_STATUS_SCHEMA=1 tsx src/index.ts","test":"$npm_execpath run build && vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"$npm_execpath run build && node ./bin/happy.mjs","doctor":"node scripts/env-wrapper.cjs stable doctor","stable":"node scripts/env-wrapper.cjs stable","esbuild":"bun x esbuild claude-code-2.0.59/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"$npm_execpath install && release-it","beautify":"bun run scripts/beautify.js","dev:auth":"node scripts/env-wrapper.cjs dev auth","link:dev":"node scripts/link-dev.cjs","setup:dev":"node scripts/setup-dev.cjs","typecheck":"tsc --noEmit","unlink:dev":"node scripts/link-dev.cjs unlink","dev:variant":"node scripts/env-wrapper.cjs dev","postinstall":"node scripts/unpack-tools.cjs","stable:auth":"node scripts/env-wrapper.cjs stable auth","prepublishOnly":"$npm_execpath run build && $npm_execpath test","dev:daemon:stop":"node scripts/env-wrapper.cjs dev daemon stop","dev:daemon:start":"node scripts/env-wrapper.cjs dev daemon start","dev:local-server":"$npm_execpath run build && tsx --env-file .env.dev-local-server src/index.ts","dev:daemon:status":"node scripts/env-wrapper.cjs dev daemon status","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","// ==== Setup ====":"","stable:daemon:stop":"node scripts/env-wrapper.cjs stable daemon stop","stable:daemon:start":"node scripts/env-wrapper.cjs stable daemon start","stable:daemon:status":"node scripts/env-wrapper.cjs stable daemon status","dev:integration-test-env":"$npm_execpath run build && tsx --env-file .env.integration-test src/index.ts","// ==== Development Linking ====":"","// ==== Dev/Stable Variant Management ====":"","// ==== Stable Version Quick Commands ====":"","// ==== Development Version Quick Commands ====":"","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"22.22.1","dependencies":{"ink":"6.5.1","tar":"7.5.2","tmp":"0.2.5","zod":"3.25.76","open":"10.2.0","axios":"1.13.2","chalk":"^5.6.2","react":"19.2.0","yargs":"18.0.0","fastify":"5.6.2","ps-list":"8.1.1","inquirer":"13.3.0","tweetnacl":"1.0.3","http-proxy":"1.18.1","cross-spawn":"^7.0.6","@stablelib/hex":"2.0.1","expo-server-sdk":"3.15.0","qrcode-terminal":"0.12.0","socket.io-client":"4.8.1","@anthropic-ai/sdk":"0.71.2","@stablelib/base64":"2.0.1","http-proxy-middleware":"3.0.5","@agentclientprotocol/sdk":"0.15.0","@modelcontextprotocol/sdk":"1.22.0","fastify-type-provider-zod":"4.0.2","@anthropic-ai/sandbox-runtime":"0.0.39","@anthropic-ai/claude-agent-sdk":"0.2.71"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.6","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.1.0","@types/tmp":"^0.2.6","release-it":"^19.0.6","typescript":"^5","@types/node":">=20","js-beautify":"^1.15.4","@types/react":"^19.2.7","@types/yargs":"^17.0.35","@eslint/compat":"^1","@types/ps-list":"^6.2.1","@types/inquirer":"^9.0.9","@types/http-proxy":"^1.17.17","@types/cross-spawn":"^6.0.6","@types/qrcode-terminal":"^0.12.2","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.14.0-4_1773214271093_0.7663227713681817","host":"s3://npm-registry-packages-npm-production"}},"0.14.0-5":{"name":"xingshu-coder","version":"0.14.0-5","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.14.0-5","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"f7ebf9fddba6ad0a88a04c230e076ff60bd2e1fd","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.14.0-5.tgz","fileCount":57,"integrity":"sha512-O6ou/OoSffeJUVyvavUZLQ/Nmo/i1BsJ6FdXdtLieoNhFdtSfcDnVE3feTi1Nviv6tb9zIth0mXNfmZ1CX0kew==","signatures":[{"sig":"MEQCIHVs9Ibd/kPVBHWmjGaCqLj1qYfggFKg5giXFRfvM1osAiBIFEmUYjxpiGh9ws1DOAhuFna1rxv0C9q4Ec2a7Wqo3g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":226068832},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"scripts":{"dev":"XINGSHU_DEBUG_ONBOARDING_STATUS_SCHEMA=1 tsx src/index.ts","test":"$npm_execpath run build && vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"$npm_execpath run build && node ./bin/happy.mjs","doctor":"node scripts/env-wrapper.cjs stable doctor","stable":"node scripts/env-wrapper.cjs stable","esbuild":"bun x esbuild claude-code-2.0.59/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"$npm_execpath install && release-it","beautify":"bun run scripts/beautify.js","dev:auth":"node scripts/env-wrapper.cjs dev auth","link:dev":"node scripts/link-dev.cjs","setup:dev":"node scripts/setup-dev.cjs","typecheck":"tsc --noEmit","unlink:dev":"node scripts/link-dev.cjs unlink","dev:variant":"node scripts/env-wrapper.cjs dev","postinstall":"node scripts/unpack-tools.cjs","stable:auth":"node scripts/env-wrapper.cjs stable auth","prepublishOnly":"$npm_execpath run build && $npm_execpath test","dev:daemon:stop":"node scripts/env-wrapper.cjs dev daemon stop","dev:daemon:start":"node scripts/env-wrapper.cjs dev daemon start","dev:local-server":"$npm_execpath run build && tsx --env-file .env.dev-local-server src/index.ts","dev:daemon:status":"node scripts/env-wrapper.cjs dev daemon status","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","// ==== Setup ====":"","stable:daemon:stop":"node scripts/env-wrapper.cjs stable daemon stop","stable:daemon:start":"node scripts/env-wrapper.cjs stable daemon start","stable:daemon:status":"node scripts/env-wrapper.cjs stable daemon status","dev:integration-test-env":"$npm_execpath run build && tsx --env-file .env.integration-test src/index.ts","// ==== Development Linking ====":"","// ==== Dev/Stable Variant Management ====":"","// ==== Stable Version Quick Commands ====":"","// ==== Development Version Quick Commands ====":"","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"22.22.1","dependencies":{"ink":"6.5.1","tar":"7.5.2","tmp":"0.2.5","zod":"3.25.76","open":"10.2.0","axios":"1.13.2","chalk":"^5.6.2","react":"19.2.0","yargs":"18.0.0","fastify":"5.6.2","ps-list":"8.1.1","inquirer":"13.3.0","tweetnacl":"1.0.3","http-proxy":"1.18.1","cross-spawn":"^7.0.6","@stablelib/hex":"2.0.1","expo-server-sdk":"3.15.0","qrcode-terminal":"0.12.0","socket.io-client":"4.8.1","@anthropic-ai/sdk":"0.71.2","@stablelib/base64":"2.0.1","http-proxy-middleware":"3.0.5","@agentclientprotocol/sdk":"0.15.0","@modelcontextprotocol/sdk":"1.22.0","fastify-type-provider-zod":"4.0.2","@anthropic-ai/sandbox-runtime":"0.0.39","@anthropic-ai/claude-agent-sdk":"0.2.71"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.6","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.1.0","@types/tmp":"^0.2.6","release-it":"^19.0.6","typescript":"^5","@types/node":">=20","js-beautify":"^1.15.4","@types/react":"^19.2.7","@types/yargs":"^17.0.35","@eslint/compat":"^1","@types/ps-list":"^6.2.1","@types/inquirer":"^9.0.9","@types/http-proxy":"^1.17.17","@types/cross-spawn":"^6.0.6","@types/qrcode-terminal":"^0.12.2","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.14.0-5_1773219042976_0.13819880717590372","host":"s3://npm-registry-packages-npm-production"}},"0.15.0-1":{"name":"xingshu-coder","version":"0.15.0-1","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.15.0-1","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"c449fb55e43d4e9226aee518a433e350718cbe21","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.15.0-1.tgz","fileCount":65,"integrity":"sha512-pqUSldB1T0bS+OY8fMmj05W0Rna7art5RpzSkT8Ty9kqjEL4NtErgIoWrU1pIRGjovDCV2ucEAAELeykT+lHGg==","signatures":[{"sig":"MEUCIFHgZEWUoMBT98RzDyng5xTFsXI0aFIFBqZluJO8x7KBAiEAnyRl0BjIu26cAepFZ6aUVuSsdcBAU6BoOx3bN4ZOHk0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":226588526},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"scripts":{"dev":"XINGSHU_DEBUG_ONBOARDING_STATUS_SCHEMA=1 tsx src/index.ts","test":"$npm_execpath run build && vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"$npm_execpath run build && node ./bin/xingshu.mjs","doctor":"node scripts/env-wrapper.cjs stable doctor","stable":"node scripts/env-wrapper.cjs stable","esbuild":"bun x esbuild claude-code-2.0.59/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"$npm_execpath install && release-it","beautify":"bun run scripts/beautify.js","dev:auth":"node scripts/env-wrapper.cjs dev auth","link:dev":"node scripts/link-dev.cjs","setup:dev":"node scripts/setup-dev.cjs","typecheck":"tsc --noEmit","unlink:dev":"node scripts/link-dev.cjs unlink","dev:variant":"node scripts/env-wrapper.cjs dev","postinstall":"node scripts/unpack-tools.cjs","stable:auth":"node scripts/env-wrapper.cjs stable auth","prepublishOnly":"$npm_execpath run build && $npm_execpath test","dev:daemon:stop":"node scripts/env-wrapper.cjs dev daemon stop","dev:daemon:start":"node scripts/env-wrapper.cjs dev daemon start","dev:local-server":"$npm_execpath run build && XINGSHU_HOME_DIR=$HOME/.xingshuzc-dev XINGSHU_SERVER_URL=http://localhost:3005 XINGSHU_WEBAPP_URL=http://localhost:8081 XINGSHU_VARIANT=dev XINGSHU_WS_DEBUG_TRANSPORT=plaintext-json DEBUG=1 NODE_NO_WARNINGS=1 tsx src/index.ts","dev:daemon:status":"node scripts/env-wrapper.cjs dev daemon status","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","// ==== Setup ====":"","stable:daemon:stop":"node scripts/env-wrapper.cjs stable daemon stop","stable:daemon:start":"node scripts/env-wrapper.cjs stable daemon start","stable:daemon:status":"node scripts/env-wrapper.cjs stable daemon status","dev:integration-test-env":"$npm_execpath run build && tsx --env-file .env.integration-test src/index.ts","// ==== Development Linking ====":"","// ==== Dev/Stable Variant Management ====":"","// ==== Stable Version Quick Commands ====":"","// ==== Development Version Quick Commands ====":"","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"22.21.1","dependencies":{"ink":"6.5.1","tar":"7.5.2","tmp":"0.2.5","zod":"3.25.76","open":"10.2.0","axios":"1.13.2","chalk":"^5.6.2","react":"19.2.0","yargs":"18.0.0","fastify":"5.6.2","ps-list":"8.1.1","inquirer":"13.3.0","tweetnacl":"1.0.3","http-proxy":"1.18.1","cross-spawn":"^7.0.6","@stablelib/hex":"2.0.1","expo-server-sdk":"3.15.0","qrcode-terminal":"0.12.0","socket.io-client":"4.8.1","@anthropic-ai/sdk":"0.71.2","@stablelib/base64":"2.0.1","http-proxy-middleware":"3.0.5","@agentclientprotocol/sdk":"0.15.0","@modelcontextprotocol/sdk":"1.22.0","fastify-type-provider-zod":"4.0.2","@anthropic-ai/sandbox-runtime":"0.0.39","@anthropic-ai/claude-agent-sdk":"0.2.71"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.6","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.1.0","@types/tmp":"^0.2.6","release-it":"^19.0.6","typescript":"^5","@types/node":">=20","js-beautify":"^1.15.4","@types/react":"^19.2.7","@types/yargs":"^17.0.35","@eslint/compat":"^1","@types/ps-list":"^6.2.1","@types/inquirer":"^9.0.9","@types/http-proxy":"^1.17.17","@types/cross-spawn":"^6.0.6","@types/qrcode-terminal":"^0.12.2","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.15.0-1_1774428670253_0.7497027451659704","host":"s3://npm-registry-packages-npm-production"}},"0.15.0-2":{"name":"xingshu-coder","version":"0.15.0-2","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.15.0-2","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"f46e9df61a25a1767fcfb97a755735b33e320c97","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.15.0-2.tgz","fileCount":66,"integrity":"sha512-AsgkILuo8fXG4bfavvJRC4Sz4l3f7AASFv9MdD+WdVFVtqC6hlpHvfTcZRkhNiXs5P64iFi9nyD2a8KvvFMftA==","signatures":[{"sig":"MEYCIQCBSk9Fw6Ld+bPR/CcT82A6EBfNw6rtDVOfxWUkirzWmAIhAIi4gnSqcszh2cecyxp8oWmRtin6hy9KTn5HpPTqVdSx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249858600},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"99bb5faf4804548a8792288d354ed89850a869ae","scripts":{"dev":"XINGSHU_DEBUG_ONBOARDING_STATUS_SCHEMA=1 tsx src/index.ts","test":"$npm_execpath run build && vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"$npm_execpath run build && node ./bin/xingshu.mjs","doctor":"node scripts/env-wrapper.cjs stable doctor","stable":"node scripts/env-wrapper.cjs stable","esbuild":"bun x esbuild claude-code-2.0.59/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"$npm_execpath install && release-it","beautify":"bun run scripts/beautify.js","dev:auth":"node scripts/env-wrapper.cjs dev auth","link:dev":"node scripts/link-dev.cjs","setup:dev":"node scripts/setup-dev.cjs","typecheck":"tsc --noEmit","unlink:dev":"node scripts/link-dev.cjs unlink","dev:variant":"node scripts/env-wrapper.cjs dev","docs:graphs":"node scripts/generate-visualization-graphs.mjs","postinstall":"node scripts/unpack-tools.cjs","stable:auth":"node scripts/env-wrapper.cjs stable auth","prepublishOnly":"$npm_execpath run build && $npm_execpath test","dev:daemon:stop":"node scripts/env-wrapper.cjs dev daemon stop","dev:daemon:start":"node scripts/env-wrapper.cjs dev daemon start","dev:local-server":"$npm_execpath run build && XINGSHU_HOME_DIR=$HOME/.xingshuzc-dev XINGSHU_SERVER_URL=http://localhost:3005 XINGSHU_WEBAPP_URL=http://localhost:8081 XINGSHU_VARIANT=dev XINGSHU_WS_DEBUG_TRANSPORT=plaintext-json DEBUG=1 NODE_NO_WARNINGS=1 tsx src/index.ts","dev:daemon:status":"node scripts/env-wrapper.cjs dev daemon status","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","// ==== Setup ====":"","stable:daemon:stop":"node scripts/env-wrapper.cjs stable daemon stop","stable:daemon:start":"node scripts/env-wrapper.cjs stable daemon start","stable:daemon:status":"node scripts/env-wrapper.cjs stable daemon status","dev:integration-test-env":"$npm_execpath run build && tsx --env-file .env.integration-test src/index.ts","// ==== Development Linking ====":"","// ==== Dev/Stable Variant Management ====":"","// ==== Stable Version Quick Commands ====":"","// ==== Development Version Quick Commands ====":"","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"22.21.1","dependencies":{"ink":"6.5.1","tar":"7.5.2","tmp":"0.2.5","zod":"3.25.76","open":"10.2.0","axios":"1.13.2","chalk":"^5.6.2","react":"19.2.0","yargs":"18.0.0","fastify":"5.6.2","ps-list":"8.1.1","inquirer":"13.3.0","tweetnacl":"1.0.3","http-proxy":"1.18.1","cross-spawn":"^7.0.6","@stablelib/hex":"2.0.1","expo-server-sdk":"3.15.0","qrcode-terminal":"0.12.0","socket.io-client":"4.8.1","@anthropic-ai/sdk":"0.71.2","@stablelib/base64":"2.0.1","http-proxy-middleware":"3.0.5","@agentclientprotocol/sdk":"0.15.0","@modelcontextprotocol/sdk":"1.22.0","fastify-type-provider-zod":"4.0.2","@anthropic-ai/sandbox-runtime":"0.0.39","@anthropic-ai/claude-agent-sdk":"0.2.71"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.6","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.1.0","@types/tmp":"^0.2.6","release-it":"^19.0.6","typescript":"^5","@types/node":">=20","js-beautify":"^1.15.4","@types/react":"^19.2.7","@types/yargs":"^17.0.35","@eslint/compat":"^1","@types/ps-list":"^6.2.1","@types/inquirer":"^9.0.9","@types/http-proxy":"^1.17.17","@types/cross-spawn":"^6.0.6","@types/qrcode-terminal":"^0.12.2","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.15.0-2_1775035456023_0.4289393701889519","host":"s3://npm-registry-packages-npm-production"}},"0.15.0-3":{"name":"xingshu-coder","version":"0.15.0-3","author":{"name":"XingShuzc"},"license":"MIT","_id":"xingshu-coder@0.15.0-3","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"dist":{"shasum":"eca0da78fa5154167271b2d971d7eff3ac55cafb","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.15.0-3.tgz","fileCount":66,"integrity":"sha512-46iNVzuBZHWBkvnOItUQ1TFIidXn6dalQebXG8i515EXOnqWgbFxXf2azfPe5vOruwzLNlMHmt0lHkstpaGlkw==","signatures":[{"sig":"MEYCIQD0q4E5Tj0X/vmivdVMuUo+jCFvH4qnLyHGT41kds65ywIhANOjLRRbAHlLOVGKnwA4j1LvxIrzHemdul4hq0zMeQ+I","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249961645},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.cts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./lib":{"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"},"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"}},"./codex/happyMcpStdioBridge":{"import":{"types":"./dist/codex/happyMcpStdioBridge.d.mts","default":"./dist/codex/happyMcpStdioBridge.mjs"},"require":{"types":"./dist/codex/happyMcpStdioBridge.d.cts","default":"./dist/codex/happyMcpStdioBridge.cjs"}}},"gitHead":"458876d843e84ed10063726268eb53cbc1b4ccb4","scripts":{"dev":"XINGSHU_DEBUG_ONBOARDING_STATUS_SCHEMA=1 tsx src/index.ts","test":"$npm_execpath run build && vitest run","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","split":"bun run scripts/code-splitter.js","start":"$npm_execpath run build && node ./bin/xingshu.mjs","doctor":"node scripts/env-wrapper.cjs stable doctor","stable":"node scripts/env-wrapper.cjs stable","esbuild":"bun x esbuild claude-code-2.0.59/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","imports":"bun run scripts/fix-imports.js","release":"$npm_execpath install && release-it","beautify":"bun run scripts/beautify.js","dev:auth":"node scripts/env-wrapper.cjs dev auth","link:dev":"node scripts/link-dev.cjs","setup:dev":"node scripts/setup-dev.cjs","typecheck":"tsc --noEmit","unlink:dev":"node scripts/link-dev.cjs unlink","dev:variant":"node scripts/env-wrapper.cjs dev","docs:graphs":"node scripts/generate-visualization-graphs.mjs","postinstall":"node scripts/unpack-tools.cjs","stable:auth":"node scripts/env-wrapper.cjs stable auth","prepublishOnly":"$npm_execpath run build && $npm_execpath test","dev:daemon:stop":"node scripts/env-wrapper.cjs dev daemon stop","dev:daemon:start":"node scripts/env-wrapper.cjs dev daemon start","dev:local-server":"$npm_execpath run build && XINGSHU_HOME_DIR=$HOME/.xingshuzc-dev XINGSHU_SERVER_URL=http://localhost:3005 XINGSHU_WEBAPP_URL=http://localhost:8081 XINGSHU_VARIANT=dev XINGSHU_WS_DEBUG_TRANSPORT=plaintext-json DEBUG=1 NODE_NO_WARNINGS=1 tsx src/index.ts","dev:daemon:status":"node scripts/env-wrapper.cjs dev daemon status","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","// ==== Setup ====":"","stable:daemon:stop":"node scripts/env-wrapper.cjs stable daemon stop","stable:daemon:start":"node scripts/env-wrapper.cjs stable daemon start","stable:daemon:status":"node scripts/env-wrapper.cjs stable daemon status","dev:integration-test-env":"$npm_execpath run build && tsx --env-file .env.integration-test src/index.ts","// ==== Development Linking ====":"","// ==== Dev/Stable Variant Management ====":"","// ==== Stable Version Quick Commands ====":"","// ==== Development Version Quick Commands ====":"","why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu"},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"repository":{"url":"git+https://github.com/xingshuzc/xingshu-cli.git","type":"git"},"_npmVersion":"10.8.2","description":"Mobile and Web client for Claude Code and Codex","directories":{},"resolutions":{"parse-path":"7.0.3","whatwg-url":"14.2.0","@types/parse-path":"7.0.3"},"_nodeVersion":"20.19.4","dependencies":{"ink":"6.5.1","tar":"7.5.2","tmp":"0.2.5","zod":"3.25.76","open":"10.2.0","axios":"1.13.2","chalk":"^5.6.2","react":"19.2.0","yargs":"18.0.0","fastify":"5.6.2","ps-list":"8.1.1","inquirer":"13.3.0","tweetnacl":"1.0.3","http-proxy":"1.18.1","cross-spawn":"^7.0.6","@stablelib/hex":"2.0.1","expo-server-sdk":"3.15.0","qrcode-terminal":"0.12.0","socket.io-client":"4.8.1","@anthropic-ai/sdk":"0.71.2","@stablelib/base64":"2.0.1","http-proxy-middleware":"3.0.5","@agentclientprotocol/sdk":"0.15.0","@modelcontextprotocol/sdk":"1.22.0","fastify-type-provider-zod":"4.0.2","@anthropic-ai/sandbox-runtime":"0.0.39","@anthropic-ai/claude-agent-sdk":"0.2.71"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22","devDependencies":{"shx":"^0.3.3","tsx":"^4.20.6","dotenv":"^16.6.1","eslint":"^9","vitest":"^3.2.4","pkgroll":"^2.14.2","ts-node":"^10","cross-env":"^10.1.0","@types/tmp":"^0.2.6","release-it":"^19.0.6","typescript":"^5","@types/node":">=20","js-beautify":"^1.15.4","@types/react":"^19.2.7","@types/yargs":"^17.0.35","@eslint/compat":"^1","@types/ps-list":"^6.2.1","@types/inquirer":"^9.0.9","@types/http-proxy":"^1.17.17","@types/cross-spawn":"^6.0.6","@types/qrcode-terminal":"^0.12.2","eslint-config-prettier":"^10"},"_npmOperationalInternal":{"tmp":"tmp/xingshu-coder_0.15.0-3_1775759502994_0.3505534188801447","host":"s3://npm-registry-packages-npm-production"}},"0.15.0-4":{"name":"xingshu-coder","version":"0.15.0-4","description":"Mobile and Web client for Claude Code and Codex","author":{"name":"XingShuzc"},"license":"MIT","type":"module","homepage":"https://github.com/xingshuzc/xingshu-cli","bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"repository":{"type":"git","url":"git+https://github.com/xingshuzc/xingshu-cli.git"},"bin":{"xingshu":"bin/xingshu.mjs","xingshu-mcp":"bin/xingshu-mcp.mjs"},"main":"./dist/index.cjs","module":"./dist/index.mjs","types":"./dist/index.d.cts","exports":{".":{"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"},"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"./lib":{"require":{"types":"./dist/lib.d.cts","default":"./dist/lib.cjs"},"import":{"types":"./dist/lib.d.mts","default":"./dist/lib.mjs"}},"./codex/xingshuMcpStdioBridge":{"require":{"types":"./dist/codex/xingshuMcpStdioBridge.d.cts","default":"./dist/codex/xingshuMcpStdioBridge.cjs"},"import":{"types":"./dist/codex/xingshuMcpStdioBridge.d.mts","default":"./dist/codex/xingshuMcpStdioBridge.mjs"}}},"scripts":{"why do we need to build before running tests / dev?":"We need the binary to be built so we run daemon commands which directly run the binary - we don't want them to go out of sync or have custom spawn logic depending how we started xingshu","typecheck":"tsc --noEmit","beautify":"bun run scripts/beautify.js","esbuild":"bun x esbuild claude-code-2.0.59/cli.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node  --external:module --external:crypto --log-limit=0","esbuild:extension":"bun x esbuild claude-code-extension/extension/extension.js --bundle --outdir=dist --splitting --format=esm --sourcemap --platform=node --external:vscode --external:module --external:crypto --log-limit=0","split":"bun run scripts/code-splitter.js","imports":"bun run scripts/fix-imports.js","docs:graphs":"node scripts/generate-visualization-graphs.mjs","build":"shx rm -rf dist && npx tsc --noEmit && pkgroll","test":"$npm_execpath run build && vitest run","start":"$npm_execpath run build && node ./bin/xingshu.mjs","dev":"XINGSHU_DEBUG_ONBOARDING_STATUS_SCHEMA=1 tsx src/index.ts","dev:local-server":"$npm_execpath run build && XINGSHU_HOME_DIR=$HOME/.xingshuzc-dev XINGSHU_SERVER_URL=http://localhost:3005 XINGSHU_WEBAPP_URL=http://localhost:8081 XINGSHU_VARIANT=dev XINGSHU_WS_DEBUG_TRANSPORT=plaintext-json DEBUG=1 NODE_NO_WARNINGS=1 tsx src/index.ts","dev:integration-test-env":"$npm_execpath run build && tsx --env-file .env.integration-test src/index.ts","prepublishOnly":"$npm_execpath run build && $npm_execpath test","release":"$npm_execpath install && release-it","postinstall":"node scripts/unpack-tools.cjs","// ==== Dev/Stable Variant Management ====":"","stable":"node scripts/env-wrapper.cjs stable","dev:variant":"node scripts/env-wrapper.cjs dev","// ==== Stable Version Quick Commands ====":"","stable:daemon:start":"node scripts/env-wrapper.cjs stable daemon start","stable:daemon:stop":"node scripts/env-wrapper.cjs stable daemon stop","stable:daemon:status":"node scripts/env-wrapper.cjs stable daemon status","stable:auth":"node scripts/env-wrapper.cjs stable auth","// ==== Development Version Quick Commands ====":"","dev:daemon:start":"node scripts/env-wrapper.cjs dev daemon start","dev:daemon:stop":"node scripts/env-wrapper.cjs dev daemon stop","dev:daemon:status":"node scripts/env-wrapper.cjs dev daemon status","dev:auth":"node scripts/env-wrapper.cjs dev auth","// ==== Setup ====":"","setup:dev":"node scripts/setup-dev.cjs","doctor":"node scripts/env-wrapper.cjs stable doctor","// ==== Development Linking ====":"","link:dev":"node scripts/link-dev.cjs","unlink:dev":"node scripts/link-dev.cjs unlink"},"dependencies":{"@agentclientprotocol/sdk":"0.15.0","@anthropic-ai/claude-agent-sdk":"0.2.71","@anthropic-ai/sandbox-runtime":"0.0.39","@anthropic-ai/sdk":"0.71.2","@modelcontextprotocol/sdk":"1.22.0","@stablelib/base64":"2.0.1","@stablelib/hex":"2.0.1","axios":"1.13.2","chalk":"^5.6.2","cross-spawn":"^7.0.6","expo-server-sdk":"3.15.0","fastify":"5.6.2","fastify-type-provider-zod":"4.0.2","http-proxy":"1.18.1","http-proxy-middleware":"3.0.5","ink":"6.5.1","inquirer":"13.3.0","open":"10.2.0","ps-list":"8.1.1","qrcode-terminal":"0.12.0","react":"19.2.0","socket.io-client":"4.8.1","tar":"7.5.2","tmp":"0.2.5","tweetnacl":"1.0.3","yargs":"18.0.0","zod":"3.25.76"},"devDependencies":{"@eslint/compat":"^1","@types/inquirer":"^9.0.9","@types/node":">=20","@types/yargs":"^17.0.35","@types/cross-spawn":"^6.0.6","@types/http-proxy":"^1.17.17","@types/ps-list":"^6.2.1","@types/qrcode-terminal":"^0.12.2","@types/react":"^19.2.7","@types/tmp":"^0.2.6","cross-env":"^10.1.0","dotenv":"^16.6.1","eslint":"^9","eslint-config-prettier":"^10","js-beautify":"^1.15.4","pkgroll":"^2.14.2","release-it":"^19.0.6","shx":"^0.3.3","ts-node":"^10","tsx":"^4.20.6","typescript":"^5","vitest":"^3.2.4"},"resolutions":{"whatwg-url":"14.2.0","parse-path":"7.0.3","@types/parse-path":"7.0.3"},"publishConfig":{"registry":"https://registry.npmjs.org"},"packageManager":"yarn@1.22.22","_id":"xingshu-coder@0.15.0-4","gitHead":"f697e4394f55bcea5af7731d7619e517e028ed27","_nodeVersion":"20.19.4","_npmVersion":"10.8.2","dist":{"integrity":"sha512-5e5DJvqjgEQ4yJu1ipgXcIEV51al8nMKgsUPrFXjqbmaAaHG8iWkhNPAi28tFVUVhVoSyOEOHGviHDSIhrrUkg==","shasum":"9b00d53cd1f72b7e8c3fdd03dddb29f3de54f3d8","tarball":"https://registry.npmjs.org/xingshu-coder/-/xingshu-coder-0.15.0-4.tgz","fileCount":66,"unpackedSize":250009632,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBMmOPlhbbUj1vKOkZuPgGkLOtr9HYLdfp1skjZH5FkOAiEAotFSZwmkuJL1uRWZErJBYpRfuEV8SUe9IHjlp832rrI="}]},"_npmUser":{"name":"xinshu","email":"lsy26746@gmail.com"},"directories":{},"maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/xingshu-coder_0.15.0-4_1776526661598_0.18777836738806752"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-09T15:03:50.798Z","modified":"2026-04-18T15:37:45.078Z","0.10.0-3":"2025-09-09T15:03:52.347Z","0.10.1":"2025-09-10T04:01:09.572Z","0.10.1-4":"2025-09-11T08:45:17.720Z","0.10.1-5":"2025-09-11T16:41:09.553Z","0.10.1-6":"2025-09-11T17:01:16.494Z","0.10.1-7":"2025-09-11T17:20:48.910Z","0.10.1-8":"2025-09-11T17:32:26.744Z","0.10.1-9":"2025-09-19T21:17:33.455Z","0.10.1-10":"2025-09-21T02:31:17.273Z","0.10.1-11":"2025-09-21T02:37:37.805Z","0.10.2":"2025-10-01T06:56:05.421Z","0.11.2-0":"2025-10-11T12:08:50.834Z","0.11.3":"2025-11-20T15:20:13.212Z","0.11.4":"2025-11-20T15:32:52.164Z","0.11.5":"2025-11-20T15:41:10.360Z","0.11.5-1":"2025-11-20T16:22:59.008Z","0.11.5-2":"2025-11-20T18:04:24.320Z","0.14.0-0":"2026-02-26T07:28:37.075Z","0.14.0-1":"2026-02-27T07:00:26.713Z","0.14.0-2":"2026-02-27T07:53:20.359Z","0.14.0-3":"2026-03-10T10:07:31.299Z","0.14.0-4":"2026-03-11T07:31:13.904Z","0.14.0-5":"2026-03-11T08:50:45.687Z","0.15.0-1":"2026-03-25T08:51:12.933Z","0.15.0-2":"2026-04-01T09:24:23.914Z","0.15.0-3":"2026-04-09T18:31:45.869Z","0.15.0-4":"2026-04-18T15:37:44.959Z"},"bugs":{"url":"https://github.com/xingshuzc/xingshu-cli/issues"},"author":{"name":"XingShuzc"},"license":"MIT","homepage":"https://github.com/xingshuzc/xingshu-cli","repository":{"type":"git","url":"git+https://github.com/xingshuzc/xingshu-cli.git"},"description":"Mobile and Web client for Claude Code and Codex","maintainers":[{"name":"xinshu","email":"lsy26746@gmail.com"}],"readme":"# Xingshu\n\nCode on the go — control AI coding agents from your mobile device.\n\nFree. Open source. Code anywhere.\n\n## Installation\n\n```bash\nnpm install -g xingshu-coder\n```\n\n## Usage\n\n### Claude (default)\n\n```bash\nxingshu\n\nyarn dev:local-server -- auth logout\n```\n\nThis will:\n1. Start a Claude Code session\n2. Display a QR code to connect from your mobile device\n3. Allow real-time session sharing between Claude Code and your mobile app\n\n### Gemini\n\n```bash\nxingshu gemini\n```\n\nStart a Gemini CLI session with remote control capabilities.\n\n**First time setup:**\n```bash\n# Authenticate with Google\nxingshu connect gemini\n```\n\n## Commands\n\n- `xingshu auth` – Manage authentication\n- `xingshu codex` – Start Codex mode\n- `xingshu connect` – Store AI vendor API keys in Xingshu cloud\n- `xingshu notify` – Send a push notification to your devices\n- `xingshu daemon` – Manage background service\n- `xingshu doctor` – System diagnostics & troubleshooting\n### Main Commands\n\n- `xingshu` – Start Claude Code session (default)\n- `xingshu gemini` – Start Gemini CLI session\n- `xingshu codex` – Start Codex mode\n\n### Utility Commands\n\n- `xingshu auth` – Manage authentication\n- `xingshu connect` – Store AI vendor API keys in Happy cloud\n- `xingshu notify` – Send a push notification to your devices\n- `xingshu daemon` – Manage background service\n- `xingshu doctor` – System diagnostics & troubleshooting\n\n### Connect Subcommands\n\n```bash\nxingshu connect gemini     # Authenticate with Google for Gemini\nxingshu connect claude     # Authenticate with Anthropic\nxingshu connect codex      # Authenticate with OpenAI\nxingshu connect status     # Show connection status for all vendors\n```\n\n### Gemini Subcommands\n\n```bash\nxingshu gemini                      # Start Gemini session\nxingshu gemini model set <model>    # Set default model\nxingshu gemini model get            # Show current model\nxingshu gemini project set <id>     # Set Google Cloud Project ID (for Workspace accounts)\nxingshu gemini project get          # Show current Google Cloud Project ID\n```\n\n**Available models:** `gemini-2.5-pro`, `gemini-2.5-flash`, `gemini-2.5-flash-lite`\n\n## Options\n\n### Claude Options\n\n- `-m, --model <model>` - Claude model to use (default: sonnet)\n- `-p, --permission-mode <mode>` - Permission mode: auto, default, or plan\n- `--claude-env KEY=VALUE` - Set environment variable for Claude Code\n- `--claude-arg ARG` - Pass additional argument to Claude CLI\n\n### Global Options\n\n- `-h, --help` - Show help\n- `-v, --version` - Show version\n\n## Environment Variables\n\n### Happy Configuration\n\n- `XINGSHU_SERVER_URL` - Custom server URL (default: https://api.cluster-fluster.com)\n- `XINGSHU_WEBAPP_URL` - Custom web app URL (default: https://app.happy.engineering)\n- `XINGSHU_HOME_DIR` - Custom home directory for Happy data (default: ~/.xingshuzc)\n- `XINGSHU_DISABLE_CAFFEINATE` - Disable macOS sleep prevention (set to `true`, `1`, or `yes`)\n- `XINGSHU_EXPERIMENTAL` - Enable experimental features (set to `true`, `1`, or `yes`)\n\n### Gemini Configuration\n\n- `GEMINI_MODEL` - Override default Gemini model\n- `GOOGLE_CLOUD_PROJECT` - Google Cloud Project ID (required for Workspace accounts)\n\n## Gemini Authentication\n\n### Personal Google Account\n\nPersonal Gmail accounts work out of the box:\n\n```bash\nxingshu connect gemini\nxingshu gemini\n```\n\n### Google Workspace Account\n\nGoogle Workspace (organization) accounts require a Google Cloud Project:\n\n1. Create a project in [Google Cloud Console](https://console.cloud.google.com/)\n2. Enable the Gemini API\n3. Set the project ID:\n\n```bash\nxingshu gemini project set your-project-id\n```\n\nOr use environment variable:\n```bash\nGOOGLE_CLOUD_PROJECT=your-project-id xingshu gemini\n```\n\n**Guide:** https://goo.gle/gemini-cli-auth-docs#workspace-gca\n\n## Contributing\n\nInterested in contributing? See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and guidelines.\n\n## Requirements\n\n- Node.js >= 20.0.0\n\n### For Claude\n\n- Claude CLI installed & logged in (`claude` command available in PATH)\n\n### For Gemini\n\n- Gemini CLI installed (`npm install -g @google/gemini-cli`)\n- Google account authenticated via `xingshu connect gemini`\n\n## License\n\nMIT\n\n","readmeFilename":"README.md"}