@leeovery/claude-technical-workflows 2.1.42 → 2.2.1
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 +10 -9
- package/hooks/workflows/compact-recovery.sh +3 -23
- package/hooks/workflows/write-session-state.sh +2 -26
- package/package.json +1 -1
- package/skills/link-dependencies/SKILL.md +0 -1
- package/skills/migrate/SKILL.md +0 -1
- package/skills/migrate/scripts/migrations/013-discussion-work-type.sh +76 -0
- package/skills/migrate/scripts/migrations/014-specification-work-type.sh +76 -0
- package/skills/migrate/scripts/migrations/015-plan-work-type.sh +76 -0
- package/skills/start-bugfix/SKILL.md +80 -0
- package/skills/start-bugfix/references/gather-bug-context.md +75 -0
- package/skills/start-bugfix/references/invoke-investigation.md +46 -0
- package/skills/start-bugfix/references/topic-name-check.md +59 -0
- package/skills/start-discussion/SKILL.md +51 -46
- package/skills/start-discussion/references/gather-context.md +54 -10
- package/skills/start-discussion/references/handle-selection.md +14 -4
- package/skills/start-discussion/references/invoke-skill.md +71 -3
- package/skills/start-discussion/references/research-analysis.md +2 -0
- package/skills/start-discussion/references/route-scenario.md +39 -0
- package/skills/start-discussion/references/validate-topic.md +46 -0
- package/skills/start-discussion/scripts/discovery.sh +3 -0
- package/skills/start-feature/SKILL.md +28 -84
- package/skills/start-feature/references/invoke-discussion.md +8 -4
- package/skills/start-feature/references/invoke-research.md +29 -0
- package/skills/start-feature/references/invoke-skill.md +35 -0
- package/skills/start-feature/references/research-gating.md +65 -0
- package/skills/start-feature/references/topic-name-check.md +61 -0
- package/skills/start-implementation/SKILL.md +35 -289
- package/skills/start-implementation/references/check-dependencies.md +65 -0
- package/skills/start-implementation/references/display-plans.md +159 -0
- package/skills/start-implementation/references/environment-check.md +45 -0
- package/skills/start-implementation/references/invoke-skill.md +42 -0
- package/skills/start-implementation/references/route-scenario.md +32 -0
- package/skills/start-implementation/references/validate-plan.md +45 -0
- package/skills/start-implementation/scripts/discovery.sh +3 -0
- package/skills/start-investigation/SKILL.md +145 -0
- package/skills/start-investigation/references/gather-context-fresh.md +72 -0
- package/skills/start-investigation/references/gather-context.md +31 -0
- package/skills/start-investigation/references/invoke-skill.md +54 -0
- package/skills/start-investigation/references/route-scenario.md +69 -0
- package/skills/start-investigation/references/validate-investigation.md +46 -0
- package/skills/start-investigation/scripts/discovery.sh +92 -0
- package/skills/start-planning/SKILL.md +32 -72
- package/skills/start-planning/references/cross-cutting-context.md +5 -5
- package/skills/start-planning/references/invoke-skill.md +27 -4
- package/skills/start-planning/references/route-plan-state.md +30 -0
- package/skills/start-planning/references/route-scenario.md +38 -0
- package/skills/start-planning/references/validate-spec.md +47 -0
- package/skills/start-planning/scripts/discovery.sh +7 -0
- package/skills/start-research/SKILL.md +17 -6
- package/skills/start-research/references/invoke-skill.md +3 -0
- package/skills/start-review/SKILL.md +32 -60
- package/skills/start-review/references/determine-review-version.md +24 -0
- package/skills/start-review/references/display-plans.md +2 -2
- package/skills/start-review/references/route-scenario.md +74 -0
- package/skills/start-review/references/select-plans.md +8 -6
- package/skills/start-review/references/validate-artifacts.md +63 -0
- package/skills/start-review/scripts/discovery.sh +3 -0
- package/skills/start-specification/SKILL.md +44 -20
- package/skills/start-specification/references/check-existing-spec.md +57 -0
- package/skills/start-specification/references/check-prerequisites.md +15 -0
- package/skills/start-specification/references/handoffs/continue-concluded.md +3 -0
- package/skills/start-specification/references/handoffs/continue.md +3 -0
- package/skills/start-specification/references/handoffs/create-with-incorporation.md +3 -0
- package/skills/start-specification/references/handoffs/create.md +3 -0
- package/skills/start-specification/references/handoffs/unify-with-incorporation.md +3 -0
- package/skills/start-specification/references/handoffs/unify.md +3 -0
- package/skills/start-specification/references/invoke-skill-bridge.md +74 -0
- package/skills/start-specification/references/route-scenario.md +23 -0
- package/skills/start-specification/references/validate-source.md +91 -0
- package/skills/start-specification/scripts/discovery.sh +6 -0
- package/skills/status/SKILL.md +6 -3
- package/skills/status/scripts/discovery.sh +9 -0
- package/skills/technical-discussion/SKILL.md +15 -4
- package/skills/technical-discussion/references/template.md +9 -1
- package/skills/technical-implementation/SKILL.md +24 -1
- package/skills/technical-implementation/references/analysis-loop.md +4 -4
- package/skills/technical-implementation/references/task-loop.md +2 -2
- package/skills/technical-investigation/SKILL.md +239 -0
- package/skills/technical-investigation/references/analysis-patterns.md +181 -0
- package/skills/technical-investigation/references/symptom-gathering.md +164 -0
- package/skills/technical-investigation/references/template.md +164 -0
- package/skills/technical-planning/SKILL.md +24 -1
- package/skills/technical-planning/references/author-tasks.md +16 -16
- package/skills/technical-planning/references/define-tasks.md +2 -2
- package/skills/technical-planning/references/plan-construction.md +11 -30
- package/skills/technical-planning/references/plan-review.md +3 -3
- package/skills/technical-research/SKILL.md +38 -2
- package/skills/technical-review/SKILL.md +1 -2
- package/skills/technical-review/references/review-actions-loop.md +43 -1
- package/skills/technical-specification/SKILL.md +1 -2
- package/skills/technical-specification/references/spec-completion.md +34 -6
- package/skills/technical-specification/references/spec-construction.md +1 -1
- package/skills/technical-specification/references/spec-review.md +5 -5
- package/skills/view-plan/SKILL.md +0 -1
- package/skills/workflow-bridge/SKILL.md +82 -0
- package/skills/workflow-bridge/references/bugfix-continuation.md +59 -0
- package/skills/workflow-bridge/references/feature-continuation.md +60 -0
- package/skills/workflow-bridge/references/greenfield-continuation.md +224 -0
- package/skills/workflow-bridge/scripts/discovery.sh +512 -0
- package/skills/workflow-start/SKILL.md +97 -0
- package/skills/workflow-start/references/bugfix-routing.md +117 -0
- package/skills/workflow-start/references/feature-routing.md +117 -0
- package/skills/workflow-start/references/greenfield-routing.md +140 -0
- package/skills/workflow-start/references/work-type-selection.md +83 -0
- package/skills/workflow-start/scripts/discovery.sh +577 -0
- package/skills/begin-implementation/SKILL.md +0 -162
- package/skills/begin-planning/SKILL.md +0 -92
- package/skills/begin-review/SKILL.md +0 -90
- package/skills/continue-feature/SKILL.md +0 -186
- package/skills/continue-feature/references/detect-phase.md +0 -99
- package/skills/continue-feature/references/invoke-implementation.md +0 -43
- package/skills/continue-feature/references/invoke-planning.md +0 -43
- package/skills/continue-feature/references/invoke-review.md +0 -43
- package/skills/continue-feature/references/invoke-specification.md +0 -55
- package/skills/continue-feature/references/phase-bridge.md +0 -57
- package/skills/continue-feature/scripts/discovery.sh +0 -233
- package/skills/start-feature/references/phase-bridge.md +0 -37
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
# Bugfix Routing
|
|
2
|
+
|
|
3
|
+
*Reference for **[workflow-start](../SKILL.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Bugfix work is investigation-centric. A topic flows through: Investigation → Specification → Planning → Implementation → Review. Investigation replaces discussion by combining symptom gathering + code analysis. This reference shows in-progress bugfixes and offers options to continue or start new.
|
|
8
|
+
|
|
9
|
+
## Display Bugfix State
|
|
10
|
+
|
|
11
|
+
Using the discovery output, check if there are any bugfixes in progress.
|
|
12
|
+
|
|
13
|
+
#### If no bugfixes exist
|
|
14
|
+
|
|
15
|
+
> *Output the next fenced block as a code block:*
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
Bugfixes
|
|
19
|
+
|
|
20
|
+
No bugfixes in progress.
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
> *Output the next fenced block as markdown (not a code block):*
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
· · · · · · · · · · · ·
|
|
27
|
+
Ready to start a new bugfix.
|
|
28
|
+
|
|
29
|
+
- **`y`/`yes`** — Start a new bugfix
|
|
30
|
+
- **`n`/`no`** — Go back to work type selection
|
|
31
|
+
· · · · · · · · · · · ·
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
**STOP.** Wait for user response.
|
|
35
|
+
|
|
36
|
+
#### If yes
|
|
37
|
+
|
|
38
|
+
Invoke `start-bugfix`. It will set `work_type: bugfix` automatically.
|
|
39
|
+
|
|
40
|
+
#### If no
|
|
41
|
+
|
|
42
|
+
→ Return to **[the skill](../SKILL.md)** for **Step 2** (work type selection).
|
|
43
|
+
|
|
44
|
+
#### If bugfixes exist
|
|
45
|
+
|
|
46
|
+
> *Output the next fenced block as a code block:*
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
Bugfixes
|
|
50
|
+
|
|
51
|
+
{bugfix_count} bugfix(es) in progress:
|
|
52
|
+
|
|
53
|
+
1. {topic:(titlecase)}
|
|
54
|
+
└─ Next: {next_phase}
|
|
55
|
+
|
|
56
|
+
2. ...
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Build tree from `bugfixes.topics` array. Each topic shows `name` (titlecased) and `next_phase`.
|
|
60
|
+
|
|
61
|
+
## Build Menu Options
|
|
62
|
+
|
|
63
|
+
Build a numbered menu with all in-progress bugfixes plus option to start new. The description maps `next_phase`:
|
|
64
|
+
|
|
65
|
+
| next_phase | Description |
|
|
66
|
+
|------------|-------------|
|
|
67
|
+
| investigation | investigation in-progress |
|
|
68
|
+
| specification | ready for specification |
|
|
69
|
+
| planning | ready for planning |
|
|
70
|
+
| implementation | ready for implementation |
|
|
71
|
+
| review | ready for review |
|
|
72
|
+
| done | pipeline complete |
|
|
73
|
+
|
|
74
|
+
> *Output the next fenced block as markdown (not a code block):*
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
· · · · · · · · · · · ·
|
|
78
|
+
What would you like to do?
|
|
79
|
+
|
|
80
|
+
1. Continue "Login Timeout" — investigation in-progress
|
|
81
|
+
2. Continue "Memory Leak" — ready for specification
|
|
82
|
+
3. Continue "Race Condition" — ready for planning
|
|
83
|
+
4. Start new bugfix
|
|
84
|
+
|
|
85
|
+
Select an option (enter number):
|
|
86
|
+
· · · · · · · · · · · ·
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Recreate with actual topics and states from discovery.
|
|
90
|
+
|
|
91
|
+
**STOP.** Wait for user response.
|
|
92
|
+
|
|
93
|
+
## Route Based on Selection
|
|
94
|
+
|
|
95
|
+
Parse the user's selection, then follow the instructions below.
|
|
96
|
+
|
|
97
|
+
#### If "start new bugfix"
|
|
98
|
+
|
|
99
|
+
Invoke `/start-bugfix`. It will set `work_type: bugfix` and begin the investigation phase.
|
|
100
|
+
|
|
101
|
+
#### If continuing existing bugfix
|
|
102
|
+
|
|
103
|
+
Map `next_phase` to the appropriate skill:
|
|
104
|
+
|
|
105
|
+
| next_phase | Skill | Work Type | Topic |
|
|
106
|
+
|------------|-------|-----------|-------|
|
|
107
|
+
| investigation | `/start-investigation` | bugfix | {topic} |
|
|
108
|
+
| specification | `/start-specification` | bugfix | {topic} |
|
|
109
|
+
| planning | `/start-planning` | bugfix | {topic} |
|
|
110
|
+
| implementation | `/start-implementation` | bugfix | {topic} |
|
|
111
|
+
| review | `/start-review` | bugfix | {topic} |
|
|
112
|
+
|
|
113
|
+
Skills receive positional arguments: `$0` = work_type, `$1` = topic.
|
|
114
|
+
|
|
115
|
+
**Example**: `/start-specification bugfix {topic}` — skill skips discovery, validates topic, proceeds to processing.
|
|
116
|
+
|
|
117
|
+
Invoke the skill from the table with the work type and topic as positional arguments.
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
# Feature Routing
|
|
2
|
+
|
|
3
|
+
*Reference for **[workflow-start](../SKILL.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Feature development is topic-centric. A single topic flows through the pipeline: Discussion → Specification → Planning → Implementation → Review. This reference shows in-progress features and offers options to continue or start new.
|
|
8
|
+
|
|
9
|
+
## Display Feature State
|
|
10
|
+
|
|
11
|
+
Using the discovery output, check if there are any features in progress.
|
|
12
|
+
|
|
13
|
+
#### If no features exist
|
|
14
|
+
|
|
15
|
+
> *Output the next fenced block as a code block:*
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
Features
|
|
19
|
+
|
|
20
|
+
No features in progress.
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
> *Output the next fenced block as markdown (not a code block):*
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
· · · · · · · · · · · ·
|
|
27
|
+
Ready to start a new feature.
|
|
28
|
+
|
|
29
|
+
- **`y`/`yes`** — Start a new feature
|
|
30
|
+
- **`n`/`no`** — Go back to work type selection
|
|
31
|
+
· · · · · · · · · · · ·
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
**STOP.** Wait for user response.
|
|
35
|
+
|
|
36
|
+
#### If yes
|
|
37
|
+
|
|
38
|
+
Invoke `start-feature`. It will set `work_type: feature` automatically.
|
|
39
|
+
|
|
40
|
+
#### If no
|
|
41
|
+
|
|
42
|
+
→ Return to **[the skill](../SKILL.md)** for **Step 2** (work type selection).
|
|
43
|
+
|
|
44
|
+
#### If features exist
|
|
45
|
+
|
|
46
|
+
> *Output the next fenced block as a code block:*
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
Features
|
|
50
|
+
|
|
51
|
+
{feature_count} feature(s) in progress:
|
|
52
|
+
|
|
53
|
+
1. {topic:(titlecase)}
|
|
54
|
+
└─ Next: {next_phase}
|
|
55
|
+
|
|
56
|
+
2. ...
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Build tree from `features.topics` array. Each topic shows `name` (titlecased) and `next_phase`.
|
|
60
|
+
|
|
61
|
+
## Build Menu Options
|
|
62
|
+
|
|
63
|
+
Build a numbered menu with all in-progress features plus option to start new. The description maps `next_phase`:
|
|
64
|
+
|
|
65
|
+
| next_phase | Description |
|
|
66
|
+
|------------|-------------|
|
|
67
|
+
| discussion | discussion in-progress |
|
|
68
|
+
| specification | ready for specification |
|
|
69
|
+
| planning | ready for planning |
|
|
70
|
+
| implementation | ready for implementation |
|
|
71
|
+
| review | ready for review |
|
|
72
|
+
| done | pipeline complete |
|
|
73
|
+
|
|
74
|
+
> *Output the next fenced block as markdown (not a code block):*
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
· · · · · · · · · · · ·
|
|
78
|
+
What would you like to do?
|
|
79
|
+
|
|
80
|
+
1. Continue "Auth Flow" — discussion in-progress
|
|
81
|
+
2. Continue "Caching" — ready for specification
|
|
82
|
+
3. Continue "Notifications" — ready for planning
|
|
83
|
+
4. Start new feature
|
|
84
|
+
|
|
85
|
+
Select an option (enter number):
|
|
86
|
+
· · · · · · · · · · · ·
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Recreate with actual topics and states from discovery.
|
|
90
|
+
|
|
91
|
+
**STOP.** Wait for user response.
|
|
92
|
+
|
|
93
|
+
## Route Based on Selection
|
|
94
|
+
|
|
95
|
+
Parse the user's selection, then follow the instructions below.
|
|
96
|
+
|
|
97
|
+
#### If "start new feature"
|
|
98
|
+
|
|
99
|
+
Invoke `/start-feature`. It will set `work_type: feature` automatically.
|
|
100
|
+
|
|
101
|
+
#### If continuing existing feature
|
|
102
|
+
|
|
103
|
+
Map `next_phase` to the appropriate skill:
|
|
104
|
+
|
|
105
|
+
| next_phase | Skill | Work Type | Topic |
|
|
106
|
+
|------------|-------|-----------|-------|
|
|
107
|
+
| discussion | `/start-discussion` | feature | {topic} |
|
|
108
|
+
| specification | `/start-specification` | feature | {topic} |
|
|
109
|
+
| planning | `/start-planning` | feature | {topic} |
|
|
110
|
+
| implementation | `/start-implementation` | feature | {topic} |
|
|
111
|
+
| review | `/start-review` | feature | {topic} |
|
|
112
|
+
|
|
113
|
+
Skills receive positional arguments: `$0` = work_type, `$1` = topic.
|
|
114
|
+
|
|
115
|
+
**Example**: `/start-specification feature {topic}` — skill skips discovery, validates topic, proceeds to processing.
|
|
116
|
+
|
|
117
|
+
Invoke the skill from the table with the work type and topic as positional arguments.
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# Greenfield Routing
|
|
2
|
+
|
|
3
|
+
*Reference for **[workflow-start](../SKILL.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Greenfield development is phase-centric. All artifacts in a phase complete before moving to the next. This reference shows what's actionable in each phase and offers options to continue existing work or start new.
|
|
8
|
+
|
|
9
|
+
## Display Greenfield State
|
|
10
|
+
|
|
11
|
+
Using the discovery output, build the phase-centric view.
|
|
12
|
+
|
|
13
|
+
> *Output the next fenced block as a code block:*
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
Greenfield Overview
|
|
17
|
+
|
|
18
|
+
Research:
|
|
19
|
+
@if(research_count > 0)
|
|
20
|
+
@foreach(file in research.files)
|
|
21
|
+
└─ {file}
|
|
22
|
+
@endforeach
|
|
23
|
+
@else
|
|
24
|
+
(none)
|
|
25
|
+
@endif
|
|
26
|
+
|
|
27
|
+
Discussions:
|
|
28
|
+
@if(greenfield.discussions.count > 0)
|
|
29
|
+
@foreach(disc in greenfield.discussions.files)
|
|
30
|
+
└─ {disc.name:(titlecase)} ({disc.status})
|
|
31
|
+
@endforeach
|
|
32
|
+
@else
|
|
33
|
+
(none)
|
|
34
|
+
@endif
|
|
35
|
+
|
|
36
|
+
Specifications:
|
|
37
|
+
@if(greenfield.specifications.count > 0)
|
|
38
|
+
@foreach(spec in greenfield.specifications.files)
|
|
39
|
+
└─ {spec.name:(titlecase)}
|
|
40
|
+
└─ Spec: {spec.status} ({spec.type})
|
|
41
|
+
@endforeach
|
|
42
|
+
@else
|
|
43
|
+
(none)
|
|
44
|
+
@endif
|
|
45
|
+
|
|
46
|
+
Plans:
|
|
47
|
+
@if(greenfield.plans.count > 0)
|
|
48
|
+
@foreach(plan in greenfield.plans.files)
|
|
49
|
+
└─ {plan.name:(titlecase)}
|
|
50
|
+
└─ Plan: {plan.status}
|
|
51
|
+
@endforeach
|
|
52
|
+
@else
|
|
53
|
+
(none)
|
|
54
|
+
@endif
|
|
55
|
+
|
|
56
|
+
Implementation:
|
|
57
|
+
@if(greenfield.implementation.count > 0)
|
|
58
|
+
@foreach(impl in greenfield.implementation.files)
|
|
59
|
+
└─ {impl.topic:(titlecase)}
|
|
60
|
+
└─ Implementation: {impl.status}
|
|
61
|
+
@endforeach
|
|
62
|
+
@else
|
|
63
|
+
(none)
|
|
64
|
+
@endif
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Build Menu Options
|
|
68
|
+
|
|
69
|
+
Build a numbered menu of actionable items. The verb depends on the state:
|
|
70
|
+
|
|
71
|
+
| State | Verb |
|
|
72
|
+
|-------|------|
|
|
73
|
+
| In-progress discussion | Continue |
|
|
74
|
+
| In-progress specification | Continue |
|
|
75
|
+
| Concluded spec (feature), no plan | Start planning for |
|
|
76
|
+
| In-progress plan | Continue |
|
|
77
|
+
| Concluded plan, no implementation | Start implementation of |
|
|
78
|
+
| In-progress implementation | Continue |
|
|
79
|
+
| Completed implementation, no review | Start review for |
|
|
80
|
+
| Research exists | Continue research |
|
|
81
|
+
| No discussions yet | Start research / Start new discussion |
|
|
82
|
+
|
|
83
|
+
**Specification phase is different in greenfield**: Don't offer "Start specification from {topic}". Instead, when concluded discussions exist, offer "Start specification" which invokes `/start-specification`. The specification skill will analyze ALL concluded discussions and suggest groupings — multiple discussions may become one spec, or split differently.
|
|
84
|
+
|
|
85
|
+
**Specification readiness:**
|
|
86
|
+
- All discussions concluded → "Start specification" (recommended)
|
|
87
|
+
- Some discussions still in-progress → "Start specification" with note: "(some discussions still in-progress)"
|
|
88
|
+
|
|
89
|
+
Always include "Start new discussion" as a final option.
|
|
90
|
+
|
|
91
|
+
> *Output the next fenced block as markdown (not a code block):*
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
· · · · · · · · · · · ·
|
|
95
|
+
What would you like to do?
|
|
96
|
+
|
|
97
|
+
1. Continue "Auth Flow" discussion — in-progress
|
|
98
|
+
2. Continue "Data Model" specification — in-progress
|
|
99
|
+
3. Start planning for "User Profiles" — spec concluded
|
|
100
|
+
4. Continue "Caching" plan — in-progress
|
|
101
|
+
5. Start implementation of "Notifications" — plan concluded
|
|
102
|
+
6. Start specification — 3 discussions concluded (recommended)
|
|
103
|
+
7. Continue research
|
|
104
|
+
8. Start new discussion
|
|
105
|
+
|
|
106
|
+
Select an option (enter number):
|
|
107
|
+
· · · · · · · · · · · ·
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
Recreate with actual topics and states from discovery. Only include options that apply based on current state.
|
|
111
|
+
|
|
112
|
+
**STOP.** Wait for user response.
|
|
113
|
+
|
|
114
|
+
## Route Based on Selection
|
|
115
|
+
|
|
116
|
+
Parse the user's selection, then follow the instructions below the table to invoke the appropriate skill.
|
|
117
|
+
|
|
118
|
+
| Selection | Skill | Work Type | Topic |
|
|
119
|
+
|-----------|-------|-----------|-------|
|
|
120
|
+
| Continue discussion | `/start-discussion` | greenfield | {topic} |
|
|
121
|
+
| Continue specification | `/start-specification` | greenfield | — |
|
|
122
|
+
| Continue plan | `/start-planning` | greenfield | {topic} |
|
|
123
|
+
| Continue implementation | `/start-implementation` | greenfield | {topic} |
|
|
124
|
+
| Continue research | `/start-research` | greenfield | — |
|
|
125
|
+
| Start specification | `/start-specification` | greenfield | — |
|
|
126
|
+
| Start planning | `/start-planning` | greenfield | {topic} |
|
|
127
|
+
| Start implementation | `/start-implementation` | greenfield | {topic} |
|
|
128
|
+
| Start review | `/start-review` | greenfield | {topic} |
|
|
129
|
+
| Start research | `/start-research` | greenfield | — |
|
|
130
|
+
| Start new discussion | `/start-discussion` | greenfield | — |
|
|
131
|
+
|
|
132
|
+
Skills receive positional arguments: `$0` = work_type, `$1` = topic.
|
|
133
|
+
|
|
134
|
+
**With arguments** (bridge mode): `/start-discussion greenfield {topic}` — skill skips discovery, validates topic, proceeds to processing.
|
|
135
|
+
|
|
136
|
+
**Without arguments** (discovery mode): `/start-discussion greenfield` — skill runs discovery with work_type context.
|
|
137
|
+
|
|
138
|
+
**Note on specification**: Unlike feature/bugfix pipelines, greenfield specification is NOT topic-centric. Don't pass a topic. Always route through discovery mode so analysis can detect changed discussions.
|
|
139
|
+
|
|
140
|
+
Invoke the skill from the table with the topic and work type as positional arguments. If no topic or work type is shown, invoke the skill bare.
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# Work Type Selection
|
|
2
|
+
|
|
3
|
+
*Reference for **[workflow-start](../SKILL.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Present the current state and ask the user which work type they want to work on.
|
|
8
|
+
|
|
9
|
+
## Display State Overview
|
|
10
|
+
|
|
11
|
+
Using the discovery output, render the appropriate state display.
|
|
12
|
+
|
|
13
|
+
#### If `state.has_any_work` is false
|
|
14
|
+
|
|
15
|
+
> *Output the next fenced block as a code block:*
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
Workflow Overview
|
|
19
|
+
|
|
20
|
+
No existing work found. Ready to start fresh.
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
#### If `state.has_any_work` is true
|
|
24
|
+
|
|
25
|
+
Build the summary from `state` counts. Only show sections with work.
|
|
26
|
+
|
|
27
|
+
> *Output the next fenced block as a code block:*
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
Workflow Overview
|
|
31
|
+
|
|
32
|
+
@if(state.greenfield has any counts > 0)
|
|
33
|
+
Greenfield:
|
|
34
|
+
@if(research_count > 0)└─ Research: {research_count} @if(research_count == 1)file@else files@endif
|
|
35
|
+
@endif
|
|
36
|
+
@if(discussion_count > 0)└─ Discussions: {discussion_count} @if(discussion_concluded > 0)({discussion_concluded} concluded)@endif
|
|
37
|
+
@endif
|
|
38
|
+
@if(specification_count > 0)└─ Specifications: {specification_count} @if(specification_concluded > 0)({specification_concluded} concluded)@endif
|
|
39
|
+
@endif
|
|
40
|
+
@if(plan_count > 0)└─ Plans: {plan_count} @if(plan_concluded > 0)({plan_concluded} concluded)@endif
|
|
41
|
+
@endif
|
|
42
|
+
@if(implementation_count > 0)└─ Implementations: {implementation_count} @if(implementation_completed > 0)({implementation_completed} completed)@endif
|
|
43
|
+
@endif
|
|
44
|
+
@endif
|
|
45
|
+
|
|
46
|
+
@if(feature_count > 0)
|
|
47
|
+
Features: {feature_count} in progress
|
|
48
|
+
@endif
|
|
49
|
+
|
|
50
|
+
@if(bugfix_count > 0)
|
|
51
|
+
Bugfixes: {bugfix_count} in progress
|
|
52
|
+
@endif
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Use values from `state.greenfield.*`, `state.feature_count`, `state.bugfix_count`.
|
|
56
|
+
|
|
57
|
+
## Ask Work Type
|
|
58
|
+
|
|
59
|
+
> *Output the next fenced block as markdown (not a code block):*
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
· · · · · · · · · · · ·
|
|
63
|
+
What would you like to work on?
|
|
64
|
+
|
|
65
|
+
1. **Build the product** — Greenfield development (phase-centric, multi-session)
|
|
66
|
+
2. **Add a feature** — Feature work (topic-centric, linear pipeline)
|
|
67
|
+
3. **Fix a bug** — Bugfix (investigation-centric, focused pipeline)
|
|
68
|
+
· · · · · · · · · · · ·
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
**STOP.** Wait for user response.
|
|
72
|
+
|
|
73
|
+
## Process Selection
|
|
74
|
+
|
|
75
|
+
Map the user's response to a work type:
|
|
76
|
+
|
|
77
|
+
- "1", "build", "greenfield", "product" → work type is **greenfield**
|
|
78
|
+
- "2", "feature", "add" → work type is **feature**
|
|
79
|
+
- "3", "bug", "fix", "bugfix" → work type is **bugfix**
|
|
80
|
+
|
|
81
|
+
If the response doesn't map clearly, ask for clarification.
|
|
82
|
+
|
|
83
|
+
→ Return to **[the skill](../SKILL.md)** with the selected work type.
|