pks is a Windows keystroke automation CLI that finds a target application by process name and sends it single keys, keyboard shortcuts, or timed key sequences. Use the command line for simple repeating keys or JSON config files for sequences and independent timers.
Use this tool only for legitimate local automation, accessibility, testing, and offline applications. Do not use it with online games, anti-cheat protected software, or services that prohibit automation.
- Windows: supported target platform for process lookup and key sending.
- Unix/Linux: config parsing, validation, and most tests work, but key sending is not implemented.
More detail: docs/platform-support.md
- Letters, numbers, arrows, navigation keys, and
F1–F12 - Special keys such as
space,enter,tab,escape, anddelete - Shortcuts and key combinations such as
ctrl+c,alt+tab, andctrl+shift+s - Timed sequences and independently repeating keys
On Windows, pks finds the chosen application's visible window, focuses it, sends the keyboard input through the Windows SendInput API, and can restore the previously focused window afterward.
git clone https://github.com/KyleDerZweite/process-key-sender.git
cd process-key-sender
cargo build --releaseRun a single key on an interval:
cargo run -- --process notepad.exe --key space --interval 1000msRun from a config file:
cargo run -- --config examples/configs/sequence-config.jsonSave CLI arguments as a config file:
cargo run -- --process notepad.exe --key space --save-config my-config.json- CLI reference: docs/cli.md
- Configuration guide: docs/configuration.md
- Platform support: docs/platform-support.md
Development setup, verification commands, and contribution guidelines are in CONTRIBUTING.md.