بنقرة واحدة
f2s-kb-distill
从问答过程中提取可复用知识事实并自动入库;根据下钻深度与命中主题判断新增主题或补充既有主题;触发:f2s-kb-distill、问答知识提取、从对话中提取知识
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
从问答过程中提取可复用知识事实并自动入库;根据下钻深度与命中主题判断新增主题或补充既有主题;触发:f2s-kb-distill、问答知识提取、从对话中提取知识
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Accept an explicit capability list or infer from zero input; first output a knowledge-base update outline, then write topics/index/manifest after confirmation; triggers: f2s-kb-sync、全局同步、知识库同步、已实现能力、global sync、sync knowledge base、implemented capability
可显式给出能力或零输入推断;先输出知识库更新大纲,确认后写入 topics/index/manifest;触发:f2s-kb-sync、全局同步、知识库同步、已实现能力
Clarify a PRD or requirement through follow-up questions until it is actionable, then use f2s-req-tech to produce a technical design; triggers: 需求澄清、PRD 澄清、requirement clarification、PRD clarification
Generate a technical design document from clarified requirements using the project knowledge base, Skills, and Rules; triggers: 生成技术方案、技术方案、f2s-req-tech、generate technical design、technical design
针对 PRD/需求反问直到清楚,再可用 f2s-req-tech 出技术方案;触发:需求澄清、PRD 澄清
根据澄清后的需求基于项目知识库/Skills/Rules 生成技术方案文档;触发:生成技术方案、技术方案、f2s-req-tech
| name | f2s-kb-distill |
| description | 从问答过程中提取可复用知识事实并自动入库;根据下钻深度与命中主题判断新增主题或补充既有主题;触发:f2s-kb-distill、问答知识提取、从对话中提取知识 |
执行口径:本技能只维护
.Knowledge,默认不改配置根rules/skills。
subAgent / switchAgentVerification 两字段语义以统一入口为唯一事实源:Cursor/Claude 读配置根 rules/f2s-flow2spec-unified-entry.*;Codex 读 .codex/topics/f2s-flow2spec-unified-entry.md(与上同源,flow2spec init 镜像)。manifest-routing.json 与 .Knowledge/index.md 恒由主 agent 单点落盘。f2s-kb-feedback-closing 规则自动建议,也可用户主动调用f2s-kb-sync 区分:sync 适合批量同步多个能力;distill 专注单次问答的知识提取| 参数 | 必填 | 说明 |
|---|---|---|
| 用户问题 | 自动获取 | 上一轮用户的提问(自动从对话历史提取) |
| agent 回答 | 自动获取 | 上一轮 agent 的回答内容(自动从对话历史提取) |
| 命中主题 | 可选 | 如由 f2s-kb-feedback-closing 触发,会携带命中的 topicId |
| 下钻文件 | 自动分析 | 从回答中提取引用的文件/函数(自动分析) |
无有效问答上下文时中止并提示用户。
f2s-kb-distill 只有一个入口(无 --fast 参数),进入流程第一件事是判挡:
| 维度 | 取值方式 | 走「轻量挡」的条件 |
|---|---|---|
上游 f2s-kb-feedback-closing case | 看本轮 / 上一轮 agent 回答末尾的收口块 | case 2 或 case 3(case 1 / 无收口 → 严格挡) |
| 本轮 Read 业务源码文件数 | agent 回顾本轮自己的工具调用 | ≤ 3 个 |
| 本轮回答引用的函数 / 类名数 | 数回答里反引号包裹的 xxx() / 类名 | ≤ 5 个 |
| 用户追问是否否定上游结论 | 看用户最新输入是否含"不对 / 重新分析 / 那条不准"等 | 否 |
4 项全满足 → 轻量挡:跳过步骤 2.1(量化打分)/ 2.4(既有 topic 描述程度评估)/ 步骤 3(决策矩阵)/ 步骤 4.1 的「读近邻 topic 风格对齐」;直接采上游「本轮将入库:<概要>」做策略与目标 topicId 判定,进入步骤 4 生成内容。
任一不满足 → 严格挡:跑完整 6 步。
业务源码定义:路径不在
.claude//.cursor//.codex//.Knowledge//.task/这 5 个目录下的 Read 才计数;规则文件 / topic / config / 任务清单都不算。
includeAny、必须更新 taskToTopicRules,跳不得;无论哪一挡,步骤 5 路由 / matcher / index 同步与步骤 6 落盘 + 自检都跑完整版——这是入库正确性的硬约束。
flow2spec.config.json(获取 subAgent / switchAgentVerification).codex/topics/f2s-kb-feedback-closing.md(获取"可复用知识事实"定义).codex/topics/f2s-topic-authoring.md(获取 topic 创作准则)从上一轮对话中提取:
f2s-kb-feedback-closing 已分析,提取命中的 topicId;否则根据问题重新路由****轻量挡跳过:本步骤的 2.1 / 2.4 整段跳过;2.2(提取知识事实)必须执行;2.3(本次知识描述深度)改为简短标注(一行写"摘要级 / 详细级 / 实现级"即可,不再多维评估)。
累加以下指标(每项 0-10 分,总分 0-50):
读取文件数:
分段读取次数(同一文件多次读取不同行范围):
函数/类引用数:
代码片段长度:
回答篇幅:
下钻深度分级:
从回答中提取以下类型的知识(参考 f2s-kb-feedback-closing):
提取结果:
评估提取出的知识事实的详细程度(与长度无关,看内容特征):
缓存优先、失败回退 OCR缓存优先:坐标缓存命中时直接使用;失败回退条件:弹窗未消失、坐标超出边界缓存读取:调用 _get_cached_point_in_bounds("chat.input"),返回 None 时回退;失败判定:VisualSearchPopup.find(timeout=0.08) is None如果命中了既有 topic,需要评估它的描述程度(与长度无关):
xxx()、类名、文件路径、参数、代码示例、状态转换逻辑判断示例:
| Topic 内容 | 判定 | 原因 |
|---|---|---|
- 缓存优先、失败回退 OCR- 发送消息动作链判定 | 摘要级 | 只说"做什么",无细节 |
- 缓存优先:坐标缓存命中时直接使用- 失败回退:弹窗未消失时清除缓存并重新 OCR | 详细级 | 有条件说明("当...时") |
- 缓存读取:_get_cached_point_in_bounds("chat.input")- 失败判定:VisualSearchPopup.find(timeout=0.08) is None | 实现级 | 有函数名、参数 |
重要:一个 300+ 行的 topic,如果每条都是"模块 X:负责 YYY",仍然是摘要级;一个 50 行的 topic,如果每条都有"条件判断 + 函数调用",就是实现级。
****轻量挡跳过整段决策矩阵:直接采用上游
f2s-kb-feedback-closing「本轮将入库:<概要>」给出的结论:
- 概要含「补充 / 补到 / 补齐
<topicId>的某段」→ 策略 = 补充既有 topic,目标 topicId = 概要点名的 topic;- 概要含「首次入库」「新增
<能力>」「新增<模块>」→ 策略 = 新增 topic(默认小型 topic;下钻深 + 模块独立时升级为「新增独立模块 topic」由步骤 4.3 内部判断);- 概要含「修正
<topicId>的某条」→ 策略 = 补充既有 topic(覆盖式追加,原表述在生成内容时改写)。
根据以下决策矩阵判断:
| 下钻深度 | 命中主题情况 | 既有 topic 描述程度 | 本次知识描述深度 | 策略 |
|---|---|---|---|---|
| 浅 | 有命中 | 摘要级 | 摘要级 | 补充既有 topic(追加简短说明) |
| 浅 | 有命中 | 摘要级/详细级 | 详细级 | 补充既有 topic(追加详细段落) |
| 浅 | 有命中 | 摘要级 | 实现级 | 新增子主题(既有太简短,本次太详细) |
| 浅 | 无命中 | - | 任意 | 新增 topic(小型 topic) |
| 中 | 有命中 | 摘要级 | 摘要级/详细级 | 补充既有 topic(追加详细段落) |
| 中 | 有命中 | 摘要级 | 实现级 | 新增子主题(差距 ≥ 2 级) |
| 中 | 有命中 | 详细级/实现级 | 详细级/实现级 | 补充既有 topic(级别匹配) |
| 中 | 无命中 | - | 任意 | 新增 topic(中型 topic) |
| 深 | 有命中 | 摘要级 | 任意 | 新增子主题(独立 topic + stock-doc) |
| 深 | 有命中 | 详细级/实现级 | 详细级/实现级 | 补充既有 topic 或 新增子主题(根据语义聚焦度判断) |
| 深 | 无命中 | - | 任意 | 新增独立模块 topic(完整 topic + stock-doc) |
决策关键:
决策输出:
补充既有 topic / 新增子主题 / 新增独立模块 topic创作侧准则:本步骤会触发新增 / 修改 topic 与可能的
topicDependencies,须遵循已读取的f2s-topic-authoring准则。
如果策略是"补充既有 topic":
- 【机制】缓存只用于坐标定位与快速路径;缓存命中不等同于步骤完成
- 【判定】添加好友在缓存点击后仍通过窗口出现、资料页状态、提交后状态分类判断进度
- 【边界】发送消息在按 Enter 后返回成功,当前无 OCR 校验消息气泡或发送状态
如果策略是"新增子主题":
wxautocontrol-architecture → wxautocontrol-completion-detectiontopicDependencies:
子 topic → 父 topic 的依赖边如果策略是"新增独立模块 topic":
<topicId>_终稿.md)如果新增 topic:
manifest-routing.json.topicPaths 中添加条目matchers/<id>.json,包含:
includeAny:5-10 个触发词taskToTopicRules 中添加路由规则如果更新既有 topic:
includeAny.Knowledge/index.md 中添加新条目- **[topic 标题](topics/<topicId>.md)** - 一句话说明 | 关联文档:[终稿](stock-docs/<doc>.md)(如有)如果有明确证据,写入 topicMetadata:
primary 类型:
policyconfigmodulefeatureconfidence 设为 inferred按以下顺序落盘:
.Knowledge/stock-docs/<doc>.md.Knowledge/topics/<topicId>.md.Knowledge/manifest-routing.json.Knowledge/matchers/<id>.json.Knowledge/index.md自检清单:
## 知识提取与入库结果
- 执行挡位:`严格挡(完整流程)` / `轻量挡(已跳过 2.1 / 2.4 / 3 / 4.1)` / `轻量挡 → 严格挡(降级原因:<原因>)`
### 问答分析
- 用户问题:<问题摘要>
- 命中主题:<topicId 或"无">
- 下钻深度:<浅/中/深> (<得分>) ← **轻量挡**:`未评估`
- 知识描述深度:<摘要级/详细级/实现级>
### 提取的知识事实
- 【核心机制】<描述> (来源:<文件:行号>)
- 【状态流转】<描述> (来源:<文件:行号>)
- ...
### 入库策略
- 策略:<补充既有 topic / 新增子主题 / 新增独立模块 topic>
- 目标 topic:<topicId>
- 操作说明:<追加内容 / 新建 topic + stock-doc>
### 已修改文件
- .Knowledge/topics/<topicId>.md:<修改说明>
- .Knowledge/index.md:<修改说明或"未改动">
- .Knowledge/manifest-routing.json:<修改说明或"未改动">
- .Knowledge/matchers/<id>.json:<修改说明或"未改动">
- .Knowledge/stock-docs/<doc>.md:<修改说明或"未改动">
### 验证建议
- 下次遇到类似问题"<问题>"时,应命中 topic:<topicId>
- 建议验证触发词:<关键词列表>
.Knowledge,不改配置根 rules/skillsf2s-kb-feedback-closing 定义)f2s-kb-feedback-closing 的 case 1~4 任何一种收口块(必须为是;本技能就是 distill 入库本身,自指地再贴一遍提示既冗余又会让用户误以为没入库——f2s-kb-feedback-closing「适用范围」对此有专项禁令)