MCP HubMCP Hub
SKILL·A2B33E

skill-evaluator

HeshamFS
Обновлено 18 days ago
12 просмотров
56
4
56
Посмотреть на GitHub
Метаwordaitestingdesign

О программе

Навык-оценщик — это инструмент для разработчиков, позволяющий тщательно тестировать и сравнивать Навыки Агентов в различных CLI-интерфейсах кодирующих агентов. Он выполняет детерминированную проверку выходных данных скриптов, тестирует точность активации навыков и измеряет улучшения производительности относительно базового уровня без навыков. Используйте его для проверки качества навыков, сравнения версий или настройки оценочного комплекса.

Быстрая установка

Claude Code

Рекомендуется
Основной
npx skills add HeshamFS/materials-simulation-skills -a claude-code
Команда плагинаАльтернативный
/plugin add https://github.com/HeshamFS/materials-simulation-skills
Git клонированиеАльтернативный
git clone https://github.com/HeshamFS/materials-simulation-skills.git ~/.claude/skills/skill-evaluator

Скопируйте и вставьте эту команду в Claude Code для установки этого навыка

Документация

Skill Evaluator

Test whether a skill is correct, discoverable, and valuable — not just whether its unit tests pass. The harness is agent-agnostic: it drives whichever coding-agent CLI the user uses, because Agent Skills are portable across all of them.

When to use which layer

Three layers, increasing cost and fidelity (full rationale in references/methodology.md):

LayerQuestionScriptNeeds a CLI?
1. DeterministicDo the scripts emit the documented numbers?run_script_checks.pyNo
2. TriggerDoes the description activate on the right prompts?run_trigger_eval.pyYes
3. QualityDoes following the SKILL.md beat no skill?run_quality_eval.py → grade → aggregate_benchmark.pyYes

Always run Layer 1 (it's free). Add Layers 2–3 when you can run a coding-agent CLI.

Step 0 — pick the agent CLI

Ask the user which coding agent they use, then map it to an adapter id. Supported: claude-code, openai-codex, antigravity (the agy CLI that replaced Gemini CLI on 2026-06-18), cursor-cli, github-copilot-cli, amp, opencode, grok-cli. See the full matrix and auth in references/adapters.md, or run:

python scripts/agent_adapters.py list

Confirm the binary is installed and the auth env var is set (the matrix lists it). Before any real run, dry-run it to see the exact command:

python scripts/agent_adapters.py build <agent> --prompt "test" --workdir /tmp/wd

Step 1 — deterministic script checks (always)

python scripts/run_script_checks.py --skill <path-to-skill> --json

Runs the script_checks in the skill's evals/evals.json, executing each script and grading its --json output against machine-checkable assertions. Exit non-zero on any failure — safe for CI. If the skill has few/no script_checks, add them for every eval whose answer is computable (schema in references/schemas.md); this is the cheapest, most durable guard against doc↔code drift.

Step 2 — trigger / discovery eval

Does the description fire on the right prompts and stay quiet on near-misses?

# Dry-run first (prints the per-CLI commands, runs nothing):
python scripts/run_trigger_eval.py --skill <path> --agent <agent> --dry-run

# Real run with a labelled query set (~20: half should-trigger, half near-miss):
python scripts/run_trigger_eval.py --skill <path> --agent <agent> \
  --queries queries.json --runs-per-query 3 --json

Design the query set per references/methodology.md (positives + tricky negatives). Without --queries, the skill's eval prompts are used as should-trigger cases — add negatives for a real discrimination test.

Step 3 — output-quality eval (the with/without delta)

The headline measure: does an agent following the SKILL.md beat no skill?

# 1. Dry-run the plan (no tokens spent):
python scripts/run_quality_eval.py --skill <path> --agent <agent> \
  --workspace <skill>-workspace --dry-run

# 2. Real run: with-skill AND no-skill baseline, isolated clean dirs each:
python scripts/run_quality_eval.py --skill <path> --agent <agent> \
  --workspace <skill>-workspace --iteration 1 --json

This installs the skill into a temp project skills dir for the with-skill run, runs a clean baseline without it, and captures outputs/, response.txt, and timing.json per run.

Then grade each run against its assertions and write grading.json (references/grader.md — re-derive numbers, require concrete evidence, no partial credit, critique weak assertions). For mechanically checkable assertions, reuse Layer 1 rather than eyeballing.

Then aggregate into the benchmark with the delta:

python scripts/aggregate_benchmark.py <skill>-workspace/iteration-1 \
  --skill-name <name> --agent <agent> --json

run_summary.delta.pass_rate is the value of the skill. Surface patterns the averages hide (references/methodology.md): non-discriminating assertions, high-variance evals, time/token tradeoffs. Put outputs in front of the user before concluding.

Step 4 — iterate

Improve the skill from the signals (failed assertions, weak-assertion feedback, transcripts, human review), generalizing rather than overfitting, keeping it lean, explaining the why, and bundling repeated work into scripts. Rerun into iteration-<N+1>/ and compare. Stop when results satisfy the user, feedback is empty, or gains plateau. For "is the new version actually better?", use the blind comparison described in references/methodology.md.

Outputs to report

  • Layer 1: checks passed / assertions passed; any doc↔code drift found.
  • Layer 2: trigger pass rate (positives that fired, negatives that stayed quiet).
  • Layer 3: with-skill vs. without-skill pass rate delta, plus time/token cost.

Reference files

  • references/adapters.md — per-CLI headless command, skills dir, auth, caveats.
  • references/methodology.md — the rigorous practices (read for non-trivial evals).
  • references/grader.md — how to grade a run into grading.json.
  • references/schemas.md — exact JSON shapes for every file.

Security

Input Validation

  • --agent is resolved against a fixed allowlist of known adapter ids/aliases (agent_adapters.py); unknown values are rejected (exit 2).
  • --skill must be a directory containing SKILL.md or the runners exit 2.
  • script_checks operators and dotted paths are matched against fixed sets; no user string is ever eval()'d or passed to a shell.

File Access

  • The deterministic layer runs a skill's own scripts with the real interpreter and reads only that skill's evals/evals.json.
  • The quality/trigger layers create isolated working directories under a user-supplied workspace, copy the skill into them, and write results there.

Tool Restrictions

  • Bash: runs the harness Python scripts and the selected coding-agent CLI.
  • Read/Grep/Glob: inspect skills and results. Write: scaffold workspaces.

Safety Measures

  • No eval()/exec(); subprocess calls use explicit argument lists (never shell=True); commands are built from the adapter spec, not string-concatenated.
  • The trigger/quality layers pass each CLI's auto-approve flag (e.g. --dangerously-skip-permissions), which runs the agent with reduced safeguards. Only evaluate skills you trust, ideally inside a sandbox/container. Always --dry-run first to inspect the exact command. Auth is read from environment variables, never passed as command arguments.

Limitations

  • Layers 2–3 require a supported CLI installed and authenticated; otherwise use Layer 1 only.
  • Trigger detection is a cross-tool heuristic (did the transcript consult the skill?); for the most precise detection on Claude Code, parse its stream-json tool-use events.
  • Token accounting is best-effort — only some CLIs report usage in headless output.
  • New CLIs (Antigravity, Grok) are medium confidence; verify flags with the vendor --help and --dry-run.

GitHub репозиторий

HeshamFS/materials-simulation-skills
Путь: skills/meta/skill-evaluator
0
agent-skillsagentscli-toolscomputational-sciencellmmaterials-science
FAQ

Frequently asked questions

What is the skill-evaluator skill?

skill-evaluator is a Claude Skill by HeshamFS. Skills package instructions and resources that Claude loads on demand, so Claude can perform skill-evaluator-related tasks without extra prompting.

How do I install skill-evaluator?

Use the install commands on this page: add skill-evaluator to Claude Code as a plugin, or clone its repository into your skills directory, then restart Claude so it picks up the skill.

What category does skill-evaluator belong to?

skill-evaluator is in the Meta category, tagged word, ai, testing and design.

Is skill-evaluator free to use?

Yes. skill-evaluator is listed on AIMCP and free to install. It runs inside Claude, so no separate service account is required to use the skill itself.

Похожие навыки

content-collections
Мета

Этот навык предоставляет проверенную в продакшене настройку для Content Collections — TypeScript-ориентированного инструмента, который преобразует файлы Markdown/MDX в типобезопасные коллекции данных с валидацией Zod. Используйте его при создании блогов, сайтов документации или контентных приложений на Vite + React для обеспечения типобезопасности и автоматической проверки содержимого. Он охватывает всё: от настройки плагина Vite и компиляции MDX до оптимизации развертывания и валидации схем.

Просмотреть навык
polymarket
Мета

Этот навык позволяет разработчикам создавать приложения на платформе прогнозных рынков Polymarket, включая интеграцию с API для торговли и получения рыночных данных. Он также обеспечивает потоковую передачу данных в реальном времени через WebSocket для отслеживания текущих сделок и рыночной активности. Используйте его для реализации торговых стратегий или создания инструментов, обрабатывающих обновления рынка в реальном времени.

Просмотреть навык
creating-opencode-plugins
Мета

Этот навык помогает разработчикам создавать плагины OpenCode, которые подключаются к более чем 25 типам событий, таким как команды, файлы и операции LSP. Он предоставляет структуру плагина, спецификации API событий и шаблоны реализации для модулей на JavaScript/TypeScript. Используйте его, когда вам нужно перехватывать, отслеживать или расширять жизненный цикл ассистента OpenCode AI с помощью пользовательской событийно-ориентированной логики.

Просмотреть навык
sglang
Мета

SGLang — это высокопроизводительный фреймворк для обслуживания больших языковых моделей (LLM), специализирующийся на быстрой структурированной генерации JSON, regex и рабочих процессов агентов с использованием кэширования префиксов RadixAttention. Он обеспечивает значительно более высокую скорость вывода, особенно для задач с повторяющимися префиксами, что делает его идеальным для сложных структурированных результатов и многократных диалогов. Выбирайте SGLang вместо альтернатив, таких как vLLM, когда вам требуется ограниченное декодирование или вы создаете приложения с интенсивным совместным использованием префиксов.

Просмотреть навык