Skip to content

HouseinIsProgramming/needyghostty

Repository files navigation

NeedyGhostty

Menu bar notifications for Claude Code sessions running in Ghostty.

Get notified when Claude finishes responding — click the notification to jump straight to the right terminal.

macOS 13+

Requirements

Features

  • Menu bar indicator — shows how many sessions are waiting for input
  • Native macOS notifications — banners with click-to-focus that jump to the correct Ghostty terminal
  • Auto-dismiss — notifications clear automatically when you focus the terminal
  • Skip if focused — won't notify you if you're already looking at the terminal

Install

From source

git clone https://github.com/HouseinIsProgramming/needyghostty.git
cd needyghostty
./install.sh

From GitHub Releases

Download NeedyGhostty.app.zip from the latest release, unzip, and move to ~/Applications.

Create a CLI symlink so hooks can find the binary:

mkdir -p ~/.local/bin
ln -sf ~/Applications/NeedyGhostty.app/Contents/MacOS/needyghostty ~/.local/bin/needyghostty

Make sure ~/.local/bin is in your PATH.

Setup

Add these hooks to ~/.claude/settings.json:

{
  "hooks": {
    "SessionStart": [
      { "hooks": [{ "type": "command", "command": "needyghostty hook session-start" }] }
    ],
    "Stop": [
      { "hooks": [{ "type": "command", "command": "needyghostty hook stop" }] }
    ],
    "UserPromptSubmit": [
      { "hooks": [{ "type": "command", "command": "needyghostty hook user-prompt-submit" }] }
    ]
  }
}

To start at login: System Settings → General → Login Items → add NeedyGhostty.

How it works

NeedyGhostty uses Claude Code's hooks system:

Hook What it does
SessionStart Captures the Ghostty terminal ID for the session
Stop Fires when Claude finishes responding — creates a notification
UserPromptSubmit User started typing — clears the notification

The menu bar app watches a local JSON file for changes and sends native macOS notifications. Clicking a notification uses Ghostty's AppleScript API to focus the correct terminal.

Uninstall

./uninstall.sh

Or manually: quit the app, delete ~/Applications/NeedyGhostty.app, remove ~/.local/bin/needyghostty and ~/.local/share/needyghostty/.

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors