Writing Evals Skill

A skill for building evaluations of LLM features: cases from real failures, deterministic grading where possible, and a defined pass bar.

---
name: writing-evals
description: Build evaluations for an LLM feature or prompt. Use when the user wants to test a prompt, measure output quality, catch regressions in an AI feature, or asks how to know whether a prompt change made things better.
---

# Writing Evals

A prompt without an eval is not engineered, it is guessed at. Formatting and wording changes swing quality more than intuition predicts, and without a fixed test set you cannot tell an improvement from a coincidence.

## Start from real failures

The best eval cases are outputs that were actually wrong. Before generating anything, collect: production failures, complaints, cases where a human had to intervene, and the outputs that made someone lose confidence in the feature.

Twenty cases drawn from real traffic are worth more than two hundred synthetic ones, because synthetic cases test the failure modes you imagined and real ones test the failure modes you have.

## Cover the categories deliberately

1. **Typical**: the common inputs. The bulk of the set.
2. **Regression**: every real failure, as a case. This is why the set exists.
3. **Boundaries**: empty, minimum, maximum, one item, many items, unusual formatting.
4. **Should decline**: inputs where the correct behavior is to ask, refuse, or return the uncertain value. A feature that never declines is a feature that fabricates.
5. **Adversarial**: input containing instructions or attempts to change the task. Expected behavior is that the task is still performed on the content.
6. **Out of scope**: what the feature should turn away.

Report the count per category. A set that is ninety percent typical cases will pass while the feature keeps failing in production.

## Grade as deterministically as the task allows

- **Exact match or a code check** for anything structured. Always prefer this. It is cheap, stable, and not arguable.
- **Property assertions** in code where the shape matters more than the wording: valid schema, required fields present, no entity outside the source, length in range, no forbidden phrase.
- **Model-graded**, only where quality is genuinely subjective. Write the rubric so two careful humans would grade an output identically, give it the criteria one at a time, and require a quoted excerpt as justification for each judgment. Then check the judge against human labels before trusting it: an unvalidated judge is a second unmeasured system.

## Define the bar before running

Decide in advance: the pass rate required overall, which categories must be perfect (usually safety and should-decline), and what result blocks a change from shipping. A threshold chosen after seeing the numbers is not a threshold.

Measure consistency, not just an average. Running each case several times and requiring all runs to pass reveals the instability that a single run hides, and instability is what users experience as unreliability.

## Iterate honestly

Change one thing at a time. Record the prompt version, the model and its settings, the date, and the full result. Re-run the whole set, not the cases you were working on.

Read the failing outputs themselves. The score tells you something changed; only the transcripts tell you what.

Re-run the set on every model upgrade. Prompt behavior does not transfer reliably across model versions, and a set that has not been re-run since the last upgrade is measuring history.

How to use

Save as .claude/skills/writing-evals/SKILL.md. Two instructions here do most of the work: build the set from real failures, and push grading toward deterministic checks wherever the task allows. The consistency point is the one teams discover late, since a feature that passes once and fails one run in four looks fine on an averaged score and feels broken to users, and only repeated runs expose the difference.

Originated fromStan SedberryUpdated
Testingadvanced

More skill prompts

---
name: writing-documentation
description: Write or update documentation from the code. Use when the user asks for a README, API reference, guide, docstrings, or says the docs are out of date.
---

# Writing Documentation

Documentation is a claim about behavior. Every claim must be checked against the code before it ships, because a wr
SKILL.md

Documentation Skill

A skill that documents what the code does rather than what it should do: read first, examples from tests, unverifiable claims marked.

Skillintermediate
---
name: security-review
description: Review code for security defects. Use before merging changes that touch authentication, authorization, user input, file handling, secrets, or external requests, or when the user asks for a security review.
---

# Security Review

Find defects an attacker could actually use. A finding without an attac
SKILL.md

Security Review Skill

A skill that reviews changes for exploitable defects, follows untrusted input to where it lands, and reports only findings with an attack path.

Skilladvanced
---
name: accessibility-review
description: Audit UI code for accessibility defects against WCAG. Use when building or changing components, forms, modals, or navigation, or when the user asks about accessibility, a11y, screen readers, or keyboard support.
---

# Accessibility Review

Judge the interface by whether a person can complete th
SKILL.md

Accessibility Skill

A skill that audits UI against WCAG by keyboard, semantics, and state, reporting who is blocked rather than listing rule numbers.

Skillintermediate

Search prompts

Find a prompt by title, description, tag, or category.