Video Release Gate — Development skill for Claude Code
Thin extract of post-render publish gate — fold into claude-video-kit (see #27 there).
How to install Video Release Gate
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open runesleo/video-release-gate and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Video Release Gate does
Thin extract of post-render publish gate — fold into claude-video-kit (see #27 there). Not a sibling product.
Alternatives in Development
- Promote Public Release — Build, refine, and publish cumulative public release notes, then promote the current alpha prerelease to stabl 1.6k ★
- 03 Scheduled Publishing — Add scheduled publishing: a third post status, 'scheduled', with a publish_at timestamp that turns 143 ★
- A B Copy — Use when you want a marketing-copy A/B — spawns two writer sibling sessions via CCC that draft the SAME messag 130 ★
README
Video Release Gate
**Status (2026-09-18):** Thin extract only. **Do not treat as a separate product.** Fold into [`claude-video-kit`](https://github.com/runesleo/claude-video-kit) as the post-render publish gate. Prefer that repo for installs and issues.
Fail-closed release gate for agent-produced videos.
**Chinese:** [README.zh.md](./README.zh.md)
Prose QA is not a release gate. This CLI binds the final MP4, cover, three QA docs, and an independent final review to the same hashes — then machine-checks loudness, silence windows, and platform cover size before upload/schedule/publish.
What you get
video_release_gate.py— evaluate / verify CLI (video_release_gate.v1)video_quality_profile.json— quality ratchet (motion / composition / pacing floors)- Unit tests that reproduce a real bad-master failure shape (too quiet / high LRA / self-approved review)
How it works
- Producer finishes the final video.
- QA docs must embed the final video SHA256.
- An independent reviewer (not the producer) writes
video_final_review.v1. - Gate evaluates audio metrics + cover dimensions + hash bindings.
- Publisher calls
verifyagain immediately before upload; any asset/QA/review drift fails closed.
Exit codes: `0` PASS · `2` gate FAIL · `64` usage/config error.
Quick start
python3 -m unittest discover -s tests -v
python3 video_release_gate.py evaluate \
--video /path/to/final.mp4 \
--cover /path/to/cover.png \
--platform bilibili \
--qa FACT-CHECK.md AUDIO-QA.md RENDER-QA.md \
--review FINAL-REVIEW-bilibili.json \
--out VIDEO-RELEASE-GATE-bilibili.json
python3 video_release_gate.py verify \
--receipt VIDEO-RELEASE-GATE-bilibili.json \
--video /path/to/final.mp4 \
--platform bilibili \
--cover /path/to/cover.png
Or: `./bin/video-release-gate …`
Requirements
- Python 3.10+
ffprobeon PATH- Independent reviewer identity ≠ producer identity
Privacy
No accounts, cookies, platform uploaders, or priv
Related Skills
Release Check
Pre-publish GO/NO-GO gate without publishing (runs the release-guardian agent)
Ox Session Abort
<!-- Keep this file thin. Behavioral guidance (use-when, post-command, errors)
Agenda Now
Run one full agenda run right now — scrape, plan, render, publish
Deep App Plan
Builds a whole application from nothing. Frames product, settles platform decisions, scaffolds stack, deploys
Verify Render
Download a rendered Poppify reel, run ffprobe + frame extract, surface a verdict on whether the render matches
Viruagent Post
Generate and publish a blog post with ViruAgent
Related Agents
Media Lead
Use for content — post copy, image briefs (text-to-image prompts), short video scripts, brand voice, content c
Release Captain
Release captain owning release readiness, changelog quality, breaking-change disclosure, rollback plan, and po
Agency Reality Checker
Default verdict NEEDS WORK — vyžaduje overwhelming evidence pro production-ready certification. Use jako last-