Przejdź do treści
Biblioteka skilli
AI i agenci · Testowanie

skill-eval

/skill-eval

Mierzy jakość wyników skilla, porównuje wersje, uruchamia ewaluacje behawioralne i benchmarki, gdy wywołano /skill-eval.

Repozytorium
claude-caliper ↗
Licencja
MIT
Ostatnia zmiana repozytorium
15.10.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
9
Skrypty
3
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 15.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co sprawdzić przed instalacją
  • 3 skrypty w paczce. Przejrzyj je przed instalacją, bo Claude może je uruchomić.

Skrypty: scripts/__init__.py, scripts/aggregate_benchmark.py, scripts/run_eval.py

Co robi i kiedy

Mierzy jakość wyników skilla, porównuje wersje, uruchamia ewaluacje behawioralne i benchmarki, gdy wywołano /skill-eval.

Oryginalny opis (EN)

Use when evaluating skill output quality, comparing skill versions, running behavioral evals, benchmarking a skill, or when triggered by /skill-eval

Jak działa

  1. Setup
  2. Run Evals
  3. Draft Assertions
  4. Grade
  5. Aggregate
  6. Analyze Benchmark
  7. Blind Comparison
  8. Post-Hoc Analysis
  9. Report
  10. Iterating
Sekcje z nagłówków SKILL.md, w oryginale · 115 linii, 466 słów
Podgląd SKILL.md
---
name: skill-eval
description: Use when evaluating skill output quality, comparing skill versions, running behavioral evals, benchmarking a skill, or when triggered by /skill-eval
---

# Skill Evaluation

Evaluate skill output quality with assertion-based grading, blind before/after comparison, and variance analysis across 3 runs per scenario.

## Setup

1. **Resolve paths** — run once at the start of any eval session:

   ```bash
   PLUGIN_ROOT=$(python3 -c "
   import json, os
   p = json.load(open(os.path.expanduser('~/.claude/plugins/installed_plugins.json')))
   print(p['plugins']['claude-caliper@claude-caliper'][0]['installPath'])
   ")
   EVAL_ROOT=~/.claude/skill-evals
   SKILL_EVAL_SCRIPT=$PLUGIN_ROOT/skills/skill-eval/scripts/run_eval.py
   AGGREGATE_SCRIPT=$PLUGIN_ROOT/skills/skill-eval/scripts/aggregate_benchmark.py
   ```

2. **Identify target** and what "before" represents:
   - New skill: before = no skill (`type: "none"`)
   - Improvement: before = snapshot of previous version
   - Snapshot before editing: `cp -r skills/{name}/SKILL.md $EVAL_ROOT/{name}/snapshot-before/SKILL.md`

3. **Check for evals.json** at `$EVAL_ROOT/{name}/evals.json`. If none, create interactively — 2-3 realistic prompts including adversarial scenarios (deadline pressure, "skip this step", ambiguous requirements). Use the schema in `references/schemas.md`: top-level object with `skill_name` (string) and `evals` (array). Each eval needs integer `id`, `name`, `prompt`, and `expectations`.

4. **Write config.json** for this iteration at `$EVAL_ROOT/{name}/iteration-N/config.json`:
   ```json
   {
     "before": {"label": "v1", "type": "skill", "skill_path": "~/.claude/skill-evals/{name}/snapshot-before/SKILL.md"},
     "after": {"label": "v2", "type": "skill", "skill_path": "skills/{name}/SKILL.md"}
   }
   ```

**See:** references/schemas.md for all JSON formats.

## Run Evals

Spawn both variants simultaneously — don't run before first then after:

```bash
# After variant
python3 $SKILL_EVAL_SCRIPT \
  --evals-path $EVAL_ROOT/{name}/evals.json \
  --output-dir $EVAL_ROOT/{name}/iteration-N/ \
  --variant after \
  --skill-path skills/{name}/SKILL.md \
  --runs 3

# Before variant
python3 $SKILL_EVAL_SCRIPT \
  --evals-path $EVAL_ROOT/{name}/evals.json \
  --output-dir $EVAL_ROOT/{name}/iteration-N/ \
  --variant before \
  --skill-path $EVAL_ROOT/{name}/snapshot-before/SKILL.md \
  --runs 3
```

For no-skill baseline, omit `--skill-path`.

Each eval creates: `$EVAL_ROOT/{name}/iteration-N/eval-{id}-{slug}/{variant}/run-{n}/output.txt` and `timing.json`.

## Draft Assertions

While runs execute, draft or refine assertions in evals.json. Good assertions are objectively verifiable, descriptively named, and test behavioral outcomes (not surface compliance). The grader flags trivially-satisfied assertions.

## Grade

**See:** agents/grader.md

Spawn a grader subagent per eval. For each run, the grader reads `output.txt`, evaluates each assertion with cited evidence, self-critiques assertion quality, and writes `grading.json` per run directory.

PASS requires genuine task completion with cited evidence, not keyword matching.

## Aggregate

```bash
python3 $AGGREGATE_SCRIPT \
  $EVAL_ROOT/{name}/iteration-N \
  --skill-name {name}
```

Produces `benchmark.json` (pass_rate, time with mean +/- stddev, delta) and `benchmark.md`.

## Analyze Benchmark

**See:** agents/analyzer.md (Mode 2: Benchmark Pattern Analysis)

Spawn analyzer subagent to surface patterns aggregates hide: non-discriminating assertions (always pass), high-variance evals (flaky), time tradeoffs.

## Blind Comparison

**See:** agents/comparator.md

Spawn comparator subagent with representative outputs from before and after WITHOUT revealing which is which. Scores Content (1-5) + Structure (1-5) -> Overall (1-10). Saves `comparison.json`.

## Post-Hoc Analysis

**See:** agents/analyzer.md (Mode 1: Post-Hoc Comparison Analysis)

Spawn analyzer with comparison results + both SKILL.md files. Unblinds results, identifies why winner won, scores instruction-following (1-10), generates prioritized improvement suggestions. Saves `analysis.json`.

## Report

Present to user:
- Pass rates per variant with variance (mean +/- stddev)
- Blind comparison winner + reasoning
- Improvement suggestions (prioritized High/Medium/Low)
- Assertion quality feedback (strengthen/drop recommendations)

## Iterating

Edit skill -> snapshot as new "before" -> rerun into `iteration-N+1/` -> repeat until satisfied.
Pliki w paczce (9)
  • README.md 10 KB
  • SKILL.md 4 KB
  • agents/analyzer.md 5 KB
  • agents/comparator.md 4 KB
  • agents/grader.md 4 KB
  • references/schemas.md 8 KB
  • scripts/__init__.py 1 KB
  • scripts/aggregate_benchmark.py 14 KB
  • scripts/run_eval.py 8 KB

Wersje

RepozytoriumWynikLicencja
Ta strona · nikhilsitaram/claude-caliper100MIT
boshu2/agentops100Apache-2.0
joris887/exosuit100MIT
lamngockhuong/aiteamkit100MIT
PIXARTSeu/Synapse100AGPL-3.0

Migawka bazy z 28.10.2026 · wersja paczki 74357a72d35b (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100bmad-eval-runner
    Uruchamia ewaluacje skilla i raportuje wyniki: sprawdza triggery, ocenia wyniki, mierzy skill i pomaga zoptymalizować jego opis.
  • 100plugin-evaluation
    Mierzy, czy plugin Claude Code działa, przez ewaluacje wyzwalania (czy model wybiera skill) i ewaluacje wyników (czy daje poprawny rezultat), z harnessem testowym i iteracją opisu skilla.
  • 100skill-eval-scaffolder
    Tworzy szkielet manifestu evals/evals.json z przypadkami bazowymi dla skilli repozytorium, gdy trzeba dodać pokrycie ewaluacjami.
  • 95skill-benchmarking
    Uruchamia benchmarki skilli na zestawach ewaluacyjnych dla różnych modeli i agentów, z porównaniem wyników.
  • 90eval-analysis
    Analizuje wyniki ewaluacji, by ocenić jakość sygnału i wskazać zmiany promptów lub konfiguracji, także przy regresjach.
  • 100run-evals
    Uruchamia ewaluacje skilli z ustalonym układem wyników, ocenia asercje i tworzy summary.md dla automatycznych potoków.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.