A lightweight native macOS utility for typing prepared text into any app with global hotkeys.
原生 macOS 自动打字工具:提前准备文字,切到目标窗口,按快捷键,让它像真人一样逐字输入。
AutoTextTyper is a native macOS app built with Swift. It simulates keyboard input at the system level, so prepared text can be typed into almost any focused text field: chat apps, browsers, notes, terminals, document editors, and more.
It is designed as a free, simple, native alternative to tools like Murgaa Auto Text Typer, with better support for Chinese text, emoji, multi-line scripts, and presentation/recording workflows.
- Native macOS app — built with Swift, Cocoa, Carbon, CoreGraphics, and ApplicationServices.
- Global hotkeys — trigger prepared text from anywhere.
- 24-row script table — keep multiple text snippets ready for different scenarios.
- Per-row shortcut recording — click a shortcut cell and record the hotkey you want.
- Chinese and emoji support — uses Unicode input simulation instead of simple ASCII-only typing.
- Human-like typing rhythm — adjustable interval, jitter, and start delay.
- Multi-line handling — choose soft line break, normal Return, or convert line breaks to spaces.
- Emergency stop — press
Escto stop typing immediately. - Plain-text paste workflow — pasted web/doc content is normalized into plain text.
- Accessibility helper — guides users through the required macOS Accessibility permission.
- Product demos and screen recordings
- Customer support canned replies
- Live presentations
- Repetitive text entry
- Chat app scripts
- AI prompt snippets
- Teaching or tutorial workflows
AutoTextTyper uses macOS system APIs to simulate real keyboard input:
CGEvent/CoreGraphicsfor text and key event simulationCarbonfor global hotkey registrationCocoafor the native app UIApplicationServicesfor Accessibility permission checks
Because it types into the currently focused app, it does not need browser extensions, app-specific integrations, or cloud services.
- Open
AutoTextTyper.app. - Grant Accessibility permission when macOS asks for it.
- Prepare your text in one of the rows.
- Record or use a global shortcut for that row.
- Switch to the target app and put the cursor in a text field.
- Press the shortcut.
- Press
Escif you need to stop immediately.
If global shortcuts or simulated typing do not work, check:
System Settings → Privacy & Security → Accessibility → AutoTextTyper
After granting Accessibility permission, restart AutoTextTyper once.
Requirements:
- macOS
- Xcode Command Line Tools
- Swift compiler
Build the command-line binary:
swiftc -O -o AutoTextTyper auto_text_typer.swift \
-framework Cocoa \
-framework Carbon \
-framework CoreGraphics \
-framework ApplicationServicesIf you already have an .app bundle locally, copy the new binary into it and re-sign it for local use:
cp AutoTextTyper AutoTextTyper.app/Contents/MacOS/AutoTextTyper
codesign --force --deep --sign - AutoTextTyper.app| Path | Description |
|---|---|
auto_text_typer.swift |
Main Swift source code |
AutoTextTyper.iconset/ |
macOS app icon set |
AutoTextTyper_icon.svg |
SVG source icon |
AutoTextTyper_icon_1024.png |
Large PNG icon |
clean_reinstall_autotexttyper.command |
Local clean reinstall helper |
使用说明.md |
Chinese usage notes |
AutoTextTyper runs locally on your Mac. It does not require an account, server, or network service to type text.
Because it needs to simulate keyboard input, macOS requires Accessibility permission. This permission is used for global hotkeys and typing simulation only.
- Some apps may treat simulated Return/Enter differently. Use the line-break mode that best fits your target app.
- In chat apps, soft line break mode can help avoid accidentally sending a message before the full text is typed.
- Very long text may take time to type depending on interval and jitter settings.
No license has been specified yet. If you plan to make this project reusable by others, add a license such as MIT, Apache-2.0, or GPL according to your preference.