官方 JS 客户端 SDK(packages/sdk/js/)。src/index.ts:1-21 导出 client/server 并通过 createOpencode 同启;src/client.ts:33-50 createOpencodeClient 基于 @hey-api 生成的 gen/sdk.gen.ts(v2 版 src/v2/gen/sdk.gen.ts:7077 class OpencodeClient)并注入 directory header 重写;src/server.ts:22-40 createOpencodeServer 用 cross-spawn 拉起 opencode serve 子进程并等待监听。v2 子目录提供新一代 client/server/data 导出(src/v2/index.ts:1-23)。
· 类型化 HTTP 客户端 createOpencodeClient(packages/sdk/js/src/client.ts:33)
· 服务端启动助手 createOpencodeServer(spawn opencode serve,packages/sdk/js/src/server.ts:22)
· 一体化 createOpencode(packages/sdk/js/src/index.ts:8-21)
· V2 代客户端/服务端 API(packages/sdk/js/src/v2/client.ts、server.ts)
· 从 openapi.json 生成的完整类型与 SDK(packages/sdk/js/src/v2/gen/sdk.gen.ts)
| 节点 | 机制 | 证据 |
|---|---|---|
| plan | agent-core | 装配层→官方包 |
| build | agent-core | 装配层→官方包 |
| 节点 | 机制 | 证据 |
|---|---|---|
| app | workspace-dep | @opencode-ai/app/package.json dependencies.@opencode-ai/sdk |
| cli | workspace-dep | @opencode-ai/cli/package.json dependencies.@opencode-ai/sdk |
| plugin | workspace-dep | @opencode-ai/plugin/package.json dependencies.@opencode-ai/sdk |
| session-ui | workspace-dep | @opencode-ai/session-ui/package.json dependencies.@opencode-ai/sdk |
| slack | workspace-dep | @opencode-ai/slack/package.json dependencies.@opencode-ai/sdk |
| tui | workspace-dep | @opencode-ai/tui/package.json dependencies.@opencode-ai/sdk |
| opencode | semantic-dep | stage-01 opencode |
| enterprise | semantic-dep | stage-01 @opencode-ai/enterprise |
对外发布(npm 包)的官方 SDK,将 opencode 内部 server 的 openapi.json 编译为类型安全的客户端,同时提供进程级 server 托管,供第三方应用与 plugin 使用。
官方底座,未被本机装配层直接引用