mcpField
P
paper-workflow-orchestrator

paper-workflow-orchestrator

github.com/yushui2022文档处理45839 次安装4 天前更新
代码仓库

关于 paper-workflow-orchestrator

paper-workflow-orchestrator 是用于数学建模竞赛论文的工作流编排 Skill,供 Agent 按阶段执行从输入检查到文档交付的任务。它依靠文件、哈希和阶段检查报告管理进度,并要求先通过证据验证再进入正式写作。

主要功能

  1. 01检查输入文件与运行依赖
  2. 02按 S0–S8 阶段引导任务
  3. 03通过状态报告选择后续 Skill
  4. 04验证建模结果与证据链
  5. 05检查论文格式和渲染结果

适用场景

  1. 01从竞赛题目输入开始推进论文工作
  2. 02从中断状态恢复并继续对应阶段
  3. 03在正式写作前验证模型结果证据

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/yushui2022/mathmodel-skill --skill paper-workflow-orchestrator

安装后在 Claude Code 中输入/paper-workflow-orchestrator确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

MATHMODEL_EDITION.json
agents/
openai.yaml
scripts/
preflight_check.py
prepare_output_layout.py
quickstart_run.py
run_all.py
workflow_guard.py

详细介绍

MathModel Standard Orchestrator

将此技能用作完整竞赛论文任务的唯一入口路由。Standard 面向能够维护较长证据链并可靠执行工具、同时控制成本的强大模型。它不使用 Pro 多 Agent 锦标赛或审批检查点。

开始或恢复

在竞赛项目根目录中运行:

python .claude/skills/paper-workflow-orchestrator/scripts/preflight_check.py
python .claude/skills/paper-workflow-orchestrator/scripts/workflow_guard.py --status

读取 paper_output/qa/workflow_guard_report.json,并按照 recommended_skill 和 next_action 执行。当前文件及其哈希优先于对话记忆。

在守卫要求通过之前,不要运行下游技能。子技能完成后,返回此处并重新评估状态。

S0-S8

S0 输入准入

preflight_check.py 会清点 problem_files/、计算每个输入的哈希、检查运行时依赖、准备 paper_output/,并拒绝混用不同 MathModel 版本。必需输出:

  • paper_output/preflight_report.json
  • paper_output/input_manifest.json
  • paper_output/OUTPUT_LAYOUT.md
S1 问题分析

使用 $problem-doc-model-selector 创建 paper_output/step1/problem_analysis.json。必须能够追溯每个问题、附件、字段、目标、约束、歧义及必需输出。

S2 模型与评分标准路由

使用 $modeling-paper-rubric-and-model-selector。生成:

  • paper_output/plan/model_route.json
  • paper_output/plan/rubric_alignment.json
  • paper_output/plan/scoring_strategy.md

仅在确有必要使用公开外部数据时,才使用 $authoritative-data-harvester。保留来源身份和检索记录。

S3 数据与可视化计划

使用 $data-cleaning-and-visualization。只读取输入清单中分类的文件,并生成新的加载报告、数据计划、可视化计划、图表索引和清理后的数据。竞赛专用代码应放在 paper_output/code/ 下,切勿放入已安装的技能中。

S4 可复现模型代码

使用 $model-code-and-result-generator,在 paper_output/code/modeling/ 下编写针对具体问题的代码,包括 run_modeling.py 和各问题模块。代码必须生成机器可读的结果契约。

S5 实际执行

运行建模代码。在 paper_output/results/run_manifest.json 中保留脚本、输入、输出、退出代码、大小和 SHA-256 记录。必需证据包括模型结果、有限值指标、结论、表格和可用图表。草稿占位内容不算证据。

S6 证据关卡

使用 $quality-assurance-auditor 并运行官方证据验证:

python .claude/skills/quality-assurance-auditor/scripts/evidence_gate.py --mode official

只有当 paper_output/qa/evidence_gate_report.json 状态为 PASS,且所有记录的输入仍为最新时,才能开始正式写作。

S7 自适应正式写作

仅使用 $paper-formal-writer 作为正式作者:

python .claude/skills/paper-formal-writer/scripts/build_paper_outline.py
python .claude/skills/paper-formal-writer/scripts/prepare_authoring.py --mode auto

通常的竞赛论文应逐节完整撰写,可分多轮完成。保留正式写作器声明的竞赛范围;短报告必须有用户明确要求的范围及理由。使用 validate_authoring.py --section 审核每份草稿;若全局重复失败,则退回逐节模式。某一节中第二次出现相同类别的问题时,将进入 micro-repair 路由;只有此时才可使用 $paper-micro-unit-generator 修复排队的位置。第三次出现相同类别的问题会阻止 S7,并建议使用 Lite,但不会自动切换。

所有当前单元均通过后:

python .claude/skills/paper-formal-writer/scripts/assemble_sections.py
python .claude/skills/paper-formal-writer/scripts/validate_authoring.py --assembled

Agent 随后必须将完整组稿整体修订为 paper_output/final_paper_source.md;仅复制并提升内容将被拒绝。最后执行:

python .claude/skills/paper-formal-writer/scripts/validate_authoring.py --final
python .claude/skills/paper-formal-writer/scripts/format_formal_docx.py
S8 格式与渲染关卡

运行:

python .claude/skills/paper-formal-writer/scripts/check_paper_format.py --render required

交付要求 paper_output/format_check_report.json 中有最新的 PASS。修复报告指出的源文件、公式、引文、图表、DOCX、分页或 PDF 问题后重新运行;切勿编辑报告来强行制造 PASS。

正式输出

paper_output/plan/writing_plan.json
paper_output/context/authoring_state.json
paper_output/qa/draft_audit.json
paper_output/qa/repair_queue.json
paper_output/drafts/sections/*.md
paper_output/drafts/assembled_draft.md
paper_output/final_paper_source.md
paper_output/final_paper.docx
paper_output/format_check_report.json

旧版微单元和快速入门输出仍保存在 paper_output/drafts/legacy/ 和 paper_output/quickstart/ 下。它们绝不能满足 S7 要求。

不可妥协的不变量

  • 绝不编造模型结果、数据源、成功运行记录、引用或验证结果。
  • 每项关键数值声明都必须能追溯到当前机器可读证据。
  • 任何上游哈希变更都会使依赖它的 S6-S8 报告失效。
  • 每个纳入的图表都必须实际存在、已编入索引、已引用并得到解读。
  • 正式公式必须转换为可编辑的 Word OMML;不得用截图或纯文本替代。
  • 不要在论文正文中暴露技能名称、守护命令或工作流说明。
  • 不要将竞赛专用代码写入已安装的技能目录。
  • 每个竞赛项目只安装一个 MathModel 版本。

恢复

对于中断或耗时较长的任务:

python .claude/skills/paper-workflow-orchestrator/scripts/workflow_guard.py --status
python .claude/skills/context-memory-keeper/scripts/update_workflow_memory.py

读取守护报告、当前阶段契约和 paper_output/context/workflow_memory.json;从第一个失败的阶段继续,而不是重放已完成的工作。

评论

支持 Markdown