/send-notification
Send team notifications. Use when: pushing campaign updates, alerts, or approval requests via Slack or Intercom.
$ npx -y skills add indranilbanerjee/digital-marketing-pro --skill send-notification --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/send-notification
Context preview
The summary Claude sees to decide when to auto-load this skill.
Send team notifications. Use when: pushing campaign updates, alerts, or approval requests via Slack or Intercom.
SKILL.md
send-notification.SKILL.mdname: send-notification
description: "Send team notifications. Use when: pushing campaign updates, alerts, or approval requests via Slack or Intercom."
disable-model-invocation: false
argument-hint: "[channel or recipient]"
/digital-marketing-pro:send-notification
Purpose
Send internal team notifications via Slack or Intercom for campaign status updates, performance alerts, approval requests, or general team communication. This command is strictly for internal team messaging — not customer-facing outreach. It provides structured, urgency-aware notifications that keep marketing teams, stakeholders, and collaborators informed about campaign progress, metric thresholds, and pending approvals without requiring them to check dashboards or wait for scheduled reports. Supports tiered urgency with appropriate formatting and mention behavior to balance keeping teams informed without causing alert fatigue.
Execution gate (MANDATORY — cannot be skipped)
1. Present the full preview — recipients / spend / changes / compliance — as an **Execution Summary** before touching any live system. 2. The user must type `yes` (or an equivalent explicit approval). ANY other input — ambiguous, implied, partial, or absent approval — cancels the run. 3. Never proceed on ambiguous input. Never auto-retry a failed execution; a failure needs human review before any re-run. 4. Record the approval with `python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action create-approval --data '{"risk_level":"<tier>","summary":"..."}'` **before** executing, then `python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action mark-executed --id {approval_id}` after the platform confirms success.
Input Required
The user must provide (or will be prompted for):
- **Notification content**: The message to send — can be a brief status update ("Q1 campaign launched successfully"), a detailed performance alert with metrics ("Bounce rate spiked to 8.2%, up from 2.1% baseline — investigate immediately"), an approval request with action items ("Budget increase needs sign-off by EOD"), or a campaign milestone announcement. Plain text, markdown-formatted sections, or structured data that will be auto-formatted
- **Channel**: `slack` or `intercom` — must have the corresponding MCP server connected. For Slack, specify the target channel name (e.g., #marketing-updates, #campaign-alerts, #leadership-reports) or a direct message recipient username. For Intercom, specify the conversation ID or team inbox name
- **Urgency level**: `info` (standard notification — clean formatting, no special indicators or mentions), `warning` (highlighted with caution indicator — metrics approaching thresholds, deadlines within 24 hours, or issues requiring attention soon), or `critical` (urgent with @here or @channel mention in Slack, priority flag in Intercom — immediate action required for budget overspend, campaign failure, compliance issue, or service outage)
- **Related context (optional)**: Campaign ID, approval ID, report reference, dashboard link, or metric snapshot to attach to the notification — recipients see the relevant context inline without needing to search for it or open another tool
- **Mentions (optional)**: Specific team members to @mention — by Slack username or Intercom team member name. For critical urgency, @here is auto-included unless explicitly overridden by the user. Multiple mentions supported for cross-functional notifications
- **Follow-up action (optional)**: A specific action the recipient should take — "Approve the Q1 budget by 5pm EST", "Review the campaign report and flag issues", "Investigate the bounce rate spike in the newsletter segment" — rendered as a clear call-to-action block in the notification
- **Thread or conversation (optional)**: For Slack, a thread timestamp to reply within an existing thread rather than posting a new top-level message. For Intercom, a conversation ID to continue an existing conversation. Keeps related updates grouped and reduces channel noise
- **Schedule (optional)**: Send at a specific time instead of immediately — e.g., "9am EST Monday" for start-of-week status updates or "after business hours" for non-urgent recaps. If omitted, sends immediately
- **Attachments (optional)**: File paths or URLs to attach — performance charts, campaign screenshots, report PDFs, or dashboard snapshots. Uploaded via the platform MCP as message attachments
Process
1. **Load brand context**: Read `~/.claude-marketing/brands/_active-brand.json` for the active slug, then load `~/.claude-marketing/brands/{slug}/profile.json`. Apply brand voice, compliance rules for target markets (`skills/context-engine/compliance-rules.md`), and industry context. Also check for guidelines at `~/.claude-marketing/brands/{slug}/guidelines/_manifest.json` — if present, load restrictions. Check for agency SOPs at `~/.claude-marketing/sops/`. If no brand exists, ask: "Set up a brand first (/digital-marketing-pro:brand-setup)?" — or proceed with defaults. 2. **Format notification by urgency**: Structure the notification content based on urgency level. For `info`: clean standard message with brand name header and timestamp. For `warning`: highlighted block with caution indicator, metric context with threshold comparison, and deadline if applicable. For `critical`: urgent header with action-required flag, @here/@channel mention (Slack) or highest priority flag (Intercom), red indicator, and response deadline. All levels include the brand name, notification type label, and formatted timestamp. 3. **Attach related context**: If a campaign ID, approval ID, metric snapshot, or dashboard link was provided, resolve it to a human-readable summary — campaign name with current status and key metrics, approval details with pending actions and deadline, or metric values with trend indicators and threshold comparisons. Embed this context directly in the notification body so recipie
Read more
name: send-notification description: "Send team notifications. Use when: pushing campaign updates, alerts, or approval requests via Slack or Intercom." disable-model-invocation: false argument-hint: "[channel or recipient]"
/digital-marketing-pro:send-notification
Purpose
Send internal team notifications via Slack or Intercom for campaign status updates, performance alerts, approval requests, or general team communication. This command is strictly for internal team messaging — not customer-facing outreach. It provides structured, urgency-aware notifications that keep marketing teams, stakeholders, and collaborators informed about campaign progress, metric thresholds, and pending approvals without requiring them to check dashboards or wait for scheduled reports. Supports tiered urgency with appropriate formatting and mention behavior to balance keeping teams informed without causing alert fatigue.
Execution gate (MANDATORY — cannot be skipped)
1. Present the full preview — recipients / spend / changes / compliance — as an **Execution Summary** before touching any live system. 2. The user must type `yes` (or an equivalent explicit approval). ANY other input — ambiguous, implied, partial, or absent approval — cancels the run. 3. Never proceed on ambiguous input. Never auto-retry a failed execution; a failure needs human review before any re-run. 4. Record the approval with `python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action create-approval --data '{"risk_level":"<tier>","summary":"..."}'` **before** executing, then `python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action mark-executed --id {approval_id}` after the platform confirms success.
Input Required
The user must provide (or will be prompted for):
- **Notification content**: The message to send — can be a brief status update ("Q1 campaign launched successfully"), a detailed performance alert with metrics ("Bounce rate spiked to 8.2%, up from 2.1% baseline — investigate immediately"), an approval request with action items ("Budget increase needs sign-off by EOD"), or a campaign milestone announcement. Plain text, markdown-formatted sections, or structured data that will be auto-formatted
- **Channel**: `slack` or `intercom` — must have the corresponding MCP server connected. For Slack, specify the target channel name (e.g., #marketing-updates, #campaign-alerts, #leadership-reports) or a direct message recipient username. For Intercom, specify the conversation ID or team inbox name
- **Urgency level**: `info` (standard notification — clean formatting, no special indicators or mentions), `warning` (highlighted with caution indicator — metrics approaching thresholds, deadlines within 24 hours, or issues requiring attention soon), or `critical` (urgent with @here or @channel mention in Slack, priority flag in Intercom — immediate action required for budget overspend, campaign failure, compliance issue, or service outage)
- **Related context (optional)**: Campaign ID, approval ID, report reference, dashboard link, or metric snapshot to attach to the notification — recipients see the relevant context inline without needing to search for it or open another tool
- **Mentions (optional)**: Specific team members to @mention — by Slack username or Intercom team member name. For critical urgency, @here is auto-included unless explicitly overridden by the user. Multiple mentions supported for cross-functional notifications
- **Follow-up action (optional)**: A specific action the recipient should take — "Approve the Q1 budget by 5pm EST", "Review the campaign report and flag issues", "Investigate the bounce rate spike in the newsletter segment" — rendered as a clear call-to-action block in the notification
- **Thread or conversation (optional)**: For Slack, a thread timestamp to reply within an existing thread rather than posting a new top-level message. For Intercom, a conversation ID to continue an existing conversation. Keeps related updates grouped and reduces channel noise
- **Schedule (optional)**: Send at a specific time instead of immediately — e.g., "9am EST Monday" for start-of-week status updates or "after business hours" for non-urgent recaps. If omitted, sends immediately
- **Attachments (optional)**: File paths or URLs to attach — performance charts, campaign screenshots, report PDFs, or dashboard snapshots. Uploaded via the platform MCP as message attachments
Process
1. **Load brand context**: Read `~/.claude-marketing/brands/_active-brand.json` for the active slug, then load `~/.claude-marketing/brands/{slug}/profile.json`. Apply brand voice, compliance rules for target markets (`skills/context-engine/compliance-rules.md`), and industry context. Also check for guidelines at `~/.claude-marketing/brands/{slug}/guidelines/_manifest.json` — if present, load restrictions. Check for agency SOPs at `~/.claude-marketing/sops/`. If no brand exists, ask: "Set up a brand first (/digital-marketing-pro:brand-setup)?" — or proceed with defaults. 2. **Format notification by urgency**: Structure the notification content based on urgency level. For `info`: clean standard message with brand name header and timestamp. For `warning`: highlighted block with caution indicator, metric context with threshold comparison, and deadline if applicable. For `critical`: urgent header with action-required flag, @here/@channel mention (Slack) or highest priority flag (Intercom), red indicator, and response deadline. All levels include the brand name, notification type label, and formatted timestamp. 3. **Attach related context**: If a campaign ID, approval ID, metric snapshot, or dashboard link was provided, resolve it to a human-readable summary — campaign name with current status and key metrics, approval details with pending actions and deadline, or metric values with trend indicators and threshold comparisons. Embed this context directly in the notification body so recipie
Your agency just signed a 50-brand client. The previous agency left no playbook. Three brands are bleeding budget, two have stale positioning, one is launching in a regulated jurisdiction next month. Where do you start?
Other skills on digital-marketing-pro.
- /ab-test-plan
Design A/B and multivariate tests. Use when: sample size calculation, testing hypothesis, CRO experimentation.
Open skill - /ad-creative
Generate platform-specific ad copy. Use when: Google RSA, Meta, LinkedIn, TikTok ad variations with quality scoring.
Open skill - /add-integration
Add MCP server integrations. Use when: connecting a custom tool, API, or service to the plugin via .mcp.json.
Open skill - /aeo-audit
Audit AI search visibility. Use when: checking brand presence in ChatGPT, Perplexity, AI Overviews, Gemini.
Open skill - /aeo-geo
Optimize AI engine visibility. Use when: AEO/GEO strategy, citation optimization, entity consistency across AI platforms.
Open skill - /agency-dashboard
Portfolio-level agency dashboard aggregating health metrics across all client brands — campaign status, budget pacing, KPI attainment, team utilization. Use when reviewing cross-brand portfolio health, preparing for agency leadership standups, or getting a single-view snapshot
Open skill

