01 What you get
Run /brag in a project folder and it writes everything into a new brag-output/ folder. If one is already there, it makes a timestamped one instead, so earlier runs are never overwritten.
Showcase
/brag, bragging about itself
Made by running /brag on its own repo: 22 seconds, vertical, with music and sound effects. It’s the video on the /brag launch page. Press play, and turn your sound on.
brag.mp4
The video
15 to 25 seconds, 1920×1080 by default, with music and sound effects mixed in.
brag.jpg
The poster
The strongest settled frame, also baked in as the video’s first frame, so every platform’s thumbnail shows it.
share-copy.txt
The caption
One to three sentences you can post as they are. No “excited to share”.
brag-plan.md
The plan
The angle, the hook and a scene-by-scene storyboard, so you can see why the video looks the way it does.
The shape of every brag
2 to 3 s
Hook
The first 2 seconds decide whether anyone keeps watching, so this is planned first.
2 to 4 s
Reveal
What it is, shown rather than described.
5 to 12 s
Highlights
Two or three sharp moments of the real product in use.
2 to 4 s
Punchline
The outro that earns the share.
A starting shape, not a template. /brag changes the number of highlights to suit the project.
02 Install it
Pick the one that matches your agent. In Claude Code, the plugin is the easiest route, and it includes both /brag and /brag-slim.
Claude Code
/plugin marketplace add latent-spaces/brag /plugin install brag@brag
Type these into Claude Code, one after the other. Already have it? claude plugin update brag gets you the latest version.
Any other agent
npx skills add https://github.com/latent-spaces/brag --skill brag
Works with Cursor, Codex, Copilot, Gemini CLI, opencode and more. Add -g to install it for every project, or leave it off to install it for the current one only.
Just /brag-slim
npx skills add https://github.com/latent-spaces/brag --skill brag-slim
The lean version, built for Claude Opus 5.5: no Hyperframes and no bundled assets.
What your machine needs
| Tool | Why | Check it with |
|---|---|---|
| Node.js 22+ | Runs the tooling | node -v |
| FFmpeg | Renders and finishes the video. It must be on your PATH | ffmpeg -version |
| Hyperframes CLI | Builds and renders the full /brag. Not needed for /brag-slim | npx hyperframes doctor |
On Windows, if you clone the repo. It uses symlinks so each agent finds the skill in its usual folder. Turn symlinks on first (git clone -c core.symlinks=true, with Developer Mode on or an admin shell), or copy skills/brag/ into your agent’s skills folder by hand.
03 Run it
Open your agent in the project you want to show off, and ask for it in plain words. That is the whole command.
let's /brag
Options
| Flag | What it does | Default |
|---|---|---|
--tone | A preset from part 04, or your own direction in quotes | picked for your project |
--format | landscape, vertical or square | landscape |
--duration | Length in seconds | auto, 15 to 25 s |
--title | The name shown on screen | taken from the project |
--no-music | Leave the music out | music on |
--no-sfx | Leave the sound effects out | effects on |
--voice | Add a voiceover (Kokoro, through Hyperframes) | off |
/brag --tone "fake Series A launch from 2016" /brag --tone polished --format vertical /brag this. Make it feel like a ridiculous startup launch.
Flags and plain language both work. Voiceover is opt-in and only in the full /brag; /brag-slim doesn’t do voice.
Brag about a website, too. /brag-slim also takes a URL (“brag about example.com”). It loads the live site in a headless browser, takes its copy, colours, fonts and images, and builds the video from those.
04 Pick a tone
Seven presets ship with /brag. Each one changes the script’s energy, the pacing, the type and the transitions. Or skip them and describe the feel you want.
| Tone | Feel | Pacing |
|---|---|---|
default | Punchy, playful, clean | 4 to 5 scenes, soft transitions |
polished | Serious, elegant, restrained | 3 to 4 scenes, long holds, soft fades |
yc-parody | A deadpan startup launch, played straight | 4 to 5 scenes, one claim each, hard cuts |
chaotic | Fast, loud, all caps | 6 to 8 scenes, some under 2 s, flash and zoom cuts |
deadpan | Calm and dry, nothing is a joke | 3 to 4 scenes, big empty space, slow fades |
cinematic | Trailer-scale, epic claims | 4 to 5 scenes, big type, dramatic wipes |
app-store | Clean feature cards | 4 to 6 scenes, smooth slides |
Your own direction works too: “museum exhibit” or “overproduced mobile game ad”. /brag borrows the pacing of the nearest preset and keeps your words in the plan.
05 What happens inside
/brag doesn’t screen-record your page. It works like a small video team, and each step has to pass a check before the next one starts.
Step 1
Inspect
Reads your pages, styles, README and routes, then answers a 9-question brief: what it is, the best claim, the visual hook, the real UI to show.
Step 2
Plan
Writes
brag-plan.md: one angle, the hook, 2 or 3 highlights, the punchline, and a storyboard that adds up to 15 to 25 s.Step 3
Compose
Hands a focused brief to Hyperframes, which builds and times the video.
npx hyperframes checkmust pass with zero errors, contrast included.Step 4
Deliver
Renders the video, picks the poster frame, bakes it in as frame 0 and writes the share copy.
On Opus 5.5, it goes slim. Run /brag on Claude Opus 5.5 and it switches to /brag-slim and tells you in one line. The model then builds the whole video itself with the tools already on your machine: no Hyperframes, no bundled music, same creative rules. Say “use the full brag” or add --full to keep the classic workflow. --voice always uses the full one.
The music and sound effects bundled with the full skill are from ende.app (“Happy Beats / Business Moves”) and Kenney.
06 Get a better brag
The rules /brag follows are also the best guide to helping it.
Its rules, in 6 lines
- Short: 15 to 25 seconds, and 18 to 22 is the sweet spot.
- Readable: every line stays on screen long enough to read, about 0.3 s per word.
- Show the thing: at least one scene shows your real UI, copy or visuals. No abstract filler.
- Specific: your own copy and claims. “Streamline your workflow” is banned.
- Hook first: the first 2 seconds are planned before anything else.
- Funny earns its place: the humour comes from the project, not from trying.
Your part
- Run it where the product lives. The best material is the product in use: entry, key action, result. Make sure those screens exist in your code, not only a landing page describing them.
- Give it one focus. Shipped a new feature or a new version? Say so when you run it, and the video centres on that.
- Look before it renders. The full /brag opens a preview (
npx hyperframes preview) and waits for your go-ahead before the final render. - Re-roll what’s off. Not quite right? Ask it to redo one scene or try another tone, instead of starting over.
More guides like thisfollow along at@devdrop.ai
Every link in this guide
- github.com/latent-spaces/brag · the skill
- latent-spaces.github.io/brag · example videos
- hyperframes.heygen.com · Hyperframes
- skills.sh/latent-spaces/brag · on skills.sh
- ffmpeg.org · FFmpeg
- instagram.com/devdrop.ai · more guides