劇
AI 短劇製作 · Agent Skills / Production Pipeline

從小說素材,
建立五階段
短劇製作管線

shuohao-skills 是供 Claude Code 與 Codex 使用的 AI 短劇製作 skill 集合。五個自包含模組分別處理改編大綱、角色設定、美術設定、劇本與分鏡,並以 Node.js 腳本執行資料驗證、品質門、報告渲染與投產匯出。

2.9k
GitHub Stars
5
短劇製作 Skills
92
報告組裝器斷言
Apache
2.0 開源授權
01
Repository 定位

五個 Skill 的
短劇製作管線

shuohao-skills 將小說改編工作拆成五種 Agent Skill。每個 skill 都有自己的 SKILL.md、零依賴 Node.js 工具、參考資料、範例與不呼叫模型的 selftest.mjs。

模型負責理解原作與生成內容;腳本負責 schema、統計、品質門、渲染與匯出。大綱的角色、場景與道具編號會傳給下游,劇本再把場次與節拍交給分鏡,降低不同階段的資料漂移。

每一階段都能獨立執行或單獨複製。完成的 JSON 可重新送入 validate、checkup 與 render,五份 HTML 報告也能由根目錄組裝器合成單頁。

shuohao-skills · 主要資料流
大綱→ 角色↔ 美術↔ 劇本→ 分鏡→ 投產包
「分鏡只做輸出,不做新決定。」
— eternityspring/shuohao-skills README
02
安裝與前置條件

Repository clone 與
Skill 軟連結

安裝前確認 Node.js 版本為 18 以上。工具只使用 Node.js 標準函式庫,不需要執行 npm install;模型任務使用目前 Claude Code 或 Codex 工作階段的額度,不需要另外提供 API key。

git clone https://github.com/eternityspring/shuohao-skills.git cd shuohao-skills ./scripts/install.sh

指定安裝目標

安裝腳本會偵測 Claude Code 與 Codex,並以軟連結安裝所有 skill。使用下列參數只安裝單一 skill、限制 Codex 目標或移除連結。

./scripts/install.sh novel-characters ./scripts/install.sh --codex ./scripts/install.sh --uninstall
手動安裝路徑。不使用安裝腳本時,將 skill 目錄連結到 ~/.claude/skills/novel-characters 或 ~/.codex/skills/novel-characters。執行 git pull 後,軟連結會直接讀取更新內容。
03
五個製作模組

從改編決策到
分鏡投產包

五個 skill 共用結構化 JSON 作為階段交接格式。先選擇目前要解決的製作層,再把已完成的上游 JSON 傳入 seed、validate 或 Agent 工作流程。

Outline · 01
/novel-outline
改編大綱
產生改編說明、人物表、爽點表、分集梗概與資產清單;14 道品質門可檢查新稿或既有大綱。
Characters · 02
/novel-characters
角色設定集
整理人物畫像、形象與音色提示詞、角色設定圖;可由 outline.json 預填角色表。
Art · 03
/novel-art
美術設定集
定義場景、敘事道具、一致性錨點、光照與狀態變體;11 道品質門由腳本檢查。
Script · 04
/novel-script
結構化劇本
以場次與節拍流組織動作、台詞、語氣與時長;10 道品質門對帳角色、場景、道具與鉤子。
Storyboard · 05
/novel-storyboard
分鏡與投產
把劇本節拍轉成段、分鏡、分鏡圖與 MiniMax H3 提示詞;17 道品質門並可匯出投產包。

依現有素材選擇入口

目前素材 使用入口 主要產物
小說或短故事 /novel-outline、/novel-characters outline.json、cast.json
已完成 outline.json novel-art seed、novel-script seed art.json、script.json 骨架
已完成 script.json novel-storyboard seed storyboard.json 骨架
五段 JSON 或部分 JSON node scripts/report.mjs 可切換面板的 report.html
04
官方結構與品質原則

可重跑的資料與
確定性檢查

Repository 將生成式工作與確定性工作分開。Agent 撰寫內容;Node.js 腳本處理資料格式、品質門、統計、渲染與匯出。

RULE 01

每個 skill 自包含

每個目錄包含 SKILL.md、人類可讀 README、腳本、參考資料、範例與資產,可單獨複製使用。

來源 · Repository README
RULE 02

品質門由程式判定

大綱、美術、劇本與分鏡分別提供 14、11、10 與 17 道品質門。每個 skill 的 selftest.mjs 不呼叫模型。

來源 · 各 skill README / SKILL.md
RULE 03

JSON 是階段交接格式

上游資料可用 seed 產生下游骨架;完成後可反覆執行 validate、checkup 與 render。

來源 · 各 skill README
RULE 04

報告介面支援中英文

五個 skill 的報告預設中文;render --lang en 會切換英文介面,原始資料內容保持原文。

來源 · Repository README
RULE 05

出圖是可選階段

角色、美術與分鏡可使用 Codex 內建 $imagegen。未安裝 Codex 時仍可交付提示詞與其餘資料。

來源 · novel-characters / novel-art / novel-storyboard SKILL.md
RULE 06

組裝器隔離五份報告

scripts/report.mjs 會處理 CSS 選擇器、報告腳本與圖片相對路徑,並依現有 JSON 產生對應面板。

來源 · Repository README / scripts/report.mjs
05
端到端使用實例

小說素材到
單頁製作報告

以下流程以 Claude Code 的 skill 指令完成內容生成,再以 repository 內的 Node.js 工具組裝報告。檔名僅作為工作目錄示例;實際名稱依專案設定。

~/projects/short-drama · claude code · shuohao-skills
You › /novel-outline ./source/novel.txt
Claude › 請提供總集數、單集時長與題材。 改編幅度預設為「抽核」;已有偏好預設為無。
You › 12 集,每集 90 秒,都市懸疑;保留主角與碼頭對峙。
[建立 outline.json、Markdown 與大綱評審報告] [執行 schema 驗證與 14 道大綱品質門]
You › /novel-characters ./source/novel.txt,使用 outline.json 預填角色
[建立 cast.json、角色提示詞與角色設定集報告] [Codex 可用時,以 $imagegen 產生角色設定圖]
You › /novel-art 使用 outline.json 與 cast.json 建立場景和道具設定
[建立 art.json;檢查一致性錨點、光照、尺度與白底提示詞]
You › /novel-script 使用 outline.json、cast.json 與 art.json 寫前 3 集
[建立 script.json;按語速計算時長並對帳角色、場景與道具]
You › /novel-storyboard 使用 script.json 建立第 1 集分鏡
[建立 storyboard.json、分鏡報告與 MiniMax H3 提示詞] [export 產生每段 prompt.md、Picture 序列與 manifest.json]
You › node scripts/report.mjs --from ./demo --out report.html
report.html · 依現有 JSON 建立五個可切換面板
「有哪幾段,就出哪幾個面板。」
— eternityspring/shuohao-skills README

資料交接與重跑方式

保留每一階段的 JSON,內容修改後直接重跑對應的 validate 與 render。合併報告不複製各 skill 的實作;任一 skill 更新渲染器後,組裝器會在下次執行時採用新版輸出。

06
執行限制

環境、產物與
人工審查邊界

  • Node.js 版本需為 18 以上。開始前執行 node -v。各 skill 腳本只使用標準函式庫,不需要 npm 依賴。
  • 模型仍使用目前工作階段額度。Repository 不要求外部 API key;生成大綱、角色、美術、劇本與分鏡仍會消耗 Claude Code 或 Codex 額度。
  • 出圖需要可用的 Codex。沒有 Codex 時,角色、美術與分鏡 skill 會保留提示詞並跳過圖片;舊版 Codex 若回報需要較新版本,先更新 CLI。
  • 官方驗證環境有限。Repository README 表示只在 macOS 與 Node 24 驗證;Linux 與較低 Node 版本沒有官方實測結果。
  • Repository 沒有設定 CI。修改 skill 或腳本後,在本機執行 for f in skills/*/scripts/selftest.mjs; do node "$f"; done。
  • 分鏡投產包不可任意改層級。storyboard-report.html、manifest.json 與 E01-01/ 等段目錄需維持既定相對位置,否則報告會找不到圖片。
  • 合併報告不是獨立 skill。scripts/report.mjs 只組裝目前存在的 JSON 與各 skill 渲染結果,不取代上游生成與驗證流程。
  • 確定性品質門需要搭配人工評審。品質門檢查 schema、時長、對帳、提示詞格式與列出的製作規則;故事判斷與視覺選擇仍需由製作人確認。
07
進階路徑

模組化導入與
製作管線整合

先用單一 skill 驗證資料格式與品質門,再逐段接入上游 JSON。完整管線需要一致的角色、場景、道具、場次與節拍編號。

進階導入地圖

1. 單獨安裝一個 skill。執行 ./scripts/install.sh novel-characters,先驗證角色拆解、報告與可選出圖流程。

2. 執行全部自測。修改任何腳本前後都執行各目錄的 scripts/selftest.mjs,確認確定性邏輯沒有退化。

3. 固定 JSON 交接契約。將 outline、cast、art、script 與 storyboard 分別存入對應目錄,使用 seed 建立下游骨架。

4. 分離報告與生成參數。使用 --lang 控制報告介面;角色以 --style 選擇出圖風格,分鏡以 promptLang 控制 H3 提示詞語言。

5. 組裝專案評審頁。將現有 JSON 放入五個約定目錄,執行 node scripts/report.mjs --from <demo目錄> --out report.html。

優先閱讀的三份原始資料

① README.md:安裝、五階段管線、工作目錄與報告組裝器。
② novel-outline/SKILL.md:改編參數、輸出 schema 與 14 道品質門。
③ novel-storyboard/SKILL.md:節拍認領、H3 提示詞與投產匯出。

「它是組裝器,不是獨立 skill。」
— eternityspring/shuohao-skills README