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,同時確保作者在每個關鍵編輯中都保持參與。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案