Cursor,
in your notch.

Cursor agent notifications on your Mac: working, done and its latest reply

Gnista shows Cursor’s agent in your MacBook’s notch, in the editor and as cursor-agent in a terminal: the tool, command or file it’s on, its reply when the turn ends, and a click back to the right window.

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

Gnista with Cursor, at a glance.

Where it runs
Cursor’s agent in the editor, and cursor-agent in a terminal.
Setup
Hooks in ~/.cursor/hooks.json, after a backup.
Needs you
No: Cursor’s hooks can’t say when its agent is waiting for you.
Answer from the notch
No: an unanswered Cursor hook lets the action through, so Gnista leaves the deciding hooks alone.
Reply from the notch
Only for cursor-agent, typed into its terminal: Terminal, iTerm, Ghostty, a tmux pane, or an editor’s terminal with Gnista’s extension; not into the editor’s chat.
In the row
Your latest prompt, the tool, command or file edit the agent is on, its latest reply, and the model’s mark on the icon when Cursor names one.
Subagents
No: Cursor’s hooks don’t tell them apart, so their steps show as the session’s.
Cost and limits
No: Cursor doesn’t report tokens or plan limits.

What it’s doing, without the window.

The row follows Cursor’s agent from your prompt through each tool, shell command and file edit, and shows its reply when the turn ends.

Done means done.

When the agent replies and stops, the drop turns green. If Cursor’s hooks go quiet, the row stops showing working after 5 minutes instead of glowing forever.

One click, right window.

A click brings up the project’s Cursor window. With Gnista’s small editor extension, a cursor-agent session in Cursor’s terminal lands in that very terminal.

Using Claude Code in Cursor?

Sessions from the Claude Code extension in Cursor get everything on the Claude Code page: needs you, answers, replies and cost.

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

  • “Needs you”: Cursor’s hooks have no event for it, so a request waiting in Cursor shows as working.
  • Answering from the notch: the hooks that could decide (preToolUse, beforeShellExecution) let the action through when a hook doesn’t answer, so Gnista never installs them.
  • Replies into the editor’s chat: Gnista can only type into cursor-agent, in Terminal, iTerm, Ghostty, a tmux pane, or an editor’s terminal with Gnista’s extension.
  • Cost, context and the mode: Cursor’s hooks don’t report tokens, and its transcript has no usage.
  • Cursor’s hooks have been known to stop firing until Cursor restarts. A row that hears nothing for 5 minutes stops showing working.
02Setup

Connected in a minute.

  1. Open Gnista and tick Cursor.
  2. Gnista backs up ~/.cursor/hooks.json to ~/Library/Application Support/Gnista/Backups/, then adds its hooks next to yours. None of them can block or allow anything.
  3. Restart Cursor if it was open, so it loads the hooks.
  4. Optional: in Settings, under Editor terminals, connect Cursor. A click on a cursor-agent row then shows its own terminal, not just the window.
03FAQ

Cursor, asked and answered.

Why doesn’t Gnista show when Cursor needs me?

Cursor’s hooks have no event for it. Gnista shows working and done, and what the agent is doing.

Can I allow or deny Cursor’s actions from the notch?

No. Cursor’s deciding hooks let an action through when they get no answer, so Gnista doesn’t install them. Answer in Cursor.

Does it work with cursor-agent in a terminal?

Yes, the same hooks cover both. In Terminal, iTerm, Ghostty, a tmux pane, or an editor’s terminal with Gnista’s extension, you can also reply to it from the notch.

A Cursor session stays on working. Why?

Cursor’s hooks sometimes stop firing until Cursor restarts. Restart it; meanwhile, the row stops showing working after 5 minutes without news.

Can I use Claude Code inside Cursor?

Yes, and those sessions get needs you, answers and replies from the notch.

How do I remove it?

Settings ▸ Agents ▸ Cursor ▸ Disconnect. Exactly Gnista’s hooks go; yours stay.

Gnista also keeps an eye on

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