{"_id":"@atom-workflow-agent/acp-sdk","name":"@atom-workflow-agent/acp-sdk","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@atom-workflow-agent/acp-sdk","version":"0.1.0","description":"Standalone ACP client SDK for Atom implementations and ordinary Node.js applications.","license":"Apache-2.0","repository":{"type":"git","url":"git+https://github.com/joekbits/atom-workflow-agent.git","directory":"packages/acp-sdk"},"homepage":"https://github.com/joekbits/atom-workflow-agent/tree/main/packages/acp-sdk#readme","bugs":{"url":"https://github.com/joekbits/atom-workflow-agent/issues"},"keywords":["acp","agent","sdk"],"type":"module","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"publishConfig":{"access":"public","provenance":true},"engines":{"node":">=22"},"dependencies":{"@atom-workflow-agent/acp-provider":"0.1.0","@atom-workflow-agent/contracts":"0.1.0"},"scripts":{"build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","test":"vitest run"},"_id":"@atom-workflow-agent/acp-sdk@0.1.0","_integrity":"sha512-3MVqnvRXVdeycBsq7sNEf+4JKHj9ltGiHyq/Kb5z6nnH0h9ReQS8NFKPqyIDV4672wJB/8wG7TJ8vPgM+pu14g==","_resolved":"/private/tmp/atomflow-npm-release-20260902-1720/atom-workflow-agent-acp-sdk-0.1.0.tgz","_from":"file:/private/tmp/atomflow-npm-release-20260902-1720/atom-workflow-agent-acp-sdk-0.1.0.tgz","_nodeVersion":"22.22.2","_npmVersion":"10.9.7","dist":{"integrity":"sha512-3MVqnvRXVdeycBsq7sNEf+4JKHj9ltGiHyq/Kb5z6nnH0h9ReQS8NFKPqyIDV4672wJB/8wG7TJ8vPgM+pu14g==","shasum":"1082b6c405571500662d2b4762398ece4e3946f5","tarball":"https://registry.npmjs.org/@atom-workflow-agent/acp-sdk/-/acp-sdk-0.1.0.tgz","fileCount":24,"unpackedSize":58841,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIF+1mkrdhFilQa5nBpUSAK5XvxnaweU/GMH9j9mTKx5rAiEA//QekUruHtkll/kHun/2IBhI0Y49dYFqt2WmsWjRC/0="}]},"_npmUser":{"name":"joekbits","email":"wangfeihong868@foxmail.com"},"directories":{},"maintainers":[{"name":"joekbits","email":"wangfeihong868@foxmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/acp-sdk_0.1.0_1788342340369_0.06775452917528413"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-02T09:45:40.097Z","0.1.0":"2026-09-02T09:45:40.489Z","modified":"2026-09-02T09:45:40.793Z"},"maintainers":[{"name":"joekbits","email":"wangfeihong868@foxmail.com"}],"description":"Standalone ACP client SDK for Atom implementations and ordinary Node.js applications.","homepage":"https://github.com/joekbits/atom-workflow-agent/tree/main/packages/acp-sdk#readme","keywords":["acp","agent","sdk"],"repository":{"type":"git","url":"git+https://github.com/joekbits/atom-workflow-agent.git","directory":"packages/acp-sdk"},"bugs":{"url":"https://github.com/joekbits/atom-workflow-agent/issues"},"license":"Apache-2.0","readme":"# @atom-workflow-agent/acp-sdk\n\n[English](README.md) | [简体中文](README.zh-CN.md)\n\n面向 Atom 实现和普通 Node.js 应用的独立 ACP Client 基础能力。\n\nSDK 负责发现并运行本地 Traex、Codex、Claude Code、Pi 或调用方提供的 ACP Provider，管理进程、握手、Session、结构化输出校验、取消和清理。SDK **不会** 自动重试已经开始的请求、在请求失败后切换 Provider/模型、创建 HostTask、等待用户 Signal，也不会伪造降级结果；这些决策全部属于 Atom。\n\n```ts\nimport { createAcpClient } from \"@atom-workflow-agent/acp-sdk\";\n\nconst client = createAcpClient({\n  target: { provider: input.provider, model: input.model, cwd: context.cwd },\n  signal: context.signal,\n});\n\nconst result = await client.run({\n  instruction: \"诊断给定的页面性能证据。\",\n  context: input,\n  outputSchema: DiagnosisSchema,\n});\n```\n\n`provider` 和 `model` 都是可选的：显式值始终优先；省略 `provider` 时，SDK 在正式请求前按 `traex > codex > claude-code > pi` 依次完成 ACP Session 与模型发现，选择第一个可用目标；省略 `model` 使用该 Provider 当前默认模型。预检选中后，正式请求失败不会换 Provider 重跑。省略超时表示 ACP SDK 不设置请求超时；自动发现仍使用有界的单 Provider 预检超时。Workflow 节点重试与 Atom 自己编写的 ACP 调用重试是两个独立层次。\n\n可以单独查看完整发现结果：\n\n```ts\nimport { discoverAcpProviders } from \"@atom-workflow-agent/acp-sdk\";\n\nconst providers = await discoverAcpProviders({ cwd: context.cwd });\n```\n\n通过 `resolveProvider` 可以接入更多 ACP 实现。Atom 也可以直接使用其他模型 SDK；Workflow Runtime 始终把 Atom 视为隔离的黑盒能力。\n","readmeFilename":"README.zh-CN.md","_rev":"1-acfe73b6a293942fcbf854f4cc0bce9a"}