Agent skill

Reviewing Ffmpeg Skill Changes

by kajisho5 in kajisho5/ffmpeg-skill

Review a change to the ffmpeg-skill repository for the failures its own contract makes possible — a claim in a result document that is true at one layer and false at the layer a caller reads, a new…

MITAuto-check passedMedia & Creative

Install Reviewing Ffmpeg Skill Changes

skills CLI
$ npx skills add kajisho5/ffmpeg-skill --skill reviewing-ffmpeg-skill-changes -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install kajisho5/ffmpeg-skill reviewing-ffmpeg-skill-changes --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/kajisho5/ffmpeg-skill.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/code-review .claude/skills/reviewing-ffmpeg-skill-changes && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
reviewing-ffmpeg-skill-changes
GitHub stars
1.9k
Token cost
~2.3k tokens
SKILL.md length
1,079 words
Files
4 (incl. references)
Skills in repo
14
Repo updated
First seen
Licence
MIT

At a glance

Review a change to the ffmpeg-skill repository for the failures its own contract makes possible — a claim in a result document that is true at one layer and false at the layer a caller reads, a new…

  • Asked to review a PR
  • SKILL.md covers Establish the review base first, Check the claim at the layer…, Refuse to report what the repo… and Score the change against the…, plus 3 more sections
  • Calls git, python3 and npm
  • Diff in this repository

What it does

Reviewing Ffmpeg Skill Changes is an agent skill from kajisho5/ffmpeg-skill. Review a change to the ffmpeg-skill repository for the failures its own contract makes possible — a claim in a result document that is true at one layer and false at the layer a caller reads, a new flag that reaches the code but not the contract/docs/demo surfaces, a "bug" that docs/design-decisions.md already decided with a pinning test, a fix with no regression test, a new runtime dependency or a raw ffmpeg shell call that breaks the scope boundary, a SKILL.md line added without one trimmed, a review that…

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `references/result-honesty.md`, `references/review-checklist.md` and `references/surfaces.md`).

It sits in Media & Creative, covering Video production and Architecture decision records. It works with FFmpeg. The licence is MIT.

When your agent uses it

  • Asked to review a PR
  • Diff in this repository
  • Authoring code here and needing a pre-commit check
  • Triaging an external review

Example prompts

  • “/reviewing-ffmpeg-skill-changes”

Requirements

  • Python 3

What it can do on your machine

Read from SKILL.md and the folder at commit 008333a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • python3
    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git and npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Reviewing Ffmpeg Skill Changes loads about 2.3k tokens when it runs, and up to ~5.2k if it reads all its reference files. Until then it costs about 203 tokens; SKILL.md has 1,079 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~203
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from kajisho5/ffmpeg-skill at commit 008333a, republished under its MIT licence (© kajisho5). 1,079 words, ~2,263 tokens.

Download SKILL.mdSave it as .claude/skills/reviewing-ffmpeg-skill-changes/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
reviewing-ffmpeg-skill-changes
description
Review a change to the ffmpeg-skill repository for the failures its own contract makes possible — a claim in a result document that is true at one layer and false at the layer a caller reads, a new flag that reaches the code but not the contract/docs/demo surfaces, a "bug" that docs/design-decisions.md already decided with a pinning test, a fix with no regression test, a new runtime dependency or a raw ffmpeg shell call that breaks the scope boundary, a SKILL.md line added without one trimmed, a review that re-derives findings from a summary instead of the tree at the reviewed commit. Use when asked to review a PR or diff in this repository, when authoring code here and needing a pre-commit check, or when triaging an external review or audit report about this codebase.

Reviewing ffmpeg-skill Changes

This repository has an unusual failure mode, and a review that misses it looks thorough while catching nothing. The product is a JSON result document that an agent reads instead of watching the video. A change can be correct at the FFmpeg layer, correct at the Python layer, and still ship a lie at the layer that matters: status: "completed" next to a non-zero exit, verified: true for something the tool never measured, a cut described as lossless when the keyframe snap moved it 1.24 s. The 0.9.1/0.10.0 "honesty fix" (cut.py's mode / keyframe_snapped / duration_delta_seconds, check.py's reason, render.py's check-stage exit code) exists because three such claims shipped and were caught after the fact. Review the claim, not just the code.

The second failure mode is re-reporting decisions. Three review rounds on 2026-09-12 re-reported entries in docs/design-decisions.md, which is why that file exists.

Establish the review base first

Read the tree at the commit under review, not a summary of it and not your own working copy if it has moved.

bash
git fetch origin && git log --oneline -1 origin/main
git diff --stat origin/main...HEAD          # what the branch actually changes
git show origin/main:docs/design-decisions.md | head -40

At least one earlier review reported committed media that is not in git and colour flags that were already validated — both came from reading a summary rather than the tree. Before reporting any finding, name the file and line you read it at, and confirm the symbol still exists there.

Check the claim at the layer the caller reads

For every writing tool touched, trace the success document it prints and ask whether each field is something the tool measured.

fieldthe review question
statuscan this be completed while the exit code is non-zero? (die() must set failed)
verifiedis it the conjunction of steps the tool actually ran, or an assumption?
reencodes_*was a copy fallback taken and reported, or silently assumed not taken?
dropped_non_av_streamsdid the timeline move (track must be dropped, true) or stay (kept, false)?
keyframe_snapped, duration_delta_secondsfor cut: is the measured divergence reported, not rounded away?
modedoes it name the path actually taken (copy vs re-encode)?
error.kindinput / ffmpeg / output / missing_tool / timeout / verification / interrupted — is it the one that happened?
error.retryablemust stay false; a true here invites a blind retry loop

--dry-run claims matter too: info() rewrites wrote X to [dry-run] would write X, and analysis_only tools (probe, check, sync, multicam, scenes, cropdetect, report, silence, loudness, stabilize) do run FFmpeg to measure. A change that makes a writing tool print a write claim under dry-run is a defect.

See references/result-honesty.md for the code pointers and the exact test names that pin each of these.

Refuse to report what the repo already decided

Grep docs/design-decisions.md before writing any "this looks wrong" sentence. Each entry names the rationale and the test that pins it. If the change under review is about one of them, the report must say which sentence there no longer holds — otherwise it is a re-report and will be closed as one.

Also grep before claiming a gap, because several checks are centralised:

bash
grep -rn "validate_color(" scripts/     # colour flags are validated at tool level, not per call site
grep -rn "apply_common()" scripts/      # --quality range check happens once, here
grep -rn "time_arg(" scripts/           # the single time parser; a tool parsing time itself is the bug

Score the change against the repository's rules

A change that is correct in isolation can still be unshippable here. Verify each applicable rule against the tree:

  • Contract first. python3 scripts/_contract.py --json is the source of truth for tool names, flags, dry-run semantics and error kinds. README.md and SKILL.md restate it and are tested against it. A new flag that exists only in a script is half shipped; extend the generator, never hand-duplicate a schema.
  • Every surface, or it is not shipped. A feat updates README.md (tool table, contract table, gotchas), SKILL.md, references/scripts.md, docs/contract.md and CHANGELOG.md. See references/surfaces.md.
  • SKILL.md stays under 30,000 bytes — enforced by test_skill_md_stays_under_the_30kb_budget, not a convention. Adding a line means trimming one, and the PR should say which.
  • A demo, or the feature is invisible. Every script under scripts/ must appear in some demo's command line (a test asserts it); a feat adds a before/after entry to demos/build.py and regenerates docs/demos.md with python3 demos/build.py --docs. Tools whose whole output is a table/JSON/HTML go in INSPECTION instead.
  • A regression test, or the fix is not done. CONTRIBUTING.md is explicit: a fix without a test that would have caught the original bug is not finished.
  • Stdlib-only, Python 3.9+. No new runtime dependency; every script must work with nothing but ffmpeg/ffprobe on PATH.
  • Scope boundary. No AI/LLM content judgement, no cloud or API keys, no raw ffmpeg/ffprobe shell invocation outside scripts/*.py, no mutation of input files, no creative decisions on the caller's behalf.
  • Within-major discipline. Contract-shape changes wait for the next major and ship first as parallel keys (as hdr_signal did before 2.0). A PR that changes the meaning of an existing field in a minor or patch release is a finding.
Show full SKILL.md (304 more words)Show less

Run the gate, then read it honestly

bash
npm test                              # tests/test_all.py + tests/test_contract.py
npm run release-check                 # packaging + installer + MCP + doctor + full suite
python3 scripts/_contract.py doctor   # what this machine can actually run

CI is a three-OS matrix (Linux/macOS/Windows) across FFmpeg 5.1, 6.1, 7.1 and 8.x/9.x. A change that passes locally on one FFmpeg major is not verified. Report a red check as its own statement — never a parenthetical under a "done" claim — and confirm green after the run finishes rather than predicting it. See reproducing-ci-locally in this repo's .claude/skills/.

Two traps specific to reviewing here:

  • Never quote the release bump's skip-CI marker in a PR body. A squash merge copies it into the merge commit and skips every workflow.
  • references/process-pitfalls.md is a maintainer diary and is not in the npm package; the other reference files are. Packaging claims belong against package.json files and bin/install.js PAYLOAD.

Write the review

Order findings by what they cost: a false claim in a result document first, then a missing surface or test, then style. For each, give file and line at the reviewed commit, the concrete failure it causes, and the smallest fix. State plainly which checks you ran and what you did not verify — an unrun check reported as passing is the same defect as an overstated result document, one artifact over. Defer deep security audits to a dedicated security pass; this skill reviews quality, scope and claim-honesty.

Additional Resources

Reference Files
  • references/result-honesty.md — the JSON contract, the fields that carry claims, and the test that pins each one.
  • references/surfaces.md — the full surface inventory a change must touch, and how to check for drift.
  • references/review-checklist.md — the runnable pre-commit and pre-merge checklist with exact commands.
Note for this repository (ffmpeg-skill)

This skill is repo-local and intentionally duplicates none of writing-defect-reports, verifying-external-behavior or reproducing-ci-locally (all in .claude/skills/); it points at them instead. Its distinguishing subject is the review of a claim — the emit()/die() document — which is where this codebase's shipped defects have actually come from.

© kajisho5, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (references) in .claude/skills/code-review of kajisho5/ffmpeg-skill.

  • SKILL.md
  • references/result-honesty.md
  • references/review-checklist.md
  • references/surfaces.md

Open the folder on GitHubat commit 008333a

Compare with similar skills

Reviewing Ffmpeg Skill Changes next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Reviewing Ffmpeg Skill Changes compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Reviewing Ffmpeg Skill Changes this skillkajisho5/ffmpeg-skill1.9k—~2.3kAutomated safety check: PassMIT
Video Understandcalesthio/OpenMontage66k—~841Automated safety check: PassAGPL-3.0
HyperFrames Video Entry Pointheygen-com/hyperframes59k3 repos~5.2kAutomated safety check: PassApache-2.0
Video Shotseternityspring/reelbench-skills8721 repos~1.8kAutomated safety check: NotesApache-2.0
Mobile Demo Film Editorsuperset-sh/superset15k—~1.8kAutomated safety check: PassCustom licence
Video Editcalesthio/OpenMontage66k—~855Automated safety check: NotesAGPL-3.0

Similar skills

  • Video Understand

    calesthio/OpenMontage

    Understand video content locally using ffmpeg frame extraction and Whisper transcription.

    66k GitHub stars~841 tokensUpdated 6 days ago
    Media & CreativeAuto-check passed
  • HyperFrames Video Entry Point

    heygen-com/hyperframes

    Entry point for making, editing and rendering videos from HTML compositions with HyperFrames, routing each request to the right workflow.

    59k GitHub starsUsed in 3 repos~5.2k tokens
    Media & CreativeAuto-check passed
  • Video Shots

    eternityspring/reelbench-skills

    拉片:把一条成片拆成逐镜头的分析表——每个镜头的时长、景别、类别、运镜、画面. An agent skill from eternityspring/reelbench-skills.

    872 GitHub starsUsed in 1 repo~1.8k tokens
    Media & CreativeAuto-check: notes
  • Mobile Demo Film Editor

    superset-sh/superset

    Edits real mobile screen recordings into a configurable demo video with phone framing, title cards, cutaways and an end card, using a bundled renderer.

    15k GitHub stars~1.8k tokensUpdated today
    Media & CreativeAuto-check passed
  • Video Edit

    calesthio/OpenMontage

    Edit videos locally using ffmpeg. An agent skill from calesthio/OpenMontage.

    66k GitHub stars~855 tokensUpdated 6 days ago
    Media & CreativeAuto-check: notes
  • Lemo-Opuscar Short Film Director

    lemomo-ai/lemo-opuscar

    Directs a short film made entirely in code in one of the Lemo-Opuscar library's named visual styles, from fetching the library through production and delivery.

    1.4k GitHub stars~596 tokensUpdated yesterday
    Media & CreativeAuto-check passed

More from kajisho5/ffmpeg-skill

All 14 skills in this repo
  • Ffmpeg Skill

    kajisho5/ffmpeg-skill

    Edit video and audio with local FFmpeg from natural-language requests: cut, trim, join, resize/reframe (9:16, 1:1), speed change, captions and subtitles (SRT/ASS, animated, karaoke), logos and text…

    1.9k GitHub stars~7.4k tokensUpdated 5 days ago
    Auto-check passed
  • CI Pipeline Synthesizer

    kajisho5/ffmpeg-skill

    Generate GitHub Actions CI/CD pipeline configurations for automated building and testing of library and package projects.

    1.9k GitHub starsUsed in 1 repo~1.1k tokens
    Auto-check passed
  • Building Python MCP Servers

    kajisho5/ffmpeg-skill

    Builds robust Python MCP (Model Context Protocol) servers with FastMCP — tool design, error contracts, event-loop-safe blocking work, subprocess/CLI wrapping, single-file vs packaged distribution…

    1.9k GitHub stars~3.2k tokensUpdated 5 days ago
    Auto-check passed
  • Concurrent Branches

    kajisho5/ffmpeg-skill

    Resolve conflicts and merges when several branches are open against one repo at the same time — the hotspot files every change must touch (registry manifests, a single version field, shared tool…

    1.9k GitHub stars~2.8k tokensUpdated 5 days ago
    Auto-check passed
  • Guarding Destructive Operations

    kajisho5/ffmpeg-skill

    Add and review preconditions on operations that delete, overwrite, rewrite history, or resolve a caller-supplied name to a filesystem path — refusing instead of warning, placing the guard ahead of…

    1.9k GitHub stars~2.6k tokensUpdated 5 days ago
    Auto-check passed
  • Keeping Git Repos Clean

    kajisho5/ffmpeg-skill

    Prevents, detects, and remediates files that should never be committed — secrets (.env, API tokens, hardcoded credentials) and dev artifacts (build output, scratch databases, editor/OS files).

    1.9k GitHub stars~2.1k tokensUpdated 5 days ago
    Auto-check: notes

Works with

Questions about Reviewing Ffmpeg Skill Changes

What does Reviewing Ffmpeg Skill Changes do?

Review a change to the ffmpeg-skill repository for the failures its own contract makes possible — a claim in a result document that is true at one layer and false at the layer a caller reads, a new…. Reviewing Ffmpeg Skill Changes is an agent skill from kajisho5/ffmpeg-skill.

When should I use Reviewing Ffmpeg Skill Changes?

Reviewing Ffmpeg Skill Changes fits situations like: asked to review a PR; diff in this repository; authoring code here and needing a pre-commit check; triaging an external review.

How do I install Reviewing Ffmpeg Skill Changes in Claude Code?

Run `npx skills add kajisho5/ffmpeg-skill --skill reviewing-ffmpeg-skill-changes -a claude-code`. Or copy the skill folder (.claude/skills/code-review in kajisho5/ffmpeg-skill) into .claude/skills/reviewing-ffmpeg-skill-changes in your project. Claude Code loads it when a task matches its description.

How do I install Reviewing Ffmpeg Skill Changes in Codex?

Run `npx skills add kajisho5/ffmpeg-skill --skill reviewing-ffmpeg-skill-changes -a codex`. Or copy the skill folder (.claude/skills/code-review in kajisho5/ffmpeg-skill) into .agents/skills/reviewing-ffmpeg-skill-changes in your project. Codex loads it when a task matches its description.

Can I use Reviewing Ffmpeg Skill Changes in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add kajisho5/ffmpeg-skill --skill reviewing-ffmpeg-skill-changes -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/reviewing-ffmpeg-skill-changes, .gemini/skills/reviewing-ffmpeg-skill-changes, .github/skills/reviewing-ffmpeg-skill-changes and .opencode/skills/reviewing-ffmpeg-skill-changes in your project.

What does Reviewing Ffmpeg Skill Changes need to run?

Going by SKILL.md and its folder, Reviewing Ffmpeg Skill Changes needs the command-line tools its instructions call (git, python3 and npm). Our summary lists: Python 3.

Does Reviewing Ffmpeg Skill Changes access the network?

SKILL.md contains no URLs. Its commands use git and npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Reviewing Ffmpeg Skill Changes safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Reviewing Ffmpeg Skill Changes use?

Reviewing Ffmpeg Skill Changes is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Reviewing Ffmpeg Skill Changes use?

About 2.3k tokens (SKILL.md is roughly 9.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3k tokens, read only when the agent opens those files.

What are the alternatives to Reviewing Ffmpeg Skill Changes?

Skills that share tags, products or a category with Reviewing Ffmpeg Skill Changes: Video Understand (calesthio/OpenMontage, 66k stars), HyperFrames Video Entry Point (heygen-com/hyperframes, 59k stars), Video Shots (eternityspring/reelbench-skills, 872 stars) and Mobile Demo Film Editor (superset-sh/superset, 15k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Reviewing Ffmpeg Skill Changes?

kajisho5 (a GitHub user) maintains it in kajisho5/ffmpeg-skill, which has 1,901 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on October 5, 2026.

Source: kajisho5/ffmpeg-skill on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.