Files
reverse-skills-max/vendor-new/rev-skills/docs/superpowers/specs/2026-08-18-re-feedback-gateway-design.md

4.9 KiB
Raw Blame History

re-feedback 网关设计(2026-08-18)

背景与问题

aiHK/re-skills 是 88 个逆向工程技能库(1 入口 re-analyze + 11 大类网关 + 76 原子技能),公开发布(npm + 插件市场)。

现有经验流:wxsource.mjs 抓看雪/微信文章 → 手动蒸馏成「坑」条目 → 就近写入对应技能 SKILL.md → commit(如「经验: 第八轮扫描入库4篇」)。

缺失能力:

  • 实战分析会话的经验回馈通道(分析完踩的坑没有沉淀路径)
  • 用户手动投喂经验的入口
  • 统一的呈现与隐私规范

目标

新建第 12 个网关技能 re-feedback(元网关——管理技能库自身的经验,不分析 RE 目标),实现:

  1. 收集:三源归一——分析会话复盘 / 文章扫描蒸馏(wxsource.mjs)/ 用户手动输入
  2. 蒸馏:按「坑」格式产出条目,并强制脱敏
  3. 归域:条目映射到具体技能
  4. 三档处理(中性呈现,用户自决):① 发表 issue ② 本地入库 ③ 不入库
  5. 钩子:re-analyze 流程末尾加「可选经验复盘」步骤

设计原则(两条红线)

呈现中性原则

  • 呈现选项/方案时禁止「最推荐」「强烈建议」等最高级/强推措辞,推荐最多到「推荐」级
  • 选项不带推荐标注,只中性列出选项与适用场景,用户凭内容自决
  • 类比:视频加背景音乐,画面情绪被音乐带走——强推措辞会绑架用户判断,不允许

隐私脱敏原则

  • 蒸馏产物不允许具体到某一个项目(公司/产品/目标样本名),暗示也不行(可推断身份的行业+规模+地域组合、专有协议名、内部代号、独特技术特征组合一律禁止)
  • 目标泛化为通用描述(「某移动应用」「某嵌入式设备」「某通信协议」),条目只留技术结论(现象/原因/对策)
  • 来源字段:实战会话 → 只写「实战分析会话」+ 时间(如 2026-08 实战会话);文章扫描 → 可保留公开文章标题/URL
  • 本地入库同样受约束:技能库公开发布(npm + 插件市场),本地即公开
  • 入库/发 issue 前做脱敏自检:列出条目中所有专有名词逐项确认已泛化;任一不通过则回炉重蒸

目录结构

.claude/skills/re-feedback/
├── SKILL.md                  # 网关:完整工作流 + 选择树 + 常见坑
└── references/
    ├── intake.md             # 蒸馏方法论:坑条目格式、脱敏规则、归域决策表、去重规则
    └── issue-template.md     # issue 正文模板(gh 提交与草稿共用)
  • 每技能新增 references/experience.md(经验全集,条目带来源与日期;无 references 目录的技能新建)
  • 各技能 SKILL.md「常见坑与陷阱」:保留精选 + 追加链接到本技能 experience.md
  • re-analyze/SKILL.md:第三步编排后加「第四步(可选):经验复盘」→ 调用 re-feedback

工作流(5 步)

  1. 收集:三源归一——会话复盘摘要 / 文章 URL 或文本(可走 wxsource.mjs 抓取)/ 手动输入
  2. 蒸馏:每条按坑格式 **标题**:现象——…;原因——…;对策——…;「坑」(避坑)与「方法」(方法论)统一格式;同步脱敏(见隐私脱敏原则)
  3. 归域:主题 → 技能映射(决策表 + grep 技能库兜底 + 不确定时问用户,不猜)
  4. 三档处理(中性呈现,不带推荐标注):
    • ① 发表 issue:探测 gh(which gh + gh auth status + 仓库可达)→ 可用则 gh issue create --repo DslsDZC/aihk --label 经验,标题「经验: <技能>: <一句话>」,正文按 issue-template.md(技能名/现象/原因/对策/来源);不可用 → 输出 markdown 草稿供手动提交
    • ② 本地入库:grep 去重 → 追加到该技能 references/experience.md(含来源+日期)→ SKILL.md 精选同步或加链接 → npm test 校验
    • ③ 不入库:确认后结束
  5. (文章扫描路径可选)commit:「经验: 第N轮扫描入库X篇——<篇目>」,message 列出每技能新增条目

错误处理

情况 处理
gh 未装/未登录/仓库不可达 降级为草稿输出
gh 报 label「经验」不存在 去掉 --label 重试,或提示用户先创建 label
归域不确定 问用户,不猜
条目重复 跳过并告知
npm test 失败 修复格式后再入库
脱敏自检不通过 回炉重蒸,不入库/不发 issue

校验与测试

  • validate.mjs 自动覆盖新技能:frontmatter(name=目录名、description、type: gateway)、链接 完整性(re-feedback 目录存在后 re-feedback 链接即合法)
  • type: gateway 豁免「工具准备」章节校验
  • 手工验证:npm test 全绿 + 用一条样本经验走通三档处理