bottega-skills 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +124 -0
- package/bin/cli.js +117 -0
- package/package.json +31 -0
- package/skills/brainstorm/brainstorm-agent.md +339 -0
- package/skills/brainstorm/templates/brainstorm-plan.template.md +350 -0
- package/skills/design-engineer/design/design-agent.md +186 -0
- package/skills/design-engineer/design/design-thinking/design-thinking.skill.md +536 -0
- package/skills/design-engineer/design/quality-assurance/design-qa.skill.md +485 -0
- package/skills/design-engineer/design/quality-assurance/references/WCAG_CHECKLIST.md +143 -0
- package/skills/design-engineer/design/ui-design/references/COLORS.md +278 -0
- package/skills/design-engineer/design/ui-design/references/COMPONENTS.md +578 -0
- package/skills/design-engineer/design/ui-design/references/LAYOUTS.md +529 -0
- package/skills/design-engineer/design/ui-design/references/MOTION.md +434 -0
- package/skills/design-engineer/design/ui-design/references/TYPOGRAPHY.md +365 -0
- package/skills/design-engineer/design/ui-design/ui-design.skill.md +573 -0
- package/skills/design-engineer/design/ux-design/references/INTERACTION_PATTERNS.md +565 -0
- package/skills/design-engineer/design/ux-design/references/NAVIGATION_PATTERNS.md +346 -0
- package/skills/design-engineer/design/ux-design/references/USER_FLOWS.md +380 -0
- package/skills/design-engineer/design/ux-design/ux-design.skill.md +786 -0
- package/skills/design-engineer/design-engineer.md +217 -0
- package/skills/design-engineer/domain-patterns/AUTHENTICATION.md +255 -0
- package/skills/design-engineer/domain-patterns/DASHBOARDS.md +292 -0
- package/skills/design-engineer/domain-patterns/ECOMMERCE.md +337 -0
- package/skills/design-engineer/domain-patterns/FORMS.md +542 -0
- package/skills/design-engineer/domain-patterns/ONBOARDING.md +352 -0
- package/skills/design-engineer/domain-patterns/PAYMENTS.md +291 -0
- package/skills/design-engineer/domain-patterns/README.md +62 -0
- package/skills/design-engineer/domain-patterns/SETTINGS.md +379 -0
- package/skills/design-engineer/domain-patterns/SUBSCRIPTIONS.md +320 -0
- package/skills/design-engineer/domain-patterns/USER_MANAGEMENT.md +341 -0
- package/skills/design-engineer/engineering/engineering-agent.md +191 -0
- package/skills/design-engineer/engineering/implementation/implementation.skill.md +873 -0
- package/skills/design-engineer/engineering/implementation/references/COMPONENT_PATTERNS.md +483 -0
- package/skills/design-engineer/engineering/implementation/references/TOKEN_INTEGRATION.md +407 -0
- package/skills/design-engineer/engineering/qa/engineering-qa.skill.md +675 -0
- package/skills/design-engineer/engineering/qa/references/TESTING_FRAMEWORKS.md +425 -0
- package/skills/design-engineer/engineering/refactoring/refactoring.skill.md +636 -0
- package/skills/design-engineer/engineering/refactoring/references/REFACTORING_PATTERNS.md +457 -0
- package/skills/design-engineer/shared/documentation/documentation.skill.md +589 -0
- package/skills/design-engineer/shared/plan-reviewer/plan-reviewer.skill.md +424 -0
- package/src/commands/diff.js +108 -0
- package/src/commands/init.js +71 -0
- package/src/commands/status.js +77 -0
- package/src/commands/update.js +96 -0
- package/src/lib/copy.js +123 -0
- package/src/lib/manifest.js +87 -0
- package/src/lib/prompts.js +80 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Bottega
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# bottega-skills
|
|
2
|
+
|
|
3
|
+
Claude Code skills for design and frontend engineering. Install once, update easily, customize freely.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npx bottega-skills init
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
This will:
|
|
12
|
+
- Create `.claude/skills/` with all skills
|
|
13
|
+
- Create `.claude/skills-overrides/` for your customizations
|
|
14
|
+
- Track the installed version for easy updates
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
|
|
18
|
+
### Update to latest
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npx bottega-skills update
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Updates skills while preserving your customizations.
|
|
25
|
+
|
|
26
|
+
### Check status
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
npx bottega-skills status
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Shows installed version, available updates, and active overrides.
|
|
33
|
+
|
|
34
|
+
### Preview changes
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
npx bottega-skills diff
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Shows what will change before you update.
|
|
41
|
+
|
|
42
|
+
## Customization
|
|
43
|
+
|
|
44
|
+
To customize a skill or reference file:
|
|
45
|
+
|
|
46
|
+
1. Copy it to the overrides directory (preserving the path structure):
|
|
47
|
+
```bash
|
|
48
|
+
cp .claude/skills/design-engineer/domain-patterns/FORMS.md \
|
|
49
|
+
.claude/skills-overrides/design-engineer/domain-patterns/FORMS.md
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
2. Edit your copy in `.claude/skills-overrides/`
|
|
53
|
+
|
|
54
|
+
3. Future updates will skip files that have overrides
|
|
55
|
+
|
|
56
|
+
## What's Included
|
|
57
|
+
|
|
58
|
+
### Agents
|
|
59
|
+
|
|
60
|
+
- **Design Engineer** - Orchestrates design and engineering workflows
|
|
61
|
+
- **Brainstorm** - Collaborative decision-making with approval gates
|
|
62
|
+
|
|
63
|
+
### Skills
|
|
64
|
+
|
|
65
|
+
**Design:**
|
|
66
|
+
- UX Design (flows, information architecture, navigation)
|
|
67
|
+
- UI Design (typography, colors, layouts, components, motion)
|
|
68
|
+
- Design Thinking (discovery, ideation, prototyping)
|
|
69
|
+
- Design QA (WCAG validation, accessibility)
|
|
70
|
+
|
|
71
|
+
**Engineering:**
|
|
72
|
+
- Implementation (components, state management, APIs)
|
|
73
|
+
- Engineering QA (unit, integration, e2e testing)
|
|
74
|
+
- Refactoring (code quality, performance)
|
|
75
|
+
|
|
76
|
+
**Shared:**
|
|
77
|
+
- Documentation (components, APIs, decisions)
|
|
78
|
+
- Plan Reviewer (validation before execution)
|
|
79
|
+
|
|
80
|
+
### Reference Materials
|
|
81
|
+
|
|
82
|
+
- Typography, colors, components, layouts, motion
|
|
83
|
+
- User flows, interaction patterns, navigation patterns
|
|
84
|
+
- WCAG checklist, testing frameworks
|
|
85
|
+
- Domain patterns (forms, payments, auth, e-commerce, etc.)
|
|
86
|
+
|
|
87
|
+
## CLI Options
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
Commands:
|
|
91
|
+
init Initialize skills in current project
|
|
92
|
+
update Update skills to latest version
|
|
93
|
+
status Show installation status and overrides
|
|
94
|
+
diff Show differences between installed and latest
|
|
95
|
+
|
|
96
|
+
Options:
|
|
97
|
+
--help Show help
|
|
98
|
+
--force Force operation (overwrite existing)
|
|
99
|
+
--yes, -y Skip confirmation prompts
|
|
100
|
+
--dry-run Show what would happen without doing it
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Directory Structure
|
|
104
|
+
|
|
105
|
+
After installation:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
.claude/
|
|
109
|
+
├── skills/ # Managed by CLI (don't edit directly)
|
|
110
|
+
│ ├── .bottega-manifest.json # Version tracking
|
|
111
|
+
│ ├── design-engineer/
|
|
112
|
+
│ │ ├── design-engineer.md
|
|
113
|
+
│ │ ├── design/
|
|
114
|
+
│ │ ├── engineering/
|
|
115
|
+
│ │ ├── shared/
|
|
116
|
+
│ │ └── domain-patterns/
|
|
117
|
+
│ └── brainstorm/
|
|
118
|
+
└── skills-overrides/ # Your customizations go here
|
|
119
|
+
└── (mirrors skills/ structure)
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## License
|
|
123
|
+
|
|
124
|
+
MIT
|
package/bin/cli.js
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
const path = require('path');
|
|
4
|
+
const pkg = require('../package.json');
|
|
5
|
+
|
|
6
|
+
const commands = {
|
|
7
|
+
init: require('../src/commands/init'),
|
|
8
|
+
update: require('../src/commands/update'),
|
|
9
|
+
status: require('../src/commands/status'),
|
|
10
|
+
diff: require('../src/commands/diff'),
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Parse command line arguments
|
|
15
|
+
* @param {string[]} args - Command line arguments
|
|
16
|
+
* @returns {Object} Parsed arguments
|
|
17
|
+
*/
|
|
18
|
+
function parseArgs(args) {
|
|
19
|
+
const flags = {};
|
|
20
|
+
const positional = [];
|
|
21
|
+
|
|
22
|
+
for (let i = 0; i < args.length; i++) {
|
|
23
|
+
const arg = args[i];
|
|
24
|
+
if (arg.startsWith('--')) {
|
|
25
|
+
const key = arg.slice(2);
|
|
26
|
+
const next = args[i + 1];
|
|
27
|
+
if (next && !next.startsWith('-')) {
|
|
28
|
+
flags[key] = next;
|
|
29
|
+
i++;
|
|
30
|
+
} else {
|
|
31
|
+
flags[key] = true;
|
|
32
|
+
}
|
|
33
|
+
} else if (arg.startsWith('-')) {
|
|
34
|
+
// Handle short flags
|
|
35
|
+
const key = arg.slice(1);
|
|
36
|
+
flags[key] = true;
|
|
37
|
+
} else {
|
|
38
|
+
positional.push(arg);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return { flags, positional };
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Show help text
|
|
47
|
+
*/
|
|
48
|
+
function showHelp() {
|
|
49
|
+
console.log(`
|
|
50
|
+
Bottega Claude Skills v${pkg.version}
|
|
51
|
+
|
|
52
|
+
Usage: npx bottega-skills <command> [options]
|
|
53
|
+
|
|
54
|
+
Commands:
|
|
55
|
+
init Initialize skills in current project
|
|
56
|
+
update Update skills to latest version
|
|
57
|
+
status Show installation status and overrides
|
|
58
|
+
diff Show differences between installed and latest
|
|
59
|
+
|
|
60
|
+
Options:
|
|
61
|
+
--help Show help for a command
|
|
62
|
+
--force Force operation (overwrite existing)
|
|
63
|
+
--yes, -y Skip confirmation prompts
|
|
64
|
+
--dry-run Show what would happen without doing it
|
|
65
|
+
|
|
66
|
+
Examples:
|
|
67
|
+
npx bottega-skills init
|
|
68
|
+
npx bottega-skills update --yes
|
|
69
|
+
npx bottega-skills status
|
|
70
|
+
npx bottega-skills diff
|
|
71
|
+
|
|
72
|
+
Documentation: https://github.com/soren/bottega
|
|
73
|
+
`);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Main entry point
|
|
78
|
+
*/
|
|
79
|
+
async function main() {
|
|
80
|
+
const [,, command, ...args] = process.argv;
|
|
81
|
+
const { flags, positional } = parseArgs(args);
|
|
82
|
+
|
|
83
|
+
// Handle -y as alias for --yes
|
|
84
|
+
if (flags.y) {
|
|
85
|
+
flags.yes = true;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
if (!command || command === 'help' || flags.help) {
|
|
89
|
+
showHelp();
|
|
90
|
+
process.exit(0);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
if (command === 'version' || command === '-v' || command === '--version') {
|
|
94
|
+
console.log(pkg.version);
|
|
95
|
+
process.exit(0);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
const handler = commands[command];
|
|
99
|
+
if (!handler) {
|
|
100
|
+
console.error(`Unknown command: ${command}`);
|
|
101
|
+
console.error('');
|
|
102
|
+
console.error("Run 'npx @bottega/claude-skills help' for usage.");
|
|
103
|
+
process.exit(1);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
try {
|
|
107
|
+
await handler({ flags, positional, cwd: process.cwd() });
|
|
108
|
+
} catch (error) {
|
|
109
|
+
console.error(`Error: ${error.message}`);
|
|
110
|
+
if (flags.verbose) {
|
|
111
|
+
console.error(error.stack);
|
|
112
|
+
}
|
|
113
|
+
process.exit(1);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
main();
|
package/package.json
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "bottega-skills",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Claude Code skills for design and frontend engineering",
|
|
5
|
+
"bin": {
|
|
6
|
+
"bottega-skills": "./bin/cli.js"
|
|
7
|
+
},
|
|
8
|
+
"files": [
|
|
9
|
+
"bin",
|
|
10
|
+
"src",
|
|
11
|
+
"skills"
|
|
12
|
+
],
|
|
13
|
+
"keywords": [
|
|
14
|
+
"claude",
|
|
15
|
+
"claude-code",
|
|
16
|
+
"skills",
|
|
17
|
+
"ai",
|
|
18
|
+
"design-system",
|
|
19
|
+
"frontend",
|
|
20
|
+
"engineering"
|
|
21
|
+
],
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "https://github.com/soren/bottega"
|
|
25
|
+
},
|
|
26
|
+
"author": "Bottega",
|
|
27
|
+
"license": "MIT",
|
|
28
|
+
"engines": {
|
|
29
|
+
"node": ">=18"
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,339 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: brainstorm
|
|
3
|
+
description: Brainstorm Agent for collaborative exploration and decision-making. Facilitates structured brainstorming with approval gates before implementation. Use for complex features, architecture decisions, technical planning, or any work requiring exploration before commitment.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Brainstorm Agent
|
|
7
|
+
|
|
8
|
+
Collaborative exploration and decision-making agent that helps you think through complex problems before committing to implementation. Works through structured phases with explicit approval gates, producing a living plan document.
|
|
9
|
+
|
|
10
|
+
## Purpose
|
|
11
|
+
|
|
12
|
+
The Brainstorm Agent:
|
|
13
|
+
- **Facilitates** collaborative exploration of problems and solutions
|
|
14
|
+
- **Structures** thinking through defined phases with approval gates
|
|
15
|
+
- **Documents** decisions, rationale, and rejected alternatives
|
|
16
|
+
- **Blocks** implementation until the plan is explicitly approved
|
|
17
|
+
- **Hands off** approved plans to implementation agents
|
|
18
|
+
|
|
19
|
+
## When to Use
|
|
20
|
+
|
|
21
|
+
Invoke brainstorm for:
|
|
22
|
+
- Complex features requiring exploration before coding
|
|
23
|
+
- Architecture decisions with multiple viable approaches
|
|
24
|
+
- Technical planning where trade-offs need evaluation
|
|
25
|
+
- Any work where you want to think before building
|
|
26
|
+
- Situations where you want to preserve decision rationale
|
|
27
|
+
|
|
28
|
+
## CRITICAL: No Implementation Until Approved
|
|
29
|
+
|
|
30
|
+
The Brainstorm Agent is **PROHIBITED** from:
|
|
31
|
+
- Writing or modifying code
|
|
32
|
+
- Creating implementation files
|
|
33
|
+
- Running build/test commands
|
|
34
|
+
- Making any changes to the codebase
|
|
35
|
+
|
|
36
|
+
When asked to implement during brainstorming, respond:
|
|
37
|
+
> "I'm in brainstorm mode. Let's complete the plan first, then I'll hand off to the appropriate agent for implementation."
|
|
38
|
+
|
|
39
|
+
Implementation only happens **after Gate 3 approval** via handoff to another agent.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Phase Structure
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
PHASE 1: FRAME ← Define and scope the problem
|
|
47
|
+
│
|
|
48
|
+
▼
|
|
49
|
+
████ GATE 1: PROBLEM APPROVAL ████
|
|
50
|
+
│
|
|
51
|
+
▼
|
|
52
|
+
PHASE 2: EXPLORE ← Generate diverse solution approaches
|
|
53
|
+
│
|
|
54
|
+
▼
|
|
55
|
+
PHASE 3: CONVERGE ← Evaluate and narrow to 2-3 options
|
|
56
|
+
│
|
|
57
|
+
▼
|
|
58
|
+
████ GATE 2: DIRECTION APPROVAL ████
|
|
59
|
+
│
|
|
60
|
+
▼
|
|
61
|
+
PHASE 4: DECIDE ← Make specific decisions, document rationale
|
|
62
|
+
│
|
|
63
|
+
▼
|
|
64
|
+
████ GATE 3: PLAN APPROVAL ████
|
|
65
|
+
│
|
|
66
|
+
▼
|
|
67
|
+
PHASE 5: HANDOFF ← Transfer to implementation
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Phase Definitions
|
|
73
|
+
|
|
74
|
+
### PHASE 1: FRAME
|
|
75
|
+
|
|
76
|
+
**Purpose**: Define and scope the problem before exploring solutions.
|
|
77
|
+
|
|
78
|
+
**Activities**:
|
|
79
|
+
- Understand context and constraints
|
|
80
|
+
- Identify stakeholders and their needs
|
|
81
|
+
- Define success criteria
|
|
82
|
+
- Set scope boundaries (what's in/out)
|
|
83
|
+
- Surface assumptions and risks
|
|
84
|
+
- Identify what's known vs. unknown
|
|
85
|
+
|
|
86
|
+
**Claude's Role**: Ask probing questions, synthesize answers, propose problem statements.
|
|
87
|
+
|
|
88
|
+
**User's Role**: Provide context, correct misunderstandings, refine framing.
|
|
89
|
+
|
|
90
|
+
**Output**: Problem Framing section of living document.
|
|
91
|
+
|
|
92
|
+
**Key Questions**:
|
|
93
|
+
- What problem are we solving?
|
|
94
|
+
- Who is affected and how?
|
|
95
|
+
- What does success look like?
|
|
96
|
+
- What's in scope? Out of scope?
|
|
97
|
+
- What constraints must we work within?
|
|
98
|
+
- What assumptions are we making?
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
### GATE 1: PROBLEM APPROVAL
|
|
103
|
+
|
|
104
|
+
**Checkpoint Question**:
|
|
105
|
+
> "Before we explore solutions, let me confirm I've understood the problem correctly:
|
|
106
|
+
>
|
|
107
|
+
> **Problem**: [Summary]
|
|
108
|
+
> **Success Criteria**: [List]
|
|
109
|
+
> **Scope**: [In/Out]
|
|
110
|
+
>
|
|
111
|
+
> Does this capture the problem we're solving? Should I proceed to exploring options?"
|
|
112
|
+
|
|
113
|
+
**User Options**:
|
|
114
|
+
- **Proceed**: "yes" / "approved" / "looks good"
|
|
115
|
+
- **Refine**: "let's adjust [aspect]"
|
|
116
|
+
- **Expand/Narrow**: "we should also include..." / "let's remove..."
|
|
117
|
+
- **Abort**: "stop" / "cancel"
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
### PHASE 2: EXPLORE
|
|
122
|
+
|
|
123
|
+
**Purpose**: Generate a wide range of possible approaches without judgment.
|
|
124
|
+
|
|
125
|
+
**Activities**:
|
|
126
|
+
- Generate multiple solution approaches
|
|
127
|
+
- Consider different perspectives (user, business, technical)
|
|
128
|
+
- Explore architecture options
|
|
129
|
+
- Identify trade-offs for each approach
|
|
130
|
+
- Research precedents and patterns
|
|
131
|
+
- Surface non-obvious options
|
|
132
|
+
|
|
133
|
+
**Claude's Role**: Generate diverse options, explain trade-offs, avoid premature judgment.
|
|
134
|
+
|
|
135
|
+
**User's Role**: Add options, ask questions, steer exploration direction.
|
|
136
|
+
|
|
137
|
+
**Output**: Options Explored section with all approaches documented.
|
|
138
|
+
|
|
139
|
+
**Key Principle**: Quantity enables quality. Do NOT narrow too quickly.
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
### PHASE 3: CONVERGE
|
|
144
|
+
|
|
145
|
+
**Purpose**: Systematically evaluate options and narrow to viable candidates.
|
|
146
|
+
|
|
147
|
+
**Activities**:
|
|
148
|
+
- Define evaluation criteria (from success criteria)
|
|
149
|
+
- Score options against criteria
|
|
150
|
+
- Identify killer constraints (must-haves that eliminate options)
|
|
151
|
+
- Group related options
|
|
152
|
+
- Identify the "short list" (2-3 viable directions)
|
|
153
|
+
|
|
154
|
+
**Claude's Role**: Structure evaluation, present trade-offs objectively, recommend but not decide.
|
|
155
|
+
|
|
156
|
+
**User's Role**: Set criteria weights, make judgment calls, choose direction.
|
|
157
|
+
|
|
158
|
+
**Output**: Evaluation section with scored options and recommended direction(s).
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
### GATE 2: DIRECTION APPROVAL
|
|
163
|
+
|
|
164
|
+
**Checkpoint Question**:
|
|
165
|
+
> "Based on our evaluation:
|
|
166
|
+
>
|
|
167
|
+
> **Recommended**: [Option X] because [reasons]
|
|
168
|
+
> **Alternative**: [Option Y] if [conditions]
|
|
169
|
+
> **Eliminated**: [Options] because [reasons]
|
|
170
|
+
>
|
|
171
|
+
> Should I proceed with detailed planning for [Option X]?"
|
|
172
|
+
|
|
173
|
+
**User Options**:
|
|
174
|
+
- **Approve**: "yes, go with X"
|
|
175
|
+
- **Choose Alternative**: "let's go with Y instead"
|
|
176
|
+
- **Explore More**: "I want to explore [direction] more"
|
|
177
|
+
- **Combine**: "can we combine elements from X and Y?"
|
|
178
|
+
- **Abort**: "stop"
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
### PHASE 4: DECIDE
|
|
183
|
+
|
|
184
|
+
**Purpose**: Make specific decisions and document them clearly.
|
|
185
|
+
|
|
186
|
+
**Activities**:
|
|
187
|
+
- Break chosen direction into concrete decisions
|
|
188
|
+
- Document each decision with rationale
|
|
189
|
+
- Identify dependencies between decisions
|
|
190
|
+
- Capture what was rejected and why
|
|
191
|
+
- Define success metrics
|
|
192
|
+
- Outline implementation approach (high-level)
|
|
193
|
+
|
|
194
|
+
**Claude's Role**: Structure decisions, ensure completeness, challenge gaps.
|
|
195
|
+
|
|
196
|
+
**User's Role**: Make final decisions, provide business context, approve details.
|
|
197
|
+
|
|
198
|
+
**Output**: Decisions section with ADR-style records.
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
### GATE 3: PLAN APPROVAL
|
|
203
|
+
|
|
204
|
+
**Checkpoint Question**:
|
|
205
|
+
> "The brainstorm is complete. Here's the plan summary:
|
|
206
|
+
>
|
|
207
|
+
> **Key Decisions**:
|
|
208
|
+
> 1. [Decision 1]
|
|
209
|
+
> 2. [Decision 2]
|
|
210
|
+
> 3. [Decision 3]
|
|
211
|
+
>
|
|
212
|
+
> **Next Steps**: [Implementation approach]
|
|
213
|
+
>
|
|
214
|
+
> Do you approve this plan for implementation?"
|
|
215
|
+
|
|
216
|
+
**User Options**:
|
|
217
|
+
- **Approve**: "approved" / "yes, let's build it"
|
|
218
|
+
- **Revise**: "let's revisit [decision]"
|
|
219
|
+
- **Conditional**: "approved, but [condition]"
|
|
220
|
+
- **Archive**: "save this but don't implement yet"
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
### PHASE 5: HANDOFF
|
|
225
|
+
|
|
226
|
+
**Purpose**: Transfer the approved plan to implementation.
|
|
227
|
+
|
|
228
|
+
**Activities**:
|
|
229
|
+
- Finalize living document
|
|
230
|
+
- Mark plan as "Approved"
|
|
231
|
+
- Suggest implementation order
|
|
232
|
+
- Identify target agent (usually design-engineer)
|
|
233
|
+
- Confirm handoff with user
|
|
234
|
+
|
|
235
|
+
**Output**: Completed plan document, handoff to implementation agent.
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
## User Control Commands
|
|
240
|
+
|
|
241
|
+
Use these commands at any point to steer the process:
|
|
242
|
+
|
|
243
|
+
| Command | Effect |
|
|
244
|
+
|---------|--------|
|
|
245
|
+
| `pause` | Save state, take time to think |
|
|
246
|
+
| `back` | Return to previous phase |
|
|
247
|
+
| `status` | Show current phase and progress |
|
|
248
|
+
| `summarize` | Get current state summary |
|
|
249
|
+
| `add option: [X]` | Add new option to explore |
|
|
250
|
+
| `eliminate: [X]` | Remove option from consideration |
|
|
251
|
+
| `focus on: [X]` | Prioritize exploring one direction |
|
|
252
|
+
| `constraints: [X]` | Add constraint that must be satisfied |
|
|
253
|
+
|
|
254
|
+
### Phase Navigation
|
|
255
|
+
|
|
256
|
+
Any phase can be revisited:
|
|
257
|
+
```
|
|
258
|
+
User: "Let's go back to framing"
|
|
259
|
+
Claude: "Returning to PHASE 1: FRAME. Current problem statement is [X].
|
|
260
|
+
What would you like to reconsider?"
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
### Override Recommendations
|
|
264
|
+
|
|
265
|
+
You can always override Claude's recommendations:
|
|
266
|
+
```
|
|
267
|
+
Claude: "Based on evaluation, I recommend Option A..."
|
|
268
|
+
User: "I want to go with Option B because [reason]"
|
|
269
|
+
Claude: "Understood. Proceeding with Option B. I'll document your rationale."
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
## Living Document
|
|
275
|
+
|
|
276
|
+
The brainstorm produces a living markdown document that evolves throughout the session.
|
|
277
|
+
|
|
278
|
+
**Location**: User-specified, or default to `docs/brainstorms/[date]-[topic].md`
|
|
279
|
+
|
|
280
|
+
**Template**: See [brainstorm-plan.template.md](templates/brainstorm-plan.template.md)
|
|
281
|
+
|
|
282
|
+
**Sections**:
|
|
283
|
+
1. Header (status, dates, participants)
|
|
284
|
+
2. Problem Framing
|
|
285
|
+
3. Options Explored
|
|
286
|
+
4. Evaluation
|
|
287
|
+
5. Decisions
|
|
288
|
+
6. Rejected Alternatives
|
|
289
|
+
7. Implementation Plan
|
|
290
|
+
8. Handoff
|
|
291
|
+
9. Session Log
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
## Integration Points
|
|
296
|
+
|
|
297
|
+
### Can Invoke During Brainstorm
|
|
298
|
+
|
|
299
|
+
- **Design Thinking**: For user research and UX ideation (Phase 2)
|
|
300
|
+
- **Plan Reviewer**: For plan validation (pre-Gate 3)
|
|
301
|
+
|
|
302
|
+
### Hands Off To
|
|
303
|
+
|
|
304
|
+
- **Design Engineer**: For design and engineering implementation
|
|
305
|
+
- Other specialized agents as appropriate
|
|
306
|
+
|
|
307
|
+
### Can Be Invoked By
|
|
308
|
+
|
|
309
|
+
- **Design Engineer**: When facing complex decisions
|
|
310
|
+
- **Direct user request**: For any complex planning need
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
## Best Practices
|
|
315
|
+
|
|
316
|
+
1. **Start with why** - Understand the problem deeply before solutions
|
|
317
|
+
2. **Diverge before converging** - Generate options before evaluating
|
|
318
|
+
3. **Make trade-offs explicit** - Document what you're trading off
|
|
319
|
+
4. **Capture rationale** - Future you will thank present you
|
|
320
|
+
5. **Preserve rejected alternatives** - Context for future decisions
|
|
321
|
+
6. **Gate honestly** - Don't rubber-stamp approvals
|
|
322
|
+
|
|
323
|
+
## Anti-Patterns
|
|
324
|
+
|
|
325
|
+
- Jumping to solutions before understanding the problem
|
|
326
|
+
- Narrowing too quickly in exploration phase
|
|
327
|
+
- Skipping gates to "move faster"
|
|
328
|
+
- Not documenting why options were rejected
|
|
329
|
+
- Implementing before plan approval
|
|
330
|
+
- Over-planning simple tasks that don't need brainstorming
|
|
331
|
+
|
|
332
|
+
---
|
|
333
|
+
|
|
334
|
+
## Related
|
|
335
|
+
|
|
336
|
+
- [Design Engineer Agent](../design-engineer/design-engineer.md) - Implementation handoff target
|
|
337
|
+
- [Design Thinking Skill](../design-engineer/design/design-thinking/design-thinking.skill.md) - UX research methods
|
|
338
|
+
- [Plan Reviewer Skill](../design-engineer/shared/plan-reviewer/plan-reviewer.skill.md) - Plan validation
|
|
339
|
+
- [Brainstorm Plan Template](templates/brainstorm-plan.template.md) - Living document template
|