Kilo Code,
in your notch.
Kilo Code CLI notifications, approvals and replies on your Mac
Gnista shows every Kilo Code CLI session in your MacBook’s notch: working, done, or waiting for you. When Kilo wants to run a command or work outside the project, allow it there, and reply to it once a turn is done.
Gnista with Kilo Code, at a glance.
- Where it runs
- Kilo Code’s CLI (
kilo) in any terminal, and the Kilo app, which loads the same plugin. - Setup
- One plugin file at
~/.config/kilo/plugins/gnista.js; nothing else changes. - Needs you
- Permission requests, with the command, file or folder outside the project, and its questions.
- Answer from the notch
- Allow, Always or Deny, and answers to its questions, sent through Gnista’s plugin inside Kilo, as your own answer.
- Reply from the notch
- Yes, wherever Kilo runs: it arrives as your message, with the session’s agent and model kept.
- In the row
- The title, the agent (plan shows as plan mode), your prompt, the answer, the running tool and the todos.
- Subagents
- Folded into the row of the session that started them, which shows what they ask.
- Cost and limits
- Kilo’s own cost and token count, and the context used; no plan limits, since Kilo keeps none.
Allow. Deny. Keep going.
Gnista’s plugin runs inside Kilo, so Allow, Always and Deny go through Kilo’s own client, not a keystroke in a terminal. They count as yours, so even the requests Kilo keeps for a person, a skill’s shell or a step outside its sandbox, can be answered from the notch. Kilo’s own prompt stays up too, and whichever you answer first counts.
Replies that look like you typed them.
When a session is idle, a reply from the notch goes in as a real prompt, with the agent and model the session was using, and shows in Kilo as your message. In any terminal.
What it’s doing, and what it costs.
Rows read Kilo’s own record: the session’s title, your prompt, its answer, the tool it’s running and its todos. Subagents fold into the session that started them, and the row shows Kilo’s own cost figure and how much context is used.
What it can’t do with Kilo Code, and why.
- No plan limits: Kilo doesn’t record any. The row shows its cost instead.
- A model Gnista doesn’t know shows no context bar until you describe it in a model file.
- A Kilo that’s already running picks up Gnista only when you restart it.
Connected in a minute.
- Open Gnista and tick Kilo Code.
- Gnista writes one new file,
~/.config/kilo/plugins/gnista.js, and leaves your Kilo config alone, so there’s nothing to back up. If another plugin already has that name, Gnista stops and says so. - To answer from the notch, turn on Answer prompts in Gnista (Settings ▸ General).
- Start
kilo. One already open, or the Kilo app, picks up the plugin when you restart it.
Kilo Code, asked and answered.
Can I approve Kilo Code from the notch?
Yes: Allow, Always or Deny, and its questions, once Answer prompts in Gnista is on (Settings ▸ General).
Why doesn’t Gnista show anything for Kilo?
Kilo loads plugins when it starts. Restart kilo, or the Kilo app, after connecting.
Can I reply to Kilo from the notch?
Yes, once a turn is done. The reply goes in as a real prompt with the session’s agent and model, and shows as your message.
Does it show what Kilo costs?
Yes: Kilo’s own cost and token count for the session. For a model Gnista doesn’t know, add a model file to see its context.
What does Gnista change, and how do I remove it?
Only its plugin file, ~/.config/kilo/plugins/gnista.js. Settings ▸ Agents ▸ Kilo Code ▸ Disconnect deletes it; your Kilo config is never touched.
Gnista also keeps an eye on
Claude Code
Codex
Gemini CLI
Copilot
OpenCode
Devin
Qwen Code
Cursor
Mistral Vibe
CodeBuddy
Kimi Code
Codewhale
Droid
Antigravity
Qoder CLI
MiMoCode
ZCode
WorkBuddy
Grok Build
Amp
Pi
Goose
Auggie
OpenHands
Trae
Aider
DeepSeek Harness
Wrote your own? It can report to Gnista with one line of JSON: custom agents.