notify-rule-copilot

Creates, edits, and troubleshoots Nightingale notify rules with routing decomposition.

13.3k|1.8k|Updated Mar 3, 2020
One-click install
npx skills add https://github.com/ccfos/nightingale --skill notify-rule-copilot
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: notify-rule-copilot
Source: https://github.com/ccfos/nightingale/tree/main/aiagent/skill/embedded/builtin/notify-rule-copilot
Command: npx skills add https://github.com/ccfos/nightingale --skill notify-rule-copilot

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Configuring Nightingale (n9e) notify rules requires translating natural-language routing requirements (tiered severity, time windows, label filters) into a correct NotifyConfig JSON array, which is error-prone and full of pitfalls like cross-midnight windows and wrong operator syntax.

Core Features & Use Cases

  • Notify Rule Lifecycle Management: Create, edit, copy, and troubleshoot notify rules via built-in tools, with proposal-based updates that show users a change list before committing.
  • Routing Decomposition: Maps composite requirements (e.g., "P1 phone call during work hours, DingTalk only after hours") into multiple NotifyConfigs using six proven templates covering tiered routing, time windows, recovery filtering, business-group routing, label canary, and catch-all rules.
  • Pitfall Detection & Dry-Run Verification: Proactively corrects known misconfigurations (comma-separated in values, wrong week numbering, name-bound business groups) and verifies rules with real historical events via the test endpoint.
  • Use Case: A user says "route P1 alerts to phone + DingTalk during working hours, phone only outside working hours" — the Skill decomposes this into three NotifyConfigs, looks up real channel and team IDs, asks for any missing bot tokens with doc links, and creates the rule.

Quick Start

Ask the assistant to create a notify rule that sends P1 alerts by phone and P2/P3 alerts by email to your on-call team.

Frequently Asked Questions about notify-rule-copilot

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

FAQPage Schema
How do I create a notify rule in Nightingale?

Determine the receiving team, notification channel, and channel params, then assemble a config with at least one NotifyConfig and call create_notify_rule. Channel and team IDs must come from list_notify_channels and list_teams, never guessed.

How do I route alerts by severity or time window in Nightingale?

Split the requirement into multiple NotifyConfigs within one rule, each with its own severities and time_ranges filters. For example, P1 phone calls during work hours and after-hours phone-only routing requires separate configs with split cross-midnight windows.

Why is my Nightingale notify rule not matching alerts?

Common causes include comma-separated values in `in` operators (use spaces), business-group names bound by `==` that break after renames, cross-midnight windows not split into two segments, or the alert rule not referencing the notify rule via notify_rule_ids.

Can I partially update a Nightingale notify rule via the API?

No. The PUT endpoint replaces the whole object, so you must GET the full rule, modify fields locally, then PUT the complete JSON back. Fields not included in the PUT body will be cleared.

What is the difference between notify channels, message templates, and notify rules?

Notify channels define the delivery medium (webhook, email, phone), message templates define the rendered content, and notify rules define routing: who receives which alerts through which channel under what severity, time, and label conditions.