BZD Math Modeling Skills: a reviewer-style skill set for CUMCM papers
数学建模竞赛论文智能评审 Skill,支持 Codex 与 Claude Code,使用近五年国赛评阅细则、评分要点、评分概述等文件以及对应赛题进行蒸馏,并将真正在主观评审中涉及到的各种因素考虑在内,较为完备的复刻完整的评审流程,以便大家能够对自己的论文有较好的定位。
At a glance
- What is it?
- A collection of Codex and Claude Code skills that reads a competition problem, checks each chapter of a modeling paper, and produces a judge-style score. It is built on recent CUMCM judging documents, and it is not an official competition tool.
- Who is it for?
- Adopt it if you already write your CUMCM paper in Markdown or PDF and want a chapter-by-chapter check plus a judge-style score before submission. Do not adopt it if you expect an official score, or if your workflow has no way to copy skill folders into ~/.codex/skills/ or .claude/skills/.
- Can I use it commercially?
- Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
- Is it still maintained?
- Yes. The repository received new commits within the last day.
- What is it written in?
- Mainly HTML, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 18, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
What the BZD skill set is for, and who it is not for
The repository is a set of skills for Codex and Claude Code that covers the full CUMCM (高教社杯全国大学生数学建模竞赛) workflow: sentence-by-sentence reading of the problem statement, generating a modeling thread, judging whether a candidate model fits the data, checking the paper chapter by chapter, auditing AI-generated language traces, checking format, running a judge-style review, estimating competition rank, and looking up a school's national-award history. The README states the rules are compiled from the 2020 to 2025 CUMCM problems, scoring rules, scoring points, review overviews and the full review process.
The intended user is a team that already has a draft and wants an outside opinion on where it stands. The README is explicit that this is not an official competition tool: model suggestions, paper scores, rank predictions and preparation judgments are auxiliary references, and the current year's organizing committee and regional rules take precedence. If you want a tool that tells you a model is correct, this is the wrong category of software. It produces structured criticism, not ground truth.
How the skills chain together: a router plus specialist checkers
There is no server and no runtime. Each skill is a folder under skills/, grouped into 总控类 (control), 生成类 (generation), 论文自查类 (paper self-check) and 综合评审与自我定位类 (review and positioning). The entry point is bzd-modeling-workflow, which takes the current stage plus whatever artifacts exist (problem, attachments, data, ideas, paper, code, reports), identifies the stage, decides which specialist skills to call, records stage outputs, and returns a next-step suggestion. The README says it will not mechanically run every check when that is unnecessary.
The data flow is file-based. bzd-problem-translator consumes the full problem and attachment notes and emits a Markdown translation report, an omission audit and a cross-question linkage diagram. bzd-modeling-ideas consumes the problem and optionally that translation report, and returns a modeling thread plus per-question candidate models. bzd-model-dictionary takes the problem, data structure, candidate model and intended use, and returns a model profile with fit conclusion, conditions, defects, validation methods and alternatives. Downstream, the chapter checkers each take a narrow input: bzd-abstract-checker takes the abstract, bzd-symbol-notation-checker takes the full paper or the symbol table plus model text, bzd-model-solution-checker takes the problem and paper plus optional attachments or code. The final stage, bzd-review-paper, takes competition type, the full problem and the full paper, and optionally group, region, school and advisor, and returns a percentage score, a format coefficient, a rank estimate, itemized deductions and an HTML report.
Installing it under Codex or Claude Code
There is no package manager step. The README says to download or clone the repository, then copy the specific bzd-... folders you need into the skills directory. For Codex the destination is %USERPROFILE%\.codex\skills\ on Windows and ~/.codex/skills/ on macOS and Linux. For Claude Code the destination is .claude/skills/ inside the project directory.
A typical Codex layout after copying looks like this:
.codex/skills/
├── bzd-modeling-workflow/
├── bzd-problem-translator/
├── bzd-modeling-ideas/
├── bzd-model-dictionary/
├── bzd-paper-format-checker/
├── bzd-review-paper/
└── 其他需要使用的bzd Skill/The README gives one warning that matters here: copy the bzd-... folder itself, not the outer Chinese category directory, because the category directory is not a skill. Claude Code also has supplementary configuration in integrations/claude-code/.
Once installed, the first useful call is the router rather than a specific checker. The README's example passes the current stage, the problem path, an optional attachment path, and asks the skill to identify the stage and arrange the next step:
调用 $bzd-modeling-workflow。
当前阶段:刚拿到题目
赛题:<赛题文件或路径>
附件:<附件文件或路径,可选>
请识别当前阶段,并按BZD数学建模完整工作流安排下一步。You should get back a call plan, an index of stage outputs, a de-duplicated problem list, and a next-step suggestion. If you already have a draft and want the end product directly, the README shows this form, which is the one to reach for when you want a score rather than a plan:
调用 $bzd-review-paper:
竞赛类型:<高教社杯国赛或其他竞赛>
组别:<本科组或高职高专组,可选>
赛区:<赛区,可选>
学校:<学校,可选>
指导教师:<教师,可选>
赛题:<赛题路径>
论文:<论文路径>
已有格式检查报告:<可选路径>The scoring boundary: what the rank estimate can and cannot mean
The README devotes a section to this, and it is the part worth reading twice. bzd-review-paper is supposed to re-decompose the task and freeze a scoring rule set for the current problem on every run; it must not reuse answers or conclusions from a previous problem or an earlier conversation. Paper quality and the competition environment are handled separately: region, school, group and advisor feed the award and rank calibration, and the README says that information should not alter the academic quality judgment of the paper itself.
Two limits are stated outright. First, highly original approaches that fall outside the usual review path may be underestimated by the AI, and a final check by an experienced advisor or human judge is still needed. Second, historical award data, regional strength and experience probabilities do not represent official quotas or a promise of an award. The format coefficient is derived by mapping the format score from bzd-paper-format-checker, and bzd-review-paper is meant to ingest that report so the same issues are not checked and deducted twice. That is a sensible design, but it also means the final score inherits whatever the format checker got wrong.
Where it will disappoint you
The README itself flags the biggest cost: bzd-paper-format-checker is a full-text format and presentation sweep, and running strict format review frequently before the final draft burns a lot of tokens. That is not a footnote for a team iterating on a paper all night.
There is a second, structural limitation. Several skills appear in more than one category directory. bzd-problem-restatement is listed under both 生成类 and 论文自查类, and bzd-ai-usage-disclosure appears under both 生成类 and 论文自查类, while bzd-review-paper appears under both 论文自查类 and 综合评审与自我定位类. The README says this is for convenience and that you should install only one copy of each name into a skills directory. Nothing in the README explains how a host resolves the ambiguity if you copy both, and it does not document rollback or uninstall. If you are the kind of user who copies a whole category folder, you will hit this.
Finally, the license is not stated in the repository metadata. That is a real adoption blocker for anyone who needs to redistribute the skill folders inside an organization or bundle them into a course platform.
How it differs from generic AI writing assistants
A general assistant answers a prompt about a paper. This project constrains the assistant with a fixed division of labor: one router, one problem translator, one modeling-idea generator, a model dictionary that judges fit rather than proposes a model, a set of chapter checkers each scoped to one part of the paper, an AIGC auditor that looks for templated language, algorithmic stacking and gaps in modeling logic, and a final reviewer that produces a score and rank estimate. The distinguishing piece is bzd-model-dictionary: instead of generating a model, it takes a candidate model plus the data structure and returns a profile with usage conditions, defects, validation methods and alternative models. That is a checking stance, not a generating stance.
The other difference is that the review stage is explicitly instructed to re-derive scoring rules from the current problem rather than reuse a stored rubric. A generic assistant will happily apply whatever rubric you paste in, including one from a different year. Whether the re-derivation actually happens on each run is something you would have to verify by running it, since the README describes the intent, not a mechanism that enforces it.
Editorial conclusion
Adopt it if you already write your CUMCM paper in Markdown or PDF and want a chapter-by-chapter check plus a judge-style score before submission. Do not adopt it if you expect an official score, or if your workflow has no way to copy skill folders into ~/.codex/skills/ or .claude/skills/. Before relying on it, verify which bzd-... folders you actually copied, since the repository places several same-named skills under more than one category directory and the README warns against installing duplicates into the same skills directory.
Frequently asked questions
Is BZD Math Modeling Skills an official CUMCM tool?
No. The README states plainly that the project is not an official competition tool, and that model suggestions, paper scores, rank predictions and preparation judgments are auxiliary references only. The current year's organizing committee and regional rules, plus the actual review result, take precedence.
Does BZD Math Modeling Skills work with Claude Code as well as Codex?
Yes. The README says the skills support both Codex and Claude Code. Codex installs to %USERPROFILE%\.codex\skills\ on Windows or ~/.codex/skills/ on macOS and Linux, while Claude Code uses .claude/skills/ inside the project directory, with extra configuration under integrations/claude-code/.
Can I install the whole Chinese category folder as one skill?
No. The README says to copy the individual bzd-... folders and explicitly warns not to install the outer Chinese category directory as a skill. It also notes that same-named skills may appear in multiple category directories for convenience, so you should pick one copy rather than installing duplicates into the same skills directory.
Community notes