Cursor
AvailableA cursor that moves like a hand.
Move, click, drag. Like a hand would. Mouse control.
| Platforms | Python, Rust, JavaScript |
|---|---|
| Engine | FlyCore v0.1.0 |
| Weights | v0.1.0 |
| Input ports | Screen: fovea + overview → visual (11,390); Cursor position, buttons → ascending (2,276); Target embedding → olfactory (2,282) |
| Output ports | Mouse: dx, dy, buttons @ 100 Hz ← descending |
| Co-processors | Intent (optional) |
The 3D view needs WebGPU or WebGL2.
Install
Python
pip
pip install flycoreRust
Cargo
cargo add flycoreJavaScript
Terminal
npm i @flylabs/flycoreUsage
Cursor turns a screen and a target into mouse motion: go to x,y, click, double-click, right-click, drag and drop. Trained on human recordings, so the path has the acceleration, the overshoot and the correction of a real hand.
Python
import flycore
brain = flycore.load("flylabs/cursor") # engine + weights + adapters
agent = brain.attach(screen=flycore.io.Screen(), mouse=flycore.io.Mouse())
agent.go(target=(842, 310), action="double_click")
# agent.trajectory -> [(t, x, y, buttons), ...]Figures
Figures marked target are design targets for the first release, not measurements.
| Median time to target | 0.6 starget Fitts grid, 1,000 targets, 100 Hz loop |
|---|---|
| Click accuracy | 97%target click lands inside the target |
| Human likeness | 0.91target velocity-profile correlation vs. human recordings |
| Per step | 4 mstarget full connectome forward pass, batch 1, GPU; measured per hardware on release |
Limits
- Not for evading bot detection. Cursor is licensed for interfaces you own or are authorised to automate.
- The target must be given. Cursor moves to a marker or an embedding; finding "the Save button" from a description needs the Intent co-processor.
- Screen resolution is coarse. Targets under 8 px on a 4K screen need the foveal window enabled.
- Desktop only in 0.1. Touch and pen input are on the roadmap.