03. Ship your first feature in 5 minutes

Guide4 min read

This page is your first hands-on exercise: follow one small bug fix from the idea stage to merge.

Back to table of contents

03. Ship your first feature in 5 minutes

This page is your first hands-on exercise: follow one small bug fix from the idea stage to merge. Example scenario: handling the request "The login failure error message is too generic, so it is hard to understand the cause."

The concepts behind this flow are explained in more detail in 04. general cycle (small). This page focuses on practice.

Step 1 - Create a plan

claude code
ywc-plan Login failure error messages are too generic to understand the cause. Want to show specific reasons like account locked / typo / not signed up

ywc-plan reads the codebase first and decides whether this change is Small enough to finish as a single PR. If it is judged Small, a plan.md file is created. Check that the four sections - What / Why / Out of Scope / Done When - are filled in.

Step 2 - Converge the plan

claude code
ywc-spec-ready --spec plan.md

If plan.md still has concerns, they are automatically refined and revalidated. If it is already clean, it is handed off to the next step unchanged.

Step 3 - Generate code

claude code
ywc-code-gen --spec plan.md --feature "specific login failure reason"

This generates the Backend / Frontend / QA layers in parallel. When generation finishes, you get a completion report ending in one of DONE, DONE_WITH_CONCERNS, BLOCKED, or NEEDS_CONTEXT. See 02. Core concepts for what each state means.

Step 4 - Review before opening a PR

claude code
ywc-impl-review

ywc-code-gen has no automatic review flag. If you skip this step, the PR is opened without code review. Do not skip it.

Step 5 - Create the PR and handle Review

claude code
ywc-create-pr --title "fix: show specific login failure reason"

ywc-create-pr handles commit, secret scan, local validation, draft PR creation, and remote CI/Bot Review checks. If Bot review comments or merge-readiness issues remain, run a separate PR health sweep like this:

claude code
ywc-handle-pr-reviews 123

The Small flow is based on plan.md, so it has no tasks/<task-name>/ artifact. Therefore, after reviewer approval, merging through the GitHub UI or gh pr merge is safer than using ywc-finish-branch, which includes task completion handling.

If you got this far

You have completed one change from start to finish. Good next pages:


Previous: 02. Core concepts - Next: 04. Handling a small change