When a coding agent stops to ask permission, the request drops from the notch — answer it there and the agent carries on. This is the app running; watch it work.
Live, right here. The same thing happens on your screen — no video, no edit. See what Free and Pro give you ↓
Four things, and nothing you have to configure to get them — each one, shown.
The card shows the tool, the command, and a red/green diff for edits. Allow or deny with a click, or ⌥↩ and ⌥N from any app.
One dot per running session, tinted by which CLI it is, with a context-usage ring and a todo count. Nothing else, until something needs you.
⌥Space opens a composer aimed at whichever session most needs you. Type or dictate; it is delivered through tmux, or typed into the terminal for you.
Live model, context percentage and spend per session — and a history of what each project actually cost you this week.
Every live session on one screen, one row each — whatever needs an answer sorts to the top, and the one that's asking answers right where it sits.
A session asking for something tints its row and grows a line with the command, the countdown, and Deny/Allow. Several agents can be asking at once; you see all of them.
⌥↑ and ⌥↓ move between rows, ⌥↩ allows or opens a composer, ⌥N denies, ⌥S stops. The keys are printed along the bottom, and change with what the selected row can do.
The header says what is waiting on you, what is running and what it has cost; the footer reports the day. Past five sessions the rows group under their project.
It is whatever the CLI reports about itself. Claude Code and OpenCode report one; the rest do not, and their rows say so rather than printing $0.00.
Depth differs per tool, so it is stated per tool — the app says the same thing in its own Settings rather than implying more than it does.
Each was checked against that tool's own documentation in September 2026, not assumed from a family resemblance. GLM/Zhipu setups run the real claude binary, so they work through the Claude Code integration.
The part that saves you the context switch is the free part — and it is not rationed. Pro is for running several agents at once.
If a second session stops to ask you something, you still get the card and can still answer it here. What Free doesn't do is show you all of them at once. Nothing expires and nothing starts asking.
Download freeOne licence covers three Macs and can be moved between them.
Buy Pro — $49Payment is handled by Polar, the merchant of record, in USD with tax included. You get a licence key by email; the same download becomes Pro once you paste the key into Settings → Licence. If it does not fit the way you work, ask for a refund within 14 days and you'll get one — you do not have to argue that the app is broken — write to support@tikistudios.io.
Free, paid for by one sponsored line. Or $49 once, and never see one. The free tier is not a trial and does not expire — it is funded by a single sponsored line that appears only when nothing is running and nothing is waiting on you, at most once every four hours. Pro gives you a switch to turn it off.
Every app this size eventually has to answer this, and a plan you only learn about on the day it ships is not a plan, it is a surprise. So: two lines, and no third one.
One payment, or one sponsored line. Pro is $49 once — not a subscription, not a renewal. The free tier is paid for the other way: an occasional sponsored line, from a named sponsor who bought the slot directly. That is the whole business. There is nothing to sell about you, because nothing about you leaves the machine.
Nothing is running yet. There is no advertising in AgentIsland today and nothing has been shown to anyone. What exists already is the machinery and the switch. We are going to run it once there are enough people using the app for a sponsor's money to be worth asking for.
And it stays out of the way. One sponsored line beneath your own sessions. Never over a permission request, never while an agent is working, at most once every four hours, and dismissing one buys a full day of quiet.
Everything runs locally. There is no account to create, and no telemetry unless you switch it on — in which case Settings prints the exact list of what would be sent, next to the switch. Prompts, commands, tool inputs, repository paths and transcripts are never sent anywhere, under any setting.
Every file the app writes to your home directory is named in the interface before you agree to it, backed up once before the first edit, and restored when you remove the integration — including your own statusLine.
This website counts page views with Cloudflare Web Analytics, which sets no cookie and cannot tell who you are; the privacy page lists exactly what it records.
cd frontend && npm test does not match Bash(npm test:*) — it starts with cd. The full explanation is here, including where the rules are actually read from and why bypass mode does not bypass hooks.claude --debug hooks, which shows whether your hook is ever invoked and so splits a config problem from a script problem in one line. The rest is here: the unquoted path with a space in it, the matcher that misses, and why a hook must fail open rather than exit non-zero."preferredNotifChannel": "terminal_bell". The settings, plus the traps — and why "done" turns out to be three states rather than one.