paste-typer is a small macOS shell utility that types clipboard text as
keystrokes for local accessibility, automation, and compatibility workflows.
It reads the current clipboard with pbpaste, waits for a short countdown, and
uses macOS System Events to type each character into the currently focused app.
Clipboard contents are not logged, stored, or sent over the network.
- macOS
- Bash,
pbpaste,pbcopy,osascript, andbcfrom the standard macOS toolset - Accessibility permission for the terminal app that runs
paste-typer
Grant Accessibility permission in:
System Settings -> Privacy & Security -> Accessibility
Add Terminal.app, iTerm2, or whichever terminal application you use.
Clone the repository, then run:
./install.shThe installer creates this symlink:
/usr/local/bin/paste-typer -> ./paste-typer.sh
If /usr/local/bin is not writable, the installer prints the exact sudo
command before asking for permission. If a command already exists at
/usr/local/bin/paste-typer, the installer stops unless you pass --force.
You can also run the script directly without installing:
./paste-typer.shpaste-typer [OPTIONS]
Options:
--delay N Countdown seconds before typing (default: 3)
--speed PRESET|N Typing speed: slow (50ms), normal (20ms), fast (5ms), or N ms
--yes, -y Skip confirmation prompt
--quiet Suppress completion notification
--help, -h Show this help message
--version Show version
paste-typer # Type clipboard text with defaults
paste-typer --delay 5 # 5-second countdown
paste-typer --speed slow # Slower typing for unreliable fields
paste-typer --yes --speed 10 # No confirmation, 10ms delay
paste-typer --yes --quiet # Silent modeAn optional Automator Quick Action is included in PasteTyper.workflow.
The workflow runs:
/usr/local/bin/paste-typer --yesThat means you should run ./install.sh before using the workflow.
To install the Quick Action:
cp -R PasteTyper.workflow ~/Library/Services/Then open System Settings -> Keyboard -> Keyboard Shortcuts -> Services,
find PasteTyper, and assign a shortcut.
- Use this only for workflows you are authorized to automate.
- Do not use this tool to evade policy controls or site/app rules.
- Clipboard contents are read once, typed locally, and never intentionally logged, stored, or transmitted.
- By default, the confirmation prompt shows only a masked preview for longer clipboard text.
bash -n paste-typer.sh install.sh test/test.sh
bash test/test.sh
PASTE_TYPER_DRY_RUN=true ./paste-typer.sh --yes --delay 0 --speed 0The automated tests use dry-run mode for behavior that would otherwise send real keystrokes.
- This project targets macOS only.
- Non-ASCII clipboard text may not type reliably in v0.1.0.
- The focused app must accept normal keyboard input during the countdown.
Small, focused issues and pull requests are welcome. Please keep the project dependency-light and avoid adding telemetry, background services, or clipboard logging.
MIT