From 7fead701edf5a35dbe46a814fe797a54b8c5b325 Mon Sep 17 00:00:00 2001 From: Zhongwei Li Date: Sun, 30 Nov 2025 08:21:28 +0800 Subject: [PATCH] Initial commit --- .claude-plugin/plugin.json | 15 +++++ README.md | 3 + commands/track-sla-sli.md | 45 +++++++++++++++ plugin.lock.json | 61 +++++++++++++++++++++ skills/sla-sli-tracker/SKILL.md | 52 ++++++++++++++++++ skills/sla-sli-tracker/assets/README.md | 7 +++ skills/sla-sli-tracker/references/README.md | 7 +++ skills/sla-sli-tracker/scripts/README.md | 7 +++ 8 files changed, 197 insertions(+) create mode 100644 .claude-plugin/plugin.json create mode 100644 README.md create mode 100644 commands/track-sla-sli.md create mode 100644 plugin.lock.json create mode 100644 skills/sla-sli-tracker/SKILL.md create mode 100644 skills/sla-sli-tracker/assets/README.md create mode 100644 skills/sla-sli-tracker/references/README.md create mode 100644 skills/sla-sli-tracker/scripts/README.md diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json new file mode 100644 index 0000000..41aef72 --- /dev/null +++ b/.claude-plugin/plugin.json @@ -0,0 +1,15 @@ +{ + "name": "sla-sli-tracker", + "description": "Track SLAs, SLIs, and SLOs for service reliability", + "version": "1.0.0", + "author": { + "name": "Claude Code Plugins", + "email": "[email protected]" + }, + "skills": [ + "./skills" + ], + "commands": [ + "./commands" + ] +} \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..158e161 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# sla-sli-tracker + +Track SLAs, SLIs, and SLOs for service reliability diff --git a/commands/track-sla-sli.md b/commands/track-sla-sli.md new file mode 100644 index 0000000..7faead8 --- /dev/null +++ b/commands/track-sla-sli.md @@ -0,0 +1,45 @@ +--- +description: Track SLAs, SLIs, and SLOs +--- + +# SLA/SLI/SLO Tracker + +Define and track Service Level Agreements, Indicators, and Objectives. + +## Components + +1. **SLI (Service Level Indicators)**: Quantitative measures of service + - Availability: Uptime percentage + - Latency: Response time percentiles + - Error Rate: Request failure percentage + - Throughput: Requests per second + +2. **SLO (Service Level Objectives)**: Target values for SLIs + - Example: 99.9% availability, p95 < 200ms + +3. **SLA (Service Level Agreements)**: Formal commitments + - Customer-facing availability guarantees + - Penalty clauses for violations + +4. **Error Budgets**: Allowed downtime/errors + +## Process + +1. Define critical user journeys +2. Identify measurable SLIs +3. Set realistic SLO targets based on data +4. Calculate error budgets +5. Implement SLI measurement +6. Create monitoring dashboards +7. Set up SLO violation alerting + +## Output + +Provide: +- SLI definitions with measurement methodology +- SLO targets with justification +- Error budget calculations +- Monitoring implementation code +- Dashboard configuration for SLI tracking +- Alert rules for SLO violations +- Error budget policy recommendations diff --git a/plugin.lock.json b/plugin.lock.json new file mode 100644 index 0000000..ae6450a --- /dev/null +++ b/plugin.lock.json @@ -0,0 +1,61 @@ +{ + "$schema": "internal://schemas/plugin.lock.v1.json", + "pluginId": "gh:jeremylongshore/claude-code-plugins-plus:plugins/performance/sla-sli-tracker", + "normalized": { + "repo": null, + "ref": "refs/tags/v20251128.0", + "commit": "8a94daf85ce3ffe4b671f45c24e534ca02134465", + "treeHash": "7a419ded789c51f2c774a954e4b065578b4a40d3fb3bd75e9958bdd7465d3d9e", + "generatedAt": "2025-11-28T10:18:45.887298Z", + "toolVersion": "publish_plugins.py@0.2.0" + }, + "origin": { + "remote": "git@github.com:zhongweili/42plugin-data.git", + "branch": "master", + "commit": "aa1497ed0949fd50e99e70d6324a29c5b34f9390", + "repoRoot": "/Users/zhongweili/projects/openmind/42plugin-data" + }, + "manifest": { + "name": "sla-sli-tracker", + "description": "Track SLAs, SLIs, and SLOs for service reliability", + "version": "1.0.0" + }, + "content": { + "files": [ + { + "path": "README.md", + "sha256": "9f95c9587a044df0c312b76ae40304fea120fff6e0a30ead9e156f324e89582b" + }, + { + "path": ".claude-plugin/plugin.json", + "sha256": "e92f6f35373808978801eebab1bbeb32b8e9c19e1bc4400cb9e0f07d7be76b18" + }, + { + "path": "commands/track-sla-sli.md", + "sha256": "4cb3ab41b9bdf140e8c52c91c3804181f067a53635c2c72725247a187b05d0fc" + }, + { + "path": "skills/sla-sli-tracker/SKILL.md", + "sha256": "84b1913e144baac9410338def7c0f3e41929da3ce7c115caf843b433313384eb" + }, + { + "path": "skills/sla-sli-tracker/references/README.md", + "sha256": "8ef22f7d12f5cb43d0c69ff9327319ede1637fc5801f8c359e4abfa21f01f304" + }, + { + "path": "skills/sla-sli-tracker/scripts/README.md", + "sha256": "a45560961802c6fcbfe8a3babc60699fd9a58ec146ed6e574b6e09fabf0cc84d" + }, + { + "path": "skills/sla-sli-tracker/assets/README.md", + "sha256": "7ba9a61ec34f7c7f463edc8ad34e2919489feba9e2fa8b33a9f2c80da3709036" + } + ], + "dirSha256": "7a419ded789c51f2c774a954e4b065578b4a40d3fb3bd75e9958bdd7465d3d9e" + }, + "security": { + "scannedAt": null, + "scannerVersion": null, + "flags": [] + } +} \ No newline at end of file diff --git a/skills/sla-sli-tracker/SKILL.md b/skills/sla-sli-tracker/SKILL.md new file mode 100644 index 0000000..06e3c17 --- /dev/null +++ b/skills/sla-sli-tracker/SKILL.md @@ -0,0 +1,52 @@ +--- +name: tracking-service-reliability +description: | + This skill enables Claude to define and track Service Level Agreements (SLAs), Service Level Indicators (SLIs), and Service Level Objectives (SLOs) for improved service reliability. It is triggered when the user needs to establish, monitor, or analyze service performance metrics. Use this skill when the user mentions "SLA", "SLI", "SLO", "error budget", "service reliability", or "track service performance". The skill helps to define key metrics, set targets, and monitor performance against those targets. +allowed-tools: Read, Write, Edit, Grep, Glob, Bash +version: 1.0.0 +--- + +## Overview + +This skill provides a structured approach to defining and tracking SLAs, SLIs, and SLOs, which are essential for ensuring service reliability. It automates the process of setting performance targets and monitoring actual performance, enabling proactive identification and resolution of potential issues. + +## How It Works + +1. **SLI Definition**: The skill guides the user to define Service Level Indicators (SLIs) such as availability, latency, error rate, and throughput. +2. **SLO Target Setting**: The skill assists in setting Service Level Objectives (SLOs) by establishing target values for the defined SLIs (e.g., 99.9% availability). +3. **SLA Establishment**: The skill helps in formalizing Service Level Agreements (SLAs), which are customer-facing commitments based on the defined SLOs. + +## When to Use This Skill + +This skill activates when you need to: +- Define SLAs, SLIs, and SLOs for a service. +- Track service performance against defined objectives. +- Calculate error budgets based on SLOs. + +## Examples + +### Example 1: Defining SLOs for a New Service + +User request: "Create SLOs for our new payment processing service." + +The skill will: +1. Prompt the user to define SLIs (e.g., latency, error rate). +2. Assist in setting target values for each SLI (e.g., p99 latency < 100ms, error rate < 0.01%). + +### Example 2: Tracking Availability + +User request: "Track the availability SLI for the database service." + +The skill will: +1. Guide the user in setting up the tracking of the availability SLI. +2. Visualize availability performance against the defined SLO. + +## Best Practices + +- **Granularity**: Define SLIs that are specific and measurable. +- **Realism**: Set SLOs that are challenging but achievable. +- **Alignment**: Ensure SLAs align with the defined SLOs and business requirements. + +## Integration + +This skill can be integrated with monitoring tools to automatically collect SLI data and track performance against SLOs. It can also be used in conjunction with alerting systems to trigger notifications when SLO violations occur. \ No newline at end of file diff --git a/skills/sla-sli-tracker/assets/README.md b/skills/sla-sli-tracker/assets/README.md new file mode 100644 index 0000000..c196c48 --- /dev/null +++ b/skills/sla-sli-tracker/assets/README.md @@ -0,0 +1,7 @@ +# Assets + +Bundled resources for sla-sli-tracker skill + +- [ ] dashboard_template.json: A JSON template for creating a monitoring dashboard. +- [ ] alerting_rules.json: A JSON file containing alerting rules based on SLO violations. +- [ ] example_sla.md: An example SLA document showcasing the structure and content. diff --git a/skills/sla-sli-tracker/references/README.md b/skills/sla-sli-tracker/references/README.md new file mode 100644 index 0000000..7820822 --- /dev/null +++ b/skills/sla-sli-tracker/references/README.md @@ -0,0 +1,7 @@ +# References + +Bundled resources for sla-sli-tracker skill + +- [ ] sli_definitions.md: Provides a comprehensive list of common SLIs and their definitions. +- [ ] slo_best_practices.md: Outlines best practices for setting SLOs and managing error budgets. +- [ ] sla_template.md: A template for creating SLAs with customizable sections. diff --git a/skills/sla-sli-tracker/scripts/README.md b/skills/sla-sli-tracker/scripts/README.md new file mode 100644 index 0000000..68dff99 --- /dev/null +++ b/skills/sla-sli-tracker/scripts/README.md @@ -0,0 +1,7 @@ +# Scripts + +Bundled resources for sla-sli-tracker skill + +- [ ] calculate_error_budget.py: Calculates the error budget based on SLO and historical data. +- [ ] monitor_sli.py: Monitors SLIs and triggers alerts when SLOs are violated. +- [ ] generate_sla_report.py: Generates a report summarizing SLA performance.