RW
RFC Writer
🔵 Stable 🕐 updated 2026-06-08
🔷 SkillSpec L3
pm-engineering
Write an engineering RFC (Request for Comments) for a technical decision, architectural change, or significant implementation approach. Use when asked to write an RFC, document a technical proposal, create a design doc, write an architecture decision for review, or produce a technical specification for team feedback. Produces a complete RFC document covering problem statement, motivation, proposed solution, alternatives rejected, implementation plan, migration plan, security and performance implications, observability changes, rollout plan, and open questions.
What to give it
▸ RFC title and author — what this RFC is about and who is proposing it
▸ Problem being solved — what is broken, missing, or inadequate today; why action is needed now
▸ Proposed solution — the approach the author is recommending, at least at a high level
▸ Context and constraints — team size, existing architecture, timeline pressures, budget limits, compliance requirements
▸ Alternatives considered — at least 2 alternative approaches the author has thought about
▸ Current status — is this pre-decision (seeking feedback) or post-decision (documenting a made decision)?
✅ The bar it holds itself to
Every skill in this library self-verifies — these are this skill's own quality checks, straight from its definition.
✓ The problem statement is specific and quantified — not "the current system is slow" but "P99 latency is 800ms; budget is 200ms"
✓ Goals section includes measurable success metrics, not aspirational statements
✓ Every alternative has an explicit rejection reason — not just a list of cons
✓ Security implications section is completed, not left blank
✓ Performance implications include projected numbers, not just "should be better"
✓ Open questions are assigned to named owners with deadlines — not floating
✓ The RFC is written to be read by someone who was not in the planning conversations
✓ Migration plan addresses all affected parties — users, API consumers, data — not just the technical steps
⚠️ What it refuses to do
Do not write the RFC as a persuasion document — its purpose is to expose trade-offs, not sell a decision
Do not list alternatives without explicit rejection reasons — "we preferred the proposed solution" is not a reason
Do not leave the security implications section blank or write "N/A" without a reasoned explanation
Do not write open questions without assigning a named owner and a resolution deadline
Do not skip the "impact of not solving this" section — without it, reviewers cannot assess urgency
Install
npx pm-claude-skills add --agent claude # or codex · cursor · gemini · hermes
# or one-line MCP (every skill, any client):
claude mcp add pm-skills -- npx -y pm-claude-skills-mcp
Start with
Related skills
🔌 Embed this skill
Drop this on your blog, docs, or site — it renders a "Run this skill" card:
<div data-pm-skill="rfc-writer"></div>
<script src="https://mohitagw15856.github.io/pm-claude-skills/embed.js" async></script>
💬 Discussion