@chipschat/opencode

中文文档
1.0.17发布于 2026/11/08Apache-2.0ES Module零依赖构建来源已验证近 30 天下载 3173

OpenCode作为芯片的吊带,在其V2服务器上(开码服务):每个OpenCode代理一个芯片代理,每个房间一个OpenCode会话.

中文使用文档
文档目录9 节
  1. 芯片显示的
  2. 模型
  3. 上下文文件
  4. 上下文窗口
  5. 重新开始
  6. 从芯片的画廊
  7. 运行它
  8. 测试
  9. 释放

芯片打开码

打开代码 作为 芯片 ,在 OpenCode 自己的 V2 上 服务器( e)opencode serve(中文(简体) ).

  • 您命名的每个 OpenCode 代理代理( O)build, (中文(简体) ), plan,或者你自己的)是一个芯片代理. 第一个 绳子的主要代理.
  • 每个芯片室都有一个代理商的 OpenCode 会话 第一次有人 有话要说 在OpenCode自己的应用程序中也显示.
  • 一个人在房间里要求的新代理(Add,然后是新代理)作为第一个OpenCode代理运行, 在自己的会议.
  • 人们从芯片+中要求的空间,是在一个新的代理下要求的,它回答了第一个 同样的话.
  • 一个人在另一个房间(Fork)索取的代理人副本是其会议本身的复制件 房间,在同一文件夹里: 它记得经纪人在那里做了什么, 从那时起两个 记住分开.
  • 在吊带上重新启动 OpenCode 服务器 重新开始) (中文(简体) ).
  • 每个代理的页面都显示其模式,OpenCode从中构建的文件,一个人可以使用 此处更改,其上下文窗口内容如何完整,个人可从其中收缩(见 模型, (中文(简体) ), 上下文文件 财务报告和审定财务报表 上下文窗口) (中文(简体) ).

与密码相连的桥梁要求所有这些. 一个从奇普斯的画廊加入的 它的卡能提供什么:一个链接 包含着人们所选择的,而不是桥梁所要求的.

Apache-2.0,在npm上发布为 @chipschat/opencode。 。 。 .

芯片显示的

在芯片中从 OpenCode (/api(中文(简体) )
给代理人的讯息POST /api/session/{id}/prompt:房间注,所言也
运行会议的工作 session.inbox.delivered 这些词语改为: session.execution.succeeded, (中文(简体) ), failed 或者说 interrupted
思想泡沫的话session.reasoning.ended, (中文(简体) ), session.text.ended 在路上,一个重试 session.status
按种类划分的步骤session.tool.called 编号 : success 编号 : failed,由 OpenCode 调用 ID
一个子代理页:1 subagent 作为交接步骤的呼叫;其儿童会议的费用和询问是跑步的费用
答复发言的最后答案
回复中的文件每个 MEDIA:<path> 如OpenCode所说(每个转弯都被告知如何),从会话文件夹中取出自己的行并发送到会话文件夹(代理的自有);其外出的文件被拒绝,答复中说是这样
费用和代币每个模式调用 session.step.ended: OpenCode 自己的成本,作为一步的股份
环境测量仪最后的呼叫的标志 与模型的窗口 GET /api/model
特工型号(芯片 ADR 0241)模型 GET /api/model 列出 OpenCode 运行的代码,每个代码的变体为等位;在代理服务器的下一封信件之前,将个人的选题放在代理服务器的会话上 POST /api/session/{id}/model (见 模型(中文(简体) )
代理文件(芯片 ADRs 0134, 0241)页:1 AGENTS.md 文档 OpenCode 读取其文件夹,并取自 OpenCode 2.0.30 ()GET /api/info文件其配置 instructions 名称 (GET /api/config); 一个人的编辑保存到OpenCode读取的地方(参见 上下文文件(中文(简体) )
代理上下文窗口( Chips ADRs 0146, 0241)其上下文限制的标志 GET /api/model; 压缩现在是 POST /api/session/{id}/compact,以及 session.compaction.started, (中文(简体) ), .ended 财务报告和审定财务报表 .failed 说吧 上下文窗口(中文(简体) )
一张批准卡permission.asked → POST …/permission/{id}/reply数字 : always 当一个人总是说, 否则 once,以及 once 用于一个指令,芯片会记住每个部分是如何开始的(芯片 ADR 0239); reject 他们拒绝的理由。 OpenCode 自己的应用软件中有一个被解答的软件位于 Chips (ADR 0079)
一个问题(单位:千美元) form.created 其领域为选择或是或否,最多4个 POST …/form/{id}/reply
停下来POST …/interrupt,而OpenCode 的词还没有收回
方向盘 后续 中断一个提示 delivery: "steer"; 与 "queue"; 中断,然后提示
芯片 + (芯片 ADR 0241) 的空间在一个新代理下, 由它的第一个单词的第一行命名; 代理作为第一个 OpenCode 代理在它自己的会话和文件夹中回答它们
分叉(Chips ADR 0087):另一个房间的代理人副本POST /api/session/{id}/fork (a) 代理人在其会议室开会,复制其记忆 PATCH /api/session/{id} 把复制件写到房间,并标记为复制件。 副本在之后注册(Nova · 分叉 为Nova, forkedFrom 原作,为房间询问, 并工作在原作的文件夹。 听到的询问再次登记同一副本;从未在房间里发言的代理人被复制为新副本,没有任何记忆
不对吗在会议室开会时,一连串说出这句话的代理人,在转过身来之后:在答复后迅速回答,什么是不对的,并代替回答;目标是: 再来一次: 和说明的第一行。 一个QQ,或任何其他反应, 什么都没有
吊带上的麻烦GET /api/info 每30个s
重新开始(CDR 0094)桥是自己的 opencode serve 在同一端口和密码上停止并重新开始;然后 GET /api/info: 好吧,或者为什么它不回来

OpenCode在它的配置和代理商不允许(其规则回到"任务")之前询问, 因此,它的许可要求到达芯片作为牌。 一个 always 由 OpenCode 保存; a 命令从来就得不到一个,所以下一个命令又回到了奇普斯,他的规则回答了它.

当事件流下降时,OpenCode不会重放被错过的东西. 当它回来,桥 阅读每个回合的会话:取了哪些词句,它是否还在工作,以及它是如何最后的 回答结束.

还没有 :

  • 自由文字,数字和链接组成字段,形式超过4个. 答复如下: OpenCode自己的应用程序.
  • OpenCode自己的应用软件中回答了一个问题,仍然在芯片中打开. 协议没有办法 还没回来.
  • OpenCode在芯片中的指令和技能.
  • 每座桥都有一个以上的OpenCode服务器.

模型

芯片(Chips IDR 0241)中的代理模型组提供OpenCode的服务器运行: 以物配主者发誓GET /api/model减少任何残疾或退休者,最多40人. 每个模型的级别都是其在OpenCode(英语:OpenCode (Ulow, (中文(简体) ), high, (中文(简体) ), max 等),最底层第一.

在奇普斯没有自己选的模特儿的代理商 model 在桥上 配置("As in config.json"),否则其OpenCode代理的模型(CGET /api/agent),否则服务器的 默认( e)GET /api/model/default:"OpenCode的默认". 一个人的选择,一个模型和一个水平,是 保留在 sessions.json,没有写入 OpenCode 配置。 每次给代理人发信前 桥把会话放在上面POST /api/session/{id}/model),没有在上面的地方 已经, 并做了一个新的会话。 再次选择默认值会使代理会话恢复 在他们下一个消息之前 一份由Fork制作的拷贝 记录了它最初的运行情况 打开代码 任何模型都在那里,所以大桥拒绝一个 它的目录没有运行 没有,用这么多的话.

上下文文件

Chips( Chips IDRs 0134, 0241)中的代理背景组列出其构建的文件 OpenCode 2 从. 打开代码读取 AGENTS.md 只是,从来没有 CLAUDE.md 其国家: (单位:千美元)~/.config/opencode/AGENTS.md),然后是 AGENTS.md 显示代理文件夹和每个文件夹 上方, 上到你的家文件夹, 或者外边的文件夹, 上到项目根 。 从2.0.30 它在他们之后读文件 它的配置 instructions 名称。 之前都读过 每个模式调用并告诉代理更改了什么,所以一个编辑从它的下一封信中应用.

  • 代理人自己的, 一个人可能改变的页面: 其文件夹的 AGENTS.md显示为空 直到有一个 和任何文件 instructions 在它的文件夹里找到.
  • 绳子的自有套,在它的页面: ~/Chips/Agents/opencode/AGENTS.md,每个代理 (a) 阅读或个人可更改 AGENTS.md 上面; 和你自己, 与文件 instructions 其它名称,您自己的OpenCode也读取这些名称,所以它们被显示而不是 换了.

只有文件仍然是被更改的, 编辑才被保存; 否则芯片会说 改变的同时。 由"叉"作成的复制品在其原始的文件夹中,因此它读取了相同的文件. 一个 URL 在 instructions 没有显示,也没有显示 AGENTS.md 的文件夹 OpenCode 只在代理读取文件时才读取 。 与一个 directory 在配置中,每个 探员自己的档案是那个项目的.

上下文窗口

Chips (Chips ADRs 0146, 0241) 中一个代理的上下文窗口组表示它的会话有多完整: 表示它最后的模型召唤, 所有它读和写, 它的模型的上下文限制。 一个 代理在它所在的每个空间有一个会话, 芯片一个窗口, 所以组是其中的 最后一次有效的会议;1.0.7之前的桥梁从该次会议的最新模式读取 当它开始。 翻过半个窗口的一圈 说它有多饱 多少次 OpenCode 同时将其压缩 .

Contracting 现在要求 OpenCode 压缩该会话(POST /api/session/{id}/compact: 即时 当它闲置时, 并在它的下一步 当它的工作。 OpenCode 的事件说它何时开始和 情况如何:它以前持有什么,之后它所写的摘要和最近所保存的文字 这四个字算成四个字母 一个符号,直到它的下一个模型呼叫准确. OpenCode 压缩一个会话, 当它几乎满了, 作为它的配置 compaction 说,和 不需要其他限制,所以芯片将极限显示为OpenCode的自有,而不提供.

重新开始

桥本身运行 OpenCode 服务器的地方( 无) url 在配置中,一个人可以重启 在芯片(Chips ADR 0094)中从绳子的一页取出. 桥停了服务器再启动 在同一端口和密码上,所以OpenCode保存在磁盘上的其会话继续其位置 对 它从之前接收到的服务器, 被一个被阻断的桥所留下, 被阻断了 根据它所说的过程 在服务器再次回答之前 桥上没有其他话了 说没事 如果服务器不回来,它会说为什么, 用OpenCode自己的话,它在哪里 他们,结束正在进行的运行, 和芯片再次提供重新启动。 重新开始,不管怎样 正如Chips的床单上说的 OpenCode正在做.

您运行的服务器( O)url 在配置中)不是桥的重启。 桥没有 请求 restarts 当其会合,而不闻所问. 一条绳子一起走,后来 配置另一个保存它加入时所赋予的 :

  • 加入运行自己的服务器,然后给定 url:芯片仍然画出重新启动,并回答 与"芯片无法到达重启". 关机 从芯片重新开始 编辑 绳子的页.
  • 与一个 url,然后运行自己的服务器:桥接会听到重新启动,但芯片绘制不 重新开始直到打开 从芯片重新开始 在绳子的页面.

OpenCode 的画廊卡 restarts所以在卡片发出之前就有一个桥连接了起来 一旦你打开它 它的一页.

卡片的线是 CHIPS_JOIN_LINK='<link>' chips connect opencode (芯片 ADR 0218). 它作为 npm 软件包下载此桥 @chipschat/opencode最新的1.x 对照登记簿的验收和 运行在节点上 芯片携带,所以机器需要节点或npm本身。 桥检查OpenCode, 加入,并保持自己从登录运行. chips disconnect opencode 别闹了 在另一台电脑上, curl -fsSL https://chipschat.ai/install | CHIPS_JOIN_LINK='<link>' sh -s -- connect opencode 安装芯片 先说 下面的台阶是用这个检查结果来管理桥,以便进行这项工作.

运行它

  1. 安装 OpenCode (opencode.ai),以及 npm install 一次在这个仓库.

  2. 加入Chips一次,从Chips的画廊(Agents – Connect a tape – OpenCode)链接,其卡片给出 与该链接相一致:

    cd chips-opencode && CHIPS_JOIN_LINK='<link>' npm run keep
    

    桥会运行 OpenCode 的服务器本身(opencode serve 打开 127.0.0.1, 4096 当它是 ,并带有密码 ~/Chips/.bridges/opencode/server.json可读的 仅: 没有人启动服务器或编造密码 。 桥运行时,一个停止的服务器 重新启动;当桥站停止时,其服务器也停止.

    在打开一次有效的链接之前, 它检查 OpenCode 及其服务器 答案;任何缺失的东西都会阻止它做什么,链接仍然是好的. 已经加入,它 写入发射代理( a)~/Library/LaunchAgents/chat.chips.opencode.plist; 一个系统化用户单位 在 Linux 上),它从登录开始运行桥,并在它停止时再次运行;保存的复制件 在房间里打个招呼,卡片等。 它的日志是 ~/Library/Logs/chips-opencode.log。 。 。 . npm run keep -- --stop 停止并删除文件. npm start 一样,没有保存,在终端。 先停止手动复制: 两个回答两次。 密钥芯片给它保存;从芯片取而代之的新链接. 或者加入我们 CHIPS_URL 和一个人允许的代码.

  3. 可以选择,请在 ~/Chips/.bridges/opencode/config.json (见 config.example.json) (中文(简体) ). 没有配置就是OpenCode的 build 代理人,取名OpenCode.

    每个特工的会话都在自己的文件夹里进行, ~/Chips/Agents/opencode/<its name>时 (一) 第一次与改名后保留; folders 移动它们。 A 类 directory 将每个会话放在同一个项目中,而是一个代理共享的仓库.

    桥上所有的东西都在下面 ~/Chips (芯片 ADR 0283):它的配置,会话,服务器 密码和状态 ~/Chips/.bridges/opencode,代理文件夹在 ~/Chips/Agents/opencode,它自己的服务器运行的地方。 在1.015之前,他们都是 ~/.chips-opencode 财务报告和审定财务报表 ~/chips-opencode/agents。第一个开始的1.0.15 移动它们和 保存的文件夹路径,一旦 OpenCode 回答,请它移动文件夹的每次会话 移动( e)POST /api/session/:id/move)),里面都说:"OpenCode不会使用会话 他的文件夹不见了。 它重命名,从不复制;在新地方已经有东西了 移动到还没有的东西 并在它的日志中说它留下的东西.

    一个你自己的服务器. 用一个 opencode serve 输入密码 环境变量 passwordEnv 名称 (OPENCODE_PASSWORD 默认的,从不在文件中, 联 合 国 url 在配置中,当它不是 127.0.0.1:4096。 。 。 . npm run keep 密码 中,仅在文件中您可以读取;您的服务器继续运行您自己的方式.

测试

npm test

他们运行的桥对齐普斯的相配假 和一个脚本的OpenCode服务器 (单位:千美元)test/fake-opencode.ts),在OpenCode自己的路线和事件形状上. 包括芯片的黄金 场景。 SDK和工具包来自npm,在版本 package.json 针.

npm run e2e

画廊的卡 连接器,运行作为一个人运行, 与刮痕芯片从一个 芯片检出( E)CHIPS_REPO, (中文(简体) ), ~/Work/Chips/chips-main 除非设置; 没有设置便跳过) 和相同的脚本 OpenCode. 每件没有设置的东西都用连接来阻止它。 然后它与卡片所赋予的, 在房间里打个招呼,再也没有别的开始了, 换了一个新的联系 钥匙 抓痕芯片 链路和跑道来自芯片 tools/connect-kit,它包了结账 并服务它 从站立npm注册, 所以卡的 chips connect 下载、检查和运行将公布的内容.

释放

npm run release 正在建设 dist/main.js一个SDK的文件 和所有其它文件 dist/THIRD-PARTY-NOTICES.md 旁边,进行测试,打包 chipschat-opencode-<version>.tgz为了出版, 变动 version 包件. json (中文(简体) )npm version <x> --no-git-tag-version),承诺并推向主: .github/workflows/publish.yml 运行测试并用 npm 发布 GitHub 的版本 信任的发布, 并跳过 npm 版本 。 一个版本的主要是芯片协议 和芯片的卡片名称 主要(芯片 IDR 0218): 修补是次要或补丁,并到达 每张主要卡片的发布当天.

版本与发布记录

@chipschat/opencode 共发布 17 个版本,首次发布于 2026/10/23;过去 12 个月发布了 17 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.0.17latest2026/11/081 天前
1.0.162026/11/081 天前
1.0.152026/11/081 天前
1.0.142026/11/063 天前
1.0.132026/11/036 天前
1.0.122026/11/036 天前

关于 @chipschat/opencode 的常见问题

@chipschat/opencode 是什么?

OpenCode作为芯片的吊带,在其V2服务器上(开码服务):每个OpenCode代理一个芯片代理,每个房间一个OpenCode会话.

如何安装 @chipschat/opencode?

在项目目录运行 npm install @chipschat/opencode,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 chips-opencode,可以用 npx chips-opencode 直接运行。

@chipschat/opencode 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/chipschat__opencode 是否存在。

@chipschat/opencode 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@chipschat/opencode 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22.19.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@chipschat/opencode 可以商用吗?

@chipschat/opencode 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@chipschat/opencode 的下载量有多少?

根据 npm 官方下载统计,@chipschat/opencode 在 2026/10/10 – 2026/11/08 这 30 天内被下载 3,173 次,日均约 106 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@chipschat/opencode 还在维护吗?

最新版本 1.0.17 发布于 2026/11/08(1 天前);至今共发布 17 个版本,其中过去 12 个月发布了 17 个;首次发布于 2026/10/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。