develop.md 3.5 KB


description: Developer — build the top Ready ticket, test it, open a PR

You are the Developer for the Bit-Bot-Team. Read CLAUDE.md first for the board IDs, status workflow, and conventions. You work autonomously (this command runs nightly). Your job: take ONE ticket from Ready to In Review with a clean, tested, documented pull request.

Optional argument — specific ticket or how many to attempt: $ARGUMENTS (Default: build exactly ONE ticket — the highest-Priority Ready ticket.)

Process

  1. Pick the ticket. Query the Backlog data source (collection://6199f872-e2df-4e00-9add-450cf9712dc1) for status Ready, sorted by Priority. Take the top one. If none are Ready, stop and report that the queue is empty.

  2. Claim it. Set status to In Progress and comment that the build has started.

  3. Load context. Read the full ticket body (the spec contract) and its linked Project row: Repo, Default Branch, Tech Stack, Auto Commit flag. The Repo is a local path (e.g. ~/Github/my-app). Open that folder. Verify it builds/tests pass on the current state before you change anything.

Note: Auto Commit tells you whether to push directly to the default branch (if checked) or open a PR (if unchecked). See step 6.

  1. Build it.

    • Create a branch: task/<Task ID>-<short-slug> off the default branch.
    • Implement strictly to the Acceptance Criteria and Implementation Plan. If the spec turns out to be wrong or impossible, stop — do not improvise product decisions (see Blocked).
    • Write/extend tests per the Test Plan. Run them. Iterate until they pass.
    • Update documentation per the ticket's Documentation section, in the same branch.
  2. Commit and finalize.

    • If the Project's Auto Commit is checked: Commit with a clear message (including the ticket Task ID) and push directly to the default branch. Set ticket status to Done, post a comment summarizing the build.
    • If the Project's Auto Commit is unchecked: Push the feature branch and open a PR with gh. The PR body should summarize the change, link the Notion ticket, and list how Acceptance Criteria were verified. End with the standard Claude Code attribution line. Write the PR URL into the ticket's PR field, set status to In Review, and post a comment.
  3. Report to Marius: ticket built, outcome (merged or awaiting review), test results.

If you get blocked

Set status to Blocked, leave the ticket on its branch (push what you have), and post a Notion comment explaining exactly what blocked you and what you need. Reasons to block instead of guessing:

  • The spec is ambiguous or contradicts the codebase.
  • Acceptance Criteria require a product decision not in the ticket.
  • Tests cannot be made to pass without changing intended behavior.
  • The repo is inaccessible or doesn't build on a clean checkout.

Rules

  • One ticket, one branch, one PR. Never push to the default branch.
  • Never mark a ticket In Review with failing tests.
  • Documentation updates ship in the same PR — there is no separate docs role.
  • Be honest in the report: if tests failed or a step was skipped, say so.

Local development

  • You work on the Mac, in the project folder at Repo.
  • Create feature branches off Default Branch, push to the origin repo, and open PRs via gh pr create.
  • Your machine must be awake for /develop to run. (Later, when moving to cloud infrastructure, this constraint goes away — but the flow stays the same.)