Communitygithub.com

100x-video-reverse

把一条或多条本地参考视频反推成可验证、可生成、可在 Agent 对话中直接审阅的原片、镜头帧板、资产库和分段生成方案。用户说‘反推这条视频’‘反推这几个视频’‘这个视频怎么复刻’‘把视频拆成提示词’‘reverse this video’或需要视频复刻前拉片、证据提取、反推包审计时使用;不用于直接生成视频、发布素材、通用剪辑或字幕烧录。

100x-video-reverse 是什么?

100x-video-reverse is a Claude Code agent skill that 把一条或多条本地参考视频反推成可验证、可生成、可在 Agent 对话中直接审阅的原片、镜头帧板、资产库和分段生成方案。用户说‘反推这条视频’‘反推这几个视频’‘这个视频怎么复刻’‘把视频拆成提示词’‘reverse this video’或需要视频复刻前拉片、证据提取、反推包审计时使用;不用于直接生成视频、发布素材、通用剪辑或字幕烧录。.

兼容平台✓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

Converts a reference video into a standard reverse-engineering package that users can directly review and downstream generation Skills can consume. By default, only analysis and validation are performed; no paid generation is invoked, no original video is uploaded, and no material is published.

Before You Begin

  1. Confirm that the user-provided video is readable and that authorization boundaries are clear. If the user does not specify an output directory, use outputs/100x-video-reverse/<video-stem>-<timestamp>/ under the current workspace; do not ask additional questions about the directory. Always read source files and output to a new, independent directory.
  2. Always read workflow.md, output-contract.md, and native-output.md. Read analysis-prompt.md only when conducting model analysis. Read failure-gates.md when dealing with commercial copywriting, dense editing, external uploads, or preparation for generation. Read golden-baseline.md only when evaluating, replacing, or upgrading this Skill. Default delivery is deterministically generated by scripts/digest.py from the machine package; the Agent must not manually rearrange segments.
  3. Check for ffmpeg, ffprobe, Python jsonschema, and local read/write permissions. The validator must hard-stop if jsonschema is missing; only install dependencies in isolated environments, never globally. Before calling any external model, verify against the official model list and input constraints in real time; user-specified models take precedence. If verification is impossible, stop external calls but continue building the local evidence package.

Execution Flow

  1. Use scripts/prepare_evidence.py to establish source file fingerprints, specs, dual-threshold cut-point proposals, dense frames, and an independent audio track. Auto-cut-points are diagnostic signals only, not real shot boundaries.
  2. Simultaneously review the full video and evidence package, prioritizing the agent's existing local media understanding capabilities; do not require the user to configure an additional API. Only when the current task explicitly authorizes external semantic analysis may the golden sample's Google official gemini-3.7-flash be used; before calling, verify the real model ID and video input capability against the official model list. If unavailable, preserve the original error and stop the external phase; do not silently fall back to an older model. Correct the shot timeline according to references/analysis-prompt.md, distinguishing observable facts, inferences, and unknowns; do not replace semantic cuts with fixed intervals.
  3. Establish stable asset IDs and cross-shot consistency anchors covering people, products, scenes, props, clothing, audio, and text. Do not fabricate brands, prices, claims, dialogue, or on-screen text that is unclear or inaudible.
  4. Generate a complete reverse.json containing: shots, four types of keyframes, asset references, audio/subtitles, generic prompts, model-adapted prompts, segmentation plan, stitching instructions, and must_not_change. Each segment must also include an execution_plan: target duration, generation status, selected model, generation method, and input material. If model capabilities have not been verified in real time, explicitly write needs_model_selection; do not pretend it is executable.
  5. Use scripts/materialize_reverse_media.py to materialize shot frames and asset screenshots to relative paths within the package and generate materialization_manifest.json. Reuse existing media only if all three of the source SHA-256, request timestamp, and file SHA-256 match the provenance; otherwise hard-stop, do not overwrite.
  6. Use scripts/validate_reverse_package.py for media and contract pre-validation. Hard errors must be fixed before proceeding; warnings must be preserved and explained, not silently passed.
  7. After strict validation passes, run scripts/digest.py, then deliver as-is according to native-output.md. Codex uses --format fragment --fragment-dir <current-thread visualization-dir>: the first tab is a narrow 9:16 player on the left + a segment storyboard on the right; each segment displays first frame / highlight frame / last frame as a fixed group. Images can be dragged out as JPEG previews; for originals, copy the original frame path from the package. "Shot Location" preserves per-shot linkage; clicking any three-frame group or shot pauses and locates the video, first showing Chinese operation instructions, then the English generation prompt for the belonging segment. Narrow screens switch to a top-bottom layout but the three frames remain grouped. Other clients default to --format md; if client capabilities cannot be determined, do not gamble on inline protocols.

When users provide viewing feedback, map each piece of feedback to a specific shot, asset, or prompt field and explicitly mark it as "User Preference/Correction"; do not rewrite it as an observed fact from the source video. Create a new revision package, modifying only the affected fields and media, then run full validation; do not overwrite the previous version.

Commands

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 inline; for multiple packages use --out-root to automatically generate 1 batch overview + N individual details
python <skill-root>\scripts\digest.py --out-root <batch-root> --format fragment --fragment-dir <thread-visualization-dir>

<new-package-dir> must not exist or must be empty. Do not use --out pointing to the source video directory.

Non-negotiable Boundaries

  • A validated reverse-engineering package only confirms that the structure, evidence, and references are executable; it does not guarantee that the final video visual similarity meets standards.
  • Do not generate, retry generation, do post-production, or score within this Skill. Those tasks should consume this output contract via independent Skills.
  • The agent's native reply is merely the presentation layer of reverse.json and package media, not a second source of truth; any revision should first modify the machine package, then refresh the current reply.
  • Clicking a shot displays the prompt for the generation segment that shot belongs to; the generation unit in the machine contract is the segment, do not pretend there are independent per-shot prompts.
  • Default visible operational labels, statuses, asset categories, and generation methods use Chinese; model IDs, asset IDs, verbatim evidence, and English generation prompts remain in their original values. If human-readable fields in historical packages are in English, only notify and preserve the original text; do not have digest fake translations.
  • Do not write "fixed 10-second slices" as a shot truth due to current vendor limitations. Prioritize segmentation based on real shots and narrative boundaries; the validator's 10-second limit is only a configurable downstream compatibility warning.
  • Do not upload local videos to public URLs, object storage, or third-party services without explicit authorization.
  • Do not copy candidate code with unclear licenses or opposite use cases; only absorb methods and failure experiences validated by golden samples.

Completion Criteria

Upon completion, the following must exist: source_manifest.json, evidence/evidence_manifest.json, evidence media, reverse.json, materialization_manifest.json, and validation.json; strict media validation must have zero hard errors. The Codex fragment's first tab must display a full-length preview; desktop layout uses a narrow player column + wide segment storyboard, each segment with a fixed three-slot group (first/highlight/last), missing material shows an error slot. Dragging the three frames must produce a usable JPEG file; originals are obtained by copying the package path. Clicking the three frames or a shot must locate the video and display the belonging segment's prompt. The default operational layer uses Chinese, with English prompts expandable on demand; the remaining five panels expand subsequently. Multiple packages must first show a lightweight batch overview, then individual details numbered sequentially; failed entries must not disappear. The machine package path must still be provided in the body. --legacy-unverified-media is only allowed for auditing historical packages; it is forbidden for new handovers.

Known Limitations

  • The "original footage" within the fragment is a full-length, lower-bitrate H.264/AAC display copy within budget, not a second source file; the original path and SHA-256 are still authoritative via source_manifest.json. A single fragment is subject to a 1 MB limit; if it cannot fit, it must gracefully degrade to frame images without truncating the video.
  • Dragging directly from the fragment yields a budget JPEG preview derivative, not the package's original frame; the drag provides the browser File, Chromium DownloadURL, data URI, and the original frame path simultaneously. Whether the target application accepts the corresponding drag-and-drop format is determined by the application itself; to get a lossless original, use "Copy original frame path."
  • Claude Code Artifact paths have not yet undergone real host acceptance testing; if rendering is uncertain, fall back to --format md.

Individual skills in this repo

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

相关技能