nsfc-roadmap
# nsfc-roadmap This Claude Code skill generates publication-ready technical roadmaps from NSFC grant proposals by converting research content into editable `.drawio` diagrams and multiple output formats (SVG, PNG, PDF). Use it when explicitly requested to create a roadmap, flowchart, or convert proposal research plans into A4-printable visualizations; it supports iterative refinement across up to five rounds with automatic structure and layout optimization.
git clone --depth 1 https://github.com/huangwb8/ChineseResearchLaTeX /tmp/nsfc-roadmap && cp -r /tmp/nsfc-roadmap/skills/nsfc-roadmap ~/.claude/skills/nsfc-roadmapSKILL.md
# NSFC 技术路线图生成器 ## 与 bensz-collect-bugs 的协作约定 - 当用户环境中出现因本 skill 设计缺陷导致的 bug 时,优先使用 `bensz-collect-bugs` 按规范记录到 `~/.bensz-skills/bugs/`,严禁直接修改用户本地 Claude Code / Codex 中已安装的 skill 源码。 - 若 AI 仍可通过 workaround 继续完成用户任务,应先记录 bug,再继续完成当前任务。 - 当用户明确要求“report bensz skills bugs”等公开上报动作时,调用本地 `gh` 与 `bensz-collect-bugs`,仅上传新增 bug 到 `huangwb8/bensz-bugs`;不要 pull / clone 整个 bug 仓库。 ## 定位 - 用于把 NSFC 标书中的研究内容、技术路线和风险控制转成可打印、A4 可读的路线图。 - 默认工作流是确定性的 `drawio` 渲染;只有用户明确要求 Nano Banana 图片模型时才允许切到 PNG-only。 - 本技能只服务科研写作与可视化表达,不代表任何官方评审口径或资助结论。 ## 输入 至少提供其一: - `proposal_path`:标书目录,推荐。 - `proposal_file`:单个输入文件。 - `spec_file`:结构化图规格文件,最可控。 可选: - `rounds`:默认读 `config.yaml:evaluation.max_rounds` - `output_dir`:默认 `roadmap_output/` - `renderer`:默认 `drawio`;仅用户明确要求时才用 `nano_banana` - `dotenv`:仅 `nano_banana` 用 - `style_ref_images`:仅 `nano_banana` 用,最多前 4 张 - `layout` / `template_ref`:高级选项,默认不需要 ## 输出 默认交付: - `roadmap.drawio` - `roadmap.svg` - `roadmap.png` - `roadmap.pdf` - `roadmap-plan.md` 隐藏中间产物位于 `output_dir/.nsfc-roadmap/`: - `runs/run_*/round_*` - `spec_latest.yaml` - `optimization_report.md` - `config_used_best.yaml` - `evaluation_best.json` - `config_local.yaml` - `ai/`:`stop_strategy=ai_critic` 时的请求/响应协议 Nano Banana 模式仅交付: - `roadmap.png` - `roadmap_compacted.png` ## 硬规则 - 先读 `config.yaml`,以下字段视为单一真相来源:`renderer`、`evaluation`、`layout`、`color_scheme`、`planning`、`output`。 - 仅处理用户明确提供的文件或目录;默认把标书视为敏感信息。 - 默认不联网补素材;如用户要求联网,应先提醒风险。 - 默认保持 `drawio` 流程;不要因为“图片模型更快”就擅自切换渲染后端。 - 若内容拥挤,优先改 `spec` 的节点文案、分组或结构,不要靠缩字号硬过阈值。 ## 工作流 ### 1. 规划 - 若已提供 `spec_file`,可跳过。 - 默认使用 `config.yaml:planning.planning_mode=ai`: 1. 运行 `plan_roadmap.py` 生成 `plan_request.json/plan_request.md` 2. 宿主 AI 写 `roadmap-plan.md` 和 `spec_draft.yaml` 3. 再次运行脚本校验 `spec_draft.yaml` - 规划阶段要同时看立项依据与研究内容,不只看 `2.1 研究内容`。 ### 2. 落到 spec - 优先级:用户自带 `spec_file` > 规划阶段的 `spec_draft.yaml` > 从输入文件自动抽取。 - spec 至少明确阶段、节点、输入输出和风险/备选方案。 - 模板字段可选;默认不强制绑定某个 `template_ref`。 ### 3. 确定性渲染 ```bash python3 nsfc-roadmap/scripts/generate_roadmap.py \ --spec-file ./roadmap_output/spec.yaml \ --output-dir ./roadmap_output \ --rounds 5 ``` - 渲染时固化 `spec_latest.yaml` - 生成交付文件与每轮证据 - `draw.io CLI` 缺失时按配置决定提示、降级或停止 ### 4. 评估与优化 - 默认最多 5 轮,具体以 `config.yaml:evaluation` 为准。 - 每轮至少识别三类问题: - `P0`:缺研究内容、逻辑断裂、孤立节点、不可读 - `P1`:布局混乱、配色干扰、字号过小 - `P2`:间距、边距、箭头清晰度等一般优化 - 停止策略只看配置:`early_stop`、`stop_strategy=plateau` 或 `stop_strategy=ai_critic` - 多维度自检默认覆盖 `structure / visual / readability` ### 5. 可选:AI 自主闭环 - 若希望由宿主 AI 决定“是否继续、改哪里”,在 `config_local.yaml` 中启用 `evaluation.stop_strategy: ai_critic`。 - 脚本会在 `output_dir/.nsfc-roadmap/ai/` 下生成: - `ai_critic_request.md` - `ai_critic_response.yaml` - 每轮 `ai_pack_round_XX/` ### 6. 可选:Nano Banana PNG-only(Gemini / OpenAI `gpt-image-2`) - 只有用户明确要求时才启用。 - 先做连通性检查: ```bash python3 nsfc-roadmap/scripts/nano_banana_check.py ``` - `.env` 中可通过 `IMAGE_PROVIDER=openai` 切到 OpenAI;未显式指定时,默认优先沿用既有 `GEMINI_*` 配置。 - 然后再生成 PNG: ```bash python3 nsfc-roadmap/scripts/generate_roadmap.py \ --spec-file ./roadmap_output/spec.yaml \ --output-dir ./roadmap_output \ --rounds 1 \ --renderer nano_banana ``` ## 常用命令 ```bash # 规划 python3 nsfc-roadmap/scripts/plan_roadmap.py --proposal /path/to/proposal --output ./roadmap_output # 生成 python3 nsfc-roadmap/scripts/generate_roadmap.py --spec-file ./roadmap_output/spec.yaml --output-dir ./roadmap_output --rounds 5 # 图片模型连通性 python3 nsfc-roadmap/scripts/nano_banana_check.py ``` ## 参考材料 - `config.yaml` - `references/models/templates.yaml` - `references/models/README.md` - `assets/evaluation_rubric.md`
当用户明确要求"核查/优化综述 `{主题}_review.tex` 的正文引用"或"运行 check-review-alignment"时使用。通过宿主 AI 的语义理解逐条核查引用是否与文献内容吻合,只在发现致命性引用错误时对"包含引用的句子"做最小化改写,并复用 `systematic-literature-review` 的渲染脚本输出 PDF/Word。核心原则:不为了改而改,无法确定是否为致命性错误时保留原样并在报告中警告。⚠️ 不适用:用户只是想生成系统综述正文(应使用 systematic-literature-review);用户只是想新增/核对 BibTeX 条目(应使用专门的 bib 管理流程)。
当用户明确要求"填充示例内容""生成示例""补充 LaTeX 示例"时使用。AI 增强版 LaTeX 示例智能生成器,实现 AI 与硬编码的有机融合:AI 做"语义理解"(分析章节主题、推理资源相关性、生成连贯叙述),硬编码做"结构保护"(格式验证、哈希校验、访问控制)。
当用户明确要求"从文件/图片/网页/描述中提取综述主题"或"生成主题+关键词+核心问题结构化输出"时使用。支持文件(PDF/Word/Markdown/Tex)、文件夹、图片、自然语言描述、网页 URL 等多种输入源,自动识别输入类型并提取内容,生成可直接用于 systematic-literature-review 及其他文献综述技能的结构化输出。
当用户明确要求"更新项目指南""同步指南""沉淀洞见到指南"时使用。将对话中新产生的可复用写作洞见实时沉淀到项目指南文件,保持术语口径一致、结构稳定、可检验与可复现。调用时必须指定指南文件路径。
当用户明确要求“LaTeX 模板优化”“样式参数对齐”“像素级比对”“make-latex-model”或旧写法“make_latex_model”,或要把 ChineseResearchLaTeX 里的某个项目做成高质量模板时使用。适配 NSFC / paper / thesis / cv 四条产品线;先依据 packages/ 与 projects/ 的真实分层判断改项目层还是公共包,再用各产品线官方构建入口验收。若必须修改 packages 下公共包,需先生成受影响模板回归计划并完成相关回归;NSFC 专项工具仅在明确属于 NSFC 参数对齐场景时按需使用。
当用户明确要求"写/润色 NSFC 标书摘要""生成中文摘要和英文摘要""把中文摘要翻译成英文摘要"时使用。输出中文、英文两个版本(英文必须是中文的忠实翻译版),同时输出标题建议(1个推荐标题+5个候选标题及理由)。中文摘要默认≤400字符,英文摘要默认≤4000字符。输出方式:将结果写入工作目录下的 `NSFC-ABSTRACTS.md`。⚠️ 不适用:用户只想翻译一段与标书无关的通用文本(应直接翻译);用户只想写立项依据/研究内容/研究基础正文(应使用对应 nsfc 系列 skill)。
当用户明确要求“写/生成 NSFC 预算说明书”“写预算说明”“生成 budget.tex / budget.pdf”“写国自然预算 justification”时使用。基于用户标书正文或补充材料,输出一份可提交的预算说明书 LaTeX 项目并渲染 `budget.pdf`。若用户未指定工作目录,必须暂停并先要求其指定。⚠️ 不适用:用户只是想了解预算原则;用户仅要预算表数字而不写说明书;或用户是 2026 青年 A/B/C 默认包干制且无需预算说明书的场景。
根据 NSFC 标书正文内容,结合申请代码推荐库,为你给出 5 组申请代码1/2(主/次)推荐与理由;输出到 NSFC-CODE-vYYYYMMDDHHmm.md(只读,不修改标书)