Prompt + skill

AI project management prompt: copy-paste for Claude and Codex

An AI project management prompt turns a coding agent from an implementer into a project manager: instead of writing code on request, it decomposes the goal into epics and stories, specs each one, and stops for your approval before anything is built. Below is a ready-to-copy prompt, a drop-in SKILL.md, and the honest limits of both.

By Kylian Migot · Updated July 2026 · 11 min read

Quick answer

An AI project management prompt makes a coding agent plan instead of code: it breaks the goal into epics and stories, drafts a spec with acceptance criteria for each story, and stops for your approval before implementing. It then runs one story per branch and PR, holds a WIP limit, and reports progress as a kanban board. Paste it as a first message or save the SKILL.md version so it auto-loads, both are copy-ready below.
What it does
Turns a coding agent into a PM: decompose → spec → approve → build one story per PR
The core gate
No implementation until you approve the plan and the story's spec
Two formats
Paste-as-first-message prompt, or ~/.claude/skills/project-manager/SKILL.md
Honest limit
A prompt instructs the method; only a tool like AIDEN can enforce it
01

Why a Project Management Prompt Beats a Coding Prompt

Almost everyone prompts a coding agent to code: “add authentication,” “build the dashboard,” “fix this bug.” The agent obliges instantly, and that speed is the trap. It starts editing files before anyone has decided what the change actually is, how far it reaches, or how you will know it worked. The diff arrives fast and unreviewable, and you find out what the model decided only after it decided it.

A project management prompt inverts the default. Instead of releasing the agent to code, it holds the agent in a planning role: decompose the goal, write a spec, wait for a human to approve, and only then implement, one bounded story at a time. That is not busywork. Software quality is set upstream, in decomposition and scoping, long before the first line is written. Moving the agent's effort there is the entire point, and it mirrors how you would run a real team of agents in project management for AI coding agents: planning becomes the work, and review becomes the gate.

02

The Anatomy of a Strong PM Prompt

A good PM prompt is not a vibe (“act like a project manager”); it is a set of hard rules the model can follow mechanically. Six components carry the weight:

A role that forbids coding

The opening line assigns the PM role and states plainly that the agent does not write feature code until a spec is approved. Without this, the model reverts to its default, implementing, at the first opportunity.

Decomposition rules

Explicit instructions to break the goal into epics (slices of value) and stories, where a story is small enough for one session and produces exactly one PR. This is what prevents a three-story diff you have to reject all at once.

The spec-and-approve gate

For each story: goal, in-scope files, out-of-scope exclusions, verifiable acceptance criteria, and a verification command, then STOP and wait for human approval. The gate is the heart of the prompt.

One-story-one-PR rule

Each approved story runs on its own branch (ideally its own worktree) and ends as a single PR whose description is the spec. Never bundling keeps diffs attributable and reviewable.

WIP limits

A cap on stories In-progress at once (one, by default). This stops the agent from fanning out into half-finished work and forces each story to reach Review before the next begins.

A status-reporting format

A fixed board-summary shape the agent must emit on request or on any change, so you always see the kanban state and the single next action it needs from you, instead of a wall of prose.

Notice that these are the same guarantees behind spec-driven AI development, written as instructions a chat agent can follow rather than as tool behavior. The spec structure, goal, in-scope, out-of-scope, acceptance criteria, is lifted directly from that method, because it is what makes an agent's output bounded and its diff reviewable.

03

The Prompt (Copy This)

This is the full prompt. It is faithful to the AIDEN method, decompose into epics and stories, spec each story, gate on approval, one story per branch and PR, a WIP limit, a kanban of work, and a “done means an approved PR meeting acceptance criteria” definition, written so a chat agent can follow it end to end. Paste it verbatim; adjust the details later using the tuning section.

# ROLE

You are the PROJECT MANAGER for this codebase, not the implementer.
Your job is to PLAN, DECOMPOSE, and GATE work, then supervise
implementation one story at a time. You do not write feature code
until a story's spec has been explicitly approved.

# CORE RULES

1. PLAN BEFORE CODE. When given a goal, never start editing files.
   First decompose it into a plan and present it for approval.
2. DECOMPOSE. Break every goal into EPICS (a coherent slice of
   value) and, under each epic, STORIES. A story is small enough
   that one agent can finish it in one focused session and it
   produces exactly one reviewable pull request.
3. SPEC EACH STORY. Before any story is coded, draft its spec:
     - Goal: one sentence on the outcome.
     - In scope: the files/functions this story may create or change.
     - Out of scope: what it must NOT touch (other modules, schemas,
       unrelated routes). This section is mandatory.
     - Acceptance criteria: concrete, verifiable conditions that
       define "done" (e.g. "POST /login returns 200 + set-cookie for
       valid creds, 401 otherwise"). Prefer machine-checkable ones.
     - Verification: the exact command(s) to prove the criteria pass.
4. STOP FOR APPROVAL. After presenting the plan, and again after
   drafting each story's spec, STOP and wait for my explicit
   approval ("approved" / "approve story X"). Do not implement an
   unapproved story. If I edit the spec, incorporate it and re-confirm.
5. ONE STORY = ONE BRANCH = ONE PR. Each approved story is
   implemented on its own branch (story/<slug>) — ideally its own
   git worktree — and finishes as a single PR whose description is
   the spec. Never bundle two stories into one diff.
6. WIP LIMITS. No more than ONE story In-progress at a time by
   default (raise only if I tell you to). Do not pull a new story
   into In-progress until the current one is in Review or Done.
7. DEFINITION OF DONE. A story is Done only when its PR is open,
   its verification command passes, and every acceptance criterion
   is met. Green CI without meeting the criteria is NOT done.
8. STAY IN SCOPE. While implementing, touch only files listed as
   in-scope. If you discover necessary out-of-scope work, STOP,
   propose it as a new story, and wait — do not silently expand.

# KANBAN OF WORK

Maintain a board with these columns and move each story through them:
  Backlog → Spec → Approved → In-progress → Review → Done
Track every story on the board. A story only advances when its exit
condition is met (e.g. Spec → Approved requires my approval; Review →
Done requires a passing PR that meets acceptance criteria).

# STATUS REPORTING

Whenever I ask for status, or after any story changes column, reply
with a board summary in this exact shape and nothing extra:

  BOARD — <project name>
  Backlog:     [S3] slug — one line
  Spec:        [S2] slug — awaiting your approval
  Approved:    —
  In-progress: [S1] slug — <what's happening now>
  Review:      —
  Done:        [S0] slug — PR #12 ✓ criteria met
  WIP: 1/1 · Next action: <the single thing you need from me>

# INTERACTION

- Start by restating the goal in one sentence, then present the
  Epic → Story decomposition for approval. Do NOT spec every story
  up front; spec the next story only when I'm ready to start it.
- Always end a turn by naming the single next action you need from
  me (approve plan / approve spec / review PR / choose next story).
- Be terse. You are running a board, not writing an essay.
04

How to Use It in Claude Code, Codex, or Any Chat Agent

There are two ways to put the prompt to work, one instant, one durable:

  1. 1

    Paste it as the first message

    Open a session in Claude Code, Codex, or any chat agent and send the whole prompt as message one, before you state your goal. It takes effect immediately for that conversation. Then give it the goal ("build a waitlist with email capture and an admin export") and let it come back with the Epic → Story plan. This is the fastest way to try it and the right choice for a one-off project.
  2. 2

    Save it as a system / project instruction

    For a whole repo, put the body into an AGENTS.md (Codex and most agents read it) or a CLAUDE.md so every session inherits the PM behavior. The tradeoff: CLAUDE.md rides along in every session whether you're planning or not, so this is best when the repo is genuinely run PM-first.
  3. 3

    Save it as a skill (best for Claude Code)

    The cleanest option in Claude Code is a skill: the version in the next section drops into ~/.claude/skills/project-manager/SKILL.md and loads on demand only when a request looks like planning, so it costs no context the rest of the time. AIDEN publishes a fuller set in the AIDEN Method skill pack.

Whichever you choose, drive it the same way: give the goal, approve or edit the decomposition, approve each story's spec, then review the PR. The prompt is written to always end its turn by naming the single next action it needs from you, which is what keeps a planning session from wandering. Handing the agent the approved spec cleanly is a craft of its own, covered in how to assign tasks to AI agents.

Your AI workspace for shipping software.

Download AIDEN free and point it at your existing Claude Code or Codex setup. No credit card, running in minutes.

Download AIDEN free

Free to start · macOS 12+ · No credit card required

05

The SKILL.md Version (Drop-In for ~/.claude/skills/)

A Claude Code skill is a folder with a SKILL.md file: YAML frontmatter (a name and a description) followed by markdown instructions. Claude reads only the name and description at session start, then loads the full instructions on demand when a request matches the description, which is why the description below spells out exactly when the skill should fire and when it should not. Save this as ~/.claude/skills/project-manager/SKILL.md for every project on your machine, or .claude/skills/project-manager/SKILL.md inside a repo to share it with your team through git.

---
name: project-manager
description: >-
  Use when the user hands over a goal, feature, or project to plan
  rather than a single edit to make — e.g. "build X", "plan the work
  for Y", "manage this project", "break this down into tasks", or
  "act as PM". Turns the agent into a project manager that decomposes
  into epics and stories, specs each story, gates on approval before
  coding, runs one story per branch/PR, and reports a kanban board.
  Do NOT use for a single well-scoped edit the user wants done now.
---

# Project Manager

You are the PROJECT MANAGER for this codebase, not the implementer.
PLAN, DECOMPOSE, and GATE work; supervise implementation one story at
a time. Never write feature code before a story's spec is approved.

## Rules

1. Plan before code. Given a goal, decompose it first — do not edit.
2. Decompose into EPICS (a slice of value) → STORIES. One story =
   one focused session = one reviewable PR.
3. Spec each story before coding it: Goal · In scope (files) ·
   Out of scope (mandatory) · Acceptance criteria (verifiable) ·
   Verification command.
4. STOP for approval after the plan and after each spec. Do not
   implement an unapproved story.
5. One story = one branch (story/<slug>), ideally its own git
   worktree = one PR whose description is the spec. Never bundle.
6. WIP limit: one story In-progress at a time by default.
7. Done = PR open + verification passes + all acceptance criteria met.
8. Stay in scope. Out-of-scope work becomes a NEW story you propose,
   never a silent expansion.

## Board

Track every story: Backlog → Spec → Approved → In-progress → Review →
Done. A story advances only when its exit condition is met.

## Status format

On request or after any column change, reply with only:

  BOARD — <project>
  Backlog:     [id] slug — one line
  Spec:        [id] slug — awaiting approval
  Approved:    —
  In-progress: [id] slug — current work
  Review:      —
  Done:        [id] slug — PR #n ✓
  WIP: 1/1 · Next action: <what you need from the user>

## Interaction

Restate the goal in one sentence, present the Epic → Story
decomposition, and stop for approval. Spec the next story only when
the user is ready to start it. End every turn by naming the single
next action you need. Be terse.

Because the description names the triggers (“build X,” “plan the work,” “act as PM”) and the anti-trigger (a single well-scoped edit), the skill auto-loads on planning-shaped requests and stays out of the way for quick edits, costing you almost no context until it fires. For the mechanics of where skills live and how they load, see agent skills, and for a ready-made set that encodes the spec → worktree → PR loop, the AIDEN Method skill pack.

06

Tuning It for Your Team

The prompt ships opinionated on purpose, but three dials are worth setting to match how you work:

  1. 1

    WIP limit

    The default of one story In-progress is deliberately strict, it forces serial, reviewable flow. If you run multiple agents on non-overlapping stories, raise the cap ("WIP limit: up to 3") and pair it with isolation so parallel work stays safe. Do not raise it just to feel faster; unreviewed parallel diffs are how codebases rot.
  2. 2

    Review strictness

    Tighten the Definition of Done for production work: require the verification command to pass AND an explicit human sign-off before Done. Loosen it for throwaway spikes, where a bare prompt is honestly fine and the spec gate is overhead you should skip.
  3. 3

    Spec depth

    For small stories, a three-line spec (goal, in-scope, one acceptance criterion) is enough. For cross-cutting work, expand the spec section to demand named files and functions, example inputs and outputs, and an explicit exclusion list, the extra two minutes upstream routinely saves an hour of re-review on the diff. The free agent spec builder generates specs in this shape.

When you find yourself editing the prompt every session, that is the signal the rule belongs in a durable place, an agent skill or the tool itself, rather than in a message you keep re-typing. The agent spec builder produces the spec template this prompt expects, if you want to standardize the shape across stories.

07

The Honest Limit of a Prompt Alone

A prompt is instructions, not enforcement, and it is worth being clear-eyed about the gap. Every rule in the prompt is something the model is asked to do, and a text file cannot make it comply. In practice, three things fail exactly when you can least afford it:

The approval gate leaks

Under momentum, the model plans, then keeps going and starts coding before you approved anything. The STOP is capitalized and repeated, which helps, but it is still a request the model can override in a long session.

Isolation isn't guaranteed

The prompt says "one branch, ideally a worktree per story," but nothing stops the agent from editing your main checkout directly. A prompt can name the convention; it cannot create the worktree or refuse to write outside it.

PR-per-story drifts

Over a session the agent bundles two stories into one diff, or forgets to open the PR at all. The rule is stated; enforcement is absent. Consistency beats memory, and a prompt runs on the model's memory.
08

How AIDEN Makes the Same Method Structural

AIDEN's contribution is to stop relying on the model remembering the prompt and build the method into the tool, on top of the same Claude Code and Codex you already run (bring your own inference). Every rule the prompt can only ask for, AIDEN turns into structure:

The spec approval gate is enforced

Every story becomes a spec drafted from your card and a scan of the codebase, and no agent starts coding until you approve it. It is not a capitalized request the model may skip; it is a hard gate in the workflow.

A worktree is created per story

AIDEN opens a real git worktree on a new branch for each approved story, automatically. Isolation stops being something the agent must remember and becomes something the tool guarantees, which is what makes parallel stories safe.

A PR is one click per story

When a story finishes, its PR is one click away with the approved spec attached as the description. One story maps to one branch maps to one PR by construction, not by hoping the agent didn't bundle.

The board is the kanban of work

Project → Epic → Story → Spec is the actual data model, moving through Stories → Spec Review → In Progress → Review → Done. The status format the prompt emits as text is, in AIDEN, the live board itself.

The method is identical, decompose, spec, gate, isolate, one PR per story, a kanban of work. The difference is that a prompt instructs it and AIDEN enforces it, so quality no longer depends on the model remembering the rules under pressure. Keep the prompt for ad-hoc chat sessions; when the discipline has to hold every time, that is what the tool is for. AIDEN is free for one project and $19/mo for Solo. The full reasoning behind running agents this way is in spec-driven AI development and AI kanban for developers.

FAQ

What is an AI project management prompt?
It is a prompt, usually pasted as the first message or saved as a skill, that assigns a coding agent the role of project manager instead of implementer. Rather than jumping to code, the agent breaks the goal into epics and stories, drafts a spec for each story with acceptance criteria, stops for your approval before any implementation, and reports progress as a kanban board summary. The whole point is to move the agent's effort upstream, into planning and decomposition, which is where software quality actually comes from.
How do I use the prompt in Claude Code or Codex?
Two ways. The quick way is to paste the full prompt as your first message in a session; it takes effect immediately for that conversation. The durable way, in Claude Code, is to save the SKILL.md version to ~/.claude/skills/project-manager/SKILL.md so it auto-loads whenever a request looks like planning or project management, with no re-pasting. For Codex or other agents, drop the body into an AGENTS.md or the agent's instruction file. Both variants are on this page, copy-ready.
Can a prompt alone enforce the project management method?
No, and this is the honest limit worth stating plainly. A prompt can instruct an agent to write a spec, wait for approval, and open one PR per story, but nothing in a text file can force the model to obey. Under pressure to just ship, a long session drifts: it skips the spec, edits main directly, or bundles three stories into one diff. A prompt encourages the method; only tooling with real gates enforces it. That gap is exactly what a tool like AIDEN closes.
What is the difference between this prompt and a normal coding prompt?
A normal coding prompt tells the agent what to build and lets it start writing immediately. A project management prompt forbids that: it holds the agent in a planning role until you approve a decomposition and per-story specs, and only then releases it to implement one story at a time. The first optimizes for a fast diff; the second optimizes for a diff you can actually review, which is the difference that determines whether agent output is safe to merge.
Does AIDEN replace this prompt?
It makes the prompt unnecessary by building the same method into the structure. Instead of hoping the model remembers to write a spec and wait, AIDEN gives every story a spec drafted from the card, a hard approval gate before any code, its own git worktree, and a one-click PR, on top of your existing Claude Code and Codex. You keep the prompt for ad-hoc chat sessions; you reach for AIDEN when the discipline has to be guaranteed rather than requested. AIDEN is $19/mo for Solo and free for one project.

Keep reading

Stop hoping the model remembers the method.

AIDEN builds the spec gate, worktree-per-story, PR-per-story, and kanban of work into the tool, on top of your Claude Code and Codex. Free for one project, $19/mo Solo.

macOS 12+ · Bring your own Claude Code or Codex · Your code stays local