LiPu-jpg/Openwrite

AI小说创作引擎 - 对话式引导创建项目、动态+静态文件防遗忘、多维风格提取与合成、通用技法质量审核、热门题材查看分析、多层渐进式压缩长文本 支持:四级大纲(总纲→篇→节→章)、三层风格合成、伏笔DAG管理、情节弧线-节拍模板驱动写作、去AI味技法

OpenWrite – 用于撰写长篇小说的AI增强型工作台

是什么 – OpenWrite 是一个本地运行的应用程序,允许作者与两个专业AI代理共同创作小说:

  • Goethe – 帮助您组织想法、角色、世界观和滚动式大纲。
  • Dante – 采用已确认的资产,组装适当的上下文,起草一章,执行自动审查,更新故事的“真实”文件,并将结果写入磁盘。

所有这些都位于一个单一的、版本控制的项目文件夹和基于Web的 Studio UI(或等效CLI)内。该系统旨在保持作者意图、情节事实和角色状态在数十或数百章中的一致性。


核心功能

功能 OpenWrite 如何处理
全栈工作室 Web UI 用于创建小说、配置模型、编辑大纲、管理资产、写作、审查、搜索,并导出为 Markdown/TXT/EPUB。
双代理 Goethe = 规划与资产创建;Dante = 上下文组装、起草、事实提取、状态确定。代理仅在作者明确确认差异后才进行写作。
单一真实源 src/ 存放规范的大纲、作者意图、角色和世界文件。运行时数据(手稿、记忆、审查、缓存)位于 data/ 下。
长上下文处理 每章系统构建一个 规范数据包,包含最近章节、滚动大纲、相关角色/状态片段以及最多四条召回的早期段落。
状态追踪 行级内联注释(例如 //**Shen Jin[伤势]:左臂轻伤 -> 已恢复**)记录角色位置、伤势、关系等。冲突会自动检测。
事务性写作 每个小说的锁确保写作、状态更新和文件写入同时成功;失败时系统回滚到快照。
结构化审查循环 37维审查检查作者意图、风格、连贯性、事实一致性等。问题按严重性显示,链接到源文本,并可生成基于差异的修订建议。
私有参考库与RAG 导入旧草稿或外部作品,运行本地 FastEmbed 向量索引(或 OpenAI 兼容嵌入),可选启用 LightRAG 图形化检索以实现实体级推理。
可扩展技能 标准 SKILL.md 文件(或运行时 manifest.yaml 技能)可通过 @skill-id 在回合中调用。技能被沙盒化,且从不绕过作者确认步骤。
模型无关 支持 OpenAI、Anthropic 或任何 OpenAI 兼容端点。模型参数(模型名称、温度、上下文窗口等)在 Studio 的 Model Settings 面板中设置。

快速入门

  1. 克隆并启动
    git clone https://github.com/LiPu-jpg/Openwrite.git
    cd Openwrite
    python3.10 -m venv .venv
    source .venv/bin/activate   # Windows: .venv\Scripts\activate
    python -m pip install -e .
    openwrite studio   # 打开本地 Web UI
    
    在 macOS/Windows 上,也可以双击提供的 启动 OpenWrite.command / 启动 OpenWrite.bat,它会创建一个隔离的运行时,安装依赖项并打开 UI。
  2. 配置模型 – 在 Studio 顶部栏的 Model Settings 中选择 OpenAI、Anthropic 或自定义端点,输入 API 密钥并测试连接。
  3. 创建小说 – 首次运行向导会询问标题和文件夹(默认为 ~/OpenWriteNovels/<Title>)。该文件夹将包含 src/data/ 子树。
  4. 使用 Goethe 规划 – 打开 AI 协作 面板,讨论情节想法、角色、世界观规则。Goethe 提出草案,您批准差异,资产将写入 src/
  5. 使用 Dante 写作 – 从大纲视图中选择一章,设置字数目标,点击 Write。Dante 组装规范数据包,调用 LLM,撰写章节,提取事实变更并更新状态文件。
  6. 审查与修订 – 使用 Review 面板查看自动生成的问题,按严重性过滤,并应用建议的差异。
  7. 导出 – 当手稿完成后,前往 Project Migration 并导出为 Markdown、纯文本或 EPUB。

架构概览

Studio ──┐
Goethe ──┤   → NovelApplicationService (规范数据包、写入/审查/修订、状态管理)
Dante  ──┼─
CLI    ──┘

所有接口共享相同的 操作表面,因此 CLI 和 UI 行为一致。服务将确认的源文件存储在 src/,所有临时数据存储在 data/


许可与社区

  • 许可 – 核心代码采用 Apache-2.0;第三方组件保留其原始许可证(FastEmbed、LightRAG、LiteLLM、Vditor 等)。
  • 贡献 – 运行 python -m pip install -e ".[dev]" 并执行 pytest 检查测试套件。问题和功能请求通过 GitHub Issues 页面处理。
  • 致谢 – 基于 LightRAG(图+向量检索)、FastEmbed(本地嵌入)、LiteLLM(模型网关)、Vditor(Markdown 编辑器)以及 oh-story-claudecode 技能套件构建。

适合人群

  • 需要可靠方式保持角色弧线、世界规则和情节伏笔一致性的多章节小说作者。
  • 希望获得 AI 协助但不愿放弃控制权的写作者——对规范故事文件的任何更改都必须明确批准。
  • 偏好 本地优先 工作流(无需强制云存储)但仍希望可选使用云嵌入或 LLM 端点的团队。

总结 – OpenWrite 是一个功能齐全、本地托管的 AI 代理平台,专为长篇小说写作的长上下文挑战而设计。它结合了规划、起草、自动审查、向量/RAG 检索和版本安全的 UI,同时确保作者在每个关键编辑中都保持参与。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目