with one click
基于国自然标书篇幅预算标准;检查目标标书篇幅并总结差距;给出针对性优化建议;在尽量不改变原意的前提下扩写/压缩到达标。
npx skills add https://github.com/huangwb8/ChineseResearchLaTeX --skill nsfc-length-alignerCopy and paste this command into Claude Code to install the skill
基于国自然标书篇幅预算标准;检查目标标书篇幅并总结差距;给出针对性优化建议;在尽量不改变原意的前提下扩写/压缩到达标。
npx skills add https://github.com/huangwb8/ChineseResearchLaTeX --skill nsfc-length-alignerCopy and paste this command into Claude Code to install the skill
当用户明确要求"写/改研究基础""研究基础+工作条件+风险应对编排"时使用。为 NSFC 正文"(三)研究基础"写作/重构,并同步编排"工作条件"和"研究风险应对",用证据链证明项目可行、资源条件对位研究内容、风险预案可执行。
当用户明确要求"生成 NSFC 技术路线图/技术路线图绘制/roadmap/flowchart"或需要把标书研究内容转成"可打印、A4 可读"的技术路线图时使用。默认输出可编辑源文件(`.drawio`)与可嵌入文档的渲染结果(`.svg`/`.png`/`.pdf`);当用户主动提及 Nano Banana 图片模型时,可切换为 PNG-only 模式,并兼容 Gemini 与 OpenAI `gpt-image-2`。⚠️ 不适用:用户只是想修改某张已有图片的格式/尺寸(应使用图片处理技能)、只是想润色技术路线文字描述(应直接改写正文)。
当用户明确要求"生成 NSFC 原理图/机制图/schematic diagram/mechanism diagram"或需要把标书中的研究机制、算法架构、模块关系转成"可编辑 + 可嵌入文档"的图示时使用。默认输出可编辑源文件(`.drawio`)与渲染文件(`.pdf`/`.svg`/`.png`);当用户主动提及 Nano Banana 图片模型时,可切换为 PNG-only 模式,并兼容 Gemini 与 OpenAI `gpt-image-2`。⚠️ 不适用:用户只是想润色正文文本(应直接改写文本)、只是想改已有图片格式/尺寸(应使用图片处理技能)、没有明确"原理图/机制图"意图。
当用户明确要求“推荐投稿期刊”“帮我的论文选 SCI 杂志”“这篇 manuscript 适合投哪些 journal”“期刊匹配/选刊/投稿建议”时必须使用。适用于用户提供全文、摘要、Markdown、LaTeX、PDF、Word 或混合材料的场景;本 skill 会基于 manuscript 与用户偏好,先用内置 `2023IF.xlsx` 做最小硬过滤生成候选池,再由宿主模型自主规划 Set1/Set2/Set3,并联网核验 scope / 质量 / 近 3 个月 PubMed 论文,最后输出 1 份按推荐度排序的 Markdown 选刊报告。⚠️ 不适用:用户只是想润色论文、只想翻译摘要、或只问某个单一期刊的官网信息而不需要系统选刊。
根据 LaTeX 论文项目撰写、修订和润色 SCI 期刊论文,默认 AI 自主模式,也支持人机协作仅输出审查计划;提供作者风格化写作、数字事实核验、逻辑树多轮审查与 PDF/Word 渲染闭环。⚠️ 不适用:仅改格式/样式参数、纯参考文献管理、图片处理、非论文写作任务。
解读论文 Figure 的含义并输出一份“教会人类如何读图”的高可读性 Markdown 报告;支持输入 1 个或多个 figure 文件绝对路径与人工解读,自动尝试从图附近检索生成该图的源代码,并采用类似 parallel-vibe 的方式通过 `codex exec`/`claude -p` 以进程级隔离解读每张图(并发上限默认 3,可在 config.yaml 调整)。⚠️ 不适用:用户只是想改图尺寸/裁剪/改格式;或要求直接修改图片/源代码(本 skill 对图片与源代码全程只读,严禁修改)。
| name | nsfc-length-aligner |
| description | 基于国自然标书篇幅预算标准;检查目标标书篇幅并总结差距;给出针对性优化建议;在尽量不改变原意的前提下扩写/压缩到达标。 |
| metadata | {"author":"Bensz Conan","short-description":"国自然标书篇幅对齐(检查→差距→建议→改写→复检)","keywords":["nsfc-length-aligner","nsfc","length","budget","align","wordcount"]} |
bensz-collect-bugs 按规范记录到 ~/.bensz-skills/bugs/,严禁直接修改用户本地 Claude Code / Codex 中已安装的 skill 源码。gh 与 bensz-collect-bugs,仅上传新增 bug 到 huangwb8/bensz-bugs;不要 pull / clone 整个 bug 仓库。目标:把“篇幅”从主观感觉变成可量化、可闭环的指标,并围绕预算(budget)指导扩写/压缩。
<workdir>/.nsfc-length-aligner/ 托管所有中间文件与报告length_report.*、临时分析稿、计划文件写到工作目录根层或仓库其他位置--out-dir,优先使用相对路径 .nsfc-length-aligner;脚本会将相对 --out-dir 解析到 --input 对应的工作目录,而不是 shell 当前目录先确认你要对齐的“硬标准”是什么:
说明:本 skill 默认使用 config.yaml:length_standard 的示例口径(已对齐 2026 调研建议)。你应按当年指南/模板校对后再使用。
对目标标书目录(或单文件)运行检查脚本,生成报告:
python3 scripts/check_length.py --input <目标标书路径> --config config.yaml
如需显式声明输出目录,请使用:
python3 scripts/check_length.py --input <目标标书路径> --config config.yaml --out-dir .nsfc-length-aligner
如果你的标书基于 NSFC_Young / NSFC_General 模板(项目根目录包含 main.tex),建议把 --input 指向项目根目录:脚本会自动沿 main.tex 的 \input/\include 依赖树收集“实际会编译进 PDF 的文件”,并忽略被注释掉的 \input{...}(避免把可选章节误计入篇幅)。
如果你已编译出最终 PDF(推荐;页数是硬约束),把 PDF 一并传入做页数统计:
python3 scripts/check_length.py --input <目标标书路径> --config config.yaml --pdf <标书.pdf>
输出:
<input>/.nsfc-length-aligner/length_report.md(默认输出目录;可用 --out-dir 自定义)<input>/.nsfc-length-aligner/length_report.json(默认输出目录;可用 --out-dir 自定义)注意:--out-dir 若使用相对路径,会被解析到 <input> 对应的工作目录下;这能避免从其他目录启动命令时把报告误写到 shell 当前目录。
运行完成后,必须读取 length_report.md(必要时辅助读取 length_report.json),将“文件级偏差表 +(可选)章节级统计”作为步骤 3 的输入。
基于报告做 3 件事:
章节级数据用法(更精准定位):
length_report.md 出现章节表格(或 JSON 中存在 sections 字段),优先在“超长/偏短”的文件内,定位到贡献最大的具体章节,再做定点改写,而不是只在文件级做平均删改参考:references/MEANING_PRESERVING_REWRITE_RUBRIC.md
⚠️ 改写完成后,必须执行步骤 5 复检,确认偏差已消除。未复检视为未完成。
用法(把“静态建议”变成“按差距触发”):
delta:+N 表示超长(优先“该瘦”);-N 表示偏短(优先“该厚”);OK 表示该部分无需为了预算而改动delta 的绝对值越大,越优先处理;处理顺序建议:先改 |delta| 最大的文件,再做次大项立项依据(为什么做):
研究内容(做什么/怎么做):
研究基础(为什么你能做):
改完必须再次运行脚本,确认“达标且不超标”:
python3 scripts/check_length.py --input <目标标书路径> --config config.yaml
config.yaml:length_standard 为唯一真相来源config.yaml:output_settings.intermediate_dir(默认 .nsfc-length-aligner)