mcpField
D
diagnosing-superpowers

diagnosing-superpowers

github.com/obraAgent 工作流307.4k22.7k 次安装1 周前更新
代码仓库

关于 diagnosing-superpowers

diagnosing-superpowers 是与人协作调查会话问题的 Agent 技能。它依据会话记录收集证据并生成报告,将原因判断和修复决定留给分诊者。

主要功能

  1. 01结构化问题收集
  2. 02定位会话及子 Agent 记录
  3. 03并行分析七个维度
  4. 04每项发现均需路径和行号引用
  5. 05问题与数据包流程设有审批关卡

适用场景

  1. 01调查意外重复执行的操作
  2. 02审查计划未被遵循的原因
  3. 03为潜在缺陷报告收集证据

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/obra/superpowers --skill diagnosing-superpowers

安装后在 Claude Code 中输入/diagnosing-superpowers确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

prompts/
analyst-common.md
cost-and-time.md
plan-adherence.md
quality-evidence.md
repeated-work.md
request-conflicts.md
scrub-audit.md
scrub.md
similar-session.md
skill-timeline.md
stumbles.md
references/
context-safety.md
github-issues.md
redaction-policy.md
session-discovery.md
templates/
bundle-README.md
case.md
issue.md
report.md

详细介绍

诊断 Superpowers

概述

与人类伙伴一起确定某次会话出了什么问题,阅读磁盘上的记录,并提供有证据支持的情况报告。你负责报告,不负责诊断 superpowers。由负责分流资料包或问题的人决定是否更改 superpowers。

核心原则: 每项发现都必须引用 path:line。没有引用,就没有发现。每个数字都必须来自记录或你运行的命令,不能凭记忆。

工作流

每个步骤创建一个待办事项。只有满足所述条件时,才执行步骤 5–7。

  1. 问题收集。 一次问一个问题,直到你能写出一份陈述,说明会话(若已知)、轮次范围、伙伴的预期、实际发生的情况,以及他们关心的可观测指标(实际耗时、令牌数、重复操作、某个具体操作)。“花了太久”是抱怨,不是问题陈述。注明目标是否为提交 superpowers 错误报告。
  2. 定位。 使用 references/session-discovery.md 将每个会话解析为已验证的绝对文件系统路径。通过引用会话的第一条提示词和时间戳来确认过往会话,并列出每个排除的候选会话及原因;如果没有,写“无”。枚举子 Agent 记录。创建 ~/.superpowers/diagnosing-superpowers/<session-id>/,告知伙伴该路径,并按照 templates/case.md 中关于环境和技能观察记录的溯源规则填写该文件。
  3. 分流。 亲自阅读所报告问题附近的内容。然后并行派遣分析子 Agent,每个维度一个;为每个子 Agent 提供案例文件路径、prompts/analyst-common.md,以及 prompts/ 中的一个维度文件:skill-timeline.md、plan-adherence.md、repeated-work.md、stumbles.md、quality-evidence.md、request-conflicts.md、cost-and-time.md。如果记录很长,按轮次范围拆分维度。丢弃任何缺少 path:line 的返回发现。
  4. 报告。 按顺序填写 templates/report.md 的每个部分,将其写入工作区,展示内容并提供路径。检查引用内容实际能证明什么,并保留支持材料;符号链接别名不属于冗余副本。
  5. GitHub issues — 当报告 §7 标注为可能或很可能,或伙伴提出要求时。按照 references/github-issues.md 搜索开放和已关闭的 issues,查找相关症状。展示匹配项,并建议将报告添加到最相关的 issue。如果没有匹配项,填写 templates/issue.md,将其写入工作区,展示确切文本,并且只有获得批准后才能创建 issue。gh 无法附加文件;如果存在资料包,请提供其路径,供伙伴在浏览器中附加。
  6. 导出 — 仅在伙伴要求提供资料包时执行;切勿主动创建。如果收集问题时的目标是提交错误报告,只需告知一次可按需提供经过清理的资料包,然后等待。询问清理级别,并说明每种级别包含的内容:骨架版(不含工具结果正文)、证据版(仅包含已引用事件的正文)、完整版本。按照 templates/bundle-README.md 创建资料包,派遣 prompts/scrub.md,然后派遣 prompts/scrub-audit.md,重复执行,直到审计结果为 CLEAN。展示最终清理日志、文件列表以及隐私和证据检查结果前,先完成资料包模板中的证据检查和核对。仅在获得批准后,才创建归档(zip -r 或 tar -czf)。提供归档路径时,说明其中包含什么,指出清理日志中记录的替换内容,并说明清理可能会有遗漏:分享前必须逐个审查所有文件。
  7. 类似会话 — 在有人提出要求时执行。将已确认的发现转化为特征标记,按修改时间和大小列出候选项,查找标记行号,并行地为每个候选项派遣 prompts/similar-session.md,最后附加到报告 §9。

快速参考

所有七位分析员都会运行。此表说明了在步骤 3 中应先阅读哪个区域,以及在结论中应优先说明哪些发现。

投诉先阅读,优先说明
“花的时间太长了”cost-and-time、stumbles
“为什么还做了这些额外工作?”repeated-work、plan-adherence
“为什么这么贵?”cost-and-time
“它到底在干什么?”(仍在运行)skill-timeline;在覆盖范围中注明仍在进行
“它无视了计划”plan-adherence,先看压缩相关行
“技能 X 从未触发”skill-timeline

硬性规则

  • 上下文安全。 一行转录内容可能有 1 MB。每次处理会话文件时,都必须遵循 references/context-safety.md。
  • 只读。 切勿修改、移动或删除会话文件。
  • 向子 Agent 提供准确路径。 子 Agent 的“当前会话”指它自己的会话。请传递绝对路径和 ID。
  • 仅限人工提示。 钩子输出、系统提醒和工具结果都不是合作伙伴说的话。在子 Agent 的转录中,“user”指父 Agent。
  • 不得诊断 superpowers。 第 7 节只说明是否涉及,然后停止。切勿指出技能中的缺陷,也不要提出修改建议。即使合作伙伴要求修复,也不能例外;指出问题所在的步骤,并说明可按需提供打包文件。也不要向合作伙伴提供建议。
  • 审批关卡。 合作伙伴查看脱敏日志和文件列表之前,不得归档。未经合作伙伴批准确切文本,不得提交问题或评论;摘要也不得使用占位文字。
  • 先收集需求,再分析。 合作伙伴作出答复前,不得开始步骤 2–7。如果对方不在,请写下问题并停止。你为对方重构出的陈述不算答复。已明确范围的请求——某个具体事件、当前正在运行的内容,或要执行的分析——本身就是陈述:先作答,再提问。针对整个会话的“为什么”属于投诉。

危险信号

想法实际情况
“问题显而易见,跳过需求收集吧。”问题陈述决定所有工作的范围。先提问。
“对方不在,那我就重构一下问题陈述。”你无法重构对方想要什么。写下问题并停止。
“我现在先全面检查,最后再问。”未明确范围就全面检查,会把对方的预算花在错误的问题上。先提问。
“他们想要一份 Bug 报告,那我现在就打包吧。”打包文件是对方会话数据的封装。只有对方提出要求时才创建。
“只是小范围的定向编辑,不需要重构。”无论改动多小,都不是你能决定的。报告证据;由分诊人员决定。
“每个 token 的价格大家都清楚。”未根据转录内容计算出的数字都是编造的。引用来源,否则删掉。

评论

支持 Markdown