# OpenCode

> OpenCode 是一款开源人工智能编程代理，可将语言模型连接到软件项目和开发工具，以执行编程任务。

- Canonical URL: https://iq.wiki/zh/wiki/opencode
- Categories: Projects & Protocols
- Tags: AIAgent
- Created: 2026-10-21T02:28:58.410Z
- Last updated: 2026-10-21T02:28:58.410Z
- Source: IQ.wiki — the world's largest blockchain and crypto encyclopedia (https://iq.wiki)

---

**OpenCode** 是一款开源人工智能编程代理，可将用户选择的模型连接到软件项目、开发工具和终端。它可以检查代码、规划并进行更改、运行命令和测试，并利用其结果继续执行任务；OpenCode 提供代理软件和接口，其本身并非人工智能模型。[\[1\]](#cite-id-dhdgz18ngm)​[\[2\]](#cite-id-wxsh1s9r6n)​[\[3\]](#cite-id-0aslq0971o)​

## 概览

OpenCode 可通过终端界面、桌面应用程序、浏览器客户端和 IDE 扩展使用。其 V2 文档描述了适用于 macOS、Windows 和 Linux 的桌面版本，以及独立的命令行二进制文件。[[1]](#cite-id-dhdgz18ngm)[[4]](#cite-id-gyvcfudg7w)

该软件采用客户端-服务器架构。终端界面、桌面应用程序、IDE 扩展、软件开发工具包 (SDK) 和 Web 客户端通过 HTTP 与本地服务器通信；服务器与模型提供商通信、运行工具并管理会话状态。[[2]](#cite-id-wxsh1s9r6n)[[3]](#cite-id-0aslq0971o) 服务器可以通过 `opencode serve` 独立于终端界面运行；`opencode web` 增加了浏览器客户端，而 `opencode attach` 则将另一个客户端连接到正在运行的会话。[[2]](#cite-id-wxsh1s9r6n)[[3]](#cite-id-0aslq0971o)

OpenAPI 3.1 规范支撑着官方的 `@opencode-ai/sdk`。服务器 API 涵盖了会话、消息、文件、提供商、工具、智能体和配置，允许脚本和自定义客户端与 OpenCode 交互，而无需在其终端界面中模拟键盘输入。[[2]](#cite-id-wxsh1s9r6n)[[3]](#cite-id-0aslq0971o)

V2 Web 界面可以通过 `opencode pair` 命令进行配对。生成的连接链接为一次性使用，并在五分钟后过期。[[4]](#cite-id-gyvcfudg7w) OpenCode 还支持配置、插件、[Model Context Protocol](https://iq.wiki/wiki/model-context-protocol) (MCP) 服务器、自定义命令、主题和键绑定。[[4]](#cite-id-gyvcfudg7w)[[5]](#cite-id-vrx9tt4wlu)

## 历史与发展

活跃的 OpenCode 项目由 Serverless Stack 框架背后的团队 Anomaly 维护。另一个名为 `opencode-ai/opencode` 的 Go 语言代码库并非同一项目；该库在 2025 年 9 月停止维护后已被归档。[[2]](#cite-id-wxsh1s9r6n)

根据 2026 年发布的报告，OpenCode 在其第一年内经历了快速的版本迭代，发布版本超过 800 个。[[2]](#cite-id-wxsh1s9r6n)[[3]](#cite-id-0aslq0971o) 其开发内容包括终端、桌面、浏览器和编辑器客户端，以及模型访问服务和编码会话管理工具。[[2]](#cite-id-wxsh1s9r6n)[[4]](#cite-id-gyvcfudg7w)

## 编码工作流 (Coding Workflow)

OpenCode 的工具允许模型定位和检查项目文件、编辑代码以及运行 shell 命令。模型可以在后续请求中接收命令输出，并利用其响应测试失败或其他错误。[\[2\]](#cite-id-wxsh1s9r6n) OpenCode 还集成了语言服务器协议 (LSP) 工具，可向模型返回编译器和 linter 诊断信息。[\[2\]](#cite-id-wxsh1s9r6n)​[\[1\]](#cite-id-dhdgz18ngm)​

默认的 Build 模式可以读写文件并运行命令。Plan 模式会提议一个实现方案，并在编辑文件或运行 shell 命令前进行询问；用户可以修改方案并切换到 Build 模式来执行。[\[2\]](#cite-id-wxsh1s9r6n)​[\[3\]](#cite-id-0aslq0971o)​[\[5\]](#cite-id-vrx9tt4wlu) 工具权限可以允许、[阻止](https://iq.wiki/wiki/block)或要求对操作进行确认，包括基于命令模式的规则。这些权限属于工作流控制，而非安全沙箱。[\[2\]](#cite-id-wxsh1s9r6n)​[\[3\]](#cite-id-0aslq0971o)​

`/init` 命令会分析项目并在其根目录下创建一个 `AGENTS.md` 文件，其中包含有关项目结构和编码规范的信息。团队可以提交该文件，以便代理拥有共享的项目指令；全局 `AGENTS.md` 也可以应用于跨代码库。[\[5\]](#cite-id-vrx9tt4wlu)​[\[2\]](#cite-id-wxsh1s9r6n) 用户可以在提示词中使用 `@` 引用文件，并可以使用子代理执行代码库搜索、扫描和文档查找等任务。自定义代理可以拥有自己的模型、提示词和工具权限，并在独立于主会话的子会话中运行。[\[2\]](#cite-id-wxsh1s9r6n)​[\[3\]](#cite-id-0aslq0971o)​

`/undo` 和 `/redo` 命令可根据项目文档中描述的基于 Git 的快照，在文件更改中后退和前进。[\[5\]](#cite-id-vrx9tt4wlu)​[\[3\]](#cite-id-0aslq0971o) OpenCode 还可以针对一个项目并行运行多个代理，并创建可共享的会话链接以供参考或调试。[\[1\]](#cite-id-dhdgz18ngm)​

## 模型提供商与访问

OpenCode 旨在与不同的模型提供商协同工作，允许用户在不更换编码智能体的情况下切换模型。它使用 Models.dev 注册表，支持超过 75 家提供商，包括 Anthropic、OpenAI、Google 和 xAI，以及本地模型。[[1]](#cite-id-dhdgz18ngm)[[2]](#cite-id-wxsh1s9r6n) 用户可以通过终端界面的 `/connect` 命令连接提供商账户或 API 密钥，还可以配置自定义提供商和兼容的端点。[[4]](#cite-id-gyvcfudg7w)[[2]](#cite-id-wxsh1s9r6n)

OpenCode 的网站将 GitHub Copilot、ChatGPT Plus 或 Pro 以及 Claude Pro 或 Max 列为用户可以连接的订阅选项。[[1]](#cite-id-dhdgz18ngm) 另外，关于 Anthropic 在 2026 年 1 月实施限制的报告称，该公司阻止了第三方工具通过非官方渠道访问个人 Claude 订阅；这些账户描述称，改为通过标准的 Anthropic API 密钥在 OpenCode 中使用 Claude 模型，并按 API 费率计费。[[2]](#cite-id-wxsh1s9r6n)[[3]](#cite-id-0aslq0971o)

该软件可免费使用，但访问托管模型可能会产生提供商费用。OpenCode 还提供两种模型访问服务：Zen 和 Go，同时用户也可以提供自己的提供商凭据或运行本地模型。[[1]](#cite-id-dhdgz18ngm)[[6]](#cite-id-rbaqzj07cf)[[7]](#cite-id-gtacfjf1ka)[[2]](#cite-id-wxsh1s9r6n)

### OpenCode Zen

OpenCode Zen 是由 OpenCode 团队创建的按需付费服务。它提供了一组经过策划的模型，团队称这些模型已针对编码智能体的性能进行了测试和基准评估；该服务旨在与其他编码智能体以及 OpenCode 协同工作。[[6]](#cite-id-rbaqzj07cf)

Zen 按模型提供商的成本进行单次请求计费，不加价，并使用预付余额。它允许用户设置每月支出限额、禁用计费并继续使用剩余额度；在充值后 14 天内提出申请，未使用额度可能获得退款。[[6]](#cite-id-rbaqzj07cf) OpenCode 表示 Zen 模型托管在美国，且提供商遵循零保留政策，不使用用户数据训练模型，除非该服务另有说明。[[6]](#cite-id-rbaqzj07cf)

### OpenCode Go
OpenCode Go 是一种访问策划编码模型阵容的订阅服务。OpenCode 将 Go 列为每月 10 美元，Go Plus 为每月 40 美元，后者提供更高的使用限制；两者均可与 OpenCode 或其他编码智能体配合使用。[[7]](#cite-id-gtacfjf1ka) 一篇 2026 年 9 月的文章描述了首月 5 美元的优惠，随后为每月 10 美元。[[2]](#cite-id-wxsh1s9r6n)[[3]](#cite-id-0aslq0971o)

Go 在滚动五小时、每周和每月窗口内实施配额，具体的模型额度和请求计数因模型和使用情况而异。[[7]](#cite-id-gtacfjf1ka) 其模型阵容包括来自多个提供商的产品，该服务将其月度订阅和使用限制与 Zen 的按需付费模式区分开来。[[7]](#cite-id-gtacfjf1ka)

截至 2026 年 10 月 21 日，官方 Go 文档列出了不断变化的模型阵容，并解释称特定模型的限制以及数据使用和保留条款各不相同。文档指出，DeepSeek 的零数据保留协议每月续签一次，有效期至 2026 年 10 月 31 日。[[12]](#cite-id-2xbh1d2u5h)

## 隐私与安全

OpenCode 表示它不存储用户的代码或上下文数据，并将其作为隐私敏感型用途的相关特性。[[1]](#cite-id-dhdgz18ngm) 其常见问题解答（FAQ）还提到，当用户使用 OpenCode 的免费模型时，数据和信息会被存储。[[1]](#cite-id-dhdgz18ngm) 数据处理取决于所选的模型和服务：托管模型请求会将代码上下文发送给提供商，而本地模型可以将处理保留在本地基础设施上。[[2]](#cite-id-wxsh1s9r6n)[[3]](#cite-id-0aslq0971o) OpenCode 的 `/share` 命令会将会话上传到一个公开链接，该链接在取消共享前一直保持可访问状态，而 Zen 会向其模型提供商发送请求。[[2]](#cite-id-wxsh1s9r6n)[[3]](#cite-id-0aslq0971o)

OpenCode 的权限系统并不会将软件与操作系统隔离。关于网络服务器使用的文档建议设置 `OPENCODE_SERVER_PASSWORD` 并将服务器绑定到 localhost；有关该项目的报告还描述了一个早期已修复的未授权暴露问题。[[2]](#cite-id-wxsh1s9r6n)[[3]](#cite-id-0aslq0971o)

## 企业使用

OpenCode 提供旨在组织内部运行的企业级部署。该公司表示，组织可以从团队试用开始，通过集成单点登录（SSO）和内部 AI 网关在整个组织内进行部署；它还声明不设许可限制或所有权主张，且不存储任何数据或上下文。[[8]](#cite-id-p6aqkf0rqx)

## OpenCode Data

OpenCode Data 是一个用于模型使用情况、模型组合变化、成本、会话成本、Token 成本、缓存率、地理分布细分以及模型对比的仪表板。[[9]](#cite-id-ffvi2jkdia)

## 2026年10月 Console 安全事件

在2026年10月17日至18日晚间，攻击者入侵了一个较旧的 OpenCode 系统。OpenCode 将此次事件描述为与大规模“蒸馏攻击”有关，并表示该事件影响了 1.4% 的 OpenCode Console 用户。[[10]](#cite-id-iod7os5e45) 联合创始人 Dax Raad 表示，此次泄露影响的是部分用户存储 API 密钥的 Console，而非开源应用程序或命令行工具；根据 Raad 的说法，暴露的密钥仅限于 Console 工作区，应用程序本身无法获取。[[10]](#cite-id-iod7os5e45)

用户报告了 OpenAI、Anthropic 和 Google AI 账户的异常消费警报和扣费。一些人表示扣费达到了数百美元，少数人报告总额超过 1,000 美元；Anthropic 和 Google 封锁了他们认为已泄露的密钥。[[10]](#cite-id-iod7os5e45) OpenAI 表示正与 OpenCode 合作恢复访问权限，并为攻击中消耗的额度向客户退款，而 OpenCode 表示针对未经授权费用的退款工作正在进行中。[[10]](#cite-id-iod7os5e45) OpenCode 通过电子邮件通知了受影响的用户，并敦促他们直接在各供应商处撤销并更换 API 密钥。[[10]](#cite-id-iod7os5e45)

一些评论人士对该公司“蒸馏攻击”的定性提出了质疑，认为这次泄露是一次传统的窃取行为，且尚未证实这些密钥被用于模型蒸馏。[[10]](#cite-id-iod7os5e45) Raad 表示，攻击者曾尝试连续 48 小时入侵 OpenCode 的系统，团队使用了 [AI 智能体](https://iq.wiki/wiki/ai-agents) 来协助防御响应。[[10]](#cite-id-iod7os5e45) 他还提到，一些 AI 模型最初帮助分析了该事件，但在触发安全过滤器后拒绝检查恶意代码；随后，OpenCode 获得了 OpenAI Daybreak Blue 项目的访问权限，该项目为经过审核的用户提供更不容易拒绝防御性安全请求的模型。[[10]](#cite-id-iod7os5e45)

此次泄露发生在 OpenCode 向用户免费开放 GLM-5.3-Flash 的当晚。研究开源权重的研究人员曾报告称，更广泛的 GLM-5.3 系列的网络安全能力已接近此前仅限于受限访问模型（如 Anthropic 的 Claude Mythos Preview）的水平。[[10]](#cite-id-iod7os5e45)
