mcpbeat

Performance Slo Planner

microsoft/performance-slo-planner

Performance, load, and reliability (SLO/SRE) planning for production readiness. Use when defining service level objectives, load characterization, capacity, latency budgets, stress/soak/spike test plans, false-positive baselines, and reliability targets. USE FOR: SLO/SLA definition, load testing plan, performance budget, capacity planning, reliability/SRE backlog, latency targets, error-budget policy. DO NOT USE FOR: executing load tests (use Azure Load Testing tooling), security threat modeling, RAI assessment, privacy/compliance planning, or authoring/restating PRD requirements (cite the PRD's existing NFR/FR ids instead).

1k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
1313
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/microsoft/hve-core --skill performance-slo-planner

The instruction itself

7 sections, as written by the author

Performance & SLO/SRE Planner

Turn vague "it should be fast and reliable" expectations into measurable SLIs, SLOs, a load model, a test matrix, and a reliability backlog for production readiness. Pairs with Azure Load Testing tooling for execution. This skill plans; it does not run the tests.

When to Use

  • Defining service level objectives and error budgets before launch.
  • Characterizing load behavior (steady, peak, spike, soak) for a system with "no characterized load."
  • Setting latency/throughput budgets and a false-positive/accuracy baseline.
  • Producing a reliability/SRE backlog for a production-readiness review.

When Not to Use

  • Running the load tests: hand the test matrix to the Azure Load Testing tools.
  • Security, RAI, or privacy concerns: use the respective specialist skill.
  • Authoring or restating requirements: cite the PRD's existing NFR ids rather than re-deriving targets.
  • Redefining user journeys: reference the PRD's existing FR ids rather than inventing flows.

Inputs

Gather what exists; flag what is missing as an assumption to validate.

  • Business goals (BRD): the business objectives and risk tolerance behind the targets (for example revenue-critical flows, contractual SLAs) that justify each SLO and error budget.
  • Critical user journeys: the flows that must stay fast (for example: incident ingest → display, dispatch action, alert acknowledge).
  • Stated NFRs (PRD): latency/availability targets from the PRD's NFRs, Success Metrics, and Operational Readiness sections (for example stratified SLAs like "Critical ≤ 60s, Standard ≤ 3min").
  • Traffic assumptions: expected and peak concurrency, request rates, and growth.
  • Accuracy expectations: false-positive tolerance where relevant (for example alerting).

Procedure

  • Identify SLIs. For each critical journey pick measurable indicators: latency (p50/p95/p99), availability, error rate, and accuracy/false-positive rate where relevant.
  • Set SLOs and error budgets. For each SLI define a target, a measurement window, and the resulting error budget. Anchor each SLO to a specific PRD NFR id when present; otherwise propose a target and mark it [ASSUMPTION] for tuning.
  • Define the load model. Specify steady-state, peak, spike, and soak profiles with concurrency/rate and duration for each.
  • Build the test matrix. Map each load profile to the journeys it exercises, the pass/fail SLO thresholds, and the environment.
  • Plan capacity and degradation. Note scaling assumptions, saturation points, and required graceful-degradation behavior (no silent fidelity drops).
  • List observability hooks. Name the metrics/traces needed to *measure* each SLI in production; an SLO you cannot measure is not real.
  • Write the backlog to .copilot-tracking/performance-plans/<date>-performance-slo-plan.md using the Output Format.

Output Format

# Performance & SLO Plan: <app>

## SLOs
| SLI         | Journey         | Target           | Window         | Error budget | Source                 |
|-------------|-----------------|------------------|----------------|--------------|------------------------|
| p95 latency | dispatch action | ≤ 60s end-to-end | 28-day rolling | 1%           | NFR-123 / [ASSUMPTION] |

## Load model
| Profile             | Concurrency / rate | Duration | Purpose  |
|---------------------|--------------------|----------|----------|
| Steady              | ...                | ...      | baseline |
| Peak / Spike / Soak | ...                | ...      | ...      |

## Test matrix
| Test | Profile | Journeys | Pass threshold | Env |
|------|---------|----------|----------------|-----|

## Observability hooks
- <metric/trace needed to measure each SLI>

## Backlog
1. <item>: priority, depends-on, SLO it protects

> [!CAUTION]
> This plan is an assistive artifact and does not replace professional performance, reliability, or SRE review. Validate SLO targets, error budgets, and rollback triggers with the owning team before acting on them.

Principles

  • Measurable or it's not an SLO. Every target needs a defined SLI and a way to measure it in production.
  • Anchor to the PRD, mark the rest. Use stated NFRs verbatim; flag proposed numbers [ASSUMPTION] for agency/environment tuning.
  • Plan, don't run. Output a test matrix the Azure Load Testing tools can execute; do not execute here.
  • Degradation is a requirement. Define what graceful degradation looks like, not just the happy path.
  • Review-required. This plan is assistive: carry the professional-review disclaimer and validate targets and budgets with the owning team before acting.

How to use it

Copy the folder

Take microsoft/performance-slo-planner from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.