From ai-toolkit
Creates structured on-call logs by pulling alerts from monitoring (Datadog) and posting summaries to wiki (Confluence/Notion). Use for shift handoffs, reviews, and alert history tracking.
npx claudepluginhub c0x12c/ai-toolkit --plugin ai-toolkitThis skill uses the workspace's default tool permissions.
Pull alerts from your monitoring platform and create a structured on-call log on your team's wiki.
Compares coding agents like Claude Code and Aider on custom YAML-defined codebase tasks using git worktrees, measuring pass rate, cost, time, and consistency.
Designs and optimizes AI agent action spaces, tool definitions, observation formats, error recovery, and context for higher task completion rates.
Designs, implements, and audits WCAG 2.2 AA accessible UIs for Web (ARIA/HTML5), iOS (SwiftUI traits), and Android (Compose semantics). Audits code for compliance gaps.
Pull alerts from your monitoring platform and create a structured on-call log on your team's wiki.
Two MCP servers are required:
mcp__claude_ai_Atlassian__*) or Notion (mcp__claude_ai_Notion__*).If either is missing, stop with:
Error: Missing required MCP server(s):
<list>. This skill needs both a monitoring MCP and a wiki MCP. Recommended: Datadog MCP + Confluence or Notion MCP.
Ask the user:
If the user has run this before and configuration is available (e.g., in .spartan/config.yaml), reuse those settings and confirm:
"Using previous settings: <frequency>, <env> alerts, wiki at <location>. Correct?"
Based on the log frequency from Step 2:
If the user provides a custom date range, use that instead.
Confirm with the user:
"Logging on-call for <start date> – <end date>. Is this correct?"
Wait for confirmation before continuing.
Search the wiki for an existing page for this period (using the naming convention from Step 7). If found, read it to find the last updated timestamp. Ask the user: "A page for this period already exists. Update it or create new?"
from date instead of the full window start — this avoids re-fetching alerts already logged and reduces token usage.Add a **Last updated:** <timestamp> line at the top of the page on each update.
Use the available monitoring MCP to fetch alert events:
Pagination: If results are truncated, paginate until all events are fetched.
From all fetched events:
Group events by base monitor name. For each group collect:
Sort alerts by Appear Count descending.
Query monitors currently in Alert status. Flag these as needing follow-up by the next on-call.
If no alerts during the window, note "No alerts this period" and continue.
"Any additional notes, incidents, or action items to include in the log?"
Record their input. If "none", continue without notes.
If the user provided a template page in Step 2, fetch it and use its structure as the format guide. Otherwise use the default structure from Step 8.
Organize on-call logs in a consistent hierarchy:
On-call Logs/
On-call <YYYY>/
On-call <MM>/<YYYY>/
[On-call] <Start Date> - <End Date>
Create the page on the wiki platform:
# On-call Log: <Start Date> – <End Date>
## Alert Summary
| Alert | Count | Times | Cause | Resolution |
|-------|-------|-------|-------|------------|
| <monitor name> | <N> | <timestamp 1>, <timestamp 2>, ... | | Still active |
**Total alerts:** <N> across <M> unique monitors
## Currently Active Alerts
<list monitors still in Alert status, or "None — all clear">
## Notes
<additional notes from Step 5, or "None">
## Action Items for Next On-call
- <follow up on active alert X>
- <investigate recurring alert Y — triggered N times>
Formatting:
## On-call Log Created
**Page:** <page title>
**URL:** <wiki page URL>
**Alerts logged:** <N> alerts across <M> unique monitors
**Active alerts:** <count or "None">
**Notes:** <summary or "None">
If there are unresolved alerts:
Action items for next on-call: The following alerts are still active — follow up with the relevant team:
<list>
Create the log page directly on the wiki platform (Confluence or Notion). Present the URL and stats inline in the conversation.