Whatever the job — reading documents, debugging a pipeline, reviewing code, answering domain questions — there is more than one way to do it. A different model, a different tool, a different agent framework, a skill someone swears by. Picking between them is usually guesswork.
trapstreet.run makes it a measurement. A task declares its inputs
and the answers it expects; any solution runs against the same cases, is scored by the same
judge, and lands on a public board with its score, latency and cost. Every row is pinned to a
public repo@commit, so anyone can re-run it and get the same number.
Bring your own task, or run against one that is already there.
This repo holds three skills that do it for you. Install them and your coding assistant sets up the CLI, builds solutions, and authors tasks — from plain language.
Install
npx skills add trapstreet/trapstreet-skills
Installs into every coding agent it detects — Claude Code, Cursor, Codex, Cline, Amp, Antigravity and 70+ more. Start a new session afterwards; skills load at session start.
Or paste this to your agent and it does everything:
Install trapstreet: run `npx -y skills add trapstreet/trapstreet-skills --global --yes`, then read ~/.agents/skills/trapstreet-setup/SKILL.md and follow it.
D=~/.claude/skills; T=$(mktemp -d); mkdir -p "$D" \
&& curl -fsSL https://github.com/trapstreet/trapstreet-skills/archive/refs/heads/main.tar.gz \
| tar -xz -C "$T" --strip-components=1 \
&& cp -R "$T"/trapstreet-* "$D"/ && rm -rf "$T"
Writes to Claude Code's directory only — change D for another agent — and skills installed
this way don't participate in npx skills update.
Then say
| Say this | Skill | What it does |
|---|---|---|
| "set up trapstreet" | trapstreet-setup |
Installs and authorizes the tp CLI. One time — local scoring needs no account. |
| "build a solution for <task>" | trapstreet-solution-scaffold |
Writes trap.yaml and the solver, runs it locally, submits when you're happy. From scratch, around code you have, or by adapting someone else's repo. |
| "make a task that evaluates <X>" | trapstreet-task-scaffold |
Interviews you on what counts as correct and where ground truth comes from, then writes traptask.yaml, judge.py and grader.py. |
Tasks live in their author's own repository, not ours — publish from anywhere public and register it on the site.
uv tool install trap-cli # install
tp auth login # authorize this machine, once
tp run && tp submit # from any directory with a trap.yaml
What a board looks like
Links
| trapstreet.run | The boards. Browse tasks, read results, register your own. |
| Docs | Quick start · Build a solution · Build a task · Reference |
| trapstreet/trap | The tp CLI. MIT. |
| trapstreet/trapstreet-tasks | 36 reference tasks with judges and gold cases. MIT. |
Other platforms
npx skills add writes one copy to ~/.agents/skills/, which Codex, Cursor, Cline, Amp,
Antigravity and a dozen more read directly, and symlinks it into Claude Code. Nothing to
translate.
For anything that reads neither: each skill is one SKILL.md (YAML frontmatter with name
and description, then the body) plus optional references/ and scripts/ — plain markdown
and shell commands. Paste the body into your tool's custom-instructions field, or point it at
the file at session start.
Contributing
Fixes and platform coverage welcome — see CONTRIBUTING.md. Publishing a task or a solution needs no PR here: those live in your own repository.
License
MIT — see LICENSE.
No comments yet
Be the first to share your take.