opencode 初尝试
2026-01-20 tech opencode macos linux 13 mins 14 图 4714 字

最近opencode很火,我也在 macOS/Linux 上装了。这篇文章记录一下安装和使用过程。
官方说明
OpenCode is an open source agent that helps you write code in your terminal, IDE, or desktop.
- 自动识别编程语言。
- 多个对话同时进行。
- 分享编程过程。
- 支持各种AI模型。
- 什么编辑器,都能用OpenCode。
安装
最简单的方式是使用Homebrew:
brew install anomalyco/tap/opencode
Linux下:
curl -fsSL https://opencode.ai/install | bash


启动OpenCode并配置模型:
cd ~/Workspace # 进入你的工作目录
opencode # 启动OpenCode

在TUI界面中,输入 /connect 配置模型提供商:
- 新手推荐: OpenCode Zen(经过验证的模型)
- 进阶选择: Claude Sonnet 4.5(编程能力强)
首次使用,运行 /init 让OpenCode分析你的项目结构。

安装好之后让 opencode 帮忙安装 oh my opencode:
请安装ohmyopencode:bunx oh-my-opencode install

基础操作
掌握这几个核心命令就能开始使用:
/help # 查看所有命令
@文件名 # 引用文件内容
!命令 # 执行shell命令
/undo # 撤销操作
/redo # 重做操作
Tab键 # 切换Plan/Build模式
Esc # 退出、打断当前操作
初上手
先拿我的blog项目进行练手:
请分析我这个blog项目的结构和功能,然后告诉我可以用OpenCode做什么改进?






其他类似的上手问答工作都可以试试:
1. 请问你会做些什么
2. 检查macOS版本
3. 显示内存使用情况
4. 列出Homebrew安装的包
5. 检查磁盘空间
oh my opencode


模型配置说明

- Sisyphus (西西弗斯): 默认的 Orchestrator (协调者)。他是“全能管家”,负责拆解任务、维护 TODO 列表,脏活累活他先接,搞不定再摇人。
- Atlas (阿特拉斯): Executor (执行者)。专注于执行 Prometheus 制定好的计划,或者处理具体的实施工作,不负责高层决策。
- Hephaestus (赫淮斯托斯): The Craftsman (工匠)。这是一个“深度编码”模式 (类似 Deep Mode),不依赖 Fallback 链,专注于一次性写出高质量、经过深思熟虑的代码。
- Prometheus (普罗米修斯): Planner (规划者)。只动口不动手,负责生成架构文档和实施计划,绝对不写具体代码。
OpenCode 云端模型:
在输入框输入 /models 即可切换models


添加本地 Ollama 模型
OpenCode 原生支持连接本地 Ollama 实例,无需 API Key。
安装 Ollama
# 启动服务(后台运行)
ollama serve
# 拉取代码专用模型
ollama pull qwen3-coder-next:q4_K_M
⚠️ 重要提示:截至 2026.2.4 macOS 正式版 Ollama不支持
qwen3-coder-next等最新模型。 请从 GitHub 下载最新的 RC 版本:
- 访问 https://github.com/ollama/ollama/releases
- 下载 macOS RC 版本的 dmg 文件(不是 tar.gz!)
- 打开 dmg 文件,将 Ollama 拖到应用程序文件夹
- 启动 Ollama(Launchbar 或 Spotlight 搜索 “Ollama”)
先在 OpenCode 中配置 Ollama
vi ~/.config/opencode/opencode.json
{
"provider": {
"ollama": {
"npm": "@ai-sdk/openai-compatible",
"name": "Ollama(local)",
"options": {
"baseURL": "http://localhost:11434/v1"
},
"models": {
"qwen3-coder-next:q4_K_M": {
"name": "qwen3-coder-next:q4_K_M"
}
}
}
}
}
再在 Oh My OpenCode 中使用 Ollama
vi ~/.config/opencode/oh-my-opencode.json
{
"agents": {
"hephaestus": {
"model": "ollama/qwen3-coder-next:q4_K_M"
},
"oracle": {
"model": "ollama/qwen3-coder-next:q4_K_M"
},
"prometheus": {
"model": "ollama/qwen3-coder-next:q4_K_M"
},
"sisyphus": {
"model": "ollama/qwen3-coder-next:q4_K_M"
}
},
"categories": {
"visual-engineering": {
"model": "opencode/minimax-m2.1-free"
},
"ultrabrain": {
"model": "opencode/minimax-m2.1-free"
},
"quick": {
"model": "opencode/minimax-m2.1-free"
}
}
}
我的常用命令
删除所有 Task
如果需要清除所有 Sisyphus 任务,运行以下命令:
# 查看 Sisyphus 状态
ls ~/.sisyphus/
# 删除 boulder.json(清除任务状态)
rm ~/.sisyphus/boulder.json
# 删除所有计划文件
rm ~/.sisyphus/plans/*.md
# 删除 notepads
rm -rf ~/.sisyphus/notepads/*
/handoff
长对话会产生:
- 大量已完成的思考过程
- 过时的中间草稿
- 历史决策和当前需求混杂
- 上下文膨胀影响响应质量
使用 /handoff 命令可以 创建当前工作上下文的精简摘要,用于下一会话, 这会生成一个包含以下内容的摘要:
- 当前项目状态
- 未完成的工作
- 关键决策和上下文
- 建议的下一会话起点
常用命令速查
🔥 高频使用(日常必用)
基础操作
opencode- 启动 TUI 界面opencode .- 启动当前目录的 TUI@filename- 引用文件(模糊搜索当前目录)@packages/functions/src/index.ts- 精确引用文件路径!ls -la- 执行 shell 命令,结果加入对话!npm run build- 运行构建命令
必备 Slash 命令
/help- 显示帮助信息/init- 初始化项目/创建 AGENTS.md/undo- 撤销上一步修改/redo- 重做操作/share- 分享当前会话/models- 切换/查看可用模型/connect- 配置 API keys
智能体切换
Tab- 切换 Build/Plan 模式
⚡ 中频使用(项目开发常用)
CLI 命令
opencode -c/opencode --continue- 继续上次会话opencode -s session_id- 继续指定会话opencode run "message"- 非交互式运行opencode serve- 启动 headless HTTP 服务器opencode web- 打开 Web 界面opencode agent [command]- 管理智能体
内置工具
read- 读取文件内容write- 创建/覆盖文件edit- 编辑文件grep- 搜索文件内容glob- 按模式查找文件bash- 执行 shell 命令ast_grep_search- AST 模式搜索ast_grep_replace- AST 模式替换lsp_symbols- 获取符号列表lsp_diagnostics- 获取诊断信息lsp_rename- 重命名符号
模式切换
build- 默认模式(全工具权限)plan- 规划模式(只读,禁止文件操作)
🔧 低频使用(高级功能)
Oh My OpenCode 专用
11个专业智能体
@sisyphus- 默认编排器(复杂任务)@hephaestus- 自主深度工作者@atlas- 主编排钩子@prometheus- 规划智能体@metis- 计划分析验证@momus- 工作计划审查@oracle- 战略顾问@librarian- 多仓库研究@explore- 快速上下文搜索
高级命令
ulw/ultrawork- 超work模式(复杂任务自动理解上下文)/refactor- 智能重构/start-work- 从 Prometheus 计划开始执行/cancel-ralph- 取消 Ralph 循环/stop-continuation- 停止所有延续机制/handoff- 创建上下文摘要
32+ 生命周期钩子
pre-exec,post-exec,pre-task,post-taskon-error,on-success,on-timeoutbackground-compaction,context-compaction- 等等…
MCP 管理
opencode mcp add [server]- 添加 MCP 服务器opencode mcp remove [server]- 移除 MCP 服务器opencode mcp list- 列出已安装的 MCP
自定义命令
/custom-command- 自定义命令(放在.opencode/commands/目录)
服务器/开发
opencode attach- 附加到运行中的服务器opencode --fork- 继续时fork会话opencode --model provider/model- 指定模型opencode --agent agent_name- 指定智能体














