MCPInstall

5writing

数学建模竞赛论文撰写阶段,支持 Typst 和 LaTeX 双引擎。根据 ANALYSISMODELINGREPORT.md、RESULTSREPORT.md 和 figures/.pdf 选择比赛模板、排版引擎、组织章节,并在论文正文中按章节直接插入图表。

Installs
1.9K
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/jihe520/mathmodelagent --skill 5writing
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads 5writing automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

竞赛论文撰写(Typst / LaTeX)

本 skill 承接 3coding-visual 和 4drawio。前序阶段只提供真实数据、图表 PDF 和记录文件;本阶段负责选择比赛模板和排版引擎、组织论文结构,并决定每张图表放入哪个章节。

Typst 引擎下可调用 typst-author skill 学习 typst 写法;LaTeX 引擎参考本文件末尾的"LaTeX 写作要点"小节。

数学建模规范参考

如需领域判断,读取 ../_references/math_modeling_norms.md 中的“论文写作”“图表与可视化”和“非数据图工具选择”小节。该文件只作为规范知识库,论文结构仍按比赛模板和当前赛题内容决定。

模板族

本技能内捆绑的模板位于:

templates/zh/<竞赛>/main.typ         # Typst 模板
templates/zh/<竞赛>-latex/main.tex   # LaTeX 模板
templates/en/<竞赛>/main.typ         # Typst 模板
templates/en/<竞赛>-latex/main.tex   # LaTeX 模板

LaTeX 模板覆盖范围:所有中文模板和英文模板均已提供 LaTeX 版本(-latex 后缀),使用 xelatex 编译。

支持的中文模板(Typst + LaTeX 双版本):

apmcm, changsanjiao, cumcm, default, diangongbei, dongsansheng,
huashubei, huaweibei, huazhongbei, mathorcup, mcm, shuweibei, stats, wuyibei

华为杯、华中杯、五一杯统一使用 huaweibei、huazhongbei、wuyibei 作为模板。

支持的英文模板(Typst + LaTeX 双版本):

apmcm, default, mcm

论文中的所有数值图表结论必须来自 reports/RESULTS_REPORT.md 或 figures/*。不得编造、估算或使用不同的四舍五入方式。

工作流

步骤 0:确定排版引擎

撰写论文前必须让用户选择排版引擎。 引擎决定后续所有步骤(模板路径、章节文件扩展名、图片插入语法、编译命令),选错会导致整篇论文格式错误。

使用 AskUserQuestion 工具向用户询问:"撰写论文使用哪种排版引擎?"

  • 选项 1:LaTeX(xelatex 编译,数学建模竞赛主流,模板已全部就绪)— 推荐选项放第一位
  • 选项 2:Typst(typst 编译,调用 typst-author skill 辅助写作)

询问前先读取 plan.md 的"用户偏好 → 排版引擎"字段作为预选项:

  • 若 plan.md 已记录引擎选择,向用户确认:"检测到之前选择的引擎是 <LaTeX/Typst>,是否沿用?"
  • 若 plan.md 不存在或未记录引擎选择,直接询问用户选择。
  • 若用户未明确指定或跳过,默认使用 LaTeX。

根据确定的引擎选择对应模板族:

  • Typst 引擎:使用 templates/<lang>/<竞赛>/main.typ,调用 typst-author skill。编译命令 typst compile main.typ。
  • LaTeX 引擎:使用 templates/<lang>/<竞赛>-latex/main.tex,xelatex 编译(中文和英文均需跑两遍解决交叉引用)。编译命令 xelatex -interaction=nonstopmode main.tex(执行两次)。

后续步骤中的所有代码示例、文件扩展名、图片插入语法都必须按所选引擎选择对应版本,不要混用。

步骤 1:选择语言和模板

除非用户明确要求中文,否则 MCM/ICM/COMAP 一律使用英文。所有中文竞赛名称使用中文。

模板键示例(Typst 引擎):

长三角 -> zh/changsanjiao
APMCM 英文版 -> en/apmcm
全国赛/国赛/CUMCM -> zh/cumcm
统计建模 -> zh/stats
MCM/ICM/COMAP -> en/mcm

模板键示例(LaTeX 引擎):

全国赛/国赛/CUMCM -> zh/cumcm-latex
MCM/ICM/COMAP -> en/mcm-latex

步骤 2:准备模板

用以下命令检查捆绑模板是否可访问(SKILL_DIR 为本 skill 所在目录):

Typst 模板:

ls "$SKILL_DIR/templates/zh/<竞赛>/main.typ" 2>/dev/null && echo "OK" || echo "MISSING"
  • 文件存在(OK):直接将 templates/zh/<竞赛>/ 整目录复制到 paper/。这些模板是自包含入口文件,不依赖额外共享样式文件。
  • 文件不存在(MISSING):说明 skill 未完整安装或在沙箱中,此时依照本 SKILL.md 步骤 3 列出的对应节文件结构,从零重建最小可编译 Typst 框架,并在 paper/ 内注明"重建自 default 结构"。

存在匹配模板时,绝不从零开始写论文。

LaTeX 模板:

ls "$SKILL_DIR/templates/zh/<竞赛>-latex/main.tex" 2>/dev/null && echo "OK" || echo "MISSING"
  • 文件存在(OK):将 templates/zh/<竞赛>-latex/ 整目录复制到 paper/。
  • 文件不存在(MISSING):说明 skill 未完整安装或在沙箱中,此时依照本 SKILL.md 步骤 3 列出的对应节文件结构,从零重建最小可编译 LaTeX 框架,并在 paper/ 内注明"重建自 default-latex 结构"。

步骤 3:构建图表规划

在写正文各节之前,根据 figures/*.pdf、reports/RESULTS_REPORT.md,以及 reports/DRAWIO_REPORT.md(如果存在)构建图表规划:

图表规划
fig_roadmap.pdf -> 引言/问题重述
fig_flow_q1.pdf -> 问题一模型构建
fig_flow_q2.pdf -> 问题二模型构建
fig_pipeline.pdf -> 数据预处理/方法节
结果图 -> 对应的结果节

图片路径相对于写入该图片的文件:写在 paper/main.typ 或 paper/main.tex 中通常用 ../figures/xxx.pdf,写在 paper/sections/*.typ 或 paper/sections/*.tex 中通常用 ../../figures/xxx.pdf。

Typst 引擎图片插入:

#figure(
  image("../../figures/fig_q1_error_dist.pdf", width: 85%),
  caption: [问题一预测误差分布],
)

LaTeX 引擎图片插入:

\begin{figure}[H]
  \centering
  \includegraphics[width=0.85\textwidth]{../../figures/fig_q1_error_dist.pdf}
  \caption{问题一预测误差分布}
  \label{fig:q1_error}
\end{figure}

英文论文使用英文图注。

步骤 4:撰写各节

以下章节文件名按所选引擎使用 .typ(Typst)或 .tex(LaTeX)扩展名。 例如 Typst 引擎用 1_restatement.typ,LaTeX 引擎用 1_restatement.tex。文件名主体保持一致。

中文数学建模通用模板各节文件(changsanjiao、diangongbei、huashubei、mathorcup、wuyibei):

1_restatement.typ  - 问题重述与分析
2_analysis.typ     - 数据理解与总体思路
3_assumptions.typ  - 模型假设
4_symbols.typ      - 符号说明
5_problem1.typ     - 问题一建模与求解
6_problem2.typ     - 问题二建模与求解
7_problem3.typ     - 问题三建模与求解
...         - 根据题目调整问题数量  
8_evaluation.typ   - 灵敏度分析、模型评价与推广
A_code.typ         - 附录代码

国赛/华中杯/华为杯(cumcm、huazhongbei、huaweibei)按以下章节结构:

1_restatement.typ
2_analysis.typ
3_assumptions.typ
4_symbols.typ
5_problem1.typ
6_problem2.typ
7_problem3.typ
...        - 根据题目调整问题数量
8_sensitivity.typ
9_evaluation.typ
A_code.typ

东三省模板(dongsansheng)额外使用单独摘要文件:

abstract.typ
1_restatement.typ
2_analysis.typ
3_assumptions.typ
4_symbols.typ
5_problem1.typ
6_problem2.typ
7_problem3.typ
...       - 根据题目调整问题数量
8_evaluation.typ
A_code.typ

数维杯模板(shuweibei)保留原 LaTeX 的示例入口命名:

Abstract.typ
Introduction.typ
2_analysis.typ
3_assumptions.typ
4_symbols.typ
5_problem1.typ
6_problem2.typ
7_problem3.typ
...      - 根据题目调整问题数量
8_evaluation.typ
Appendices1.typ
A_code.typ

中文默认模板(default):

1_restatement.typ
2_assumptions.typ
3_symbols.typ
4_problem1.typ
5_problem2.typ
6_problem3.typ
...      - 根据题目调整问题数量
7_sensitivity.typ
8_evaluation.typ
A_code.typ

中文统计建模各节文件:

1_introduction.typ
2_method.typ
3_data.typ
4_analysis.typ
5_results.typ
6_conclusion.typ
A_code.typ

英文 MCM/APMCM 各节文件(en/mcm、en/apmcm、zh/mcm、zh/apmcm):

1_introduction.typ
2_assumptions.typ
3_model_design.typ
4_solution.typ
5_sensitivity.typ
6_strengths_weaknesses.typ
7_conclusions.typ
A_code.typ

LaTeX 模板章节文件(对应 -latex 后缀模板,结构与 Typst 版本一一对应):

国赛 LaTeX 模板(zh/cumcm-latex,对应 cumcm Typst 版本):

1_restatement.tex
2_analysis.tex
3_assumptions.tex
4_symbols.tex
5_problem1.tex
6_problem2.tex
7_problem3.tex
8_sensitivity.tex
9_evaluation.tex
A_code.tex

MCM/ICM LaTeX 模板(en/mcm-latex):

1_introduction.tex
2_assumptions.tex
3_model_design.tex
4_solution.tex
5_sensitivity.tex
6_strengths_weaknesses.tex
7_conclusions.tex
A_code.tex

其余 LaTeX 模板(changsanjiao-latex、default-latex、huashubei-latex、mathorcup-latex、wuyibei-latex、huazhongbei-latex、huaweibei-latex、diangongbei-latex、dongsansheng-latex、shuweibei-latex、stats-latex、apmcm-latex、mcm-latex、en/apmcm-latex、en/default-latex)的章节文件命名与上述结构类似,以 main.tex 中 \input{} 引用的文件名为准。

英文默认模板(en/default):

1_introduction.typ
2_assumptions.typ
3_notations.typ
4_model.typ
5_sensitivity.typ
6_evaluation.typ
7_conclusions.typ
A_code.typ

正文写作应使用连贯的学术段落。避免在最终论文中出现工作流内部名称,如 reports/、figures/ 或 CLAUDE.md。

步骤 5:参考文献

只使用真实存在的参考文献。文件名按引擎选择:Typst 用 paper/references.typ,LaTeX 用 paper/references.tex。

Typst 引擎:

#set enum(numbering: "[1]")
#enum[
  作者. 题名[J]. 期刊名, 年份, 卷(期): 页码.
  Author. "Title." Journal or Conference, year.
]

正文上标引用:相关研究已用于物流网络优化#super("[1]")。

LaTeX 引擎:

\begin{thebibliography}{99}
  \bibitem{ref1} 作者. 题名[J]. 期刊名, 年份, 卷(期): 页码.
  \bibitem{ref2} Author. "Title." Journal, year.
\end{thebibliography}

正文引用用 \cite{ref1} 或 \cite{ref1,ref2}。

步骤 6:最后撰写摘要或总结

在所有章节完成后撰写中文摘要或英文 Summary Sheet。必须包含每个子问题的方法和精确的数值结果。

LaTeX 写作要点

以下要点供 LaTeX 引擎使用。Typst 引擎请调用 typst-author skill 获取语法帮助。

编译命令

# 中文模板(xelatex,跑两遍解决交叉引用)
xelatex main.tex && xelatex main.tex

# 英文模板(xelatex,同样跑两遍)
xelatex main.tex && xelatex main.tex

文档结构

\documentclass[a4paper,12pt]{article}   % 英文
\documentclass[a4paper,12pt]{ctexart}   % 中文

\usepackage{...}   % 宏包加载
\usepackage{graphicx}   % 图片支持
\usepackage{booktabs}   % 三线表
\usepackage{amsmath,amssymb}   % 数学公式
\usepackage{hyperref}   % 交叉引用(需两遍编译)

图表插入

\begin{figure}[H]
  \centering
  \includegraphics[width=0.85\textwidth]{../../figures/fig_q1.pdf}
  \caption{图注}
  \label{fig:q1}
\end{figure}

% 三线表
\begin{table}[htbp]
  \centering
  \caption{表注}
  \begin{tabular}{ccc}
    \toprule
    \textbf{列1} & \textbf{列2} & \textbf{列3} \\
    \midrule
    数据 & 数据 & 数据 \\
    \bottomrule
  \end{tabular}
\end{table}

交叉引用

如图~\ref{fig:q1}所示,...   % 图片引用
式~(\ref{eq:objective}) 给出...   % 公式引用
见第~\pageref{fig:q1} 页   % 页码引用

数学公式

行内公式:$f(x) = \sum_{i=1}^n \theta_i \phi_i(x)$

行间公式:
\begin{equation}
  \mathcal{L}(\theta) = \frac{1}{N}\sum_{i=1}^N (y_i - \hat{y}_i)^2
  \label{eq:objective}
\end{equation}

章节和强调

\section{问题重述}
\subsection{问题背景}
\textbf{问题一:} xxx   % 对应 Typst 的 #strong

FAQ

What does the 5writing skill do?

数学建模竞赛论文撰写阶段,支持 Typst 和 LaTeX 双引擎。根据 ANALYSISMODELINGREPORT.md、RESULTSREPORT.md 和 figures/.pdf 选择比赛模板、排版引擎、组织章节,并在论文正文中按章节直接插入图表。

How do I install 5writing?

Run npx skills add https://github.com/jihe520/mathmodelagent --skill 5writing in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/5writing/ (personal) or .claude/skills/5writing/ (project).

Which AI agents can use 5writing?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is 5writing safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains 5writing?

It is published by jihe520 in jihe520/mathmodelagent. It has 1,923 recorded installs.

More from jihe520/mathmodelagent

View all →

1start-mathmodel

jihe520/mathmodelagent

数学建模竞赛工作流入口。用于启动完整建模流程:询问用户偏好,生成 plan.md 和 todo.md,并按阶段调用赛题分析、建模、代码与图表、流程图、论文撰写、验证验收等 skills。

2analysis-modeling

jihe520/mathmodelagent

数学建模赛题分析与建模设计合并阶段。用于读取题面和附件,完成子问题拆解、数据理解、假设预检、变量定义、模型公式、目标函数、约束条件、求解策略和可交给代码实现的建模报告。

1.9K installs

4drawio

jihe520/mathmodelagent

数学建模非数据型图示绘制阶段。根据 ANALYSISMODELINGREPORT.md、RESULTSREPORT.md 和已有 figures/ 生成技术路线图、子问题求解流程图、模型结构图、数据处理流程图等 DrawIO 图,并导出论文可引用 PDF。

Docs & Writing1.9K installs

3coding-visual

jihe520/mathmodelagent

数学建模编程实现与数据图表生成阶段。根据 ANALYSISMODELINGREPORT.md 编写可复现代码、运行求解、验证约束、输出 RESULTSREPORT.md 并生成论文可用的数据驱动图表 PDF。

Docs & Writing1.9K installs

6verity

jihe520/mathmodelagent

数学建模竞赛最终验证和验收阶段,支持 Typst 和 LaTeX 双引擎。用于论文写完后检查章节数量、标题顺序、图表引用、数值一致性、占位符、内部文件泄露、参考文献、代码可复现性、编译和提交就绪状态。

1.9K installs

_references

jihe520/mathmodelagent

共享规范知识库。包含数学建模竞赛的写作规范、题型防错速查、图表规范等参考内容。其他 skills 在执行过程中按需读取,无需单独触发。

1.8K installs

Popular docs & writing skills

View category →

grill-with-docs

mattpocock/skills

A relentless interview to sharpen a plan or design, which also creates docs (ADR's and glossary) as we go.

Docs & Writing1.2M installs

lark-markdown

open.feishu.cn

飞书 Markdown:查看、创建、上传、编辑和比较飞书中的原生 Markdown 文件。当用户要操作飞书 Markdown 文件,或比较其远端版本及本地草稿时使用。纯本地 Markdown 文件操作不触发本 skill。不负责将 Markdown 导入为飞书在线文档,也不负责文件搜索、权限、评论、移动、删除等云空间管理操作。

Docs & Writing778.7K installs

writing-beats

mattpocock/skills

Writing, exploit; assemble raw material into a journey of beats, grounding each term before a beat leans on it.

Docs & Writing490.7K installs

writing-shape

mattpocock/skills

Writing, exploit: shape raw material into an article, paragraph by paragraph.

Docs & Writing490.2K installs

writing-fragments

mattpocock/skills

Writing, explore: mine raw fragments, no structure yet.

Docs & Writing489.6K installs

writing-for-agents

mattpocock/skills

Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.

Docs & Writing479.3K installs