Communitygithub.com

100x-video-reverse

將一條或多條本地參考影片逆向工程成可驗證、可生成、且可在 Agent 對話中直接審閱的原片、鏡頭幀板、資產庫與分段生成方案。

100x-video-reverse 是什麼?

此技能用於將參考影片反向拆解為標準化的逆向封裝包,讓開發者或 AI 代理能直接審閱、驗證及後續生成。它支援多平台(如 Claude Code、Codex、Cursor),並透過一系列 Python 腳本(如 `prepare_evidence.py`、`materialize_reverse_media.py`、`validate_reverse_package.py`、`digest.py`)自動化處理流程,包括建立源檔案指紋、偵測鏡頭邊界、提取關鍵幀、校驗資產一致性,與生成符合 output-contract 的 JSON 封裝。其核心價值在於提供一個不可篡改、可追溯的證據基礎,確保逆向結果不包含未經確認的推測,並在修訂時只影響受更動的欄位。它嚴格遵守邊界規則,絕不代替下游生成或上傳原始影片,且所有營運標籤與敘述預設使用中文,而英文提示詞與技術 ID 保持原值。

相容平台✓Claude Code✓Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/kezd088/100x-skill-tiktok/tree/main/skills/100x-video-reverse

在你喜歡的 AI 中提問

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

說明文件

100X Video Reverse v2.3

將參考影片轉成用戶可直接審閱、下游生成 Skill 可消費的標準逆向封裝包。預設只分析和驗證,不呼叫付費生成、不上傳原影片、不發布素材。

開始前

  1. 確認用戶提供的影片可讀和授權邊界。用戶未指定輸出目錄時,直接使用當前工作區下 outputs/100x-video-reverse/<video-stem>-<timestamp>/,不為目錄選擇額外追問;始終唯讀來源檔案並輸出到新的獨立目錄。
  2. 始終閱讀 workflow.md、output-contract.md 與 native-output.md。進行模型分析時再讀 analysis-prompt.md。涉及商業文案、密集剪輯、外部上傳或準備交給生成環節時讀 failure-gates.md。只有評估、替換或升級本 Skill 時才讀 golden-baseline.md。預設交付由 scripts/digest.py 從機器封裝確定性生成,Agent 不手工重排片段。
  3. 檢查 ffmpeg、ffprobe、Python jsonschema 和本機讀寫權限。缺少 jsonschema 時驗證器必須硬停止;只在隔離環境補依賴,不做全域安裝。呼叫任何外部模型前,即時核對官方模型列表和輸入限制;用戶指定模型優先。不能核實時停止外部呼叫,但繼續完成本機證據封裝。

執行流程

  1. 用 scripts/prepare_evidence.py 建立來源檔案指紋、規格、雙門檻切點提議、稠密幀和獨立音軌。自動切點只是診斷訊號,不是真實鏡頭邊界。
  2. 同時查看完整影片與證據封裝,優先使用當前 Agent 已有的本地媒體理解能力,不要求用戶另配 API。只有當前任務已明確授權外部語義分析時,才可沿用金樣的 Google 官方 gemini-3.7-flash;呼叫前必須從官方模型列表核實真實 ID 和影片輸入能力,不可用時保留原始錯誤並停止外部階段,不靜默換舊模型。按 references/analysis-prompt.md 校正鏡頭時間軸,區分可觀察事實、推斷和未知,不以固定間隔代替語義切鏡。
  3. 建立穩定資產 ID 和跨鏡頭一致性錨點,覆蓋人物、商品、場景、道具、服裝、音訊與文字。看不清或聽不清的品牌、價格、功效、台詞和螢幕文字不得補寫。
  4. 生成完整的 reverse.json:鏡頭、四類關鍵幀、資產引用、音訊/字幕、通用提示詞、模型適配提示詞、分段方案、拼接說明和 must_not_change。每個分段還要包含 execution_plan:目標時長、生成狀態、選定模型、生成方式和輸入素材;沒有即時核實模型能力時明確寫 needs_model_selection,不得偽裝成可執行。
  5. 用 scripts/materialize_reverse_media.py 將鏡頭幀和資產截圖物質化到封裝內相對路徑,並生成 materialization_manifest.json。既有媒體只有在來源 SHA-256、請求時間戳和檔案 SHA-256 全部匹配 provenance 時才復用;否則硬停止,不覆蓋。
  6. 用 scripts/validate_reverse_package.py 做媒體與契約預檢。硬錯誤必須修復後才能繼續;警告必須保留並解釋,不能改成通過。
  7. 嚴格驗證通過後執行 scripts/digest.py,再按 native-output.md 原樣交付。Codex 使用 --format fragment --fragment-dir <本輪 thread 可視化目錄>:首 tab 是左側窄 9:16 播放器 + 右側分段素材板,每段固定同組展示首幀/高光幀/尾幀;圖片可拖出 JPEG 預覽,需要原圖時複製封裝內原幀路徑。「鏡頭定位」保留逐鏡聯動,點擊任一三幀或鏡頭都會暫停並定位影片,先顯示中文操作說明,再顯示所屬分段的英文生成提示詞。窄屏改為上下結構但三幀仍同組。其他客戶端預設使用 --format md;判斷不了客戶端能力時不得賭內聯協定。

用戶給予觀看回饋時,把每條回饋對應到具體鏡頭、資產或提示詞欄位,並明確標為「用戶偏好/修正」,不要反寫成來源影片觀察事實。新建修訂封裝,只改受影響欄位和媒體,再完整驗證;不覆蓋上一版。

命令

python <skill-root>\scripts\prepare_evidence.py --video <source.mp4> --out <new-package-dir>
python <skill-root>\scripts\materialize_reverse_media.py --video <source.mp4> --package <new-package-dir>\reverse.json --source-manifest <new-package-dir>\source_manifest.json
python <skill-root>\scripts\validate_reverse_package.py --package <new-package-dir>\reverse.json --source-manifest <new-package-dir>\source_manifest.json --require-media --report <new-package-dir>\validation.json
python <skill-root>\scripts\digest.py --package <new-package-dir> --format md
# Codex 內聯;多封裝時改用 --out-root,自動生成 1 個批次總覽 + N 個獨立詳情
python <skill-root>\scripts\digest.py --out-root <batch-root> --format fragment --fragment-dir <thread-visualization-dir>

<new-package-dir> 必須不存在或為空。不要用 --out 指向來源影片目錄。

不可突破的邊界

  • 逆向封裝通過驗證,只說明結構、證據和引用可執行;不代表最終影片視覺相似度達標。
  • 不在本 Skill 內生成、重試生成、做後期或評分。它們應由獨立 Skill 消費本輸出契約。
  • Agent 原生回覆只是 reverse.json 和封裝內媒體的呈現層,不是第二份業務真來源;任何修訂先改機器封裝,再重新整理當前回覆。
  • 點擊鏡頭顯示的是該鏡頭所屬生成分段的提示詞;機器契約的生成單位是分段,不得偽稱存在獨立逐鏡頭提示詞。
  • 預設可見的營運標籤、狀態、資產類目和生成方式使用中文;模型 ID、素材 ID、逐字證據和英文生成提示詞保持原值。歷史封裝的人讀欄位若是英文,只能提示並保留原文,不由 digest 偽造翻譯。
  • 不因供應商當前限制把「固定 10 秒切片」寫成鏡頭真相。優先按真實鏡頭和敘事邊界分段;驗證器的 10 秒僅是可配置的下游相容警告。
  • 未得到明確授權時,不把本機影片上傳到公網 URL、物件儲存或第三方服務。
  • 不複製許可證不明或用途相反的候選程式碼,只吸收經金樣驗證的方法和失敗經驗。

完成標準

完成時必須存在:source_manifest.json、evidence/evidence_manifest.json、證據媒體、reverse.json、materialization_manifest.json 和 validation.json;嚴格媒體驗證為零硬錯誤。Codex fragment 的首 tab 必須展示完整時長預覽;桌面端使用窄播放器列 + 寬分段素材板,每段固定首/高光/尾三個槽位並保持同組,缺失素材顯示錯誤槽位。三幀拖曳至少產生可用 JPEG 檔案,原圖透過複製封裝內路徑取得;點擊三幀或鏡頭能定位並查看所屬分段提示詞。營運預設層使用中文,英文提示詞按需展開;其餘五塊隨後展開。多封裝必須先給輕量批次總覽,再按編號給每條獨立詳情,失敗條目不能消失。機器封裝路徑仍須在正文給出。--legacy-unverified-media 只允許審計歷史封裝,禁止用於新交接。

已知局限

  • fragment 內的「原片」是預算內完整時長低碼率 H.264/AAC 展示副本,不是第二份來源檔案;原路徑與 SHA-256 仍以 source_manifest.json 為準。單片段受 1 MB 上限約束,裝不下時明確降級為幀圖,不截斷影片。
  • fragment 直接拖出的是預算內 JPEG 預覽衍生圖,不是封裝內原幀;拖拽同時提供瀏覽器 File、Chromium DownloadURL、data URI 和原幀路徑。目標應用是否接受對應拖放格式仍由其自身決定;要無損取得原圖時使用「複製原幀路徑」。
  • Claude Code Artifact 路徑尚未做真實宿主驗收;無法確認渲染時回退到 --format md。

Individual skills in this repo

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

相關技能