Computer use agent for macOS
Speak. Your Mac does the rest.
Tell it what you want. Juno reads your screen, then drives the mouse and keyboard across every app until the job is done.
Free, and the source is public. macOS 14+.
Computer use agent for macOS
Tell it what you want. Juno reads your screen, then drives the mouse and keyboard across every app until the job is done.
Free, and the source is public. macOS 14+.
Demo
One task, start to finish. Nothing sped up, nothing cut.
The assistant you already have
You have heard that sentence. It is not Apple being lazy. Siri acts through intents that each app has to publish, so its reach stops where developers stopped, and most never started. Juno reads the screen instead. Nothing to publish, nothing to opt into.
“Find the unpaid invoices in my mail and add a reminder for each one”
Siri
Here's what I found on the web.
Juno
Opens Mail, reads the thread, then adds a reminder per invoice.
“Export the login screen from Figma and drop it in the launch thread”
Siri
Sorry, I can't help with that.
Juno
Opens Figma, exports the frame, posts it in Slack.
“Rename these screenshots by date and file them”
Siri
I don't have an app for that.
Juno
Works Finder the way you would, one file at a time.
The bar
A small pill that lives at the edge of your screen. It grows when you reach for it, listens when you speak, and lights up while Juno works. This is the real thing, not a picture of it.
Dictate, Chat, Operate. Every app.
Any app
There is no integration to wire up and no plugin to install. If you can see it on screen, Juno can use it.
Built natively for macOS on the real accessibility APIs, so it reads an app the way a screen reader does
Works with anything on screen, including that ancient internal tool nobody has touched since 2014
Plain language
There is no syntax to get right and no list of commands to learn. Ask the way you would ask a person.
“Launch Figma, open the mobile designs, and export the login screen”
“Start a Slack thread about the launch and pull in the whole team”
“Find every PDF invoice from Q3 and email them to accounting”
For developers
One command puts your screen, mouse, and keyboard inside Claude Code, Cursor, Codex, or Gemini CLI.
npx juno-cua$ npx juno-cua
MCP server running on stdio
Tools: screenshot, click, type,
scroll, accessibility_tree...
Ready for connections
Safety
So here is exactly what Juno does with it.
By default Juno goes through the macOS accessibility APIs instead of your real cursor. Your mouse stays yours. Taking the physical cursor is a separate permission you grant, and most tasks never ask for it.
One key cancels the run, mid-click if that is where it happens to be. No dialog to hunt for.
Companion mode loads no action tools at all. Juno sees your screen and talks you through it, and there is nothing in its hands to click with.
Transcription runs locally through Whisper. The audio does not go to Juno, and it does not go to your model provider.
Your screen goes to whichever model provider you picked, and only while a task is running. Nothing is kept once it finishes.
Every click and keystroke lands in an audit trail you can read back later.
Juno is a power tool. Once it has the keyboard its reach is the same as yours, which means your logged-in browser and your files. It flags sensitive actions in the audit trail but does not block them. If that is more rope than you want, start in companion mode and keep Escape under your finger.
What it takes
The app
Free
The app costs nothing and the source is on GitHub. No subscription, nothing to upgrade.
The model
Your AI plan
Already paying for Claude Pro or Max? Juno connects through the Claude CLI and uses what you have got. Prefer a key? Anthropic and OpenAI both work today, and more computer-use providers are on the way.
The machine
macOS 14+
Apple silicon or Intel. Transcription runs on your machine, so there is nothing else to install.
Follow Along
Follow @junebug_ai on X for updates, tips, and what people are building with Juno.
Download
Questions