Aki Notch UI
Turn your MacBook notch into a programmable AI companion
Everything happens from the notch
A native macOS overlay that never steals focus. Push notifications from any script, chat with AI characters, and compose messages from anywhere.
Local HTTP API
Push notifications from any script, terminal, or tool. Six endpoints on port 47037 β no auth needed, no cloud required.
AI Characters
Characters with personality, memory, and mood-based pixel-art faces. They remember context and react accordingly.
Interactive Chat
Propose answer buttons or accept free-text input. The API blocks until the user responds β perfect for CI/CD confirmations.
Multi-Character
Multiple characters can talk to each other and the user. Run entire conversations that drop from the notch in sequence.
Compose Mode
Press ββ§K from anywhere to open a quick text input. Scripts can listen and receive the message via the API.
Privacy First
Everything runs locally. No cloud, no telemetry, no third-party code. Pure Swift/SwiftUI β except Sparkle for updates.
Push to the notch from anywhere
A local HTTP server on port 47037. No API key, no setup
β just curl.
$ curl -X POST http://127.0.0.1:47037/overlay \
-H "Content-Type: application/json" \
-d '{"name":"Aki","message":"Hello world!"}'
$ curl -X POST http://127.0.0.1:47037/chat \
-H "Content-Type: application/json" \
-d '{"name":"CI","message":"Deploy to prod?","answers":["Yes","No","Rollback"]}'
# β blocks until the user taps an answer
{ "reply": "Yes" }
| Method | Path | Description |
|---|---|---|
| GET | /health | Server health check |
| POST | /overlay | Show a notification card |
| POST | /chat | Interactive chat (blocks until answered) |
| GET | /listen | Block until compose message (ββ§K) |
| POST | /collapse | Collapse current card |
| POST | /clear | Clear all state |
One command from your terminal
The aki CLI wraps the HTTP API into simple
commands. Pipe it into scripts, aliases, or shell hooks.
# Send a notification
$ aki notify "Build succeeded!" --name CI --color "#00FF00"
# Ask a question β blocks until the user answers
$ aki ask "Deploy to production?" --answers "Yes,No,Rollback"
Yes
# Listen for Compose mode (ββ§K)
$ aki listen
# β user presses ββ§K, types a messageβ¦
remind me to review the PR at 5pm
One price. No subscription.
Pay once, use forever. Free updates included.
- ✓ All features β API, CLI, characters, chat
- ✓ Free updates via Sparkle
- ✓ No subscription, no cloud fees
- ✓ Direct DMG download
- ✓ Privacy first β everything runs locally