Own Your Stack.

Own Your Stack/The Instruments/hands

Own your computer-use

hands

Your LLM on your own mouse, keyboard, and screen — with an audit log of everything it does.

github → MIT the instruments computer use

01What it is

A computer-use agent is your LLM with a body — it moves the real mouse, presses the real keys, and reads the real screen on your machine. hands is that body, and it runs locally: the model is whatever endpoint you point at, and the screen and keyboard belong to you. The only outbound connection is to the LLM endpoint you chose — no telemetry, no phone-home.

It works on Windows, macOS, and Linux, and it prefers each OS's native shell over a screenshot-and-click loop: PowerShell on Windows, open + AppleScript on macOS, xdotool / ydotool on Linux. Tasks you run often become reusable recipes, and every action — every command, edit, click, and keystroke — appends to a local audit log at ~/.hands/audit.jsonl, with secrets scrubbed before it's written.

hands · 60 seconds
# install
npm i -g @askalf/hands
hands init

# run
hands run "open notepad and type hello world"
hands run "open chrome and go to amazon.com"
Fig. 1 — install, then drive the machine in plain language.

02What it does

Drives the OS in plain language

Tell it what you want — "open VS Code in ~/projects/api and run npm test" — and it controls the real mouse, keyboard, and screen to do it. Cross-platform: the system prompt branches on the operating system and ships the right examples for Windows, macOS, or Linux.

Prefers the shell over a click loop

Most computer-use tools simulate clicks through screenshot loops because they don't have your shell. hands does, so it reaches for a one-line Start-Process / open -a / xdotool command first — faster and cheaper — and falls back to looking at the screen only when a task genuinely needs to.

An audit log of every action

Every tool call — timestamps, arguments, durations, outcomes — appends to ~/.hands/audit.jsonl, with recognizable secrets scrubbed before write. It stays on your machine. --dry-run shows what the agent would do without doing it.

Reusable recipes

Save a task — or an ordered pipeline of tasks — and re-run it by name with hands run @<recipe>. Recipes are plain markdown files you can read, hand-edit, and share, with {{placeholders}} you fill at run time.

Your model, your machine

hands routes through whatever endpoint you configure — Anthropic direct or any Anthropic-compatible URL — so it runs on the model you choose, on the box you own. Node 20+, MIT-licensed, and a deliberately small dependency surface so the trust story stays auditable.


03Where it sits

Part of The Instruments.

hands gives an agent a body. The Instruments are the agents that do real work with real tools — research, computer use, fleet nodes, and a browser — not just chat completions.

Own your computer-use.

hands is open source and MIT-licensed. Read the code, run it on your own box, and keep the audit trail.

View hands on GitHub →