Skip to content
benchmark-advisor logo

Benchmark Advisor Skill

benchmark-advisor

Suggests which benchmarks to run based on code changes

SKILL.md

Full skill instructions

Benchmark Advisor Skill

This skill analyzes your code changes and recommends specific Criterion benchmarks to run.

When to Use

This skill automatically activates when:

  • You've made changes to performance-critical code
  • You're preparing to commit performance-related work
  • You want to verify your changes don't introduce regressions

How It Works

  1. Detects Changed Files: Analyzes git diff to see which files you've modified
  2. Maps to Benchmarks: Uses pattern matching to identify relevant benchmarks
  3. Provides Recommendations: Suggests specific cargo bench commands with explanations

Usage

Simply ask:

  • "What benchmarks should I run?"
  • "Which benchmarks are affected by my changes?"
  • "Suggest benchmarks for my current work"

Skill Logic

# 1. Detect changed files
CHANGED_FILES=$(git diff --name-only HEAD)

# 2. Load mapping configuration
# See mapping.toml for file-to-benchmark mappings

# 3. Match changed files to benchmarks
# Example mappings:
#   src/​cache/​**/​*.rs → cargo bench --bench cache
#   src/​config/​**/​*.rs → cargo bench --bench config
#   src/​main.rs → cargo bench (full suite - affects startup time)

# 4. Generate recommendation with explanation

Example Interaction

User: "What benchmarks should I run?"

Claude: "I analyzed your changes and found modifications to:

  • src/​cache/​manifest.rs
  • src/​cache/​lru.rs

Recommended benchmarks:

cargo bench --bench cache

Why: Changes to cache implementation files can affect cache operation performance (get_model, add_model, remove_model, lru_eviction).

You can also run the full suite if you want comprehensive validation:

cargo bench
```"

## Mapping Configuration

The skill uses `mapping.toml` to define file patterns and their corresponding benchmarks:

```toml
# Cache-related files
[[mapping]]
pattern = "src/​cache/​**/​*.rs"
benchmark = "cargo bench --bench cache"
reason = "Cache implementation changes can affect cache operation performance"

# Config-related files
[[mapping]]
pattern = "src/​config/​**/​*.rs"
benchmark = "cargo bench --bench config"
reason = "Config loading and merging performance may be impacted"

# Main entry point
[[mapping]]
pattern = "src/​main.rs"
benchmark = "cargo bench"
reason = "Main entry point affects startup time - run full suite"

Output Format

Concise: Lists changed files, recommended command, and brief explanation

No false positives: Only suggests benchmarks for performance-critical changes

Actionable: Provides exact commands to copy/​paste

More Other skills

Delegate independent tasks to specialized agents working concurrently with isolated context.

295.4K 206.3K
View

Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.

179.7K 100.1K
View

Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.

179.7K 89.5K
View

A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).

179.7K 76.1K
View

Fundamental design principles for writing maintainable, testable Python code.

40.2K 21.9K
View

Modern responsive layouts using container queries, fluid typography, CSS Grid, and mobile-first strategies.

40.2K 20K
View

Generate Playwright tests from scenarios using interactive browser exploration and validation.

39.7K 18.2K
View

Modern React state management with Redux Toolkit, Zustand, Jotai, and React Query for every state category.

40.2K 14.7K
View

GDPR-compliant data handling with consent management, data subject rights, and privacy controls.

40.2K 14.3K
View

Python error handling patterns including input validation, exception hierarchies, and partial failure handling. Use when implementing validation logic, designing exception strategies, handling batch processing failures, or building robust APIs.

40.2K 13.5K
View

Detailed multi-file refactor planning with safety checks and rollback guidance.

39.7K 13K
View