loop-engineering 实战:用 issue-triage Skill 搭建只读的 Issue 队列健康巡检循环
发布时间:2026/9/24 23:40:19来源:尧图网络
人工智能AI AgentAgent 工作流CLI研发协作AI 技能MCP 服务【免费下载链接】loop-engineeringPractical patterns, starters CLI tools for loop engineering with AI coding agents. Design systems that prompt and orchestrate agents (inspired by Addy Osmani and Boris Cherny). Includes loop-audit, loop-init, loop-cost.项目地址https://gitcode.com/gh_mirrors/lo/loop-engineering点击查看免费下载导读本文围绕 loop-engineering 仓库中的issue-triage技能Skill展开讲解如何让 AI 编码代理以“报告优先、提案优先”的低风险方式持续扫描 GitHub Issue 与 Discussion完成去重、分级P0–P3与标签建议并把结果滚动写入issue-triage-state.md让人类和 Daily Triage 循环始终知道 backlog 里“最该处理的 Top 5”。读完本文你将掌握该 Skill 的输入输出契约、评分模型、L1/L2 分级权限边界以及如何与 verifier、Daily Triage 配对形成一条可长期无人值守的队列健康流水线。一、Skill 定位Issue 队列健康代理issue-triageSkill 的完整定义位于 starters/issue-triage/.codex/skills/issue-triage/SKILL.md它在templates/SKILL.md.issue-triage中也有同名模板可供拷贝。SKILL.md 的 frontmatter 明确了它的身份与边界--- name: issue-triage description: Scan open issues and discussions. Dedupe, prioritize, and propose labels. Updates issue-triage-state.md. L1 propose-only — never auto-label or close. user_invocable: true ---三个关键信息职责扫描开放的 Issue 与 Discussion做去重dedupe、分级prioritize、标签提案propose labels产物更新issue-triage-state.md状态文件硬性约束默认处于L1 提案模式绝不自动打标签、绝不自动关单。Skill 正文用一句话定义了它的角色“You are an issue queue health agent”——保持 backlog 清晰可读让人类和其他 loop 永远知道当前 Top 5 的可执行事项。这正是它在整个 loop-engineering 体系中的定位一个低风险、高杠杆的“队列健康巡检员”其完整模式文档见 patterns/issue-triage.md。二、输入与信号源SKILL.md 明确列出了 Skill 的三类输入开放的 GitHub Issue 与 Discussion若配置了 MCP也可读取 Linear / Jira上一次运行产出的issue-triage-state.md——它既是历史状态也是本次运行的起点信号Signalsage存活天数、author提交者、labels已有标签、comments评论数、reactions表情反应、linked PRs关联 PR、milestone里程碑。这些信号直接决定了后续的评分逻辑。需要特别说明的是信号采集方式仓库在 examples/grok/issue-triage.md 中补充说明可以启用GitHub MCP 只读模式做 Issue 发现与关联 PR 信号采集在循环被信任之前MCP 权限应限定为读取 提案read propose这与 L1 只读原则保持一致。三、输出契约issue-triage-state.md的标准结构SKILL.md 给出了输出状态文件的规范模板这是整个循环的记忆脊柱必须逐节继承# Issue Triage State Last run: ISO timestamp Open actionable: N (was M) New since last run: K Needs human: H ## Top 5 (by loop score) - #NNN (p1, 2d old) — one-line summary — suggested: label1, label2 ## Proposed Labels (not applied in L1) - #NNN: label-a, label-b ## Possible Duplicates (human confirm) - #NNN — possible duplicate of #MMM ## Noise / Ignored - brief list字段含义与使用要点Last runISO 时间戳用于跨轮次对比增量Open actionable当前可执行事项总数(was M)记录上一轮数值形成趋势感知New since last run本轮新增数量Needs human需要人工介入的数量这是告警疲劳的闸门——只有这个切片才通知人类Top 5 (by loop score)按循环评分排序的 Top 5每行包含 issue 编号、优先级、存活天数、一句话摘要和建议标签Proposed Labels提案标签区明确标注L1 不应用Possible Duplicates疑似重复标注human confirm人工确认Noise / Ignored本轮忽略的噪音项简短列出即可。仓库提供了可直接落地的初始模板 starters/issue-triage/issue-triage-state.md.example其内容在 SKILL 模板基础上额外补充了两个关键区块## Allowlisted labels (L2 only) area:*, needs-repro, needs-info ## Denylist (always human) auth, payments, security, public-api, breaking-change也就是说状态文件不仅是输出本身还承载了白名单/黑名单策略的持久化让每次运行都能读到上轮确立的权限边界。从 patterns/issue-triage.md 可以看到该文件的真实运行形态# Issue Triage State Last run: 2026-06-09 09:15 UTC Open actionable: 14 (was 17) New since last run: 3 Needs human: 2 (one potential duplicate of #412, one unclear spec) ## Top 5 (by loop score) - #487 (bug, p1, 2d old) — Crash on export with large files — suggested: bug needs-repro area:export模式文档还强调了一个维护原则每次运行都要从状态文件中剪除已关闭/已合并的条目只保留需要关注的事项避免状态文件无限膨胀。四、评分模型P0–P3 分级表SKILL.md 的核心分级逻辑是一张信号映射表它把原始信号翻译成优先级PrioritySignalsP0Security, prod breakage, data lossP1High impact clear repro or customer painP2Valid feature/bug, not urgentP3Nice-to-have, docs, polishneeds-infoUnclear spec, missing reproduplicate?Title/body overlap with existing issue逐级解读P0最高安全漏洞、生产故障、数据丢失——这类条目在 L1 阶段也必须立即浮出水面但分级动作本身仍只是提案落到状态文件由人处理P1高影响且有清晰复现路径或明确客户痛点P2有效但非紧急的功能缺陷或需求P3锦上添花、文档、打磨类needs-info规格不清、缺少复现步骤——这是 Skill 对信息不完整的标准响应避免把模糊请求误判为高优任务duplicate?标题/正文与既有 issue 高度重叠——注意这里带着问号体现保守去重的立场。patterns/issue-triage.md 给出了一个完整的典型循环周期可以看作是评分模型的执行流程发现自上次运行以来新增/更新的 Issue 与 Discussion首次运行则扫描全部开放项对每条总结意图、检测重复标题 嵌入提示或简单文本匹配、采集信号age、author、linked PRs、reactions、现有标签评分归类P0 / P1 / P2 / P3 / needs-info / duplicate将干净的优先级列表 建议标签集 一句为什么重要写入状态文件verifier或人类只审查 needs human 桶和敏感区域的标签变更提案记录本次运行、剪除已解决项、更新计数。五、规则体系L1 提案优先分级放权SKILL.md 的 Rules 节是整个 Skill 的安全内核逐条继承并展开如下L1第一周只提案标签和优先级绝不应用标签、绝不评论、绝不关闭。这是零风险入场的设计——即使 Skill 判断失误也不会对仓库产生任何副作用升级到 needs human 的触发面auth认证、payments支付、security安全、public API、billing计费、infra基础设施——只要触及这些领域一律进入人工桶重复匹配保持保守只输出 possible duplicate of #NNN绝不自动关闭。这与duplicate?分级中的问号一脉相承每次运行剪除已关闭 issue保持状态文件精简保持简洁繁忙仓库可能每 2 小时运行一次输出必须紧凑可读。这些规则在 starters/issue-triage/LOOP.md 中被进一步落实为**人工闸门Human Gates**清单P0 / P1 的指派——前几周仅限人工认证、支付、安全、公共 API——永远升级到人工重复 issue 的关闭——人工确认陈旧 issue 的关闭——人工确认。同时 LOOP.md 给出了预算约束每次运行最多派生 1 个子代理仅用于 L2 带 verifier 的标签应用相关预算细节见 loop-budget.md。六、允许名单AllowlistL2 的边界SKILL.md 明确规定了 L2第二周之后可自动应用的标签白名单area:*,needs-repro,needs-info— never auto-applyP0,P1,breaking-change, orsecurity即即使升到 L2也绝不自动应用P0、P1、breaking-change、security这类高敏感标签。L2 自动打标必须经过 verifier 通过之后才能执行。verifier 的角色在 starters/issue-triage/.codex/agents/verifier.toml 中有完整定义它采用maker/checker实现者/检查者分离的默认立场——REJECT until proven otherwise除非被证明通过否则一律拒绝。其检查清单包括Scope只改相关文件不触碰黑名单路径Intent是否对准既定目标Tests检查者亲自运行测试并报告 pass/fail 及输出No cheating不允许禁用测试或跳过断言Risk即使测试通过中等以上风险也要建议人工复审。输出裁决为APPROVE | REJECT | ESCALATE_HUMAN三者之一推理强度设为high。对应地仓库还提供了loop-verifier技能skills/loop-verifier/SKILL.md作为轻量检查手段。patterns/issue-triage.md 的验证策略与之呼应L1 阶段循环从不自动打标或关单L2 阶段在 verifier 通过后仅应用白名单标签P0/P1 指派在前几周始终由人掌控凡触及认证、支付、安全或公共 API 的事项一律人工负责。七、与 Daily Triage 配对队列喂食器SKILL.md 末尾专门讲了配对方式Daily Triage reads this file and merges Top 5 intoSTATE.mdHigh Priority. Do not duplicate full issue bodies in STATE.md — reference issue numbers only.即Issue Triage 是 Daily Triage 的喂食器feeder。Issue Triage 以更频繁的节奏2h–1d产出干净的队列Daily Triage1d读取issue-triage-state.md并把 Top 5 合并进STATE.md的 High Priority 区。关键约定是不要把 issue 完整正文复制进 STATE.md只引用 issue 编号避免状态文件冗余。这一分工在 starters/issue-triage/README.md 中被描述为低风险的 issue 队列喂食器而 Daily Triage 模式的完整定义见 patterns/daily-triage.md。多循环协调的整体视角可参考 docs/multi-loop.md。八、落地运行快速开始与提示词starters/issue-triage/README.md 提供了三种工具的脚手架命令# Grok npx cobusgreyling/loop-init . --pattern issue-triage --tool grok # Claude Code npx cobusgreyling/loop-init . --pattern issue-triage --tool claude # Codex npx cobusgreyling/loop-init . --pattern issue-triage --tool codex启动提示词Grok第一周/loop 2h Run issue-triage. Read issue-triage-state.md first. Update Top 5 and proposed labels. No auto-apply. Escalate security and ambiguous items.其中--tool参数决定脚手架生成哪套工具适配层。以 Codex 为例本文主体所在的技能文件即位于starters/issue-triage/.codex/skills/issue-triage/SKILL.md同一 starter 还包含.claude/agents/loop-verifier.mdL2 标签应用检查器等配套文件。examples/grok/issue-triage.md 给出了更完整的周启动提示词/loop 2h Run the issue-triage skill. Read issue-triage-state.md first. Scan open issues and discussions since last run. Update issue-triage-state.md with: - Top 5 prioritized items (P0–P3) with one-sentence summaries - Suggested labels (proposed only — do not apply) - needs human bucket for ambiguous or security-sensitive items Do not auto-label, close, or comment on issues. Escalate duplicates as possible duplicate of #NNN for human confirmation.繁忙仓库可加速节奏/loop 1d Run issue-triage at start and end of day. Report mode only.也可以在examples/github-actions/找到基于issues/discussion事件触发 定时兜底的 GitHub Action 工作流示例。九、进化路径与失败模式进化路径L1 → L2 → 永不无人值守examples/grok/issue-triage.md 给出了清晰的三阶段演进L1第 1–2 周只提案标签与优先级人工手动应用L2第 3 周起verifier 通过后自动应用白名单标签area:*、needs-repro、needs-info永不无人值守涉及认证、支付、安全或公共 API 的 P0/P1 事项——永远由人工处理。失败模式与缓解patterns/issue-triage.md 列出了三种典型失败模式及对策失败模式缓解措施过度优先高噪提交者用团队真正关心的信号加权reactions、linked PRs、内部 1人工覆盖记录在状态文件中重复检测误报保守匹配 L1 阶段始终以 possible duplicate of #NNN 形式提交人工确认每个新 issue 都触发告警疲劳只对 needs human 切片通知人工其余内容全部留在状态文件中供 Daily Triage 或工程师阅读人工交接点任何触及安全、认证、计费或基础设施的 issue不确定的重复检测错误概率 30%循环想以 stale 关闭的超过 N 天的旧 issue须人工确认单次运行出现过多新 issue上下文过载信号。成功度量从 issue 打开到首次有意义标签或 needs info 评论的时间缩短24 小时内获得明确优先级的 issue 占比工程师主观反馈的我总是知道 Top 5 是什么评分从状态文件评审中获得在两个人开始处理同一问题之前被拦截的重复数量。十、安全边界总结回到 starters/issue-triage/README.md 的 Safety 节整个循环的安全设计可以浓缩为两条L1 阶段无任何自动打标或关单动作——所有副作用都被人为延迟黑名单denylistauth、payments、security——详见 docs/safety.md 中的安全约定。结合 starters/issue-triage/issue-triage-state.md.example 中的 Denylistauth, payments, security, public-api, breaking-change可以得到完整的结论这个循环通过报告优先 分级放权 白名单/黑名单双闸门的设计用极低风险换取了持续、可复用的队列健康治理能力。任何团队都可以从 L1 提案模式起步在确认 triage 质量稳定后再逐步开放 L2 的自动打标权限。赞分享人工智能AI AgentAgent 工作流CLI研发协作AI 技能MCP 服务【免费下载链接】loop-engineeringPractical patterns, starters CLI tools for loop engineering with AI coding agents. Design systems that prompt and orchestrate agents (inspired by Addy Osmani and Boris Cherny). Includes loop-audit, loop-init, loop-cost.项目地址https://gitcode.com/gh_mirrors/lo/loop-engineering点击查看免费下载相关推荐Issue Triage 循环实战用 Codex Automation 构建低风险的 Issue 队列健康巡检loop-engineeringIssue Triage 循环实战用 Codex Automation 构建低风险的 Issue 队列健康巡检loop engineering 导读 本文人工智能AI AgentAgent 工作流CLI研发协作AI 技能MCP 服务K线接下来会走成什么样Kronos 股票预测完整指南K线接下来会走成什么样Kronos 股票预测完整指南 打开一张K线图开盘、收盘、最高、最低、成交量五个维度叠在一起还混着各种噪声让通用模型一口气吞下多人工智能AI AgentAgent 工作流CLI研发协作AI 技能MCP 服务Sunshine 游戏串流搭建指南从硬件检查到 Moonlight 配对Sunshine 游戏串流搭建指南从硬件检查到 Moonlight 配对 Sunshine 游戏串流简单说就是一台跑在你 PC 上的自托管串流服务器用显人工智能AI AgentAgent 工作流CLI研发协作AI 技能MCP 服务上一篇如何快速找出Windows热键冲突的罪魁祸首Hotkey Detective完整指南下一篇如何实现 ReMe Token 用量统计与成本监控token_usage 组件完整实战指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网