evaluate-skill-with-copilot-sdk
Evaluate a skill with the GitHub Copilot SDK — measure its triggering accuracy and compare its output quality against a no-skill baseline.
Skill by tezansahu
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tezansahu-evaluate-skill-with-copilot-sdk
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/evaluate-skill-with-copilot-sdk
What's inside
- Skill name
evaluate-skill-with-copilot-sdk- Description
- Evaluate a skill with the GitHub Copilot SDK — measure its triggering accuracy and compare its output quality against a no-skill baseline.
- License
- GPL-3.0
- Instructions
- 274 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (19)
- SKILL.md
- quality_evalset.example.json · assets/
- quality_review_template.html · assets/
- trigger_dashboard_template.html · assets/
- trigger_queryset.example.json · assets/
- copilot-sdk.md · references/
- models.md · references/
- quality-evals.md · references/
- schemas.md · references/
- triggering-evals.md · references/
- eval_harness.py · scripts/
- generate_review.py · scripts/
- generate_trigger_dashboard.py · scripts/
- grade_quality.py · scripts/
- list_models.py · scripts/
- optimize_description.py · scripts/
- run_quality_eval.py · scripts/
- run_trigger_batch.py · scripts/
- run_trigger_eval.py · scripts/
SKILL.md (first lines)
# Evaluate a skill with the Copilot SDK
This skill measures whether another skill actually works by running it in
isolated GitHub Copilot SDK sessions. It follows the evaluation methodology
documented at
[agentskills.io](https://agentskills.io/skill-creation/evaluating-skills), and
runs anywhere the Copilot CLI is installed.
There are two independent questions, and you can answer either or both:
1. **Triggering** — does the skill's `description` cause the agent to invoke it
for relevant prompts, and stay quiet for irrelevant ones? This is decided
entirely by the `name` + `description` the agent sees at startup.
2. **Output quality** — when the skill *is* used, does it produce meaningfully
better results than the same agent with no skill? This is decided by the
skill's body, bundled scripts, and references.
Keep them separate: a skill can trigger perfectly but give mediocre output, or
give great output but never trigger. Different fixes, different evals.
## The core loop
**Run → review → improve → repeat**, with a human in the loop. Don't act on the
numbers alone — the benchmark tells you *what* changed; the actual outputs and
transcripts tell you *why*. The scripts only ever read the skill and write
results elsewhere: you apply every description and body edit yourself, so a bad
automated suggestion can't corrupt a real skill.
```mermaid
flowchart LR
A[Pick skill + goal] --> B{Triggering<br/>or Quality?}
B -->|Triggering| T1[Write queryset] --> T2{Single skill<br/>or plugin?}
T2 -->|Single| T3[run_trigger_eval] --> T4[generate_trigger_dashboard] --> T5[optimize_description] --> R
T2 -->|Plugin| T6[run_trigger_batch] --> T7[generate_trigger_dashboard] --> R
B -->|Quality| Q1[Write evalset + assertions] --> Q2[run_quality_eval] --> Q3[grade_quality] --> Q4[generate_review] --> R
R[Human review + improve skill] --> B
```
## Prerequisites (check once)
The scripts need the Copilot SDK and a logged-in Copilot CLI. Verify before the
first run:
```bash
python -c "import copilot; print('SDK', copilot.__version__ if hasattr(copilot,'__version__') else 'ok')"
```
If that errors, install with `pip install "github-copilot-sdk>=1.0.0"` and then
run `python -m copilot download-runtime` to cache the CLI binary. Make sure you
are signed in to GitHub Copilot. The scripts authenticate as the logged-in user
automatically — no token wrangling.
All scripts live in the `scripts/` folder next to this file. In the commands
below, `$SCRIPTS` stands for that folder's path. Running a script by its full
path is enough — each one adds its own directory to the import path, so the
shared `eval_harness.py` resolves without any install step.
**Choosing a model.** Runs default to `claude-haiku-4.5` — fast and cheap, which
matters because evals fan out into many sessions. If the user names a model,
resolve it to an id first — `python $SCRIPTS/list_models.py --resolve "opus 4.8"`
prints the id, or, when the name is ambiguous or unknown, the models available on
this account for the user to pick from. Pass the chosen id to any eval script via
`--model` (or set `COPILOT_EVAL_MODEL` to change the default globally).
Availability is plan-dependent, so the live list is the truth;
[references/models.md](references/models.md) is a snapshot. For *triggering* evals,
match the model your users actually run. For *quality grading and the
description-improvement judge*, a stronger model (`claude-sonnet-4.6`,
`claude-opus-4.8`) gives sharper verdicts — pass it via `--model`.
**Where results go.** Every script writes under a results root: whatever you pass
as `--out DIR`, or by default `<skill-name>_eval_results/` at the repo root, keyed
to the skill under test so evaluating several skills never collides. Artifacts are
filed by eval type — `triggering/` (trigger results, description optimization) and
`quality/` (the with/without workspace of `iteration-N/...`, benchmark, and review
page). For the quality sequence, pass the same skill (or `--out`) through
`run_quality_eval` → `grade_quality` → `generate_review` so they share one location.
---
## Path A — Triggering evaluation
Use this when the question is "does it fire at the right times?" Full details on
queryset design and the optimization loop are in
[references/triggering-evals.md](references/triggering-evals.md) — **read it
before writing queries**, because query quality is what makes or breaks this eval.
### A.1 — Write a queryset
Realistic prompts labeled with whether the skill should trigger. The canonical
format is an object with a `skill_name` and an `evals` array:
```json
{
"skill_name": "my-skill",
"evals": [
{"id": 1, "query": "...", "should_trigger": true, "rationale": "..."},
{"id": 2, "query": "...", "should_trigger": false, "rationale": "..."}
]
}
```
A flat JSON list of `{"query", "should_trigger"}` objects is also accepted as
shorthand. Aim for ~20 queries: 8-10 should-trigger, 8-10 should-not, weighted
toward *near-misses* (queries that share keywords but need something else). See
the schema in [references/schemas.md](references/schemas.md) and the worked
example in [assets/trigger_queryset.example.json](assets/trigger_queryset.example.json).
### A.2 — Single-skill measurement
Use this when evaluating one skill in isolation or against its siblings.
```bash
python $SCRIPTS/run_trigger_eval.py \
--skill-path PATH/TO/skill \
--queryset queryset.json \
--runs 3
```
Each query runs 3× (triggering is nondeterministic) and passes if its triggerFrom tezansahu/ai-garage, GPL-3.0.
More from tezansahu/ai-garage
- 0.605score
insight-extractor
tezansahu
Extract key, actionable insights from knowledge resources and save as structured markdown files in the knowledge/insights/ folder.
SkillBFreshness: B★ 16Claude Code +9 - 0.605score
arxiv-submission
tezansahu
Submit a paper to arXiv as a preprint.
SkillBFreshness: B★ 16Claude Code +9 - 0.605score
generate-structurizr-c4-diagram
tezansahu
Generate C4 software-architecture diagrams in Structurizr DSL from a codebase, folder(s), a description, docs, or an existing diagram, then render them in the…
SkillBFreshness: B★ 16Claude Code +9 - 0.580score
skill-creator
tezansahu
Create new skills, modify and improve existing skills, and measure skill performance.
SkillBFreshness: B★ 16Claude Code +9 - 0.575score
tdd
tezansahu
Test-driven development.
SkillBFreshness: B★ 16Claude Code +9 - 0.572score
to-tickets
tezansahu
Break a plan, spec, or the current conversation into a set of tracer-bullet tickets, each declaring its blocking edges, published to the configured tracker —…
SkillBFreshness: B★ 16Claude Code +9 - 0.572score
to-spec
tezansahu
Turn the current conversation into a spec and publish it to the project issue tracker — no interview, just synthesis of what you've already discussed.
SkillBFreshness: B★ 16Claude Code +9 - 0.564score
implement
tezansahu
Implement a piece of work based on a spec or set of tickets.
SkillBFreshness: B★ 16Claude Code +9 - 0.555score
model-deployer
tezansahu
Generate deployment artifacts for ML models -- FastAPI serving code, Dockerfiles, cloud configs, batch prediction scripts, and monitoring setup.
SkillCFreshness: C★ 16Claude Code +9 - 0.555score
model-trainer
tezansahu
End-to-end machine learning model training for tabular data -- from baseline to optimized model with proper cross-validation, metric logging, and…
SkillCFreshness: C★ 16Claude Code +9 - 0.555score
nn-architect
tezansahu
Design and implement neural network architectures in PyTorch or Keras from task descriptions.
SkillCFreshness: C★ 16Claude Code +9 - 0.555score
llm-app-builder
tezansahu
Scaffold and build LLM-powered applications -- RAG pipelines, agentic workflows, structured output chains, tool-calling agents, and chatbot interfaces.
SkillCFreshness: C★ 16Claude Code +9
Signals
- Stars
- 16
- Forks
- 8
- Open issues
- 1
- Last commit (this folder)
- Aug 2, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- GPL-3.0
- Repository
- github.com/tezansahu/ai-garage
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from tezansahu
- 0.605score
insight-extractor
tezansahu
Extract key, actionable insights from knowledge resources and save as structured markdown files in the knowledge/insights/ folder.
SkillBFreshness: B★ 16Claude Code +9 - 0.605score
generate-structurizr-c4-diagram
tezansahu
Generate C4 software-architecture diagrams in Structurizr DSL from a codebase, folder(s), a description, docs, or an existing diagram, then render them in the…
SkillBFreshness: B★ 16Claude Code +9 - 0.605score
arxiv-submission
tezansahu
Submit a paper to arXiv as a preprint.
SkillBFreshness: B★ 16Claude Code +9 - 0.580score
skill-creator
tezansahu
Create new skills, modify and improve existing skills, and measure skill performance.
SkillBFreshness: B★ 16Claude Code +9 - 0.575score
tdd
tezansahu
Test-driven development.
SkillBFreshness: B★ 16Claude Code +9 - 0.572score
to-spec
tezansahu
Turn the current conversation into a spec and publish it to the project issue tracker — no interview, just synthesis of what you've already discussed.
SkillBFreshness: B★ 16Claude Code +9
Cite this page
evaluate-skill-with-copilot-sdk. Agent Mart. https://agentmart.dev/skills/tezansahu-evaluate-skill-with-copilot-sdk (last updated 2026-10-24)