
Keystrokes with a pulse.
Keys produces key-down and key-up events for text and shortcuts with the inter-key timing of a person typing, including chords and held modifiers.
The text or the shortcut arrives as a token sequence from the language co-processor; the brain schedules the motor events. Typing rhythm, rollover and hold durations come from the recurrent dynamics, not from a random delay.
62 words per minute, with a person's rhythm.
Keys types at a configurable 40 to 120 words per minute. Inter-key intervals match recorded typists to within 12 ms on a per-bigram basis.
target Figures marked "target" are design targets for the first release, not measurements.
Same brain, its own wiring.
Input adapters occupy afferent regions, output adapters read efferent ones. Co-processors feed in through the embedding port.
- FlyCore v0.1.0
- weights v0.1.0-beta
- token sequence
- keyboard state
- keyboard (down/up events)
- Intent
import flycore
brain = flycore.load("flylabs/keys") # engine + weights + adapters
agent = brain.attach(keyboard=flycore.io.Keyboard())
agent.type("Hello, world", wpm=70)
agent.chord("cmd+s")
# events -> [(t, key, down|up), ...]Type, chord, shortcut. With human timing.
Form filling in test suites
Exercise input validation with realistic typing, not paste events.
Desktop agents
Pair with Cursor for a complete input device the operating system cannot tell from a person.
- Beta: Latin keyboard layouts only.
- Same licence restriction as Cursor: your interfaces, or ones you are authorised to automate.