agentleFS
GeorgeAuth26GeorgeAuth26/authentalink-playbook/skills/prd-gate/SKILL.md

prd-gate

Skill1 starsChanged 6 days agoMITView on GitHub

Mandatory plan-first gate. MUST trigger at the START of every sprint, feature request, enhancement, or refactor, before any code is written. No code without an approved PRD (Lite or Full). Use whenever the user says "new sprint", "let's build", "add a feature", "next sprint", describes new functionality, or asks for any change that touches architecture, schema, AI agents, scheduled jobs, or integrations. If you are about to write or edit code and no approved plan exists for the work, stop and run this gate first. Pairs with qa-gate.

1 other project uses a version of this.

Adopted by

Most recently taken up by

  • Other versions1 project uses a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 1

    1. v60samurai/builder-os★ 8same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • In this repository2 other files it gives its agents.

The file

Show its rules and text

We split this skill into the rules it gives an agent

16 rules. About 0 are common, 15 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈15

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Every sprint starts here. The point is to think through every angle, every connection and every architectural consequence BEFORE writing …

    line 8
  2. Very specific:

    Update after ship: If decisions changed during the build, update the PRD to match what shipped and mark it Status: Shipped.

    line 23
  3. Distinctive:

    Ask: "Does this change how parts of the system connect?"

    line 27
  4. Distinctive:

    Full PRD: if the work involves ANY of:

    line 29
  5. Distinctive:

    Lite PRD: only if ALL of these are true:

    line 38
  6. Distinctive:

    No schema, endpoint, agent or scheduled-job impact

    line 40
  7. Distinctive:

    When in doubt, Full. An unnecessary Full PRD costs 20 minutes.

    line 44
  8. Distinctive:

    If any "Connections checked" item turns out false while you write it, upgrade to Full immediately.

    line 73
  9. Distinctive:

    Open questions and rulings: Must be empty or ruled by name before Approved.

    line 91
  10. Distinctive:

    Don't start until the owner says approved.

    line 110
  11. Distinctive:

    Every acceptance criterion is verified before commit.

    line 114
  12. Distinctive:

    Every box on the process map gets Match, Different or Not built before merge.

    line 115
  13. Distinctive:

    Every retired piece passes qa-gate's kill guard: a test that fails if live code still calls it.

    line 116
  14. Distinctive:

    Every scheduled job named in Section 6 appears in qa-gate's scheduled-job check.

    line 118
  15. Distinctive:

    Every schema change passes qa-gate's schema check.

    line 119
  16. Distinctive:

    If the work conflicts with a standing constraint or needs architecture changes beyond the sprint: don't expand scope or work around it.

    line 125

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

PRD Gate: Spec Before Code

Every sprint starts here. The point is to think through every angle, every connection and every architectural consequence BEFORE writing code, so qa-gate has a contract to verify against and we never ship a bug born from an unexamined assumption.

The rule: no approved PRD, no code. No exceptions.

Workflow

  1. Human playback first. Three plain lines before anything else: the human situation (who, what went wrong, what they're trying to fix), the exact object and field changing (strict nouns from the project's canonical model file), and the Fogg read (when they notice, how hard the fix is). If the request could mean two or three things, list each meaning in one line and ask. See the playbook's process/human-first.md.
  2. Classify the work (Lite or Full, decision tree below).
  3. Scaffold the PRD in docs/prds/ from the template.
  4. Fill every section from codebase inspection and the conversation. Mark real unknowns TBD: [what's needed to resolve]. Never leave a section blank or skip one silently. Collapsing a section needs a one-line reason.
  5. Interrogate the connections. Section 6 is the heart of the document: do the codebase archaeology, don't guess. 4b. Draw the process map (section 5b, Lite: the Map line). Every screen, every state (loading, in flight, success, error, empty, expired), every email, every side (asker, confirmer, viewer). Draw it from rulings or from code, never from memory. Every box gets a line in the gate: the file and the test that prove it. No map, no approval. 4c. Fill the new-user path from the code: which new-user steps this touches, which old pieces are still wired in, file and line. 4d. Kill check if anything retires: every dependent from the code with a verdict (retires with it / re-pointed to where / still live and why), plus the guard test. No section, no approval.
  6. Present to the owner for approval, map first. The owner's yes by name covers the map. Surface open questions and TBDs, each with a recommendation. Wait for an explicit yes by name. Nothing is approved in advance.
  7. Build against the PRD. Its acceptance criteria are the checklist qa-gate verifies before commit. Once approved, write the sprint's gates checklist at docs/prds/gates/<plan name>.md before any build code: one gate per acceptance criterion, with the qa-gate gate last.
  8. Update after ship. If decisions changed during the build, update the PRD to match what shipped and mark it Status: Shipped. A PRD that lies about the system is worse than no PRD.

Decision tree: Lite or Full

Ask: "Does this change how parts of the system connect?"

Full PRD if the work involves ANY of:

  • New or changed tables or columns
  • New endpoints, or changes to an endpoint's contract
  • Any AI agent's behavior
  • Any code path a scheduled job calls, even indirectly
  • A new third-party integration or SDK
  • Auth, payments, identity, permissions, or any score or status users rely on
  • More than 3 files across module boundaries

Lite PRD only if ALL of these are true:

  • One module, 3 files or fewer
  • No schema, endpoint, agent or scheduled-job impact
  • No new dependencies
  • The change is cosmetic or isolated (copy, styling, log messages, config values)

When in doubt, Full. An unnecessary Full PRD costs 20 minutes. A missed connection costs days.

File convention

docs/prds/
  PRD-2026-08-15-feature-name.md    (Full)
  LITE-2026-08-15-small-change.md   (Lite)

Status at the top of every PRD: Draft -> Approved -> In Progress -> Shipped -> Superseded

Lite template

# LITE: [Change name]
Status: Draft | Date: | Sprint:

**Problem:** [1-2 sentences: what's wrong or missing, and why it matters]
**Change:** [What will be done, which files]
**Out of scope:** [What this does NOT touch]
**Connections checked:** [Confirm: no schema / no endpoints / no agents / no scheduled jobs / no new deps]
**Acceptance criteria:** [Testable statements]
**Map:** [Process map: every screen, state, email and side touched, each box with its file and test. See templates/process-map.md]
**New-user path:** [Filled from the code: new-user steps touched, old pieces still wired in, file and line. "None" needs a reason]
**Kill check:** [Only if something retires: each dependent, its verdict, the guard test. Otherwise "nothing retires"]
**Risk:** [Worst case + rollback plan]

If any "Connections checked" item turns out false while you write it, upgrade to Full immediately.

Full template

The full template is at assets/prd-template.md. Sections:

  1. Human walkthrough. The trigger moment, the screen-by-screen action, the other side of the loop, and the do-nothing path (what the person sees on days 3, 7 and 14 if they never act). Written before any requirement.
  2. Problem and why now. One paragraph in user terms. Name which leg of B=MAP (motivation, ability, prompt) it fixes.
  3. Goals and success metrics. Measurable. For AI features: accuracy, hallucination, latency and cost targets.
  4. Non-goals. Explicit exclusions. This section prevents agent drift more than any other.
  5. Users and use cases, including edge cases.
  6. Functional requirements and acceptance criteria. Numbered FR-1, FR-2, each testable. These are qa-gate's contract. 5b. Process map. The flow drawn box by box, with a gate line per box (file and test). The map is the contract the build is checked against. 5c. New-user path. Filled by the builder from the code. 5d. Kill check. Only if something retires.
  7. Architecture and connections. THE CORE SECTION.
  8. Failure modes and edge cases.
  9. Rollout and rollback. Switch (feature flag) name, migration order, how to undo.
  10. Open questions and rulings. Must be empty or ruled by name before Approved.
  11. Task breakdown. Agent-sized chunks in dependency order, each naming its design board if it's UI.

Section 6 discipline

Fill it from the actual code, not memory:

  • Data model: for every table touched, paste the current column list from the schema file. For each new or changed column: name, type, nullability, default, and which similar tables do NOT have it (the wrong-table trap).
  • Dependency map: for every function or service you change, search for its callers and list them. If a scheduled job is in the chain, name it.
  • Endpoint contracts: method, path, request, response, auth, before and after.
  • Standing constraints: confirm in writing that the design respects every hard guard in the project's CLAUDE.md.

Approval gate

Present with:

  • The process map, first
  • A 3 to 5 sentence summary (what, why, biggest risk)
  • The open questions, each with a recommendation
  • Lite or Full, and why

Don't start until the owner says approved. If something mid-build invalidates part of the PRD: STOP, update the PRD and its map, flag it, and get re-approval on the changed sections.

Handoff to qa-gate

  • Every acceptance criterion is verified before commit.
  • Every box on the process map gets Match, Different or Not built before merge.
  • Every retired piece passes qa-gate's kill guard: a test that fails if live code still calls it.
  • Nothing a user sees is stamped Shipped until the new-user walk is done (process/new-user-walk.md).
  • Every scheduled job named in Section 6 appears in qa-gate's scheduled-job check.
  • Every schema change passes qa-gate's schema check.
  • The qa-gate output includes: PRD: [filename] - all acceptance criteria verified: YES/NO. A NO blocks the commit.
  • With a gates checklist, YES may only be written when scripts/gates-check.sh shows 0 open runnable gates.

Escalation

If the work conflicts with a standing constraint or needs architecture changes beyond the sprint: don't expand scope or work around it. Write the conflict into Open Questions, present options with trade-offs, and wait for direction.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.