产品路线 / OpenCode
OpenCode
以客户端与HTTP server分离方式提供多provider代码Agent。
检索别名:Anomaly OpenCode · sst/opencode
01 输入
- 代码或文件Task
- OpenCode server与provider
- 外层企业权限和产物合同
02 处理机制
- 锁定发行渠道与版本
- 通过受控server接口运行
- 保存消息及工具结果
- 导出并验证业务产物
03 输出与证据
- 代码与文件变更
- 会话和Step记录
- 适配及恢复验证
技术路线档案
与其他产品比较 ↗- 团队 / 厂商
- Anomaly
- 路线类型
- 多Provider代码Harness
- 执行边界
- Server在所选环境执行工具,客户端经HTTP/OpenAPI连接。
- 编排机制
- 模型驱动循环,显式step结果、会话队列与context压缩。
- 上下文与知识
- 会话消息、inbox与近期原文/摘要分开;provider原生context另有兼容边界。
- 状态与记忆
- 源码可见SQLite session、消息顺序、fork、token/cache计数与compaction;不能直接当多租户云数据库架构。
- 模型可替换边界
- 多provider是产品方向;每模型原生能力与压缩状态需独立核验。
- 部署形态
- 本地或受控云worker;企业入口另加身份、scope和网络边界。
- 许可边界
- MIT
- 截止日状态
- 观察于2026-10-15:latest non-prerelease与研发渠道区分展示;v1.19.1;dev SHA f40dc433cb52eeb3ff5ec7a755f0ba0162216a51
- 适用优势
- 开放源码与client/server边界便于集成,适合代码执行worker。
- 限制与未知
- 待验证或未公开:stable包与dev结构差异;多实例云持久化;特定provider质量。公开能力不等同企业负载与领域任务实测。
观察时点:2026-10-15。以客户端与HTTP server分离方式提供多provider代码Agent。
已公开的技术路线与控制边界
TUI/客户端+OpenAPI server+工具runtime;研发源码有session_v2、inbox与显式step结果。server工具执行权限与企业SSO/租户网关不同;Basic Auth不能替代完整企业授权。
OpenCode采用客户端与server分离的产品架构。官方文档说明headless server通过HTTP和OpenAPI提供接口,TUI及其他客户端连接它。这使代码Agent可以被程序调用,但server入口本身不等于企业SSO、租户和任务治理;文档中的Basic Auth需要结合外层网络与身份控制评估。
本页引用的固定dev源码属于新的packages/core结构。session_v2保存project、workspace、parent、fork边界、directory、model、permission、token/cache计数与恢复字段;消息、pending和inbox分表并维护顺序。这些设计说明会话不只是聊天文本,也显示本地产品状态与多实例云平台之间仍有差距。
Step runtime对Completed、Retry、Continue、RecoverFull、Compacted和OutputLimit等结果作显式区分。模型流和工具可以并行,中断工作时仍保护最终事件发布;完整重试取决于是否已产生输出。企业可以借鉴这种取消与结果持久化分离,避免外部动作发生后内部只剩一个aborted状态。
Compaction实现保留近期原文并总结更早历史,区分provider原生context。源码仍有演进中尚待完善的细节,也提示多模型行为不能想当然。模型可替换是产品方向,native工具、缓存和opaque压缩仍需逐项验证。
版本与名称要特别小心:原sst/opencode当前迁移到anomalyco/opencode;opencode-ai/opencode是另一个已归档的Go项目,后继为Crush;ducan-ne/OpenCoder又是独立项目。本页的dev SHA也不能当成stable v1.19.1二进制已经具备相同结构。PoC必须锁渠道、包版本和源码。
MIT许可有利于复用,推荐先作为受限代码文件worker集成,而非整仓重写企业认证、数据库和工作流。测试路径迁移、日志增长、重启恢复、取消、provider切换和产物读回;相关issue只是特定环境的测试线索,不能被概括成所有当前版本的缺陷。
适合的集成切片是一个云端受限工作区:应用把Task映射为独立工作目录或环境,经受控HTTP入口提交,读取事件和最终产物。先验证目录与项目身份的迁移、会话恢复和多客户端行为,再考虑增加更多用户。SQLite的本地便捷性不等于可把文件放共享卷供多实例任意写;若改为企业持久层,必须估算核心模型、迁移和上游同步成本。还要验证工具快照如何增长、何时清理以及删除是否保留必要产物。只有这些关键差异可在清晰边界外实现时,集成才比大规模fork更有优势。
数据、记忆与模型替换
源码可见SQLite session、消息顺序、fork、token/cache计数与compaction;不能直接当多租户云数据库架构。
多provider是产品方向;每模型原生能力与压缩状态需独立核验。
执行、部署与采用取舍
Server在所选环境执行工具,客户端经HTTP/OpenAPI连接。模型驱动循环,显式step结果、会话队列与context压缩。本地或受控云worker;企业入口另加身份、scope和网络边界。
开放源码与client/server边界便于集成,适合代码执行worker。
观察于2026-10-15:latest non-prerelease与研发渠道区分展示;v1.19.1;dev SHA f40dc433cb52eeb3ff5ec7a755f0ba0162216a51
许可边界:MIT。采用前按实际使用方式核验组件、云服务与模型条款。
证据范围与未知
固定dev源码已读schema、step和compaction;旧sst入口迁移至anomalyco;另一个opencode-ai项目已归档。
未公开或仍需目标环境验证的部分:stable包与dev结构差异;多实例云持久化;特定provider质量。本页不以产品表面行为推断其隐藏实现。
OpenCode:HTTP与OpenAPI server;OpenCode:session_v2与消息表源码;OpenCode:流、工具和取消源码;OpenCode:摘要与近期原文;OpenCode:MIT许可。
RELATIONSHIP MAP
与其他节点的关系
箭头从本节点指向目标;关系是工程分析映射,不代表厂商合作或已披露的内部实现。
PRIMARY SOURCES
来源与阅读边界
来源按研究截止日整理。官方文档说明能力和约束,代码只证明对应版本,论文与讲座不自动证明生产效果。 资料截止:2026-10-15。
- OpenCode:HTTP与OpenAPI server ↗官方文档 / 声明
观察基线:2026-10-15。固定SHA代码用于说明可见实现;产品声明不等同目标环境实测。
- OpenCode:session_v2与消息表源码 ↗公开代码
观察基线:2026-10-15。固定SHA代码用于说明可见实现;产品声明不等同目标环境实测。
- OpenCode:流、工具和取消源码 ↗公开代码
观察基线:2026-10-15。固定SHA代码用于说明可见实现;产品声明不等同目标环境实测。
- OpenCode:摘要与近期原文 ↗公开代码
观察基线:2026-10-15。固定SHA代码用于说明可见实现;产品声明不等同目标环境实测。
- OpenCode:MIT许可 ↗公开代码
观察基线:2026-10-15。固定SHA代码用于说明可见实现;产品声明不等同目标环境实测。