Community寫作與編輯github.com

novel-architect — 商業連載網文創作技能

用於中文商業連載網文的工作流程技能,內含審查關卡、狀態守衛與品質訊號,協助 AI Agent 穩定完成開書、續寫、審校與長線維護。

novel-architect — 商業連載網文創作技能 是什麼?

novel-architect 是專為長篇中文商業連載網文設計的 Agent 技能(版本 3.0.0),目標是以「腳本狀態守衛 + 模型文學判斷」的混合方式,讓 AI 代理(如 Claude Code、Cursor)能夠自主執行開書、續寫、審校、修稿和長線維護的完整工作流程。它定義了嚴格的開發流程:開書必先建立市場定位(market pack)與真相源(src/),續寫採「prepare → beat competition → write → review → model signals → review → commit」閉環,前三章需通過專項審查(first3-review)才能繼續。技能內建 12 個品質訊號(如 anti-ai、blockbuster、character_voice)與嚴格的 gate 審查機制,只有 `gate.passed=true` 才能 commit,確保每章都有可見爽點、角色聲紋一致且無 AI 味。支援多種平台(玄幻、都市、歷史等),並提供批量審查、卷級審查、基準測試與讀者回饋診斷功能,適合需要高品質、長穩定的商業網文創作環境。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add zhougz520/novel-architect

Installed? Explore more 寫作與編輯 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Novel Architect — 商業連載網文創作 Skill

版本 3.0.0。目標是讓 Agent 以「腳本狀態守衛 + 模型文學判斷」的混合方式,穩定完成中文商業連載網文的開書、續寫、審校、修稿和長線維護。

0. 總原則

把本 skill 當成可自主執行的工作流,不要把 CLI 命令清單轉交給用戶。

  • 用戶負責提供高層創作目標、題材、平台、偏好、限制和重大方向選擇。
  • Agent 負責讀取本 SKILL.md,必要時讀取 references/,自行呼叫 novel_architect CLI,自行讀取產物,自行生成 JSON/正文/修稿,並推進到有效停止點。
  • Python CLI 是確定性工具層,負責專案狀態、索引、帳本、門禁、訊號、hash 和檔案落盤;它不是給用戶手動執行的說明書。
  • 模型負責文學判斷和創作輸出:market pack、beat 選擇、正文寫作、model signal、修稿、反饋診斷。
  • 只有在缺少 shell/檔案工具、專案路徑不明且無法推斷、或需要真正的創作方向取捨時,才詢問用戶。

有效停止點只有這些:章節 gate.passed=true 並已 commit;前三章審校失敗需要重寫開頭或重做 market pack;缺少必要輸入導致無法繼續;工具權限不足;需要用戶在多個重大創作方向中選擇。

1. 運行命令約定

在能導入 novel_architect 的工作區執行命令。優先使用專案倉庫根目錄下的:

uv run python -m novel_architect <command> ...

如果當前環境沒有 uv 但套件已安裝,使用:

python -m novel_architect <command> ...

如果 console script 可用,也可以使用:

novel-architect <command> ...

執行前先確定專案路徑:用戶給出路徑則使用該路徑;用戶只說「這本書/繼續寫」時,先檢查常見 projects/<書名>/ 目錄和 project.json;多個候選專案無法判斷時再問用戶。

review、save-first3-review 等指令傳回非 0 通常表示門禁未過,不代表程式崩潰。此時讀取輸出 JSON、gate.json 或 repair.json,修復後重試。

2. Agent 自主執行契約

必須自己執行的動作

當任務涉及開書、續寫、審校、修稿、改綱、重建、反饋診斷或狀態檢查時,Agent 必須自己呼叫 CLI、讀取輸出、寫入檔案並繼續流程。

不要只回覆:

請執行 python -m novel_architect prepare ...

應當實際執行命令,檢查產物,再繼續下一步。只有環境沒有 shell/檔案權限時,才給用戶命令。

導出的 prompt 都是 Agent 工作項

這些命令會匯出 prompt 或 input 檔案。Agent 需要讀取它們並親自生成對應 JSON/文字,再呼叫儲存命令或更新檔案。

匯出命令產物Agent 下一步
market-openeditorial/market_pack_prompt.md、market_pack_input.json生成嚴格 JSON,呼叫 market-save
beat-candidateseditorial/chXXXX/beat_competition_prompt.md、beat_competition_input.json、beat_options.json選擇/生成最強方案,呼叫 beat-select,再 apply-beat-selection
export-signal-prompts12 個 signal prompt JSON逐個生成 model signal JSON,呼叫 save-model-signal
first3-reviewdata/reviews/first3_review_prompt.md、first3_review_input.json生成含 review_input_hash 和 8 個分數的 verdict,呼叫 save-first3-review
feedback-diagnosedata/feedback/chXXXX_diagnosis_prompt.md、input生成診斷;如需儲存,將診斷寫入反饋 JSON 的 diagnosis 後呼叫 save-feedback
export-title-review-prompt / export-intro-review-prompt書名/簡介審校 prompt生成診斷,必要時更新 market_pack.json、書名/簡介候選或開書資料

不要讓用戶把這些 prompt 黏給另一個模型,除非用戶明確要求這種人工協作模式。

3. 任務入口速查

用戶意圖Agent 應執行的主流程
開一本新書init → market-open → market-save → 補強真相源 → first-10-retention / save-first10-plan → 前三章試生產
繼續寫下一章status → prepare → beat competition → 寫正文 → review → model signals → review → 修稿循環 → commit
修復本章讀取 editorial/chXXXX/repair.json 和 gate.json → 改正文 → review → 必要 model signals → 再 review → 通過後 commit
前三章審校第 1-3 章已提交後執行 first3-review → 生成 verdict → save-first3-review
改綱/改設定修改 src/*.json 真相源 → rebuild → status → 必要時重跑受影響章節 review
卷級/批量體檢batch-review、volume-review、benchmark、status
平台反饋回流save-feedback → feedback-diagnose → 生成診斷 → 更新後續滾動規劃/market pack/章節 notes
拆書建模learn --sample-dir <dir>,再把結論轉成可執行的題材/節奏/章節規劃調整

gen-prompt 只用於用戶明確要求「匯出給外部寫作模型/Claude Code 的獨立提示詞」時。普通續寫不要用 gen-prompt 替代 prepare → beat → writing_task → review → commit 主流程。

4. 開書流程

開新書時,不要直接開始寫第 1 章。先建立市場定位和真相源。

4.1 初始化專案

python -m novel_architect init --project <project_dir> --title <title> --genre <genre> --platform <platform> --premise <premise> --core-hook <core_hook> --protagonist <name>

初始化會生成 project.json、src/、manuscript/、data/、editorial/ 等目錄。初始化只提供骨架,不代表開書策劃完成。

4.2 生成並儲存 market pack

執行 market-open,讀取匯出的 prompt/input,自行生成嚴格 JSON,再執行 market-save。

market pack 必須至少包含:

  • target_platform
  • genre_lane
  • target_reader
  • reader_desires
  • core_sell_points
  • anti_sell_points
  • title_candidates
  • intro_candidates
  • first_10_chapter_retention_plan
  • platform_notes
  • author_constraints

前 10 章計劃中每章必須有 chapter、hook、visible_payoff、drop_off_risk。不要寫「加強衝突」「提高爽感」這種不可執行空話。

4.3 補強真相源

src/ 是人工確認真相源。開書後檢查並補強:

  • src/blueprint.json:前提、核心鉤子、核心衝突、主角目標。
  • src/characters.json:角色身份、欲望、恐懼、弱點、弧線、slug。
  • src/character_voice_bible.json:角色聲紋規則、禁用口吻、行動偏好、情緒洩漏點。結構為 {"schema_version":1,"characters":{"角色名":{...}}};如果檔案還是 skeleton 或角色 needs_completion=true,先補全再正式寫正文。
  • src/world.json:世界/行業/力量規則,只保留服務衝突和爽點的設定。
  • src/taboos.json:絕對不能碰的橋段、AI 味、題材反模式。
  • src/volumes.json:卷級目標和滾動章綱。不要一次性把整本每章寫死。
  • src/genre_config.json:題材打法;內建優先支援玄幻升級、都市逆襲、歷史權謀、懸疑破局,其他題材需更依賴 market pack 和自訂 genre_config。

修改真相源後執行:

python -m novel_architect rebuild --project <project_dir>
python -m novel_architect status --project <project_dir>

不要手動修改 data/ 裡的帳本或派生狀態來「修好」劇情;長期語義修正寫入 src/ledger_overrides.json 或對應 src/*.json,再重建。

4.4 前十章留存計劃

使用 first-10-retention 匯出/生成計劃;必要時自行細化後用 save-first10-plan 儲存。前十章是入口漏斗,規劃應具體到每章的 hook、可見收益、棄讀風險和不能做什麼。

5. 續寫下一章標準流程

每章必須走完整閉環。不要直接根據聊天上下文寫正文。

5.1 狀態檢查

先執行:

python -m novel_architect status --project <project_dir>

確定當前完成章數、gate 狀態、索引健康和待處理風險。不要依賴聊天記憶判斷下一章號。

5.2 PREPARE

python -m novel_architect prepare --project <project_dir> --query "<本章高層創作要求>"

產物:editorial/chXXXX/writing_task.json。這是寫作階段的自主包含任務包,必須讀取。它包含 writer_brief、narrative_context、敘事槽、商業留存欄位、角色聲紋、讀者承諾、輸出格式和硬規則。

第 4 章以後,prepare 會檢查前三章專項審校。正常新書不得使用 --force-after-first3-fail;該參數只用於舊專案遷移或除錯。

5.3 Beat competition

第 1-10 章必須執行 beat competition;第 10 章以後預設也建議執行,除非用戶明確要求快速草稿。

python -m novel_architect beat-candidates --project <project_dir> --chapter <n>

讀取匯出的 prompt,生成或選擇一個策略最強的方案,儲存並應用:

python -m novel_architect beat-select --project <project_dir> --chapter <n> --file <selection.json>
python -m novel_architect apply-beat-selection --project <project_dir> --chapter <n>

選擇標準:可見爽點最清楚、敵人損失最具體、角色按鈕最鮮明、章尾追更理由最強、棄讀風險最低。應用後重新讀取最新 writing_task.json。

5.4 WRITE

根據 writing_task.json 寫正文並儲存到 manuscript/第XXX章-標題.md。標題必須有點擊感,不要只儲存為 第XXX章.md。

正文必須嚴格遵守 writing_task.output_format.field_template:

  1. # 第XXX章-標題
  2. ## 章節資訊
  3. ## 本章大綱
  4. ## 正文
  5. ## 記憶回寫

關鍵要求:

  • 正文不少於 2000 字,目標 2000-2500 字。
  • 使用中文彎引號 “”。
  • 第一段承接上章鉤子;第 1 章則快速建立壓迫、主角欲望和可見機會。
  • 每章必須有普通讀者 5 秒內能複述的可見爽點。
  • 專業流程/術語必須轉譯成錢、權、臉面、身份、關係、秘密、戰力、資源或安全得失。
  • 角色對白必須體現 character_voice_bible,禁止所有人同一種戰略總結口吻。
  • 如製造新的讀者期待,必須在記憶回寫中填寫新增讀者承諾;如兌現期待,必須填寫兌現 ID 和可見證據。

5.5 REVIEW 第一輪

python -m novel_architect review --project <project_dir> --chapter <n>

如果傳回非 0,讀取 editorial/chXXXX/gate.json 和 repair.json,不要跳過。

5.6 模型訊號評估

匯出訊號 prompt:

python -m novel_architect export-signal-prompts --project <project_dir> --chapter <n>

前 10 章、卷首、卷末、高潮、轉折、發布前章節:12 個 signal 都要生成並儲存 model signal。

穩定期最低也要覆蓋:

  • reader_pull
  • visible_payoff
  • blockbuster
  • title_hook
  • character_voice
  • domain_translation
  • story_logic
  • state_guard

儲存每個模型訊號:

python -m novel_architect save-model-signal --project <project_dir> --chapter <n> --signal <signal_type> --file <signal.json>

模型訊號必須輸出嚴格 JSON。若評分低於 7,不得寫 pass。模型 pass 不能覆蓋 heuristic warn/fail;最終採用 strictest merge。

5.7 REVIEW 第二輪與修稿循環

儲存 model signals 後重新執行:

python -m novel_architect review --project <project_dir> --chapter <n>

只有 gate.json 中 passed=true 才能提交。若 passed=false,讀取 repair.json,改正文後重複 review/model-signal/review,直到通過或到達有效停止點。

5.8 COMMIT

python -m novel_architect commit --project <project_dir> --chapter <n>

只在 gate 通過後執行。commit 會推進狀態、重建索引、更新帳本、處理 reader promise 建立/兌現/逾期。不要跳章提交;不要手動改 gate.json 或 signals 來強行通過。

6. 前三章專項門禁

新書第 1-3 章是試生產階段。第 1、2、3 章分別完成 prepare → beat → write → review → model signals → review → commit 後,必須執行:

python -m novel_architect first3-review --project <project_dir>

讀取 data/reviews/first3_review_prompt.md 和 first3_review_input.json,生成 verdict JSON,再儲存:

python -m novel_architect save-first3-review --project <project_dir> --file <first3_verdict.json>

允許繼續第 4 章必須同時滿足:

  • verdict == "continue"
  • bulk_continue_allowed == true
  • 原樣包含當前 review_input_hash
  • 8 個評分全部存在:title_intro_click_score、first_chapter_hook_score、protagonist_desire_score、conflict_speed_score、first_payoff_speed_score、enemy_or_pressure_score、setting_clarity_score、continuation_score
  • 所有評分都是 1-10 數字,且全部 >= 7

如果結果是 rewrite_opening,先修前三章;如果是 redo_market_pack,先重做 market pack、書名/簡介/前十章計劃。不要用 --force-after-first3-fail 正常推進新書。

前三章正文、market pack 或入口輸入變化後,舊 first3_review 會因 hash 過期而阻斷第 4 章以後生產,必須重新執行 first3-review 並儲存新 verdict。

7. 門禁與 12 個訊號

review 生成 12 個訊號、verdict、gate、repair。每次 review 都重新執行 heuristic signal;新鮮 model signal 儲存為 .model.json 變體參與 strictest merge;final signal 取更嚴格結果。

訊號檢測內容失敗處理
anti_aiAI 套話、抽象密度、空段落、直引號hard,必須修
story_logicPOV、資訊來源、力量/商業邏輯、資訊傾瀉hard,必須修
state_guard鉤子、代價、敵人線、必需元素、禁區、逾期 reader promisehard/quality,必須修
emotion情緒弧線、關係動態、後效quality,失敗不可提交
blockbuster壓迫/反制/兌現/代價四段爽點弧線quality,失敗不可提交
visible_payoff錢/權/臉面/身份/關係/秘密/能力/資源/安全得失quality,失敗不可提交
reader_pull開場鉤子、中段懸念、章尾追更、成癮循環quality,失敗不可提交
title_hook章節標題點擊感、標題/檔名一致性、章末鉤子quality,失敗不可提交
character_voice角色聲紋差異、禁用口吻、對白歸屬quality,失敗不可提交
domain_translation專業設定是否轉譯成普通讀者可見得失quality,失敗不可提交
novelty結構/章法/結尾模式重複market,失敗也會阻塞
continuity鉤子、代價、敵人執行緒承接market,失敗也會阻塞

簡單規則:只看 gate.passed。passed=true 才能 commit;passed=false 就修。

8. 長線維護

  • 每章:完整執行 prepare → beat → write → review → model signals → review → repair → commit。
  • 每 3 章:執行 status,檢查 active/overdue reader promises、gate 變化、索引健康。
  • 每 5 章:執行 batch-review --start <a> --end <b>,檢查連續弱項和重複模式。
  • 每 10 章或關鍵節點:執行 volume-review、benchmark,滾動更新 volumes.json 和後續 5-10 章規劃。
  • 每卷結束:檢查卷目標、敵人損失、讀者承諾兌現、下一卷鉤子。
  • 發布後:用 save-feedback 記錄數據和評論,用 feedback-diagnose 轉成下一輪實驗建議。樣本很小時不要過擬合單條評論。

9. 真相源與目錄規則

專案結構:

projects/<書名>/
├── project.json
├── src/                  # 真相源,人工確認設定和規劃
├── manuscript/           # 正文章節 .md
├── data/                 # 派生狀態,可重建,不手動改
├── editorial/            # 每章 brief / writing_task / signals / gate / repair
└── exports/

重要規則:

  • src/ 與 manuscript/ 是 truth input。
  • data/、editorial/ 是執行時/派生產物;不要手動改它們來繞過門禁。
  • 改設定、改卷綱、改角色時修改 src/*.json,再 rebuild。
  • 改正文時修改 manuscript/第XXX章-標題.md,再 review。
  • 長期人工帳本修正寫入 src/ledger_overrides.json,再 rebuild。

10. 禁止事項

不要做以下事情:

  • 不要把 CLI 工作轉交給用戶手動執行。
  • 不要沒有 prepare 就直接寫正式章節。
  • 不要跳過 beat competition 寫前 10 章。
  • 不要 gate.passed=false 還 commit 或繼續下一章。
  • 不要為正常新書使用 --force-after-first3-fail。
  • 不要只儲存 heuristic review 就認為商業品質足夠;關鍵章節必須做 model signal。
  • 不要手動改 gate.json、signals 或 data/ledgers 來製造通過。
  • 不要讓章節沒有標題或只叫 第XXX章.md。
  • 不要讓記憶回寫長期填「無」,尤其是 reader promise。
  • 不要把專業流程寫成會議紀要、授權記錄、複核清單,而不轉譯成讀者可見得失。
  • 不要承諾逐字模仿某位作者或某本現成作品的語言風格。

11. 需要讀取的參考檔案

按需讀取,避免把全部資料一次性塞入上下文。

檔案何時讀取
references/pipeline-spec.md對 PREPARE/WRITE/REVIEW/COMMIT、恢復、hash、新鮮度有疑問時
references/review-spec.md處理 12 signals、model signal、verdict、gate、repair 時
references/story-spec.md不確定章節格式、章節模式、節奏變體、記憶回寫欄位時
references/state-spec.md改狀態、帳本、reader promise、ledger overrides、rebuild 時
references/genre-spec.md題材打法、genre_config、題材 marker、內建 playbook 時
references/learning-spec.md拆書建模和樣本結構學習時
references/longrun-spec.mdbatch/volume/benchmark 和長篇穩定性檢查時

如果實現行為、README 和 references 衝突,以當前 Python CLI 行為為準,並在維護任務中同步文件。

12. 常用命令清單

python -m novel_architect --help
python -m novel_architect init --project <dir> --title <title> --genre <genre> [--platform <platform>] [--premise <text>] [--core-hook <text>] [--protagonist <name>]
python -m novel_architect market-open --project <dir> [--platform <platform>] [--genre-hint <genre>] [--seed-idea <idea>] [--author-intent <intent>] [--constraint <text>] [--stdout]
python -m novel_architect market-save --project <dir> --file <market_pack.json>
python -m novel_architect market-status --project <dir>
python -m novel_architect first-10-retention --project <dir> [--stdout]
python -m novel_architect save-first10-plan --project <dir> --file <first10.json>
python -m novel_architect status --project <dir>
python -m novel_architect prepare --project <dir> [--query <text>]
python -m novel_architect beat-candidates --project <dir> --chapter <n>
python -m novel_architect beat-select --project <dir> --chapter <n> --file <selection.json>
python -m novel_architect apply-beat-selection --project <dir> --chapter <n>
python -m novel_architect review --project <dir> --chapter <n>
python -m novel_architect export-signal-prompts --project <dir> --chapter <n>
python -m novel_architect save-model-signal --project <dir> --chapter <n> --signal <type> --file <signal.json>
python -m novel_architect commit --project <dir> --chapter <n>
python -m novel_architect resume --project <dir> --chapter <n> [--query <text>]
python -m novel_architect first3-review --project <dir>
python -m novel_architect save-first3-review --project <dir> --file <first3_verdict.json>
python -m novel_architect batch-review --project <dir> --start <a> --end <b>
python -m novel_architect volume-review --project <dir> [--volume <n>]
python -m novel_architect benchmark --project <dir>
python -m novel_architect rebuild --project <dir>
python -m novel_architect rebuild-index --project <dir>
python -m novel_architect validate --project <dir> --chapter <n>
python -m novel_architect learn --sample-dir <dir>
python -m novel_architect save-feedback --project <dir> --chapter <n> --file <feedback.json>
python -m novel_architect feedback-diagnose --project <dir> --chapter <n>
python -m novel_architect feedback-summary --project <dir>
python -m novel_architect gen-prompt --project <dir> [--outline-file <path>] [--stdout]

相關技能