Communitygithub.com

robertomanfroi/videos-opus

編輯手機錄製的影片,將其轉換為 Reels 的入口。每當學員要求編輯影片、製作 Reel、轉換影片、貼上影片路徑或詢問如何編輯時使用。自動尋找影片、檢查是否可用、詢問風格(若缺少)、委派給對應風格技能(estilo-celular、estilo-editorial、estilo-explicativo、estilo-colagem、estilo-anuncio),並將完成的影片放入「prontos」資料夾。

videos-opus 是什麼?

此技能作為一個全面的影片編輯入口,專為非技術用戶設計,特別是那些想要將手機錄製的影片轉換為專業 Reels 的學員。它自動化整個工作流程:首先,透過檢查最近的檔案或直接使用提供的路徑來定位影片;然後,驗證影片是否合適(例如,長度、方向、音訊)。如果風格不明確,它會提示使用者一次,並根據需求將任務委派給專門的風格技能:celular(簡單自然)、editorial(優雅排版)、explicativo(解說性)、colagem(拼貼風)和 anuncio(廣告)。此技能支援 Claude Code 和其他基於檔案的 AI 代理平台。它維護一個專案系統,處理渲染進度,並透過提供增量版本(-v2、-v3)來簡化調整。最終輸出是準備好上傳的影片,放置在指定資料夾中。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/robertomanfroi/videos-opus/tree/HEAD/kit/.claude/skills/editar

在你喜歡的 AI 中提問

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

說明文件

Editar — 入口

學員不知道(也不需要知道)資料夾、路徑或終端機。她在手機上錄製,將影片傳到電腦(下載、桌面、WhatsApp Web、Google Drive…),然後用中文與你對話。她看到的一切就是回應和完成的影片。請用簡短、平實的中文說話,避免專業術語。

M=.claude/skills/_motor · K = videos-opus 技能的啟動器:"<VO>\bin\node.exe" "<VO>\scripts\video.mjs" kit,其中 <VO> 是 videos-opus 技能所在的資料夾(包含要求你閱讀此指南的 SKILL.md)。它會將可攜式程式加入路徑,並在工具包的專案資料夾中執行所有操作($K pasta 可顯示該資料夾)。本指南中的路徑(video-projects/…、prontos/…、perfil.json)都是相對於該資料夾的:若要讀取或編輯檔案,請與此資料夾的路徑合併。$K --em <subpasta> … 會在子資料夾內執行。不要直接使用 npx、Python 或 node:一切都要透過 $K 執行。

強制性頂級視覺標準(適用於所有風格): 字體絕不加外框、絕不使用光線/螺旋、火花、白色閃爍或抖動;透過柔和陰影或深色遮罩確保可讀性;動作緩慢流暢;音效低調。詳情請見 videos-opus 技能 SKILL.md 中的「頂級視覺標準」一節。此標準優先於任何風格指南所說的內容。

步驟 0 — 繼續還是調整?

在尋找新影片之前,請先檢查狀態:

  • 調整要求(「刪掉…部分」、「更改字幕」、「上一部影片」)→ 讀取 prontos/ULTIMO.json:它會記錄最後交付影片的 slug 和專案名稱。直接前往該專案的調整流程。
  • 有任何 video-projects/*/projeto.json 的 etapa 不是 entregue,且在過去 24 小時內有修改 → 詢問: 「有一個進行到一半的影片(<slug>,停在 階段)。要繼續嗎?」若是,則從該階段繼續。
  • 正在進行的渲染(video-projects/<slug>/renders/progresso.json 中有 fase: renderizando)→ $K node $M/renderizar.mjs <slug> --esperar。

步驟 1 — 尋找影片

學員說執行
貼上了一個路徑(有或無引號)$K node $M/achar-video.mjs "<caminho>"
「我最新上傳的影片」、「我剛傳的」或什麼都沒說$K node $M/achar-video.mjs --ultimo
「你覺得是哪個影片?」或上一步傳回多個結果$K node $M/achar-video.mjs

讀取 JSON {ok, video, motivo, aviso, confirmar, candidatos[], checks{}}:

  • ok: true 且 confirmar: false → 使用 video 繼續(腳本已將副本儲存在 meus-videos/ 中)。用一行話確認:「找到 IMG_2041.mp4,今天 14:02,長度 3 分鐘 — 正在編輯。」
  • ok: true 且 confirmar: true → 先詢問以免浪費時間:「是這個嗎:IMG_2041.mp4,昨天 14:02 收到,長度 3 分鐘?」(該影片不在 meus-videos 中,或是超過 2 小時前收到的 — 可能是下載中的 WhatsApp 影片)。
  • aviso(影片超過 3 分鐘)→ 告知並詢問要使用哪個部分;Reel 最長 90 秒。
  • motivo: "vários candidatos; escolher" → 顯示最多 4 個 candidatos,附上名稱、日期/時間和大小,並詢問是哪一個。接著使用所選路徑再次執行。
  • motivo: "nenhum vídeo recente encontrado" → 解釋:「找不到任何新的影片。請將手機上的影片傳到電腦(例如:在 WhatsApp Web 上傳給自己並下載;它會出現在下載資料夾中),然後通知我,或在此處貼上檔案路徑。」
  • 任何其他 motivo(無聲音、橫向、太短、正在上傳、空間不足)→ 用一句話重複原因並停止。橫向影片:建議重新直立錄製。切勿在一個不合適的影片上花費數分鐘進行轉錄。

腳本會自動等待檔案停止增長(下載尚未完成)。不要試圖繞過。

步驟 2 — 風格

理解要求:

她說風格技能
手機、原始、「看起來像在 Instagram 上編輯過」、自然、簡單、未指定風格且影片是她自己在說話celularestilo-celular
編輯、雜誌、時尚、優雅、「有編輯過的樣子」、有襯線字體editorialestilo-editorial
解說、新聞、解釋、「上面有圖片」、教育性explicativoestilo-explicativo
拼貼、剪貼、剪下的照片、剪貼簿colagemestilo-colagem
廣告、廣告、流量、贊助、銷售、優惠anúncioestilo-anuncio

如果她沒說也無法推斷,問一次,用 5 行顯示目錄(名稱 + 一句話描述)。如果該風格的技能尚未安裝,請告知並提供 celular 風格。

步驟 3 — 個人資料

讀取工具包工作目錄中的 perfil.json。如果不存在或缺少 nome/usuario,請按照 .claude/skills/perfil-criadora.md 的指示,在一則訊息中詢問所有必要的資訊。繼續之前先儲存。

步驟 4 — 額外項目(僅在有意義時執行)

  • 截圖(預設:無截圖)。如果影片涉及結果、數字、評論、貼文或個人檔案,請在轉錄之前,用一行話詢問:「需要在影片中加入截圖嗎?現在請將它們放入桌面上的 Meus prints 資料夾;否則我將不加入截圖,您可以之後再要求。」不要卡住等待:若無回應,則不加入截圖,並在交付時提供調整選項。此規則優先於風格技能關於要求特定螢幕截圖的指示。最多檢查最近的 12 張截圖,僅限於一張聯絡表。
  • 廣告:一次詢問產品/優惠和行動呼籲(CTA)。
  • 絕不憑空創造截圖、數字、標誌或推薦。如果缺少,請要求確切的螢幕截圖或將其省略。

步驟 5 — 委派

閱讀所選風格的 SKILL.md,並從頭到尾執行其流程(專案 → 剪輯 → 審查 → 截圖 → 合成 → snapshots → renderizar.mjs)。專案 slug:使用 2–4 個主題詞彙,小寫,以連字號連接(例如:duas-noites-engrene)。如果 novo-projeto 表示名稱已存在,請使用它建議的名稱(例如:-2)。

在每個耗時階段之前,提供一行狀態更新:「正在轉錄 — 可能需要幾分鐘。」/「正在渲染最終影片…」。拼貼風格:事先警告這是最耗時的(人物去背 + 渲染:在沒有獨立顯示卡的 PC 上可能超過 40 分鐘),並詢問是否繼續或偏好 celular 風格。將去背任務在背景執行。

步驟 6 — 交付

上一步的 renderizar.mjs 已經檢查、渲染、驗證並複製到 prontos/ 和桌面的 Vídeos editados 資料夾 — 不要再次執行 prontos.mjs。如果它以代碼 3 退出,請執行 --esperar 直到出現 PRONTO。

最終回應,3 到 5 行:

  1. 位置:「完成!檔案在桌面的 Vídeos editados 資料夾中,名為 duas-noites-engrene-2026-10-09.mp4(長度 65 秒)。」
  2. 剪輯內容:停頓、重複、被捨棄的片段(用她的話描述,而非秒數)。
  3. 使用的素材:截圖和標題。
  4. 不確定的地方:轉錄器可能拼錯的名稱、你不確定的片段。
  5. 如何調整:「想要修改什麼?例如說:'刪掉價格部分' 或 '字幕調低一點'。」

絕不發佈、發送或刪除影片。原始影片保留在原處(工具包中的 meus-videos/ 內也有一份副本)。

調整(學員在交付後返回)

僅修改她要求的部分,在 prontos/ULTIMO.json 所指的專案中(或她指定的專案),然後使用 $K node $M/renderizar.mjs <slug> 渲染一次。快速對照表:

要求修改內容重新執行的步驟
刪除/縮短某個片段assets/keeps.json剪輯 → 轉錄 → 組裝 → 渲染
字幕調高/調低reel.json (capTop)組裝 → 渲染
更換/移除截圖或標題src/index.template.html組裝 → snapshots → 渲染
字幕中的錯字assets/caption-fixes.json({"錯誤": "正確"},忽略大小寫/標點符號)組裝 → 渲染
強調其他詞assets/enfase.json(editorial)/ assets/emphasis.json(colagem)組裝 → 渲染
更換風格使用其他 slug 建立新專案全部

renderizar.mjs 會以 -v2、-v3 的形式交付,不會覆蓋舊檔。剪輯片段後,元素時間會改變:在組裝之前,使用 ancoras.mjs 重新計算。

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

相關技能