八、高级用法与最佳实践
本文介绍 OpenCode 的高级用法,包括自动化、CI/CD 集成、远程协作等实用技巧。
自动化与非交互模式
OpenCode 支持非交互模式,可以在脚本中直接调用:
bash
opencode "请重构这个函数,使其更加可读" --model claude-sonnet
支持从标准输入读取内容:
bash
cat main.ts | opencode "请添加类型注释" --model claude-sonnet
远程模式与协作
远程模式允许你连接到其他机器上的 OpenCode 实例:
bash
opencode remote --host example.com --port 4096
这在以下场景中特别有用:
-
连接到大内存服务器上的 AI 实例
!团陘共享同一个配置和模型环境
-
在弱机嘨上使用强力服务器的计算资源
环境变量配置
OpenCode 支持多种环境变量:
bash
export OPENCODE_API_KEY=sk-xxx
export OPENCODE_CONFIG=/path/to/config.json
export OPENCODE_CONFIG_CONTENT='{"model":"claude-sonnet"}'
export OPENCODE_DISABLE_CLAUDE_CODE=1
export OPENCODE_DISABLE_CLAUDE_CODE_PROMPT=1
export OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=1
环境变量可以覆盖配置文件中的对应项。
opencode.json 全量配置示例
jsonc
{
"schema": "https://opencode.ai/config.json",
"model": "anthropic/claude-sonnet-4-5",
"autoupdate": true,
"server": {
"port": 4096,
"host": "0.0.0.0"
},
"provider": {
"opencode": {
"options": {
"apiKey": "{env:OPENCODE_API_KEY}"
}
}
},
"permission": {
"read": "allow",
"edit": "ask"
}
}
CI/CD 集成
在 GitHub Actions 中使用 OpenCode:
yaml
jobs:
code-review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run OpenCode review
run: |
opencode --headless "请审查本次 PR 的代码质量" \
--model claude-sonnet
这样可以在 PR 提交时自动进行代码审查。
最佳实践
- 使用 AGENTS.md:为每个项目配置 AGENTS.md,让 AI 快速理解项目
- 自定义 Agent:为不同任务创建专门的 Agent,提高效率
- 权限控制:利用权限系统保证安全
- 利用 Tool:熟悉各种工具的使用场景
- 关注更新:OpenCode 更新频繁,定期查看变更日志
- 社区资源:参与 GitHub 社区,共享经验和技巧
思考的力量:从回答到操作
OpenCode 的核心优势在于它不仅能给出建议,
还能直接执行操作:创建文件、修改代码、运行命令。
这就是它与其他 AI 工具最大的不同:�."回答问题"到"完成任务„。2希接这系列文章能帮你更好地佟用 OpenCode,提升开发效熆。如果上不個回体,可以自己在过滤明明明明明明明明明明明明明明明明明明明明明明明明明明