Docs / Typing — desktop keyboard injection
Typing — desktop keyboard injection
_Typing injects keystrokes via Win32 SendInput, with a queue for the computer loop, optional vision keyboard assist, dry-run, and safety gates.
Wired call sites
| Caller | Use |
|---|---|
Computers.cpp |
TypingInit, vision Typing(frame), ProcessTypingTick |
ComputerBot.cpp |
OpenApplicationSearch |
ComputerRL.cpp |
EnqueueText |
Startup (typing_commands) |
TypingInit + command thread |
| Speech | typing … / type … / keyboard … |
| Lua | ai_typing_status, ai_typing_text, ai_typing_queue |
Commands
typing status
typing doctor
typing dry-run on
typing delay 40
typing text hello world
typing enter open notepad
typing queue slow text
typing process 10
typing clear
typing open Calculator
typing tap enter
typing vision inject on
typing on|off
Safety
Live inject runs through:
- enabled / dry-run flags
- LegalShield — blocks illegal-looking text
- SafetyEthicsTrust gate — may require confirm for destructive phrasing
Prefer:
typing dry-run on
typing text test message
before live desktop control.
Debug tips
| Symptom | Check |
|---|---|
| Nothing types | typing status → enabled? dry-run? queue? |
| Queue never drains | computer loop / typing process |
| Ethics block | legal check <text> / confirm gate |
| Wrong keys | focus target window; layout US-ish VkKeyScan |
| Vision noise | keep vision inject off unless calibrated |
API
_Typing::TypingInit();
_Typing::SetDryRun(true);
_Typing::TypeText("hello");
_Typing::EnqueueText("world");
_Typing::ProcessTypingTick(true);
_Typing::GetTypingStatus();
Generated from the project markdown docs on 2026-07-24. This is a static, self-contained site.