@crewpilot/agent 1.0.0 → 2.0.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/README.md +131 -107
- package/dist-npm/cli.js +0 -0
- package/dist-npm/index.js +160 -127
- package/package.json +69 -69
- package/prompts/agent.md +282 -266
- package/prompts/catalyst.config.json +72 -72
- package/prompts/copilot-instructions.md +36 -36
- package/prompts/skills/assure-code-quality/SKILL.md +112 -112
- package/prompts/skills/assure-pr-intelligence/SKILL.md +148 -148
- package/prompts/skills/assure-review-functional/SKILL.md +114 -0
- package/prompts/skills/assure-review-standards/SKILL.md +106 -0
- package/prompts/skills/assure-threat-model/SKILL.md +182 -0
- package/prompts/skills/assure-vulnerability-scan/SKILL.md +146 -146
- package/prompts/skills/autopilot-meeting/SKILL.md +434 -407
- package/prompts/skills/autopilot-worker/SKILL.md +737 -623
- package/prompts/skills/daily-digest/SKILL.md +188 -167
- package/prompts/skills/deliver-change-management/SKILL.md +132 -132
- package/prompts/skills/deliver-deploy-guard/SKILL.md +144 -144
- package/prompts/skills/deliver-doc-governance/SKILL.md +130 -130
- package/prompts/skills/engineer-feature-builder/SKILL.md +270 -270
- package/prompts/skills/engineer-root-cause-analysis/SKILL.md +150 -150
- package/prompts/skills/engineer-test-first/SKILL.md +148 -148
- package/prompts/skills/insights-knowledge-base/SKILL.md +202 -181
- package/prompts/skills/insights-pattern-detection/SKILL.md +142 -142
- package/prompts/skills/strategize-architecture-planner/SKILL.md +141 -141
- package/prompts/skills/strategize-solution-design/SKILL.md +118 -118
- package/scripts/postinstall.js +108 -108
|
@@ -1,141 +1,141 @@
|
|
|
1
|
-
# Architecture Planner
|
|
2
|
-
|
|
3
|
-
> **Pillar**: Strategize | **ID**: `strategize-architecture-planner`
|
|
4
|
-
|
|
5
|
-
## Purpose
|
|
6
|
-
|
|
7
|
-
Transform decisions into concrete architecture plans with component diagrams, API contracts, data flow, and implementation roadmaps. Produces living design documents that evolve with the codebase.
|
|
8
|
-
|
|
9
|
-
## Activation Triggers
|
|
10
|
-
|
|
11
|
-
- "plan the architecture", "design the system", "create an RFC", "structure this"
|
|
12
|
-
- "how should I organize", "component diagram", "data flow", "API design"
|
|
13
|
-
- After `solution-design` selects an approach that needs detailing
|
|
14
|
-
|
|
15
|
-
## Methodology
|
|
16
|
-
|
|
17
|
-
### Process Flow
|
|
18
|
-
|
|
19
|
-
```dot
|
|
20
|
-
digraph architecture_planner {
|
|
21
|
-
rankdir=TB;
|
|
22
|
-
node [shape=box];
|
|
23
|
-
|
|
24
|
-
scope [label="Phase 1\nScope Definition"];
|
|
25
|
-
components [label="Phase 2\nComponent Design"];
|
|
26
|
-
dataflow [label="Phase 3\nData Flow"];
|
|
27
|
-
roadmap [label="Phase 4\nImplementation Roadmap"];
|
|
28
|
-
adr [label="Phase 5\nADR", shape=diamond, style=filled, fillcolor="#ffcccc"];
|
|
29
|
-
feature [label="feature-builder\n(Milestone M1)", shape=doublecircle];
|
|
30
|
-
|
|
31
|
-
scope -> components;
|
|
32
|
-
components -> dataflow;
|
|
33
|
-
dataflow -> roadmap;
|
|
34
|
-
roadmap -> adr;
|
|
35
|
-
adr -> feature [label="approved"];
|
|
36
|
-
adr -> components [label="user requests\nrevisions"];
|
|
37
|
-
}
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### Phase 1 — Scope Definition
|
|
41
|
-
1. Identify system boundaries — what's in scope vs. out of scope
|
|
42
|
-
2. List actors (users, services, external systems)
|
|
43
|
-
3. Define key quality attributes: scalability, latency, availability, consistency
|
|
44
|
-
4. Read existing codebase structure to understand current architecture
|
|
45
|
-
|
|
46
|
-
### Phase 2 — Component Design
|
|
47
|
-
1. Decompose into components/modules with clear responsibilities
|
|
48
|
-
2. Define interfaces between components (API contracts, event schemas)
|
|
49
|
-
3. Identify shared dependencies and data stores
|
|
50
|
-
4. Map to existing code structure where applicable
|
|
51
|
-
|
|
52
|
-
Output as a component table:
|
|
53
|
-
|
|
54
|
-
| Component | Responsibility | Inputs | Outputs | Dependencies |
|
|
55
|
-
|---|---|---|---|---|
|
|
56
|
-
| | | | | |
|
|
57
|
-
|
|
58
|
-
### Phase 3 — Data Flow
|
|
59
|
-
1. Trace the primary user journey through the system
|
|
60
|
-
2. Identify data transformations at each step
|
|
61
|
-
3. Mark synchronous vs. asynchronous boundaries
|
|
62
|
-
4. Identify potential bottlenecks and failure points
|
|
63
|
-
|
|
64
|
-
Produce a numbered flow:
|
|
65
|
-
```
|
|
66
|
-
1. User → API Gateway (HTTPS)
|
|
67
|
-
2. API Gateway → Auth Service (validate token)
|
|
68
|
-
3. Auth Service → User DB (query)
|
|
69
|
-
...
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
### Phase 4 — Implementation Roadmap
|
|
73
|
-
1. Break into milestones (each independently deployable/testable)
|
|
74
|
-
2. Order by dependency graph — foundations first
|
|
75
|
-
3. Estimate effort per milestone (T-shirt sizes)
|
|
76
|
-
4. Identify the critical path
|
|
77
|
-
5. Mark "go/no-go" decision points
|
|
78
|
-
|
|
79
|
-
### Phase 5 — ADR (Architecture Decision Record)
|
|
80
|
-
|
|
81
|
-
<HARD-GATE>
|
|
82
|
-
Do NOT begin implementation until the architecture plan (components, data flow, roadmap) has been presented to and approved by the user.
|
|
83
|
-
If the user has not explicitly confirmed the architecture, do NOT proceed.
|
|
84
|
-
</HARD-GATE>
|
|
85
|
-
|
|
86
|
-
If `require_adr` is true in config, generate:
|
|
87
|
-
|
|
88
|
-
```markdown
|
|
89
|
-
# ADR-{NNN}: {Title}
|
|
90
|
-
|
|
91
|
-
## Status: Proposed
|
|
92
|
-
## Context: {why this decision is needed}
|
|
93
|
-
## Decision: {what was decided}
|
|
94
|
-
## Consequences: {positive and negative}
|
|
95
|
-
## Alternatives Considered: {options rejected and why}
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
## Tools Required
|
|
99
|
-
|
|
100
|
-
- `codebase` — Analyze existing project structure and dependencies
|
|
101
|
-
- `terminal` — Run dependency analysis commands (package.json, imports, etc.)
|
|
102
|
-
- `catalyst_knowledge_search` — Retrieve prior architecture decisions
|
|
103
|
-
|
|
104
|
-
## Output Format
|
|
105
|
-
|
|
106
|
-
```
|
|
107
|
-
## [Catalyst → Architecture Planner]
|
|
108
|
-
|
|
109
|
-
### Scope
|
|
110
|
-
{boundaries, actors, quality attributes}
|
|
111
|
-
|
|
112
|
-
### Components
|
|
113
|
-
{component table}
|
|
114
|
-
|
|
115
|
-
### Data Flow
|
|
116
|
-
{numbered flow}
|
|
117
|
-
|
|
118
|
-
### Implementation Roadmap
|
|
119
|
-
| Milestone | Description | Effort | Dependencies |
|
|
120
|
-
|---|---|---|---|
|
|
121
|
-
| M1 | | | |
|
|
122
|
-
|
|
123
|
-
### Critical Path
|
|
124
|
-
{sequence}
|
|
125
|
-
|
|
126
|
-
### ADR (if enabled)
|
|
127
|
-
{ADR document}
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
## Chains To
|
|
131
|
-
|
|
132
|
-
- `feature-builder` — Start implementing milestone M1
|
|
133
|
-
- `test-first` — Write integration tests for component interfaces
|
|
134
|
-
- `doc-governance` — Ensure architecture docs stay synchronized
|
|
135
|
-
|
|
136
|
-
## Anti-Patterns
|
|
137
|
-
|
|
138
|
-
- Do NOT design in a vacuum — always scan the existing codebase first
|
|
139
|
-
- Do NOT create components with unclear responsibilities (god-service smell)
|
|
140
|
-
- Do NOT skip the roadmap — architecture without sequencing is just a diagram
|
|
141
|
-
- Do NOT ignore existing patterns — evolve, don't replace, unless explicitly asked
|
|
1
|
+
# Architecture Planner
|
|
2
|
+
|
|
3
|
+
> **Pillar**: Strategize | **ID**: `strategize-architecture-planner`
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
Transform decisions into concrete architecture plans with component diagrams, API contracts, data flow, and implementation roadmaps. Produces living design documents that evolve with the codebase.
|
|
8
|
+
|
|
9
|
+
## Activation Triggers
|
|
10
|
+
|
|
11
|
+
- "plan the architecture", "design the system", "create an RFC", "structure this"
|
|
12
|
+
- "how should I organize", "component diagram", "data flow", "API design"
|
|
13
|
+
- After `solution-design` selects an approach that needs detailing
|
|
14
|
+
|
|
15
|
+
## Methodology
|
|
16
|
+
|
|
17
|
+
### Process Flow
|
|
18
|
+
|
|
19
|
+
```dot
|
|
20
|
+
digraph architecture_planner {
|
|
21
|
+
rankdir=TB;
|
|
22
|
+
node [shape=box];
|
|
23
|
+
|
|
24
|
+
scope [label="Phase 1\nScope Definition"];
|
|
25
|
+
components [label="Phase 2\nComponent Design"];
|
|
26
|
+
dataflow [label="Phase 3\nData Flow"];
|
|
27
|
+
roadmap [label="Phase 4\nImplementation Roadmap"];
|
|
28
|
+
adr [label="Phase 5\nADR", shape=diamond, style=filled, fillcolor="#ffcccc"];
|
|
29
|
+
feature [label="feature-builder\n(Milestone M1)", shape=doublecircle];
|
|
30
|
+
|
|
31
|
+
scope -> components;
|
|
32
|
+
components -> dataflow;
|
|
33
|
+
dataflow -> roadmap;
|
|
34
|
+
roadmap -> adr;
|
|
35
|
+
adr -> feature [label="approved"];
|
|
36
|
+
adr -> components [label="user requests\nrevisions"];
|
|
37
|
+
}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Phase 1 — Scope Definition
|
|
41
|
+
1. Identify system boundaries — what's in scope vs. out of scope
|
|
42
|
+
2. List actors (users, services, external systems)
|
|
43
|
+
3. Define key quality attributes: scalability, latency, availability, consistency
|
|
44
|
+
4. Read existing codebase structure to understand current architecture
|
|
45
|
+
|
|
46
|
+
### Phase 2 — Component Design
|
|
47
|
+
1. Decompose into components/modules with clear responsibilities
|
|
48
|
+
2. Define interfaces between components (API contracts, event schemas)
|
|
49
|
+
3. Identify shared dependencies and data stores
|
|
50
|
+
4. Map to existing code structure where applicable
|
|
51
|
+
|
|
52
|
+
Output as a component table:
|
|
53
|
+
|
|
54
|
+
| Component | Responsibility | Inputs | Outputs | Dependencies |
|
|
55
|
+
|---|---|---|---|---|
|
|
56
|
+
| | | | | |
|
|
57
|
+
|
|
58
|
+
### Phase 3 — Data Flow
|
|
59
|
+
1. Trace the primary user journey through the system
|
|
60
|
+
2. Identify data transformations at each step
|
|
61
|
+
3. Mark synchronous vs. asynchronous boundaries
|
|
62
|
+
4. Identify potential bottlenecks and failure points
|
|
63
|
+
|
|
64
|
+
Produce a numbered flow:
|
|
65
|
+
```
|
|
66
|
+
1. User → API Gateway (HTTPS)
|
|
67
|
+
2. API Gateway → Auth Service (validate token)
|
|
68
|
+
3. Auth Service → User DB (query)
|
|
69
|
+
...
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Phase 4 — Implementation Roadmap
|
|
73
|
+
1. Break into milestones (each independently deployable/testable)
|
|
74
|
+
2. Order by dependency graph — foundations first
|
|
75
|
+
3. Estimate effort per milestone (T-shirt sizes)
|
|
76
|
+
4. Identify the critical path
|
|
77
|
+
5. Mark "go/no-go" decision points
|
|
78
|
+
|
|
79
|
+
### Phase 5 — ADR (Architecture Decision Record)
|
|
80
|
+
|
|
81
|
+
<HARD-GATE>
|
|
82
|
+
Do NOT begin implementation until the architecture plan (components, data flow, roadmap) has been presented to and approved by the user.
|
|
83
|
+
If the user has not explicitly confirmed the architecture, do NOT proceed.
|
|
84
|
+
</HARD-GATE>
|
|
85
|
+
|
|
86
|
+
If `require_adr` is true in config, generate:
|
|
87
|
+
|
|
88
|
+
```markdown
|
|
89
|
+
# ADR-{NNN}: {Title}
|
|
90
|
+
|
|
91
|
+
## Status: Proposed
|
|
92
|
+
## Context: {why this decision is needed}
|
|
93
|
+
## Decision: {what was decided}
|
|
94
|
+
## Consequences: {positive and negative}
|
|
95
|
+
## Alternatives Considered: {options rejected and why}
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## Tools Required
|
|
99
|
+
|
|
100
|
+
- `codebase` — Analyze existing project structure and dependencies
|
|
101
|
+
- `terminal` — Run dependency analysis commands (package.json, imports, etc.)
|
|
102
|
+
- `catalyst_knowledge_search` — Retrieve prior architecture decisions
|
|
103
|
+
|
|
104
|
+
## Output Format
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
## [Catalyst → Architecture Planner]
|
|
108
|
+
|
|
109
|
+
### Scope
|
|
110
|
+
{boundaries, actors, quality attributes}
|
|
111
|
+
|
|
112
|
+
### Components
|
|
113
|
+
{component table}
|
|
114
|
+
|
|
115
|
+
### Data Flow
|
|
116
|
+
{numbered flow}
|
|
117
|
+
|
|
118
|
+
### Implementation Roadmap
|
|
119
|
+
| Milestone | Description | Effort | Dependencies |
|
|
120
|
+
|---|---|---|---|
|
|
121
|
+
| M1 | | | |
|
|
122
|
+
|
|
123
|
+
### Critical Path
|
|
124
|
+
{sequence}
|
|
125
|
+
|
|
126
|
+
### ADR (if enabled)
|
|
127
|
+
{ADR document}
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## Chains To
|
|
131
|
+
|
|
132
|
+
- `feature-builder` — Start implementing milestone M1
|
|
133
|
+
- `test-first` — Write integration tests for component interfaces
|
|
134
|
+
- `doc-governance` — Ensure architecture docs stay synchronized
|
|
135
|
+
|
|
136
|
+
## Anti-Patterns
|
|
137
|
+
|
|
138
|
+
- Do NOT design in a vacuum — always scan the existing codebase first
|
|
139
|
+
- Do NOT create components with unclear responsibilities (god-service smell)
|
|
140
|
+
- Do NOT skip the roadmap — architecture without sequencing is just a diagram
|
|
141
|
+
- Do NOT ignore existing patterns — evolve, don't replace, unless explicitly asked
|
|
@@ -1,118 +1,118 @@
|
|
|
1
|
-
# Solution Design
|
|
2
|
-
|
|
3
|
-
> **Pillar**: Strategize | **ID**: `strategize-solution-design`
|
|
4
|
-
|
|
5
|
-
## Purpose
|
|
6
|
-
|
|
7
|
-
Structured ideation and trade-off analysis for technical decisions. Transforms vague questions into evaluated options with clear recommendations.
|
|
8
|
-
|
|
9
|
-
## Activation Triggers
|
|
10
|
-
|
|
11
|
-
- "brainstorm", "explore options", "what are the approaches", "tradeoffs", "should I use X or Y"
|
|
12
|
-
- Any open-ended technical question with multiple viable paths
|
|
13
|
-
|
|
14
|
-
## Methodology
|
|
15
|
-
|
|
16
|
-
### Process Flow
|
|
17
|
-
|
|
18
|
-
```dot
|
|
19
|
-
digraph solution_design {
|
|
20
|
-
rankdir=TB;
|
|
21
|
-
node [shape=box];
|
|
22
|
-
|
|
23
|
-
frame [label="Phase 1\nProblem Framing"];
|
|
24
|
-
options [label="Phase 2\nOption Generation\n(3-4 approaches)"];
|
|
25
|
-
matrix [label="Phase 3\nTrade-off Matrix"];
|
|
26
|
-
recommend [label="Phase 4\nRecommendation", shape=diamond, style=filled, fillcolor="#ffcccc"];
|
|
27
|
-
arch [label="architecture-planner", shape=doublecircle];
|
|
28
|
-
build [label="feature-builder", shape=doublecircle];
|
|
29
|
-
|
|
30
|
-
frame -> options;
|
|
31
|
-
options -> matrix;
|
|
32
|
-
matrix -> recommend;
|
|
33
|
-
recommend -> arch [label="needs detailed design"];
|
|
34
|
-
recommend -> build [label="ready to implement"];
|
|
35
|
-
recommend -> options [label="user rejects\nall options"];
|
|
36
|
-
}
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
### Phase 1 — Problem Framing
|
|
40
|
-
1. Restate the problem in one sentence
|
|
41
|
-
2. Identify constraints: time, team size, existing tech stack, scale requirements
|
|
42
|
-
3. Ask 1-2 clarifying questions ONLY if the problem is genuinely ambiguous
|
|
43
|
-
|
|
44
|
-
### Phase 2 — Option Generation
|
|
45
|
-
1. Generate 3-4 distinct approaches (configurable via `max_options` in config)
|
|
46
|
-
2. Each option must include:
|
|
47
|
-
- **Name**: Short memorable label
|
|
48
|
-
- **Approach**: 2-3 sentence description
|
|
49
|
-
- **Strengths**: What it does well
|
|
50
|
-
- **Risks**: What could go wrong
|
|
51
|
-
- **Effort**: T-shirt size (S/M/L/XL) with justification
|
|
52
|
-
3. Options must be genuinely different — not variations of the same approach
|
|
53
|
-
|
|
54
|
-
### Phase 3 — Trade-off Matrix
|
|
55
|
-
Build a comparison table:
|
|
56
|
-
|
|
57
|
-
| Criterion | Option A | Option B | Option C |
|
|
58
|
-
|---|---|---|---|
|
|
59
|
-
| Implementation effort | | | |
|
|
60
|
-
| Maintainability | | | |
|
|
61
|
-
| Performance | | | |
|
|
62
|
-
| Team familiarity | | | |
|
|
63
|
-
|
|
64
|
-
Rate each cell: `++` (strong), `+` (good), `~` (neutral), `-` (weak), `--` (poor)
|
|
65
|
-
|
|
66
|
-
### Phase 4 — Recommendation
|
|
67
|
-
|
|
68
|
-
<HARD-GATE>
|
|
69
|
-
Do NOT proceed to implementation or architecture planning until the user has reviewed the trade-off matrix and confirmed the recommended option.
|
|
70
|
-
Present the recommendation and wait for explicit approval or selection.
|
|
71
|
-
</HARD-GATE>
|
|
72
|
-
|
|
73
|
-
1. State the recommended option clearly
|
|
74
|
-
2. Provide confidence level (1-10) with reasoning
|
|
75
|
-
3. Identify the "decision reversal cost" — how hard is it to switch later
|
|
76
|
-
4. List 1-2 things to validate before committing
|
|
77
|
-
|
|
78
|
-
## Tools Required
|
|
79
|
-
|
|
80
|
-
- `codebase` — Scan existing stack for constraints
|
|
81
|
-
- `fetch` — Pull external docs/benchmarks when comparing technologies
|
|
82
|
-
- `catalyst_knowledge_search` — Check if similar decisions were made before
|
|
83
|
-
|
|
84
|
-
## Output Format
|
|
85
|
-
|
|
86
|
-
```
|
|
87
|
-
## [Catalyst → Solution Design]
|
|
88
|
-
|
|
89
|
-
### Problem
|
|
90
|
-
{one-sentence problem statement}
|
|
91
|
-
|
|
92
|
-
### Options
|
|
93
|
-
1. **{Name}** — {approach}
|
|
94
|
-
- Strengths: ...
|
|
95
|
-
- Risks: ...
|
|
96
|
-
- Effort: {T-shirt}
|
|
97
|
-
|
|
98
|
-
### Trade-off Matrix
|
|
99
|
-
{table}
|
|
100
|
-
|
|
101
|
-
### Recommendation
|
|
102
|
-
**{Option Name}** (Confidence: {N}/10)
|
|
103
|
-
{reasoning}
|
|
104
|
-
|
|
105
|
-
**Reversal cost**: {Low/Medium/High}
|
|
106
|
-
**Validate first**: {list}
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
## Chains To
|
|
110
|
-
|
|
111
|
-
- `architecture-planner` — When the recommended option needs detailed design
|
|
112
|
-
- `feature-builder` — When the user wants to start implementing immediately
|
|
113
|
-
|
|
114
|
-
## Anti-Patterns
|
|
115
|
-
|
|
116
|
-
- Do NOT generate options just to fill a quota — 2 genuine options beat 4 padded ones
|
|
117
|
-
- Do NOT recommend without stating confidence and reversal cost
|
|
118
|
-
- Do NOT skip the trade-off matrix — it's the core value of this skill
|
|
1
|
+
# Solution Design
|
|
2
|
+
|
|
3
|
+
> **Pillar**: Strategize | **ID**: `strategize-solution-design`
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
Structured ideation and trade-off analysis for technical decisions. Transforms vague questions into evaluated options with clear recommendations.
|
|
8
|
+
|
|
9
|
+
## Activation Triggers
|
|
10
|
+
|
|
11
|
+
- "brainstorm", "explore options", "what are the approaches", "tradeoffs", "should I use X or Y"
|
|
12
|
+
- Any open-ended technical question with multiple viable paths
|
|
13
|
+
|
|
14
|
+
## Methodology
|
|
15
|
+
|
|
16
|
+
### Process Flow
|
|
17
|
+
|
|
18
|
+
```dot
|
|
19
|
+
digraph solution_design {
|
|
20
|
+
rankdir=TB;
|
|
21
|
+
node [shape=box];
|
|
22
|
+
|
|
23
|
+
frame [label="Phase 1\nProblem Framing"];
|
|
24
|
+
options [label="Phase 2\nOption Generation\n(3-4 approaches)"];
|
|
25
|
+
matrix [label="Phase 3\nTrade-off Matrix"];
|
|
26
|
+
recommend [label="Phase 4\nRecommendation", shape=diamond, style=filled, fillcolor="#ffcccc"];
|
|
27
|
+
arch [label="architecture-planner", shape=doublecircle];
|
|
28
|
+
build [label="feature-builder", shape=doublecircle];
|
|
29
|
+
|
|
30
|
+
frame -> options;
|
|
31
|
+
options -> matrix;
|
|
32
|
+
matrix -> recommend;
|
|
33
|
+
recommend -> arch [label="needs detailed design"];
|
|
34
|
+
recommend -> build [label="ready to implement"];
|
|
35
|
+
recommend -> options [label="user rejects\nall options"];
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Phase 1 — Problem Framing
|
|
40
|
+
1. Restate the problem in one sentence
|
|
41
|
+
2. Identify constraints: time, team size, existing tech stack, scale requirements
|
|
42
|
+
3. Ask 1-2 clarifying questions ONLY if the problem is genuinely ambiguous
|
|
43
|
+
|
|
44
|
+
### Phase 2 — Option Generation
|
|
45
|
+
1. Generate 3-4 distinct approaches (configurable via `max_options` in config)
|
|
46
|
+
2. Each option must include:
|
|
47
|
+
- **Name**: Short memorable label
|
|
48
|
+
- **Approach**: 2-3 sentence description
|
|
49
|
+
- **Strengths**: What it does well
|
|
50
|
+
- **Risks**: What could go wrong
|
|
51
|
+
- **Effort**: T-shirt size (S/M/L/XL) with justification
|
|
52
|
+
3. Options must be genuinely different — not variations of the same approach
|
|
53
|
+
|
|
54
|
+
### Phase 3 — Trade-off Matrix
|
|
55
|
+
Build a comparison table:
|
|
56
|
+
|
|
57
|
+
| Criterion | Option A | Option B | Option C |
|
|
58
|
+
|---|---|---|---|
|
|
59
|
+
| Implementation effort | | | |
|
|
60
|
+
| Maintainability | | | |
|
|
61
|
+
| Performance | | | |
|
|
62
|
+
| Team familiarity | | | |
|
|
63
|
+
|
|
64
|
+
Rate each cell: `++` (strong), `+` (good), `~` (neutral), `-` (weak), `--` (poor)
|
|
65
|
+
|
|
66
|
+
### Phase 4 — Recommendation
|
|
67
|
+
|
|
68
|
+
<HARD-GATE>
|
|
69
|
+
Do NOT proceed to implementation or architecture planning until the user has reviewed the trade-off matrix and confirmed the recommended option.
|
|
70
|
+
Present the recommendation and wait for explicit approval or selection.
|
|
71
|
+
</HARD-GATE>
|
|
72
|
+
|
|
73
|
+
1. State the recommended option clearly
|
|
74
|
+
2. Provide confidence level (1-10) with reasoning
|
|
75
|
+
3. Identify the "decision reversal cost" — how hard is it to switch later
|
|
76
|
+
4. List 1-2 things to validate before committing
|
|
77
|
+
|
|
78
|
+
## Tools Required
|
|
79
|
+
|
|
80
|
+
- `codebase` — Scan existing stack for constraints
|
|
81
|
+
- `fetch` — Pull external docs/benchmarks when comparing technologies
|
|
82
|
+
- `catalyst_knowledge_search` — Check if similar decisions were made before
|
|
83
|
+
|
|
84
|
+
## Output Format
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
## [Catalyst → Solution Design]
|
|
88
|
+
|
|
89
|
+
### Problem
|
|
90
|
+
{one-sentence problem statement}
|
|
91
|
+
|
|
92
|
+
### Options
|
|
93
|
+
1. **{Name}** — {approach}
|
|
94
|
+
- Strengths: ...
|
|
95
|
+
- Risks: ...
|
|
96
|
+
- Effort: {T-shirt}
|
|
97
|
+
|
|
98
|
+
### Trade-off Matrix
|
|
99
|
+
{table}
|
|
100
|
+
|
|
101
|
+
### Recommendation
|
|
102
|
+
**{Option Name}** (Confidence: {N}/10)
|
|
103
|
+
{reasoning}
|
|
104
|
+
|
|
105
|
+
**Reversal cost**: {Low/Medium/High}
|
|
106
|
+
**Validate first**: {list}
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Chains To
|
|
110
|
+
|
|
111
|
+
- `architecture-planner` — When the recommended option needs detailed design
|
|
112
|
+
- `feature-builder` — When the user wants to start implementing immediately
|
|
113
|
+
|
|
114
|
+
## Anti-Patterns
|
|
115
|
+
|
|
116
|
+
- Do NOT generate options just to fill a quota — 2 genuine options beat 4 padded ones
|
|
117
|
+
- Do NOT recommend without stating confidence and reversal cost
|
|
118
|
+
- Do NOT skip the trade-off matrix — it's the core value of this skill
|