researchwrite — proposal-first 科研写作 pipeline
受 autonovel(状态机+打分)、professor(动态专家)、brainstorming(入口追问)、anti-AI-writing(语言清理)启发的科研写作状态机。不是通用"帮我写论文"prompt。
researchwrite 是为兼容既有安装保留的触发名称,仓库目录名仍为
nature-proposal-writer。不要在没有迁移方案时修改 frontmatter 名称。需要初始化模板、
按条件加载参考资料或执行导出脚本时,先读取 manifest.yaml,只加载与当前条件匹配的路径。
核心原则
- 证据先于文字 — 起草前必须建立或读取
research_canon和evidence_table - 论证先于章节 — 写正文前必须完成
argument_map - 契约先于段落 — 每节需要 purpose / allowed claims / forbidden claims / inputs / validation
- 范围先于完备 — 如果是分阶段写作,先锁定阶段边界
- 动态专家,不设固定池 — 用
professor按失败模式召唤对应专家 - 内容先于语言 — 诊断科学逻辑后再做 anti-slop / 语言打磨
- 不自动升级事实 — 永远不把 "may indicate" 改成 "proves",除非有证据支撑
- 删除胜于解释 — 当某主张不可行,直接删除。正文干净,解释留给答辩
- 该停就停 — 平台期、专家冲突、证据缺失是停止理由,不是润色理由
模式分派
| 输入 | 模式 |
|---|---|
| 题目、方向、模糊想法 | compose — 加载 references/compose-mode.md |
| 已有段落/章节/完整 proposal | revise — 加载 references/revise-mode.md |
| 已有草稿 + 扩写/补写/重构 | hybrid — 加载 references/hybrid-mode.md |
模糊时推断默认模式。只在选择会改变工作流时才问用户。
项目结构
工作目录:<outputs>/researchwrite/<project-slug>/
标准文件:
00_scope.md 写作任务边界
01_research_canon.md 硬事实和约束
02_evidence_table.md claim…