Agent skill
gen-notifier
Generic desktop notification skill for agents. Send desktop notifications when tasks are complete (or when user input/errors block progress). By default, assume that all jobs will require a notification unless the user says otherwise.
Install this agent skill to your Project
npx add-skill https://github.com/kevinslin/llm/tree/main/skills/gen-notifier
SKILL.md
Task Completion Notifier
This skill sends desktop notifications using terminal-notifier to alert the user when tasks are complete.
When to Use This Skill
Use this skill in the following scenarios:
- User explicitly requests notification - When the user says "notify me when done", "let me know when this finishes", etc.
- Long-running tasks - Jobs that take significant time (builds, deployments, large refactors, test suites)
- Background tasks - When the user might context-switch while waiting
- Default behavior - By default, assume all jobs assigned to you will require a notification unless the user specifies otherwise
How to Notify
When a task reaches a terminal state (completed, needs input, or has errors), send a notification using:
terminal-notifier -title "{DESCRIPTION OF JOB}" -message "{STATUS_OF_JOB}" -sound default
The -sound default parameter makes a beeping sound to alert the user audibly.
Status Values
Use one of these status values in the message:
- completed - Task finished successfully
- needs_input - Task requires user input to proceed
- errors - Task encountered errors and cannot proceed
Title Format
The title should be a concise description of the job (3-8 words):
Good examples:
- "Build and Test Suite"
- "API Integration Implementation"
- "Database Migration"
- "Code Refactoring Complete"
Bad examples:
- "Task" (too vague)
- "The implementation of the new authentication system with JWT tokens and refresh token rotation" (too long)
Notification Examples
Successful Completion
terminal-notifier -title "API Integration Implementation" -message "completed" -sound default
Needs User Input
terminal-notifier -title "Database Migration Setup" -message "needs_input" -sound default
Encountered Errors
terminal-notifier -title "Build and Test Suite" -message "errors" -sound default
When to Send Notifications
Send notifications at these key moments:
- Task completion - When all work is done successfully
- Blocked on input - When you need user decision or clarification to proceed
- Critical errors - When errors prevent task completion
- End of session - When you've completed your turn and are waiting for user
When NOT to Send Notifications
Don't send notifications for:
- Quick tasks (< 30 seconds)
- Intermediate steps of a larger task
- Minor clarifying questions
- Every tool execution
- Tasks where user is actively watching
Best Practices
- One notification per task - Don't spam multiple notifications
- Wait until terminal state - Only notify when task is done or blocked
- Be specific in title - User should understand what completed
- Use appropriate status - Accurately reflect the outcome
- Notify at the end - Send notification as the last action in your turn
Example Workflows
Successful Completion
User: "Implement the new authentication feature and notify me when done"
Assistant steps:
- Implements authentication feature
- Adds tests
- Runs tests (all pass)
- Sends notification: terminal-notifier -title "Authentication Feature" -message "completed" -sound default
Needs User Input
User: "Set up the database migration"
Assistant steps:
- Creates migration files
- Discovers multiple valid approaches for schema design
- Needs user decision on approach
- Sends notification: terminal-notifier -title "Database Migration Setup" -message "needs_input" -sound default
Encountered Errors
User: "Run the full test suite and notify me"
Assistant steps:
- Runs test suite
- Encounters 5 failing tests
- Attempts to fix but requires refactoring beyond scope
- Sends notification: terminal-notifier -title "Test Suite Execution" -message "errors" -sound default
Implementation Notes
Timing
Always send the notification as the last action in your response:
Assistant: I've completed implementing the authentication feature...
[Details of what was done]
All tests are passing. Notifying you now.
[Runs terminal-notifier command]
Error Handling
If terminal-notifier is not installed, gracefully inform the user:
I attempted to send a notification but terminal-notifier is not installed.
You can install it with: brew install terminal-notifier
Multiple Tasks
For multiple sub-tasks within a larger job, only send ONE notification for the entire job:
❌ Bad - multiple notifications:
- Notification: "User model created"
- Notification: "API endpoint created"
- Notification: "Tests written"
- Notification: "Authentication complete"
✅ Good - single notification:
- Notification: "Authentication Feature" -message "completed" -sound default
Requirements
This skill requires terminal-notifier to be installed:
brew install terminal-notifier
Check if installed:
which terminal-notifier
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
learn
learn from the current session
dev.exec-plan
This skill should be used for development tasks that require detailed technical planning with persistent documentation. Use when the task involves architectural decisions, multi-phase implementation, external dependencies, or when the user explicitly requests an execution plan.
dendron
do not use this skill
dev.code-extension
Install VS Code/Cursor extensions from a local .vsix via CLI (code, code-insiders, cursor, cursor-nightly). Use whenever asked to install an extension programmatically.
dev.speculate
Always use this skill to provide context on the codebase. Automatically initializes and references the Speculate documentation framework (coding rules, shortcuts, templates, and project specs) to ensure agents understand project structure, development workflows, and coding standards. Use for every task to maintain context and code quality.
dev.code
This skill should be used when performing any coding task including implementing features, fixing bugs, refactoring code, or making any modifications to source code. Provides best practices, security considerations, testing guidelines, and a structured workflow for development tasks.
Didn't find tool you were looking for?