From alfred-dev
Creates and runs reliable benchmarks to measure code change impacts on performance, including latency, throughput. Supports Node.js (vitest, tinybench), Python (pytest-benchmark), frontend (Lighthouse CI), with warmup, stats.
npx claudepluginhub 686f6c61/alfred-dev --plugin alfred-devThis skill uses the workspace's default tool permissions.
Este skill establece un proceso para crear y ejecutar benchmarks fiables que midan el impacto real de los cambios en el rendimiento de una aplicación. Un benchmark mal diseñado es peor que no tener benchmark, porque puede llevar a conclusiones erróneas y optimizaciones contraproducentes.
Benchmarks web page performance via Core Web Vitals, API latency under load, and build times including Docker; detects regressions before/after PRs and compares stacks.
Designs and executes performance tests measuring response times, throughput, resource utilization, latency, and scalability using k6, JMeter, pytest-benchmark, and JMH.
Autonomously optimizes code performance using CodSpeed benchmarks, flamegraph analysis, and iterative measure-analyze-change loops for Rust, Python, Node.js projects.
Share bugs, ideas, or general feedback.
Este skill establece un proceso para crear y ejecutar benchmarks fiables que midan el impacto real de los cambios en el rendimiento de una aplicación. Un benchmark mal diseñado es peor que no tener benchmark, porque puede llevar a conclusiones erróneas y optimizaciones contraproducentes.
El resultado es un informe cuantitativo con métricas estadísticas (media, percentiles) que permite tomar decisiones informadas sobre si un cambio mejora, empeora o no afecta al rendimiento.
Consultar el stack del proyecto. Consultar el stack detectado en la configuración de Alfred para seleccionar la herramienta de benchmarking adecuada al runtime y al tipo de aplicación.
Definir qué se mide y por qué. Antes de escribir código de benchmark, establecer con claridad:
Preparar condiciones controladas. Un benchmark solo es fiable si las condiciones son reproducibles:
Implementar el benchmark con la herramienta adecuada. Seleccionar según el runtime:
vitest bench, tinybench o benchmark.js para microbenchmarks. autocannon o k6 para benchmarks HTTP.pytest-benchmark para microbenchmarks. locust o k6 para carga HTTP.lighthouse ci para métricas web. Web Vitals API para métricas reales en navegador. react-render-tracker o React Profiler API para componentes.hyperfine para benchmarks de línea de comandos.Ejecutar con warmup e iteraciones suficientes. Los JIT compilers y las cachés hacen que las primeras ejecuciones sean atípicas:
Recopilar estadísticas, no solo la media. La media oculta la distribución real del rendimiento:
Comparar antes y después con formato estandarizado. Presentar los resultados en tabla:
| Metrica | Antes | Después | Diferencia | Cambio |
|---|---|---|---|---|
| Media | 120ms | 85ms | -35ms | -29.2% |
| p50 | 115ms | 82ms | -33ms | -28.7% |
| p95 | 180ms | 105ms | -75ms | -41.7% |
| p99 | 250ms | 130ms | -120ms | -48.0% |
Incluir el número de iteraciones y la desviación estándar para evaluar la confianza en los resultados.
Interpretar y documentar. No basta con números; contextualizar los resultados: