agent-eval · affaan-m — скилл для Claude Code: что делает и как установить
Сравнивает кодинг-агентов на ваших задачах по точности, стоимости и времени. Помогает выбрать инструмент на реальных тестах без опоры на субъективные впечатления.
npx skills add affaan-m/ECC --skill agent-eval -a claude-codeЧто делает agent-eval
Скилл автоматизирует сравнение кодинг-агентов вроде Claude Code, Aider и Codex на задачах вашего репозитория. Каждое испытание описывается в YAML-файле: агент получает промпт, список целевых файлов и коммит. Для изоляции запуска используется отдельный git worktree, поэтому ставить Docker не нужно.
Проверка решений опирается на детерминированные тесты вроде pytest и сборки, поиск совпадений через grep или отдельного LLM-судью. По итогам запусков инструмент формирует таблицу с четырьмя метриками: доля успешных попыток, время выполнения, денежные затраты на API и повторяемость результата.
Инструмент пригодится командам перед внедрением нового агента или сменой модели. Если агент нужен лишь для редких правок в личных скриптах, настраивать бенчмарки бессмысленно.
Какие задачи решает
- сравнить кодинг-агентов на реальном коде проекта
- замерить расходы на API и время выполнения задач
- проверить повторяемость решений на нескольких прогонах
- провести регрессионное тестирование после обновления модели агента
Примеры запросов агенту
- Настрой задачу в YAML для проверки Claude Code и Aider на тестах pytest
- Запусти agent-eval run для трех прогонов задачи add-retry-logic
- Собери сводный отчёт agent-eval report по стоимости и pass rate
Как установить agent-eval
1Через Skills CLI (Vercel)
npx skills add affaan-m/ECC --skill agent-eval -a claude-code2Вручную: положить файлы
~/.claude/skills/agent-eval/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/agent-eval/
1Через Skills CLI (Vercel)
npx skills add affaan-m/ECC --skill agent-eval -a codex2Вручную: положить файлы
.agents/skills/agent-eval/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add affaan-m/ECC --skill agent-eval -a cursor2Вручную: положить файлы
.cursor/skills/agent-eval/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install affaan-m/ECC agent-eval2Вручную: положить файлы
.github/skills/agent-eval/SKILL.md1Через Skills CLI (Vercel)
npx skills add affaan-m/ECC --skill agent-eval -a gemini-cli2Командой платформы
gemini skills install https://github.com/affaan-m/ECC --path skills/agent-evalВручную: положить файлы
.devin/skills/agent-eval/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add affaan-m/ECC --skill agent-eval -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
Из того же набора146
Весь набор →Другие версии agent-eval
Похожие
Вопросы о agent-eval
Как установить agent-eval в Claude Code?
Выполните команду npx skills add affaan-m/ECC --skill agent-eval -a claude-code. Конфигурация сохранится по пути ~/.claude/skills/agent-eval/SKILL.md.
Что делает скилл agent-eval?
Он запускает агентов на наборе тестовых задач и замеряет четыре показателя: процент успешных тестов, затраты на API, скорость работы и стабильность результатов.
Нужен ли Docker для изоляции запусков?
Нет, инструмент создаёт отдельный git worktree для каждого прогона, поэтому окружение изолируется без контейнеров.
Исходный текст
SKILL.md · MIT
---
name: agent-eval
description: Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.
license: MIT
metadata:
origin: ECC
tools: Read, Write, Edit, Bash, Grep, Glob
---
# Agent Eval Skill
A lightweight CLI tool for comparing coding agents head-to-head on reproducible tasks. Every "which coding agent is best?" comparison runs on vibes — this tool systematizes it.
## When to Activate
- Comparing coding agents (Claude Code, Aider, Codex, etc.) on your own codebase
- Measuring agent performance before adopting a new tool or model
- Running regression checks when an agent updates its model or tooling
- Producing data-backed agent selection decisions for a team
## Installation
> **Note:** Install agent-eval from its repository after reviewing the source.
## Core Concepts
### YAML Task Definitions
Define tasks declaratively. Each task specifies what to do, which files to touch, and how to judge success:
```yaml
name: add-retry-logic
description: Add exponential backoff retry to the HTTP client
repo: ./my-project
files:
- src/http_client.py
prompt: |
Add retry logic with exponential backoff to all HTTP requests.
Max 3 retries. Initial delay 1s, max delay 30s.
judge:
- type: pytest
command: pytest tests/test_http_client.py -v
- type: grep
pattern: "exponential_backoff|retry"
files: src/http_client.py
commit: "abc1234" # pin to specific commit for reproducibility
```
### Git Worktree Isolation
Each agent run gets its own git worktree — no Docker required. This provides reproducibility isolation so agents cannot interfere with each other or corrupt the base repo.
### Metrics Collected
| Metric | What It Measures |
|--------|-----------------|
| Pass rate | Did the agent produce code that passes the judge? |
| Cost | API spend per task (when available) |
| Time | Wall-clock seconds to completion |
| Consistency | Pass rate across repeated runs (e.g., 3/3 = 100%) |
## Workflow
### 1. Define Tasks
Create a `tasks/` directory with YAML files, one per task:
```bash
mkdir tasks
# Write task definitions (see template above)
```
### 2. Run Agents
Execute agents against your tasks:
```bash
agent-eval run --task tasks/add-retry-logic.yaml --agent claude-code --agent aider --runs 3
```
Each run:
1. Creates a fresh git worktree from the specified commit
2. Hands the prompt to the agent
3. Runs the judge criteria
4. Records pass/fail, cost, and time
### 3. Compare Results
Generate a comparison report:
```bash
agent-eval report --format table
```
```
Task: add-retry-logic (3 runs each)
┌──────────────┬───────────┬────────┬────────┬─────────────┐
│ Agent │ Pass Rate │ Cost │ Time │ Consistency │
├──────────────┼───────────┼────────┼────────┼─────────────┤
│ claude-code │ 3/3 │ $0.12 │ 45s │ 100% │
│ aider │ 2/3 │ $0.08 │ 38s │ 67% │
└──────────────┴───────────┴────────┴────────┴─────────────┘
```
## Judge Types
### Code-Based (deterministic)
```yaml
judge:
- type: pytest
command: pytest tests/ -v
- type: command
command: npm run build
```
### Pattern-Based
```yaml
judge:
- type: grep
pattern: "class.*Retry"
files: src/**/*.py
```
### Model-Based (LLM-as-judge)
```yaml
judge:
- type: llm
prompt: |
Does this implementation correctly handle exponential backoff?
Check for: max retries, increasing delays, jitter.
```
## Best Practices
- **Start with 3-5 tasks** that represent your real workload, not toy examples
- **Run at least 3 trials** per agent to capture variance — agents are non-deterministic
- **Pin the commit** in your task YAML so results are reproducible across days/weeks
- **Include at least one deterministic judge** (tests, build) per task — LLM judges add noise
- **Track cost alongside pass rate** — a 95% agent at 10x the cost may not be the right choice
- **Version your task definitions** — they are test fixtures, treat them as code
## Links
- Repository: [github.com/joaquinhuigomez/agent-eval](https://github.com/joaquinhuigomez/agent-eval)
© affaan-m · MIT · affaan-m/ECC