К основному содержанию
скилл CX Codex

eval-runner — скилл для Claude Code: что делает и как установить

Запускает сценарии бенчмаркинга для оценки агента в Mycelium и фиксирует метрики прогона.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add haabe/mycelium --skill eval-runner -a claude-code
Открыть на GitHub

Что делает eval-runner

Скилл предназначен для запуска эвалов по сценариям из каталога .claude/evals/scenarios/. Он парсит параметры задачи, выполняет шаги настройки, прогоняет решение через цикл рефлексии с учётом предыдущих исправлений и проверяет все критерии успеха. Результаты сохраняются в формате JSON внутри .claude/evals/results/, а сводная статистика обновляет .claude/evals/pass-history.json.

Команды поддерживают пакетный запуск тестов в изоляции через git stash, разделение сценариев на сплиты optimization и holdout, генерацию табличных отчётов и очистку устаревших тестов командой prune. Инструмент mine умеет анализировать журнал изменений .claude/state/change-log.jsonl и находить проблемные места в коде или инструкциях, предлагая новые шаблоны сценариев.

Скилл рассчитан на работу внутри фреймворка Mycelium: автономный запуск пропускает состояние канваса и встроенные проверки среды.

Какие задачи решает

  • запустить бенчмарк агента по готовым YAML-сценариям
  • собрать сводную таблицу успешности и времени выполнения прогонов
  • выявить кластеры частых правок и сгенерировать новые тесты из логов
  • провести аудит устаревших и неработающих проверок командой prune

Примеры запросов агенту

  • Запусти сценарий delivery/api-cache через eval-runner
  • Собери отчёт по результатам бенчмарков командой eval-runner report
  • Проанализируй логи изменений и предложи новые эвалы через eval-runner mine

Как установить eval-runner

1Через Skills CLI (Vercel)

npx skills add haabe/mycelium --skill eval-runner -a claude-code

2Вручную: положить файлы

~/.claude/skills/eval-runner/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/eval-runner/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о eval-runner

Как установить eval-runner в Claude Code?

Выполните в терминале команду npx skills add haabe/mycelium --skill eval-runner -a claude-code.

Что делает скилл eval-runner?

Он выполняет тестовые сценарии для проверки качества работы агента, проверяет критерии успеха, изолирует прогоны через git stash и ведёт историю прохождения тестов.

Можно ли использовать eval-runner без фреймворка Mycelium?

При автономном использовании скилл пропустит состояние канваса, теоретические гейты и логику harness-окружения, на которые он опирается.

Исходный текст

SKILL.md · MIT
---
name: eval-runner
description: "Run eval scenarios to benchmark Mycelium effectiveness. Execute tasks using reflexion loop, validate against success criteria, record metrics."
metadata:
  instruction_budget: "41"
  framework_dependency: "mycelium"
  framework_dependency_note: "This skill is designed to run within the Mycelium framework (https://github.com/haabe/mycelium). Standalone use will skip the canvas state, theory gates, and harness behavior the skill assumes. Install: /plugin install mycelium@haabe-mycelium."
---

# Eval Runner

Benchmark the agent's performance against defined scenarios. Adapted from n-trax eval system.

## Commands

### `run <category/name>`
1. Read YAML from `.claude/evals/scenarios/<category>/<name>.yml`
2. Parse fields (name, category, task_prompt, success_criteria, budget)
3. Execute setup steps if defined
4. Record start time
5. Execute task via reflexion workflow (read corrections first)
6. Record end time and iteration count
7. Validate ALL success criteria
8. Write result JSON to `.claude/evals/results/<timestamp>-<name>.json`
9. Report summary

### `run-all [category]`
1. Glob `.claude/evals/scenarios/**/*.yml`
2. Skip scenarios with `status: retired`
3. For each: run in isolation (git stash), record result, restore
4. Update `.claude/evals/pass-history.json` with each result
5. Aggregate and report

### `run-split <optimization|holdout>`
1. Glob `.claude/evals/scenarios/**/*.yml`
2. Read each YAML, filter by `split` field matching the requested set
3. Skip scenarios with `status: retired`
4. For each matching scenario: run in isolation, record result, restore
5. Update `.claude/evals/pass-history.json` with each result
6. Aggregate and report (label output clearly as "Optimization Set" or "Holdout Set")

### `report`
1. Read all results from `.claude/evals/results/`
2. Generate summary table:
```
| Category    | Pass Rate | Avg Iterations | Avg Time | Notes |
|-------------|-----------|----------------|----------|-------|
| discovery   | ...       | ...            | ...      |       |
| delivery    | ...       | ...            | ...      |       |
| integration | ...       | ...            | ...      |       |
| **Overall** | ...       | ...            | ...      |       |
```
3. List failure patterns and recommendations

### `prune`
1. Read `.claude/evals/pass-history.json`
2. Flag evals where `last_5` is all-pass (`saturated`) or all-fail (`broken`)
3. Flag evals with no runs in 30+ days (`stale`)
4. For saturated evals, suggest: retire or increase difficulty
5. For broken evals, suggest: fix criteria or retire
6. Present recommendations — do NOT auto-retire
7. On user confirmation: set `status: retired` in scenario YAML, update pass-history.json, log in .claude/harness/decision-log.md

### `mine`
Analyze audit logs to propose new eval scenarios from observed failure patterns.

1. Read `.claude/state/change-log.jsonl` (last 100 entries)
2. Read `.claude/state/diamond-state-audit.jsonl` (all entries)
3. Group change-log entries by `session_id`, identify:
   a. **Correction clusters**: 3+ edits to same file in one session (agent struggled)
   b. **Skill friction**: edits to `.claude/skills/*/SKILL.md` during a session (instructions unclear)
   c. **Missing test coverage**: 5+ files changed with no test file edits
4. Count diamond bypass entries from audit log
5. Cross-reference with existing scenarios in pass-history.json to avoid duplicates
6. For each pattern, output a proposed eval scenario as YAML template
7. Tag proposals with `source: trace-mining` and originating `session_id`
8. Do NOT auto-create files — present for human review

See `.claude/evals/schema.md` §Trace Mining Heuristics for pattern-to-eval mappings.

## Result Format
See `.claude/evals/schema.md` for YAML scenario and JSON result formats.

## Pass History
After writing each result JSON (step 8 of `run`), also update `.claude/evals/pass-history.json`:
- Increment `runs` and `passes` (if passed) for the eval
- Append `true`/`false` to `last_5` (trim to keep only last 5)
- Update `last_run` timestamp

## Creating Scenarios
Place YAML files in `.claude/evals/scenarios/<category>/`. Define task_prompt, success_criteria, and budget. Set `split`, `status`, and `source` fields per schema.

© haabe · MIT · haabe/mycelium

Похожие скиллы

Все скиллы по теме «Настройка агента: память, контекст, субагенты» →
setup-matt-pocock-skills Matt Pocock Скилл настраивает репозиторий для инженерных скиллов Matt Pocock: задаёт трекер задач, метки триажа и расположение доменной документации. Запустите его перед первым использованием остальных скиллов. 1 052 851установок ask-matt Matt Pocock Помогает выбрать подходящий скилл или рабочий поток из набора Matt Pocock. Пригодится, когда непонятно, с чего начать задачу: от идеи до разбора бага. 766 587установок to-tickets Matt Pocock Разбивает план, спецификацию или переписку на небольшие сквозные задачи и отмечает, какие из них блокируют остальные. Пригодится, когда нужно согласовать порядок работы до публикации задач в трекере. 711 230установок writing-plans Jesse Vincent Скилл превращает требования к многошаговой задаче в подробный план реализации до начала работы с кодом. Пригодится, когда исполнителю нужно зафиксировать файлы, интерфейсы и проверки. CX Codex 282 859установок caveman-review JuliusBrussee Пишет замечания к коду одной строкой: место, проблема, исправление. Пригодится, когда ревью диффа или PR надо пройти быстро и без воды. CX Codex +1 411 800установок caveman-compress JuliusBrussee Сжимает CLAUDE.md, списки задач и другие текстовые файлы в краткий формат, сохраняя читаемую резервную копию. CX Codex +1 411 500установок

Из того же набора58

friction-log Собирает черновик честного отчёта о том, где работа с Mycelium путала или тормозила. Пользователь правит его сам и решает, отправлять ли. CX Codex +1 ★ 47звёзд репо framework-health Оценивает эффективность процессов фреймворка Mycelium по истории завершённых циклов разработки. CX Codex +1 ★ 47звёзд репо feedback-review Сводит сигналы из циклов обратной связи Mycelium: показывает состояние, просроченные проверки и регрессии. Запускайте его при застое метрик или после неудачного запуска. CX Codex +1 ★ 47звёзд репо fan-out Разворачивает несколько субагентов на одну задачу, а потом сводит их результаты в один выбор. Нужен, когда решений два и больше и надо понять, какое выживет. CX Codex +1 ★ 47звёзд репо dora-check Оценивает состояние доставки продукта по подходящим метрикам. Для ПО использует DORA и APEX, а для других типов продуктов выбирает отдельный подход. CX Codex +1 ★ 47звёзд репо diamond-render Строит схему решений из .claude/diamonds/active.yml: что уже записано, в каком порядке и что ещё впереди. Пригодится в конце оценки проекта. CX Codex +1 ★ 47звёзд репо diamond-progress Скилл фиксирует проектные решения в рамках Mycelium, проверяет теоретические гейты и запускает чек-лист Definition of Done при закрытии этапа. CX Codex +1 ★ 47звёзд репо diamond-assess Скилл оценивает текущее состояние «алмаза», проверяет гейты теории и предлагает следующий шаг. Нужен для работы с фреймворком Mycelium. CX Codex +1 ★ 47звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой