前言¶
給 agent 接視覺小說或 galgame 時,常見做法是把整段劇本塞進上下文,或只暴露「選 1/2/3」這類粗接口。劇情推進、存檔回溯、多周目和選項理由很難和真實遊玩節奏對齊。galbook 把「逐句讀、自己選並寫理由、存檔讀檔、看畫面」收成一套庫,並同時提供 HTTP、JSON API、MCP 和 CLI,方便掛到 DeepSeek Harness(DSH)或其他能發請求、能調工具的 agent 上。下面介紹它是什麼、能做什麼,以及在 DSH 裏怎麼裝、怎麼用。
這是什麼¶
galbook 由維護者 CHET-LI 維護,倉庫爲 DSH-galgame-galbook。在 SkillHub 插件目錄 中歸類爲工作流。
核心定位:讓 agent 像人一樣玩 galgame / 視覺小說——一句一句讀劇情,遇到選項自己選並寫理由,支持存檔、讀檔、回到上個選項、多周目解鎖隱藏線。換場景時會描述背景和立繪;第一次見到某張 CG 時,圖可與文字一併返回;可用 galbook_look 查看當前畫面。多個 agent 可同時玩同一本書,進度互不干擾。
實現側:運行時以 Python 標準庫 爲主(README 寫明無額外依賴);npm 包 galbook 當前版本 1.2.6(見 package.json),許可證 MIT。演示故事與圖在 galbook/demo/ 下爲 CC0。
核心功能¶
遊玩與 agent 行爲¶
- 文本推進:
next逐句讀;choose帶選項編號與reason記錄選擇理由;自動存檔等機制見 HTTP 返回說明。 - 多元玩法(通過 URL 參數或等價接口開啓):H 場景摺疊/全文/跳過、鐵人模式(不可存讀檔回溯)、全收集提示、英文界面、人設
persona、隨機選項、畫廊gallery、行爲畫像profile、二週目skip已讀、畫面描述與look等。完整字段見倉庫 docs/AGENTS.md。
四種接入方式¶
| 方式 | 適合 | 怎麼起 |
|---|---|---|
| 純文本 HTTP | 任何能發請求的 agent,省 token | python3 -m galbook serve --books books,再 GET /play/t?agent=名字 讀,?do=next / ?do=choose&i=2 推進 |
| JSON API | 需要結構化字段 | 同上,/play/?format=json |
| MCP | Claude Desktop、Codex 類、DeepSeek Harness | stdio:python3 -m galbook mcp;也支持 Streamable HTTP |
| 命令行 | 只有 shell 的 agent | python3 -m galbook do next n=20,輸出最後一行即下一步命令 |
OpenAI function-calling 工具定義可導出:python3 -m galbook tools。
網頁觀戰與劇本導入¶
- 啓動
serve後可在網頁查看每個 agent 進度、選項與理由;人也可以自己玩。 - 導入器支持 QLIE、吉里吉里 KAG / TyranoScript、Ren’Py、NScripter、自帶
.gal等(分支與路線);另支持 VNTextPatch 等導出的文本(20 多種引擎,線性讀)。封包需先用 GARbro 等工具自行解開。詳見 docs/IMPORTERS.md、docs/ENGINES.md。
與 DSH 的組合包¶
根目錄 package.json 聲明瞭 DSH 組合包(cordis.patch.yml),安裝後多出 16 個 galbook_* 工具。倉庫還提供 Anthropic Skill 格式技能文件、dsh 適配示例(integrations/deepseek-harness/)、verify_claims.py 自檢腳本。
版權:倉庫僅含代碼與自寫演示故事。遊戲劇本、圖片、音樂歸原作者/廠商;請只導入自己合法擁有的內容,勿上傳或分發導出的劇本與圖片。galbook 不帶解包/解密工具,也不運行遊戲 exe。
安裝與啓用¶
DSH 側任選其一(以 README 原文爲準):
- 插件面板:安裝 → 來源填
github:CHET-LI/DSH-galgame-galbook,重啓 Harness。 - 一條命令安裝(自動找 profile、備份、填路徑):
python dsh-plugin/install.py
細節與卸載見倉庫 dsh-plugin/README.md。
連不上 GitHub 時,可用本地目錄或 Release 中的離線包 galbook-1.2.6.tgz(Releases latest);npm 包裝完即用。Node 要求 >= 18(package.json engines)。
安裝前請自行查看倉庫源碼與 MIT 許可證;插件在當前 dsh 進程權限下運行,勿在未審計的情況下安裝不可信來源。
典型用法¶
本地試玩演示書¶
README 中的 30 秒試玩流程(需已有倉庫源碼目錄;正文任務禁止引導 git clone,請從 Release 源碼包或已下載目錄執行):
python3 -m galbook demo --books books
python3 -m galbook serve --books books
服務默認 http://127.0.0.1:8765/play/。讓 agent 用 HTTP GET 推進,例如:
GET http://127.0.0.1:8765/play/t
GET http://127.0.0.1:8765/play/t/fog-harbor/alice?do=new
GET http://127.0.0.1:8765/play/t/fog-harbor/alice?do=next
GET http://127.0.0.1:8765/play/t/fog-harbor/alice?do=choose&i=2&reason=她看起來很累
玩法說明頁 /play/t(英文加 ?lang=en)可直接放進 system prompt。
MCP(含 DSH)¶
stdio 示例:
python3 -m galbook mcp --books books --data play-data --book fog-harbor --agent alice
配置可參考 examples/mcp_config.example.json。serve 自帶 POST /mcp?book=…&agent=…,可多 agent 共用一個服務;對外部署需 --token 或 --tokens tokens.json(默認僅監聽 127.0.0.1)。
導入自有劇本¶
python3 -m galbook detect 解包目錄
python3 -m galbook build --src 解包目錄 --out books/我的書/story --assets-dir books/我的書
適用場景與注意¶
適合:要在 agent / DSH 工作流裏評測「會不會讀劇情、會不會寫選項理由」;要多 agent 並行玩同一本書做對照;要用 MCP 或 HTTP 把視覺小說接進 Harness 而不自寫解析器。
注意:
- 插件與
serve/mcp子進程共享本機權限;公開服務務必配置令牌。 - 線性引擎依賴外部文本導出,真機驗證程度因引擎而異(README 已說明部分格式尚未用真遊戲導出驗證)。
- 單元測試:
python3 -m unittest discover -s tests -v;維護者註明在 Python 3.9 / 3.12 / 3.13(Linux)等環境跑過。
結尾¶
galbook 把視覺小說的「讀—選—存—回溯—看 CG」收成統一協議,並用 DSH 組合包把 galbook_* 工具直接掛進 Harness。需要目錄元信息可打開 SkillHub 插件頁;源碼與文檔以 GitHub 倉庫 爲準。DSH 生態強調「一切皆插件」;SkillHub 爲社區目錄,與 DeepSeek / 幻方無官方從屬關係。