Documentation
Permission Setup Guide
Typilot needs a few system-level permissions so it can listen for your activation shortcut and type AI suggestions back into the apps you use. This guide walks you through the process on macOS, Windows, and Linux (Wayland and X11) with simple, beginner-friendly steps.
⏱️ Most setups take under 5 minutes • No technical background required • Restart Typilot (and sometimes your computer) after granting permissions so changes take effect
Why Permissions Matter
The keyboard listener is what makes Typilot feel magical: it watches for your shortcut, captures the text you highlight, and then types the AI result back for you. Operating systems protect this ability, so Typilot needs explicit permission before it can help you everywhere.
What Typilot needs permission to do
- Listen for your activation shortcut (Ctrl/Cmd + Space by default)
- Read selected text so AI can act on it
- Type the AI response back into the active app
- Keep the keyboard listener running in the background
You stay in control
- Permissions can be turned off any time from your system settings
- No data leaves your computer—Typilot works locally with Ollama
- We only ask for the minimum required access
- Typilot notifies you if the listener ever loses permission
macOS Accessibility PermissionRequired
Grant Accessibility access so Typilot can watch for shortcuts and type responses into any macOS app.
When Typilot prompts you automatically
- Install Typilot from the DMG and launch it for the first time.
- macOS shows an “Accessibility Access” alert. Click Open System Settings.
- In the Accessibility list, find Typilot and switch it on. Unlock the padlock with your password if needed.
- Quit and re-open Typilot so the permission is applied.
Enable manually if you missed the pop-up
- Open System Settings → Privacy & Security → Accessibility.
- Unlock the padlock, then enable the checkbox beside Typilot.
- If Typilot doesn’t appear, open Typilot once—it will add itself to the list.
- Close System Settings and restart Typilot.
How to confirm it worked
- Return to Accessibility settings—the toggle next to Typilot should stay on.
- In Typilot, open Settings → Monitoring; “Keyboard Listener” should show Running.
- Press Cmd + Space in another app—the Typilot prompt should appear.
If the checkbox won’t stay enabled
- Remove Typilot from the list (select it and press “-”), relaunch the app, then enable it again.
- Restart your Mac—macOS occasionally needs a reboot after changing Accessibility apps.
- Check for other utilities (like BetterTouchTool or Alfred) using the same shortcut and change conflicts in Typilot Settings.
- Still stuck? Re-download Typilot, reinstall, and follow the steps once more.
Windows Keyboard AccessRequired
Windows protects apps from reading global keyboard input. Switch on keyboard access and allow Typilot through SmartScreen so it can listen for your shortcut and type responses.
First launch checklist
- Install Typilot, then double-click the shortcut to open it.
- If Windows Defender SmartScreen appears, click More info → Run anyway.
- When asked, allow Typilot to run in the background and show notifications.
- Look for the Typilot icon in the system tray (bottom-right). Right-click and confirm Launch on startup is enabled so permissions persist after a reboot.
Allow desktop apps to use your keyboard
- Open Settings → Privacy & security → Keyboard.
- Toggle Let desktop apps access your keyboard to On.
- Launch Typilot and check the list below the toggle—Windows should show Typilot with a recent access timestamp.
If you do not see Typilot listed, press your activation shortcut once; Windows will add it automatically.
Optional but recommended
- Controlled Folder Access: If Windows Security blocks Typilot, go to Windows Security → Virus & threat protection → Ransomware protection and add Typilot as an allowed app.
- Run as administrator (only if needed): Right-click the Typilot shortcut → Properties → Compatibility → check Run this program as administrator if other automation tools block simulation. Most users do not need this.
- Firewall: Typilot communicates with Ollama locally. Ensure ollama.exe is allowed in Windows Defender Firewall so Typilot can reach it.
Verify everything works
- Open Typilot and visit Settings → Monitoring; the Keyboard Listener should show Online.
- Press Ctrl + Space in Notepad—Typilot should appear.
- Type gen: hello world and press the send key (period). Typilot should type the response for you.
Troubleshooting
- If the listener is Offline, toggle Let desktop apps access your keyboard off and back on.
- Check other automation tools (AutoHotKey, PowerToys) for shortcut conflicts.
- Restart Typilot after any permission change. As a last step, reboot Windows.
Linux (Wayland) – Input & uinput AccessRequired
Wayland blocks global keyboard capture by default. Join the correct groups (or install the .deb package) so Typilot can read `/dev/input` devices and write to `/dev/uinput` for simulated typing.
Fastest option: use the official .deb installer
- Download the Ubuntu package from the Typilot Download page.
- Open a terminal and run:
sudo dpkg -i Typilot_*.deb sudo apt-get install -f - The installer creates the
inputanduinputgroups, configures udev rules, and sets permissions automatically. - Reboot your computer so the new group memberships apply.
Manual setup (AppImage, Flatpak, or source install)
- Add yourself to the required groups:
sudo groupadd -f uinput sudo usermod -aG input $USER sudo usermod -aG uinput $USER - Create persistent udev rules:
echo 'KERNEL=="event*", GROUP="input", MODE="0660"' | sudo tee /etc/udev/rules.d/99-input.rules echo 'KERNEL=="uinput", GROUP="uinput", MODE="0660"' | sudo tee /etc/udev/rules.d/99-uinput.rules sudo udevadm control --reload-rules sudo udevadm trigger - Optional quick access before rebooting:
sudo chown root:input /dev/uinput sudo chmod 660 /dev/uinputThese temporary commands reset after reboot, so keep the udev rules in place.
- Reboot your computer to apply the group changes.
Verify access after reboot
- Confirm your session type: run
echo $XDG_SESSION_TYPE— it should show wayland. - Check your groups:
groups | grep -E 'input|uinput' - Ensure the devices are accessible:
ls -l /dev/input/event* ls -l /dev/uinputYou should see permissions like crw-rw---- with the group set to input or uinput.
- Open Typilot → Settings → Monitoring and confirm the Keyboard Listener status is Online.
Troubleshooting Wayland permissions
- If you still see “permission denied”, rerun the group commands and reboot—logging out is not always enough.
- Verify no other security tool (Bubblewrap, systemd sandboxing) is isolating Typilot. Try launching Typilot from the terminal to see permission logs.
- AppImages sometimes need chmod +x and execution from your home directory to avoid sandbox restrictions.
- As a last resort, run
sudo journalctl -xe | grep uinputfor helpful error messages.
Linux (X11) – Traditional Desktop EnvironmentsRecommended
X11 is more permissive than Wayland, but adding the correct groups prevents “permission denied” errors and keeps typing simulation reliable across restarts.
Before you start
- Confirm you’re on X11:
echo $XDG_SESSION_TYPEshould return x11. - Install Typilot (AppImage, .deb, or package manager) and launch it once.
- Keep a terminal handy—you’ll run a few quick commands.
Grant device access
- Add your user to the necessary groups (same as Wayland):
sudo groupadd -f uinput sudo usermod -aG input $USER sudo usermod -aG uinput $USER - Create udev rules in case your distribution resets permissions:
echo 'KERNEL=="event*", GROUP="input", MODE="0660"' | sudo tee /etc/udev/rules.d/99-input.rules echo 'KERNEL=="uinput", GROUP="uinput", MODE="0660"' | sudo tee /etc/udev/rules.d/99-uinput.rules - Reload udev rules and reboot:
sudo udevadm control --reload-rules sudo udevadm trigger sudo reboot
Enable the X11 testing extension (usually already on)
Typilot uses the XTest extension to type on your behalf. Most desktops ship with it enabled, but you can check with:
xdpyinfo | grep XTstIf you see a result, you are good to go. If not, install the libxtst6 package (Ubuntu/Debian) or equivalent for your distribution.
Test and verify
- After rebooting, run:
to confirm membership.groups | grep -E 'input|uinput' - Launch Typilot from a terminal and watch for any “permission denied” messages.
- Press your activation shortcut in a text editor. If Typilot does not appear, reopen Typilot from the terminal to view logs.
- If simulation fails, run
sudo dmesg | grep uinputto check for kernel messages.
Troubleshooting X11 setups
- If the listener works only when launching Typilot with
sudo, your user is missing from the groups—re-run the commands and reboot. - For multi-seat setups, verify Typilot has access to the correct `/dev/input/event*` device by comparing timestamps with
sudo evtest. - Some display managers (like LightDM with user switching) may need you to log out fully before permissions refresh—do a full reboot to be safe.
- Still seeing issues? Switch temporarily to the `.deb` build to confirm whether your manual setup is missing a step.
Final Checklist
- Typilot launches without warning dialogs
- The Keyboard Listener in Typilot shows Online
- Your activation shortcut opens Typilot in another app
- Typilot can type a short response back into the active window
- You rebooted (Linux) or relaunched Typilot (macOS/Windows) after changing permissions
If any step fails, revisit the section for your operating system above or contact support—we're happy to help get you up and running.