最后更新:
OpenCode 是一款开源人工智能编程代理,可将用户选择的模型连接到软件项目、开发工具和终端。它可以检查代码、规划并进行更改、运行命令和测试,并利用其结果继续执行任务;OpenCode 提供代理软件和接口,其本身并非人工智能模型。[1][2][3]
OpenCode 可通过终端界面、桌面应用程序、浏览器客户端和 IDE 扩展使用。其 V2 文档描述了适用于 macOS、Windows 和 Linux 的桌面版本,以及独立的命令行二进制文件。[1][4]
该软件采用客户端-服务器架构。终端界面、桌面应用程序、IDE 扩展、软件开发工具包 (SDK) 和 Web 客户端通过 HTTP 与本地服务器通信;服务器与模型提供商通信、运行工具并管理会话状态。[2][3] 服务器可以通过 opencode serve 独立于终端界面运行;opencode web 增加了浏览器客户端,而 opencode attach 则将另一个客户端连接到正在运行的会话。[2][3]
OpenAPI 3.1 规范支撑着官方的 @opencode-ai/sdk。服务器 API 涵盖了会话、消息、文件、提供商、工具、智能体和配置,允许脚本和自定义客户端与 OpenCode 交互,而无需在其终端界面中模拟键盘输入。[2][3]
V2 Web 界面可以通过 opencode pair 命令进行配对。生成的连接链接为一次性使用,并在五分钟后过期。[4] OpenCode 还支持配置、插件、Model Context Protocol (MCP) 服务器、自定义命令、主题和键绑定。[4][5]
活跃的 OpenCode 项目由 Serverless Stack 框架背后的团队 Anomaly 维护。另一个名为 opencode-ai/opencode 的 Go 语言代码库并非同一项目;该库在 2025 年 9 月停止维护后已被归档。[2]
根据 2026 年发布的报告,OpenCode 在其第一年内经历了快速的版本迭代,发布版本超过 800 个。[2][3] 其开发内容包括终端、桌面、浏览器和编辑器客户端,以及模型访问服务和编码会话管理工具。[2][4]
OpenCode 的工具允许模型定位和检查项目文件、编辑代码以及运行 shell 命令。模型可以在后续请求中接收命令输出,并利用其响应测试失败或其他错误。[2] OpenCode 还集成了语言服务器协议 (LSP) 工具,可向模型返回编译器和 linter 诊断信息。[2][1]
默认的 Build 模式可以读写文件并运行命令。Plan 模式会提议一个实现方案,并在编辑文件或运行 shell 命令前进行询问;用户可以修改方案并切换到 Build 模式来执行。[2][3][5] 工具权限可以允许、阻止或要求对操作进行确认,包括基于命令模式的规则。这些权限属于工作流控制,而非安全沙箱。[2][3]
/init 命令会分析项目并在其根目录下创建一个 AGENTS.md 文件,其中包含有关项目结构和编码规范的信息。团队可以提交该文件,以便代理拥有共享的项目指令;全局 AGENTS.md 也可以应用于跨代码库。[5][2] 用户可以在提示词中使用 @ 引用文件,并可以使用子代理执行代码库搜索、扫描和文档查找等任务。自定义代理可以拥有自己的模型、提示词和工具权限,并在独立于主会话的子会话中运行。[2][3]
/undo 和 /redo 命令可根据项目文档中描述的基于 Git 的快照,在文件更改中后退和前进。[5][3] OpenCode 还可以针对一个项目并行运行多个代理,并创建可共享的会话链接以供参考或调试。[1]
OpenCode 旨在与不同的模型提供商协同工作,允许用户在不更换编码智能体的情况下切换模型。它使用 Models.dev 注册表,支持超过 75 家提供商,包括 Anthropic、OpenAI、Google 和 xAI,以及本地模型。[1][2] 用户可以通过终端界面的 /connect 命令连接提供商账户或 API 密钥,还可以配置自定义提供商和兼容的端点。[4][2]
OpenCode 的网站将 GitHub Copilot、ChatGPT Plus 或 Pro 以及 Claude Pro 或 Max 列为用户可以连接的订阅选项。[1] 另外,关于 Anthropic 在 2026 年 1 月实施限制的报告称,该公司阻止了第三方工具通过非官方渠道访问个人 Claude 订阅;这些账户描述称,改为通过标准的 Anthropic API 密钥在 OpenCode 中使用 Claude 模型,并按 API 费率计费。[2][3]
该软件可免费使用,但访问托管模型可能会产生提供商费用。OpenCode 还提供两种模型访问服务:Zen 和 Go,同时用户也可以提供自己的提供商凭据或运行本地模型。[1][6][7][2]
OpenCode Zen 是由 OpenCode 团队创建的按需付费服务。它提供了一组经过策划的模型,团队称这些模型已针对编码智能体的性能进行了测试和基准评估;该服务旨在与其他编码智能体以及 OpenCode 协同工作。[6]
Zen 按模型提供商的成本进行单次请求计费,不加价,并使用预付余额。它允许用户设置每月支出限额、禁用计费并继续使用剩余额度;在充值后 14 天内提出申请,未使用额度可能获得退款。[6] OpenCode 表示 Zen 模型托管在美国,且提供商遵循零保留政策,不使用用户数据训练模型,除非该服务另有说明。[6]
OpenCode Go 是一种访问策划编码模型阵容的订阅服务。OpenCode 将 Go 列为每月 10 美元,Go Plus 为每月 40 美元,后者提供更高的使用限制;两者均可与 OpenCode 或其他编码智能体配合使用。[7] 一篇 2026 年 9 月的文章描述了首月 5 美元的优惠,随后为每月 10 美元。[2][3]
Go 在滚动五小时、每周和每月窗口内实施配额,具体的模型额度和请求计数因模型和使用情况而异。[7] 其模型阵容包括来自多个提供商的产品,该服务将其月度订阅和使用限制与 Zen 的按需付费模式区分开来。[7]
截至 2026 年 10 月 21 日,官方 Go 文档列出了不断变化的模型阵容,并解释称特定模型的限制以及数据使用和保留条款各不相同。文档指出,DeepSeek 的零数据保留协议每月续签一次,有效期至 2026 年 10 月 31 日。[12]
OpenCode 表示它不存储用户的代码或上下文数据,并将其作为隐私敏感型用途的相关特性。[1] 其常见问题解答(FAQ)还提到,当用户使用 OpenCode 的免费模型时,数据和信息会被存储。[1] 数据处理取决于所选的模型和服务:托管模型请求会将代码上下文发送给提供商,而本地模型可以将处理保留在本地基础设施上。[2][3] OpenCode 的 /share 命令会将会话上传到一个公开链接,该链接在取消共享前一直保持可访问状态,而 Zen 会向其模型提供商发送请求。[2][3]
OpenCode 的权限系统并不会将软件与操作系统隔离。关于网络服务器使用的文档建议设置 OPENCODE_SERVER_PASSWORD 并将服务器绑定到 localhost;有关该项目的报告还描述了一个早期已修复的未授权暴露问题。[2][3]
OpenCode 提供旨在组织内部运行的企业级部署。该公司表示,组织可以从团队试用开始,通过集成单点登录(SSO)和内部 AI 网关在整个组织内进行部署;它还声明不设许可限制或所有权主张,且不存储任何数据或上下文。[8]
OpenCode Data 是一个用于模型使用情况、模型组合变化、成本、会话成本、Token 成本、缓存率、地理分布细分以及模型对比的仪表板。[9]
在2026年10月17日至18日晚间,攻击者入侵了一个较旧的 OpenCode 系统。OpenCode 将此次事件描述为与大规模“蒸馏攻击”有关,并表示该事件影响了 1.4% 的 OpenCode Console 用户。[10] 联合创始人 Dax Raad 表示,此次泄露影响的是部分用户存储 API 密钥的 Console,而非开源应用程序或命令行工具;根据 Raad 的说法,暴露的密钥仅限于 Console 工作区,应用程序本身无法获取。[10]
用户报告了 OpenAI、Anthropic 和 Google AI 账户的异常消费警报和扣费。一些人表示扣费达到了数百美元,少数人报告总额超过 1,000 美元;Anthropic 和 Google 封锁了他们认为已泄露的密钥。[10] OpenAI 表示正与 OpenCode 合作恢复访问权限,并为攻击中消耗的额度向客户退款,而 OpenCode 表示针对未经授权费用的退款工作正在进行中。[10] OpenCode 通过电子邮件通知了受影响的用户,并敦促他们直接在各供应商处撤销并更换 API 密钥。[10]
一些评论人士对该公司“蒸馏攻击”的定性提出了质疑,认为这次泄露是一次传统的窃取行为,且尚未证实这些密钥被用于模型蒸馏。[10] Raad 表示,攻击者曾尝试连续 48 小时入侵 OpenCode 的系统,团队使用了 AI 智能体 来协助防御响应。[10] 他还提到,一些 AI 模型最初帮助分析了该事件,但在触发安全过滤器后拒绝检查恶意代码;随后,OpenCode 获得了 OpenAI Daybreak Blue 项目的访问权限,该项目为经过审核的用户提供更不容易拒绝防御性安全请求的模型。[10]
此次泄露发生在 OpenCode 向用户免费开放 GLM-5.3-Flash 的当晚。研究开源权重的研究人员曾报告称,更广泛的 GLM-5.3 系列的网络安全能力已接近此前仅限于受限访问模型(如 Anthropic 的 Claude Mythos Preview)的水平。[10]