Synthesize organically varied, human-like mouse movement.
This project aims to test the abilities of deep-learning for mouse imitation.
See it in Action
demo.mp4
Clearly, it's not perfect. But this is v0.1.0. Still a lot of fun stuff to try on the model side :).
Installation
Usage
Warning
This project is still experimental! For educational purposes only.
Available as an SDK (for developers) and CLI (for agents).
SDK
import { move, steps } from 'mousecrack'; await move(200, 400); // or alternatively... const from = { x: 100, y: 200 } const to = { x: 200, y: 400 } await steps(from, to); // [ // { x: 100, y: 200, t: 0 }, // { x: 95, y: 202, t: 10.528131778472712 }, // { x: 90, y: 210, t: 21.040190062833986 }, // { x: 81, y: 223, t: 31.892832399406224 }, // ...
CLI
mousecrack move 200 400 # (x, y) mousecrack steps 100 200 200 400 # from (x, y), to (x, y)
Install the Skill
For Claude Code:
/plugin marketplace add puffinsoft/mousecrack
/plugin install move-mouse@mousecrack
For Codex:
codex plugin marketplace add puffinsoft/mousecrack
codex plugin add move-mouse@mousecrack
How does it work?
Mousecrack treats mouse prediction like a time forecasting problem.
It models mouse movement as a change in position (dx, dy) and time (dt), and tries to predict the next step in this multivariate time series.
To avoid the mode collapse problem, Mousecrack uses a Mixture Density Network to model several trajectories as a probability distribution.
Mousecrack is open source software, licensed under the MIT license.
