moveMouse and dragMouse use human-like Bézier curves by default.
Click the mouse
Simulate mouse clicks at specific coordinates. You can select the button, click type (down, up, click), number of clicks, and optional modifier keys to hold.Move the mouse
Move the cursor to specific screen coordinates. By default, the cursor follows a human-like Bezier curve path instead of teleporting instantly. You can control this withsmooth and duration_ms.
| Parameter | Type | Default | Description |
|---|---|---|---|
x | integer | — | X coordinate to move the cursor to |
y | integer | — | Y coordinate to move the cursor to |
smooth | boolean | true | Use human-like Bezier curve path instead of instant teleport |
duration_ms | integer | auto | Target duration in milliseconds for smooth movement (50–5000). Omit for automatic timing based on distance |
hold_keys | array | — | Modifier keys to hold during the move |
Smooth vs instant movement

kernel upgrade to update):
Take screenshots
Capture a full-screen PNG or a specific region.Type text
Type literal text, optionally with a delay in milliseconds between keystrokes.Press keys
Press one or more key symbols (including combinations like “Ctrl+t” or “Ctrl+Shift+Tab”). Optionally hold modifiers and/or set a duration to hold keys down.Scroll
Scroll the mouse wheel at a specific position. Positivedelta_y scrolls down; negative scrolls up. Positive delta_x scrolls right; negative scrolls left.
Drag the mouse
Drag by pressing a button, moving along a path of points, then releasing. By default, drag movement uses human-like Bezier curves between waypoints. Setsmooth: false to use linear interpolation with steps_per_segment and step_delay_ms instead.
| Parameter | Type | Default | Description |
|---|---|---|---|
path | array | — | Ordered list of [x, y] coordinate pairs to move through (minimum 2 points) |
button | string | left | Mouse button: left, middle, or right |
smooth | boolean | true | Use human-like Bezier curves between waypoints. When true, steps_per_segment and step_delay_ms are ignored |
duration_ms | integer | auto | Target duration in milliseconds for the entire drag when smooth=true (50–10000). Omit for automatic timing based on total path length |
delay | integer | 0 | Delay in milliseconds between button down and starting to move |
steps_per_segment | integer | 10 | Number of interpolation steps per path segment (only when smooth=false) |
step_delay_ms | integer | 50 | Delay in milliseconds between steps (only when smooth=false) |
hold_keys | array | — | Modifier keys to hold during the drag |
Smooth vs linear drag
