← 返回博客

OpenCode 深度解析:153K Stars 的开源 AI 编码 Agent

AI应用

项目地址:github.com/anomalyco/opencode | 153K Stars | MIT 协议

一、OpenCode 是什么?

OpenCode 是由 anomalyco开发的开源 AI 编码 Agent。它运行在终端中,提供完整的 TUI(终端 UI)体验。

核心定位很简单:一个完全开源、不锁定任何模型供应商的 AI 编程助手

官方标语:“The open source AI coding agent.”

项目最初由 Neovim 用户构建,因此对终端体验有极致追求。

核心亮点速览

特性说明
双 Agent 架构build(全权限开发)+ plan(只读分析),Tab 一键切换
模型无关支持 Claude、OpenAI、Google、本地模型,不锁定供应商
LSP 原生支持开箱即用的语言服务器协议支持
TUI 体验极致的终端 UI,支持多行编辑、斜杠命令、流式输出
客户端/服务器架构前端只是客户端,可从手机 App 远程驱动
桌面 App(Beta)提供 macOS/Windows/Linux 桌面客户端
153K StarsGitHub 社区热度极高

二、双 Agent 架构:Build vs Plan

OpenCode 内置了两个独立的 Agent,通过 Tab 键即可在对话中即时切换。

Build Agent(全权限开发)

默认 Agent,拥有完整的系统操作权限:

适合日常开发、功能实现、调试修复等场景。

Plan Agent(只读分析)

只读模式的 Agent,专为探索和分析设计:

适合浏览不熟悉的代码库、做修改前的架构分析、审查代码。

两个 Agent 共享同一个对话上下文。你可以先用 Plan 分析完代码结构和影响范围,再切到 Build 执行修改——一个非常流畅的”先分析后执行”工作流。


三、模型无关架构

OpenCode 的核心理念之一:不被任何模型供应商锁定

你可以在任意时刻切换底层模型,无需修改任何配置:

# 使用 Claude
opencode --model claude-sonnet-4-20250514

# 使用 OpenAI
opencode --model gpt-4o

# 使用 Google
opencode --model gemini-2.5-pro

# 使用本地模型
opencode --model ollama:codellama

团队推荐通过 OpenCode Zen 获取最佳开箱体验,但工具本身完全不强制使用特定供应商。


四、快速安装

一键安装(推荐)

curl -fsSL https://opencode.ai/install | bash

通过包管理器安装

# macOS(推荐)
brew install anomalyco/tap/opencode

# 或通过官方 Homebrew 仓库
brew install opencode

# Windows
scoop install opencode
# 或
choco install opencode

# Linux(Arch)
sudo pacman -S opencode
paru -S opencode-bin

# 全平台
npm i -g opencode-ai@latest
# 也支持 bun/pnpm/yarn

# 通过 mise
mise use -g opencode

系统要求

桌面 App(Beta)

OpenCode 提供桌面客户端,可在 opencode.ai/downloadReleases 页面 下载:

平台格式
macOS Apple Silicon.dmg
macOS Intel.dmg
Windows.exe
Linux.deb / .rpm / AppImage
# macOS 安装桌面版
brew install --cask opencode-desktop

# Windows
scoop install opencode-desktop

五、核心特性深度解析

5.1 TUI 终端体验

OpenCode 的终端 UI 是它的标志性特性。作为由 Neovim 用户构建的项目,它把终端交互做到了极致:

5.2 内置 LSP 支持

与 Claude Code 等工具不同,OpenCode 开箱即用地集成了 LSP(Language Server Protocol)

这意味着 OpenCode 理解你的代码不仅仅是基于文本模式匹配,而是真正具备了 IDE 级别的语言感知能力。

5.3 客户端 / 服务器架构

OpenCode 采用客户端/服务器分离设计,这是它与大多数 AI 编码 Agent 的本质区别:

手机 App ─┐
桌面 App ─┼── OpenCode Server ── LLM
TUI ──────┘

这意味着你可以在一台远程服务器上运行 OpenCode Server,然后从本地 TUI 或手机 App 驱动它。前端只是一个客户端实现——未来可以出现更多客户端。

5.4 内置 Agent:@general

除了 Build 和 Plan 两个主 Agent,OpenCode 内部还有一个 general 子 Agent,专为复杂搜索和多步骤任务设计:


六、命令速查

启动与模型选择

# 启动交互式对话
opencode

# 指定模型启动
opencode --model claude-sonnet-4-20250514

# 指定工作目录
opencode --directory /path/to/project

# 传递系统提示
opencode --system-prompt "你是一个资深 Rust 开发者"

对话内操作

操作功能
Tab切换 Build / Plan Agent
/唤起斜杠命令列表
@general调用通用子 Agent
多行编辑终端内流畅编辑长提示
流式输出实时查看工具执行和 LLM 响应

七、配置与自定义

配置文件优先级

安装脚本的检测顺序:

  1. $OPENCODE_INSTALL_DIR 环境变量指定的目录
  2. $XDG_BIN_DIR
  3. $HOME/bin
  4. $HOME/.opencode/bin(默认)

编辑器支持

OpenCode 为多种编辑器提供了开箱即用的配置:


八、与 Claude Code 对比

OpenCode 的 README 直接承认它与 Claude Code “在能力上非常相似”,但指出了几个关键差异:

维度OpenCodeClaude Code
开源✅ 100% 开源(MIT)❌ 闭源
供应商锁定❌ 模型无关,自由切换✅ 仅限 Claude
LSP 支持✅ 开箱即用❌ 不支持
双 Agent 架构✅ Build + Plan❌ 单一模型
客户端/服务器✅ 支持远程驱动❌ 仅本地 CLI
桌面 App✅ Beta 版提供✅ 有桌面版
语言TypeScript + RustTypeScript
Stars153K

九、谁适合用 OpenCode?

适合的场景

当前限制


十、技术架构

层级技术选型
主要语言TypeScript(60.2%)
文档MDX(36.2%)
CSS/UICSS(2.8%)
原生模块Rust(0.4%)
构建系统Turborepo 管理 Monorepo
包管理Bun
基础设施SST
代码检查Oxlint
格式工具Prettier
Git 钩子Husky
Nix 支持Flake

十一、总结

OpenCode 是 AI 编码助手领域一个重要的开源力量。它的双 Agent 架构(Plan+Build)提供了流畅的”先分析后执行”体验,模型无关设计让你不被任何供应商锁定,客户端/服务器分离则为未来的多端交互打开了可能性。

153K Stars 和 MIT 协议意味着它在开源社区有强大的信任基础。无论你是终端爱好者、多模型用户,还是单纯追求开源自由的开发者,都值得一试。

快速开始:

curl -fsSL https://opencode.ai/install | bash
opencode

技术栈:TypeScript 60% + Rust + MDX | 协议:MIT | 最新版本:v1.14.31(2026-05-01)

官网:opencode.ai | 文档:opencode.ai/docs