@leeovery/claude-technical-workflows 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/LICENSE +21 -0
- package/README.md +283 -0
- package/agents/chain-verifier.md +129 -0
- package/commands/interview.md +54 -0
- package/commands/start-discussion.md +36 -0
- package/commands/start-implementation.md +107 -0
- package/commands/start-planning.md +92 -0
- package/commands/start-research.md +21 -0
- package/commands/start-specification.md +89 -0
- package/package.json +24 -0
- package/skills/.gitkeep +0 -0
- package/skills/technical-discussion/SKILL.md +68 -0
- package/skills/technical-discussion/references/guidelines.md +86 -0
- package/skills/technical-discussion/references/meeting-assistant.md +102 -0
- package/skills/technical-discussion/references/template.md +127 -0
- package/skills/technical-implementation/SKILL.md +167 -0
- package/skills/technical-implementation/references/code-quality.md +41 -0
- package/skills/technical-implementation/references/environment-setup.md +97 -0
- package/skills/technical-implementation/references/plan-execution.md +49 -0
- package/skills/technical-implementation/references/tdd-workflow.md +63 -0
- package/skills/technical-planning/SKILL.md +46 -0
- package/skills/technical-planning/references/formal-planning.md +118 -0
- package/skills/technical-planning/references/output-backlog-md.md +227 -0
- package/skills/technical-planning/references/output-beads.md +302 -0
- package/skills/technical-planning/references/output-formats.md +14 -0
- package/skills/technical-planning/references/output-linear.md +211 -0
- package/skills/technical-planning/references/output-local-markdown.md +185 -0
- package/skills/technical-research/SKILL.md +81 -0
- package/skills/technical-review/SKILL.md +107 -0
- package/skills/technical-review/references/review-checklist.md +155 -0
- package/skills/technical-review/references/template.md +46 -0
- package/skills/technical-specification/SKILL.md +51 -0
- package/skills/technical-specification/references/specification-guide.md +170 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Start a planning session from an existing specification. Discovers available specifications, asks where to store the plan, and invokes the technical-planning skill.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Invoke the **technical-planning** skill for this conversation.
|
|
6
|
+
|
|
7
|
+
## Instructions
|
|
8
|
+
|
|
9
|
+
Follow these steps EXACTLY as written. Do not skip steps or combine them. Present output using the EXACT format shown in examples - do not simplify or alter the formatting.
|
|
10
|
+
|
|
11
|
+
Before beginning, discover existing work and gather necessary information.
|
|
12
|
+
|
|
13
|
+
## Important
|
|
14
|
+
|
|
15
|
+
Use simple, individual commands. Never combine multiple operations into bash loops or one-liners. Execute commands one at a time.
|
|
16
|
+
|
|
17
|
+
## Step 1: Discover Existing Work
|
|
18
|
+
|
|
19
|
+
Scan the codebase for specifications and plans:
|
|
20
|
+
|
|
21
|
+
1. **Find specifications**: Look in `docs/workflow/specification/`
|
|
22
|
+
- Run `ls docs/workflow/specification/` to list specification files
|
|
23
|
+
- Each file is named `{topic}.md`
|
|
24
|
+
|
|
25
|
+
2. **Check specification status**: For each specification file
|
|
26
|
+
- Run `head -20 docs/workflow/specification/{topic}.md` to read the frontmatter and extract the `status:` field
|
|
27
|
+
- Do NOT use bash loops - run separate `head` commands for each topic
|
|
28
|
+
|
|
29
|
+
3. **Check for existing plans**: Look in `docs/workflow/planning/`
|
|
30
|
+
- Identify specifications that don't have corresponding plans
|
|
31
|
+
|
|
32
|
+
## Step 2: Check Prerequisites
|
|
33
|
+
|
|
34
|
+
**If no specifications exist:**
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
โ ๏ธ No specifications found in docs/workflow/specification/
|
|
38
|
+
|
|
39
|
+
The planning phase requires a completed specification. Please run /start-specification first to validate and refine the discussion content into a standalone specification before creating a plan.
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Stop here and wait for the user to acknowledge.
|
|
43
|
+
|
|
44
|
+
## Step 3: Present Options to User
|
|
45
|
+
|
|
46
|
+
Show what you found using a list like below:
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
๐ Specifications found:
|
|
50
|
+
โ ๏ธ {topic-1} - Building specification - not ready for planning
|
|
51
|
+
โ
{topic-2} - Complete - ready for planning
|
|
52
|
+
โ
{topic-3} - Complete - plan exists
|
|
53
|
+
|
|
54
|
+
Which specification would you like to create a plan for?
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
**Important:** Only completed specifications should proceed to planning. If a specification is still being built, advise the user to complete the specification phase first.
|
|
58
|
+
|
|
59
|
+
Ask: **Which specification would you like to plan?**
|
|
60
|
+
|
|
61
|
+
## Step 4: Choose Output Destination
|
|
62
|
+
|
|
63
|
+
Ask: **Where should this plan live?**
|
|
64
|
+
|
|
65
|
+
Load **[output-formats.md](skills/technical-planning/references/output-formats.md)** and present the available formats to help the user choose. Then load the corresponding output adapter for that format's setup requirements.
|
|
66
|
+
|
|
67
|
+
## Step 5: Gather Additional Context
|
|
68
|
+
|
|
69
|
+
- Any additional context or priorities to consider?
|
|
70
|
+
- Any constraints since the specification was completed?
|
|
71
|
+
|
|
72
|
+
## Step 6: Invoke Planning Skill
|
|
73
|
+
|
|
74
|
+
Pass to the technical-planning skill with:
|
|
75
|
+
- Specification path
|
|
76
|
+
- Output format chosen
|
|
77
|
+
- Additional context gathered
|
|
78
|
+
|
|
79
|
+
**Example handoff:**
|
|
80
|
+
```
|
|
81
|
+
Planning session for: {topic}
|
|
82
|
+
Specification: docs/workflow/specification/{topic}.md
|
|
83
|
+
Output format: {format}
|
|
84
|
+
|
|
85
|
+
Begin planning using the technical-planning skill.
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Notes
|
|
89
|
+
|
|
90
|
+
- Ask questions clearly and wait for responses before proceeding
|
|
91
|
+
- The specification is the sole source of truth for planning - do not reference discussions
|
|
92
|
+
- Commit the plan files when complete
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Start a research exploration using the technical-research skill. For early-stage ideas, feasibility checks, and broad exploration before formal discussion.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Invoke the **technical-research** skill for this conversation.
|
|
6
|
+
|
|
7
|
+
Then ask these questions to kickstart the exploration:
|
|
8
|
+
|
|
9
|
+
1. **What's on your mind?**
|
|
10
|
+
- What idea or topic do you want to explore?
|
|
11
|
+
- What prompted this - a problem, opportunity, curiosity?
|
|
12
|
+
|
|
13
|
+
2. **What do you already know?**
|
|
14
|
+
- Any initial thoughts or research you've done?
|
|
15
|
+
- Constraints or context I should be aware of?
|
|
16
|
+
|
|
17
|
+
3. **Where should we start?**
|
|
18
|
+
- Technical feasibility? Market landscape? Business model?
|
|
19
|
+
- Or just talk it through and see where it goes?
|
|
20
|
+
|
|
21
|
+
Ask these questions clearly and wait for responses before proceeding. The skill handles everything else.
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Start a specification session from an existing discussion. Discovers available discussions, checks for existing specifications, and invokes the technical-specification skill.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Invoke the **technical-specification** skill for this conversation.
|
|
6
|
+
|
|
7
|
+
## Instructions
|
|
8
|
+
|
|
9
|
+
Follow these steps EXACTLY as written. Do not skip steps or combine them. Present output using the EXACT format shown in examples - do not simplify or alter the formatting.
|
|
10
|
+
|
|
11
|
+
Before beginning, discover existing work and gather necessary information.
|
|
12
|
+
|
|
13
|
+
## Important
|
|
14
|
+
|
|
15
|
+
Use simple, individual commands. Never combine multiple operations into bash loops or one-liners. Execute commands one at a time.
|
|
16
|
+
|
|
17
|
+
## Step 1: Discover Existing Work
|
|
18
|
+
|
|
19
|
+
Scan the codebase for discussions and specifications:
|
|
20
|
+
|
|
21
|
+
1. **Find discussions**: Look in `docs/workflow/discussion/`
|
|
22
|
+
- Run `ls docs/workflow/discussion/` to list discussion files
|
|
23
|
+
- Each file is named `{topic}.md`
|
|
24
|
+
|
|
25
|
+
2. **Check discussion status**: For each discussion file
|
|
26
|
+
- Run `head -20 docs/workflow/discussion/{topic}.md` to read the frontmatter and extract the `status:` field
|
|
27
|
+
- Do NOT use bash loops - run separate `head` commands for each topic
|
|
28
|
+
|
|
29
|
+
3. **Check for existing specifications**: Look in `docs/workflow/specification/`
|
|
30
|
+
- Identify discussions that don't have corresponding specifications
|
|
31
|
+
|
|
32
|
+
## Step 2: Check Prerequisites
|
|
33
|
+
|
|
34
|
+
**If no discussions exist:**
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
โ ๏ธ No discussions found in docs/workflow/discussion/
|
|
38
|
+
|
|
39
|
+
The specification phase requires a completed discussion. Please run /start-discussion first to document the technical decisions, edge cases, and rationale before creating a specification.
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Stop here and wait for the user to acknowledge.
|
|
43
|
+
|
|
44
|
+
## Step 3: Present Options to User
|
|
45
|
+
|
|
46
|
+
Show what you found using a list like below:
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
๐ Discussions found:
|
|
50
|
+
โ
{topic-1} - Concluded - ready for specification
|
|
51
|
+
โ ๏ธ {topic-2} - Exploring - not ready for specification
|
|
52
|
+
โ
{topic-3} - Concluded - specification exists
|
|
53
|
+
|
|
54
|
+
Which discussion would you like to create a specification for?
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
**Important:** Only concluded discussions should proceed to specification. If a discussion is still exploring, advise the user to complete the discussion phase first.
|
|
58
|
+
|
|
59
|
+
Ask: **Which discussion would you like to specify?**
|
|
60
|
+
|
|
61
|
+
## Step 4: Gather Additional Context
|
|
62
|
+
|
|
63
|
+
Ask:
|
|
64
|
+
- Any additional context or priorities to consider?
|
|
65
|
+
- Any constraints or changes since the discussion concluded?
|
|
66
|
+
- Are there any existing partial plans or related documentation I should review?
|
|
67
|
+
|
|
68
|
+
## Step 5: Invoke Specification Skill
|
|
69
|
+
|
|
70
|
+
Pass to the technical-specification skill:
|
|
71
|
+
- Discussion: `docs/workflow/discussion/{topic}.md`
|
|
72
|
+
- Output: `docs/workflow/specification/{topic}.md`
|
|
73
|
+
- Additional context gathered
|
|
74
|
+
|
|
75
|
+
**Example handoff:**
|
|
76
|
+
```
|
|
77
|
+
Specification session for: {topic}
|
|
78
|
+
Discussion: docs/workflow/discussion/{topic}.md
|
|
79
|
+
Output: docs/workflow/specification/{topic}.md
|
|
80
|
+
|
|
81
|
+
Begin specification using the technical-specification skill.
|
|
82
|
+
Reference: specification-guide.md
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Notes
|
|
86
|
+
|
|
87
|
+
- Ask questions clearly and wait for responses before proceeding
|
|
88
|
+
- The specification phase validates and refines discussion content into a standalone document
|
|
89
|
+
- Commit the specification files frequently during the session
|
package/package.json
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@leeovery/claude-technical-workflows",
|
|
3
|
+
"version": "2.0.0",
|
|
4
|
+
"description": "Technical workflow skills & commands for Claude Code",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"author": "Lee Overy <me@leeovery.com>",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "git+https://github.com/leeovery/claude-technical-workflows.git"
|
|
10
|
+
},
|
|
11
|
+
"type": "module",
|
|
12
|
+
"scripts": {
|
|
13
|
+
"postinstall": "claude-plugins add"
|
|
14
|
+
},
|
|
15
|
+
"dependencies": {
|
|
16
|
+
"@leeovery/claude-manager": "^2.0.0"
|
|
17
|
+
},
|
|
18
|
+
"files": [
|
|
19
|
+
"skills",
|
|
20
|
+
"commands",
|
|
21
|
+
"agents",
|
|
22
|
+
"hooks"
|
|
23
|
+
]
|
|
24
|
+
}
|
package/skills/.gitkeep
ADDED
|
File without changes
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: technical-discussion
|
|
3
|
+
description: "Document technical discussions as expert architect and meeting assistant. Capture context, decisions, edge cases, debates, and rationale without jumping to specification or implementation. Second phase of research-discussion-specification-plan-implement-review workflow. Use when: (1) Users discuss/explore/debate architecture or design, (2) Working through edge cases before specification, (3) Need to document technical decisions and their rationale, (4) Capturing competing solutions and why choices were made. Creates documentation in docs/workflow/discussion/{topic}.md that technical-specification uses to build validated specifications."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Technical Discussion
|
|
7
|
+
|
|
8
|
+
Act as **expert software architect** participating in discussions AND **documentation assistant** capturing them. Do both simultaneously. Engage deeply while documenting for planning teams.
|
|
9
|
+
|
|
10
|
+
## Six-Phase Workflow
|
|
11
|
+
|
|
12
|
+
1. **Research** (previous): EXPLORE - ideas, feasibility, market, business, learning
|
|
13
|
+
2. **Discussion** (YOU): WHAT and WHY - decisions, architecture, edge cases
|
|
14
|
+
3. **Specification** (next): REFINE - validate and build standalone spec
|
|
15
|
+
4. **Planning** (after): HOW - phases, tasks, acceptance criteria
|
|
16
|
+
5. **Implementation** (after): DOING - tests first, then code
|
|
17
|
+
6. **Review** (final): VALIDATING - check work against artifacts
|
|
18
|
+
|
|
19
|
+
You're at step 2. Capture context. Don't jump to specs, plans, or code.
|
|
20
|
+
|
|
21
|
+
## What to Capture
|
|
22
|
+
|
|
23
|
+
- **Back-and-forth debates**: Challenging, prolonged discussions show how we decided X over Y
|
|
24
|
+
- **Small details**: If discussed, it mattered - edge cases, constraints, concerns
|
|
25
|
+
- **Competing solutions**: Why A won over B and C when all looked good
|
|
26
|
+
- **The journey**: False paths, "aha" moments, course corrections
|
|
27
|
+
- **Goal**: Solve edge cases and problems before planning
|
|
28
|
+
|
|
29
|
+
**On length**: Discussions can be thousands of lines. Length = whatever needed to fully capture discussion, debates, edge cases, false paths. Terseness preferred, but comprehensive documentation more important. Don't summarize - document.
|
|
30
|
+
|
|
31
|
+
See **[meeting-assistant.md](references/meeting-assistant.md)** for detailed approach.
|
|
32
|
+
|
|
33
|
+
## Structure
|
|
34
|
+
|
|
35
|
+
**Output**: `docs/workflow/discussion/{topic}.md`
|
|
36
|
+
|
|
37
|
+
Use **[template.md](references/template.md)** for structure:
|
|
38
|
+
|
|
39
|
+
- **Document-level**: Context, references, questions list
|
|
40
|
+
- **Per-question**: Each question gets its own section with options, journey, and decision
|
|
41
|
+
- **Summary**: Key insights, current state, next steps
|
|
42
|
+
|
|
43
|
+
**Per-question structure** keeps the reasoning contextual. Options considered, false paths, debates, and "aha" moments belong with the specific question they relate to - not as separate top-level sections. This preserves the journey alongside the decision.
|
|
44
|
+
|
|
45
|
+
## Do / Don't
|
|
46
|
+
|
|
47
|
+
**Do**: Capture debates, edge cases, why solutions won/lost, high-level context, focus on "why"
|
|
48
|
+
|
|
49
|
+
**Don't**: Transcribe verbatim, write code/implementation, create build phases, skip context
|
|
50
|
+
|
|
51
|
+
See **[guidelines.md](references/guidelines.md)** for best practices and anti-hallucination techniques.
|
|
52
|
+
|
|
53
|
+
## Commit Frequently
|
|
54
|
+
|
|
55
|
+
**Commit discussion docs often**:
|
|
56
|
+
|
|
57
|
+
- At natural breaks in discussion
|
|
58
|
+
- When solutions to problems are identified
|
|
59
|
+
- When discussion branches/forks to new topics
|
|
60
|
+
- Before context refresh (prevents hallucination/memory loss)
|
|
61
|
+
|
|
62
|
+
**Why**: You lose memory on context refresh. Commits help you track, backtrack, and fill gaps. Critical for avoiding hallucination.
|
|
63
|
+
|
|
64
|
+
## Quick Reference
|
|
65
|
+
|
|
66
|
+
- **Approach**: **[meeting-assistant.md](references/meeting-assistant.md)** - Dual role, workflow
|
|
67
|
+
- **Template**: **[template.md](references/template.md)** - Structure
|
|
68
|
+
- **Guidelines**: **[guidelines.md](references/guidelines.md)** - Best practices
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Discussion Documentation Guidelines
|
|
2
|
+
|
|
3
|
+
*Part of **[technical-discussion](../SKILL.md)** | See also: **[meeting-assistant.md](meeting-assistant.md)** ยท **[template.md](template.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Best practices for documenting discussions. For DOCUMENTATION only - no plans or code.
|
|
8
|
+
|
|
9
|
+
## Core Principles
|
|
10
|
+
|
|
11
|
+
**One question at a time**: Don't overwhelm with multiple questions. Focus on single issue, get answer, move forward.
|
|
12
|
+
|
|
13
|
+
**Multiple-choice preferred**: Easier to answer than open-ended. Present 2-3 options with trade-offs.
|
|
14
|
+
|
|
15
|
+
**YAGNI ruthlessly**: Remove unnecessary features from all designs. If not discussed, don't add it.
|
|
16
|
+
|
|
17
|
+
**Explore alternatives**: Always propose 2-3 approaches before settling. Show trade-offs.
|
|
18
|
+
|
|
19
|
+
**Be flexible**: Go back and clarify when something doesn't make sense. Don't forge ahead on assumptions.
|
|
20
|
+
|
|
21
|
+
**Ask questions**: Clarify ambiguity. Better to ask than assume.
|
|
22
|
+
|
|
23
|
+
**Journey over destination**: "Explored MySQL, PostgreSQL, MongoDB. MySQL familiar but PostgreSQL better for JSON + ACID. Deciding factor: complex joins + JSON support" not just "Use PostgreSQL"
|
|
24
|
+
|
|
25
|
+
**"Why" over "what"**: "Repository pattern lets us swap data sources (DB/API/cache) without changing actions. Eloquent would tightly couple us" not just "Use repository"
|
|
26
|
+
|
|
27
|
+
**False paths valuable**: "Tried query scopes - don't cascade to relationships, security hole. Learning: need global scopes for isolation"
|
|
28
|
+
|
|
29
|
+
## Anti-Hallucination
|
|
30
|
+
|
|
31
|
+
**Don't assume**: If uncertain, say "Need to research cache race conditions" not "Cache handles race conditions with atomic locks"
|
|
32
|
+
|
|
33
|
+
**Document uncertainty**: "Confidence: Medium. Confirmed throughput OK. Uncertain on memory/cost at scale"
|
|
34
|
+
|
|
35
|
+
**Facts vs assumptions**: Label what's verified, what's assumed, what needs validation
|
|
36
|
+
|
|
37
|
+
## When to Document
|
|
38
|
+
|
|
39
|
+
**Create discussion doc when**:
|
|
40
|
+
- Multiple valid approaches exist
|
|
41
|
+
- Architectural/technical decisions needed
|
|
42
|
+
- User explicitly asks to "discuss" or "explore"
|
|
43
|
+
|
|
44
|
+
**Skip for**:
|
|
45
|
+
- Obvious/trivial decisions
|
|
46
|
+
- Following established patterns
|
|
47
|
+
- Pure implementation tasks
|
|
48
|
+
|
|
49
|
+
## Structure
|
|
50
|
+
|
|
51
|
+
**Context**: Why discussing, problem, pain point
|
|
52
|
+
**Options**: Approaches with trade-offs
|
|
53
|
+
**Debates**: Back-and-forth, what mattered
|
|
54
|
+
**Decisions**: What chosen, why, deciding factor
|
|
55
|
+
**False Paths**: What didn't work, why
|
|
56
|
+
**Impact**: Who benefits, what enabled
|
|
57
|
+
|
|
58
|
+
## Update as Discussing
|
|
59
|
+
|
|
60
|
+
- Check off answered questions
|
|
61
|
+
- Add options as explored
|
|
62
|
+
- Document false paths immediately
|
|
63
|
+
- Record decisions with rationale
|
|
64
|
+
- Keep "Current Thinking" updated
|
|
65
|
+
|
|
66
|
+
## Common Pitfalls
|
|
67
|
+
|
|
68
|
+
**Jumping to implementation**: Discussion ends at decisions, not at "here's how to build it"
|
|
69
|
+
|
|
70
|
+
**Erasing false paths**: "Tried file cache, too slow for 1000+ users. Redis 10x faster. Lesson: file cache doesn't scale for high-frequency reads"
|
|
71
|
+
|
|
72
|
+
**Missing "why"**: "Chose PostgreSQL because need JSON queries + ACID at scale + complex joins. MySQL JSON support limited" not just "Use PostgreSQL"
|
|
73
|
+
|
|
74
|
+
**Too much detail too soon**: "Need user-specific cache keys with query params" not "Cache key: metrics:{user_id}:{date}:{SHA256(params)}"
|
|
75
|
+
|
|
76
|
+
## Quality Check
|
|
77
|
+
|
|
78
|
+
Before marking discussion complete:
|
|
79
|
+
- โ
Context clear
|
|
80
|
+
- โ
Questions answered (or parked)
|
|
81
|
+
- โ
Options explored with trade-offs
|
|
82
|
+
- โ
False paths documented
|
|
83
|
+
- โ
Decisions have rationale
|
|
84
|
+
- โ
Impact explained
|
|
85
|
+
- โ
Confidence stated
|
|
86
|
+
- โ
No hallucination
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# Discussion Documentation Approach
|
|
2
|
+
|
|
3
|
+
*Part of **[technical-discussion](../SKILL.md)** | See also: **[template.md](template.md)** ยท **[guidelines.md](guidelines.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Capture technical discussions for planning teams to build from.
|
|
8
|
+
|
|
9
|
+
## Dual Role
|
|
10
|
+
|
|
11
|
+
Wear **two hats simultaneously**:
|
|
12
|
+
|
|
13
|
+
1. **Expert Architect** - Participate deeply, challenge approaches, identify edge cases, provide insights
|
|
14
|
+
2. **Documentation Assistant** - Capture discussion, decisions, debates, rationale, edge cases, false paths
|
|
15
|
+
|
|
16
|
+
You're an AI - do both. Engage fully while documenting. Don't dumb down.
|
|
17
|
+
|
|
18
|
+
## Workflow
|
|
19
|
+
|
|
20
|
+
**Your role: phases 1-2 only**
|
|
21
|
+
|
|
22
|
+
1. **Discuss** - Participate
|
|
23
|
+
2. **Document** - Capture
|
|
24
|
+
3. **Plan** - โ Planning team's job
|
|
25
|
+
4. **Implement** - โ Developers' job
|
|
26
|
+
|
|
27
|
+
Stop after documentation. No plans, implementation steps, or code.
|
|
28
|
+
|
|
29
|
+
## Capture Debates
|
|
30
|
+
|
|
31
|
+
When discussions are challenging/prolonged - document thoroughly. Back-and-forth shows:
|
|
32
|
+
- How we challenged approaches
|
|
33
|
+
- Why solutions won over alternatives
|
|
34
|
+
- Small details that mattered
|
|
35
|
+
- Edge cases identified
|
|
36
|
+
|
|
37
|
+
**More discussion = More documentation.**
|
|
38
|
+
|
|
39
|
+
## What You Are / Aren't
|
|
40
|
+
|
|
41
|
+
**Active Participant**: Architect providing insights, challenging approaches, identifying edge cases, solving problems
|
|
42
|
+
|
|
43
|
+
**Documentation**: Capturing debates, decisions, rationale, "why", edge cases
|
|
44
|
+
|
|
45
|
+
**NOT**: Verbatim transcriber, planner, coder (unless examples discussed)
|
|
46
|
+
|
|
47
|
+
## What to Capture
|
|
48
|
+
|
|
49
|
+
### Context
|
|
50
|
+
Problem, why now, pain point.
|
|
51
|
+
|
|
52
|
+
Example: "Slow dashboards (3-5s) affecting 200 enterprise users. Impacting renewals. Need fix before Q1."
|
|
53
|
+
|
|
54
|
+
### Options
|
|
55
|
+
Approaches, pros/cons, trade-offs.
|
|
56
|
+
|
|
57
|
+
Example:
|
|
58
|
+
- DB optimization: Helps but only gets to 2s
|
|
59
|
+
- Caching: <500ms, users OK with staleness
|
|
60
|
+
- Pre-aggregates: Fastest but months of work
|
|
61
|
+
|
|
62
|
+
### Journey
|
|
63
|
+
What didn't work, what changed thinking, "aha" moments.
|
|
64
|
+
|
|
65
|
+
Example: "Thought DB optimization was answer. Profiling showed queries optimal - volume is problem. User research revealed they check every 10-15min, making caching viable."
|
|
66
|
+
|
|
67
|
+
### Decisions
|
|
68
|
+
What chosen, why, deciding factor, trade-offs.
|
|
69
|
+
|
|
70
|
+
Example: "Redis caching with 5min TTL. Why: Gets target perf in 1 week vs months for alternatives. Trade-off: stale data acceptable per users."
|
|
71
|
+
|
|
72
|
+
### Impact
|
|
73
|
+
Who affected, problem solved, what enabled.
|
|
74
|
+
|
|
75
|
+
Example: "200 enterprise users + sales get performant experience. Enables Q1 renewals."
|
|
76
|
+
|
|
77
|
+
## Commit Often
|
|
78
|
+
|
|
79
|
+
**Git commit discussion docs frequently:**
|
|
80
|
+
|
|
81
|
+
- Natural breaks in discussion
|
|
82
|
+
- When problems solved
|
|
83
|
+
- When discussion forks to new topics
|
|
84
|
+
- Before context refresh
|
|
85
|
+
|
|
86
|
+
**Why**: Memory loss on context refresh causes hallucination. Commits help track, backtrack, fill gaps.
|
|
87
|
+
|
|
88
|
+
## Principles
|
|
89
|
+
|
|
90
|
+
**High-level over detailed**: "Queries taking 3-5s for 200 users" not "At 10:15am query took 3.2s average..."
|
|
91
|
+
|
|
92
|
+
**Context over transcript**: "Explored caching. Key question: TTL length. Users check every 10-15min, so 5min TTL works" not verbatim dialogue.
|
|
93
|
+
|
|
94
|
+
**Reasoning over conclusions**: "Redis caching because: users accept staleness, 4-week timeline, reversible" not just "Use Redis"
|
|
95
|
+
|
|
96
|
+
**Journey over destination**: "Thought DB optimization was answer. Profiling showed queries optimal. User research revealed periodic checks, making caching viable" not just "Using caching"
|
|
97
|
+
|
|
98
|
+
## For Planning Team
|
|
99
|
+
|
|
100
|
+
Give them: Context (why), direction (what), trade-offs (constraints), rationale (why X over Y), false paths (what not to try)
|
|
101
|
+
|
|
102
|
+
Your job ends at documentation. Planning team creates implementation plan.
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
# Discussion Document Template
|
|
2
|
+
|
|
3
|
+
*Part of **[technical-discussion](../SKILL.md)** | See also: **[meeting-assistant.md](meeting-assistant.md)** ยท **[guidelines.md](guidelines.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Standard structure for `docs/workflow/discussion/{topic}.md`. DOCUMENT only - no plans or code.
|
|
8
|
+
|
|
9
|
+
This is a single file per topic.
|
|
10
|
+
|
|
11
|
+
**This is a guide, not a form.** Use the structure to capture what naturally emerges from discussion. Don't force sections that didn't come up. The goal is to document the reasoning journey, not fill in every field.
|
|
12
|
+
|
|
13
|
+
## Template
|
|
14
|
+
|
|
15
|
+
```markdown
|
|
16
|
+
# Discussion: {Topic}
|
|
17
|
+
|
|
18
|
+
**Date**: YYYY-MM-DD
|
|
19
|
+
**Status**: Exploring | Deciding | Concluded
|
|
20
|
+
|
|
21
|
+
## Context
|
|
22
|
+
|
|
23
|
+
What this is about, why we're discussing it, the problem or opportunity, current state.
|
|
24
|
+
|
|
25
|
+
### References
|
|
26
|
+
|
|
27
|
+
- [Related spec or doc](link)
|
|
28
|
+
- [Prior discussion](link)
|
|
29
|
+
|
|
30
|
+
## Questions
|
|
31
|
+
|
|
32
|
+
- [ ] How should we handle X?
|
|
33
|
+
- Sub-question about edge case
|
|
34
|
+
- Context: brief note if needed
|
|
35
|
+
- [ ] What's the right approach for Y?
|
|
36
|
+
- [ ] Should Z be separate or combined with W?
|
|
37
|
+
- Related: how does this affect A?
|
|
38
|
+
- [ ] ...
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
*Each question above gets its own section below. Check off as concluded.*
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## How should we handle X?
|
|
47
|
+
|
|
48
|
+
### Context
|
|
49
|
+
Why this question matters, what's at stake.
|
|
50
|
+
|
|
51
|
+
### Options Considered
|
|
52
|
+
The approaches we looked at. If pros/cons naturally emerged:
|
|
53
|
+
|
|
54
|
+
**Option A**
|
|
55
|
+
- Pros: ...
|
|
56
|
+
- Cons: ...
|
|
57
|
+
|
|
58
|
+
**Option B**
|
|
59
|
+
- Pros: ...
|
|
60
|
+
- Cons: ...
|
|
61
|
+
|
|
62
|
+
### Journey
|
|
63
|
+
The back-and-forth exploration. What we initially thought. What changed our thinking. False paths - "We considered A but realised B because C." The "aha" moments. Small details that mattered.
|
|
64
|
+
|
|
65
|
+
If there was notable debate:
|
|
66
|
+
- **Positions**: What each side argued
|
|
67
|
+
- **Resolution**: What made us choose, what detail tipped it
|
|
68
|
+
|
|
69
|
+
### Decision
|
|
70
|
+
What we chose, why, the deciding factor, trade-offs accepted, confidence level.
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## What's the right approach for Y?
|
|
75
|
+
|
|
76
|
+
*(Same structure: Context โ Options โ Journey โ Decision)*
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Summary
|
|
81
|
+
|
|
82
|
+
### Key Insights
|
|
83
|
+
1. Cross-cutting learning from the discussion
|
|
84
|
+
2. Something that applies broadly
|
|
85
|
+
|
|
86
|
+
### Current State
|
|
87
|
+
- What's resolved
|
|
88
|
+
- What's still uncertain
|
|
89
|
+
|
|
90
|
+
### Next Steps
|
|
91
|
+
- [ ] Research X
|
|
92
|
+
- [ ] Validate Y
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Usage Notes
|
|
96
|
+
|
|
97
|
+
**When creating**:
|
|
98
|
+
1. Ensure discussion directory exists: `docs/workflow/discussion/`
|
|
99
|
+
2. Create file: `{topic}.md`
|
|
100
|
+
3. Fill header: date, status
|
|
101
|
+
4. Start with context: why discussing?
|
|
102
|
+
5. List questions: what needs deciding?
|
|
103
|
+
|
|
104
|
+
**During discussion**:
|
|
105
|
+
- Work through questions one at a time
|
|
106
|
+
- Document options, journey, and decision for each
|
|
107
|
+
- Check off questions as concluded
|
|
108
|
+
- Keep journey contextual - false paths, debates, and "aha" moments belong with the question they relate to
|
|
109
|
+
|
|
110
|
+
**Per-question structure**:
|
|
111
|
+
- **Context**: Why this specific question matters
|
|
112
|
+
- **Options Considered**: Approaches explored - include pros/cons if they naturally emerged
|
|
113
|
+
- **Journey**: The exploration - what we thought, what changed, false paths, debates, insights
|
|
114
|
+
- **Decision**: What we chose, why, the deciding factor
|
|
115
|
+
|
|
116
|
+
**Flexibility**: Not every question needs all sections. Some questions have clear options with pros/cons. Some have heated debate worth capturing. Some are straightforward. Document what naturally came up - don't force structure onto a simple discussion.
|
|
117
|
+
|
|
118
|
+
**Anti-patterns**:
|
|
119
|
+
- Don't pull false paths into a separate top-level section - keep them with the question they relate to
|
|
120
|
+
- Don't turn into plan (no implementation steps)
|
|
121
|
+
- Don't write code - unless it came up in discussion (e.g., API shape, pattern example) and is relevant to capture
|
|
122
|
+
- Don't summarise the journey - document it
|
|
123
|
+
|
|
124
|
+
**Complete when**:
|
|
125
|
+
- Major questions concluded with rationale
|
|
126
|
+
- Trade-offs understood
|
|
127
|
+
- Path forward clear
|