prd
Skill2 starsChanged 24 days agoMITView on GitHub
Structured PRD/spec generator. Transforms vague ideas (skill / infra / process / feature) into requirements, success metrics, build phases, and go-or-park gates BEFORE implementation starts. Lifted from wwwazzz/senior-pm-prompt, adapted to the stack (helicopter-check + ship-discipline native).
125 other projects use a version of this.
Adopted by
Most recently taken up by
- Adelie-Squad/solosquadtheir own version, first seen Nov 8, 2026
- shaqmughal/seekstonetheir own version, first seen Nov 8, 2026
- lhbsaa/apex-unifiedtheir own version, first seen Nov 8, 2026
- Jasenpan1987/multi-codetheir own version, first seen Nov 8, 2026
- joeldevz/skynex-pitheir own version, first seen Nov 8, 2026
- insight68/Skillstheir own version, first seen Nov 8, 2026
Used with
Projects with it also use context-optimize, usecase and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
ibahgatSkillcontext-optimize
Improve context efficiency and cache stability for long or complex sessions.
Also in 3 projects that use this
gabriellstSkillusecase
Create an application use case. Use when implementing business operations like CreateOrder, ProcessPayment, CancelBooking. Use this skill for any command/mutation that orchestrates domain logic, whether simple CRUD or complex multi-step transactions with sagas. Dispatch hub — routes to typescript/go variants by file extension.
Also in 3 projects that use this
jidechaoSkillmodern-go
Modernize Go code by applying version-appropriate idioms and APIs (gofix-style transformations). Scans go.mod for the Go version, then transforms Go source files to use modern patterns—from Go 1.0 through 1.26+. Use when the user says "现代化","现代Go语言", "地道的", "idiomatic", "modernize", "modern-go", "update Go code", "gofix", or wants to upgrade Go idioms.
Also in 3 projects that use this
ulises-jeremiasSkilltrd
WHAT — Draft and review a Technical Requirements Document (TRD) using the template, typically
Also in 3 projects that use this
jidechaoSkillloop-it
Automated issue loop with checkpoint/resume: fetch open GitHub issues → dependency-aware topological sort → implement each issue end-to-end → review with /review-it → document with /note-it → ship with /ship-it → repeat. Persists state to .loop-state.json for crash recovery. Triggers on: loop-it, loop issues, auto implement, 批量实现, 循环实现, 实现所有issue, 恢复循环, resume loop.
Also in 3 projects that use this
snarktankSkillralph
Convert PRDs to prd.json format for the Ralph autonomous agent system. Use when you have an existing PRD and need to convert it to Ralph's JSON format. Triggers on: convert this prd, turn this into ralph format, create prd.json from this, ralph json.
Also in 16 projects that use this
- +2 more from jidechao
Other versions125 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 125
- github/awesome-copilot★ 41ksame name
- snarktank/ralph★ 22ksame name
- SethGammon/Citadel★ 927same name
- smallnest/autoresearch★ 571same name
- snarktank/compound-product★ 542same name
- CatCatUncle/openworkbuddy★ 398same name
- smallnest/goal-workflow★ 283same name
- OffchainLabs/arbitrum-docs★ 252same name
- julianromli/ai-skills★ 215same name
- golbin/agent-skills★ 214same name
115 more not listed
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 repository57 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- llms.txtllms.txt
- advisorSkill
- agent-dispatchSkill
- arenaSkill
- audit-pypi-model-packageSkill
- branching-workflowSkill
- code-reviewSkill
- criticSkill
- cron-child-oauth-auditSkill
- daily-forestSkill
- deep-researchSkill
- diagnose-cron-timeoutSkill
- dreamingSkill
- eod-summarySkill
- filingSkill
- forest-synthesisSkill
- goalsSkill
- graph-hygieneSkill
- ideaSkill
- inline-tagsSkill
- intel-analyzerSkill
- longformSkill
- loop-experimentSkill
- loop-librarySkill
- meta-memory-reviewSkill
- office-hoursSkill
- open-loopsSkill
- plan-ceo-reviewSkill
- plan-design-reviewSkill
- progressive-disclosureSkill
- reality-feedback-createSkill
- reality-review-weeklySkill
- recallSkill
- reconcile-extractionSkill
- redactSkill
- repo-auditSkill
- research-digestSkill
- review-gateSkill
- run-long-job-detachedSkill
- saveSkill
- scopeSkill
- self-auditSkill
- shadow-test-local-classifierSkill
- signal-scorerSkill
- skill-auditSkill
- skill-chainingSkill
- spawn-agent-in-tenantSkill
- spawn-tenantSkill
- split-log-rows-by-session-kindSkill
- subagent-delegationSkill
- telegram-dump-routerSkill
- telegram-reply-toolSkill
- verify-stackSkill
- wave-planSkill
- weekly-retroSkill
The file
We split this skill into the rules it gives an agent
12 rules. 0 are common, 8 are distinctive, and 4 are very specific to this project.
0
Common
Most of the 102 edited versions we read keep these.
8
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 13
When NOT to use: when scope is already obvious + 1-step (e.g.
- Distinctive: line 23
When the user surfaces a vague idea ("we should build X" / "let's spec out Y"), extract whatever structure is implicit in their phrasing …
- Distinctive: line 42
If the answer is vague: rephrase it as a measurement.
- Distinctive: line 60
If yes: surface it for either (a) extend the existing, (b) fork the pattern, (c) replace the existing.
- Distinctive: line 66
If effort > value × 5, push back on whether this is worth it now vs queue/park.
- Distinctive: line 70
Before ANY implementation, run these gates.
- Very specific: line 81
If ANY gate FAILS, the PRD is not done.
- Very specific: line 83
_TBD_discipline (from senior-pm-prompt): NEVER fabricate values to fill slots. - Distinctive: line 150
After the PRD draft is written:
- Very specific: line 153
Only on APPROVE proceed to implementation.
- Distinctive: line 160
NEVER bloat single-step work: If the ask is "kill 4 orphan procs", don't write a PRD.
- Very specific: line 169
skill-creator.md9-element quality gate: when the PRD is FOR a new skill, the resulting skill body should pass that 9-element checklist.
“Common” is measured: kept by at least 6 in 10 of the 102 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
/prd. Structured spec generator
Transforms vague ideas → a structured spec with verifiable success criteria, explicit blast radius, and ship-or-park gates BEFORE writing any code. Replaces the failure mode where vague-idea → impl skips the intermediate spec and you ship the wrong thing.
When to use: any new substantive build. a new skill, a new cron task, a new infra change, a new process, a content-pipeline change, anything that touches multiple files or spans >1 turn. NOT for: bug fixes, micro-edits, single-line corrections, casual Q&A.
When NOT to use: when scope is already obvious + 1-step (e.g. "kill these 4 orphan procs"). Don't bloat single-step work with PRD ceremony.
Lifted from
wwwazzz/senior-pm-prompt (GitHub, MIT-spirit). Pattern lift, not a full ship. adapted to the stack with helicopter-check + sycophancy-guard + scope-discipline native. Source patterns: aggressive first-pass mining / slot-filling / consistency PASS-FAIL / opinionated defaults marking _TBD_ explicitly (vs fabricating).
4-Phase procedure
Phase 1. AGGRESSIVE FIRST-PASS MINING
When the user surfaces a vague idea ("we should build X" / "let's spec out Y"), extract whatever structure is implicit in their phrasing BEFORE asking questions. Do NOT immediately ask "what do you want?". mine first.
Extract:
- Title (slug-form). what to call this
- Goal (1-sentence outcome). what it accomplishes when done
- Stakeholder (who cares). The operator? A persona? A sub-agent? External?
- Trigger condition (when does this fire). manual? cron? event-driven?
- Adjacent stack. which existing files / skills / scripts does this touch?
Surface this back to the user as an "I read your ask as: ..." paragraph BEFORE Phase 2. Lets the user correct mining errors fast.
Phase 2. SLOT-FILLING DIALOGUE
Walk through these slots SEQUENTIALLY. Don't ask all at once (overwhelming). One slot per question, each question 1-3 lines max. If the user gives multi-slot answers, accept + move on.
Slot 2.1: Outcome verifiability
"How will we know this is working? A specific observable signal. a log entry, a file output, a downstream metric, a user-visible behavior."
If the answer is vague: rephrase it as a measurement. "Faster" → "p50 latency under 500ms". "Better recall" → "a stale-memo replay returns the fresh chunk in top-3".
Slot 2.2: Failure mode
"What's the dominant way this fails? The most-likely bug, edge case, regression risk."
This is the load-bearing question. If the user can't name a failure mode, the spec is too vague. push back: "if there's no way for this to fail, there's nothing to verify; what does broken look like?"
Slot 2.3: Blast radius
"What does this touch? Settings, scheduler, a hot path, hooks, shared state, external comms?"
Map the blast radius to an autonomy mode: AUTO (low blast) / INFORM (moderate) / CONFIRM (high or external-facing). Reference: the Autonomy Modes table in CLAUDE.md.
Slot 2.4: Existing equivalents
"Is something already doing this OR similar? Search the recall index + grep + skills/_index.md before answering."
If yes: surface it for either (a) extend the existing, (b) fork the pattern, (c) replace the existing. The DEDUP gate. Per the pattern-lift discipline: always survey before building.
Slot 2.5: Effort + ROI honest estimate
"Build effort (hours), maintenance ongoing (hours/month), value delivered (concrete outcome)."
If effort > value × 5, push back on whether this is worth it now vs queue/park. Per sycophancy-guard Rule 3: state confidence + the weakest assumption.
Phase 3. CONSISTENCY VALIDATION (PASS/FAIL gates)
Before ANY implementation, run these gates. Each is binary PASS/FAIL.
| Gate | PASS criterion | FAIL means |
| Outcome verifiable? | Slot 2.1 has a SPECIFIC observable | Spec too vague, rewrite |
| Failure mode named? | Slot 2.2 has at least 1 named failure | Can't test what we can't break |
| Blast radius bounded? | Slot 2.3 maps to an autonomy mode | Unknown blast = needs scope clarification |
| Dedup checked? | Slot 2.4 surfaces existing equivalents | Possible reinvent-the-wheel |
| ROI defended? | Slot 2.5 has effort vs value | Can't prioritize without numbers |
| Helicopter ripples? | 3 ripple bullets on infra/scheduler/hooks/shared-state | Per the helicopter-check discipline |
If ANY gate FAILS, the PRD is not done. Either fill the gap OR explicitly mark _TBD_ with rationale (e.g. "TBD. outcome verifiability deferred to the pilot run, will define after seeing the first real data").
_TBD_ discipline (from senior-pm-prompt): NEVER fabricate values to fill slots. Better to mark _TBD_ than to invent. Future-you reading the PRD needs to know which assumptions were defended vs deferred.
Phase 4. OUTPUT FORMAT
Produce a structured PRD doc. Save to outputs/raw/agent/prds/YYYY-MM-DD-{slug}-prd.md (creates the dir if missing). Format:
---
title: {Title}
slug: {slug}
date: {YYYY-MM-DD}
status: draft | reviewed | approved | shipped | parked
stakeholder: {operator / persona / sub-agent / external}
autonomy_mode: AUTO | INFORM | CONFIRM
estimated_effort_hours: {N}
maintenance_hours_per_month: {N}
go_or_park_threshold: {effort * value calc}
---
# {Title}
## 1. Goal
{One-sentence outcome statement}
## 2. Stakeholder + Trigger
- **Who cares**: {stakeholder}
- **When fires**: {manual / cron / event}
- **Adjacent stack**: {existing files/skills/scripts touched}
## 3. Outcome (verifiable)
{Specific observable signal. Log entry / file / metric / behavior. Include measurement.}
## 4. Failure mode
{Dominant failure. Edge case. Regression risk. What does broken look like?}
## 5. Blast radius + ripples
- Autonomy mode: {AUTO/INFORM/CONFIRM} (rationale)
- Ripple 1: {what else this touches}
- Ripple 2: {downstream effect}
- Ripple 3: {forward-compat or upstream-block consideration}
## 6. Dedup check
- Existing equivalent: {none / extend X / fork Y / replace Z}
- Survey method: {grep / recall / skills/_index.md scan}
## 7. Effort + ROI
- Build hours: {N} (or _TBD_ until prototype)
- Maintenance hours/month: {N}
- Value delivered: {concrete outcome. saved cycles, prevented failures, unlocked capability}
- Confidence: {N%}, weakest assumption: {what's most likely wrong}
## 8. Build phases
1. {Phase 1, with a verification checkpoint}
2. {Phase 2, with a verification checkpoint}
3. ...
## 9. Go-or-park gate
- **Ship if**: {N of 6 PASS gates + helicopter ripples surfaced + operator authorization}
- **Park if**: {failure mode unclear / no real failure replay / dedup conflict / blast radius too high}
- **Re-eval cadence if parked**: {date or trigger condition}
## 10. Out of scope
- Explicit list of what this PRD does NOT cover. Prevents scope creep mid-build.Phase 4.5. APPROVAL GATE
After the PRD draft is written:
- Surface it to the user via the chat channel with a summary table (gates / passed-failed /
_TBD_count). - User options: APPROVE → status=approved, ship next; EDIT → user revises a specific section; PARK → status=parked, log rationale; KILL → discard, archive.
- Only on APPROVE proceed to implementation. Status changes to
shippedafter ship + smoke test.
Hard rules
- NEVER skip the Phase 3 gates. The whole point is forcing the spec discipline. Skipping gates = back to the vague-idea → impl failure mode.
- NEVER fabricate slot values.
_TBD_with rationale > a fake number. Future-you reading this needs to distinguish defended vs deferred. - NEVER produce a PRD without the Phase 4.5 approval gate. Auto-shipping a PRD without an explicit go = unilateral scope expansion. CONFIRM-gate.
- NEVER bloat single-step work. If the ask is "kill 4 orphan procs", don't write a PRD. PRDs are for substantive multi-file/multi-phase builds.
- ALWAYS dedup BEFORE drafting. Slot 2.4 is the survey gate. Lifted patterns get cited; reinvented work gets caught here.
Pairs with
/scope(auto-invoke before CONFIRM-gate actions): /scope is the inline scope restate. /prd is the structured-doc version for substantive builds.- the Autonomy Modes table in
CLAUDE.md: the blast-radius → autonomy-mode mapping reference. - the helicopter-check discipline: the 3-ripple check that Slot 2.3 surfaces.
- the pattern-lift discipline: the alternatives audit happens at the Slot 2.4 dedup check.
skill-creator.md9-element quality gate: when the PRD is FOR a new skill, the resulting skill body should pass that 9-element checklist.
Source archive
Lifted from wwwazzz/senior-pm-prompt. Adapted: replaced the PM-centric "user personas + UX flows" with stakeholder + autonomy-mode + helicopter-ripple slots that match the internal stack. The source ships Markdown-formatted PRD output for direct ingestion by AI coding agents (Claude Code, Cursor); the adaptation keeps that property + adds the CONFIRM-gate approval flow.
Example invocation
> /prd new skill: temporal rerank for the recall index
Phase 1 mining:
"I read your ask as: a new skill that adds time-decay to recall.
Title: lib_temporal_rerank
Goal: stale-memo recall failures get fixed by time-aware reranking
Stakeholder: the operator (recall consumer)
Trigger: a --temporal flag on the recall search command
Adjacent stack: the recall index, memory tier files (Decisions/Learnings/Context/Infra)
Sound right?"
User: yes proceed
Phase 2 slot-filling (one Q at a time)...
[slot 2.1 outcome: "a stale-memo replay returns the RESOLVED memo top-3 instead of the OLD claim"]
[slot 2.2 failure: "doc-kind misclassification → wrong decay applied"]
[slot 2.3 blast: "AUTO. opt-in flag, default-off, no hot-path change"]
[slot 2.4 dedup: "8 alternatives surveyed. one external pattern was the best fit, no internal equivalent"]
[slot 2.5 effort: "~half a day build, ~5min/month maintenance, value = the stale-memo class fixed"]
Phase 3 gates: 6/6 PASS
Phase 4 PRD output → outputs/raw/agent/prds/2026-05-10-temporal-rerank-prd.md
status=approved (operator green-lit)
Phase 4.5 approval: APPROVED → ship.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
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.

