fix: reproducible build — pin deps, patch commander, move stubs to stubs/
- Move private package stubs to stubs/ (tracked), reference via file: in package.json
Stubs: color-diff-napi, modifiers-napi, @ant/claude-for-chrome-mcp,
@anthropic-ai/mcpb, @anthropic-ai/sandbox-runtime
- Add patches/commander@14.0.3.patch via pnpm patch:
Allow multi-char short flags (/^-[^-]+$/) so -d2e works with commander v14
- Pin all dependency versions to exact versions from original cli.js bundle
(extracted from node_modules package.json files in source map)
- Add @anthropic-ai/bedrock-sdk, foundry-sdk, vertex-sdk to dependencies
- Update .gitignore: node_modules/ fully ignored (regenerated by pnpm install)
- Update scripts to use plain `bun` instead of hardcoded path
- Verified: rm -rf node_modules && pnpm install && bun run build.ts succeeds
Output: dist/cli.js (22.1MB), `bun dist/cli.js --version` → 2.1.88 (Claude Code)
This commit is contained in:
@@ -4,114 +4,127 @@
|
||||
"type": "module",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"build": "~/.bun/bin/bun-darwin-aarch64/bun run build.ts",
|
||||
"start": "~/.bun/bin/bun-darwin-aarch64/bun dist/cli.js",
|
||||
"dev": "~/.bun/bin/bun-darwin-aarch64/bun src/entrypoints/cli.tsx"
|
||||
"build": "bun run build.ts",
|
||||
"start": "bun dist/cli.js",
|
||||
"dev": "bun src/entrypoints/cli.tsx"
|
||||
},
|
||||
"dependencies": {
|
||||
"@alcalzone/ansi-tokenize": "*",
|
||||
"@anthropic-ai/sdk": "*",
|
||||
"@aws-crypto/sha256-js": "^5.2.0",
|
||||
"@aws-sdk/client-bedrock": "^3.1020.0",
|
||||
"@aws-sdk/client-bedrock-runtime": "*",
|
||||
"@aws-sdk/client-sts": "^3.1020.0",
|
||||
"@aws-sdk/credential-provider-node": "^3.972.28",
|
||||
"@azure/identity": "^4.13.1",
|
||||
"@commander-js/extra-typings": "*",
|
||||
"@growthbook/growthbook": "*",
|
||||
"@modelcontextprotocol/sdk": "*",
|
||||
"@opentelemetry/api": "*",
|
||||
"@opentelemetry/api-logs": "*",
|
||||
"@opentelemetry/core": "*",
|
||||
"@opentelemetry/exporter-logs-otlp-grpc": "^0.214.0",
|
||||
"@opentelemetry/exporter-logs-otlp-http": "^0.214.0",
|
||||
"@opentelemetry/exporter-logs-otlp-proto": "^0.214.0",
|
||||
"@opentelemetry/exporter-metrics-otlp-grpc": "^0.214.0",
|
||||
"@opentelemetry/exporter-metrics-otlp-http": "^0.214.0",
|
||||
"@opentelemetry/exporter-metrics-otlp-proto": "^0.214.0",
|
||||
"@opentelemetry/exporter-prometheus": "^0.214.0",
|
||||
"@opentelemetry/exporter-trace-otlp-grpc": "^0.214.0",
|
||||
"@opentelemetry/exporter-trace-otlp-http": "^0.214.0",
|
||||
"@opentelemetry/exporter-trace-otlp-proto": "^0.214.0",
|
||||
"@opentelemetry/resources": "*",
|
||||
"@opentelemetry/sdk-logs": "*",
|
||||
"@opentelemetry/sdk-metrics": "*",
|
||||
"@opentelemetry/sdk-trace-base": "*",
|
||||
"@opentelemetry/semantic-conventions": "*",
|
||||
"@smithy/core": "^3.23.13",
|
||||
"@smithy/eventstream-serde-node": "^4.2.12",
|
||||
"@smithy/fetch-http-handler": "^5.3.15",
|
||||
"@smithy/node-http-handler": "^4.5.1",
|
||||
"@smithy/protocol-http": "^5.3.12",
|
||||
"@smithy/signature-v4": "^5.3.12",
|
||||
"@smithy/smithy-client": "^4.12.8",
|
||||
"@smithy/util-base64": "^4.3.2",
|
||||
"@xmldom/xmldom": "^0.9.9",
|
||||
"ajv": "*",
|
||||
"ajv-formats": "*",
|
||||
"asciichart": "*",
|
||||
"auto-bind": "*",
|
||||
"axios": "*",
|
||||
"bidi-js": "*",
|
||||
"chalk": "*",
|
||||
"chokidar": "*",
|
||||
"cli-boxes": "*",
|
||||
"code-excerpt": "*",
|
||||
"commander": "*",
|
||||
"diff": "*",
|
||||
"emoji-regex": "*",
|
||||
"env-paths": "*",
|
||||
"execa": "*",
|
||||
"fflate": "^0.8.2",
|
||||
"figures": "*",
|
||||
"fuse.js": "*",
|
||||
"get-east-asian-width": "*",
|
||||
"google-auth-library": "*",
|
||||
"highlight.js": "*",
|
||||
"https-proxy-agent": "*",
|
||||
"ignore": "*",
|
||||
"indent-string": "*",
|
||||
"ink": "*",
|
||||
"jsonc-parser": "*",
|
||||
"lodash-es": "*",
|
||||
"lru-cache": "*",
|
||||
"marked": "*",
|
||||
"p-map": "*",
|
||||
"picomatch": "*",
|
||||
"proper-lockfile": "*",
|
||||
"qrcode": "*",
|
||||
"react": "*",
|
||||
"react-reconciler": "*",
|
||||
"semver": "*",
|
||||
"shell-quote": "*",
|
||||
"signal-exit": "*",
|
||||
"stack-utils": "*",
|
||||
"strip-ansi": "*",
|
||||
"supports-hyperlinks": "*",
|
||||
"tree-kill": "*",
|
||||
"turndown": "^7.2.2",
|
||||
"type-fest": "*",
|
||||
"undici": "*",
|
||||
"usehooks-ts": "*",
|
||||
"vscode-jsonrpc": "*",
|
||||
"vscode-languageserver-protocol": "*",
|
||||
"vscode-languageserver-types": "*",
|
||||
"wrap-ansi": "*",
|
||||
"ws": "*",
|
||||
"xmlbuilder": "^15.1.1",
|
||||
"xss": "*",
|
||||
"yaml": "*",
|
||||
"zod": "*",
|
||||
"zod-to-json-schema": "*"
|
||||
"@alcalzone/ansi-tokenize": "0.3.0",
|
||||
"@ant/claude-for-chrome-mcp": "file:./stubs/@ant/claude-for-chrome-mcp",
|
||||
"@anthropic-ai/bedrock-sdk": "0.26.4",
|
||||
"@anthropic-ai/foundry-sdk": "0.2.3",
|
||||
"@anthropic-ai/mcpb": "file:./stubs/@anthropic-ai/mcpb",
|
||||
"@anthropic-ai/sandbox-runtime": "file:./stubs/@anthropic-ai/sandbox-runtime",
|
||||
"@anthropic-ai/sdk": "0.80.0",
|
||||
"@anthropic-ai/vertex-sdk": "0.14.4",
|
||||
"@aws-crypto/sha256-js": "5.2.0",
|
||||
"@aws-sdk/client-bedrock": "3.1020.0",
|
||||
"@aws-sdk/client-bedrock-runtime": "3.1020.0",
|
||||
"@aws-sdk/client-sts": "3.1020.0",
|
||||
"@aws-sdk/credential-provider-node": "3.972.28",
|
||||
"@azure/identity": "4.13.1",
|
||||
"@commander-js/extra-typings": "14.0.0",
|
||||
"@growthbook/growthbook": "1.6.5",
|
||||
"@modelcontextprotocol/sdk": "1.29.0",
|
||||
"@opentelemetry/api": "1.9.1",
|
||||
"@opentelemetry/api-logs": "0.214.0",
|
||||
"@opentelemetry/core": "2.6.1",
|
||||
"@opentelemetry/exporter-logs-otlp-grpc": "0.214.0",
|
||||
"@opentelemetry/exporter-logs-otlp-http": "0.214.0",
|
||||
"@opentelemetry/exporter-logs-otlp-proto": "0.214.0",
|
||||
"@opentelemetry/exporter-metrics-otlp-grpc": "0.214.0",
|
||||
"@opentelemetry/exporter-metrics-otlp-http": "0.214.0",
|
||||
"@opentelemetry/exporter-metrics-otlp-proto": "0.214.0",
|
||||
"@opentelemetry/exporter-prometheus": "0.214.0",
|
||||
"@opentelemetry/exporter-trace-otlp-grpc": "0.214.0",
|
||||
"@opentelemetry/exporter-trace-otlp-http": "0.214.0",
|
||||
"@opentelemetry/exporter-trace-otlp-proto": "0.214.0",
|
||||
"@opentelemetry/resources": "2.6.1",
|
||||
"@opentelemetry/sdk-logs": "0.214.0",
|
||||
"@opentelemetry/sdk-metrics": "2.6.1",
|
||||
"@opentelemetry/sdk-trace-base": "2.6.1",
|
||||
"@opentelemetry/semantic-conventions": "1.40.0",
|
||||
"@smithy/core": "3.23.13",
|
||||
"@smithy/eventstream-serde-node": "4.2.12",
|
||||
"@smithy/fetch-http-handler": "5.3.15",
|
||||
"@smithy/node-http-handler": "4.5.1",
|
||||
"@smithy/protocol-http": "5.3.12",
|
||||
"@smithy/signature-v4": "5.3.12",
|
||||
"@smithy/smithy-client": "4.12.8",
|
||||
"@smithy/util-base64": "4.3.2",
|
||||
"@xmldom/xmldom": "0.9.9",
|
||||
"ajv": "8.18.0",
|
||||
"ajv-formats": "3.0.1",
|
||||
"asciichart": "1.5.25",
|
||||
"auto-bind": "5.0.1",
|
||||
"axios": "1.14.0",
|
||||
"bidi-js": "1.0.3",
|
||||
"chalk": "5.6.2",
|
||||
"chokidar": "5.0.0",
|
||||
"cli-boxes": "4.0.1",
|
||||
"code-excerpt": "4.0.0",
|
||||
"color-diff-napi": "file:./stubs/color-diff-napi",
|
||||
"commander": "14.0.3",
|
||||
"diff": "8.0.4",
|
||||
"emoji-regex": "10.6.0",
|
||||
"env-paths": "4.0.0",
|
||||
"execa": "9.6.1",
|
||||
"fflate": "0.8.2",
|
||||
"figures": "6.1.0",
|
||||
"fuse.js": "7.1.0",
|
||||
"get-east-asian-width": "1.5.0",
|
||||
"google-auth-library": "10.6.2",
|
||||
"highlight.js": "11.11.1",
|
||||
"https-proxy-agent": "7.0.6",
|
||||
"ignore": "7.0.5",
|
||||
"indent-string": "5.0.0",
|
||||
"ink": "6.8.0",
|
||||
"jsonc-parser": "3.3.1",
|
||||
"lodash-es": "4.17.23",
|
||||
"lru-cache": "11.2.7",
|
||||
"marked": "17.0.5",
|
||||
"modifiers-napi": "file:./stubs/modifiers-napi",
|
||||
"p-map": "7.0.4",
|
||||
"picomatch": "4.0.4",
|
||||
"proper-lockfile": "4.1.2",
|
||||
"qrcode": "1.5.4",
|
||||
"react": "19.2.4",
|
||||
"react-reconciler": "0.33.0",
|
||||
"semver": "7.7.4",
|
||||
"shell-quote": "1.8.3",
|
||||
"signal-exit": "4.1.0",
|
||||
"stack-utils": "2.0.6",
|
||||
"strip-ansi": "7.2.0",
|
||||
"supports-hyperlinks": "4.4.0",
|
||||
"tree-kill": "1.2.2",
|
||||
"turndown": "7.2.2",
|
||||
"type-fest": "5.5.0",
|
||||
"undici": "7.24.6",
|
||||
"usehooks-ts": "3.1.1",
|
||||
"vscode-jsonrpc": "8.2.1",
|
||||
"vscode-languageserver-protocol": "3.17.5",
|
||||
"vscode-languageserver-types": "3.17.5",
|
||||
"wrap-ansi": "9.0.2",
|
||||
"ws": "8.20.0",
|
||||
"xmlbuilder": "15.1.1",
|
||||
"xss": "1.0.15",
|
||||
"yaml": "2.8.3",
|
||||
"zod": "4.3.6",
|
||||
"zod-to-json-schema": "3.25.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "*",
|
||||
"@types/react": "*",
|
||||
"@types/ws": "*",
|
||||
"bun-types": "*",
|
||||
"typescript": "*"
|
||||
"bun-types": "1.3.11",
|
||||
"typescript": "6.0.2"
|
||||
},
|
||||
"bin": {
|
||||
"claude": "./dist/cli.js"
|
||||
},
|
||||
"pnpm": {
|
||||
"patchedDependencies": {
|
||||
"commander@14.0.3": "patches/commander@14.0.3.patch"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user