From dw
Use when deep-work Phase 2 research is complete. Combines research findings with the original task to explore design options, evaluate tradeoffs, and make decisions interactively.
How this skill is triggered — by the user, by Claude, or both
Slash command
/dw:dw-03-design-discussionThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Combine objective research findings with the original prompt to identify design
Combine objective research findings with the original prompt to identify design decisions, enumerate options, and evaluate tradeoffs. Research is locked in — the prompt safely re-enters the pipeline here.
Announce at start: "Starting deep-work Phase 3: Design Discussion."
"$SKILL_BASE_DIR/setup.sh" "$ARGUMENTS" and parse stdout for REPO, TOPIC_SLUG, ARTIFACT_DIR. $SKILL_BASE_DIR is the "Base directory for this skill" path shown at the top of this prompt.
MISSING_SLUG on stderr), ask user via AskUserQuestion for the topic slug, then re-run with the slug.$ARGUMENTS contains --auto, enable auto mode (accept all recommendations without interactive prompts).02-research.md exists → if not: "Research not found. Complete Phases 1-2 first." Stop.00-ticket.md exists → if not: "No ticket found. Run /dw-research-questions first." Stop.02-research.md completely00-ticket.md completelyBefore identifying decisions, distill research into structured sections:
Summary of Changes Requested
Current State
Desired End State
What We're Not Doing
Patterns to Follow
Based on the gap between "current state" and "desired end state," identify every design question that needs resolution. Common types include placement (where new code lives), pattern selection (which existing pattern to mirror), integration (how to connect with existing code), API/interface shape, edge-case handling, and testability.
For EACH question, create 2-4 options. Every option MUST:
Include your recommendation with rationale for each question.
FORBIDDEN: Options that ignore research findings or require uninvestigated changes.
Compile: constraints from research, INCOMPLETE research gaps, out-of-scope items.
Review the design questions from Step 3-4 and the risks from Step 5. Identify any questions where:
If no gaps: Skip to Step 6.
If gaps exist:
## Exploration-Driven Design Questions section (numbered EDQ-1, EDQ-2, etc.).
These follow the same format as DQ questions — options, pros/cons, recommendation.
Each EDQ MUST cite what was found in the exploration and why it wasn't covered by
research.FORBIDDEN: Re-running research. This is surgical gap-filling, not Phase 2 redux.
Write 03-design-discussion.md to the artifact directory with ALL sections
populated and design questions marked as OPEN:
---
phase: design-discussion
date: <today>
topic: <topic-slug>
repo: <repo>
git_sha: <HEAD>
input_artifacts: [00-ticket.md, 02-research.md]
decisions_count: <N>
exploration_decisions_count: <N or 0>
open_questions: <N total across DQ + EDQ>
status: draft
---
## Summary of Changes Requested
<distilled from ticket — concise statement of what and why>
## Current State
<relevant system state from research, with file:line refs>
<only what the changes will touch, integrate with, or depend on>
## Desired End State
<concrete description of the system after changes>
<name files, APIs, behaviors>
## What We're Not Doing
<explicit scope boundaries and deferred work>
## Patterns to Follow
- **<pattern name>** — `file:line` — <brief description of when/how to use>
- ...
## Design Questions
### DQ-1: <title>
**Context:** <relevant research findings>
| Option | Description | Pros | Cons |
|--------|-------------|------|------|
| A | ... | <citing research> | ... |
| B | ... | <citing research> | ... |
**Recommendation:** <option and rationale>
**Decision:** OPEN
### DQ-2: <title>
...
## Exploration-Driven Design Questions
<only present if Step 5b found gaps — omit section entirely if not needed>
### EDQ-1: <title>
**Gap:** <what was missing from research and why it matters>
**Found:** <what targeted exploration revealed, with file:line refs>
| Option | Description | Pros | Cons |
|--------|-------------|------|------|
| A | ... | <citing exploration findings> | ... |
| B | ... | <citing exploration findings> | ... |
**Recommendation:** <option and rationale>
**Decision:** OPEN
## Constraints Discovered
<from research findings>
## Risks from Incomplete Research
<INCOMPLETE questions and their implications>
<exclude any gaps that were resolved by Step 5b exploration>
If auto mode: Skip the interactive prompt. Resolve all OPEN questions using the stated recommendations (equivalent to "Accept recommendations"). Log: "Auto mode: accepting all recommendations."
Otherwise: Present a summary of the design document to the user, then ask via AskUserQuestion:
"Design document written to
03-design-discussion.mdwith N open questions (M from research, K from targeted exploration). How would you like to resolve them?
- Batch — Answer all questions in one response, referenced by ID (e.g. 'DQ-1: A, DQ-3: B')
- Accept recommendations — Use my recommendations for all open questions"
In Batch mode, parse the user's response and resolve each question accordingly. In Accept recommendations mode, resolve all OPEN questions using the stated recommendations.
For each resolved question, update the artifact:
**Decision:** <chosen option>**Rationale:** <from user's response or recommendation>**Implementation implication:** <one-liner about what this means for implementation>After all questions are resolved:
OPEN decisions to show the chosen optionopen_questions: 0, status: complete03-design-discussion.md.state.json with current_phase: 3, completed_phases: [1, 2, 3]/dw-04-outline <topic-slug> in a fresh conversation to continue."npx claudepluginhub ronsanzone/context-engineering-workflows --plugin dwGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.