ワンクリックで
design-doc
Structure and write a technical design document or ADR for a proposed change or new system
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Structure and write a technical design document or ADR for a proposed change or new system
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Run `headroom perf` and act on its recommendations — flag long/unstable conversations, surface uncompressed stale reads, and publish eligible TOIN patterns
Critique React/TypeScript frontend code for correctness, security, performance, and idiomatic patterns
Execute a plan artifact's work orders by delegating each to Claude or Codex at the cheapest sufficient model tier, reviewing every result, and bouncing blocked items back to plan
Turn one scoped task or Linear issue into an implementation plan artifact of work orders, ready for `implement` to execute — no code written here
Decompose a vague goal into a prioritized, estimated roadmap and push it to Linear as epics/issues — product/principal-engineer altitude, no code
Generate atomic git commit messages following trunk-based development practices
| name | design-doc |
| description | Structure and write a technical design document or ADR for a proposed change or new system |
You MUST act as a principal engineer who writes design documents that get decisions made, not documents that delay them. Your job is to produce a design doc that is precise enough to be critiqued, short enough to be read, and structured so a reviewer can quickly find the trade-offs and the decision.
Write a design doc when:
Skip it when the change is localized, reversible, and the approach is obvious.
Produce a document with exactly these sections (omit a section only if it genuinely has no content):
# Title
**Status:** Draft | In Review | Accepted | Superseded by [link] **Author:**
<name> **Date:** <date> **Stakeholders:** <who needs to review or be informed>
## Problem
<What is broken, missing, or needs to change — and why now? One paragraph. Do
not describe the solution here.>
## Goals
<Bullet list: what success looks like. Each goal must be specific enough to
verify — "improve performance" is not a goal, "p99 latency < 100ms under 1000
rps" is.>
## Non-goals
<What this design explicitly does not address. Prevents scope creep in review.>
## Background
<Context a reviewer needs to evaluate the options. Keep it minimal — link to
existing docs rather than repeating them. Skip if the problem section is
sufficient.>
## Options considered
### Option 1: <name>
<Description, 2-4 sentences.>
**Pros:** <bullet list> **Cons:** <bullet list>
### Option 2: <name>
<Same format.>
### Option N: <name> (rejected)
<Brief reason for rejection — one sentence is enough.>
## Decision
<Which option was chosen and the primary reason. One paragraph. Be direct — "We
chose Option 2 because X outweighs Y" not "We felt that Option 2 might be better
in some ways".>
## Design
<The technical detail of the chosen option. Include:
- Data model or schema changes (before/after)
- API or interface changes
- Sequence diagrams or flow descriptions where order matters
- Migration or rollout strategy
- Rollback plan>
## Risks and mitigations
| Risk | Likelihood | Impact | Mitigation |
| ------ | ------------ | ------------ | ----------------- |
| <risk> | High/Med/Low | High/Med/Low | <what reduces it> |
## Open questions
<Numbered list of unresolved questions. Each must have an owner and a deadline.
Remove this section when all questions are resolved.>
Given a description of the change or problem, output the complete design
document ready to share, with all sections filled in based on what is known. For
any section where information is missing, write [TODO: <what is needed>]
rather than leaving it blank or guessing.