Table of Contents

Developer Prompt Pipeline

A structured 5-step prompting workflow for software developers using AI assistants (Claude, GPT-4, etc.) to go from raw feature request to verified implementation.

Core principle: Replace subjective model-judged gates with concrete artifacts and real tool output. Every step produces a file. Every file is checkable.


Overview

Step You do Model does Output file
1 Write the request raw_request.md
2 Provide source files Technical planning plan.md
3 Triage blockers Structured audit audit.md
4 Review task list Task decomposition tasks/task-NN.md
5 Run verifier, paste output Implement one task Modified source files
Key discipline: What you do between steps matters as much as the prompts themselves. Do not hand triage or task-review decisions to the model.

Step 1 — Write the raw request

You write this file yourself. Do not ask the model to produce it. This is your contract with yourself and the model for all subsequent steps.

File: raw_request.md

## Feature / Bug / Task
[One sentence summary]
 
## Context
- What part of the codebase does this touch?
- Why is this needed? (user problem or business reason)
- Any related tickets, PRs, or prior decisions?
 
## Requirements
- [Requirement 1 — use "must", "should", "must not"]
- [Requirement 2]
- ...
 
## Out of scope
- [What explicitly NOT to do]
 
## Constraints
- Stack: [e.g. Node 20, React 18, Postgres 15]
- Conventions: [e.g. use repository pattern, no raw SQL, tests with Vitest]
- Must not break: [e.g. existing auth flow, public API contracts]
- Prefer: [e.g. small focused functions, no new dependencies without justification]
 
## Success criteria
- [ ] [Observable, testable outcome 1]
- [ ] [Observable, testable outcome 2]

Tips


Step 2 — Create the plan file

Prompt

You are a senior engineer doing technical planning.

Read the following:
- `raw_request.md` — the feature/bug request
- The relevant source files listed below

Source files:
[list file paths]

Produce a `plan.md` file with these sections:

## Summary
One paragraph: what are we building and why.

## Current state
How the relevant code works today. Be specific — reference actual files, functions, and data flows.

## Proposed approach
Step-by-step technical approach. For each step explain the "why", not just the "what".

## Files to change
| File | Change type | Reason |
|------|-------------|--------|

## Files to create
| File | Purpose |

## Risks and unknowns
- [anything that could go wrong or needs a decision before implementing]

## Decisions made
- [any design decisions made here and the reasoning]

Be concise. Avoid generic advice. Reference specific files and function names from the actual codebase.

What to check in the output

Tips


Step 3 — Audit the plan

This replaces the open-ended “is it best practice?” gate with a structured, triaged list of concerns.

Prompt

You are a senior engineer doing a pre-implementation code review.

Read:
- `raw_request.md`
- `plan.md`
- The relevant source files listed below

Source files:
[list file paths]

Produce an `audit.md` file. For each concern use this format:

---
**[BLOCKER | WARNING | NITPICK]** — [short title]
- File/area: [where]
- Issue: [what is wrong or risky]
- Suggestion: [concrete fix]
---

Check for:
- Does the plan contradict existing patterns in the codebase?
- Are there missing edge cases or error paths?
- Will this break any existing behavior or API contracts?
- Are there security, performance, or scalability concerns?
- Does anything in the plan conflict with the constraints in raw_request.md?
- Are there simpler alternatives the plan overlooks?

End with a verdict:
## Verdict
READY | NEEDS CHANGES

If NEEDS CHANGES, list only the BLOCKERs that must be resolved before proceeding.
Do NOT suggest changes for WARNINGs or NITPICKs — those can be addressed later.

Severity definitions

Severity Meaning Action
BLOCKER Will cause incorrect behavior, data loss, security issue, or breaks the build Fix before step 4
WARNING Technical debt, suboptimal approach, or risk under specific conditions Log in a tech-debt note; revisit later
NITPICK Style, naming, minor improvements Ignore or batch into a cleanup task

Tips


Step 4 — Split into tasks

Prompt

You are a senior engineer breaking a plan into implementation tasks.

Read:
- `raw_request.md`
- `plan.md`
- `audit.md`
- The relevant source files listed below

Source files:
[list file paths]

Create one file per task in the `tasks/` folder named `task-01.md`, `task-02.md`, etc.

Each task file must follow this exact structure:

## Goal
One sentence. What does completing this task accomplish?

## Context
Why this task exists and how it fits into the overall plan.

## Files to touch
- `path/to/file.ts` — what to do

## Implementation steps
Numbered, specific steps. Reference real function names, types, and patterns from the codebase.

## Acceptance criteria
- [ ] [Concrete, verifiable outcome — prefer test commands or observable behavior]
- [ ] [e.g. `npm test src/auth` passes]
- [ ] [e.g. POST /api/login returns 401 with invalid credentials]

## Dependencies
- Depends on: [task-XX or "none"]
- Must complete before: [task-XX or "none"]

Rules for task splitting:
- Each task must be independently verifiable
- No task should touch more than 3–4 files
- Order tasks so each one builds on a stable foundation
- Prefer: data layer → business logic → API → UI

Task review checklist

Before running step 5, review the generated tasks yourself:

Tips


Step 5 — Implement and verify

Run this prompt once per task file. Do not batch multiple tasks into one prompt.

Prompt

You are a senior engineer implementing a single task.

Read:
- `tasks/task-01.md` — the task to implement (change number each time)
- `plan.md` — for overall context and decisions already made
- The source files listed in the task

Implement exactly what the task describes. Do not implement anything outside this task's scope.

Rules:
- Follow existing code patterns in the files you touch
- Do not introduce new dependencies without flagging it
- Do not refactor code outside the task scope
- Leave a short inline comment when making a non-obvious choice

After implementing, self-check against the acceptance criteria:
## Verification
- [ ] [paste each criterion from the task]
For each criterion: state whether it passes and how you verified it.

If any criterion cannot be verified by you (e.g. requires running tests), output the exact command to run:
```
[test command]
```

Do not mark the task complete until all blockers are resolved.

Verification loop

For criteria that need real test output, run the command yourself and paste the result back with this follow-up prompt:

Test output:
[paste output here]

Are all acceptance criteria in task-01.md met? If not, what needs to change?

This gives the model real evidence to verify against instead of self-assessing.

Tips


File structure reference

project/
├── raw_request.md          ← Step 1: you write this
├── plan.md                 ← Step 2: model output, you review
├── audit.md                ← Step 3: model output, you triage
├── tasks/
│   ├── task-01.md          ← Step 4: model output, you review
│   ├── task-02.md
│   └── task-03.md
└── [your source files]     ← Step 5: model modifies these

Common failure modes

Symptom Cause Fix
Step 3 loops forever No concrete definition of “ready” Use the BLOCKER/READY gate; you decide when to proceed
Step 5 output is vague or generic Model lost context from earlier steps Always include plan.md in step 5 context
Tasks are too coarse to verify Acceptance criteria are missing or subjective Require test commands or observable behavior in every task
Model refactors unrelated code No scope constraint in step 5 prompt Add “do not touch code outside this task's scope” explicitly
Model marks task complete without real evidence Self-verification loop Run the test command yourself and paste output back
Plan contradicts codebase patterns Model hallucinated conventions Feed the actual relevant source files, not just descriptions

Quick reference — prompt inputs per step

Step Inputs to provide
1 Your own knowledge
2 raw_request.md + relevant source files
3 raw_request.md + plan.md + relevant source files
4 raw_request.md + plan.md + audit.md + relevant source files
5 tasks/task-NN.md + plan.md + source files listed in the task