Borrowing it
Nothing to install: this file belongs to teripaquitinho/vibe-racer. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/teripaquitinho/vibe-racer/main/CLAUDE.mdgit clone --depth 1 https://github.com/teripaquitinho/vibe-racerWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/teripaquitinho/vibe-racer/claude-md)<a href="https://agentmods.dev/instructions/teripaquitinho/vibe-racer/claude-md"><img src="https://agentmods.dev/badge/instructions/teripaquitinho/vibe-racer/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/teripaquitinho/vibe-racer/claude-md"><img src="https://agentmods.dev/badge/instructions/teripaquitinho/vibe-racer/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.01614 | $0.01614 |
| Opus 5.5 | $0.00646 | $0.00646 |
| Sonnet 5.5 | $0.00323 | $0.00323 |
| Haiku 4.5 | $0.00161 | $0.00161 |
Grade A, and why
vibe-racer CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 54 lines — stays where its author put it; the contents beside it link to each section on GitHub.
vibe-racer
CLI that runs structured AI pipelines ("races") on software tasks using Claude Code SDK. Each task moves through a fixed state machine — alternating between human pit stops and AI-driven laps — ending in committed, tested code.
Key docs
- Pipeline stages & architecture:
docs/how-it-works.md - All CLI commands:
docs/commands.md - Configuration (
.vibe-racer.yml):docs/configuration.md - Roadmap:
backlog.md
Project structure
src/
cli/ # commander commands (init, new, drive, pitwall, radio, fasten)
pipeline/ # state machine, validation
markdown-scan.ts # fence/blockquote-aware line scan shared by the two readers below (leaf module, no imports)
execute-table.ts # the Execution Status table contract: parser, status writes, table queries, EXECUTION_TABLE_SPEC
operator-block.ts # the "Operator actions" pause block: render, find, normalise, read, PAUSE_BLOCK_SPEC
handlers/ # one handler per agent stage (qa.ts, execute.ts, done.ts, review-runner.ts, ...)
claude/ # SDK session runner, prompt builder, tool guard, skills, fasten analysis
state/ # task discovery, state.yml read/write, advancement logic
git/ # branch management, commits, secret scanning
config/ # .vibe-racer.yml parsing
Dev commands
npm run dev # run CLI via tsx (no build needed)
npm run build # tsup → dist/
npm run test # vitest run
npm run typecheck # tsc --noEmit
npm run lint # eslint src/
Key decisions
- No runtime dependency on host project — vibe-racer is a standalone CLI; it only reads the host project's README.md / CLAUDE.md as context.
- State lives in
plans/NNNN_slug/state.yml— never in memory; every command re-reads state from disk. - One branch per task (
vibe-racer/NNNN_slug) — created automatically on firstdrive, never pushed automatically. - Persona per lap — system prompt is extended with a role-specific persona (Product Designer / Architect / Engineer / QA Engineer / Release Manager) depending on the current stage. Personas live in
PERSONASinsrc/claude/prompts.ts. - Seven laps, seven documents — objective, product, design, plan, execute, QA (
05_qa.md, written byhandlers/qa.ts), decision (06_decision.md, written byhandlers/done.ts). Execution is one session per milestone against the Execution Status table in04_execute.md(handlers/execute.ts, parsed byexecute-table.ts), bounded byMAX_STALLED_SESSIONSper milestone and a per-drivesession cap sized from the unfinished agent rows; the loop never trusts a regex count. Execution advances toai_qa, not to cleanup. state.ymlis pipeline-owned — guard Rule 0 denies agentWrite/Editto anystate.ymlunderplans_dirat every stage. Stage changes go throughupdateStageonly.setErrorsalvages a corruptstate.ymlrather than dying on it.- One markdown reader —
execute-table.tsandoperator-block.tsboth scan throughmarkdown-scan.ts(scanLines/isHeading/isLive), so a heading, table row or checkbox inside a fence or behind a>is inert to both. They used to disagree: the table parser matched headings with a bare regex, so the worked example an agent quoted into its own playbook outranked the real table — the loop executed the quotation and the status writer edited it. HenceEXECUTION_TABLE_SPECships without its own## Execution Statusheading andPAUSE_BLOCK_SPEC's example stays fenced when interpolated.markdown-scan.tsimports nothing by design, soexecute-table.tscan be pulled into prompts without a cycle. An unterminated fence swallows the rest of the file, as CommonMark says it does; callers that can be defeated that way name the stray fence instead of failing silently. Any change tomarkdown-scan.tschanges both readers at once: re-run the four-playbook parse equivalence check (plans/0005_infinite-loop-fix/05_qa_batch-b.md§6) before trusting it. - One
(file, markerText)pair per stage —STAGE_QUESTIONS_FILEinsrc/pipeline/states.tsmaps each human stage to a pair, and it is the pair that must stay unique, not the file.need_executionandneed_operatorboth read04_execute.mdbut never share a marker: the resume marker isOperator actions complete — resume execution, deliberately not a "Ready to advance …" line. Pointingneed_operatorat a "Ready to advance" marker is the issue-#3 stale-tick regression in its new form — the ticked sign-off box already in the file would resume a pause nobody looked at — andstates.test.tsfails if anyone does. - Operator gates and the
need_operatordetour — a step vibe-racer must not or cannot take is declared at plan time as its ownOwner = operatorrow (G<n>) in the Execution Status table, never as prose between rows.need_operatorlives outsideSTAGE_ORDER(witherror, inNON_LINEAR_STAGES) and always returns toready_to_execute. The agent signals through04_execute.mdonly — aneeds_operatorstatus and an "Operator actions" pause block — and the handler writes the stage (pauseForOperator), the agent never does. Resume reads the last pause block only and settles just the two statuses the pipeline itself wrote, so hand edits to the table survive. - Where the execute lap ends — the Execution Status table holds only work that finishes before QA. Merge, tag, release and deploy of the task's own work are never rows: QA reviews
git diff main...HEADand needs the branch unmerged. Every gate row is followed by the milestone it unblocks; the plan prompt says so,tryAdvancerefuses theneed_executionsign-off tick when it is not true (trailingOperatorRows), and the loop completes intoai_qarather than pausing on a trailing gate left by an older plan. - Completion checkboxes are appended idempotently — handlers use
ensureCompletionSection, never a bare append; a session that writes its own "# Complete" block would otherwise leave two checkboxes in one file. - Tool guard —
canUseToolinsrc/claude/guard.tsenforces security rules on every SDK tool call. - Skills per lap —
src/claude/skills.tsmaps each agent stage to a lap and each lap to a skill list (skillskey in.vibe-racer.ymloverrides). Sessions loadsettingSources: ["project", "user"]. - Trivial fast-path — detected by file presence, not by the agent writing state: objective review writes
03_plan_questions.mdinstead of01_product_questions.md, and the handler setstrivial: trueitself. Trivial tasks skip product and design laps.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago Changed · +6 lines · +787 tokens per session 96abf71afc65
- 1mo ago Changed · +6 lines · +351 tokens per session d74b770ae4ef
- 2mo ago First seen · 42 lines · 476 tokens per session scan A 815fa9054faf
vibe-racer CLAUDE.md is an instructions file published in the GitHub repository teripaquitinho/vibe-racer (5 stars, last pushed 18d ago), licensed MIT. It adds 1,614 tokens to every session, about $0.0065 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other instructions, from other repositories
vscode buildNext.instructions.md
Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).
next.js AGENTS.md
AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.
vscode oss-third-party-notices.instructions.md
Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, cache eligibility and rollout and applying the notice (cutover).
langchain AGENTS.md
AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.
vscode copilot-instructions.md
Copilot instructions for microsoft/vscode, covering vs code copilot instructions, project overview, root folders, core architecture (src/ folder) and built-in extensions (extensions/ folder).
deno copilot-instructions.md
Copilot instructions for denoland/deno, covering deno development guide for github copilot, network access, high level overview, key directories and key files to understand first.