Configures Claude Code hooks and Codex hooks.json/notify. Use when adding PreToolUse guards, Stop hooks, managed hooks, format-on-save, preflight, audits, or worktree/budget hooks.
日本語の概要は準備中です。原文の説明を表示しています。
Designs performance and load testing: stress, spike, soak, capacity, CI budget gates. Use when planning load tests or perf gates; not code or SQL tuning.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
This skill owns load-test design, CI performance gates and capacity validation. Route diagnosis of an observed hot path to software-performance.
Sources: data/sources.json.
synthetic, representative, or production-observed; a budget checker validates supplied measurements, not environment parity or capacity beyond the tested concurrency, duration, and faults.| Type | Purpose | When to Run |
|---|---|---|
| Load | Validate behavior under expected traffic | Pre-release, nightly |
| Stress | Find the breaking point beyond expected capacity | Pre-release, capacity planning |
| Soak / Endurance | Detect memory leaks, connection pool exhaustion, GC degradation over hours | Weekly, pre-release |
| Spike | Validate behavior under sudden traffic bursts | Pre-release, after autoscaling changes |
| Capacity | Find the ceiling — max throughput before SLO violation | Quarterly, before major launches |
Load testing has a real cost (build time, environment risk, engineer attention). Skip or downscope it when:
When in doubt, the cheapest sanity check is Little's Law arithmetic (see references/capacity-planning.md) — if the back-of-envelope math shows huge headroom, a full load-testing campaign may not be worth the cost yet.
| Tool | Language | Strengths | Best For |
|---|---|---|---|
| k6 | JavaScript | Arrival-rate executors and threshold gates. Verify browser APIs, assertions, extensions and operator compatibility in the installed-version docs before choosing a pin. | API/browser load testing, CI gates |
| Locust | Python | Distributed, flexible, real Python scripts | Complex scenarios, Python teams |
| Artillery | YAML + JS | Declarative, good for APIs, scenario chaining | API load testing, quick setup |
| Gatling | Java/Kotlin/Scala/JS/TS | Strong reporting, enterprise support; JS/TS support (GraalVM) | JVM teams, enterprise |
| JMeter | Java/GUI | Widely adopted, protocol support | Legacy, protocol-heavy testing |
| Playwright | JavaScript | Real browser, network interception | Frontend performance, E2E perf |
| Lighthouse CI | JavaScript | Lab performance audits, accessibility, SEO | Frontend budgets, PR gates |
Design the test from the SLO, not the other way around. Working backward from "let's load test and see what we get" produces budgets that are either too loose (numbers the system already hits) or arbitrary (nobody can say why 500ms and not 600ms).
http_req_duration includes failed requests by default, so fast failures can pull percentiles down and mask the real problem; verify your tool's convention before trusting a percentile alone.Performance budgets — define explicit thresholds:
When to run each tier:
Artifact collection: test results JSON, flamegraphs, comparison reports, Grafana snapshots, Lighthouse HTML reports.
Core Web Vitals (LCP/INP/CLS), Lighthouse CI budgets, bundle-size tracking, and synthetic-vs-RUM monitoring — see references/frontend-performance.md.
Connection-pool pressure and read-replica lag testing under load — see references/database-performance-testing.md. Query-level diagnosis (EXPLAIN ANALYZE, index effectiveness, N+1 detection) is owned by data-sql-optimization.
How profiling connects to a load test (always profile under realistic concurrency, compare against a pre-change baseline) — see references/profiling-optimization.md. Per-language profiler commands are owned by software-performance.
Sizing instances from stress-test results, cost modeling, and auto-scaling validation — see references/capacity-planning.md.
| Task | Approach | Key Metric |
|---|---|---|
| API latency regression | k6 with baseline comparison | p95 delta |
| Frontend speed regression | Lighthouse CI lab budget plus field RUM | Lab LCP/CLS/TBT; field LCP/INP/CLS |
| Memory leak detection | Soak test + heap snapshots | Heap growth over time |
| Capacity ceiling | Stress test with ramp-up | Max RPS before SLO breach |
| Database bottleneck | Query benchmark + connection pool test | Query p95, pool wait time |
| Bundle size regression | size-limit or bundlemon in CI | Bundle size delta |
| Auto-scaling validation | Spike test with monitoring | Scale-up latency, error rate during scale |
| LLM/AI API latency | Separate TTFT and generation throughput; test with realistic prompt distributions | TTFT p95, tokens/sec, goodput |
| Continuous profiling | Pyroscope (Grafana) for always-on production profiling | Regression detection at deploy time |
Performance concern: [Symptom]
│
├─ Slow API responses?
│ ├─ Under normal load? → Profile backend (flamegraph + trace spans)
│ └─ Only under load? → Load test → find bottleneck (CPU, DB, pool, GC)
│
├─ Slow page load?
│ ├─ Large bundle? → Bundle analysis + code splitting
│ └─ Slow server response? → API profiling + caching
│ └─ Layout shift? → CLS debugging (font, image, dynamic content)
│
├─ Unknown capacity?
│ └─ Stress test → find ceiling → capacity plan with headroom
│
├─ Memory growth over time?
│ └─ Soak test + heap snapshots at intervals → compare retained objects
│
├─ Latency spikes under traffic bursts?
│ └─ Spike test → check auto-scaling, connection pools, queue depth
│
├─ LLM/AI endpoint?
│ ├─ TTFT too high? → prefill optimization (prompt length, batching)
│ ├─ Throughput degrading? → tokens/sec sweep + concurrency step test
│ └─ Inconsistent under load? → warm vs cold cache scenario; mock for CI
│
└─ Need CI performance gate?
├─ API? → k6 thresholds in pipeline
├─ Frontend? → Lighthouse CI budgets
└─ Bundle? → size-limit or bundlemon
| Resource | Purpose |
|---|---|
| references/load-testing-patterns.md | Load test design: scenarios, ramp-up, data, analysis; open/closed loop; LLM/AI API testing |
| references/performance-budgets-ci.md | CI performance gates and baseline management |
| references/profiling-optimization.md | Profiling under load, network latency decomposition, continuous profiling with Pyroscope; per-language profiler commands owned by software-performance |
| references/frontend-performance.md | Core Web Vitals, Lighthouse CI, bundle tracking |
| references/database-performance-testing.md | Connection-pool pressure and replica-lag testing under load; query-level diagnosis owned by data-sql-optimization |
| references/capacity-planning.md | Load results to infrastructure sizing |
| File | Purpose |
|---|---|
| data/sample-perf-results.json | Synthetic B2B SaaS performance test results: budgets, measured values, and test scenarios |
| Template | Purpose |
|---|---|
| assets/template-performance-test-plan.md | Performance test scope, scenarios, and acceptance criteria |
| assets/template-k6-load-test.js | Starter k6 script with stages, thresholds, and custom metrics |
| assets/template-performance-budget.md | Budget definition for latency, throughput, and Core Web Vitals |
Stdlib-only Python CLI — no external dependencies, runs with Python 3.10+.
| Script | Purpose |
|---|---|
| scripts/perf_budget_checker.py | Budget validation, CI tier planning, and full Markdown report generation |
| scripts/test_perf_budget_checker.py | Offline regressions (pytest and Node.js required); run python3 -m pytest scripts/test_perf_budget_checker.py -q |
Run from the qa-testing-performance/ directory:
# Budget check — PASS/WARN/FAIL per metric, overall CI gate verdict
python scripts/perf_budget_checker.py check --input data/sample-perf-results.json
# CI test tier assignment (PR_gate / nightly / pre_release) for all scenarios
python scripts/perf_budget_checker.py plan --input data/sample-perf-results.json
# Full Markdown performance test report to stdout
python scripts/perf_budget_checker.py report --input data/sample-perf-results.json
# Write report to file
python scripts/perf_budget_checker.py report \
--input data/sample-perf-results.json \
--output report.md
The check and report subcommands exit 1 on FAIL, 0 on PASS or advisory WARN, and 2 on invalid input. A nonempty budget and every budgeted measurement are required; plan also requires at least one valid scenario. WARN zones are local heuristics that permit small breaches; use explicit k6/LHCI error thresholds for a strict gate. See scripts/README.md for full format details and threshold reference.
## Workflow and ## Decision Tree for the baseline sequence and test-type selection## When NOT to Load Test before committing to a full test campaign## Resources, ## Templates, and ## Scripts for deeper materials and automation## Related Skills for observability, resilience, and diagnosis handoffs| Skill | Purpose |
|---|---|
| qa-observability | Metrics, tracing, and performance monitoring |
| qa-resilience | Failure mode testing under load |
| qa-testing-strategy | Risk-based test strategy |
| qa-debugging | Performance debugging and profiling |
| software-performance | Diagnosing an observed regression: profiling, misdiagnoses, tail-latency math, neutral-is-a-revert |
| ops-devops-platform | CI/CD and infrastructure |
| software-backend | Backend API optimization |
| data-sql-optimization | Database query tuning |
When prior decisions or pitfalls are relevant, consult learnings.consolidated.md if present; use learnings.md only for needed history or as the available fallback. Otherwise skip both.
After applying it, if you encountered a pattern worth remembering, a mistake worth preventing, or a domain fact that surprised you, append one dated bullet to learnings.md via agents-skills-feedback-loop/scripts/append_learning.py. Do not modify SKILL.md itself.
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Configures Claude Code hooks and Codex hooks.json/notify. Use when adding PreToolUse guards, Stop hooks, managed hooks, format-on-save, preflight, audits, or worktree/budget hooks.
日本語の概要は準備中です。原文の説明を表示しています。
Configures and hardens Claude Code and Codex MCP servers. Use when connecting databases, APIs, SaaS, building servers, or serving a clearance-filtered knowledge base.
日本語の概要は準備中です。原文の説明を表示しています。
Owns instruction files: AGENTS.md, CLAUDE.md, personal and repo rules. Use when writing, pruning, auditing them, sharing rules across Claude and Codex, or fixing ignored rules.
日本語の概要は準備中です。原文の説明を表示しています。
Creates and audits agent skills: SKILL.md, references, scripts, runtime metadata. Use when writing, validating, or security-reviewing a skill, or fixing truncated skill listings.
日本語の概要は準備中です。原文の説明を表示しています。
Adds per-skill learnings loops for dated patterns, mistakes, and domain facts. Use when wiring skill memory, consolidation, or drift audits.
日本語の概要は準備中です。原文の説明を表示しています。
Chooses subagent, team, workflow, or debate and launches it on Claude Code or Codex. Use when delegating, running agent review boards, or installing shared agents.
日本語の概要は準備中です。原文の説明を表示しています。