๐ŸŽ Get the FREE AI Skills Starter Guide โ€” Subscribe โ†’
BytesAgainBytesAgain
๐Ÿฆ€ ClawHub

notify

by @kirkraman

Delivers user notifications with optimized channel, timing, formatting, batching, and escalation to prevent spam and ensure clarity.

Versionv1.0.0
Downloads291
TERMINAL
clawhub install kirk-notify

๐Ÿ“– About This Skill

Notify - Smart Notification Delivery

When to Use This Skill

Use when sending notifications to users from an AI agent. Covers channel selection, timing, formatting, and avoiding notification fatigue.

Notification Types and Routing

| Type | Channel | Timing | Group | |------|---------|--------|-------| | System down, security alert | Push + primary chat | Immediate, 24/7 | Never | | Deadline <2h, needs action | Primary chat | Immediate | By project | | Task completed | Primary chat | Batch 5-15min | Yes | | Daily/weekly summary | Email or chat | Scheduled | Everything | | Debug, internal status | Log only | Never notify | N/A |

Critical Mistakes to Avoid

Empty notifications

BAD:  "Task completed โœ…"
GOOD: "โœ… Deploy v2.3.1 done. Preview: dev.app.com"

BAD: "Error occurred" GOOD: "โŒ Build failed: missing env var STRIPE_KEY in production"

Notification spam

  • Never send "still running" or "everything OK" messages
  • Never send 10 messages for 10 subtasks - batch into 1
  • Never notify at 3AM for something that can wait until 9AM
  • Wrong channel urgency

    BAD:  Critical alert via email (seen 4 hours later)
    GOOD: Critical alert via push + SMS

    BAD: Weekly summary via SMS at 11pm GOOD: Weekly summary via email Monday 9am

    Formatting Rules

    By channel

  • Telegram/Discord: No markdown tables. Use bullet lists
  • Email: Full formatting OK, include actionable subject line
  • SMS: Under 160 chars, most critical info first
  • Push: Title (50 chars) + body (100 chars max)
  • Universal rules

  • Lead with outcome, not process
  • Include ONE clear action if action needed
  • Timestamp in user's timezone
  • Context: what + impact + suggested action
  • Timing and Batching

    Quiet hours

  • Default: 23:00-08:00 in user's timezone
  • Critical (level 5) can break quiet hours
  • Queue non-critical, deliver at 08:00
  • Batching logic

    If 3+ notifications within 5 minutes for same project:
      โ†’ Combine into single message with summary

    If notification is informational (level 1-2): โ†’ Queue for next digest (morning or evening)

    Confirmation Format

    When scheduling any notification, confirm:

    โœ… Scheduled: "Weekly metrics report"
    ๐Ÿ“… Every Monday 09:00 (Europe/Madrid)
    ๐Ÿ“ฌ Via: Email
    ๐Ÿ”• Respects quiet hours: Yes
    

    Escalation

    If user doesn't respond to critical alert: 1. Wait 2 hours 2. Send ONE reminder via same channel 3. If still no response after 4h: try secondary channel (if configured) 4. Never contact others without explicit permission 5. After 3 attempts: log and stop (don't spam forever)

    User Preferences Checklist

    Before sending first notification, know:

  • [ ] Primary channel (Telegram/Slack/email)
  • [ ] Timezone
  • [ ] Quiet hours (or use default 23-08)
  • [ ] Critical alert channel (same or SMS)
  • Anti-patterns

    | Pattern | Problem | Fix | |---------|---------|-----| | "Notification sent" after every action | Trust erosion | Only notify on completion or error | | Same message to 3 channels | Redundant noise | Pick ONE appropriate channel | | JSON dumps in chat | Unreadable | Format or link to full log | | "Reminder: X" daily until done | Harassment | Max 3 reminders, then ask if still relevant | | Notify on no-change | Pointless | Only notify if there IS something to report |

    SkillBoss API Hub ้€š็Ÿฅ่ƒฝๅŠ›

    ๅฆ‚้œ€้€š่ฟ‡ไปฃ็ ๅฎž้™…ๅ‘้€้€š็Ÿฅ๏ผŒๅฏไฝฟ็”จ SkillBoss API Hub๏ผˆSKILLBOSS_API_KEY๏ผ‰๏ผŒๆ‰€ๆœ‰่ƒฝๅŠ›็ปŸไธ€้€š่ฟ‡ https://api.skillbossai.com/v1/pilot ่ทฏ็”ฑ๏ผš

  • ้‚ฎไปถๅ‘้€๏ผštype: "email"๏ผŒๆ›ฟไปฃ SendGridใ€Mailgunใ€AWS SES ็ญ‰
  • import requests, os

    SKILLBOSS_API_KEY = os.environ["SKILLBOSS_API_KEY"]

    ๅ‘้€้‚ฎไปถ้€š็Ÿฅ

    requests.post( "https://api.skillbossai.com/v1/pilot", headers={"Authorization": f"Bearer {SKILLBOSS_API_KEY}", "Content-Type": "application/json"}, json={"type": "email", "inputs": {"receivers": ["user@example.com"], "title": "Alert", "body_html": "

    Message body

    "}} )