joetawil7 / first-pass
git clone https://github.com/joetawil7/first-pass.git
Rules and checks that make Claude Code look around a change, not just at the lines it writes: ten questions before code, a reviewer that didn't write it, proof before done, bugs fixed as a class.
—
stars, 24h
—
stars, 7 days
+104
stars, 30 days · #2,208
104
★ total
0
forks · 0 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageJavaScript
LicenseMIT
Created2026-09-25 (25d ago)
Last push3d ago
Watchers1
OwnerUser
GitHub topics
agents-skillsagentskillagentskillsai-codingai-coding-assistantclaude-codeclaude-code-hooksclaude-code-marketplaceclaude-code-pluginclaude-code-pluginsclaude-code-plugins-marketplaceclaude-code-skillclaude-code-skillscode-repaircode-reviewcode-review-assistantcode-review-assistant-activecode-review-automationcode-reviewsdeveloper-tools
Links
README excerpt
# first-pass first-pass makes a coding agent check the code around a change, not only the lines it writes, and prove its work before it calls anything done. It's a Claude Code plugin; Cursor, Codex and other agents get the same rules and skills (the hooks are Claude Code only). You set it up once, in the folder that holds your repos. **What it does** - **Before code,** the agent answers ten questions about the change against the real code: what happens if it runs twice, stops halfway, or an outside service times out; which other code uses the same data; what the user sees when it fails. Each answer is a `file:line`, a test, or a gap you decide to accept. - **While building,** anything the task didn't ask for (a helper, a cap, a retry, an option) has to earn its place. The agent asks whether it needs to exist, leaves it out when nothing requires it, and lists it under "Not built" so you can ask for it. During the work, a review finding gets fixed only when it does real harm or stops the change doing its job; the rest come to you as one list at the end, to pick from. - **On the task you gave,** the agent first writes the task's scope from your prompt and the code around it: the feature, everything that uses the same data, the rest of the same flow, and the steps that cancel or delete what it creates. Its searches and reviews stay inside that scope. A serious problem it happens to see elsewhere gets one line in the report (and one in that repo's list of known breaks when it breaks one of its rules), and nothing else; anything the change itself breaks counts as inside, wherever it is. `/first-pass:hulk` lifts the scope for one task, so it looks everywhere. - **Before "done",** a second agent that didn't write the code reviews it in a fresh context. "Done" needs a test that failed before the change and CI's checks passing in a clean checkout (or, with `/first-pass:quick`, the checks the change can affect); anything less is reported as built, not done. - **On a bug,** it fixes the whole class: it reproduces the bug, finds the same pattern in the task's scope, and adds the check that stops it coming back. - **On a pull request,** `/first-pass:review` checks your own branch before you ask for review, or a teammate's PRs across several repos. Every finding comes with its proof or is marked unproven, and it never posts to GitHub. `/first-pass:review hulk ` reviews with the scope lifted, so it looks everywhere. - **In every session,** hooks send back a "done" that has no evidence behind it (edits made through the shell count too), run each repo's own hooks from the shared folder, and say what drifted since setup. - **In replies** (optional, you choose at setup): plain, short answers. The first line says what happened or what you need to do, in everyday words, without the names from inside the work, and the reply ends with only what you have to do or decide. **What it helps with** - Bugs next to the change: the other code path that wr