OpenCode++

为 OpenCode Desktop 加装验证控制面,让 AI 改动的依据、边界与证据都可审查。

Star 数
★ 113
最近更新
1 个月前
License
MIT
主语言
TypeScript

30 秒速览

运行形态
Agent 插件 / 技能
可在哪里用
平台专用
费用
软件免费,模型调用费用自付
上手难度
低 · 几分钟可跑通
开始前需要
OpenCode DesktopWindows x64Node.jsShell / 命令行本地文件系统
典型场景
Windows 上使用 OpenCode Desktop、希望每次 AI 改动都有可审计证据的独立开发者。
不适合
  • 不使用 OpenCode Desktop 的团队
  • 需要操作系统级沙箱隔离的场景
  • 在 macOS 或 Linux 桌面上工作的用户

这个 Agent 能做什么,适合哪些场景?

OpenCode++ 是面向官方 OpenCode Desktop 的 Windows 优先 Harness 插件,以用户级 EXE 安装器交付,无需管理员权限,也不修改 OpenCode 的 app.asar 包。安装后会在模式选择器中新增一个名为 OpenCode++ 的主模式,由当前 OpenCode 模型在同一进程内调用插件工具,而不是另起一个模型或 CLI 进程。它的核心职责是在模型读文件、改代码、跑命令之外,提供上下文检索、编辑边界、命令与受保护路径守卫、与当前工作树哈希绑定的执行证据、以及策略/新鲜度/回归/幻觉/收敛等门禁。所有运行产物写入仓库内的 .agent-context/ 目录,包括 traces、runs、loops 与 sidecar 摘要。插件默认离线工作,不抓取远程上下文、不调用第二个模型,也没有隐藏的思维链输出。

插件围绕一次编码任务执行 Plan → Prepare → Retrieve → Execute → Collect → Evaluate → Decide → Persist → Finalize 流程。prepare 建立任务边界与必需检查;retrieve 在盲搜之前选出相关文件、符号、版本与依赖,并记录被拒文件及原因;执行阶段由守卫检查命令与受保护路径契约;随后把命令或 CI 结果与当前工作树哈希和证据策略匹配。evaluate 与 next 返回下一步允许的动作——修复、重新打包、人工复核或收尾——并给出紧凑的 ✓ Verified / ✗ Repair required / ⚠ Human review 状态。调用 opencode_plusplus_dashboard 可获得阶段进度、选中与被拒文件、决策依据、证据新鲜度、干预计数与最终摘要。Intervention Ledger 记录 observed、prevented、requested、repaired、verified、unresolved 与人工复核等状态。

  1. Windows 上使用 OpenCode Desktop、希望每次 AI 改动都有可审计证据的独立开发者。
  2. 团队发现 AI 经常在未运行测试的情况下宣称任务完成,需要强制的新鲜证据门禁。
  3. 需要限制 AI 只能编辑指定目录、阻止危险 shell 命令的项目维护者。
  4. 想在代码库中留下可复查的执行轨迹与决策记录,供事后复盘或评审使用。
  5. 希望针对自家工作流定制检索排序、命令规则或停止策略,并自行分发校验和安装包的团队。

如何安装或部署这个 Agent?

从 GitHub Releases 下载安装包:

opencode-plusplus-setup-win-x64.exe

先完全退出 OpenCode Desktop,再双击 EXE 并确认安装提示。安装器为当前用户安装,运行于 Windows x64,不需要管理员权限。

安装器只写入以下 OpenCode 配置文件(默认配置目录为 %USERPROFILE%\.config\opencode,OPENCODE_CONFIG_DIR 优先):

<OpenCode config>\plugins\opencode-plusplus.js
<OpenCode config>\agents\opencode-plusplus.md
<OpenCode config>\opencode-plusplus\state.json
<OpenCode config>\opencode-plusplus\installation.json

它会清理旧版本创建的 Slash Command 文件或对 app.asar 的补丁,不再修改 OpenCode Desktop 本体。

如何使用这个 Agent?

重启 OpenCode Desktop 并打开一个仓库,在提示框底部的模式选择器中选择 OpenCode++,然后像平常一样描述任务,例如:

Fix the login timeout and add a regression test

让该模式在工作过程中调用 prepare、retrieve、evaluate 与 next;需要 Harness 门禁的任务不要切回 Build 模式。

阅读 evaluate 或 next 返回的紧凑状态,需要阶段进度、选中/被拒文件、决策依据、证据新鲜度与干预记录时调用 dashboard 工具。需要查看轨迹、发现项、必需命令或最终报告时检查仓库目录:

.agent-context/traces/
.agent-context/runs/
.agent-context/loops/
.agent-context/sidecar/latest.md
.agent-context/sidecar/visualization.json

上下文缓存与注册表使用记录位于 .agent-context/cache/ 与 .agent-context/context-registry/usage/,这些本地产物通常不应提交。

这个 Agent 有哪些优点和局限?

优点
  • 区分 verified fix 与 suggested fix:只有针对当前工作树的新鲜命令或 CI 证据才算验证通过,注解、旧测试结果和模型摘要都不作数。
  • 以用户级 EXE 安装,不修改 OpenCode 本体的 app.asar,只写入四个配置文件,卸载与升级边界清晰。
  • 默认离线、不调用第二个模型,所有运行产物留在仓库的 .agent-context/ 下,可自行审查。
  • 公开了明确的自定义扩展点,包括 agent 提示词、命令与受保护路径规则、检索排序、证据信任与循环停止策略。
  • Dashboard 只暴露记录到的系统事实与决策输入,不伪装成展示模型思维链。
局限
  • 核心形态是 Windows x64 的 OpenCode Desktop 插件,macOS 与 Linux 桌面用户没有对应的安装路径。
  • 它明确不是操作系统级沙箱,无法阻止其他程序改文件,也不能用退出码证明业务语义正确。
  • 必须依赖 OpenCode Desktop 加载配置的插件目录;杀毒软件锁、只读目录、权限失败只能报为诊断或人工复核状态。
  • 存在 CLI 与 MCP 入口,但被定位为开发者/兼容面,普通用户无法借此绕开 Desktop 依赖。
  • 仓库没有给出针对团队规模的托管或集中策略分发方案,策略只能通过定制插件并重新打包安装器来落地。

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
OpenCode++ 当前 52 · 缺口较多 Agent 插件 / 技能免费 + 模型费 ★ 113 1 个月前 TypeScript —
Claudexor 76 · 表现良好 命令行工具免费 + 模型费 ★ 520 今天 TypeScript Codex · Claude Code
Swarm 60 · 存在缺口 Agent 插件 / 技能免费 ★ 747 5 个月前 TypeScript Claude Code
Calyx 59 · 缺口较多 桌面应用免费 ★ 351 6 天前 Swift Codex · Claude Code

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
52/ 100 五分制 2.6 / 5
信任安全 17/29
可靠稳定 8/14
适用触发 9/18
规范维护 8/18
有效结果 6/13
证据核验 4/8
查看各维度的扣分理由
信任安全17 / 29 · 2.9/5

权限边界文档明确区分宿主授权与插件语义阻断,并给出 allowed/approval-required/policy-blocked 三态,最小权限与用户确认有实质设计(2)。但依赖仅以 ^ 范围声明,未见锁文件或审计证据,扣至 1;来源归属仅 package.json 与 LICENSE 中的通用署名,发布者身份未验证,给 1。回滚方面 --repair 只恢复自有文件、不覆盖用户配置,可给 2。

可靠稳定8 / 14 · 2.9/5

文档对失败原因(过期/缺失/禁止/无进展)有明确报告语义,失败信息充分(2)。但依赖可用性仅有版本范围,无 lockfile 证据,且 Windows EXE 安装路径依赖 Releases 产物,静态无法确认,给 1。自洽性上权限三态与 evidence 边界描述一致(2)。

适用触发9 / 18 · 2.5/5

受众与场景(OpenCode Desktop Windows 用户)界定清楚(2),能力边界(CLI/MCP 为开发者面、不替代全局权限)说明到位(2)。但环境适配仅限 Windows Desktop,跨平台支持缺失,给 1;触发精度依赖模式选择器与 prompt 引导,缺少可验证的触发规则细节,给 1。

规范维护8 / 18 · 2.2/5

信息架构有中英双语 docs 与 reference 分层(2),安装步骤具体(2),LICENSE 为完整 MIT(2)。但无 CHANGELOG,版本仅见 package.json 0.2.12(1);命名稳定性因存在 allowed 遗留字段与 disposition 并存,存在演进痕迹(1);示例与 FAQ 较少(1);已知限制分散在文档中未集中(1);维护责任仅指向 contributors,未明确(1)。

有效结果6 / 13 · 2.3/5

输出可用性有 compact 状态、Dashboard、六问审计结构,设计良好(2)。但边际价值与成本收益缺乏量化基准结果支撑,benchmark 仅见脚本与 fixture,无结果数据,给 1。

证据核验4 / 8 · 2.5/5

声明可追溯到文档与代码结构,但缺少结果数据与外部佐证(1);跨源佐证仅限仓库内自述(1);事实与推断分离较好,文档明确区分 claim 与 system verification(2)。

风险与缓解建议
  • 发布者身份未经 FollowAgents 验证,安装 EXE 前应自行核验来源与签名。
  • 依赖仅以 ^ 版本范围声明,未见锁文件或依赖审计证据,供应链风险需自行评估。
  • 仅支持 Windows OpenCode Desktop,其他平台或 CLI 场景不适用。
  • benchmark 仅有脚本与 fixture,未见实际结果数据,效果声明缺乏量化佐证。
  • 缺少 CHANGELOG,版本演进与兼容性变更需从代码推断。
证据充分度:低 评估于 2026年10月29日 审查版本 598767170bb7
查看完整评分方法 →

常见问题

它会不会启动另一个模型或代理进程?
不会。插件运行在 OpenCode Desktop 进程内,由当前选中的 OpenCode 模型调用其工具;仓库明确说明它不启动第二个模型,也不拉起 CLI 进程。
通过的命令能证明代码正确吗?
不能。文档指出通过的命令只是证据而非完整正确性证明,退出码无法验证业务语义;遇到 human-review 时应查看 actionSummary.evidence 中缺少的具体证据。
它需要联网或额外的 API Key 吗?
默认离线工作,不抓取远程 Context 源、不调用第二个模型。远程源或反馈传输必须显式启用,模型调用成本由你使用的 OpenCode 模型决定。
我能否只把它当命令行工具集成到 CI?
仓库保留了 CLI 与 MCP 入口用于源码开发、CI、诊断与兼容集成,但它们不是常规安装路径,也不被普通用户安装流程所需要。
这些 .agent-context/ 产物要提交到仓库吗?
通常不提交。文档把 traces、runs、loops、cache、context-registry 与 interventions 都描述为本地运行产物,贡献指南也要求在提交时排除它们。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents