ZCode,
in your notch.

ZCode notifications and permission approvals on your Mac

Gnista shows every ZCode session in your MacBook’s notch: working, done, or waiting for permission. When ZCode wants to run something, allow or deny it there.

Try free for 7 days No account, no card · then €19 once
01At a glance

Gnista with ZCode, at a glance.

Where it runs
ZCode’s desktop app, and its zcode CLI.
Setup
Hooks in ~/.zcode/cli/config.json, after a backup; reopen ZCode once.
Needs you
Permission requests, the moment ZCode would ask, with the command or file.
Answer from the notch
Allow or Deny; there’s no Always.
Reply from the notch
Not in the app; for the zcode CLI, typed into its terminal: Terminal, iTerm, Ghostty, a tmux pane, or an editor’s terminal with Gnista’s extension.
In the row
The session’s title, your prompt, the reply, the tool it’s running, todo progress, tokens and context, read from ZCode’s own database.
Subagents
Not yet.
Cost and limits
Tokens and context; no cost on Z.ai’s plan, as ZCode records none, and no plan limits.

Allow. Deny. Keep going.

ZCode runs Gnista’s permission hook only when it would ask you itself. The notch shows exactly what it wants to run: Allow, and it runs; Deny, and it doesn’t.

Its reply, at a glance.

The row follows ZCode through the commands and files it works on, and shows its reply when the turn is done, so you know whether to go back.

What it can’t do with ZCode, and why.

  • No Always: Allow is for this call only.
  • No cost on Z.ai’s plan: ZCode records none, so the row shows tokens and context only. No plan limits.
  • Subagents don’t show on the row.
  • A click brings up ZCode’s window, not the session: the app has no link to one.
  • Replies from the notch can’t reach ZCode’s app; for the zcode CLI, they’re typed into its terminal: Terminal, iTerm, Ghostty, a tmux pane, or an editor’s terminal with Gnista’s extension.
02Setup

Connected in a minute.

  1. Open Gnista and tick ZCode.
  2. Gnista backs up ~/.zcode/cli/config.json, adds its hooks, keeping yours, and turns ZCode’s hooks on, unless you turned them off.
  3. Quit and reopen ZCode: it reads its hooks only when it starts.
  4. To answer from the notch, turn on Settings ▸ General ▸ Answer prompts in Gnista.
03FAQ

ZCode, asked and answered.

Can I approve ZCode from the notch?

Yes: Allow or Deny, with Answer prompts in Gnista on (Settings ▸ General). There’s no Always.

Why doesn’t Gnista show anything for ZCode?

ZCode reads its hooks only when it starts: quit and reopen it after connecting. If you turned ZCode’s hooks off yourself, Gnista leaves them off; turn them back on in ~/.zcode/cli/config.json.

Is this Zhipu’s ZCode?

Yes: Z.ai’s ZCode, its desktop app and its zcode CLI.

How do I remove it?

Settings ▸ Agents ▸ ZCode ▸ Disconnect. Exactly Gnista’s hooks go.

Gnista also keeps an eye on

Wrote your own? It can report to Gnista with one line of JSON: custom agents.