OpenCode 是什么?
OpenCode 是一款开源的 AI 编程代理(AI Coding Agent),专门帮助开发者在真实的软件项目中使用人工智能完成代码开发、项目分析、问题排查、代码修改和软件维护等工作。
与传统的 AI 聊天工具不同,OpenCode 不只是回答编程问题,而是能够直接理解项目代码,并在获得授权后读取和修改文件、执行命令、使用开发工具,从而参与完整的软件开发流程。
OpenCode 的官方网站是 opencode.ai,项目采用开源方式开发。
OpenCode 有什么特点?
OpenCode 的核心定位是让 AI 从一个单纯的代码生成助手,变成可以真正参与软件开发工作的 AI Agent。
开发者可以在自己的项目目录中启动 OpenCode,然后让它分析整个项目的结构、寻找代码问题、实现新的功能或者修改现有代码。
由于 OpenCode 能够结合项目中的实际文件和开发环境进行工作,因此它与普通的 AI 聊天式编程存在明显区别。
OpenCode 支持哪些 AI 模型?
OpenCode 并不要求用户只能使用某一家 AI 服务。它支持多个 LLM 提供商,同时也支持部分本地模型。
开发者可以根据自己的需求选择不同的模型。例如,可以针对复杂代码分析选择推理能力更强的模型,也可以针对大量代码生成任务选择速度更快或者价格更低的模型。
这种模型选择自由度也是 OpenCode 的重要特点之一。
OpenCode 可以做什么?
OpenCode 可以参与软件开发中的多个环节,包括分析现有项目、开发新功能、修复 Bug、重构代码以及维护现有项目。
分析现有项目
当开发者接手一个陌生项目时,可以让 OpenCode 阅读项目文件并分析项目结构。
例如,可以让它寻找某个功能的实现位置、分析 API 的调用关系、解释某个组件的工作方式,或者帮助开发者快速理解一个大型代码库。
开发新功能
OpenCode 可以根据开发者提出的需求,在现有项目中实现新的功能。
它能够分析现有代码结构,然后根据项目的技术栈和代码规范创建或者修改相关文件。
对于比较复杂的需求,还可以先让 OpenCode 分析任务并制定实现方案,然后再执行实际开发。
修复 Bug
当项目出现错误时,可以把问题交给 OpenCode 分析。
OpenCode 可以检查相关代码、寻找可能的问题来源,并根据分析结果修改代码。
对于需要多个步骤才能解决的问题,它还可以结合项目上下文进行连续处理,而不是每次都需要开发者手动复制代码。
代码重构
OpenCode 也可以用于代码重构。
例如,可以要求它整理项目中的重复代码、改善代码结构、修改某一类 API 的调用方式,或者按照新的开发规范调整项目代码。
Plan 和 Build 模式
OpenCode 提供了不同的 Agent 工作方式,其中比较重要的是 Plan 和 Build。
Plan 模式
Plan 模式主要用于分析需求和制定开发方案。
在复杂项目中,可以先让 AI 阅读项目并确定应该修改哪些文件、采用什么方式实现功能,然后由开发者检查方案。
这种方式可以减少 AI 在没有充分理解项目的情况下直接修改大量代码的风险。
Build 模式
Build 模式主要用于实际开发。
在确认开发方案之后,可以让 OpenCode 创建文件、修改代码以及执行相关命令,从而完成实际的软件开发任务。
因此,一个比较常见的工作方式就是先使用 Plan 分析需求,再使用 Build 执行开发。
OpenCode 支持多 Agent
OpenCode 不只是一个单一的 AI Agent。
不同 Agent 可以承担不同类型的任务,例如项目探索、代码分析、开发以及研究等。
开发者也可以根据自己的项目需求配置 Agent,并对模型、提示词和工具权限进行调整。
OpenCode 支持 MCP
OpenCode 支持 MCP(Model Context Protocol),因此可以连接外部工具和服务。
通过 MCP,可以让 AI Agent 获得更多与开发环境以及外部服务交互的能力。
对于需要将 AI 编程工具连接到数据库、文档系统、开发工具或者其他服务的用户来说,MCP 可以进一步扩展 OpenCode 的使用场景。
OpenCode 支持 LSP
OpenCode 支持 Language Server Protocol(LSP)。
LSP 可以帮助开发工具更好地理解不同编程语言的代码结构,从而让 AI 在分析和修改代码时获得更加丰富的代码上下文。
对于包含大量源代码文件的大型项目来说,这种能力尤其有价值。
OpenCode 的项目规则
OpenCode 支持使用 AGENTS.md 保存项目级规则。
开发者可以在其中记录项目使用的技术栈、代码规范、测试命令、构建方式以及其他开发要求。
这样,当 AI 在项目中工作时,就可以根据这些规则进行开发,而不需要开发者在每一次新的会话中重新说明项目要求。
OpenCode 支持哪些平台?
OpenCode 最初主要面向终端开发环境,同时也提供桌面应用和 IDE 集成。
开发者可以在终端中运行 OpenCode,也可以使用官方提供的桌面应用和 IDE 环境。
这种设计使 OpenCode 既适合习惯命令行的程序员,也适合喜欢图形化开发环境的用户。
OpenCode 适合谁使用?
OpenCode 适合不同水平的开发者。
对于编程初学者,它可以帮助理解代码、分析错误和学习项目结构。
对于个人开发者,它可以减少大量重复性的编码工作。
对于专业程序员,它可以参与功能开发、Bug 修复、代码重构和项目维护。
对于经常通过 SSH 管理 VPS 或远程服务器的开发者,OpenCode 的终端工作方式也非常方便。
OpenCode 与普通 AI 聊天工具有什么区别?
传统 AI 聊天工具通常需要用户复制代码,然后向 AI 描述问题,再将 AI 返回的代码复制回项目。
OpenCode 的工作方式则更加接近真正的 AI 编程助手。
它可以直接在项目环境中读取代码,根据项目上下文理解开发需求,并在获得相应权限之后修改文件和执行命令。
因此,OpenCode 更适合需要 AI 深度参与实际软件开发工作的场景。
OpenCode 的主要优势
- 开源的 AI 编程代理
- 支持多种 AI 模型和模型提供商
- 支持部分本地模型
- 支持 Plan 和 Build 工作模式
- 支持多 Agent
- 支持 MCP
- 支持 LSP
- 支持项目级 AGENTS.md 规则
- 支持终端、桌面和 IDE 环境
- 适合本地开发和远程服务器开发
- 可以参与完整的软件开发流程
如何开始使用 OpenCode?
开发者可以从 OpenCode 官方网站获取最新版本以及安装说明。
官方网站:
官方文档:
总结
OpenCode 是一款面向软件开发工作的开源 AI 编程代理。它不仅能够生成代码,还可以理解项目结构、分析代码、制定开发计划、修改项目文件以及执行开发任务。
同时,OpenCode 对模型、Agent、工具和开发环境提供了较大的自由度。开发者可以根据自己的需求选择 AI 模型,并通过 MCP、LSP 和项目规则等功能进一步扩展 AI 的开发能力。
对于希望让 AI 真正参与软件开发,而不仅仅是使用 AI 生成代码片段的开发者来说,OpenCode 是一个值得了解的开源 AI 编程工具。









