Contributing Code with Claude Code
This guide is for people who want to write code for Breeze. It assumes you’ll
work with Claude Code (or a compatible agent) —
the repo ships a CLAUDE.md and a set of skills that hand the agent almost all
the project’s conventions automatically. Your job is to point it at the right
work and to hand back finished, self-reviewed, green PRs.
If you only want to report a bug or pitch an idea, you don’t need any of this —
see the top of CONTRIBUTING.md.
The one idea to internalize
Section titled “The one idea to internalize”Work on Breeze is captured as plan documents. A plan spells out the goal, the architecture, the tech stack, and a checklist of tasks — it’s a ready-to-implement work order, written for an agent to execute.
That means a plan is two things at once:
- The work definition — it’s what there is to build.
- The approval — if a plan exists and has been approved, the what and the how are already agreed. You don’t need a separate sign-off to start.
1. Find something to build
Section titled “1. Find something to build”Until then, find work on the issue tracker:
-
Browse the open issues above, or any open issue that interests you.
-
Pick one that fits your appetite — some are small UI/CRUD jobs, some touch deeper systems.
-
Comment on the issue that you’re taking it (so two people don’t grab the same one). Then start with a plan, as below.
2. …or propose your own
Section titled “2. …or propose your own”Want to scratch your own itch? Great — but the plan comes first.
-
From the repo root, run Claude Code and use the
brainstormingskill to pin down intent and requirements, thenwriting-plansto produce the plan document. -
Share the finished plan with Todd — attach it to the GitHub issue you’re working from (open one if there isn’t one yet).
-
Wait for approval on the plan. Once it’s a 👍, it’s an open work order like any other — go build it.
3. Build it
Section titled “3. Build it”-
Run Claude Code from the repo root so it loads
CLAUDE.mdand the project skills automatically. Don’t re-explain the conventions — they’re already in context. -
Follow the plan’s
REQUIRED SUB-SKILLnote (usuallysubagent-driven-developmentorexecuting-plans). Work the- [ ]tasks in order and check them off. -
Write tests as you go — the
breeze-testingandtest-driven-developmentskills cover the repo’s patterns (Drizzle mocks, Go table tests, the coverage checklist). New features are expected to ship with tests.
4. Before you hand it over
Section titled “4. Before you hand it over”Two things are your responsibility, not Todd’s. A PR that skips them isn’t ready.
-
Make CI green yourself. Mirror the gate locally and get it passing before you open anything —
test-api,test-web, andtest-agentare the required jobs. You fix your own reds; a red PR isn’t on anyone’s plate yet. -
Self-review your own diff. Run
/code-review(or thepr-review-toolkitagents) against your changes, address what it finds, and then request a human review.
5. Open the PR
Section titled “5. Open the PR”A PR means done, green, self-reviewed, ready to merge — not a discussion venue and not work-in-progress.
-
Branch, and use Conventional Commits (
feat:,fix:,docs:, …). -
Keep it to one concern. Don’t mix a feature, a refactor, and a docs sweep in one PR — small, single-purpose PRs review fast.
-
Reference the plan and the issue you implemented in the PR description (
Closes #NNNif the PR completes the issue). -
Open it against
main.