true-input

Connaissances de base pour les workflows de contrôle de droïdes — non invoqué directement. Mécanismes de pilote true-input pour l'automatisation d'émulateur de terminal réel en mode headless…

npx skills add https://github.com/factory-ai/factory-plugins --skill true-input

True-Input Driver

The orchestrator routed you here. Use these mechanics to execute your plan.

Drive a real terminal emulator, injecting keystrokes through the platform's native HID input path. This proves exactly what bytes the terminal emits -- no synthetic injection, no PTY distortion.

When to use

  • Proving that a terminal really sends the sequence you expect (e.g., Ghostty's Shift+Enter)
  • Recording demos that reflect actual terminal rendering
  • Validating that Droid handles a keystroke correctly end-to-end in a specific terminal

If you don't need real terminal proof, use tuistory -- it's faster and more deterministic.

Platform support

PlatformStatusDriverRead
Linux / WaylandImplementedcage + wtype + any Wayland terminalplatforms/linux.md
macOS (QEMU)ImplementedQEMU monitor sendkey to a macOS VMplatforms/macos.md
Windows (KVM)Implementedvirsh send-key to a KVM/QEMU VMplatforms/windows.md

Read the platform file for your target OS. Each contains prerequisites, core pattern, command reference, encoding reference, recording, troubleshooting, and recovery -- specific to that platform.

Key differences from tuistory

Concerntuistorytrue-input
Snapshot sourceVirtual screen bufferScrubbed PTY log (Linux) or screenshot (VM platforms)
Wait mechanismEvent-driven (screen redraws)Log polling (Linux) or sleep-based (VMs)
RecordingMust wrap launch (--record)Can start/stop any time
Keyboard encodingSynthetic (bypasses terminal)Real terminal encoding path

Known dead ends

  • Xvfb + xdotool: bypasses real keyboard processing entirely
  • uinput + Xvfb: Xvfb does not consume kernel input devices
  • SSH for TUI testing: PTY layer distorts input encoding; use SSH only for deployment
  • Raw asciinema rec: true-input records via wf-recorder (Wayland screen capture), not asciinema. Use tctl --record or tctl record start/stop. Calling asciinema rec directly has no access to the compositor and produces nothing useful.

Plus de skills de factory-ai

full-stack-playbook
factory-ai
Ce playbook vous guide dans l'exécution d'une mission d'application web full-stack. Utilisez-le pour les applications CRUD, les tableaux de bord, les sites e-commerce et les projets similaires avec des couches frontend et backend distinctes.
official
agent-browser
factory-ai
Connaissances de base pour les workflows de contrôle de droid — non invoqué directement. Mécanismes du pilote agent-browser pour l'automatisation de pages web et d'applications de bureau Electron.
official
autoresearch
factory-ai
Boucle d'expérience autonome : essayez des idées, gardez ce qui fonctionne, éliminez ce qui ne marche pas, ne vous arrêtez jamais.
official
ban-type-assertions
factory-ai
Ban `as` type assertions in a package via the `@typescript-eslint/consistent-type-assertions` lint rule, replacing them with compiler-verified type-safe…
official
browser-navigation
factory-ai
Automatisation complète du navigateur pour les tests, l'extraction de données et l'interaction web.
official
capture
factory-ai
Connaissances de base pour les workflows de contrôle de droïdes — non invoqué directement. Cycle d'enregistrement pour les sessions terminal et navigateur.
official
commit-security-scan
factory-ai
Analyser les modifications de code pour détecter les vulnérabilités de sécurité à l'aide du raisonnement LLM et des modèles de menace. Utiliser pour les revues de PR, les vérifications avant validation ou les comparaisons de branches.
official
compose
factory-ai
Connaissances de base pour les workflows de contrôle de droïdes — non invoqué directement. Montage vidéo via Remotion — cartes de titre, mise en page, transitions, effets, et vitrine…
official