# TypeCue > TypeCue is a free, open-source macOS menu bar app that types a prepared script into > whatever text field has focus - one block per global hotkey press (default > Ctrl+Option+X), as real system-level keystrokes with human pacing. It exists so that > typing performed in front of an audience - recorded or live - comes out right every > time. MIT licensed, no account, no network calls, no analytics. ## What it does - The user writes a script: a named, ordered list of text blocks - one block per beat of a demo or presentation. - During the demo, pressing the hotkey types the NEXT block into the focused field of whatever app the user is in. Pressing again types the following block; pressing while a block is typing stops it. - Typing is layout-aware in any language (RTL included): characters on the active keyboard layout are sent as real keystrokes; anything else (other alphabets, emoji) arrives via direct Unicode entry. Input-source switches mid-session are handled. - Inline markers direct the pace: `[0.5]` pauses half a second, `[speed:40]` types at 40 ms/character until `[speed:default]`, `[enter]` presses Return (submits in chat apps). Line breaks inside a block are typed as Shift+Return by default so multi-line blocks don't submit early in chat apps. - A floating always-on-top teleprompter panel shows every block and its state (typed / typing / next) without stealing focus. - Password/secure fields are blocked by macOS itself; TypeCue detects this and warns instead of failing silently. ## Use cases - Product demo videos and screencasts: retake-free typing, identical on every take. - Live presentations, webinars, conference demos: no typos with an audience watching. - Tutorials and course material: consistent pacing viewers can follow. - Any AI-tool demo where prompts must be typed on screen (Claude, Cursor, ChatGPT, terminals, editors) - the typing is indistinguishable from a human performing it. ## For AI agents TypeCue is deliberately automatable by AI agents with machine access (Claude Code, Cursor, and similar). Everything is plain files plus a URL scheme: - Scripts: `~/Library/Application Support/TypeCue/scripts.json` - a plain JSON array: `[{ "id": "", "name": "