desktop-recorder-skill
A macOS-only agent skill that records polished, reproducible screencasts of
desktop or web apps, plus a native CLI (deskagent)
for the recording, deterministic input replay, and accessibility / OCR
element discovery.
Maintainer: MobAI · contact@mobai.run ·
@mobai-appPlatform: macOS 14+ (Sonoma) on Apple Silicon.
The skill teaches an agent to:
- Explore with
deskagent list / inspect / screenshot / assert. - Author a
screenplay.json- scenes of deterministic actions with per-scenecaptionand top-levelzoom/speed/trimdirectives. - Normalize state (window size, theme, start screen).
- Dry-run against the live UI; confirm with
deskagent assert. - Record with
deskagent recordwhiledeskagent controldrives (--backgroundfor AX-rich apps, HID for Chromium web apps). - Edit through
highlights -> zoom -> captions -> speedups -> export. - Ship an mp4 with click ripples, cursor sprite, captions, variable speed, and optional upload copy.
Golden rule: explore -> screenplay -> dry-run -> record -> edit -> export.
Never observe-then-decide mid-recording.
Install
Paste this into Claude Code, Codex, Cursor, or any agent that can read a public repo and run shell commands:
Set up
https://github.com/mobai-app/desktop-recorder-skillfor me. Readinstall.mdand follow the steps to installdeskagentand register the skill with my agent runtime.
The flow installs deskagent via Homebrew (mobai-app/tap/deskagent),
walks through Screen Recording + Accessibility grants, copies
skills/desktop-recorder/ into your agent's skills directory, and runs
deskagent doctor to verify. Manual recipe in
install.md.
Use
Ask your agent for a recording:
- "Record a screencast of the dashboard flow."
- "Make a launch video for this Mac app."
- "Cut a 30-second product demo of this macOS app."
The skill triggers automatically and produces:
screenplay.json single source of truth (scenes + directives)
timeline.json execution evidence (scene_start / action / scene_end)
demo.raw.mp4 native recording + .meta.json sidecar
demo.final.mp4 final export (1920x1080 by default)
*.captions.json caption track sidecar
copy.md upload copySee skills/desktop-recorder/references/editing.md for the editing stage
chain and intermediate mp4s.
Authorization
deskagent control mutates app state (focus, tabs, open docs).
--background minimizes the visible impact but still mutates the target.
The skill asks before touching any app the user didn't name.
Out of scope
Mobile demos (use the sibling mobile-recorder-skill), Linux/Windows,
direct upload to YouTube/TikTok/X, AI voiceover/music, GUI video editing.
License
MIT - Copyright (c) 2026 MobAI.
Contributing
See CONTRIBUTING.md for dev setup and PR conventions.
Reach out at contact@mobai.run for anything
that doesn't fit the issue tracker.