renpy-故事提取技能 是做什麼的?
專門用於 Ren'Py 視覺小說故事參考工作流程的 Codex 技能:適用於 NotebookLM 資料來源、私有知識庫、RAG、敘事分析、在地化審查與寫作支援。
概述
此技能提供一套工具,可從 Ren'Py 專案中提取結構化故事資料,便於整合至 LLM 工作流程、知識庫與分析管道。其主要目標包括:
- 從
.rpy檔案中提取對話、角色與分支敘事。 - 轉換為 NotebookLM 與私有知識庫相容的結構化格式。
- 支援 RAG(檢索增強生成)索引的最佳化輸出。
- 為在地化團隊啟用敘事分析與逐行對話審查。
- 簡化視覺小說劇本的寫作引用與版本比較。
支援的平台
此技能設計用於基於 Codex 的環境,例如:
- Claude Code:作為自訂技能檔案載入,用於 CLI 輔助故事提取。
- Cursor:透過 Cursor 的規則或指令面板使用。
- 其他 Codex 實作:與支援技能規範的 AI 編碼工具相容。
運作原理
此技能會掃描 Ren'Py 專案中的 .rpy 檔案,並執行下列操作:
- 剖析敘事樹:識別
label、menu、if/else區塊與對話行。 - 過濾程式碼雜訊:跳過 Python 區塊、設定變數與非敘事函式,只保留角色對話與分支點。
- 輸出結構化區塊:支援區塊式輸出(例如 Markdown 或 JSON),其中包含說話者、臺詞文字與條件標記(如
if love_points > 5)。 - 分塊與索引就緒:輸出可輕鬆嵌入向量資料庫以進行 RAG 搜尋,或轉換為知識庫文檔。
使用方式
要在支援的編輯器中使用此技能:
- 將
SKILL.md內容複製到您偏好平台的技能/規則目錄中。 - 開啟包含
.rpy檔案的 Ren'Py 專案。 - 向 AI 發出指令,例如:
- 「從此 Ren'Py 專案中提取所有角色對話。」
- 「為故事節點 'chapter1' 建立 RAG 就緒的摘要。」
- 「比較 'script.rpy' 中對話的原始版本與在地化版本。」
- AI 會使用技能定義來建構其回應,並輸出結構化資料。
範例輸出
對於典型的 .rpy 區塊:
label start:
e "你好,冒險者。"
menu:
"回應 A":
e "你選擇了 A。"
"回應 B":
e "你選擇了 B。"
技能可能會輸出:
{
"scene": "start",
"lines": [
{"speaker": "e", "text": "你好,冒險者。", "conditions": []},
{"speaker": "e", "text": "你選擇了 A。", "conditions": ["choice == 'A'"]},
{"speaker": "e", "text": "你選擇了 B。", "conditions": ["choice == 'B'"]}
]
}
自訂與擴充
使用者可以修改技能中的指令提示來:
- 指定輸出格式(Markdown、JSON、CSV)。
- 依角色、章節或變數狀態進行篩選。
- 包含或排除特定的
.rpy檔案。 - 與在地化
.rpy檔案整合以進行並排審查。
授權條款
此技能根據 MIT 授權條款 提供,允許在個人與商業專案中自由使用與修改。請參閱本儲存庫中的 LICENSE 檔案以取得完整詳細資訊。
由 atmostfair 為視覺小說開發者社群維護。