writing-design-docs

Generate a problem-statement design doc with a six-component structure.

Updated Apr 28, 2026
One-click install
npx skills add https://github.com/ceejbot/ceej-skills --skill writing-design-docs-ceejbot
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: writing-design-docs
Source: https://github.com/ceejbot/ceej-skills/tree/main/skills/writing-design-docs
Command: npx skills add https://github.com/ceejbot/ceej-skills --skill writing-design-docs-ceejbot

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes assets (resource) components.

What problem does it solve?

It helps you write a problem-statement design doc that captures what’s broken, why it matters, and how to evaluate options without jumping straight to a preferred solution.

Core Features & Use Cases

  • Problem-first structure: Guides you to start with the problem, desired behavior change, success criteria, and explicitly what’s out of scope.
  • Decision-ready reasoning: Walks you through values, alternatives, tradeoffs, and a recommendation whose rationale ties back to the values.
  • Collaborative clarity: Produces a doc that invites review with honest open questions instead of seeking approval or hiding uncertainties.
  • Use case example: Before committing to a non-obvious direction (e.g., choosing an architectural approach or major feature design), generate a filled template that stakeholders can critique and refine.

Quick Start

Use writing-design-docs when you want to draft a problem-statement design doc for a non-trivial technical decision using the provided template, filling the document section by section.

Frequently Asked Questions about writing-design-docs

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a design doc for software architecture decisions?

Writing a design doc requires following a six-component structure: problem, background, values, options, recommendation with rationale, and open questions. This template-driven approach ensures stakeholder alignment by evaluating tradeoffs before selecting an architectural direction.

What is a problem-statement design doc and when do I need one?

A problem-statement design doc captures requirements, values, options, and tradeoffs before selecting an approach. Use it for non-trivial technical decisions like feature planning or architectural direction setting where success criteria and alternatives must be explicitly evaluated.

How do I frame a technical problem for stakeholder alignment?

Frame a technical problem for stakeholder alignment by defining the problem, desired behavior change, success criteria, and out-of-scope items. Use staged collaboration to invite review with honest open questions instead of seeking approval or hiding uncertainties.

Does writing a design doc require comparing architectural alternatives?

Writing a design doc requires comparing architectural alternatives by walking through values, options, and tradeoffs. The recommendation's rationale must explicitly tie back to the defined values, ensuring the chosen approach is evaluated against success criteria.

Can I use a template for drafting technical design documents?

You can use a template for drafting technical design documents by filling the included template file section by section. This template-driven writing approach covers the six-component structure to produce a document stakeholders can critique and refine.

What should I avoid when creating a design doc for feature planning?

When creating a design doc for feature planning, avoid jumping straight to a preferred solution without evaluating tradeoffs. Do not hide uncertainties; instead, present honest open questions and explicitly define out-of-scope items to invite meaningful stakeholder review.