skill-forge-build
Scaffold and build Claude Code skills from plans or descriptions. Generates SKILL.md files, sub-skills, scripts, references,…
Benchmark Claude Code skill performance with variance analysis, tracking pass rate, execution time, and token usage across iterations. Runs multiple trials per eval for statistical reliability, aggregates results into benchmark.json, and generates comparison reports between
$ npx -y skills add AgriciDaniel/skill-forge --skill skill-forge-benchmark --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/skill-forge-benchmarkContext preview
The summary Claude sees to decide when to auto-load this skill.
Benchmark Claude Code skill performance with variance analysis, tracking pass rate, execution time, and token usage across iterations. Runs multiple trials per eval for statistical reliability, aggregates results into benchmark.json, and generates comparison reports between
name: skill-forge-benchmark description: > Benchmark Claude Code skill performance with variance analysis, tracking pass rate, execution time, and token usage across iterations. Runs multiple trials per eval for statistical reliability, aggregates results into benchmark.json, and generates comparison reports between skill versions. Use when user says "benchmark skill", "measure skill performance", "skill metrics", "compare skill versions", "skill performance", "track skill improvement", "skill regression test", or "skill A/B test".
Measure and compare skill performance across iterations with statistical rigor using multiple trials, variance analysis, and trend tracking.
Accept configuration as:
**Benchmark config schema:**
{
"skill_name": "my-skill",
"skill_path": "./my-skill",
"eval_set_path": "./evals/evals.json",
"trials_per_eval": 3,
"baseline_type": "no_skill",
"previous_benchmark": null,
"thresholds": {
"min_pass_rate": 0.8,
"max_avg_tokens": 100000,
"max_avg_duration_seconds": 120,
"min_improvement_ratio": 1.0
}
}For each eval, run `trials_per_eval` times (default: 3) to get reliable metrics:
1. Execute with-skill runs (3x per eval) 2. Execute baseline runs (3x per eval) 3. Capture per-run: pass/fail, token count, duration 4. Save each run's `timing.json` and `grading.json`
Use `agents/skill-forge-executor.md` for parallel execution where possible.
Run `python scripts/aggregate_benchmark.py <workspace>/iteration-<N> --skill-name <name>`:
**Output `benchmark.json` schema:**
{
"skill_name": "my-skill",
"iteration": 1,
"timestamp": "2026-03-06T12:00:00Z",
"summary": {
"total_evals": 10,
"with_skill": {
"pass_rate": 0.87,
"pass_rate_std": 0.05,
"avg_tokens": 45000,
"avg_duration_seconds": 34.2
},
"baseline": {
"pass_rate": 0.60,
"pass_rate_std": 0.08,
"avg_tokens": 62000,
"avg_duration_seconds": 52.1
},
"improvement_ratio": 1.45,
"token_savings_ratio": 0.73,
"time_savings_ratio": 0.66
},
"per_eval": [
{
"eval_id": 0,
"eval_name": "basic-trigger",
"with_skill": {"pass_rate": 1.0, "avg_tokens": 30000, "avg_duration_seconds": 20.1},
"baseline": {"pass_rate": 0.67, "avg_tokens": 50000, "avg_duration_seconds": 45.0},
"trials": 3
}
],
"thresholds_met": {
"min_pass_rate": true,
"max_avg_tokens": true,
"max_avg_duration_seconds": true,
"min_improvement_ratio": true
}
}If `previous_benchmark` is provided or prior `iteration-<N-1>` exists:
1. Load previous `benchmark.json` 2. Calculate delta per metric:
# Benchmark Report: [skill-name] ## Iteration [N] vs [N-1] ### Summary | Metric | Current | Previous | Delta | Threshold | Status | |--------|---------|----------|-------|-----------|--------| | Pass Rate | 87% | 78% | +9% | >= 80% | PASS | | Avg Tokens | 45K | 52K | -13% | <= 100K | PASS | | Avg Time | 34s | 41s | -17% | <= 120s | PASS | | Improvement | 1.45x | 1.30x | +0.15x | >= 1.0x | PASS | ### Regressions (Action Required) | Eval | Previous | Current | Notes | |------|----------|---------|-------| | eval-5 | PASS | FAIL | Output missing required section | ### Improvements | Eval | Previous | Current | Notes | |------|----------|---------|-------| | eval-3 | FAIL | PASS | Error handling now works | ### Per-Eval Detail [Full breakdown table] ### Variance Analysis | Eval | Pass Rate | Std Dev | Trials | Reliability | |------|-----------|---------|--------|-------------| | eval-0 | 100% | 0.00 | 3 | High | | eval-1 | 67% | 0.47 | 3 | Low (investigate) | ### Recommendations [Based on regressions, low-reliability evals, and threshold failures]
If any threshold fails: 1. Flag as **FAIL** with specific threshold details 2. List which evals caused the failure 3. Recommend running `/skill-forge evolve` to address issues 4. Do NOT approve for publish until thresholds pass
Blog: Learn how to build Claude Code skills Design, scaffold, build, review, evolve, and publish production-grade Claude Code skills following the Agent Skills open standard.
Scaffold and build Claude Code skills from plans or descriptions. Generates SKILL.md files, sub-skills, scripts, references,…
Convert Claude Code skills to work on OpenAI Codex, Google Gemini CLI, Google Antigravity, and Cursor. Analyzes platform-specific…
Run evaluation pipelines on Claude Code skills to test triggering accuracy, workflow correctness, and output quality. Spawns…
Improve and iterate on existing Claude Code skills based on usage feedback, test results, or changing requirements. Handles…
Architecture and design planning for new Claude Code skills. Guides through use case definition, complexity tier selection,…
Package and distribute Claude Code skills for sharing via GitHub, Claude.ai uploads, or team deployment. Creates install scripts,…