尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

OpenChamber 从已验证 Issue 到最小修复:/bug-work 命令驱动的 Bug 工作流全解析

OpenChamber 从已验证 Issue 到最小修复:/bug-work 命令驱动的 Bug 工作流全解析 OpenChamber 从已验证 Issue 到最小修复/bug-work 命令驱动的 Bug 工作流全解析【免费下载链接】openchamberAgentic Development Environment based on OpenCode AI agent项目地址: https://gitcode.com/gh_mirrors/op/openchamberOpenChamber 是一个基于 OpenCode AI Agent 的 Agentic 开发环境为 OpenCode 提供共享的 Web、桌面、VS Code、托管移动端与原生移动端 UI。在其 Agent 体系中.opencode/commands/bug-work.md定义了一条完整的「从已验证 Bug 到提交修复」的命令级工作流维护者无需触碰 GitHub UI即可让 Agent 挑选带root-cause:found标签的真实 Bug、核实机制是否仍然存在、按 AGENTS.md 的指令顺序实施最小修复与回归测试并通过fixes #N关闭 Issue。读完本文你将掌握这条工作流六个阶段的每个命令、每个决策依据以及它们与AGENTS.md、项目 Skills 和其余命令之间的协作关系。1. 命令定位一条对话式的 Bug 修复启动器bug-work是.opencode/commands/目录下的一个 OpenCode 命令文件.opencode/commands/bug-work.md其 frontmatter 声明description: Pick verified bugs and fix them — шо в нас по ерорам? starterdescription是命令的元信息供 Agent 与维护者在候选命令菜单中识别用途шо в нас по ерорам?是乌克兰语口语意为咱们这边有什么 Bug对应命令的英文描述 Pick verified bugs and fix them——它的定位就是从已验证的 Bug 中挑选并修复的会话起点。命令支持可选的聚焦参数Focus, if any: $ARGUMENTS。维护者可以在调用命令时传入关注点某个功能区域、某个平台、或来点小的后续候选排序会参考该聚焦。文件开头有一句关键的执行原则Run this as a conversation, not a report即命令的产出不是一份报告而是一段与维护者的协作对话提出候选、等待确认、逐项决策每一步都需要维护者拍板后才继续。该命令与同目录下的姊妹命令feature-work.opencode/commands/feature-work.md从accepted标签挑选已批准功能形成对称一个处理 Bug一个处理功能共享检查在途 PR → 提出候选 → 实施 → 闭环的骨架。命令的聚焦参数同样出现在feature-work中说明$ARGUMENTS是这类工作流命令的通用约定。2. 第一步收集菜单——拉取已验证原因的 Issue工作流从一条gh命令开始gh issue list --state open --label root-cause:found --json number,title,labels,comments这条命令的含义与筛选逻辑--state open只看未关闭的 Issue--label root-cause:found只保留已被标注找到根因的 Issue——即其 intake 评论中引用了带file:line的追踪机制--json number,title,labels,comments输出结构化 JSON便于 Agent 程序化解析 Issue 编号、标题、标签和评论。root-cause:found标签的语义来自 intake 环节。.opencode/agent/issue-intake.md.opencode/agent/issue-intake.md定义了 issue-intake Agent 的工作流收到 Issue 后先查重复、查已修复再对 Bug 尝试本地复现并在定位到机制后打上root-cause:found标签。该文件第 38 行明确Cause found: labelroot-cause:found. This asserts a concrete code-level mechanism, not that it is certainly what hit the reporter —confirmed:reporteris added later by a human when the reporter confirms.即root-cause:found断言的是存在一个具体的代码级机制而非确定就是报告人遇到的那个原因后者由人类在报告人确认后追加confirmed:reporter标签。bug-work命令正是以root-cause:found作为菜单的准入条件——候选必须携带可追踪的机制file:line否则不进入修复候选池。这条菜单收集逻辑与feature-work的gh issue list -R openchamber/openchamber --state open --label accepted ...一一对应Bug 的准入标签是root-cause:found功能的准入标签是accepted。3. 第二步检查在途 PR——先让路不重复实现拿到菜单后第二步不是急着挑 Bug而是检查每个候选是否已有在途的修复 PRgh pr list --state open --search N OR error string配合查看 Issue 的 linked PRs即 Issue 页面关联的 PR判断这个 Bug 是否已经有人在修。命令的规则非常明确A candidate with an open PR is dropped from the menu and named as such — the fix belongs to its author; the work is reviewing their PR with thepr-reviewskill, never re-implementing it.有在途 PR 的候选直接从菜单中剔除并如实说明原因修复工作属于 PR 作者Agent 的工作是用pr-reviewskill 评审该 PR而不是另起炉灶重新实现无论候选多诱人重复实现都是被明令禁止的路径。pr-reviewskill 位于 .agents/skills/pr-review/SKILL.md它的职责是以维护者代理的身份审查 PR每次运行必须产出唯一一个结论及其就绪动作结论阶梯verdict ladder为结论含义DECLINE项目不应接受该改动whim、过度工程、不可维护范围、错误前提、缺少产品决策、先写代码后补讨论PUSH-BACK方向正确但剩余工作属于贡献者未闭合报告症状或残留问题只有作者的知识能回答MERGE-THEN-FIX修复闭合了症状残留问题需要贡献者不具备的知识仓库约定、同缺陷的并行路径、运行时对等、已定的产品形态由维护者一方当日内跟进MERGE无残留直接合并并致谢该 skill 还强调产品决策归维护者对新增或改变用户可见功能的 PR只评代码不替维护者决定功能是否被需要。这解释了bug-work中有在途 PR 就让位去评审的设计——评审本身也是一项需要专业技能支撑的工作。4. 第三步提出 3–5 个候选——按严重性排序等待确认过滤掉在途 PR 后Agent 需要提出3–5 个候选每个候选用一行概括三件事用户可见症状user-visible symptom——用户实际遇到什么已追踪的机制traced mechanism, file:line——根因在哪一文件的哪一行大致规模rough size——工作量评估。排序优先级是硬性规则Order by severity: contenteditable="false">【免费下载链接】openchamberAgentic Development Environment based on OpenCode AI agent项目地址: https://gitcode.com/gh_mirrors/op/openchamber创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表