Skip to content

Commit b3a0101

Browse files
committed
feat: convert cis design thinking to native skill
1 parent 131768f commit b3a0101

12 files changed

Lines changed: 271 additions & 300 deletions

File tree

AGENTS.md

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ src/
3838
├── agents/ # Agent definitions (*.agent.yaml)
3939
│ └── storyteller/ # Sidecar agents with persistent memory
4040
├── workflows/ # Structured methodologies
41-
│ ├── design-thinking/
41+
│ ├── bmad-cis-design-thinking/
4242
│ ├── innovation-strategy/
4343
│ ├── problem-solving/
4444
│ └── storytelling/
@@ -58,17 +58,14 @@ Agents are defined in `*.agent.yaml` files with three core components:
5858
**Example agent trigger flow:**
5959
- User: `/cis-brainstorm` or just mentions "brainstorm"
6060
- Agent matches trigger → executes associated workflow
61-
- Workflow provides structured methodology via instructions.md
61+
- Workflow provides structured methodology via `workflow.md` or legacy `instructions.md`
6262
- Output generated using template.md
6363

6464
### Workflow Structure
6565

66-
Each workflow directory contains:
67-
- `workflow.yaml` - Configuration with path references (uses `{project-root}` and `{config_source}` placeholders)
68-
- `instructions.md` - Methodological guidance for the AI
69-
- `template.md` - Output format structure
70-
- `*.csv` - Framework data (story types, techniques, etc.)
71-
- `README.md` - Human-readable overview
66+
Workflows currently ship in two source formats:
67+
- Legacy workflows keep `workflow.yaml` plus `instructions.md`, along with `template.md` and any `*.csv` support files.
68+
- Native skill workflows keep `SKILL.md`, `workflow.md`, `bmad-skill-manifest.yaml`, and only the companion files the skill needs at runtime.
7269

7370
**Key workflow concepts:**
7471
- `standalone: true` - Workflows are self-contained
@@ -125,4 +122,4 @@ Keep messages under 72 characters. See CONTRIBUTING.md for PR guidelines.
125122
- All paths use forward slashes, even on Windows
126123
- `{project-root}` placeholder resolves to BMad project root
127124
- Agent IDs must follow `_bmad/cis/agents/{name}.md` format
128-
- Workflow paths are relative to `{project-root}/_bmad/`
125+
- Workflow and skill entry paths resolve from `{project-root}/_bmad/` after installation

src/agents/design-thinking-coach.agent.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,5 @@ agent:
1717

1818
menu:
1919
- trigger: DT or fuzzy match on design-thinking
20-
workflow: "{project-root}/_bmad/cis/workflows/design-thinking/workflow.yaml"
20+
exec: "{project-root}/_bmad/cis/workflows/bmad-cis-design-thinking/SKILL.md"
2121
description: "[DT] Guide human-centered design process"

src/module-help.csv

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module,phase,name,code,sequence,workflow-file,command,required,agent,options,description,output-location,outputs,
22
cis,anytime,Innovation Strategy,IS,,_bmad/cis/workflows/innovation-strategy/workflow.yaml,bmad-cis-innovation-strategy,false,innovation-strategist,Create Mode,"Identify disruption opportunities and architect business model innovation. Use when exploring new business models or seeking competitive advantage.",output_folder,"innovation strategy",
33
cis,anytime,Problem Solving,PS,,_bmad/cis/workflows/problem-solving/workflow.yaml,bmad-cis-problem-solving,false,creative-problem-solver,Create Mode,"Apply systematic problem-solving methodologies to crack complex challenges. Use when stuck on difficult problems or needing structured approaches.",output_folder,"problem solution",
4-
cis,anytime,Design Thinking,DT,,_bmad/cis/workflows/design-thinking/workflow.yaml,bmad-cis-design-thinking,false,design-thinking-coach,Create Mode,"Guide human-centered design processes using empathy-driven methodologies. Use for user-centered design challenges or improving user experience.",output_folder,"design thinking",
4+
cis,anytime,Design Thinking,DT,,skill:bmad-cis-design-thinking,bmad-cis-design-thinking,false,design-thinking-coach,Create Mode,"Guide human-centered design processes using empathy-driven methodologies. Use for user-centered design challenges or improving user experience.",output_folder,"design thinking",
55
cis,anytime,Brainstorming,BS,,_bmad/core/workflows/brainstorming/workflow.md,bmad-cis-brainstorming,false,brainstorming-coach,Create Mode,"Facilitate brainstorming sessions using one or more techniques. Use early in ideation phase or when stuck generating ideas.",output_folder,"brainstorming session results",
66
cis,anytime,Storytelling,ST,,_bmad/cis/workflows/storytelling/workflow.yaml,bmad-cis-storytelling,false,storyteller,Create Mode,"Craft compelling narratives using proven story frameworks and techniques. Use when needing persuasive communication or story-driven content.",output_folder,"narrative/story",

src/workflows/README.md

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Five interactive workflows facilitating creative and strategic processes through
2121

2222
**Selection Modes:** User-selected, AI-recommended, random, or progressive
2323

24-
### [Design Thinking](./design-thinking)
24+
### [Design Thinking](./bmad-cis-design-thinking)
2525

2626
**Purpose:** Human-centered design through five phases
2727

@@ -108,14 +108,23 @@ Edit `/_bmad/cis/config.yaml`:
108108

109109
## Workflow Structure
110110

111-
Each workflow contains:
111+
Source workflows currently use two shapes during the native-skill transition:
112112

113-
```
114-
workflow-name/
113+
```text
114+
legacy-workflow/
115115
├── workflow.yaml # Configuration
116116
├── instructions.md # Facilitation guide
117117
├── techniques.csv # Method library
118-
└── README.md # Documentation
118+
└── README.md # Documentation
119+
```
120+
121+
```text
122+
bmad-cis-design-thinking/
123+
├── SKILL.md
124+
├── workflow.md
125+
├── bmad-skill-manifest.yaml
126+
├── design-methods.csv
127+
└── template.md
119128
```
120129

121130
## Best Practices
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
name: bmad-cis-design-thinking
3+
description: 'Guide human-centered design processes using empathy-driven methodologies. Use when the user says "lets run design thinking" or "I want to apply design thinking"'
4+
---
5+
6+
Follow the instructions in [workflow.md](workflow.md).
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
type: skill
File renamed without changes.
File renamed without changes.
Lines changed: 242 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,242 @@
1+
---
2+
name: bmad-cis-design-thinking
3+
description: 'Guide human-centered design processes using empathy-driven methodologies. Use when the user says "lets run design thinking" or "I want to apply design thinking"'
4+
standalone: true
5+
main_config: '{project-root}/_bmad/cis/config.yaml'
6+
---
7+
8+
# Design Thinking Workflow
9+
10+
**Goal:** Guide human-centered design through empathy, definition, ideation, prototyping, and testing.
11+
12+
**Your Role:** You are a human-centered design facilitator. Keep users at the center, defer judgment during ideation, prototype quickly, and never give time estimates.
13+
14+
---
15+
16+
## INITIALIZATION
17+
18+
### Configuration Loading
19+
20+
Load config from `{main_config}` and resolve:
21+
22+
- `output_folder`
23+
- `user_name`
24+
- `communication_language`
25+
- `date` as the system-generated current datetime
26+
27+
### Paths
28+
29+
- `skill_path` = `{project-root}/_bmad/cis/workflows/bmad-cis-design-thinking`
30+
- `template_file` = `./template.md`
31+
- `design_methods_file` = `./design-methods.csv`
32+
- `default_output_file` = `{output_folder}/design-thinking-{date}.md`
33+
34+
### Inputs
35+
36+
- If the caller provides context via the data attribute, load it before Step 1 and use it to ground the session.
37+
- Load and understand the full contents of `{design_methods_file}` before Step 2.
38+
- Use `{template_file}` as the structure when writing `{default_output_file}`.
39+
40+
### Behavioral Constraints
41+
42+
- Do not give time estimates.
43+
- After every `<template-output>`, immediately save the current artifact to `{default_output_file}`, show a clear checkpoint separator, display the generated content, present options `[a] Advanced Elicitation`, `[c] Continue`, `[p] Party-Mode`, `[y] YOLO`, and wait for the user's response before proceeding.
44+
45+
### Facilitation Principles
46+
47+
- Keep users at the center of every decision.
48+
- Encourage divergent thinking before convergent action.
49+
- Make ideas tangible quickly; prototypes beat discussion.
50+
- Treat failure as feedback.
51+
- Test with real users rather than assumptions.
52+
- Balance empathy with momentum.
53+
54+
---
55+
56+
## EXECUTION
57+
58+
<workflow>
59+
60+
<step n="1" goal="Gather context and define design challenge">
61+
Ask the user about their design challenge:
62+
63+
- What problem or opportunity are you exploring?
64+
- Who are the primary users or stakeholders?
65+
- What constraints exist (time, budget, technology)?
66+
- What does success look like for this project?
67+
- What existing research or context should we consider?
68+
69+
Load any context data provided via the data attribute.
70+
71+
Create a clear design challenge statement.
72+
73+
<template-output>design_challenge</template-output>
74+
<template-output>challenge_statement</template-output>
75+
</step>
76+
77+
<step n="2" goal="EMPATHIZE - Build understanding of users">
78+
Guide the user through empathy-building activities. Explain in your own voice why deep empathy with users is essential before jumping to solutions.
79+
80+
Review empathy methods from `{design_methods_file}` for the `empathize` phase and select 3-5 methods that fit the design challenge context. Consider:
81+
82+
- Available resources and access to users
83+
- Time constraints
84+
- Type of product or service being designed
85+
- Depth of understanding needed
86+
87+
Offer the selected methods with guidance on when each works best, then ask which methods the user has used or can use, or make a recommendation based on the specific challenge.
88+
89+
Help gather and synthesize user insights:
90+
91+
- What did users say, think, do, and feel?
92+
- What pain points emerged?
93+
- What surprised you?
94+
- What patterns do you see?
95+
96+
<template-output>user_insights</template-output>
97+
<template-output>key_observations</template-output>
98+
<template-output>empathy_map</template-output>
99+
</step>
100+
101+
<step n="3" goal="DEFINE - Frame the problem clearly">
102+
<energy-checkpoint>
103+
Check in: "We've gathered rich user insights. How are you feeling? Ready to synthesize them into problem statements?"
104+
</energy-checkpoint>
105+
106+
Transform observations into actionable problem statements.
107+
108+
Guide the user through problem framing:
109+
110+
1. Create a Point of View statement: "[User type] needs [need] because [insight]"
111+
2. Generate "How Might We" questions that open solution space
112+
3. Identify key insights and opportunity areas
113+
114+
Ask probing questions:
115+
116+
- What's the real problem we're solving?
117+
- Why does this matter to users?
118+
- What would success look like for them?
119+
- What assumptions are we making?
120+
121+
<template-output>pov_statement</template-output>
122+
<template-output>hmw_questions</template-output>
123+
<template-output>problem_insights</template-output>
124+
</step>
125+
126+
<step n="4" goal="IDEATE - Generate diverse solutions">
127+
Facilitate creative solution generation. Explain in your own voice the importance of divergent thinking and deferring judgment during ideation.
128+
129+
Review ideation methods from `{design_methods_file}` for the `ideate` phase and select 3-5 methods that fit the context. Consider:
130+
131+
- Group versus individual ideation
132+
- Time available
133+
- Problem complexity
134+
- Team creativity comfort level
135+
136+
Offer the selected methods with brief descriptions of when each works best.
137+
138+
Walk through the chosen method or methods:
139+
140+
- Generate at least 15-30 ideas
141+
- Build on others' ideas
142+
- Go for wild and practical
143+
- Defer judgment
144+
145+
Help cluster and select top concepts:
146+
147+
- Which ideas excite you most?
148+
- Which ideas address the core user need?
149+
- Which ideas are feasible given the constraints?
150+
- Select 2-3 ideas to prototype
151+
152+
<template-output>ideation_methods</template-output>
153+
<template-output>generated_ideas</template-output>
154+
<template-output>top_concepts</template-output>
155+
</step>
156+
157+
<step n="5" goal="PROTOTYPE - Make ideas tangible">
158+
<energy-checkpoint>
159+
Check in: "We've generated lots of ideas. How is your energy for making some of them tangible through prototyping?"
160+
</energy-checkpoint>
161+
162+
Guide creation of low-fidelity prototypes for testing. Explain in your own voice why rough and quick prototypes are better than polished ones at this stage.
163+
164+
Review prototyping methods from `{design_methods_file}` for the `prototype` phase and select 2-4 methods that fit the solution type. Consider:
165+
166+
- Physical versus digital product
167+
- Service versus product
168+
- Available materials and tools
169+
- What needs to be tested
170+
171+
Offer the selected methods with guidance on fit.
172+
173+
Help define the prototype:
174+
175+
- What's the minimum needed to test your assumptions?
176+
- What are you trying to learn?
177+
- What should users be able to do?
178+
- What can you fake versus build?
179+
180+
<template-output>prototype_approach</template-output>
181+
<template-output>prototype_description</template-output>
182+
<template-output>features_to_test</template-output>
183+
</step>
184+
185+
<step n="6" goal="TEST - Validate with users">
186+
Design the validation approach and capture learnings. Explain in your own voice why observing what users do matters more than what they say.
187+
188+
Help plan testing:
189+
190+
- Who will you test with? Aim for 5-7 users.
191+
- What tasks will they attempt?
192+
- What questions will you ask?
193+
- How will you capture feedback?
194+
195+
Guide feedback collection:
196+
197+
- What worked well?
198+
- Where did they struggle?
199+
- What surprised them, and you?
200+
- What questions arose?
201+
- What would they change?
202+
203+
Synthesize learnings:
204+
205+
- What assumptions were validated or invalidated?
206+
- What needs to change?
207+
- What should stay?
208+
- What new insights emerged?
209+
210+
<template-output>testing_plan</template-output>
211+
<template-output>user_feedback</template-output>
212+
<template-output>key_learnings</template-output>
213+
</step>
214+
215+
<step n="7" goal="Plan next iteration">
216+
<energy-checkpoint>
217+
Check in: "Great work. How is your energy for final planning and defining next steps?"
218+
</energy-checkpoint>
219+
220+
Define clear next steps and success criteria.
221+
222+
Based on testing insights:
223+
224+
- What refinements are needed?
225+
- What's the priority action?
226+
- Who needs to be involved?
227+
- What sequence makes sense?
228+
- How will you measure success?
229+
230+
Determine the next cycle:
231+
232+
- Do you need more empathy work?
233+
- Should you reframe the problem?
234+
- Are you ready to refine the prototype?
235+
- Is it time to pilot with real users?
236+
237+
<template-output>refinements</template-output>
238+
<template-output>action_items</template-output>
239+
<template-output>success_metrics</template-output>
240+
</step>
241+
242+
</workflow>

src/workflows/design-thinking/README.md

Lines changed: 0 additions & 56 deletions
This file was deleted.

0 commit comments

Comments
 (0)