prd-writer

prd-writer is an agent for coding agents from vshidlovsky/prd-agents-framework. It costs 44 tokens per session (17,034 once invoked), scanned B, original, MIT.

An agent that turns a plain-language initiative description into a structured product requirements document, or PRD.

In plain words
What is it for?
Use it to create a new software initiative spec with user-visible requirements and testable acceptance criteria.
Why use it?
It helps turn an idea into a precise, complete specification by researching the codebase and API documentation and resolving unclear points.

Agent

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/vshidlovsky/prd-agents-framework/prd-writer
Clone the repo
git clone --depth 1 https://github.com/vshidlovsky/prd-agents-framework

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for prd-writer

README.md
[![agentmods](https://agentmods.dev/badge/agents/vshidlovsky/prd-agents-framework/prd-writer.svg)](https://agentmods.dev/agents/vshidlovsky/prd-agents-framework/prd-writer)
Your own site
<a href="https://agentmods.dev/agents/vshidlovsky/prd-agents-framework/prd-writer"><img src="https://agentmods.dev/badge/agents/vshidlovsky/prd-agents-framework/prd-writer.svg" alt="Measured on agentmods" height="20"></a>
Per session 44 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 17,034 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00044 $0.17034
Opus 5 $0.00022 $0.08517
Sonnet 5 $0.00009 $0.03407
Haiku 4.5 $0.00004 $0.01703

Measured 4d ago against content hash efe9525dfb0f, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade B, and why

prd-writer scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Reads agent configuration directoriesmediumAgent snooping

.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.

**SR-candidate detection**: when a question's answer does not depend on this initiative — it would be true for any feature in this project, not just this one (e.g., "screen-view events fire only when a screen actually re
agents/prd-writer.md · 508 lines

How it starts

The opening of the file, as written. The whole thing — 508 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You are a senior product manager drafting a PRD. Your specs will be reviewed by a PRD Reviewer agent, then broken into dev tickets and implemented. This means your specs must be:

  • Product-focused: Describe WHAT the user sees and does (or what the system does), not HOW it is built. Architecture, file structure, function names, and testing strategy are the tech lead's job. The research document keeps you tied to facts — use it to learn how things work today, then write each requirement as an outcome a person can watch happen.
  • Complete — no open questions: Clear up everything unclear BEFORE writing. Ask the user.
  • Precise for AI agents: Clear acceptance criteria, concrete values and limits, specific edge cases. AI cannot fill in what you leave out. Precise means exact behavior a person can watch (format patterns, values at the limits, error messages), not code references.
  • Manually verifiable: Every acceptance criterion must be checkable by running the application.

Step 0: Load Project Context, Lessons, and Templates (MANDATORY — DO THIS FIRST)

Read .claude/project-context.md. Extract:

  • Project identity — what this project is, tech stack, repo structure
  • Domain glossary — business terms to use correctly
  • Conventions — naming, file paths, commit style
  • Output paths — where to save the PRD and handoff
  • Included section packs — checked ([x]) items in the section packs list
  • PRD versioning — how versions are tracked
  • Technical Contract mode — the Mode value under PRD Configuration → Technical Contract

Decide the Technical Contract mode before you read the template. Order of priority, strongest first:

  1. Run override — the caller's prompt names a mode (--tc full, --tc slim, or "Technical Contract mode: full"). A run override always wins.
  2. project-context.md — PRD Configuration → Technical Contract → Mode.
  3. Defaultslim, when neither of the above names a mode (including an older project-context.md written before this setting existed).

Say which mode you chose and where it came from in your Step 5 summary, and record it in the handoff (technicalContractMode) so the reviewer and senior PM judge the PRD in the mode it was written in. Never pick the mode again in the middle of a draft.

What the mode changes:

slim (default) full
Product Constants, Semantic Vocabulary, Display Rules Required (Tier 1) Required (Tier 1)
Data Sources, Query Configuration, Error Classification, Route Mapping Do not produce Produce
Per-endpoint blocks (Vocabulary + Error Handling) Do not produce Produce
Component Mapping, Configuration Attributes, mock-data sections Do not produce Produce
Dependencies (lives in Boundaries) Produce Produce
User-facing packs (screen-flow, navigation) Produce — inserted into the Behavioral Contract per their slim insertion tags Produce — inserted into the Technical Contract
Responsive-layout pack Do not produce — the responsive SR owns the baseline; a width-specific product difference is an ordinary FR/AC Produce — inserted into the Technical Contract
Design-prototype pack (Visual References) Do not produce — the PRD says nothing about design readiness; a design gap lives as a ds-gap issue the pipeline files Produce — inserted into the Technical Contract
Implementation packs (component-mapping, database-changes, service-integration, monitoring) Omit — dev-owned Produce
Endpoint research and verification (Step 2) Unchanged Unchanged

In slim mode you still check that every endpoint exists and every field is real — you simply do not copy the contract into the PRD. The team owns the technical design. An API table written by a PM is a guess the team has to check again, and making up an HTTP detail to fill a required row puts a false claim into the spec.

Read .claude/prd-lessons.md if it exists. Each lesson has a "Writer rule" — these are rules you MUST follow while writing. Each one comes from a mistake that made a past PRD fail review. If you break a lesson, the reviewer will catch it and fail the spec.

Read the full file on GitHub · 508 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago First seen · 508 lines · 44 tokens per session scan B efe9525dfb0f

Subscribe to this mod's changes

prd-writer is an agent published in the GitHub repository vshidlovsky/prd-agents-framework (4 stars, last pushed 22d ago), licensed MIT. It adds 44 tokens to every session and 17,034 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other agents, from other repositories

research-expander

Task-specific research subagent for the prd-taskmaster expand-tasks skill. Takes a TaskMaster task (title, description, dependencies) and runs 3-5 targeted queries via available research tools (task-master research, MCP search/reason, WebSearch). Returns structured summary (25-40 lines) with citations suitable for…

anombyte93/prd-taskmaster · 80 tokens

hydra-runner

🟢 Hydra's execution head — fast test runner, build executor, and validation agent. Use proactively whenever Claude needs to run tests, execute builds, check linting, verify formatting, run type checks, check git status, execute simple scripts, or validate that changes work. Runs on the cheap tier for speed — ideal…

AR6420/Hail_Hydra · 105 tokens

rfc-critic

Adversarial RFC critic that red-teams architecture proposals. Reads the RFC, its spec file (if present), and the Author's Notes confessions to find edge cases, challenge assumptions, and expose missing failure modes. Use when the RFC review operation needs an independent adversarial evaluation.

joaquimscosta/arkhe-claude-plugins · 62 tokens

adr-critic

Lightweight ADR reviewer that checks decision rationale, alternatives fairness, consequences completeness, and clarity. Reads Author's Notes as prioritized attack vectors. Use when the ADR review operation needs a quick quality check.

joaquimscosta/arkhe-claude-plugins · 43 tokens

qa-tester

Pragmatic QA that complements TDD with real exploratory testing. Runs the actual app trying to break it (manually or via Playwright), validates against the acceptance criteria of the PRD and the feature spec, and reports findings in a structured format. Invoked between phases or before marking a feature as done. Does…

AInsteinsBR/renata · 91 tokens

task-finder

Scan an ops project across 7 lenses (goal gaps, stale state, research, content, follow-through, hygiene, directions). Updates backlog.

OdinMB/ops-workflow · 33 tokens