PaperSpine Build From Materials 是 PaperSpine 工作流中用于“从材料构建论文或报告”的技能,属于内部 /paperspine 步骤。当用户还没有真实的手稿草稿,而是提供一个材料文件夹(包含实验设置、结果、图表、笔记、PDF、Word 文件、TXT/Markdown 报告或部分草稿)时,应使用此技能。该工作流与 paper-spine-rewrite 共享相同的研究、动机确认、证据库、章节蓝图和写作理由矩阵逻辑,并非单独的捷径。
一、用途 该技能用于在缺乏现成手稿的情况下,依据用户提供的材料文件夹,系统性地构建论文或报告。它强调从材料出发,经过研究、动机确认、证据整理、章节规划,最终生成 LaTeX 手稿与 PDF。
二、必需输入 使用前需要具备以下输入:
- paper_rewriting_output/paper_spine_config.json
- materials_dir
- 目标场景与输出语言
- paper_rewriting_output/reference_materials/source_index.md
- paper_rewriting_output/research_dossier.md
- paper_rewriting_output/exemplar_learning_dossier.md
- paper_rewriting_output/style_profile.md
- paper_rewriting_output/sota_gap_map.md
- paper_rewriting_output/citation_support_bank.md
- paper_rewriting_output/confirmed_motivation.md,且需用户确认
如果研究或已确认的动机缺失,则不得起草,需返回 paper-spine-research,并在用户看到基于研究的选项后请其确认动机。如果 citation_support_bank.md 缺失或内容浅薄,则返回 paper-spine-citation。从零写作仍然需要文献支持,用于背景、引言/概述、讨论、局限性和应用。
三、首轮操作 运行或模拟: python scripts/material_inventory.py <materials_dir> --output-dir paper_rewriting_output 在提出任何主张之前,先创建 source_inventory.md。
四、必需输出
- paper_rewriting_output/source_inventory.md
- paper_rewriting_output/evidence_bank.md
- paper_rewriting_output/figure_asset_map.md
- paper_rewriting_output/claim_register.md
- paper_rewriting_output/section_blueprints.md
- paper_rewriting_output/writing_rationale_matrix.md
- 作为中间产物的手稿草稿
- paper_rewriting_output/final_paper/main.tex
- 当有 TeX 引擎时生成 paper_rewriting_output/final_paper/paper.pdf
- paper_rewriting_output/latex_report.md
- paper_rewriting_output/final_artifact_manifest.md
- 当 translation_package 为 zh 时,通过 paper-spine-translate 生成 paper_rewriting_output/translation_zh/
五、写作理由矩阵 在最终成文之前,创建 writing_rationale_matrix.md 并阅读 references/writing-rationale-matrix.md。该矩阵是构建计划,必须按目标文档的实际写作单元排序,而不是按固定论文模板排序。
使用表格包含以下列: Row ID、Manuscript Unit、Planned Function、Motivation Link、Reference/SOTA Pattern Learned、Target Scene or Venue Norm、User Evidence or Citation Anchor、Planned Text Move、Final Text Check。
第一行数据必须深入论证整体框架或主线:为什么选择这一控制结构、SOTA/目标示例如何影响它、它如何遵循已确认的动机、哪些用户证据锚定它,以及最终手稿/报告将如何据此检查。之后,将工作拆分为所选场景下最小的有用单元:摘要/总结动作、问题重述、假设、模型设计、方法选择、结果/主张单元、综述综合块、验证块、建议、标题、图注或其他承载论证的片段。
任何一行都不能是泛泛而谈。每一行必须说明该单元为何存在,以及它如何与已确认的动机、学习到的示例、目标场景规范或用户证据相连。如果某段或某个图表主张需要单独的写作决策,则它需要自己的行。
六、Humanize 层级 如果 paper_spine_config.json 中 humanize_tier 设置为 light、medium 或 heavy,则在写作前路由到 paper-spine-humanize。humanize 技能提供特定层级的写作约束,在所有行文生成过程中强制执行。
七、构建规则
- materials_dir 和输出路径可能包含空格或非 ASCII 字符(例如 exp_lab_en - 副本)。始终引用路径,避免使用 shell 通配符如 cp materials/* ...;使用显式引用的路径复制或读取文件,优先使用 Python pathlib 或(在 Windows 上)PowerShell 进行文件操作。未加引号的通配符会在此类目录上静默失败。
- 将图像视为潜在图表资产,除非用户解释其内容,否则不视为已验证证据。
- 在可用时,使用现有文档/PDF 技能处理复杂 PDF、DOCX 或扫描材料的提取。
- 不得捏造缺失的实验或结果。
- 将用户批准的图表资产复制到最终 LaTeX 项目的 figures/ 文件夹,并使用标签和图注引用。
- 遵循 output_language:en 或 zh。
- 使用 citation_support_bank.md 逐句选择引用;不要将引用候选视为用户证据,也不要插入所有候选。
- 在通过 paper-spine-latex 路由之前,运行 python scripts/integrity_audit.py paper_rewriting_output --markdown --write 和 python scripts/structured_review.py paper_rewriting_output --dispatch。调度后,根据 review_prompts/dispatch.md 启动三个并行评审子代理,然后验证独立性。仅当所有维度 PASS 时才继续。
- 始终以通过 paper-spine-latex 路由结束。Markdown 草稿不是此工作流的最终交付物。
- 在 paper_rewriting_output/final_paper/ 下构建最终 LaTeX 项目。
- 如果 word_output 为 docx,生成 final_paper/paper.docx 并运行 scripts/word_guard.py,保存 paper_rewriting_output/word_report.md。
- 如果 output_language 为 en 且 translation_package 为 zh,创建完整的 paper_rewriting_output/translation_zh/ 包。这包括对大型中间文件(如 writing_rationale_matrix.md)进行完整的逐行翻译;部分翻译或摘要翻译视为失败。
- 在构建手稿之前,阅读 references/build-from-materials.md 和 references/writing-rationale-matrix.md。
八、适用场景 适用于用户拥有实验材料、结果、图表、笔记、PDF、Word 文件、TXT/Markdown 报告或部分草稿,但尚无完整手稿,需要从材料出发构建论文或报告的场景。
九、限制
- 若研究或已确认动机缺失,不得起草。
- 若引用支持库缺失或浅薄,不得继续。
- 不得捏造缺失的实验或结果。
- 图像在用户解释前不视为已验证证据。
- Markdown 草稿不是最终交付物,必须通过 paper-spine-latex 生成 LaTeX 项目。
- 翻译包若为 zh,必须完整逐行翻译,部分翻译视为失败。
- 路径处理需注意空格和非 ASCII 字符,避免未加引号的通配符。