How dccif/keysteer works
KeySteer is a native keyboard-driven mouse and window-control application. Its primary workflow is keyboard input → binding and mode handling → commands executed through a platform backend → visible overlay feedback. The graph also preserves the documented window-layout, tabs, presets, UI Hint, audio, and configuration capabilities. Source excerpts confirm the API boundary, input routing, presentation composition, and parts of window-worker behavior; some subsystem connections are based on README capabilities and the repository tree, so uncertain wiring is omitted.
Main entry points: commands.rs Command handling · mode_catalog.rs Mode catalog · mod.rs Platform backend · mode.rs Window modes
Components 25
Application runtime
- Startup
src/app/bootstrap.rs - Binding router
src/app/runtime/input_router.rs - Runtime dispatch
src/app/runtime/plan.rs - Mode catalog
src/app/mode_catalog.rs - Command handling
src/app/runtime/commands.rs - Backend API
src/api/backend.rs
Interaction modes
- Normal mode
src/modes/normal.rs - Grid modes
src/modes/grid.rs - Recursive Grid
src/modes/recursive_grid.rs - UI Hint
src/modes/hint/mod.rs
Window control
- Window modes
src/modes/window/mode.rs - Window worker
src/platform/common/window_session/worker.rs - Layout presets
src/app/preset_store.rs - Window layouts
src/api/window_layout.rs
Platform services
- Native input
src/platform/mod.rs - Platform backend
src/platform/mod.rs - UI scanning
src/platform/common/scan_accumulator.rs - Native windows
src/platform/windows/window_manager.rs - macOS windows
src/platform/macos/accessibility/window_manager.rs - Audio service
src/platform/common/audio_worker.rs - Native overlay
src/api/overlay.rs
Configuration and presentation
- Config loading
src/config/store.rs - Config model
src/config/mod.rs - Overlay composer
src/presentation/mod.rs
Other components
- Keyboard user
Connections 29
- Keyboard user → Native input: presses keys
- Startup → Config loading: loads settings
- Config loading → Config model: parses TOML
- Startup → Platform backend: creates backend
- Native input → Binding router: delivers events
- Binding router → Runtime dispatch: matches bindings
- Runtime dispatch → Mode catalog: dispatches modes
- Mode catalog → Normal mode: selects mode
- Mode catalog → Grid modes: selects mode
- Mode catalog → Recursive Grid: selects mode
- Mode catalog → UI Hint: selects mode
- Mode catalog → Window modes: selects mode
- Normal mode → Command handling: returns commands
- Grid modes → Command handling: returns commands
- Recursive Grid → Command handling: returns commands
- UI Hint → Command handling: returns commands
- Window modes → Command handling: returns commands
- Command handling → Backend API: executes commands
- Platform backend → Backend API: implements
- Platform backend → UI scanning: scans UI
- Platform backend → Audio service: handles audio
- Command handling → Window worker: submits operations
- Window worker → Native windows: runs operations
- Window worker → macOS windows: runs operations
- Window modes → Window layouts: requests layouts
- Window modes → Layout presets: uses presets
- Command handling → Overlay composer: requests feedback
- Overlay composer → Native overlay: composes scenes
- Platform backend → Native overlay: renders scenes