OpenCode 知识库Busabase × OpenCode

OpenCode 知识库

OpenCode 可以合并组织、用户、项目与 managed config,加载 AGENTS.md 和 instruction files,委派 primary agents 与 subagents,并调用本地或远程 MCP tools。这些层解释执行方式,但不会让 session summary 自动成为 canonical。

Session 结果提议权限与证据已附上
Busabase 正在审核 OpenCode session output
Config precedence 说明 Agent 能做什么;review 决定其他人能信什么。

配置优先级

记录 OpenCode Agent 权限前,先解析实际生效的 config。

OpenCode 合并 remote organization defaults、global config、custom paths、project config、`.opencode` directories、inline content 与 managed settings。保留解析后的输入和 repository revision,不要拿某一个文件代表整个 runtime。

REMOTE

来自 .well-known 的组织默认值

GLOBAL

用户偏好与 runtime defaults

PROJECT

仓库专属 config 与 files

MANAGED

管理员强制的最高优先级 policy

Rules 与 instructions

AGENTS.md 管行为,instruction references 不能变成事实仓库。

OpenCode 加载项目与全局 AGENTS.md,支持 Claude-compatible fallback,也能通过 instructions array 引用本地文件或远程 URL。团队指导随仓库提交,个人偏好留在 global,变化事实从 owner 查询。

DURABLE INSTRUCTION

修改该 package 后运行 focused tests。

STALE FACT SNAPSHOT

客户审批已完成,production 正常。

Agent topology

Primary agents、subagents 与 hidden system agents 形成不同证据链。

Build 与 Plan 是 primary agents;General、Explore、Scout 是 subagents;compaction、title、summary agents 处理隐藏支持任务。记录谁执行、谁委派,以及哪套 tool permissions 生效。

Agent role典型权限需要保留的证据
Build写入与执行Diffs、commands、tests
Plan受限写入的分析Plan 与引用仓库上下文
General委派多步骤工作Task boundary 与返回工件
Explore / Scout只读发现检查过的 files 或外部来源
Hidden system agents上下文支持必要时保留 summary provenance

Permission resolution

Allow、ask、deny 决定 tool 能否运行,不会批准最终记录。

Permissions 可以是 global、pattern-based、agent-specific;最后匹配规则生效。Auto mode 会改变 ask,但不会覆盖 explicit deny。对重要动作保留实际解析规则。

POLICY

匹配的 allow / ask / deny

USER DECISION

必要时用户批准

TOOL RESULT

动作与响应被记录

VERIFICATION

Diff、test 或外部回读

RECORD REVIEW

负责人接受共享状态

Skills 与 MCP

Skills 提供流程,MCP 提供外部 tools;两者都不应暗中拥有当前业务状态。

Skills 从 project、global 与兼容 Agent 目录按需加载。MCP servers 可以是 local/remote、使用 OAuth,并按 global 或 agent 控制。Skill 内容与 MCP identity 要分别固定。

SKILL

Procedure、templates、scripts、checklists

MCP SERVER

Tools、resources、authorization、runtime response

REVIEWED RECORD

已接受结果、owner、lifecycle

Sessions 与 sharing

共享 OpenCode conversation 是协作上下文,不是持久 system of record。

Session link 暴露对话和输出,可作为 provenance;长期记录只提升一条精简结果,并附 source refs、准确 repository revision、verification 与负责人决定。

01 · SESSION

Prompts、agents、tools、summaries

02 · OUTPUT

Files、diffs、commands、responses

03 · VERIFY

Tests 与外部回读

04 · PROPOSE

一项有边界的状态变化

05 · REVIEW

接受后才 canonical

运行证据

不复制整段 conversation,也能重建实际 runtime。

精简 evidence bundle 应包含 config layers、instructions、agent topology、permissions、Skills、MCP calls、repository state 与 validation。

config_digest解析后的 config 与 precedence
instruction_refsAGENTS.md 与额外 instructions
agent_tracePrimary 与 delegated agents
permission_trace重要 tools 的实际规则
tool_evidenceBuilt-in 与 MCP responses
repository_refCommit、worktree、diff
verificationTests 与外部检查
Busabase 正在保存 OpenCode runtime evidence

已审核结果

提升 decision-sized result,不搬运 config files 或 session transcript。

OpenCode session 被 compact、分享或删除后,这条记录仍应可理解。

outcome_key结果的稳定身份
session_refOpenCode session 与 agent trace
config_refResolved config digest
source_refsCode、docs、外部 records
proposed_state精简结果解释
owner接受责任人
decision接受、有条件接受、拒绝、已替代
next_review_at时效检查点

实际问题

OpenCode 知识库常见问题

Busabase 会取代 AGENTS.md 吗?

不会。AGENTS.md 指导 OpenCode 行为;Busabase 保存少量已审核结果。

证据应该引用哪个 config file?

引用解析后的 config 与相关 source layers,不只引用 project file。

Auto mode 会绕过 deny 吗?

当前文档明确说明 explicit deny 仍然生效。

Subagent 可以批准自己的结果吗?

Tool permission 可以让它执行,record acceptance 仍由 owner 决定。

Shared session link 可以作为 canonical evidence 吗?

可以作为 provenance,但还要有能跨越链接和 retention 变化的仓库与外部验证。

从一套 resolved runtime 开始

记录 OpenCode 怎样行动,只审核其他团队需要的状态。

选择一个完成的 OpenCode session,解析 config 与 permissions,附上验证,然后提交一条 outcome,不提交整段 transcript。