| name | paper-workflow-orchestrator |
| description | 串联赛题解析、数据计算与微单元脚本,一键从赛题文件夹到完整论文。Invoke when用户已放好赛题与附件,希望自动跑完全流程。 |
论文生成全流程编排器
目标
- 串联现有技能与脚本,用尽量少的人工操作从赛题文件夹直接得到可提交的完整论文草稿。
自动化运行约定(Trae 内一键)
- 零交互原则 (Zero Interaction):
- 当用户给出赛题(或说“跑一下”、“生成论文”)时,不要询问“是否要生成?”、“是否需要清洗数据?”。
- 立即、沉默地启动
run_all.py 脚本。
- 告诉用户:“正在全速生成中,预计耗时 20 分钟,请稍候...”,然后直接开始跑。
- 用户不需要手动运行任何脚本。
- 当用户在对话中要求“一键完成/自动跑完全流程”时,本技能应直接执行:
python ~/.codex/skills/paper-workflow-orchestrator/scripts/run_mathmodel.py
该脚本会按顺序执行:数据清洗与可视化 → QA 任务清单 → 微单元离线生成 → 合并。
适用时机
- 用户已经在项目根目录下按约定放好了赛题 PDF/Word 和附件数据,需要“从零到万字论文”的一条龙自动流程时。
- 已经完成部分计算或占位符填充,但希望检查整体步骤是否完整、顺序是否合理,或想一键重跑核心流程时。
增强参考(按需读取)
references/workflow_upgrade.md:增强版数学建模流水线、产物目录和质量门禁。用户要求“更强/更完整/按开源 Agent 思路增强”或要完整论文时读取。
../modeling-paper-rubric-and-model-selector/references/model_library.md:模型方法库。模型路线不明确或需要基线/改进/验证时读取。
../modeling-paper-rubric-and-model-selector/references/agent_roles.md:多 Agent 角色拆分。需要并行推进或职责拆分时读取。
../quality-assurance-auditor/references/qa_checklist.md:最终门禁清单。合并前与交付前读取。
约束(必须遵守)
- Memory Interaction (必做):
- 全流程中:作为总控,应当在每个关键步骤(清洗完、QA完、生成完)结束后,主动调用
context-memory-keeper 更新进度,确保如果流程中断,Memory 中留有断点记录。
- 本技能是全项目唯一“权威一键入口”。用户只要提出“生成完整论文/一键跑完”,优先执行本技能而不是让多个技能分散运行。
- 若
problem_files/ 为空,必须先补齐赛题与附件数据,再运行流程。
- 若用户分开调用了其他技能,最终仍应回到本技能或按本技能的顺序完成:清洗与出图 → QA 任务清单 → 微单元生成 → 合并。
完整性交付标准(以此判断是否“论文生产完整”)
- 必须存在:
paper_output/final_paper.docx (最终交付物,Word 格式)
- 必须存在:
paper_output/final_paper.md (中间 Markdown 稿)
- 必须存在:
paper_output/tasks.json
- 必须存在:
paper_output/ref_check.md
- 必须存在:
paper_output/micro_units/(可允许少量单元缺失,但合并稿需能正常阅读)
- 建议存在:
paper_output/figures/ 与 paper_output/data_cleaned/(用于数据预处理与结果分析配图)
脚本清单(本技能实际会用到的)
scripts/run_mathmodel.py:增强版入口。
- 何时用:Codex 全局 skills 安装后,用户要求初始化、一键跑全流程或只做最终审计。
- 做什么:以当前项目目录为根目录,初始化
problem_files/、crawled_data/、paper_output/,检查依赖,调用 run_all.py,最后调用 quality-assurance-auditor/scripts/audit_paper.py 做最终 QA。
scripts/run_all.py:离线一键全流程入口。
- 何时用:用户要求“一键完成/自动跑完全流程”。
- 做什么:赛题解析 → 外部数据检查 → 模型推荐 → 实验模板生成 → 数据清洗与可视化 → QA 任务清单 → 微单元生成 → 合并成
paper_output/final_paper.md/docx。
scripts/skill_paths.py:路径适配工具。
- 做什么:只从全局
~/.codex/skills 定位技能脚本,项目目录只用于读取赛题和写入 paper_output/。
前置约定
- 目录结构建议为:
- 根目录:
c:\Users\xiaoy\Desktop\trae\数学建模
- 赛题与附件:
problem_files/(把赛题 PDF/Word 与附件数据直接放这里;QA 会检查该目录不为空)
- 补充数据:
crawled_data/(可选,爬虫或外部公开数据放这里)
- 输出目录:
paper_output/(脚本自动生成任务清单、微单元与合并稿)
- 技能目录:全局
~/.codex/skills/...
- Python 可用即可。
- Codex 全局安装时推荐命令:
- 初始化:
python ~/.codex/skills/paper-workflow-orchestrator/scripts/run_mathmodel.py --init-only
- 一键运行:
python ~/.codex/skills/paper-workflow-orchestrator/scripts/run_mathmodel.py
- 只做审计:
python ~/.codex/skills/paper-workflow-orchestrator/scripts/run_mathmodel.py --audit-only
输入
- 必填:
- 将赛题 PDF/Word 与附件数据放入
problem_files/。
- 可选:
输出
- 中间文件:
paper_output/tasks.json:微单元任务清单。
paper_output/micro_units/*.txt:每个微单元一个文件。
paper_output/generate_log.json:生成日志。
- 最终交付:
paper_output/final_paper.md:合并后的论文草稿。
paper_output/ref_check.md:交叉引用与编号断链报告。
工作流程(对应 workflow_full 分步)
当前实现:离线一键流程(已落地)
若用户强调“增强版/更强/高质量/完整可提交”,先读取 references/workflow_upgrade.md,并在原有脚本流程前后补齐赛题解析、模型复核、阶段 QA 与最终 QA。
- [New] 外部资源获取 (Optional):
- 调用
authoritative-data-harvester 或 g-sci (若存在) 填充 crawled_data/。
- Memory Update: 将获取的文献/数据源更新至
memoryskill.md。
- 调用
data-cleaning-and-visualization/scripts/run_pipeline.py:扫描 problem_files/ 与 crawled_data/,产出清洗数据与图表到 paper_output/。
- 调用
quality-assurance-auditor/scripts/pipeline.py:检查 problem_files/,生成 paper_output/tasks.json。
- 调用
paper-micro-unit-generator/scripts/generate_all_offline.py:生成 paper_output/micro_units/*.txt 与 paper_output/generate_log.json。
- 调用
paper-micro-unit-generator/scripts/merge.py:生成 paper_output/final_paper.md 与 paper_output/ref_check.md,并直接生成 paper_output/final_paper.docx。
- [Mandatory] Word 交付验证:
- 检查
paper_output/final_paper.docx 是否存在。
- 优先使用
scripts/merge.py 直接生成的 Word 版本(原生 python-docx 生成,不依赖 Pandoc)。
- 仅在直接生成失败时,才尝试调用 Pandoc 作为兜底方案。
- 确保公式、图表、目录在 Word 中显示正常。
分步运行(需要时才用)
-
外部资源获取:
- 若需要补充文献或数据,先运行
authoritative-data-harvester 或其他搜索技能。
-
仅做数据清洗与可视化:
python ~/.codex/skills/data-cleaning-and-visualization/scripts/run_pipeline.py
- 仅生成任务清单(会检查
problem_files/ 不为空):
python ~/.codex/skills/quality-assurance-auditor/scripts/pipeline.py
- 仅生成微单元:
python ~/.codex/skills/paper-micro-unit-generator/scripts/generate_all_offline.py
- 仅合并生成论文:
python ~/.codex/skills/paper-micro-unit-generator/scripts/merge.py
常见问题
- 报错“problem_files 为空”:把赛题 PDF/Word 与附件数据放进
problem_files/ 后重跑。
- 想要看论文产出:最终文件是
paper_output/final_paper.md。
- 想要看数据与图表:清洗数据在
paper_output/data_cleaned/,图表在 paper_output/figures/。