cmux-architecture
cmux package architecture, refactor layering, dependency inversion, file organization, DocC…
Screenshot or record a cmux window from the CLI, for a pull request, a bug report, or to see what the app actually looks like right now. Use when a change is visual, when a drag or an animation cannot be described in text, or when a reviewer needs evidence rather than a claim.
$ npx -y skills add manaflow-ai/cmux --skill cmux-capture --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/cmux-captureContext preview
The summary Claude sees to decide when to auto-load this skill.
Screenshot or record a cmux window from the CLI, for a pull request, a bug report, or to see what the app actually looks like right now. Use when a change is visual, when a drag or an animation cannot be described in text, or when a reviewer needs evidence rather than a claim.
name: cmux-capture description: Screenshot or record a cmux window from the CLI, for a pull request, a bug report, or to see what the app actually looks like right now. Use when a change is visual, when a drag or an animation cannot be described in text, or when a reviewer needs evidence rather than a claim.
`cmux shot` writes a png or a jpeg of a cmux window. `cmux record` writes an mp4 or a gif of one. Both capture only cmux's own windows, both go through the same permission-free path, and both work in a release build and inside CI. No Screen Recording permission is involved and none is ever requested.
cmux shot --label settings-sheet # png of the frontmost window cmux shot --jpg --max-width 1200 --out ~/before.jpg cmux record start --gif --max-seconds 8 --label sidebar-drag cmux record note "dragging the workspace" # caption, drawn into the clip cmux record stop
`shot` prints `<width>x<height> <bytes> <path>`. `record` prints `<id> <state> <frames> <path>`. Both take `--json` for the whole response.
Take a screenshot when the thing is still: a sheet, a menu, a layout, a label, a color. Record when the thing is a change over time: a drag, an animation, a reorder, two views settling in an order, a spinner that should stop. A screenshot of a drag shows nothing, and a clip of a static sheet is a large file a reviewer has to click to play.
`--region x,y,w,h` is the same rectangle in both commands, in window points from the window's top left. So a detail noticed in a clip can be shot with the same four numbers:
cmux record start --region 0,0,420,900 --max-seconds 6 # watch the sidebar cmux shot --region 0,0,420,900 --label sidebar-final # keep the end state
a clip is never left running by an agent that stops paying attention. Set it above the time the actions take or the clip ends early.
one is running. `cmux record list` says whether anything is going, and `cmux record status` reports the frame count, with the effective frame rate in `--json`.
from that moment on. A clip has no step list beside it, so one note before each thing a reviewer should notice is worth more than a longer clip. `--no-captions` turns them off.
appear in the frames, so a capture does not have to own the screen.
things happened even when the sampler fell behind the requested rate. Check `fps_effective` in `--json` if a clip looks slower than expected.
the 8 fps and half scale that keep one small; an mp4 is sharper and needs a click to play. `scripts/pr-media.py` uploads either and converts an mp4 to a gif on the way.
new one is closed. `--out` on a path that is not a file is refused, and so is one whose extension does not match the format: `--out clip.gif` needs `--gif`.
A dogfood scenario records with a `record` step wrapping the steps that matter, and captions with `note`, rather than by calling the CLI. The step table and the options are in [cmux-testing/references/dogfood-scenarios.md](../cmux-testing/references/dogfood-scenarios.md).
| Reference | When to use | | --- | --- | | [references/commands.md](references/commands.md) | Every flag, the response shape, the error codes, window selection, limits |
Open source Ghostty-based macOS terminal with vertical tabs and notifications for AI coding agents. Built for multitasking, organization, and programmability.
Repo: manaflow-ai/cmux
cmux package architecture, refactor layering, dependency inversion, file organization, DocC…
Backend TypeScript and Cloud VM development rules for cmux. Use when editing web/app/api,…
Stripe checkout, pricing, subscription, Pro plan, webhook, and entitlement runbook for cmux…
End-user browser automation with cmux. Use when you need to open sites, inspect or interact…
Operate cmux Cloud machines, run durable remote commands or agents, and present their…
Use only after the user explicitly asks for cmux Computer Use through the cmux-cua skill:…