SuperAPI AI 工具集

trace

写作与研究

查看项目

更新于 10-15 14:48

技能介绍

用途

Trace 是一个用于追溯设计决策演变过程的技能。它的目标是回答以下类型的问题:

  • 某个架构决策是如何一步步演变而来的(HOW)
  • 某个概念是在什么时候被引入的(WHEN)
  • 某个设计为什么采用某种方式(WHY)
  • 为设计决策构建完整的来源链(provenance chain)

注意:如果需要追溯的是知识产物(learnings、patterns、tiers)的血统来源,应改用 $curate --mode=provenance,而不是本技能。

主要能力

  • 多源并行检索:同时从 CASS 会话、交接文档、git 记录、研究产物四个来源搜索相关信息
  • 目标类型分类:根据输入判断是文件路径、git 引用还是概念关键词,并选择对应的追溯路径
  • 时间线构建:将各来源结果合并为按时间排序(最早在前)的单一时间线,并对同日/同会话事件去重
  • 关键决策提取:对时间线中的每个事件识别“改变了什么”“为什么”“谁”“证据链接”
  • 报告输出:生成带来源引用的追溯报告,写入 .agents/research/YYYY-MM-DD-trace-<concept-slug>.md

使用方式

基本调用形式为 /trace <concept>,例如:

  • /trace "three-level architecture"(追溯一个设计决策)
  • /trace "Chiron"(追溯一个角色/概念)
  • /trace "brownian ratchet"(追溯一个模式)
  • /trace "parallel wave execution"(追溯一个功能)
  • /trace abc1234(从 git 提交追溯)

执行流程:

  1. 分类目标类型:若目标是文件路径(含 "/" 或 "."),改用 $curate --mode=provenance;若目标是 git 引用(sha、分支、标签),走基于 git 的追溯;否则按概念走设计决策追溯。
  2. 设计决策追溯:启动 4 个并行搜索代理(CASS、Handoff、Git、Research),等待全部完成。代理使用 Task(subagent_type="Explore"),在 OpenCode 中映射为 task(subagent_type="explore")。
  3. 构建时间线:合并所有来源结果,按时间排序,去重,每条主张都需附来源引用。
  4. 提取关键决策:识别变化内容、原因、相关方、证据链接。
  5. 撰写追溯报告:写入 .agents/research/YYYY-MM-DD-trace-<concept-slug>.md。
  6. 向用户汇报:说明追溯成功、演变时间线(关键日期)、最重要的决策、报告位置、可继续探索的相关概念。

CLI 依赖:cass(会话搜索)。若 cass 不可用,则跳过会话记录搜索,仅依赖 git log、交接文档和 .agents/ 产物进行追溯。

适用场景

  • 追溯某个架构决策的完整演变过程
  • 查找某个概念首次被引入的时间点
  • 理解某项设计背后的原因
  • 为设计决策建立来源链
  • 从某个 git 提交出发,还原其上下文与相关设计背景

限制与边界情况

  • CASS 无结果:可能是会话搜索未安装或查询过于具体;可检查 which cass,缺失时跳过 CASS,改用交接文档/git/研究产物,并尝试更宽泛的查询词。
  • 时间线存在缺口:并非所有决策都有可检索的记录;应在报告中标注缺口,并建议访谈团队成员或查阅 Slack/邮件归档。
  • 结果过多(超过 50 条匹配):概念过于宽泛或词频过高;可缩小查询范围或按日期过滤,并向用户询问更具体的追溯方向。
  • 报告为空(所有来源均失败):概念可能确实无记录或拼写有误;应核对拼写、尝试同义词,并向用户说明“未找到有记录的历史,这可能是新概念或需要更换搜索词”。
  • 通用原则:继续使用剩余可用来源,并在报告中注明缺口。

关键规则

  • 搜索所有来源:CASS、交接文档、git、研究产物
  • 构建时间线:以按时间顺序的演变为目标
  • 引用证据:每条主张都需要来源
  • 优雅处理缺口:并非所有概念都存在于所有来源中
  • 必须产出报告:追溯必须生成 .agents/research/ 下的产物

与产物血统追溯的关系

  • $curate --mode=provenance:用于产物血统,输入为文件路径,输出为层级/晋升历史,适合回答“这个 learning 从哪来?”
  • /trace:用于设计决策,输入为概念/关键词,输出为演变时间线,适合回答“我们是如何决定这个架构的?”

参考文档

  • references/trace.feature — 可执行规范:目标类型路由、多源并行搜索、带引用的时间线、关键决策提取、报告与缺口处理
  • references/discovery-patterns.md — 搜索代理定义与基于 git 的追溯命令
  • references/report-template.md — 追溯报告格式与去重规则
  • references/edge-cases.md — 空/模糊来源的处理方式