with one click
perf-benchmarker
// Use when running performance benchmarks, establishing baselines, or validating regressions with sequential runs. Enforces 60s minimum runs (30s only for binary search) and no parallel benchmarks.
// Use when running performance benchmarks, establishing baselines, or validating regressions with sequential runs. Enforces 60s minimum runs (30s only for binary search) and no parallel benchmarks.
Use when generating performance hypotheses backed by git history and code evidence.
Use when synthesizing perf findings into evidence-backed recommendations and decisions.
Use when managing perf baselines, consolidating results, or comparing versions. Ensures one baseline JSON per version.
Use when mapping code paths, entrypoints, and likely hot files before profiling.
Use when appending structured perf investigation notes and evidence.
Use when profiling CPU/memory hot paths, generating flame graphs, or capturing JFR/perf evidence.
| name | perf-benchmarker |
| description | Use when running performance benchmarks, establishing baselines, or validating regressions with sequential runs. Enforces 60s minimum runs (30s only for binary search) and no parallel benchmarks. |
| version | 5.1.0 |
| argument-hint | [command] [duration] |
Run sequential benchmarks with strict duration rules.
Follow docs/perf-requirements.md as the canonical contract.
const args = '$ARGUMENTS'.split(' ').filter(Boolean);
const command = args.find(a => !a.match(/^\d+$/)) || '';
const duration = parseInt(args.find(a => a.match(/^\d+$/)) || '60', 10);
command: <benchmark command>
duration: <seconds>
warmup: <seconds>
results: <metrics summary>
notes: <anomalies or reruns>
Benchmarks MUST emit a JSON metrics block between markers:
PERF_METRICS_START
{"scenarios":{"low":{"latency_ms":120},"high":{"latency_ms":450}}}
PERF_METRICS_END