首页 > AI教程 >OpenCode部署:开源AI编程助手在两个真实场景中的应用

OpenCode部署:开源AI编程助手在两个真实场景中的应用

来源:互联网 2026-07-01 06:26:01

使用 OpenCode 一段时间后,本文系统梳理其安装、模型配置,以及两个实际落地场景——内网知识库问答和 PR Review。整体使用下来,最直观的感受是:这款工具与 Cursor 并不冲突,但玩法确实不同。 本文主要内容 OpenCode 是什么、与 Cursor 有什么区别 如何安装,

使用 OpenCode 一段时间后,本文系统梳理其安装、模型配置,以及两个实际落地场景——内网知识库问答和 PR Review。整体使用下来,最直观的感受是:这款工具与 Cursor 并不冲突,但玩法确实不同。

本文主要内容

OpenCode 是什么、与 Cursor 有什么区别

长期稳定更新的攒劲资源: >>>点此立即查看<<<

如何安装,如何确认安装成功

如何利用 GitHub Copilot 订阅和低价 API 接入 OpenCode

两个场景分别启动一个 OpenCode 实例

场景一:文档仓实例,内网 Markdown + Copilot 问答

场景二:代码仓实例,PR 自动 Review

一、OpenCode 是什么

简单来说,OpenCode 是一款开源的 AI 编程 Agent,安装在本机运行,不绑定特定模型。默认进入终端 TUI(Terminal User Interface),也可通过 opencode run 单条执行命令,或使用 opencode serve 让其他人连接。

它与 Cursor 并不冲突——OpenCode 更偏向终端环境,支持自由更换模型,并且可脚本化。实际操作中,Tab 键用于切换 plan 和 build 模式:Plan 模式只读,适合审查;Build 模式写入磁盘,适合执行修改。对话时还可以通过 @文件 携带特定上下文。

二、模型如何选择

模型 ID 的格式为 provider/model,例如 deepseek/deepseek-chat。在 TUI 中,通过 /connect 配置 API Key,通过 /models 切换模型;配置默认写入 opencode.json 文件。

软件本身免费,模型使用您已有的订阅或购买的 API。

GitHub Copilot 接入方式:如果公司有 Copilot 订阅,可直接在 OpenCode 中使用,无需额外购买 Claude API。在 TUI 中通过 /connect 选择 GitHub Copilot,浏览器会提示在 github.com/login/device 输入设备码完成登录。之后通过 /models 命令即可切换 Copilot 提供的模型——注意部分模型可能需要 Pro+ 套餐。

凭证保存在 ~/.local/share/opencode/auth.json,切勿提交到 Git。可以在 opencode.json 中设置默认模型,但具体可用 ID 仍以 /models 列表为准。

低价 API 作为补充:在 PR Review 的 Actions 场景中,有时会使用 DeepSeek(按量付费),与本机 Copilot 区分开。Groq、OpenRouter 等平台同样可通过 /connect 接入。

日常使用组合如下:

场景模式模型
实例一:问文档planGitHub Copilot
实例二:本地看 PRplanGitHub Copilot
实例二:PR 自动评论ActionsDeepSeek(或 Copilot)

关键点:实例一只 @ 相关的 Markdown 文件;实例二才配置 GitHub workflow,仓库不要混用。

三、安装

如果之前安装过旧版,请先卸载。以下五条安装路径任选其一,安装完成后验证方式完全一致。

安装方式命令
macOS / Linux 脚本curl -fsSL opencode.ai/install | bash
Homebrewbrew install anomalyco/tap/opencode
npmnpm i -g opencode-ai@latest
Windowsscoop install opencodechoco install opencode;也可通过 WSL 使用脚本安装
桌面版opencode.ai/download 或 brew install --cask opencode-desktop

安装验证:执行 opencode --version 查看版本号 → 运行 opencode 进入 TUI → 执行 /connect → 执行 /models 确认有模型列表 → 在 plan 模式随意提问一次,跑通即可。

四、日常使用方法

进入仓库后,执行 cd your-repo && opencode 即可开始使用。

操作具体做法
携带文件@文件名
连接模型/connect/models
只读Tab → plan
修改代码Tab → build
团队规范/initAGENTS.md

脚本场景:使用 opencode run -m "..."(模型 ID 从 /models 中查看)。如需多人共用,可执行 opencode serve 启动服务,其他人通过 opencode attach http://IP:4096 连接——注意,每个人仍需使用自己的 Copilot 登录。

五、两个应用场景,分别启动一个 OpenCode 实例

这两套场景没有使用同一个 OpenCode 会话或同一个仓库,而是拆分为两套独立的实例:各对应一个 Git 仓库、一份 AGENTS.md、一套用法。混用会导致上下文混乱——文档问答的 prompt 和 PR Review 的规则相互干扰,权限也不好控制(文档实例只读即可,代码实例可能需要写权限)。

实例一:文档问答实例二:PR Review
仓库单独的内网文档仓,如 company-docs业务代码仓,如 app-backend
进入方式cd company-docs && opencodecd app-backend && opencode,或通过 GitHub Actions
默认模式长期 plan本地看 PR 用 plan;CI 中自动 Review
AGENTS.md只回答文档、禁止访问外网、必须注明出处安全、测试、代码规范
长期服务可选 opencode serve --port 4096 挂载文档仓一般不开启 serve,走 workflow + /oc 评论
模型本机 Copilot本机 Copilot;Actions 可用 DeepSeek

实例一只存放 Markdown 文档,不要作为业务代码仓使用。实例二才执行 opencode github install、才放置 opencode-review.yml。如果在两台机器上各运行一个 serve,端口要分开,例如文档用 4096,代码用 4097,避免同事 attach 到错误环境。

下面分别说明这两个实例的具体落地方法。

六、场景一:内网知识库问答(实例一)

目标是让 AI 能够方便地查询需求文档、API 规范、发布流程等内部资料。

做法是将这些文档整理为 Markdown 格式,存放在内网 Git 仓库,OpenCode 接入 GitHub Copilot,通过 @ 只携带相关 MD 文件,使用 plan 模式(只读,不修改代码)。文档放在内网仓,提问时通过 @ 控制范围;模型侧走 Copilot,前提是公司允许使用 Copilot 且您拥有有效订阅。

6.1 文档准备

从飞书、Confluence 等平台导出或同步为 .md 文件,按主题分目录存放,例如:

docs/运维/发布.md

docs/API/鉴权.md

一篇文档只讲一件事,标题清晰——这比一个大 PDF 好用得多。

可单独建立文档仓库,也可挂靠在业务仓库的 docs/ 目录下,但必须确保内网能 clone 下来。

6.2 在文档仓中接入 Copilot

在文档仓(实例一),找一台能访问 GitHub 的开发机操作:

cd /path/to/docs-repo
opencode

进入 TUI:

1.执行 /connect → 选择 GitHub Copilot

2.终端会显示设备码,用浏览器打开 github.com/login/device 并输入设备码完成授权

3.执行 /models 选择 Copilot 中合适的模型(文档问答场景建议使用能力较强的模型)

4.按 Tab 切换到 plan 模式,避免 Agent 意外修改仓库文件

首次完成后,之后进入仓库会自动带上 Copilot。如需固定默认模型,将 /models 中看到的模型 ID 写入 opencode.jsonmodel 字段即可。

6.3 有效提问方式

好的提问方式会明确范围,并用 @ 指定具体文件:

根据 @docs/运维/发布.md,生产环境回滚需要几步?只根据文档回答;文档未提及则明确说明,不要编造。

尽量避免以下提问:

「帮我看看需求文档」——范围过大,AI 容易编造内容。

一上来 @ 整个 docs/ 目录——上下文窗口会超限,回答质量也会下降。

如果文档特别多、单文件较长,可以使用 opencode mcp add 接入公司自有的检索 MCP 服务,先搜索再 @ 命中段落;文档量不大时,直接 @ 两三个相关 MD 文件即可。

6.4 使用 AGENTS.md 设定边界

在仓库中执行 /init,或手动编写一个 AGENTS.md,至少包含以下两条:

禁止使用 webfetch 访问外网。

回答时必须注明依据的文档及章节;找不到则明确说明「文档未记载」。

这比每次口头提醒更稳定可靠。

6.5 多人使用方式

文档仓库每个团队成员各自 clone 到本地,在各自的实例一中通过 opencode + /connect 连接自己的 Copilot 即可。

如需固定一台「文档问答专用机」,让它只运行实例一:

cd /path/to/company-docs
opencode serve --hostname 0.0.0.0 --port 4096

设置环境变量 OPENCODE_SERVER_PASSWORD。其他人通过 opencode attach http://10.x.x.x:4096 连接时,工作目录仍为文档仓。注意不要与实例二共用 4096 端口。

七、场景二:Git PR 自动 Review(实例二)

在业务代码仓单独启动实例二。当 PR 提交后,让 AI 先进行初步审查:明显的安全问题、遗漏的测试、代码规范不一致之处,先留下评论,再由人工重点审查。OpenCode 官方提供了 GitHub 集成,既可在 Actions 中自动运行,也可在 PR 评论中手动触发。

常见三种用法:

方式使用场景
PR 打开/更新自动运行团队默认流程,每个 PR 都有初步评审
评论中写 /oc对某一段 diff 想单独修改或检查
本地 opencode pr合并前自己先运行一遍

7.1 在代码仓中首次接入

在业务代码仓根目录(实例二,不要与文档仓混用):

opencode github install

按照向导完成以下步骤:

1.安装 OpenCode GitHub App 到目标仓库(或整个组织)。

2.生成 .github/workflows/opencode.yml(或专门的 review workflow)。

3.提示前往仓库 Settings → Secrets → Actions 添加环境变量,例如 DEEPSEEK_API_KEY

DeepSeek 按量付费较为便宜,PR Review 默认使用它;如果公司有 Azure/Bedrock,可将 modelenv 替换为对应配置。

7.2 PR 自动 Review 的 workflow

单独放置一个 opencode-review.yml,仅在 PR 事件触发时运行:

name: opencode-review
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
jobs:
review:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: read
issues: read
steps:
- uses: actions/checkout@v6
with:
persist-credentials: false
- uses: anomalyco/opencode/github@latest
env:
DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
model: deepseek/deepseek-chat
use_github_token: true
prompt: |
按仓库 AGENTS.md 的规范 Review 这个 PR:
- 安全:注入、权限、密钥是否泄露
- 错误处理和边界条件
- 测试是否覆盖主要变更
只评论确定的问题,不要凑字数,不要建议风格小事。

pull_request 触发且未写 prompt 时,OpenCode 也会进行默认 Review;此处加入 prompt 是为了对齐仓库中的 AGENTS.md 规范。

合并到 main 分支后,下次任何人开 PR 或推送新 commit,Actions 中就会自动运行 Review,评论会出现在 PR 对话中。

7.3 PR 中指定某一行修改

在 GitHub 的 Files changed 页面,在某一行下方写评论:

/oc 这里改成参数化查询,不要拼接 SQL

OpenCode 会携带文件路径、行号、diff 上下文,这比在总评中泛泛说「注意 SQL」要精确得多。如果希望它能直接 push commit 到同一 PR,workflow 中需要设置 contents: write 权限——但初评阶段建议只使用只读权限,代码修改仍由人工合并。

7.4 合并前本地先查看

在代码仓开 PR 前,用实例二在本地扫描一遍 diff:

cd /path/to/app-backend
opencode pr 42

这条命令会 checkout 到 PR 的分支。在同一仓库中再执行 opencode,切换到 plan 模式,例如:

对比当前分支和 main 的 diff,列出 3 个最值得人工检查的风险点。

这比在网页中逐行翻看 patch 要快得多,尤其适合大型 PR。

7.5 注意事项

Secrets 切勿写入仓库,只放入 GitHub Actions Secrets。

permissions 配置要恰当:仅做 Review 使用 contents: read;需要自动修改 PR 再开启 write。

公共仓库需注意 OpenCode 的 share 默认行为,敏感项目建议关闭或仅使用私有仓库。

评论过多会干扰他人,prompt 中写明「只评确定的」,可减少无效评论。

八、总结

只要有真实的 CLI 需求、希望在内网部署、或想对接自己的业务系统,OpenCode 就值得安装。它与直接调用模型 API 最大的区别在于:能编排上下文,能指定工作目录,拥有不亚于 Cursor、Codex 的完整 Agent 机制。

此外,它还能与 OpenSpec、Superpowers 配合使用:OpenSpec 定义任务,Superpowers 管理流程,OpenCode 负责执行——三者分工清晰明确。

侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述

热游推荐

更多
湘ICP备14008430号-1 湘公网安备 43070302000280号
All Rights Reserved
本站为非盈利网站,不接受任何广告。本站所有软件,都由网友
上传,如有侵犯你的版权,请发邮件给xiayx666@163.com
抵制不良色情、反动、暴力游戏。注意自我保护,谨防受骗上当。
适度游戏益脑,沉迷游戏伤身。合理安排时间,享受健康生活。