@devobsessed/code-captain 0.0.8 → 0.0.9
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 +35 -27
- package/bin/install.js +1165 -978
- package/claude-code/agents/code-captain.md +15 -3
- package/copilot/chatmodes/Code Captain.chatmode.md +30 -9
- package/copilot/prompts/create-adr.prompt.md +6 -4
- package/copilot/prompts/create-spec.prompt.md +60 -40
- package/copilot/prompts/explain-code.prompt.md +7 -20
- package/copilot/prompts/research.prompt.md +14 -27
- package/cursor/README.md +72 -68
- package/cursor/cc.mdc +13 -35
- package/cursor/commands/create-adr.md +6 -12
- package/cursor/commands/create-spec.md +66 -54
- package/cursor/commands/edit-spec.md +2 -15
- package/cursor/commands/execute-task.md +7 -15
- package/cursor/commands/explain-code.md +16 -32
- package/cursor/commands/initialize.md +18 -17
- package/cursor/commands/new-command.md +168 -77
- package/cursor/commands/plan-product.md +7 -13
- package/cursor/commands/research.md +4 -23
- package/cursor/commands/status.md +28 -28
- package/cursor/commands/swab.md +4 -12
- package/manifest.json +104 -207
- package/package.json +2 -3
- package/cursor/cc.md +0 -156
- package/windsurf/README.md +0 -254
- package/windsurf/rules/cc.md +0 -5
- package/windsurf/workflows/create-adr.md +0 -331
- package/windsurf/workflows/create-spec.md +0 -280
- package/windsurf/workflows/edit-spec.md +0 -273
- package/windsurf/workflows/execute-task.md +0 -276
- package/windsurf/workflows/explain-code.md +0 -288
- package/windsurf/workflows/initialize.md +0 -298
- package/windsurf/workflows/new-command.md +0 -321
- package/windsurf/workflows/plan-product.md +0 -330
- package/windsurf/workflows/research.md +0 -240
- package/windsurf/workflows/status.md +0 -213
- package/windsurf/workflows/swab.md +0 -212
|
@@ -1,331 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Create comprehensive Architecture Decision Records with systematic analysis and structured documentation
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# Create ADR Workflow
|
|
6
|
-
|
|
7
|
-
## Overview
|
|
8
|
-
Create comprehensive Architecture Decision Records (ADRs) that systematically document architectural decisions with clear rationale, alternatives considered, and consequences through structured analysis and review process.
|
|
9
|
-
|
|
10
|
-
## When to Use
|
|
11
|
-
- Making significant architectural decisions affecting system structure
|
|
12
|
-
- Documenting technology choices with vendor lock-in or high switching costs
|
|
13
|
-
- Recording decisions contrary to team expectations or industry standards
|
|
14
|
-
- Capturing complex trade-offs between competing approaches
|
|
15
|
-
- Establishing architectural patterns and standards for team consistency
|
|
16
|
-
|
|
17
|
-
## Prerequisites
|
|
18
|
-
|
|
19
|
-
**MANDATORY:** This workflow automatically executes research if no relevant research exists.
|
|
20
|
-
|
|
21
|
-
Process:
|
|
22
|
-
1. Check for existing research on the decision topic
|
|
23
|
-
2. If no research found: **automatically execute** complete research workflow
|
|
24
|
-
3. Only proceed with ADR creation after research is completed
|
|
25
|
-
|
|
26
|
-
## Implementation Steps
|
|
27
|
-
|
|
28
|
-
### Step 1: Check for Existing Research and Auto-Execute if Missing
|
|
29
|
-
|
|
30
|
-
Use `find_by_name` to search for related research:
|
|
31
|
-
```bash
|
|
32
|
-
find .code-captain/research -name "*[topic]*" -type f
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
Use `list_dir` to explore research directory structure.
|
|
36
|
-
|
|
37
|
-
If no relevant research found:
|
|
38
|
-
```
|
|
39
|
-
❌ No existing research found for this architectural decision.
|
|
40
|
-
|
|
41
|
-
🔄 AUTOMATICALLY EXECUTING RESEARCH WORKFLOW FIRST...
|
|
42
|
-
|
|
43
|
-
Reading .code-captain/commands/research.md and executing complete research process...
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
**Execute research workflow automatically:**
|
|
47
|
-
- Use `view_file` to read research workflow documentation
|
|
48
|
-
- Execute 4-phase research methodology:
|
|
49
|
-
- Phase 1: Define Research Scope
|
|
50
|
-
- Phase 2: Initial Discovery
|
|
51
|
-
- Phase 3: Deep Dive Analysis
|
|
52
|
-
- Phase 4: Synthesis and Recommendations
|
|
53
|
-
- Use `write_to_file` to create research document
|
|
54
|
-
- **ONLY CONTINUE** with ADR creation after research is completed
|
|
55
|
-
|
|
56
|
-
### Step 2: Analyze Decision Context and Current State
|
|
57
|
-
|
|
58
|
-
**Analysis Actions:**
|
|
59
|
-
|
|
60
|
-
1. **Understand current architectural patterns:**
|
|
61
|
-
- Use `codebase_search` with queries:
|
|
62
|
-
- "What architectural patterns are currently in use?"
|
|
63
|
-
- "How are similar decisions handled in the codebase?"
|
|
64
|
-
- "What dependencies and integrations exist?"
|
|
65
|
-
|
|
66
|
-
2. **Find existing ADRs:**
|
|
67
|
-
- Use `find_by_name` to locate existing ADRs in `.code-captain/decision-records/`
|
|
68
|
-
- Use `list_dir` to explore system structure
|
|
69
|
-
|
|
70
|
-
3. **Gather decision context:**
|
|
71
|
-
- Identify decision stakeholders and concerns
|
|
72
|
-
- Determine specific decision needed and urgency
|
|
73
|
-
- Document current architectural context
|
|
74
|
-
|
|
75
|
-
### Step 3: Define Decision Scope and Criteria
|
|
76
|
-
|
|
77
|
-
**Actions:**
|
|
78
|
-
1. Define the specific architectural decision requiring documentation
|
|
79
|
-
2. Identify driving forces and constraints:
|
|
80
|
-
- Business requirements and goals
|
|
81
|
-
- Technical constraints and limitations
|
|
82
|
-
- Performance, security, scalability requirements
|
|
83
|
-
- Team skills and organizational capabilities
|
|
84
|
-
- Timeline and budget constraints
|
|
85
|
-
3. Establish decision criteria and priorities
|
|
86
|
-
4. Determine decision maker(s) and approval process
|
|
87
|
-
5. Set boundaries for decision scope
|
|
88
|
-
|
|
89
|
-
### Step 4: Research Alternatives and Evaluate Options
|
|
90
|
-
|
|
91
|
-
**Research Actions:**
|
|
92
|
-
|
|
93
|
-
1. **Leverage existing research (if found in Step 1):**
|
|
94
|
-
- Use `view_file` to review research documents
|
|
95
|
-
- Extract key insights, alternatives, and recommendations
|
|
96
|
-
- Identify gaps needing additional investigation
|
|
97
|
-
|
|
98
|
-
2. **Conduct additional web research:**
|
|
99
|
-
- Use `search_web` for:
|
|
100
|
-
- "[technology/pattern] architectural approaches"
|
|
101
|
-
- "[decision area] best practices"
|
|
102
|
-
- "[technology] vs [alternative] comparison"
|
|
103
|
-
- "[pattern] pros and cons"
|
|
104
|
-
|
|
105
|
-
3. **Use `codebase_search` to understand current implementation**
|
|
106
|
-
|
|
107
|
-
4. **Document alternative options:**
|
|
108
|
-
- Current state/status quo option
|
|
109
|
-
- Industry standard approaches
|
|
110
|
-
- Innovative or emerging alternatives
|
|
111
|
-
- Hybrid approaches
|
|
112
|
-
|
|
113
|
-
**Evaluation Framework:**
|
|
114
|
-
For each alternative, evaluate:
|
|
115
|
-
- Technical feasibility and complexity
|
|
116
|
-
- Performance and scalability implications
|
|
117
|
-
- Security and compliance considerations
|
|
118
|
-
- Development effort and timeline
|
|
119
|
-
- Long-term maintenance and evolution
|
|
120
|
-
- Risk assessment and mitigation strategies
|
|
121
|
-
|
|
122
|
-
### Step 5: Document ADR with Decision Rationale
|
|
123
|
-
|
|
124
|
-
**Preparation:**
|
|
125
|
-
|
|
126
|
-
1. **Get current date:**
|
|
127
|
-
```bash
|
|
128
|
-
date +%Y-%m-%d
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
2. **Determine ADR number:**
|
|
132
|
-
- Check existing ADRs in `.code-captain/decision-records/`
|
|
133
|
-
- Use sequential numbering (0001, 0002, etc.)
|
|
134
|
-
|
|
135
|
-
3. **Create ADR using `write_to_file`:**
|
|
136
|
-
|
|
137
|
-
4. **After completion, create memory of the decision:**
|
|
138
|
-
Ask Cascade: "Please create a memory of this architectural decision: [brief summary of the chosen option and key rationale]"
|
|
139
|
-
|
|
140
|
-
## ADR Template
|
|
141
|
-
|
|
142
|
-
```markdown
|
|
143
|
-
# NNNN. [Decision Title]
|
|
144
|
-
|
|
145
|
-
**Date:** [Current date]
|
|
146
|
-
**Status:** [Proposed/Accepted/Deprecated/Superseded]
|
|
147
|
-
**Deciders:** [Names or roles of decision makers]
|
|
148
|
-
**Technical Story:** [Brief reference to related requirement]
|
|
149
|
-
|
|
150
|
-
## Context and Problem Statement
|
|
151
|
-
|
|
152
|
-
[Describe the architectural problem requiring decision. Include business context, technical context, and driving forces.]
|
|
153
|
-
|
|
154
|
-
### Driving Forces
|
|
155
|
-
- **Business Driver 1:** [e.g., Need to support 10x user growth]
|
|
156
|
-
- **Technical Driver 2:** [e.g., Current monolith becoming unmaintainable]
|
|
157
|
-
- **Organizational Driver 3:** [e.g., Team scaling requires better separation]
|
|
158
|
-
|
|
159
|
-
### Assumptions
|
|
160
|
-
- [Any assumptions made during decision process]
|
|
161
|
-
- [External dependencies assumed to remain stable]
|
|
162
|
-
|
|
163
|
-
## Decision Drivers
|
|
164
|
-
|
|
165
|
-
[Key factors influencing this decision, in order of importance]
|
|
166
|
-
- **Driver 1:** [e.g., Scalability requirements]
|
|
167
|
-
- **Driver 2:** [e.g., Team autonomy and development velocity]
|
|
168
|
-
- **Driver 3:** [e.g., Technology stack modernization]
|
|
169
|
-
|
|
170
|
-
## Considered Options
|
|
171
|
-
|
|
172
|
-
### Option 1: [Name, e.g., "Maintain Current Monolithic Architecture"]
|
|
173
|
-
|
|
174
|
-
**Description:** [Brief description]
|
|
175
|
-
|
|
176
|
-
**Pros:**
|
|
177
|
-
- [Positive aspect 1]
|
|
178
|
-
- [Positive aspect 2]
|
|
179
|
-
|
|
180
|
-
**Cons:**
|
|
181
|
-
- [Negative aspect 1]
|
|
182
|
-
- [Negative aspect 2]
|
|
183
|
-
|
|
184
|
-
**Effort:** [Implementation effort assessment]
|
|
185
|
-
**Risk:** [Risk level and key risks]
|
|
186
|
-
|
|
187
|
-
### Option 2: [Name, e.g., "Migrate to Microservices Architecture"]
|
|
188
|
-
|
|
189
|
-
**Description:** [Brief description]
|
|
190
|
-
|
|
191
|
-
**Pros:**
|
|
192
|
-
- [Positive aspect 1]
|
|
193
|
-
- [Positive aspect 2]
|
|
194
|
-
|
|
195
|
-
**Cons:**
|
|
196
|
-
- [Negative aspect 1]
|
|
197
|
-
- [Negative aspect 2]
|
|
198
|
-
|
|
199
|
-
**Effort:** [Implementation effort assessment]
|
|
200
|
-
**Risk:** [Risk level and key risks]
|
|
201
|
-
|
|
202
|
-
### Option 3: [Name, e.g., "Hybrid Modular Monolith Approach"]
|
|
203
|
-
|
|
204
|
-
**Description:** [Brief description]
|
|
205
|
-
|
|
206
|
-
**Pros:**
|
|
207
|
-
- [Positive aspect 1]
|
|
208
|
-
- [Positive aspect 2]
|
|
209
|
-
|
|
210
|
-
**Cons:**
|
|
211
|
-
- [Negative aspect 1]
|
|
212
|
-
- [Negative aspect 2]
|
|
213
|
-
|
|
214
|
-
**Effort:** [Implementation effort assessment]
|
|
215
|
-
**Risk:** [Risk level and key risks]
|
|
216
|
-
|
|
217
|
-
## Decision Outcome
|
|
218
|
-
|
|
219
|
-
**Chosen Option:** [Selected option with brief rationale]
|
|
220
|
-
|
|
221
|
-
### Rationale
|
|
222
|
-
[Detailed explanation of why this option was selected. Reference decision drivers and how this option best addresses them.]
|
|
223
|
-
|
|
224
|
-
### Confirmation
|
|
225
|
-
[How will we know this decision is working? What metrics will we monitor?]
|
|
226
|
-
|
|
227
|
-
## Consequences
|
|
228
|
-
|
|
229
|
-
### Positive Consequences
|
|
230
|
-
- [Positive outcome 1 - improvements this enables]
|
|
231
|
-
- [Positive outcome 2 - capabilities this provides]
|
|
232
|
-
- [Positive outcome 3 - risks this mitigates]
|
|
233
|
-
|
|
234
|
-
### Negative Consequences
|
|
235
|
-
- [Negative outcome 1 - complexities this introduces]
|
|
236
|
-
- [Negative outcome 2 - trade-offs this requires]
|
|
237
|
-
- [Negative outcome 3 - new risks this creates]
|
|
238
|
-
|
|
239
|
-
### Mitigation Strategies
|
|
240
|
-
- [Strategy 1 for addressing negative consequences]
|
|
241
|
-
- [Strategy 2 for managing introduced complexities]
|
|
242
|
-
|
|
243
|
-
## Implementation Notes
|
|
244
|
-
|
|
245
|
-
### Prerequisites
|
|
246
|
-
- [What needs to be in place before implementing]
|
|
247
|
-
- [Dependencies that must be resolved first]
|
|
248
|
-
|
|
249
|
-
### Implementation Steps
|
|
250
|
-
1. [Step 1 - immediate actions required]
|
|
251
|
-
2. [Step 2 - follow-up activities]
|
|
252
|
-
3. [Step 3 - validation and monitoring setup]
|
|
253
|
-
|
|
254
|
-
### Success Criteria
|
|
255
|
-
- [Measurable criteria for successful implementation]
|
|
256
|
-
- [Timeline for achieving implementation milestones]
|
|
257
|
-
|
|
258
|
-
## Follow-up Actions
|
|
259
|
-
- [Action item 1 with owner and timeline]
|
|
260
|
-
- [Action item 2 with owner and timeline]
|
|
261
|
-
- [Review date for evaluating decision effectiveness]
|
|
262
|
-
|
|
263
|
-
## References
|
|
264
|
-
- [Link to related ADRs]
|
|
265
|
-
- [Prior research documents from .code-captain/research/]
|
|
266
|
-
- [External documentation, articles, or research]
|
|
267
|
-
- [Code repositories or examples]
|
|
268
|
-
|
|
269
|
-
## Related Decisions
|
|
270
|
-
- [ADR-XXXX: Related decision that influences this one]
|
|
271
|
-
- [ADR-YYYY: Decision that this supersedes or is superseded by]
|
|
272
|
-
```
|
|
273
|
-
|
|
274
|
-
## Best Practices
|
|
275
|
-
|
|
276
|
-
### Decision Scope and Focus
|
|
277
|
-
- Focus on one significant architectural decision per ADR
|
|
278
|
-
- Clearly separate problem from potential solutions
|
|
279
|
-
- Include sufficient context for future readers
|
|
280
|
-
- Document decision even if it seems obvious
|
|
281
|
-
- Consider both technical and business implications
|
|
282
|
-
|
|
283
|
-
### Alternatives Analysis
|
|
284
|
-
- Always include "do nothing" or "status quo" option
|
|
285
|
-
- Research industry standards and best practices
|
|
286
|
-
- Consider short-term and long-term implications
|
|
287
|
-
- Include effort and risk assessments for each option
|
|
288
|
-
- Seek diverse perspectives and expert opinions
|
|
289
|
-
|
|
290
|
-
### Decision Documentation
|
|
291
|
-
- Use clear, jargon-free language for new team members
|
|
292
|
-
- Include relevant diagrams, code examples, or architectural sketches
|
|
293
|
-
- Reference external sources and supporting documentation
|
|
294
|
-
- Document both positive and negative consequences honestly
|
|
295
|
-
- Plan for decision review and potential revision
|
|
296
|
-
|
|
297
|
-
### Stakeholder Engagement
|
|
298
|
-
- Involve all teams affected by architectural decision
|
|
299
|
-
- Allow time for thoughtful review and feedback
|
|
300
|
-
- Document dissenting opinions and how they were addressed
|
|
301
|
-
- Ensure decision makers have sufficient context and time
|
|
302
|
-
- Follow up on implementation and measure success
|
|
303
|
-
|
|
304
|
-
## Windsurf Tools Used
|
|
305
|
-
|
|
306
|
-
- `find_by_name`: Locate existing research and ADRs
|
|
307
|
-
- `list_dir`: Explore directory structures
|
|
308
|
-
- `view_file`: Read existing documentation and research
|
|
309
|
-
- `write_to_file`: Create ADR document
|
|
310
|
-
- `codebase_search`: Understand current architectural patterns
|
|
311
|
-
- `search_web`: Research alternatives and best practices
|
|
312
|
-
- `run_command`: Get current date and system information
|
|
313
|
-
|
|
314
|
-
## Windsurf Features Used
|
|
315
|
-
|
|
316
|
-
- **Memories**: After completing the ADR, ask Cascade to "create a memory of the architectural decision and its rationale" for future reference
|
|
317
|
-
|
|
318
|
-
## Common Pitfalls to Avoid
|
|
319
|
-
|
|
320
|
-
- Rushing to document without proper analysis
|
|
321
|
-
- Making decisions without stakeholder input
|
|
322
|
-
- Failing to research alternative approaches thoroughly
|
|
323
|
-
- Not considering long-term consequences
|
|
324
|
-
- Writing ADRs too technical for business stakeholders
|
|
325
|
-
- Not updating ADR status when decisions change
|
|
326
|
-
- Creating ADRs for trivial decisions
|
|
327
|
-
- Not linking ADRs to related architectural documentation
|
|
328
|
-
|
|
329
|
-
---
|
|
330
|
-
|
|
331
|
-
*📐 Architecture decisions shape the future. Document them well.*
|
|
@@ -1,280 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Generate comprehensive feature specifications using contract-first approach with complete alignment before file creation
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# Create Spec Workflow
|
|
6
|
-
|
|
7
|
-
## Overview
|
|
8
|
-
Generate comprehensive feature specifications using a contract-first approach that ensures complete alignment between developer and AI before creating any supporting files. This eliminates presumptuous file creation by establishing a clear "contract" through structured clarification rounds.
|
|
9
|
-
|
|
10
|
-
## Command Process
|
|
11
|
-
|
|
12
|
-
### Phase 1: Contract Establishment (No File Creation)
|
|
13
|
-
|
|
14
|
-
**Mission Statement:**
|
|
15
|
-
> Turn rough feature ideas into clear work specifications. Deliver the complete spec package only after both parties agree on the requirements contract. **Challenge ideas that don't make technical or business sense - better to surface concerns early than build the wrong thing.**
|
|
16
|
-
|
|
17
|
-
#### Step 1.1: Initial Context Scan
|
|
18
|
-
- Use `find_by_name` to scan existing `.code-captain/specs/` for related specifications
|
|
19
|
-
- Use `codebase_search` to analyze current architecture and patterns
|
|
20
|
-
- Use `view_file` to load project context files (`tech-stack.md`, `code-style.md`, `objective.md`)
|
|
21
|
-
- **Output:** Context summary (no files created yet)
|
|
22
|
-
|
|
23
|
-
#### Step 1.2: Gap Analysis & Silent Enumeration
|
|
24
|
-
**Internal Process (not shown to user):**
|
|
25
|
-
- Silently list every missing fact, constraint, or requirement
|
|
26
|
-
- Identify ambiguities in the initial description
|
|
27
|
-
- Note potential integration points and dependencies
|
|
28
|
-
- Catalog unknowns across domains:
|
|
29
|
-
- Purpose & business value
|
|
30
|
-
- Target audience & user personas
|
|
31
|
-
- Technical constraints & requirements
|
|
32
|
-
- Success criteria & acceptance tests
|
|
33
|
-
- Scope boundaries (in/out of scope)
|
|
34
|
-
- UI/UX requirements & design constraints
|
|
35
|
-
- Performance & scalability needs
|
|
36
|
-
- Security & compliance requirements
|
|
37
|
-
- Integration points with existing systems
|
|
38
|
-
- Risk tolerance & implementation approach
|
|
39
|
-
|
|
40
|
-
#### Step 1.3: Structured Clarification Loop
|
|
41
|
-
**Rules:**
|
|
42
|
-
- Ask ONE focused question at a time
|
|
43
|
-
- After each answer, re-scan codebase with `codebase_search` for new context if relevant
|
|
44
|
-
- Continue until reaching 95% confidence on deliverable
|
|
45
|
-
- Each question should target the highest-impact unknown
|
|
46
|
-
- **Never declare "final question"** - let the conversation flow naturally
|
|
47
|
-
- Let the user signal when they're ready to lock the contract
|
|
48
|
-
- **Challenge ideas that don't make technical or business sense**
|
|
49
|
-
|
|
50
|
-
**Critical Analysis Responsibility:**
|
|
51
|
-
- Challenge technically infeasible requirements; suggest alternatives
|
|
52
|
-
- Break down overly large scope into focused features
|
|
53
|
-
- Point out conflicts with existing codebase patterns
|
|
54
|
-
- Surface performance/security/scalability concerns proactively
|
|
55
|
-
|
|
56
|
-
**Question Categories:**
|
|
57
|
-
- "What specific user problem does this solve, and who experiences it?"
|
|
58
|
-
- "Should this integrate with [existing system], or remain separate?"
|
|
59
|
-
- "What does 'success' look like - how will we measure if this works?"
|
|
60
|
-
- "Are there performance requirements (response time, throughput, scale)?"
|
|
61
|
-
- "What UI/UX constraints exist - web only, mobile responsive, accessibility?"
|
|
62
|
-
- "What's your risk tolerance - stable/proven vs cutting-edge solutions?"
|
|
63
|
-
|
|
64
|
-
#### Step 1.4: Echo Check (Contract Proposal)
|
|
65
|
-
When confident, present a contract proposal with any concerns surfaced:
|
|
66
|
-
|
|
67
|
-
```
|
|
68
|
-
## Specification Contract
|
|
69
|
-
|
|
70
|
-
**Deliverable:** [One clear sentence describing what will be built]
|
|
71
|
-
|
|
72
|
-
**Must Include:** [Critical requirement that makes this valuable]
|
|
73
|
-
|
|
74
|
-
**Hardest Constraint:** [Biggest technical/business limitation to navigate]
|
|
75
|
-
|
|
76
|
-
**Success Criteria:** [How we'll know it's working correctly]
|
|
77
|
-
|
|
78
|
-
**Scope Boundaries:**
|
|
79
|
-
- In Scope: [2-3 key features]
|
|
80
|
-
- Out of Scope: [2-3 things we won't build]
|
|
81
|
-
|
|
82
|
-
**⚠️ Technical Concerns (if any):**
|
|
83
|
-
- [Specific concern about feasibility, performance, or architecture]
|
|
84
|
-
- [Suggested alternative or mitigation approach]
|
|
85
|
-
|
|
86
|
-
**💡 Recommendations:**
|
|
87
|
-
- [Suggestions for improving the approach based on codebase analysis]
|
|
88
|
-
- [Ways to reduce risk or complexity]
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
Options:
|
|
92
|
-
- Type 'yes' to lock this contract and create the spec package
|
|
93
|
-
- Type 'edit: [your changes]' to modify the contract
|
|
94
|
-
- Type 'risks' to explore potential implementation risks in detail
|
|
95
|
-
- Type 'blueprint' to see the planned folder structure and documents
|
|
96
|
-
- Ask more questions if anything needs clarification
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
### Phase 2: Spec Package Creation (Post-Agreement Only)
|
|
100
|
-
|
|
101
|
-
**Triggered only after user confirms contract with 'yes'**
|
|
102
|
-
|
|
103
|
-
#### Step 2.1: Determine Current Date
|
|
104
|
-
Use `run_command` to get current date:
|
|
105
|
-
```bash
|
|
106
|
-
date +%Y-%m-%d
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
#### Step 2.2: Create Directory Structure
|
|
110
|
-
Use `write_to_file` to create organized folder structure:
|
|
111
|
-
```
|
|
112
|
-
.code-captain/specs/[DATE]-{feature-name}/
|
|
113
|
-
├── spec.md # Main specification (from contract)
|
|
114
|
-
├── spec-lite.md # Condensed version for AI context
|
|
115
|
-
├── user-stories/ # Individual user story files
|
|
116
|
-
│ ├── README.md # Overview and progress tracking
|
|
117
|
-
│ ├── story-1-{name}.md # Individual user story with focused tasks
|
|
118
|
-
│ ├── story-2-{name}.md # Each story kept small and manageable
|
|
119
|
-
│ └── story-N-{name}.md # Max 5-7 implementation tasks per story
|
|
120
|
-
└── sub-specs/ # Technical deep-dives
|
|
121
|
-
├── technical-spec.md # Architecture & implementation details
|
|
122
|
-
├── database-schema.md # Database changes (if needed)
|
|
123
|
-
├── api-spec.md # API documentation (if needed)
|
|
124
|
-
└── ui-wireframes.md # UI/UX specifications (if needed)
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
#### Step 2.3: Generate Core Documents
|
|
128
|
-
|
|
129
|
-
**spec.md** - Built directly from the locked contract:
|
|
130
|
-
```markdown
|
|
131
|
-
# [Feature Name] Specification
|
|
132
|
-
|
|
133
|
-
> Created: [DATE]
|
|
134
|
-
> Status: Planning
|
|
135
|
-
> Contract Locked: ✅
|
|
136
|
-
|
|
137
|
-
## Contract Summary
|
|
138
|
-
[Echo check content verbatim]
|
|
139
|
-
|
|
140
|
-
## Detailed Requirements
|
|
141
|
-
[Expanded from clarification responses]
|
|
142
|
-
|
|
143
|
-
## Implementation Approach
|
|
144
|
-
[Technical strategy based on codebase analysis]
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
**user-stories/README.md** - Overview and progress tracking:
|
|
148
|
-
```markdown
|
|
149
|
-
# User Stories Overview
|
|
150
|
-
|
|
151
|
-
> **Specification:** [Feature Name]
|
|
152
|
-
> **Created:** [DATE]
|
|
153
|
-
> **Status:** Planning
|
|
154
|
-
|
|
155
|
-
## Stories Summary
|
|
156
|
-
|
|
157
|
-
| Story | Title | Status | Tasks | Progress |
|
|
158
|
-
|-------|-------|--------|-------|----------|
|
|
159
|
-
| 1 | [Story title] | Not Started | 5 | 0/5 |
|
|
160
|
-
| 2 | [Story title] | Not Started | 4 | 0/4 |
|
|
161
|
-
| 3 | [Story title] | Not Started | 6 | 0/6 |
|
|
162
|
-
|
|
163
|
-
**Total Progress:** 0/15 tasks (0%)
|
|
164
|
-
|
|
165
|
-
## Story Dependencies
|
|
166
|
-
- Story 2 depends on Story 1 completion
|
|
167
|
-
- Story 3 can run parallel to Story 2
|
|
168
|
-
|
|
169
|
-
## Quick Links
|
|
170
|
-
- [Story 1: Feature Name](./story-1-feature-name.md)
|
|
171
|
-
- [Story 2: Feature Name](./story-2-feature-name.md)
|
|
172
|
-
- [Story 3: Feature Name](./story-3-feature-name.md)
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
**user-stories/story-1-{name}.md** - Individual story files:
|
|
176
|
-
```markdown
|
|
177
|
-
# Story 1: [Title]
|
|
178
|
-
|
|
179
|
-
> **Status:** Not Started | **Priority:** High | **Dependencies:** None
|
|
180
|
-
|
|
181
|
-
## User Story
|
|
182
|
-
**As a** [user type] **I want to** [action] **So that** [value]
|
|
183
|
-
|
|
184
|
-
## Acceptance Criteria
|
|
185
|
-
- [ ] Given [context], when [action], then [outcome]
|
|
186
|
-
- [ ] Given [context], when [action], then [outcome]
|
|
187
|
-
|
|
188
|
-
## Implementation Tasks
|
|
189
|
-
- [ ] 1.1 Write tests for [component]
|
|
190
|
-
- [ ] 1.2 [Technical step]
|
|
191
|
-
- [ ] 1.3 [Technical step]
|
|
192
|
-
- [ ] 1.4 Verify acceptance criteria
|
|
193
|
-
- [ ] 1.5 Verify all tests pass
|
|
194
|
-
|
|
195
|
-
## Definition of Done
|
|
196
|
-
- [ ] All tasks completed | [ ] Tests passing | [ ] Code reviewed
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
#### Step 2.4: Generate Technical Sub-Specs
|
|
200
|
-
|
|
201
|
-
**Only create relevant sub-specs based on contract requirements:**
|
|
202
|
-
|
|
203
|
-
- **technical-spec.md**: Always created - architecture, patterns, dependencies
|
|
204
|
-
- **database-schema.md**: Only if database changes needed
|
|
205
|
-
- **api-spec.md**: Only if new API endpoints required
|
|
206
|
-
- **ui-wireframes.md**: Only if UI/UX requirements were discussed
|
|
207
|
-
|
|
208
|
-
#### Step 2.5: Final Package Review & User Validation
|
|
209
|
-
|
|
210
|
-
Present complete package:
|
|
211
|
-
```
|
|
212
|
-
✅ Specification package created successfully!
|
|
213
|
-
|
|
214
|
-
📁 .code-captain/specs/[DATE]-feature-name/
|
|
215
|
-
├── 📋 spec.md - Main specification
|
|
216
|
-
├── 📝 spec-lite.md - AI context summary
|
|
217
|
-
├── 👥 user-stories/ - Individual story files
|
|
218
|
-
│ ├── 📊 README.md - Overview and progress tracking
|
|
219
|
-
│ └── 📝 story-N-{name}.md - Focused stories (5-7 tasks each)
|
|
220
|
-
└── 📂 sub-specs/ - Technical specifications
|
|
221
|
-
|
|
222
|
-
**Stories Created:** [N] user stories | **Total Tasks:** [X] implementation tasks
|
|
223
|
-
|
|
224
|
-
Please review the specification documents and let me know:
|
|
225
|
-
- Does this accurately capture your vision?
|
|
226
|
-
- Are there any missing requirements or incorrect assumptions?
|
|
227
|
-
- Should any stories be split further or combined?
|
|
228
|
-
|
|
229
|
-
Once satisfied, I can help start implementation or make adjustments.
|
|
230
|
-
```
|
|
231
|
-
|
|
232
|
-
#### Step 2.6: Create Memory of Specification (Optional)
|
|
233
|
-
After successful spec creation, ask Cascade:
|
|
234
|
-
"Please create a memory of this feature specification: [brief summary of deliverable and key technical approach]"
|
|
235
|
-
|
|
236
|
-
## Key Improvements
|
|
237
|
-
|
|
238
|
-
### 1. Contract-First Approach
|
|
239
|
-
- **No presumptuous file creation** - Nothing gets built until contract is locked
|
|
240
|
-
- **Structured clarification** - One question at a time, building understanding
|
|
241
|
-
- **Echo check validation** - Clear contract summary before proceeding
|
|
242
|
-
|
|
243
|
-
### 2. Codebase-Aware Questioning
|
|
244
|
-
- **Context scanning between questions** - Each answer triggers fresh codebase analysis
|
|
245
|
-
- **Integration-focused queries** - Questions shaped by what exists in the codebase
|
|
246
|
-
- **Architecture consistency** - Recommendations align with existing patterns
|
|
247
|
-
|
|
248
|
-
### 3. User Control & Transparency
|
|
249
|
-
- **Clear decision points** - User explicitly approves before file creation
|
|
250
|
-
- **Risk assessment option** - Can explore implementation risks before committing
|
|
251
|
-
- **Blueprint preview** - Can see planned structure before creation
|
|
252
|
-
- **Edit capability** - Can modify contract before locking
|
|
253
|
-
|
|
254
|
-
### 4. Efficient Clarification Process
|
|
255
|
-
- **Gap enumeration** - Systematically identifies all unknowns
|
|
256
|
-
- **95% confidence threshold** - Stops asking when ready to deliver
|
|
257
|
-
- **Token efficiency** - Focused questions, no verbose explanations during clarification
|
|
258
|
-
|
|
259
|
-
## User Stories Folder Structure
|
|
260
|
-
|
|
261
|
-
**Philosophy:** Each story gets its own file (max 5-7 tasks), README.md provides overview and progress tracking, follows TDD approach.
|
|
262
|
-
|
|
263
|
-
**Benefits:** Manageable files, easy navigation, parallel work, clear progress tracking, every task traces to user value.
|
|
264
|
-
|
|
265
|
-
## Windsurf Tools Used
|
|
266
|
-
|
|
267
|
-
- `find_by_name`: Locate existing specifications and project files
|
|
268
|
-
- `view_file`: Read existing documentation and context files
|
|
269
|
-
- `codebase_search`: Analyze current architecture and patterns
|
|
270
|
-
- `write_to_file`: Create specification documents and folder structure
|
|
271
|
-
- `run_command`: Get current date for folder naming
|
|
272
|
-
- `search_web`: Research best practices and technical approaches (if needed)
|
|
273
|
-
|
|
274
|
-
## Windsurf Features Used
|
|
275
|
-
|
|
276
|
-
- **Memories**: After completion, optionally create memory of specification decision and approach
|
|
277
|
-
|
|
278
|
-
---
|
|
279
|
-
|
|
280
|
-
*📋 Great specifications lead to great implementations. Invest in clarity upfront.*
|