Type what's on your mind. Aria turns it into a prioritized task list in your Mac menu bar.
A tiny AI task manager powered by Claude. Bring your own Anthropic key. Your tasks never leave your Mac except to reach Anthropic.
Quick start · Features · How it works · Privacy · Limits · Build from source · FAQ
One sentence in, a scheduled task with steps out. Recorded from the real UI with sample data.
Most to-do apps want you to fill in a form: title, date, priority, project. Aria skips the form. Click the A in your menu bar, type the way you'd text a colleague ("reply to Priya about the budget before 11", "the launch slipped to next week", "what's left today?"), and Claude decides whether that's a new task, an update, a completion or a question. Aria sets the date, priority, time estimate and steps, and it spots duplicates.
- Download Aria (the
.dmgfor your Mac), drag it to Applications, and right-click → Open the first time (it isn't notarized; see FAQ). - Click the A in the menu bar, open Settings, and paste an Anthropic API key from console.anthropic.com.
- Type
remind me to send the deck to Maya tomorrow at 10and press Enter.
- Natural language in, structured tasks out. Create, update, complete, cancel, add steps, reprioritize several tasks at once, or just ask a question.
- Smart defaults. Due dates are never in the past, priorities run urgent → low, and time estimates follow simple rules (an email reply takes about 15 minutes, a deck takes about 3 hours).
- Duplicate detection. "Send Maya the contract" updates your existing Maya task instead of creating a second one.
- Today, Upcoming, Someday and Done Today sections. Finished tasks move to the archive after midnight.
- Undo the last AI change with one click.
- Clarifying questions when it can't tell which task you mean.
- Offline queue. Inputs typed without a connection are kept and sent when you're back online.
- Light and dark themes, drag to reorder, export to JSON, and launch at login.
- Menu-bar only. No Dock icon and no window switcher entry. It hides when you click away.
- Pick your model. It defaults to
claude-opus-4-5. Change it in Settings → Model, or setARIA_MODEL.
menu bar "A" ──click──▶ panel (src/index.html + renderer.js)
│ window.aria.* (contextBridge, src/preload.js)
▼
main process (src/main.js)
│ │
src/ai.js: one HTTPS call src/database.js: JSON files
to api.anthropic.com in ~/Library/Application Support/Aria/data
src/ai.jsbuilds a system prompt with your name, your work context, today's date and your current task list. It asks Claude to reply with exactly one JSON action (create,update,complete,cancel,add-subtask,bulk-update,answerorclarify). It uses plainfetch, with no SDK.src/main.jsapplies that action to the local store and returns the new list. It also owns the tray icon and the frameless panel.src/preload.jsis the only bridge between the UI and Node. The renderer runs withcontextIsolationand no Node access, behind a strict Content-Security-Policy.src/database.jskeepstasks.json,archive.json,settings.jsonand an undo snapshot.
- Your tasks and settings stay on your Mac, as JSON files in
~/Library/Application Support/Aria/data. There's no Aria server, account, analytics or telemetry. - Your API key stays on your device. It's saved in
settings.jsonin that folder and sent only toapi.anthropic.com, in thex-api-keyheader. It's stored as plain text, like most CLI configs, so treat that folder as you would~/.aws. - What goes to Anthropic: each time you press Enter, Aria sends what you typed, your name and work context from Settings, and a summary of your active tasks. That data falls under Anthropic's API terms.
- Reset Everything in Settings clears your key and profile. Deleting the data folder removes everything.
- macOS only. The panel, tray and vibrancy are built for the Mac menu bar. It launches on Linux for development, but it isn't supported there.
- Not notarized. The builds are ad-hoc signed, not Developer ID signed, so Gatekeeper warns on first launch.
- Costs are yours. Every input is one Claude API call on your key. A cheaper model can be set in Settings → Model.
- Needs a connection for anything the AI does. Offline inputs are queued, not processed.
- No sync. It runs on one Mac with no cloud or mobile app, by design.
You need Node.js 20+ and npm.
git clone https://github.com/snahar7/aria.git && cd aria
npm ci
npm start # run it from source
npm run lint # syntax checks, broken-file references, secret scan
npm test # unit tests for the Claude integration (fetch is mocked)
npm run dist # build dist/Aria-<version>-mac-{arm64,x64}.{dmg,zip}Electron is the only runtime dependency, and electron-builder packages the app. node scripts/capture.cjs regenerates the images in docs/ from the real UI, using sample data and a mocked backend (it needs Playwright and ffmpeg).
macOS says Aria "can't be opened" or "is damaged"
The build isn't notarized by Apple. Either right-click Aria in Applications and choose Open, then Open again, or run:
xattr -dr com.apple.quarantine /Applications/Aria.appOn recent macOS versions you may instead need System Settings → Privacy & Security → Open Anyway.
Where do I get an API key, and what does it cost?
Create one at console.anthropic.com → API Keys. You pay Anthropic per use. Each input is a single request with a short reply (up to 1,024 tokens). For lower costs, pick a smaller model in Settings.
Which model does it use? Can I change it?
claude-opus-4-5 by default. Enter any Anthropic model id in Settings → Model, or launch with ARIA_MODEL=<model id>. The Settings value wins.
I don't see the icon
Aria is a menu-bar app with no Dock icon. Look for a bold A near the clock. On a crowded menu bar it may be hidden behind the notch, so a menu-bar manager or fewer icons helps. Right-click the A to quit.
Can I use it without Anthropic, like a local model?
Not today. src/ai.js is about 200 lines, so wiring up another provider is a small change, and pull requests are welcome.
MIT © 2026 Shubham Nahar · github.com/snahar7


