nsfc-length-aligner

nsfc-length-aligner is a skill for Claude Code, Codex from huangwb8/ChineseResearchLaTeX. It costs 55 tokens per session (3,001 once invoked), scanned A, original, MIT.

A tool for aligning the length of a Chinese National Natural Science Foundation grant proposal with its page, word, or character budget.

In plain words
What is it for?
Measuring proposal sections against required limits, summarising gaps, and expanding or shortening text to meet those limits.
Why use it?
It shows which sections are too long or too short and helps adjust them while preserving the original meaning and argument.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions Claude Code; mentions Codex.

Good fit Measuring proposal sections against required limits, summarising gaps, and expanding or shortening text to meet those limits.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/huangwb8/chineseresearchlatex/nsfc-length-aligner
About the project

ChineseResearchLaTeX is a collection of LaTeX templates and an AI-assisted workflow for preparing Chinese research documents such as grant proposals, papers, theses, and academic CVs. Researchers use it to plan, format, review, compile, and revise these documents with human oversight. The catalogue skills and instructions support its agent-based research-writing workflow.

huangwb8/ChineseResearchLaTeX · 2,721 stars · on GitHub

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add huangwb8/ChineseResearchLaTeX --skill nsfc-length-aligner
Clone the repo
git clone --depth 1 https://github.com/huangwb8/ChineseResearchLaTeX

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for nsfc-length-aligner

README.md
[![agentmods](https://agentmods.dev/badge/skills/huangwb8/chineseresearchlatex/nsfc-length-aligner/github.svg)](https://agentmods.dev/skills/huangwb8/chineseresearchlatex/nsfc-length-aligner)
Your own site
<a href="https://agentmods.dev/skills/huangwb8/chineseresearchlatex/nsfc-length-aligner"><img src="https://agentmods.dev/badge/skills/huangwb8/chineseresearchlatex/nsfc-length-aligner/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for nsfc-length-aligner

Your own site · 80×15
<a href="https://agentmods.dev/skills/huangwb8/chineseresearchlatex/nsfc-length-aligner"><img src="https://agentmods.dev/badge/skills/huangwb8/chineseresearchlatex/nsfc-length-aligner.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 55 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,001 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00055 $0.03001
Opus 5 $0.00028 $0.01501
Sonnet 5 $0.00011 $0.00600
Haiku 4.5 $0.00006 $0.00300

Measured 3d ago against content hash 48a2045caea0, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

nsfc-length-aligner scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/check_length.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/nsfc-length-aligner/SKILL.md · 182 lines

How it starts

The opening of the file, as written. The whole thing — 182 lines — stays where its author put it; the contents beside it link to each section on GitHub.

nsfc-length-aligner

适用场景

  • 你有一份国自然标书,想快速判断是否“某些部分偏短/偏长”
  • 你需要按模板的硬性篇幅要求(页数/字数/字符数)对齐
  • 你希望尽量不改变原意地扩写或压缩(保持论证主线与证据链)

不适用场景

  • 仅需要“统计字数”而不关心预算与改写闭环(可用更简单的脚本即可)
  • 标书不在本地(无法提供文本/文件/路径)

流程

输入

按用户请求和配置文件提供必要输入;缺失信息应明确列出并停止依赖该输入的步骤。

执行步骤

  • 当用户环境中出现因本 skill 设计缺陷导致的 bug 时,优先使用 bensz-collect-bugs 按规范记录到 ~/.bensz-skills/bugs/,严禁直接修改用户本地 Claude Code / Codex 中已安装的 skill 源码。
  • 若 AI 仍可通过 workaround 继续完成用户任务,应先记录 bug,再继续完成当前任务。
  • 当用户明确要求“report bensz skills bugs”等公开上报动作时,调用本地 ghbensz-collect-bugs,仅上传新增 bug 到 huangwb8/bensz-bugs;不要 pull / clone 整个 bug 仓库。

目标:把“篇幅”从主观感觉变成可量化、可闭环的指标,并围绕预算(budget)指导扩写/压缩。

锁定隐藏工作区(先做)

  • 以标书工作目录为根,统一使用 <workdir>/.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/nsfc-length-aligner/ 托管所有中间文件与报告
  • 不要把 length_report.*、临时分析稿、计划文件写到工作目录根层或仓库其他位置
  • 若显式传入 --out-dir,优先使用相对路径 .bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/nsfc-length-aligner;脚本会将相对 --out-dir 解析到 --input 对应的工作目录,而不是 shell 当前目录
  • 若工作目录本身不可写,应先切换到可写副本后再运行;不要为了省事把中间文件散落到项目外部

需求确认(预算口径)

先确认你要对齐的“硬标准”是什么:

  • 2026 调研共识的“黄金比例”(面上/青基 C 类,供校对用):立项依据 30%(6–10 页,约 8000–10000 字)/ 研究内容 50%(12–15 页,约 12000–15000 字)/ 研究基础 20%(5–8 页,约 5000–6000 字);合计建议 ≤28 页留缓冲(原则上不超过 30 页)
  • 页数(硬约束):2026+ 改版后“原则上不超过 30 页”,实操建议 ≤28 页留缓冲;不要通过缩小字体/行距“挤页数”
  • 字符预算(代理指标):中文字符 / 总字符等,用于“改写→复检”的确定性闭环(页数最终以 PDF 复核)
  • 预算范围:总篇幅 + 各部分/关键章节预算(至少覆盖:立项依据/研究内容/研究基础)

说明:本 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 .bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/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>

Read the full file on GitHub · 182 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago Changed · +18 lines 48a2045caea0
  2. 11d ago First seen · 164 lines · 55 tokens per session scan A 3a0964e39725

Subscribe to this mod's changes

nsfc-length-aligner is a skill published in the GitHub repository huangwb8/ChineseResearchLaTeX (2,721 stars, last pushed 3d ago), licensed MIT. It adds 55 tokens to every session and 3,001 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

git-workflow

This skill should be used when the user asks to "create git commit", "manage branches", "follow git workflow", "use Conventional Commits", "handle merge conflicts", or asks about git branching strategies, version control best practices, pull request workflows. Provides comprehensive Git workflow guidance for team…

Galaxy-Dawn/claude-scholar · 64 tokens

daily-paper-generator

Use when the user asks to generate daily paper digests on a general topic. This skill supports both arXiv and bioRxiv (or either one), then produces structured Chinese/English summaries for selected papers.

Galaxy-Dawn/claude-scholar · 47 tokens

codex-autoresearch

Run autonomous, measurable experiments in a Git repository: change one hypothesis, verify a numeric metric, keep improvements, and revert failures. Use when the user wants Codex to keep iterating toward a numeric target in the foreground or as a detached background run. Do not use for ordinary one-shot coding…

leo-lilinxiao/codex-autoresearch · 80 tokens

clipboard

Copy text to clipboard with optional rich formatting. Triggers on "copy to clipboard", "copy that", "pbcopy", "copy formatted", "copy rich text".

CodeAlive-AI/ai-driven-development · 36 tokens

neo4j-modeling-skill

Design, review, and refactor Neo4j graph data models. Use when choosing node labels vs relationship types vs properties, migrating relational/document schemas to graph, detecting anti-patterns (generic labels, supernodes, missing constraints), designing intermediate nodes for n-ary relationships, enforcing schema with…

neo4j-contrib/neo4j-skills · 152 tokens

git-commit

A Git assistant for reviewing local changes and creating conventional commit messages, which are standardized summaries of code changes. It can also run Git hooks and push the commit.

huangwb8/skills · 88 tokens