perfbench

Measures runtime, memory, and cold-start benchmarks and detects regressions against recorded baselines.

Updated May 27, 2026
One-click install
npx skills add https://github.com/jokerman89/lintel --skill perfbench-jokerman89
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: perfbench
Source: https://github.com/jokerman89/lintel/tree/main/skills/perfbench
Command: npx skills add https://github.com/jokerman89/lintel --skill perfbench-jokerman89

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Teams lack a repeatable way to measure performance and catch regressions before shipping; ad-hoc timing runs produce noisy, non-comparable results. ## Core Features & Use Cases - Repeatable benchmark runs: Detects the repo's benchmark mechanism (package.json bench script, pytest-benchmark, hyperfine, or a bench/ directory) and runs warmup plus N iterations, aggregating median, p50/p95/p99, and memory metrics. - Baseline diffing and regression flags: Compares each scenario against the last recorded baseline and flags regressions at +5% (warn), +15% (P2), and +30% (P1), with likely-cause attribution. - Use Case: After refactoring a hot code path, run the suite to confirm cold-start and render times did not regress, then save the results as the new baseline once verified. ## Quick Start Ask the agent to run the performance benchmark suite and compare the results against the last recorded baseline.

Frequently Asked Questions about perfbench

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I detect performance regressions before shipping code?▼

Run the benchmark suite against the last recorded baseline; each scenario's median, p95, and memory are diffed automatically. Regressions are flagged at +5% (warn), +15% (P2), and +30% (P1) so you can address severe cases before release.

How to benchmark a single scenario like cold-start time?▼

Pass the scenario name with --scenario and increase sampling with --iterations, for example 20 iterations for tighter percentiles. Warmup iterations run first and are discarded so measurements reflect steady-state behavior.

What benchmark tools does it support?▼

It detects a bench script in package.json, pytest-benchmark or hyperfine via pyproject.toml, or a repo-specific bench/ directory. If none exists, you can declare a suite in ~/.lintel/perfbench.yaml.

When should I use a profiler instead of a benchmark suite?▼

Use a profiler when you need to find the root cause of a bottleneck, since benchmarking only measures and compares results. The intended flow is to flag a regression with benchmarks, then hand off to a profiling subagent for investigation.

Why are my benchmark results inconsistent between runs?▼

Single-iteration runs produce high noise; use at least 3 iterations with warmup runs discarded. Comparing results across different machines, such as a laptop versus CI, also produces misleading diffs.