task-banner

Displays a macOS desktop banner notification when Claude Code finishes a task.

674|51|Updated Feb 11, 2026
One-click install
npx skills add https://github.com/OpenClaudia/openclaudia-skills --skill task-banner
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: task-banner
Source: https://github.com/OpenClaudia/openclaudia-skills/tree/main/skills/task-banner
Command: npx skills add https://github.com/OpenClaudia/openclaudia-skills --skill task-banner

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

macOS Notification Center often silently drops osascript display notification calls from CLI tools, so you never know when a long-running Claude Code task has finished. This Skill sets up a reliable always-on-top desktop banner that appears on task completion with a one-line summary of what was done.

Core Features & Use Cases

  • Completion Banner: Shows a borderless Cocoa overlay window via a Stop hook whenever Claude Code finishes a turn, with no notification permissions required.
  • Task Summaries: Displays a one-line summary of the completed work read from /tmp/claude-banner-msg, falling back to a generic message when absent.
  • Mute Toggle: Mute or unmute the banner at any time by creating or removing the ~/.claude/banner.off sentinel file.
  • Use Case: You kick off a long refactoring task and switch to another window; when Claude finishes, a blue banner appears at the top of your screen saying "Typecheck fixed and committed" so you know exactly what was done.

Quick Start

Set up the task banner so I get a desktop notification whenever Claude Code finishes a task.

Frequently Asked Questions about task-banner

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I get a desktop notification when Claude Code finishes a task?▼

Install a Stop hook in ~/.claude/settings.json that runs a JXA overlay script when each turn ends. The hook reads a summary from /tmp/claude-banner-msg and displays it in a borderless always-on-top banner window.

Why does osascript display notification not show anything on macOS?▼

CLI tools have no Notification Center registration, so the command exits 0 but macOS silently drops the notification. A Cocoa overlay window drawn via JXA bypasses Notification Center entirely and needs no permissions.

How do I mute or unmute the task completion banner?▼

Run `touch ~/.claude/banner.off` to mute the banner and `rm -f ~/.claude/banner.off` to unmute it. The Stop hook checks for this sentinel file before displaying, so no configuration editing is needed.

Does the task banner work on Windows or Linux?▼

No, the banner requires macOS because the overlay is built with Cocoa via JXA (osascript -l JavaScript). It also requires Claude Code with hooks support to trigger on task completion.

Can the banner show what task was actually completed?▼

Yes, add an instruction to your global CLAUDE.md telling the agent to write a short summary to /tmp/claude-banner-msg after each task. The hook displays that message and deletes the file, falling back to "Task done" if absent.