{"_id":"@code3d/cli","_rev":"6-46dc31bd10730c0cbbe8756f6995000d","name":"@code3d/cli","dist-tags":{"latest":"0.0.1-alpha.10"},"versions":{"0.0.0":{"name":"@code3d/cli","version":"0.0.0","license":"SEE LICENSE IN LICENSE","_id":"@code3d/cli@0.0.0","maintainers":[{"name":"vilicvane","email":"vilicvane@live.com"}],"homepage":"https://github.com/vilicvane/code3d#readme","bugs":{"url":"https://github.com/vilicvane/code3d/issues"},"bin":{"c3d":"placeholder.cjs"},"dist":{"shasum":"8fdf3bdc2fd8b0f2880578cbd47628c19957ea67","tarball":"https://registry.npmjs.org/@code3d/cli/-/cli-0.0.0.tgz","fileCount":4,"integrity":"sha512-xVPhnpeXhWmuoeRJa4wwKlkIKUAvnQE99J9lBUDZJYSj9QJbZU4ywgWk8jCJK1TJcFNUw3a9ukvDshitJZveMQ==","signatures":[{"sig":"MEYCIQDESs1ZiUU6P5EqCrwXZjIsb+fVn5It15Dhfjxm7XGosgIhAPHUd6jP4yY9ay4AvtPdCtgQosC5E57Ksaxf4Seck9fW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2212},"_from":"file:/tmp/code3d-cli-placeholder-0.0.0-km62i68h/code3d-cli-0.0.0.tgz","_npmUser":{"name":"vilicvane","email":"vilicvane@live.com"},"_resolved":"/tmp/code3d-cli-placeholder-0.0.0-km62i68h/code3d-cli-0.0.0.tgz","_integrity":"sha512-xVPhnpeXhWmuoeRJa4wwKlkIKUAvnQE99J9lBUDZJYSj9QJbZU4ywgWk8jCJK1TJcFNUw3a9ukvDshitJZveMQ==","repository":{"url":"git+https://github.com/vilicvane/code3d.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.19.0","description":"Placeholder for the Code3D CLI. No CLI implementation is included.","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cli_0.0.0_1788788009207_0.1369068977376422","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.0":{"name":"@code3d/cli","version":"0.0.1-alpha.0","license":"SEE LICENSE IN LICENSE","_id":"@code3d/cli@0.0.1-alpha.0","maintainers":[{"name":"vilicvane","email":"vilicvane@live.com"}],"bin":{"c3d":"bld/main.js"},"dist":{"shasum":"ac7278567c2ef2c9d5d5299947d21787a868fa95","tarball":"https://registry.npmjs.org/@code3d/cli/-/cli-0.0.1-alpha.0.tgz","fileCount":12,"integrity":"sha512-uGIpsjo88BKt0WzXnu8UYA92+6RPNLeUaLoZg2TMHsrul1SZt14AvWzTtiEdDKj+hoBXhhZUmonbudIw2uxBAQ==","signatures":[{"sig":"MEQCIASRFy/LifppFzkfJ5qDNw+uLaSCroQcfB3VaW47BcKpAiAEq2Cs3kgeooSnGDcHul9lq4A9MdRTeRjowsfxKyWTmw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFXBomCPBIXk492bw57UsYSXGzAGx6BbHMdjHtbLHVDEAiEAlIWnPsqC1wkAs+/KfAY5JOJLrz/FT1hhnBZ5D9vIJu8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":55925},"type":"module","_from":"file:code3d-cli-0.0.1-alpha.0.tgz","engines":{"node":">=24"},"scripts":{"test":"npm run build && npm run test:types && npm run test:run","build":"node ../../node_modules/typescript/bin/tsc --build","prepack":"node ../../scripts/package-license.mjs","test:run":"node --test \"test/*.test.ts\"","test:types":"node ../../node_modules/typescript/bin/tsc --noEmit -p test/tsconfig.json"},"_npmUser":{"name":"vilicvane","email":"vilicvane@live.com"},"_resolved":"/tmp/code3d-cli-release-final-0908/code3d-cli-0.0.1-alpha.0.tgz","_integrity":"sha512-uGIpsjo88BKt0WzXnu8UYA92+6RPNLeUaLoZg2TMHsrul1SZt14AvWzTtiEdDKj+hoBXhhZUmonbudIw2uxBAQ==","_npmVersion":"11.19.0","description":"Command-line access to the project open in Code3D. The App owns files, versions, saving, model execution, and receipts. Node.js 24+ is required.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ws":"^8.21.3","commander":"^15.0.0","@code3d/agent":"0.0.1-alpha.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.0.1-alpha.0_1788848870779_0.841127081836412","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.1":{"name":"@code3d/cli","version":"0.0.1-alpha.1","license":"SEE LICENSE IN LICENSE","_id":"@code3d/cli@0.0.1-alpha.1","maintainers":[{"name":"vilicvane","email":"vilicvane@live.com"}],"bin":{"c3d":"bld/main.js"},"dist":{"shasum":"25c67ee03604bd59d77ca2106c5de6637776aa0c","tarball":"https://registry.npmjs.org/@code3d/cli/-/cli-0.0.1-alpha.1.tgz","fileCount":12,"integrity":"sha512-xny1cxSTxZMqDxulCGcxaE3AFOGv04kQ0zStA+ciXtsTGsgu6OVDx8do7HBbsjTxkodfBn/jF8B80uRQ2FjSLA==","signatures":[{"sig":"MEUCIAY/yZh6I5PcC7adDa9CTmIicVqLSxyRHgCUB2h3EJ8YAiEA2nht866IMjwMeCEqzK+qQpQA5KhIAsAa1z+USodJi9k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICMXBAX0WMxbRbs5X9NiZoCVtWsu2U7zKNqF9W+xKVdWAiAH0C8mL1x63WaA1lt3k4gvtDj/xcCou7W3x8o9dxkdcw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":55915},"type":"module","_from":"file:code3d-cli-0.0.1-alpha.1.tgz","engines":{"node":">=24"},"scripts":{"test":"npm run build && npm run test:types && npm run test:run","build":"node ../../node_modules/typescript/bin/tsc --build","prepack":"node ../../scripts/package-license.mjs","test:run":"node --test \"test/*.test.ts\"","test:types":"node ../../node_modules/typescript/bin/tsc --noEmit -p test/tsconfig.json"},"_npmUser":{"name":"vilicvane","email":"vilicvane@live.com"},"_resolved":"/tmp/code3d-agent-config-release-0908-jp44b5g4/final/code3d-cli-0.0.1-alpha.1.tgz","_integrity":"sha512-xny1cxSTxZMqDxulCGcxaE3AFOGv04kQ0zStA+ciXtsTGsgu6OVDx8do7HBbsjTxkodfBn/jF8B80uRQ2FjSLA==","_npmVersion":"11.19.0","description":"Command-line access to the project open in Code3D. The App owns files, versions, saving, model execution, and receipts. Node.js 24+ is required.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ws":"^8.21.3","commander":"^15.0.0","@code3d/agent":"0.0.1-alpha.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.0.1-alpha.1_1788880593150_0.47367038865931566","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.2":{"name":"@code3d/cli","version":"0.0.1-alpha.2","license":"SEE LICENSE IN LICENSE","_id":"@code3d/cli@0.0.1-alpha.2","maintainers":[{"name":"vilicvane","email":"vilicvane@live.com"}],"homepage":"https://github.com/vilicvane/code3d#readme","bugs":{"url":"https://github.com/vilicvane/code3d/issues"},"bin":{"c3d":"bld/main.js"},"dist":{"shasum":"ffdf341dbdca1e914a3a60c01cb0658a6ef44f9e","tarball":"https://registry.npmjs.org/@code3d/cli/-/cli-0.0.1-alpha.2.tgz","fileCount":15,"integrity":"sha512-Si0kcx5ApzEe9/qh5YZul4zkMhS0YzBG7+DkLXjfne2WXjIIHhFE7i2GkFxeHELWGWKKfEuNDrz5OISbL+qK7w==","signatures":[{"sig":"MEYCIQCeHrRJsVZf0VXHhGViKnuB8j/IBtTtDZf7I6SzAPmT5AIhAMwk2kuxj/v1IDPqYpPh6Rl7x0BCXqUYU980yVfSfJvE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@code3d%2fcli@0.0.1-alpha.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":390425},"type":"module","_from":"file:/home/runner/work/code3d/code3d/dist/packages/code3d-cli-0.0.1-alpha.2.tgz","engines":{"node":">=24"},"scripts":{"test":"npm run build && npm run test:types && npm run test:run","build":"node ../../scripts/build-packages.mjs @code3d/cli","prepack":"npm run build","test:run":"node --import ../../test/source-loader.mjs --test --test-concurrency=1 \"test/*.test.ts\"","test:types":"node ../../node_modules/typescript/bin/tsc --noEmit -p test/tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"vilicvane","email":"vilicvane@live.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:60678d4e-ddf3-4600-9449-90abe2b51830"}},"_resolved":"/home/runner/work/code3d/code3d/dist/packages/code3d-cli-0.0.1-alpha.2.tgz","_integrity":"sha512-Si0kcx5ApzEe9/qh5YZul4zkMhS0YzBG7+DkLXjfne2WXjIIHhFE7i2GkFxeHELWGWKKfEuNDrz5OISbL+qK7w==","repository":{"url":"git+https://github.com/vilicvane/code3d.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.19.1","description":"Command-line access to the project open in Code3D. The App owns files, versions, saving, model execution, and receipts. Node.js 24+ is required.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ws":"^8.21.3","@code3d/agent":"0.0.1-alpha.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.18.1","commander":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.0.1-alpha.2_1789117944126_0.342354377955272","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.8":{"name":"@code3d/cli","version":"0.0.1-alpha.8","license":"SEE LICENSE IN LICENSE","_id":"@code3d/cli@0.0.1-alpha.8","maintainers":[{"name":"vilicvane","email":"vilicvane@live.com"}],"homepage":"https://github.com/vilicvane/code3d#readme","bugs":{"url":"https://github.com/vilicvane/code3d/issues"},"bin":{"c3d":"bld/main.js"},"dist":{"shasum":"2a3c72407f7a3cd0b9980815a93d52f32bde5724","tarball":"https://registry.npmjs.org/@code3d/cli/-/cli-0.0.1-alpha.8.tgz","fileCount":15,"integrity":"sha512-Bt5KzbCeIy4WxN9r/tVvmjbBy10ib8Vh7rqH1Sat5mQRbyO14M8t1GmtlxdhY1svZNbImHyvEkFNhMuFC5GWgQ==","signatures":[{"sig":"MEQCIDTJQasmhDXCERR44bRfgaKqE8u3sbq6PVuQRPZRUZ4pAiBLP/AsXSI35zLkeEUfmdpu7Vq2v9mIgdDPxrLkm1hyjA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIA3IFTzF1rFVB232G9Pz3y/w6R5e3b9Txg93TUloeXSgAiEAraQqz4CwybBD3kJ/oxMGZQYZ07GkRrQhQ4b2rMQiR+w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@code3d%2fcli@0.0.1-alpha.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":390969},"type":"module","_from":"file:/home/runner/work/code3d/code3d/dist/packages/code3d-cli-0.0.1-alpha.8.tgz","engines":{"node":">=24"},"scripts":{"test":"npm run build && npm run test:types && npm run test:run","build":"node ../../scripts/build-packages.mjs @code3d/cli","prepack":"npm run build","test:run":"node --import ../../test/source-loader.mjs --test --test-concurrency=1 \"test/*.test.ts\"","test:types":"node ../../node_modules/typescript/bin/tsc --noEmit -p test/tsconfig.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d47a760d-c504-4134-a3e9-2350348c8980"}},"_resolved":"/home/runner/work/code3d/code3d/dist/packages/code3d-cli-0.0.1-alpha.8.tgz","_integrity":"sha512-Bt5KzbCeIy4WxN9r/tVvmjbBy10ib8Vh7rqH1Sat5mQRbyO14M8t1GmtlxdhY1svZNbImHyvEkFNhMuFC5GWgQ==","repository":{"url":"git+https://github.com/vilicvane/code3d.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.19.1","description":"Command-line access to the project open in Code3D. The App owns files, versions, saving, model execution, and receipts. Node.js 24+ is required.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ws":"^8.21.3","@code3d/agent":"0.0.1-alpha.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.18.1","commander":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.0.1-alpha.8_1789356491067_0.32970881739079294","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.10":{"_id":"@code3d/cli@0.0.1-alpha.10","bin":{"c3d":"bld/main.js"},"bugs":{"url":"https://github.com/vilicvane/code3d/issues"},"dist":{"shasum":"236ab71df7ef1bf61572e62ed0c169bd31946dae","tarball":"https://registry.npmjs.org/@code3d/cli/-/cli-0.0.1-alpha.10.tgz","fileCount":15,"integrity":"sha512-b2J6rsSRrQCW313w0Atln5kVECZ6c/k8U9qYB5dzRqedsWAOuYO+HsTUvP/xFVM/dNIZneyFWrrr0HhMU4odtg==","signatures":[{"sig":"MEQCIApQdWHpHN5qxTqmdx6X+pd7esJKcVgt//8yZGbH6DRrAiA0vIp3/zbXD+Vh9Oy6EpEfipMwY2ew5G7kAZdLDTYuKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD3wDbjUc+SF0OkOkXYJZR87qTQPK7lgXqrqVXg4QBl4wIgdKW0Xbsk2eAiDW2IMmxdzl++MNdSXDLrDoIuuIhegZY="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@code3d%2fcli@0.0.1-alpha.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":390852},"name":"@code3d/cli","type":"module","_from":"file:/home/runner/work/code3d/code3d/dist/packages/code3d-cli-0.0.1-alpha.10.tgz","engines":{"node":">=24"},"license":"SEE LICENSE IN LICENSE","scripts":{"test":"npm run build && npm run test:types && npm run test:run","build":"node ../../scripts/build-packages.mjs @code3d/cli","prepack":"npm run build","test:run":"node --import ../../test/source-loader.mjs --test --test-concurrency=1 \"test/*.test.ts\"","test:types":"node ../../node_modules/typescript/bin/tsc --noEmit -p test/tsconfig.json"},"version":"0.0.1-alpha.10","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d47a760d-c504-4134-a3e9-2350348c8980"}},"homepage":"https://github.com/vilicvane/code3d#readme","_resolved":"/home/runner/work/code3d/code3d/dist/packages/code3d-cli-0.0.1-alpha.10.tgz","_integrity":"sha512-b2J6rsSRrQCW313w0Atln5kVECZ6c/k8U9qYB5dzRqedsWAOuYO+HsTUvP/xFVM/dNIZneyFWrrr0HhMU4odtg==","repository":{"url":"git+https://github.com/vilicvane/code3d.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.19.1","description":"Command-line access to the project open in Code3D. The App owns files, versions, saving, model execution, and receipts. Node.js 24+ is required.","directories":{},"maintainers":[{"name":"vilicvane","email":"vilicvane@live.com"}],"_nodeVersion":"24.20.0","dependencies":{"ws":"^8.21.3","@code3d/agent":"0.0.1-alpha.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.18.1","commander":"^15.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_0.0.1-alpha.10_1789578048653_0.04248457127240912"}}},"time":{"created":"2026-09-07T13:33:28.948Z","modified":"2026-09-16T17:00:49.147Z","0.0.0":"2026-09-07T13:33:29.337Z","0.0.1-alpha.0":"2026-09-08T06:27:50.854Z","0.0.1-alpha.1":"2026-09-08T15:16:33.247Z","0.0.1-alpha.2":"2026-09-11T09:12:24.207Z","0.0.1-alpha.8":"2026-09-14T03:28:11.143Z","0.0.1-alpha.10":"2026-09-16T17:00:48.822Z"},"bugs":{"url":"https://github.com/vilicvane/code3d/issues"},"license":"SEE LICENSE IN LICENSE","homepage":"https://github.com/vilicvane/code3d#readme","repository":{"url":"git+https://github.com/vilicvane/code3d.git","type":"git","directory":"packages/cli"},"description":"Command-line access to the project open in Code3D. The App owns files, versions, saving, model execution, and receipts. Node.js 24+ is required.","maintainers":[{"name":"vilicvane","email":"vilicvane@live.com"}],"readme":"# @code3d/cli\n\nCommand-line access to the project open in Code3D. The App owns files, versions,\nsaving, model execution, and receipts. Node.js 24+ is required.\n\n```sh\nnpx --yes @code3d/cli@latest /absolute/path/to/project.c3d.json serve\n```\n\nRun `serve` through the current agent session's managed process tool, keeping\nstdin or a PTY open. It emits a JSON `listening` event and stays in the foreground.\nEOF, closed stdin, SIGINT, SIGTERM, or SIGHUP closes the listener and releases its\nport. The host must close the managed pipe/PTY or terminate the process when the\nsession ends; do not detach it, use `nohup`, or restart the agent conversation.\n\nWhile it runs, send one complete JSON document through stdin for each invocation:\n\n```sh\necho '{\"operation\":\"context\"}' | npx --yes @code3d/cli@latest project.c3d.json\necho '{\"operation\":\"fs.read\",\"path\":\"/model.ts\"}' | npx --yes @code3d/cli@latest project.c3d.json\nnpx --yes @code3d/cli@latest project.c3d.json --request-id edit-001 < change.json\necho '{\"operation\":\"result\",\"requestId\":\"edit-001\"}' | npx --yes @code3d/cli@latest project.c3d.json\n```\n\nFor example, `change.json` contains the entire request:\n\n```json\n{\n  \"operation\": \"apply\",\n  \"input\": {\n    \"files\": [\n      {\n        \"path\": \"/model.ts\",\n        \"version\": \"<read version>\",\n        \"content\": \"<full source>\"\n      }\n    ],\n    \"cursor\": {\"file\": \"/model.ts\", \"regex\": \"(box\\\\(10, 6, 8\\\\))\"},\n    \"render\": {\"view\": \"front\"},\n    \"topology\": true,\n    \"type\": true\n  }\n}\n```\n\nMulti-line JSON is supported; stdin EOF ends the request. The CLI and local\nbridge pass the payload to the App without interpreting or normalizing operation\nfields. The App owns schema validation. New App operations and parameters do not\nrequire a CLI update while the connection and response envelope stay unchanged.\nThe current App accepts one operation, not a batch or JSON Lines stream.\n\nOnly execution options remain on the command line: `--request-id`, `--timeout`\nand `--output-dir`. `serve` starts the session-managed connection service.\nOperation subcommands and observation flags are not part of the CLI interface.\n\nThe App supplies a private config with `port`, `origin`, `sessionId`,\n`agentId`, `name`, and `key`. Keep the page open and permit local-network access.\nOne process binds each grant's port on 127.0.0.1; multiple agents use separate\nports. Port conflicts are explicit. Revoke/Revoke all stops App retries and removes\nauthorizations; the local process remains owned by its agent host.\n\nOperations emit JSON; artifacts are local files with paths in the result.\nArtifacts are saved for successful and failed responses alike. A `model_failed`\nresponse can include an inspect image and topology under\n`error.details.observation`; the CLI still exits with code 1. An artifact write\nfailure reports the remote result without inline binary data, so its original\nstatus remains available.\nTransport errors distinguish a missing service from a disconnected App and an\nunknown execution outcome, and include executable recovery instructions. Retain\na mutation ID before sending; query it after uncertain outcomes. A `not_sent`\ndelivery state concerns only the current attempt, not that ID's earlier history.\nTo execute a recovery lookup without a shell, use `recovery.queryArgv` together\nwith `recovery.queryStdin`, closing stdin after writing it; `queryCommand` includes\nthe equivalent POSIX-shell JSON pipe.\n\nSee the [agent Markdown entry](../../docs/agents.md) for the required workflow and\ncomplete topic directory. Detailed pages cover [connection](../../docs/agents/connection.md),\n[files and npm dependencies](../../docs/agents/files.md), [cursor and arguments](../../docs/agents/cursor.md),\n[rendering and topology](../../docs/agents/observation.md), and [recovery](../../docs/agents/recovery.md).\nThe [website introduction](../web/src/content/docs/docs/guides/agents.mdx) explains\ncollaboration features for App users.\n\n## Development\n\nFrom the repository root:\n\n```sh\nnpm run build:packages\nnpm test --workspace @code3d/cli\n```\n\nTo test this checkout after building, run\n`node packages/cli/bld/main.js --help` from the repository root. Public workflow\ncommands use `@code3d/cli@latest`; do not rely on them to select an unpublished\ncheckout or a global link.\n\n- [CLI entry](src/main.ts): stdin JSON, execution options, artifacts and recovery output.\n- [Service lifecycle](src/serve.ts): session-managed stdin/PTY and shutdown.\n- [Local bridge](src/bridge.ts): authenticated loopback HTTP/WebSocket exchanges.\n- [Shared transport SDK](../agent/README.md) and [CLI process tests](test/).\n","readmeFilename":"README.md"}