--- name: analyze description: 科学问题分析 / 拆解 / 引导。用户提出模糊的高层科研问题(如"想搞清楚 X 是什么原因 / 怎么提升 Y / 该不该做 Z")、还没决定要不要立项、还在想方向、不知道从哪入手时使用。本 skill 不执行任务,而是把模糊命题翻译成可操作子问题 + 实施路线图,最后导向其他 skill。已经明确要写本子 / 查文献 / 跑实验时不用,直接走 proposal / research 等。 --- # Analyze - 科学问题分析 服务建材院无机非金属材料 R&D 场景。用户抛过来一个**模糊的高层科研问题**,本 skill 引导用户把它**翻译成可操作的子问题 + 实施路线图**,然后把每个子问题接力给合适的下游 skill。 **本 skill 不直接产出最终交付物**(不查文献 / 不写本子 / 不跑模型),只产出 `analysis.md` —— 一个共识性的"问题理解 + 路线图"文件。 ## 何时用 - 用户说"我想搞清楚 / 想研究 / 不知道从哪入手 / 这个问题怎么拆 / 我们能做什么" - 用户问题宽泛,只到效应层("早强偏低"、"耐久性差"、"性能不稳定"),没到具体变量 / 指标 / 假设 - 用户在评估要不要立项,问"这个方向值不值得做" - 用户想在不熟悉的领域结合本院能力做点事,要先理一下问题 ## 何时不用 - 用户已经写明白要做什么(配方对比 / 标准检测 / 文献综述 / 写本子)→ 直接走对应 skill - 用户问通识知识 / 名词定义 → 直接答 - 用户要审稿 / 改文 → 走 review - 用户要做异常排查但已经定位到具体环节(只差查文献验证) → 走 research ## 资源 所有路径相对 ``(`load_skill` 返回头里给的绝对路径): - `/references/pico_template.md` — PICO/PECO 问题规范化模板 + FINER 自检(阶段一前 always read) - `/references/issue_tree_patterns.md` — MECE 拆分模板(机理-现象-工艺三层)(阶段二前 always read) - `/references/root_cause.md` — 5Whys + Fishbone(根因型分支用) - `/references/innovation.md` — First-principles + TRIZ 矛盾矩阵(创新型分支用) - `/references/doe_planning.md` — DoE 选型(优化型分支用,衔接 stats_ml) - `/templates/analysis_report.md` — 最终产物 `analysis.md` 的格式模板 ## 工作流(四段式,关键阶段卡) ### 阶段一: 问题规范化(PICO 化)— BLOCKING 读 `/references/pico_template.md`,把用户原话填进 PICO 表。 1. 复制 `/templates/analysis_report.md` → `/analysis.md` 2. 填 §1 原始问题(用户原话照抄) 3. 填 §2 PICO 草稿: - **P** 对象(研究材料 / 体系 / 工艺环节) - **I** 干预(自变量 / 被你改变的量) - **C** 对照(参照基准:基准配方 / 国标 / 国外同类型材料) - **O** 输出(**必须量化**:具体指标 + 单位 + 期望数值) 4. 跑 §3 FINER 自检(Feasible / Interesting / Novel / Ethical / Relevant)五维评级 + 一句话说明 5. 把表格呈现给用户,问:"PICO 这样填对吗?O 这一栏需要更具体的指标吗?" 6. **BLOCKING:用户确认后才进阶段二** 字段填不出 / 用户说"不知道"是常态 —— 别强逼,在表里写 ``,但**至少 P 和 O 要落地**,否则没法拆。 ### 阶段二: Issue Tree 拆解(MECE)— BLOCKING 读 `/references/issue_tree_patterns.md`,选一个拆分模板搭树。 1. 选拆分维度:**机理-现象-工艺**(建材最常用,默认选)/ **输入-过程-输出** / **材料-工艺-装备-检测** 2. 拆 2-3 层(别过深,叶子节点 5-10 个最舒服) 3. 在 `analysis.md` §4 写 issue tree(用缩进列表或 mermaid 块,LLM 自选) 4. 每个叶子节点标注三个 tag: - **类型**:根因 / 创新 / 优化(决定阶段三用哪个分支) - **优先级**:高 / 中 / 低(凭"是否瓶颈 + 解决后收益") - **能力描述**:一句话动词短语(查文献 / 算结构 / 实验测样 / 数据建模 / 出图 / 写本子...) —— **不写 skill 名**,让 LLM 后续按当时看到的 skill 清单自匹配 5. 预览给用户,问:"叶子节点是否漏了?优先级判断对吗?" 6. **BLOCKING:用户确认后才进阶段三** ### 阶段三: 分支深化(按叶子类型选 framework) 对**高优先级**叶子节点,按类型走对应分支: | 叶子类型 | 读哪份 reference | 做什么 | |---|---|---| | **根因型**(为什么 X 异常 / 不达标) | `root_cause.md` | Fishbone 列广 → 5Whys 深挖优先支 | | **创新型**(怎么突破常规 / 找新路径) | `innovation.md` | First-principles 拆假设 → TRIZ 矛盾矩阵找发明原理 | | **优化型**(多因素调参找最优) | `doe_planning.md` | 选 DoE 类型(正交 / Plackett-Burman / 响应面)→ 输出实验设计表 | 把分支结果写到 `analysis.md` §5(每个高优先叶子一小节)。这一步**不每个叶子都卡** —— 一次性写完高优先叶子的深化分析,最后整体给用户看。 ### 阶段四: 实施路线图 + 接力 在 `analysis.md` 写 §6 实施步骤、§7 风险与备选、§8 TODO。 **§6 每一步要标四件事**: - **干什么**(动词开头) - **用什么能力**(一句话能力描述,**不写 skill 名**,让用户 / LLM 自路由) - **产物**(交付物名 + 格式) - **判停条件**(什么时候算这步做完) 最后给用户: - `analysis.md` 路径 - 建议"下一步用 X 能力推进"(X 是能力描述,LLM 按当下 skill 清单匹配 skill 名,不在 SKILL.md 写死) - TODO 待补项清单 ## 工作目录 `` = system prompt 给的绝对路径。本 skill 只写 **`/analysis.md`** 一个文件,不需要 `figures/` / `sections/` / `source/` 子目录 —— analyze 是引导式分析,无大型多文件产物。 需要参考素材时:让用户提供材料路径,不要自己 fetch / search(那是下游 skill 的事)。 ## 反模式 - 阶段一不让用户确认 PICO 就开拆解(O 没量化的 issue tree 拆出来全是空话) - Issue tree 拆到 4 层以上(LLM 容易堆细节,3 层足够 R&D 决策用) - 叶子节点写"用 research skill"/"用 stats_ml skill"(skill 名硬编码,将来 skill 改名要回来改;用能力描述代替) - 用户已经知道要做什么时强行让填 PICO(走对应 skill 即可,不要浪费时间) - 真去执行子问题(查文献 / 算 XRD / 跑回归) —— analyze 只做"想清楚",执行交棒下游 - 编造文献 / 数据支撑某个分支的可行性(不知道就标 `` + 建议接 research 验证) - TRIZ / DoE 全套强推 —— 只在叶子节点性质匹配时用对应分支,不为了用框架而用 - 报告写成学术综述(分支只是工具,产物是路线图不是 paper) ## 输出 完成后给用户: - `/analysis.md` 路径 - PICO 表(回顾用) - 高优先级叶子节点清单(3-5 个) - 推荐下一步:"先用 <能力描述> 推进 <某叶子>" —— 由 LLM 按看到的 skill 清单匹配 - `` 待补项