بنقرة واحدة
thesis-creator
面向中国本科生的毕业论文全流程写作辅助系统。支持从选题到交稿的端到端工作流,包含降重优化、AIGC 降低和本地检测功能。用户说「帮我写论文」或「帮我降重」等时触发。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
面向中国本科生的毕业论文全流程写作辅助系统。支持从选题到交稿的端到端工作流,包含降重优化、AIGC 降低和本地检测功能。用户说「帮我写论文」或「帮我降重」等时触发。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | thesis-creator |
| description | 面向中国本科生的毕业论文全流程写作辅助系统。支持从选题到交稿的端到端工作流,包含降重优化、AIGC 降低和本地检测功能。用户说「帮我写论文」或「帮我降重」等时触发。 |
面向中国本科生的毕业论文全流程写作辅助系统。
[!IMPORTANT] 工作区隔离原则:AI 始终在用户项目目录下的
thesis-workspace/工作。所有产出文件都在用户工作区内。
| 触发语 | 执行动作 |
|---|---|
| 「帮我写论文,主题是…」 | 全流程(Step 0-9) |
| 「帮我降重这段文字:…」 | 仅 Step 5 |
| 「降低这段的 AIGC 率:…」 | 仅 Step 6:必须输出“处理前计划 → 改写文本 → 清单自检”,并按场景化重写、自然承接、轻冗余控制和高密度句拆解处理,不得只给改写结果 |
| 「检测这段文字的 AIGC 率」 | AIGC 检测 |
| 「帮我生成论文大纲」 | Step 0-3 |
| 「初始化工作区」 | Step 0(工作区不存在直接初始化) |
| 「继续」 | 仅在当前步骤的强制交互点、前置校验和质量门禁均已满足后继续流程 |
| 「生成摘要」 | Step 4(仅摘要部分) |
| 「生成图片」「生成图表」 | Step 8 |
| 「导出 Word」「导出文档」 | Step 9 |
| 「一键导出」 | Step 8+9 |
flowchart LR
A[Step 0: 初始化] --> B[Step 1-2: 准备]
B --> C[Step 3: 大纲]
C --> D[Step 3→4: 文献搜索与建池]
D --> E[Step 4: 撰写]
E --> F[Step 5-6: 降重]
F --> G[Step 7: 合并检测]
G --> H[Step 8: 图片生成]
H --> I[Step 9: 导出Word]
⚠️ 流程顺序:大纲确认 → 文献搜索与建池 → 正文写作 → 合并 → 图片生成 → 导出 Word 状态文件路径:
thesis-workspace/.thesis-status.json若文件不存在,status_manager.py会自动创建。推荐统一入口:
scripts/core/lifecycle.py(整合日志 + 状态管理)
[!IMPORTANT] 「继续」不是跳过按钮。 若当前流程仍存在强制交互点、前置校验或质量门禁未完成,则必须先完成对应动作,再允许进入下一步。
python scripts/core/lifecycle.py --workspace thesis-workspace/ --check-workspace,并检查 thesis-workspace/references/prompt/background.md 是否已补全;工作区必须通过脚本初始化并从 config/.thesis-config.yaml 复制生成 thesis-workspace/.thesis-config.yaml,同时生成 thesis-workspace/.thesis-status.json、thesis-workspace/logs/、thesis-workspace/scripts/charts/render.py、thesis-workspace/workspace/final/images/sources 与 thesis-workspace/workspace/references/images.yaml;未完成时只能提示用户编辑,禁止直接推进到 Step 1/3。ref_id 在终稿中重复出现,必须硬阻断并回退修正,禁止带重复引用进入 AIGC 检测;若 AIGC 检测未通过,必须回退到 Step 5/6 继续改写与审校,禁止进入 Step 8 图片生成或 Step 9 导出。.dot/.mmd/.puml → 渲染 PNG → 回填 [image_N] → 完整性验证”执行;使用 scripts/charts/manifest_builder.py、source_writer.py、render.py、markdown_updater.py、validate.py,最终已渲染 AI 图片不得残留 [image_N]。| 步骤 | 说明 | 详细文档 |
|---|---|---|
| Step 0 | 工作区初始化 | workflows/step_0_init.md |
| Step 3 | 生成论文大纲 | workflows/step_3_outline.md |
| Step 4 | 分章节撰写 | workflows/step_4_writing.md |
| Step 6 | 审校润色 | workflows/step_6_review_polish.md |
| Step 7 | 合并与检测 | workflows/step_7_merge_detect.md |
| Step 8 | 图片生成与渲染(ER图默认读取 background.md,优先输出教科书风格 DOT,信息不足时尽量生成并 warning) | workflows/step_8_image.md |
| Step 9 | 文档导出 | workflows/step_9_export.md |
| 参考文献 | 文献池管理 | workflows/reference_workflow.md |
核心改进:文献池独立存放在
workspace/references/verified_references.yaml文献校验状态:verified_doi / verified_metadata_only / broken_doi_metadata_ok / missing_doi_unverified / invalid_reference规则说明:无 DOI 不等于假文献;允许通过元数据验证的真实文献继续进入文献池。
[image_1]、[image_2] 等格式workspace/references/images.yamlworkspace/references/images.yaml 必须采用结构化字段,至少包含 id、title、chapter、section、source、diagram_type、engine、purpose、fact_source、placement、status、description、source_file、output_file、render_status;可选 prompt_hint 用于指导大模型生成源码,dot_mode 可用于单图覆盖 ER 的 DOT 子模式[image_N] 与 image-requirement 图片需求块,Step 8 再生成 images.yaml、准备源码文件、由大模型填写 .dot/.mmd/.puml、渲染 PNG 并回填 Markdown 图片引用source=user 和待补状态.puml);ER 图由 .thesis-config.yaml 的 er_modeling.graph_type 决定,默认 Graphviz DOT (.dot) 教科书 Chen 风格,erd 时输出 Mermaid erDiagram;diagram_type=overall_er 必须第一个展示,且仅展示实体、联系与 1:1 / 1:N 基数,关系菱形节点必须结合外键字段或实体语义命名,如“拥有”“包含”,不得统一写成“关联”,且不展示字段;diagram_type=entity_er 可通过 .thesis-config.yaml 的 er_modeling.dot_mode=textbook-single-entity-ring 或 images.yaml 单图 dot_mode 启用单实体字段环绕 DOT,优先级为单图覆盖全局;架构图 → 用户自行生成/GPT image 后补入 (source=user);模块图 → Mermaid (.mmd);用户截图 → user请生成一个用于毕业论文的PlantUML流程图,主题为“{{图表主题}}”。要求:
- 使用activity diagram
- 所有节点使用中文
- 起止节点使用“开始”“结束”
- 逻辑严谨,体现完整业务流或上下文流转机制
- 包含必要循环(如存在用户持续操作、重试或追问)
- 避免语法歧义(防止被解析为class diagram)
- 图结构简洁,不超过3层嵌套
- 判断分支连线必须明确标注 Y/N
- 全图只保留一个最终结束节点,所有分支和普通路径最终汇入该结束节点
- 适合论文插图展示
只输出PlantUML代码。
thesis-workspace/workspace/final/images/sources/ 对应 .puml/.dot/.mmd 文件,而不是在控制台直接输出完整图表源码;仅在用户明确要求“只输出代码”时,才直接返回源码文本。scripts/references/reference_merger.py)workspace/references/verified_references.yamlref_id 被正文使用一次,就必须标记为已占用,后续章节不得重复使用;Step 7 发现重复 ref_id 必须硬阻断yaml.safe_load() 读取详见 workflows/reference_workflow.md
thesis-workspace/
├── README.md # 工作区使用说明
├── .thesis-config.yaml # 配置文件
├── references/ # 参考资料(用户放入)
│ ├── templates/ # 学校模板
│ ├── examples/ # 范文
│ ├── guidelines/ # 规范
│ └── prompt/background.md # 论文背景(必填)
├── workspace/ # 论文产出
│ ├── outline.md # 大纲
│ ├── references/ # 参考文献池(独立)⭐
│ │ ├── verified_references.yaml # 已验证文献池
│ ├── cited_references.json # 引用记录(每章引用的ref_id)⭐
│ ├── drafts/ # 初稿(仅含临时引用编号,无参考文献列表)⭐
│ │ ├── 参考文献.md # 合并阶段生成的参考文献(独立MD文件,GB/T 7714格式)⭐
│ ├── final/ # 终稿
│ │ ├── 论文终稿.md # 终稿(引用编号已重排)
│ │ ├── 论文终稿.docx
│ │ └── images/ # 图片
│ └── reports/ # 报告
├── logs/ # 日志
└── .thesis-status.json # 状态
⭐ 标记为本次更新新增或变更的文件
[!IMPORTANT] 生成的 Markdown 必须能被 Pandoc / python-docx / markdown-it / Typora / VSCode Markdown 正确识别,并映射为 Word Heading 1~4,支持自动目录、导航窗格、标题折叠和大纲视图。
| Markdown 语法 | Word 映射 | 说明 |
|---|---|---|
# 标题名称 | Heading 1 | 章级标题(摘要、第N章、结论等) |
## 标题名称 | Heading 2 | 节级标题(1.1、4.2 等) |
### 标题名称 | Heading 3 | 小节级标题(1.2.1、4.4.1 等) |
#### 标题名称 | Heading 4 | 段级标题(5.2.1 等) |
格式硬约束:标题符号 # 后必须保留一个空格。正确:## 研究背景;错误:##研究背景。
以下方式视为格式错误,禁止用于模拟标题层级:
| 禁止方式 | 说明 |
|---|---|
| 加粗文本 | **第一章 绪论** 不是标题 |
| 序号+普通段落 | 1.1 研究背景 无 ## 不是标题 |
| 列表项 | - 第一章 绪论 不是标题 |
| 表格标题 | 表格内文字不是标题 |
| 单纯放大字体 | HTML <font size> 不是标题 |
| 中文符号模拟层级 | ===系统设计=== 不是标题 |
| HTML 标签 | <h1> 等不是标题 |
标题必须满足严格层级结构,禁止跨级跳跃:
正确:# → ## → ### → ####
错误:# → ###(跳过 ##)
# 摘要
# Abstract
# 第一章 绪论
## 1.1 研究背景
## 1.2 国内外研究现状
# 第二章 系统分析
# 第三章 系统设计
# 第四章 系统实现
# 第五章 测试与分析
# 结论
# 参考文献
markdown 代码块包裹正文内容生成结果必须兼容 Markdown → docx 转换流程,确保通过 pypandoc.convert_file() 或 python-docx 转换后能自动生成 Word 目录。
导出的 docx 文档必须满足:
| 问题 | 影响 | 处理 |
|---|---|---|
| 缺少规定动作章节 | 致命 | 自动补充 |
| 设计实现未分离 | 致命 | 强制拆分 |
| 章节顺序错误 | 致命 | 强制调整为:系统分析→系统设计→系统实现→系统测试→总结与展望 |
| 使用 LLM 上下文合并文档 | 致命 | 必须使用 merge_drafts.py 脚本 |
| 图表不足 | 严重 | 提示补充 |
| 数据库表数量不足 | 严重 | 检查 background.md 表定义,确保 ≥11 张表 |
| 未执行状态管理脚本 | 致命 | 每个 Step 必须通过 lifecycle.py 或 status_manager.py 记录状态,禁止大模型自行维护状态 |
| 日志未通过脚本记录 | 严重 | 所有流程日志必须通过 logger.py 输出,禁止大模型自行生成日志内容 |
| 文献链接 404 | 严重 | 合并前执行 reference_validator.py --check-404,404文献必须替换 |
| 图片文件缺失 | 严重 | Step 8 完成后检查 images/ 目录,所有占位符必须有对应 PNG 文件 |
| 参考文献虚构 | 严重 | DOI验证+重生成 |
| 参考文献数量超标 | 严重 | 按相关度截取 |
| 参考文献缺少中英文 | 严重 | 中文和英文文献都必须包含,缺少则触发补充搜索 |
| 参考文献 YAML 解析失败 | 严重 | reference_merger.py 必须使用安全 YAML 输出,特殊字符标题保存后仍可 yaml.safe_load() |
| 中文文献比例不足 | 严重 | 自动源不足时提示从 CNKI、万方、学校图书馆人工补充真实中文文献,禁止伪造 |
| 引用复用同一 ref_id | 严重 | 同一篇文献整篇仅允许引用一次,发现重复占用必须硬阻断并回流补池改写引用 |
| AI模板词超标 | 中等 | 按 Step 6 的 AIGC 标准流程处理:先做处理前计划,再按”场景化重写 → 结构重组 → 细节注入 → 自然承接与轻冗余 → 高密度句拆句解释 → 语言去模板化”改写,最后输出清单自检;禁止只做同义替换、删词式压缩或只给改写结果 |
| 标题未使用 Markdown # 语法 | 致命 | 所有标题必须用 # / ## / ### / ####,禁止加粗文本/序号段落/中文符号模拟标题 |
| 标题层级跳跃 | 严重 | 禁止跨级(如 #→###),必须逐级(#→##→###→####) |
| 标题符号后无空格 | 严重 | #标题 必须修正为 # 标题,符号后必须保留一个空格 |
| AIGC 降低缺少自检清单 | 严重 | 必须补齐处理前计划、改写文本、自检表;自检项出现“未通过”时继续局部修正,不得交付为最终版 |
| 章节内自建参考文献列表 | 中等 | 删除,合并阶段统一生成 |
| background.md 为空或未完善 | 致命 | 提示用户编辑 thesis-workspace/references/prompt/background.md,禁止控制台交互式输入 |
| ER 图事实源不一致 | 严重 | Step 8 的 ER 图默认读取 background.md,仅 ER 图受 thesis-workspace/.thesis-config.yaml 的 er_modeling 配置影响;默认输出教科书 Chen 风格 DOT(实体矩形、属性椭圆、联系菱形),总体 ER 图必须第一个展示,且只展示实体、联系与 1:1 / 1:N 基数;关系菱形节点必须结合外键字段或实体语义命名,如“拥有”“包含”,不得统一写成“关联”;DOT 输出不要显式使用 label= |
| 文件 | 说明 | 加载时机 |
|---|---|---|
prompts/writer_guidelines.md | 写作规范 | Step 4 |
prompts/aigc_reducer_prompt.md | AIGC 表达质量优化与深度人工化流程,按场景化重写、自然承接、轻冗余控制和高密度句拆句解释执行 | Step 6 |
prompts/humanizer_guidelines.md | 人工化改写细则与风险边界,约束自然过渡、轻冗余和拆句解释不得破坏学术语体 | Step 6 |
prompts/reference_citation_prompt.md | 引用铁律 | Step 4 |
workspace/references/verified_references.yaml | 文献池 | 必须加载 |
| 文件 | 说明 |
|---|---|
scripts/references/reference_engine.py | 多源搜索 + DOI验证 |
scripts/references/reference_merger.py | 文献合并去重 + 选出最相关 x 篇 |
scripts/document_exporter/ | Word导出 + 图片插入 |
scripts/content/merge_drafts.py | 章节合并 |
scripts/aigc/detect.py | AIGC检测 |
scripts/aigc/technical_detect.py | 技术论文 AIGC 检测 |
scripts/charts/manifest_builder.py | 从正文 [image_N] 与 image-requirement 生成或更新 images.yaml |
scripts/charts/source_writer.py | 根据 images.yaml 准备并校验 .mmd/.dot/.puml 源码文件 |
scripts/charts/render.py | 按 Mermaid、Graphviz、PlantUML 渲染 PNG |
scripts/charts/markdown_updater.py | 将已渲染图片回填为 Markdown 图片引用 |
scripts/charts/validate.py | 校验源码、PNG、占位符和用户待补截图状态 |
致谢生成位于 Step 4(与摘要同阶段),输出文件为 workspace/drafts/致谢.md,由 merge_drafts.py 在合并阶段自动纳入终稿。
注意:致谢不计入七章正文结构,但属于论文交付的必备内容之一。