OpenHands,
in your notch.
OpenHands CLI notifications on your Mac
Gnista shows every OpenHands CLI session in your MacBook’s notch: working, done, or waiting for your confirmation, with the command it runs or the file it edits, and its reply when it finishes. One click takes you to its tab.
Gnista with OpenHands, at a glance.
- Where it runs
- The OpenHands CLI (
openhands) in any terminal. - Setup
- Hooks in
~/.openhands/hooks.json, after a backup. - Needs you
- Yes, while a confirmation waits in its own prompt, with the action it asks about, read from its conversation folder.
- Answer from the notch
- No: its hooks can’t see or answer its confirmations.
- Reply from the notch
- Typed into its terminal: Terminal, iTerm, Ghostty, a tmux pane, or an editor’s terminal with Gnista’s extension.
- In the row
- Your prompt, the command it runs, the file it reads or edits, the reply it finishes with, and the context used, from its conversation folder.
- Subagents
- No: OpenHands’ hooks don’t report them.
- Cost and limits
- Cost as OpenHands records it, else at its model’s price; no plan limits.
Every step, in one line.
The row follows OpenHands from your prompt through the commands it runs in its terminal and the files it views and edits, and shows the message it finishes with when the turn ends.
One hooks file, said plainly.
OpenHands reads the first hooks file it finds. Gnista’s hooks live in ~/.openhands/hooks.json, so a project with its own .openhands/hooks.json hides them there, and that project’s sessions don’t show.
What it can’t do with OpenHands, and why.
- Answering from the notch: OpenHands asks for confirmation in its own prompt, which no hook sees or answers, so you confirm in OpenHands.
- A project with its own
.openhands/hooks.jsonhides Gnista’s: OpenHands reads only the first hooks file it finds. - Subagents: OpenHands’ hooks don’t report them.
- Replies from the notch are typed into its terminal, so only in Terminal, iTerm, Ghostty, a tmux pane, or an editor’s terminal with Gnista’s extension.
Connected in a minute.
- Open Gnista and tick OpenHands.
- Gnista backs up
~/.openhands/hooks.jsonand adds its hooks, keeping yours. - Start a new
openhandssession. If a project has its own.openhands/hooks.json, OpenHands uses that one there instead, so Gnista sees nothing from it.
OpenHands, asked and answered.
Does Gnista show when OpenHands needs me?
Yes. No hook hears its confirmations, but OpenHands’ conversation folder says when one waits, so the row shows needs you, with the action it asks about. Answer it in OpenHands.
Can I approve OpenHands from the notch?
No. Its confirmations never reach a hook, so answer in OpenHands.
Why does one project show nothing?
It probably has its own .openhands/hooks.json. OpenHands uses that file instead of ~/.openhands/hooks.json, where Gnista’s hooks are.
How do I remove it?
Settings ▸ Agents ▸ OpenHands ▸ Disconnect. Exactly Gnista’s hooks go; yours stay.
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
Kilo Code
MiMoCode
ZCode
WorkBuddy
Grok Build
Amp
Pi
Goose
Auggie
Trae
Aider
DeepSeek Harness
Wrote your own? It can report to Gnista with one line of JSON: custom agents.