who/skills

Claude

2

21 commits

updated Sep 27, 2026

See the code

See what people are saying

SourceMessageScoreDate

Tells of a Slop UI

If you can deterministically show and name these UI slop tropes so well, you can build a skill to help you detect and potentially avoid them. Here's an experimental crack at it, giving your article attribution: https://github.com/who/skills/blob/main/.claude/skills/detec...

0

Sep 27, 2026

README

skills

Public Claude skills library under who.

Layout

.claude/skills/<name>/SKILL.md   # Claude Agent Skills (project-discovered)
promptfooconfig.yaml             # Promptfoo eval suite
evals/                           # Eval notes / future suites
.github/workflows/skill-evals.yml

Add a skill

  1. Create .claude/skills/<name>/SKILL.md with YAML frontmatter (name, description) and instructions.
  2. Add Promptfoo cases in promptfooconfig.yaml (assert skill-used and any output checks).
  3. Open a PR — CI runs when skills or evals change.

Eval locally

export ANTHROPIC_API_KEY=...   # never commit this
npx promptfoo@latest eval -c promptfooconfig.yaml
npx promptfoo@latest view

Optional stability:

npx promptfoo@latest eval -c promptfooconfig.yaml --repeat 3

Docs: Test Agent Skills.

CI

GitHub Actions workflow Skill evals uses promptfoo/promptfoo-action.

Required repository secret: ANTHROPIC_API_KEY.

Live model spend only happens when that secret is set and the workflow runs (PR/push path filters, or Run workflow).

Ortus (local develop loop)

Ortus is optional for filing failing cases and grinding harness/skill text locally. It is not a substitute for Promptfoo CI. Keep work artifacts in beads if you use Ortus; do not park long skill bodies in grind session context.

Contributors

who

21 commits

who/skills

Claude

2

21 commits

updated Sep 27, 2026

See the code

See what people are saying

SourceMessageScoreDate

Tells of a Slop UI

If you can deterministically show and name these UI slop tropes so well, you can build a skill to help you detect and potentially avoid them. Here's an experimental crack at it, giving your article attribution: https://github.com/who/skills/blob/main/.claude/skills/detec...

0

Sep 27, 2026

README

skills

Public Claude skills library under who.

Layout

.claude/skills/<name>/SKILL.md   # Claude Agent Skills (project-discovered)
promptfooconfig.yaml             # Promptfoo eval suite
evals/                           # Eval notes / future suites
.github/workflows/skill-evals.yml

Add a skill

  1. Create .claude/skills/<name>/SKILL.md with YAML frontmatter (name, description) and instructions.
  2. Add Promptfoo cases in promptfooconfig.yaml (assert skill-used and any output checks).
  3. Open a PR — CI runs when skills or evals change.

Eval locally

export ANTHROPIC_API_KEY=...   # never commit this
npx promptfoo@latest eval -c promptfooconfig.yaml
npx promptfoo@latest view

Optional stability:

npx promptfoo@latest eval -c promptfooconfig.yaml --repeat 3

Docs: Test Agent Skills.

CI

GitHub Actions workflow Skill evals uses promptfoo/promptfoo-action.

Required repository secret: ANTHROPIC_API_KEY.

Live model spend only happens when that secret is set and the workflow runs (PR/push path filters, or Run workflow).

Ortus (local develop loop)

Ortus is optional for filing failing cases and grinding harness/skill text locally. It is not a substitute for Promptfoo CI. Keep work artifacts in beads if you use Ortus; do not park long skill bodies in grind session context.

Contributors

who

21 commits