編輯規則
請直接遵循,無需再次詢問。如需了解現有哪些工具及其使用方式,請閱讀 video-toolkit。
0. 設定檔與內部規則
- 頻道的設定檔位置如
video-toolkit§0 所述:取工作資料夾上層最近的studio.json;若無,則使用~/.video-studio/config.json中的預設頻道。 找不到 → 提供/studio-setup。 - 設定檔中的
house_rules是使用者自己的決定(例如「不要動麥克風的聲音」)。 它們會覆蓋下方的預設值。當使用者陳述新的固定偏好時,將其以一行簡短文字(附上理由與日期)附加到house_rules中,並告知使用者已儲存。
1. 一切都必須免費
- DaVinci Resolve:免費版,21.0.x。 從不建議升級到 21.1 或更高版本:21.1 將 Python 腳本功能改為僅限 Studio 版,
這會破壞免費版上的 Resolve MCP。
- 不要提議 21.1 專用的 API 功能(SetSpeed、AddTransition、SetFades、NormalizeAudioLevel、 CreateMulticamClip、AutoAlignClips、output blanking)。應提供替代方案(關鍵幀、Fusion、ffmpeg 或 手動 UI 步驟)。
- 不要提議僅限 Studio 版的功能(Voice Isolation、Dialogue Leveler、時間/空間降噪、Super Scale、Magic Mask) 而不說明它們是 Studio 版專用。
- 如果設定檔中的
resolve.edition是studio,則 Studio 功能可正常使用;21.0.x 的限制僅在使用者依賴 應用程式內橋接器時才有效。
- HyperFrames:僅限本地渲染。 使用工具箱的
render_hyperframes或npx hyperframes render。- 絕不執行
hyperframes cloud render、lambda、cloudrun或hyperframes auth login。 - 絕不使用需要 HeyGen 點數的功能:HeyGen TTS/語音、虛擬角色、
media-use resolve --type bgm|sfx(需要 heygen CLI),或任何需要付費的 AI 圖片/音樂/影片生成。請改用工具箱: 使用speak生成語音、sfx_search/sfx_generate處理音效、transcribe處理逐字稿。 - 如果 HyperFrames 工作流程步驟需要上述任一功能,請跳過該步驟或使用免費替代方案,並告知使用者。
- 不要推廣 HyperFrames 桌面應用程式或
hyperframes open:流程是 Claude + CLI 渲染 + Resolve MCP。 網頁版 Studio 預覽僅供使用者自行進行小幅調整。
- 絕不執行
- 其他工具: 優先使用已安裝的工具(ffmpeg、Node、Docker)。不要註冊或連接付費服務。
- 語音: 使用 Kokoro(本地,Apache 2.0 授權)透過
speak生成,並採用設定檔中的語音與速度。不要為頻道影片 使用非商業用途的 TTS 權重。 - 轉錄: 使用工具箱的
transcribe(WhisperX),而不是 Resolve 或 HeyGen 的轉錄功能。除非使用者要求,否則不進行說話者分離。 - 產生的音效/音樂: 使用工具箱的
sfx_generate(Stable Audio Open 1.0)產生,其 Hugging Face 授權已在/studio-setup過程中接受。
2. 資料夾結構
<studio>/
sfx_library/ 共享的已產生音效 + index.jsonl(跨影片和頻道重複使用;toolbox.sfx_library)
recordings/ 來自任何來源的原始錄製檔(預設 recordings.folder):唯讀
_scratch/ 沒有專案資料夾的工具箱輸出
<channel>/ 每個頻道一個資料夾
studio.json 該頻道的設定檔
<ProjectName>/ 每個影片一個資料夾,名稱與 Resolve 專案名稱完全相同
plan.md, script.json, short.json
audio/ 旁白、混音
capture/ 為此影片製作的螢幕錄製
transcripts/ 每檔逐字稿 + <timeline>.timeline.*(時間軸時間)
timeline/ 擷取的軌道佈局
animations/ HyperFrames 專案與渲染輸出
builds/, renders/, audio_preview/
單一頻道的工作室可以直接將 studio.json 和專案資料夾放在 <studio>/ 根目錄下;這樣也行。
- 當 Resolve 專案開啟時,從 Resolve 取得專案名稱(
project_manager get_current);否則與使用者協商決定。 在第一次需要時才建立該資料夾。 - 絕對不要將專案檔案寫入工作室根目錄、其他頻道的資料夾或原始錄製檔旁邊。
3. 原始錄製檔為唯讀
- 錄製檔資料夾(
recordings.folder)絕對不會被寫入:不覆寫、刪除、重新命名或產生側邊檔。 處理過的媒體會以複製方式放入專案資料夾,然後透過媒體池進行交換。 - 使用
recordings.mic_audio_stream進行轉錄。如果錄製檔有額外的音軌(例如桌面音訊、 麥克風的重複音軌),請指出來,未經詢問不要移除或靜音。
4. 除非使用者要求,否則不予變動
- 音訊: 除非使用者要求,否則不要對使用者的聲音進行 EQ、降噪、壓縮或 normalization。
- 影像: 除非使用者要求,否則不要進行調色或銳利化。
5. 工作方式
- 在提交前先預覽: 對於音訊/視覺變更,先將簡短的前後對比樣本渲染到
<project>/audio_preview/(或類似位置),讓使用者決定。 - 先提議,再套用: 在修改時間軸之前,先展示建議的剪輯點、觸發點和疊加層位置。
- 疊加層 → Resolve: 在
<project>/animations/中建立 HyperFrames 專案,以時間軸幀率的mov(含 Alpha)格式 渲染,匯入後放置在空的影片軌道上。如果另一個工作階段可能在animations/中作業,請將一次性疊加層 建立為獨立 HyperFrames 專案,放在同層的資料夾中。 - 人臉安全區: 當有攝影機畫面時,在放置卡片前先測量人臉的位置(使用 ffmpeg 對圖格幀進行取樣); 絕不能遮蓋人臉。
- 隱私: 絕不顯示
channel.never_show中的任何內容。螢幕錄製會捕捉螢幕上的一切—— 請在裁剪範圍的起始與結束幀進行檢查。 - 音效庫: 先搜尋再產生,使用
sfx_mark記錄使用者的評價,絕不刪除音效庫中的檔案(包括被拒絕的)。 將挑選的音效放置在空的音軌上,絕不能放在 Audio 1。