opencode
-
opencode是美国Anomaly公司开发的
-
opencode是claudecode的替代品
-
AI编程工具
-
支持桌面端和命令行
-
有很多免费大模型可以直接使用
相关命令
# 升级opencode
opencode upgrade
# 查看mcp
opencode mcp list
# 查看认证模型列表
opencode auth list
# 移除对应的提供商provider
opencode auth remove xiaomi
# 查看所有模型
opencode models
opencode安装和配置
npm i -g opencode-ai
# 如果安装失败,则使用官方 npm 源安装
npm install -g opencode-ai --registry=https://registry.npmjs.org
- 在终端中,输入opencode,即可启动
相关配置文件
- auth.json
- 这个文件存储的是 已连接的提供商认证凭据,即你在
opencode中登录的第三方服务的 API 密钥或 OAuth 凭证
- 这个文件存储的是 已连接的提供商认证凭据,即你在
- opencode.json
- 这个文件保存的是 全局配置设置,控制
opencode的整体行为和配置 - 连接配置,指定提供商的URL
- MCP配置等等
- 这个文件保存的是 全局配置设置,控制
~/.local/share/opencode/auth.json
~/.config/opencode/opencode.json
opencode使用技巧
引用文件
- 使用
@键进行文件引用 - 在输入消息时,使用
@符号可以触发模糊文件搜索,选择文件后会自动将文件内容添加到对话中
关于选择多个文件:
文档中显示 @ 主要用于单个文件的模糊搜索和引用。如果需要让 OpenCode 知道多个文件,可以:
- 在提问时多次使用
@引用不同的文件 - 在提示中明确列出需要修改的文件路径
- 使用描述性语言说明需要修改的范围
请修改 @src/app.ts 和 @src/utils.ts 中的错误处理逻辑
引用图片
- 1、通过路径
- 2、通过复制粘贴
读取文件特定内容
使用文件引用语法
@config.js:10-15- 读取 config.js 文件的第 10 到 15 行@config.js- 读取整个 config.js 文件- 结合行号引用,如
config.js:7- 引用第 7 行
直接在编辑器中选择文本
- 在代码编辑器中打开文件(如 config.js)
- 用鼠标拖拽选中您想要 AI 读取的具体内容区域
- 然后在对话框中提问,AI 会自动专注于您选中的内容
相关命令技巧
# 给项目初始化创建一个分析项目都文件
/init
# 创建新对话
/new
# 切换模型
/model
常用快捷键
- mac中换行问题
- 如果发现 Shift + Enter 不生效,直接用 Ctrl + J
- Ctrl + J(通常最稳,很多终端都能识别),如在warp中也可以
回车 → 发送消息
Tab → 切换模式
@ → 引用文件
/ → 输入命令
! → 执行终端命令
按2次Esc → 退出会话
Ctrl+回车、Ctrl + J → 换行
vscode集成opencode
- 安装opencode插件
opencode相关快捷键
-
opencode切换模型
- 按住ctrl/control + P,选择Switch model可以进行模型切换
-
Plan和Build模式的切换 (tab切换模式)
- Plan模式不会修改你的文件和代码,只能阅读你的文件以及给你建议构思等等
- Build模式可以进行文件和代码的修改,建议先用Plan模式构思好,再用Build模式执行
- 切换模式:
command + .
配置mcp
-
全局配置(常用): 作用于所有项目。 路径:
~/.config/opencode/opencode.json
身份验证
- (鉴权) 使用特定MCP服务器需要进行身份验证
- 如 figam mcp
opencode mcp auth figma
- (验证是否连通) 列出所有MCP服务器及其身份验证状态:
opencode mcp list
配置figma mcp
-
Figma 官方 MCP
- 远程MCP
- OAuth授权
- figma oauth授权验证:opencode mcp auth figma
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"figma": {
"type": "remote",
"url": "https://mcp.figma.com/mcp",
"enabled": true
}
}
}
- 第三方 Figma MCP配置
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"figma": {
"type": "local",
"command": ["npx", "-y", "figma-developer-mcp", "--stdio"],
"environment": {
"FIGMA_API_KEY": "figd_2QJXjA19ZPD3xW6pEOWQED3AX7-_2UDMN4oPWcTp"
},
"enabled": true
}
}
}
常用的mcp配置
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"figma": {
"type": "local",
"command": ["npx", "-y", "figma-developer-mcp", "--stdio"],
"environment": {
"FIGMA_API_KEY": "figd_2QJXjA19ZPD3xW6pEOWQED3AX7-_2UDMN4oPWcTp"
},
"enabled": true
},
"context7": {
"type": "remote",
"url": "https://mcp.context7.com/mcp",
"enabled": true
},
"chrome-devtools": {
"type": "local",
"command": [
"npx",
"-y",
"chrome-devtools-mcp@latest"
],
"enabled": true
}
}
}
参考链接:
skills配置
- skills技能的配置
- opencode的skiils配置目录:
- 全局路径:
~/.config/opencode/skills/ - 项目路径:
.opencode/skills/
- 全局路径:
- 直接通过npm来安装skill即可
快速使用
- 进入项目目录,运行
opencode就能启动:
cd /path/to/project
opencode
- 首次使用建议先运行
/init命令,让 OpenCode 分析你的项目,自动生成一个AGENTS.md文件:
/init
这个文件可以帮助 OpenCode 更好地理解你的项目结构和编码规范,建议 commit 到 Git 里。
配置代理端口
- 有些连接一些模型(如openai),需要翻墙,需要配置vpn代理端口
- mac通过
scutil --proxy查看网络代理情况 - 在
~/.zshrc设置如下
# ===== 配置代理 OpenCode / Codex proxy =====
export HTTP_PROXY=http://127.0.0.1:1087
export HTTPS_PROXY=http://127.0.0.1:1087
export NO_PROXY=localhost,127.0.0.1
oh-my-opencode
- https://github.com/code-yeongyu/oh-my-opencode
- 通过预设一系列强大的 AI 代理(Agents)、工具和配置,让原生的 OpenCode 变得更好用、更聪明
- 增强opencode使用,已经把常用的 MCP直接配置好