@leeovery/claude-technical-workflows 2.1.30 → 2.1.32
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 +36 -5
- package/hooks/workflows/compact-recovery.sh +81 -0
- package/hooks/workflows/session-cleanup.sh +26 -0
- package/hooks/workflows/session-env.sh +17 -0
- package/hooks/workflows/system-check.sh +100 -0
- package/hooks/workflows/write-session-state.sh +66 -0
- package/package.json +1 -1
- package/skills/begin-implementation/SKILL.md +158 -0
- package/skills/begin-planning/SKILL.md +87 -0
- package/skills/continue-feature/SKILL.md +177 -0
- package/skills/continue-feature/references/detect-phase.md +92 -0
- package/skills/continue-feature/references/invoke-implementation.md +43 -0
- package/skills/continue-feature/references/invoke-planning.md +43 -0
- package/skills/continue-feature/references/invoke-specification.md +55 -0
- package/skills/continue-feature/references/phase-bridge.md +58 -0
- package/skills/continue-feature/scripts/discovery.sh +216 -0
- package/skills/link-dependencies/SKILL.md +6 -0
- package/skills/start-discussion/SKILL.md +22 -1
- package/skills/start-feature/SKILL.md +100 -38
- package/skills/start-feature/references/gather-feature-context.md +60 -0
- package/skills/start-feature/references/invoke-discussion.md +24 -0
- package/skills/start-feature/references/phase-bridge.md +37 -0
- package/skills/start-implementation/SKILL.md +22 -1
- package/skills/start-planning/SKILL.md +22 -1
- package/skills/start-research/SKILL.md +23 -1
- package/skills/start-review/SKILL.md +22 -1
- package/skills/start-specification/SKILL.md +8 -2
- package/skills/start-specification/references/handoffs/continue-concluded.md +15 -0
- package/skills/start-specification/references/handoffs/continue.md +15 -0
- package/skills/start-specification/references/handoffs/create-with-incorporation.md +15 -0
- package/skills/start-specification/references/handoffs/create.md +15 -0
- package/skills/start-specification/references/handoffs/unify-with-incorporation.md +15 -0
- package/skills/start-specification/references/handoffs/unify.md +15 -0
- package/skills/status/SKILL.md +7 -1
- package/skills/technical-planning/SKILL.md +2 -2
- package/skills/technical-planning/references/author-tasks.md +3 -1
- package/skills/technical-planning/references/define-tasks.md +35 -3
- package/skills/technical-planning/references/output-formats/tick/about.md +5 -0
- package/skills/technical-planning/references/output-formats/tick/authoring.md +11 -0
- package/skills/technical-planning/references/output-formats/tick/updating.md +2 -0
- package/skills/technical-planning/references/plan-construction.md +17 -8
- package/skills/technical-planning/references/plan-index-schema.md +6 -3
- package/skills/view-plan/SKILL.md +6 -0
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
name: link-dependencies
|
|
3
3
|
description: "Scan all plans and wire up cross-topic dependencies. Finds unresolved external dependencies, matches them to tasks in other plans, and updates both the plan index and output format."
|
|
4
4
|
disable-model-invocation: true
|
|
5
|
+
hooks:
|
|
6
|
+
PreToolUse:
|
|
7
|
+
- hooks:
|
|
8
|
+
- type: command
|
|
9
|
+
command: "$CLAUDE_PROJECT_DIR/.claude/hooks/workflows/system-check.sh"
|
|
10
|
+
once: true
|
|
5
11
|
---
|
|
6
12
|
|
|
7
13
|
Link cross-topic dependencies across all existing plans.
|
|
@@ -2,7 +2,13 @@
|
|
|
2
2
|
name: start-discussion
|
|
3
3
|
description: "Start a technical discussion. Discovers research and existing discussions, offers multiple entry paths, and invokes the technical-discussion skill."
|
|
4
4
|
disable-model-invocation: true
|
|
5
|
-
allowed-tools: Bash(.claude/skills/start-discussion/scripts/discovery.sh), Bash(mkdir -p docs/workflow/.cache), Bash(rm docs/workflow/.cache/research-analysis.md)
|
|
5
|
+
allowed-tools: Bash(.claude/skills/start-discussion/scripts/discovery.sh), Bash(mkdir -p docs/workflow/.cache), Bash(rm docs/workflow/.cache/research-analysis.md), Bash(.claude/hooks/workflows/write-session-state.sh)
|
|
6
|
+
hooks:
|
|
7
|
+
PreToolUse:
|
|
8
|
+
- hooks:
|
|
9
|
+
- type: command
|
|
10
|
+
command: "$CLAUDE_PROJECT_DIR/.claude/hooks/workflows/system-check.sh"
|
|
11
|
+
once: true
|
|
6
12
|
---
|
|
7
13
|
|
|
8
14
|
Invoke the **technical-discussion** skill for this conversation.
|
|
@@ -162,5 +168,20 @@ Load **[gather-context.md](references/gather-context.md)** and follow its instru
|
|
|
162
168
|
|
|
163
169
|
## Step 7: Invoke the Skill
|
|
164
170
|
|
|
171
|
+
Before invoking the processing skill, save a session bookmark.
|
|
172
|
+
|
|
173
|
+
> *Output the next fenced block as a code block:*
|
|
174
|
+
|
|
175
|
+
```
|
|
176
|
+
Saving session state so Claude can pick up where it left off if the conversation is compacted.
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
181
|
+
"{topic}" \
|
|
182
|
+
"skills/technical-discussion/SKILL.md" \
|
|
183
|
+
"docs/workflow/discussion/{topic}.md"
|
|
184
|
+
```
|
|
185
|
+
|
|
165
186
|
Load **[invoke-skill.md](references/invoke-skill.md)** and follow its instructions as written.
|
|
166
187
|
|
|
@@ -1,82 +1,144 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: start-feature
|
|
3
|
-
description: "Start a feature
|
|
3
|
+
description: "Start a new feature through the full pipeline. Gathers context via structured interview, creates a discussion, then bridges to continue-feature for specification, planning, and implementation."
|
|
4
4
|
disable-model-invocation: true
|
|
5
|
+
allowed-tools: Bash(ls docs/workflow/discussion/), Bash(.claude/hooks/workflows/write-session-state.sh)
|
|
6
|
+
hooks:
|
|
7
|
+
PreToolUse:
|
|
8
|
+
- hooks:
|
|
9
|
+
- type: command
|
|
10
|
+
command: "$CLAUDE_PROJECT_DIR/.claude/hooks/workflows/system-check.sh"
|
|
11
|
+
once: true
|
|
5
12
|
---
|
|
6
13
|
|
|
7
|
-
|
|
14
|
+
Start a new feature and route it through the pipeline: Discussion → Specification → Planning → Implementation.
|
|
15
|
+
|
|
16
|
+
> **⚠️ ZERO OUTPUT RULE**: Do not narrate your processing. Produce no output until a step or reference file explicitly specifies display content. No "proceeding with...", no discovery summaries, no routing decisions, no transition text. Your first output must be content explicitly called for by the instructions.
|
|
8
17
|
|
|
9
18
|
## Instructions
|
|
10
19
|
|
|
11
20
|
Follow these steps EXACTLY as written. Do not skip steps or combine them.
|
|
12
21
|
|
|
13
|
-
This
|
|
22
|
+
**CRITICAL**: This guidance is mandatory.
|
|
23
|
+
|
|
24
|
+
- After each user interaction, STOP and wait for their response before proceeding
|
|
25
|
+
- Never assume or anticipate user choices
|
|
26
|
+
- Even if the user's initial prompt seems to answer a question, still confirm with them at the appropriate step
|
|
27
|
+
- Complete each step fully before moving to the next
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Step 0: Run Migrations
|
|
32
|
+
|
|
33
|
+
**This step is mandatory. You must complete it before proceeding.**
|
|
34
|
+
|
|
35
|
+
Invoke the `/migrate` skill and assess its output.
|
|
36
|
+
|
|
37
|
+
**If files were updated**: STOP and wait for the user to review the changes (e.g., via `git diff`) and confirm before proceeding to Step 1. Do not continue automatically.
|
|
38
|
+
|
|
39
|
+
**If no updates needed**: Proceed to Step 1.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Resuming After Context Refresh
|
|
44
|
+
|
|
45
|
+
Context refresh (compaction) summarizes the conversation, losing procedural detail. When you detect a context refresh has occurred — the conversation feels abruptly shorter, you lack memory of recent steps, or a summary precedes this message — follow this recovery protocol:
|
|
46
|
+
|
|
47
|
+
1. **Re-read this skill file completely.** Do not rely on your summary of it. The full process, steps, and rules must be reloaded.
|
|
48
|
+
2. **Identify the topic.** Check conversation history for the topic name. If unknown, check `docs/workflow/discussion/` for recently modified files via `git log --oneline -5`.
|
|
49
|
+
3. **Determine current step from artifacts:**
|
|
50
|
+
- No discussion file exists → resume at **Step 1**
|
|
51
|
+
- Discussion exists with `status: in-progress` → resume at **Step 3** (re-invoke technical-discussion)
|
|
52
|
+
- Discussion exists with `status: concluded` → resume at **Step 4** (phase bridge)
|
|
53
|
+
4. **Announce your position** to the user before continuing: what step you believe you're at, what's been completed, and what comes next. Wait for confirmation.
|
|
54
|
+
|
|
55
|
+
Do not guess at progress or continue from memory. The files on disk and git history are authoritative — your recollection is not.
|
|
56
|
+
|
|
57
|
+
---
|
|
14
58
|
|
|
15
59
|
## Step 1: Gather Feature Context
|
|
16
60
|
|
|
17
|
-
|
|
61
|
+
Load **[gather-feature-context.md](references/gather-feature-context.md)** and follow its instructions.
|
|
18
62
|
|
|
19
|
-
|
|
20
|
-
- Brief description of what you're building
|
|
63
|
+
→ Proceed to **Step 2**.
|
|
21
64
|
|
|
22
|
-
|
|
23
|
-
- Core functionality to implement
|
|
24
|
-
- Edge cases you're already aware of
|
|
65
|
+
---
|
|
25
66
|
|
|
26
|
-
|
|
27
|
-
- How this integrates with existing code
|
|
28
|
-
- Technical decisions already made
|
|
29
|
-
- Conventions to follow
|
|
67
|
+
## Step 2: Topic Name and Conflict Check
|
|
30
68
|
|
|
31
|
-
|
|
69
|
+
Based on the feature description, suggest a topic name:
|
|
32
70
|
|
|
33
|
-
|
|
71
|
+
> *Output the next fenced block as a code block:*
|
|
34
72
|
|
|
35
|
-
|
|
73
|
+
```
|
|
74
|
+
Suggested topic name: {suggested-topic:(kebabcase)}
|
|
36
75
|
|
|
76
|
+
This will create: docs/workflow/discussion/{suggested-topic}.md
|
|
37
77
|
```
|
|
38
|
-
Based on what you've described, I'd suggest the topic name: {suggested-topic}
|
|
39
78
|
|
|
40
|
-
|
|
79
|
+
> *Output the next fenced block as markdown (not a code block):*
|
|
41
80
|
|
|
81
|
+
```
|
|
82
|
+
· · · · · · · · · · · ·
|
|
42
83
|
Is this name okay, or would you prefer something else?
|
|
84
|
+
· · · · · · · · · · · ·
|
|
43
85
|
```
|
|
44
86
|
|
|
45
|
-
|
|
87
|
+
**STOP.** Wait for user response.
|
|
46
88
|
|
|
47
|
-
|
|
89
|
+
Once the topic name is confirmed, check for naming conflicts:
|
|
48
90
|
|
|
49
91
|
```bash
|
|
50
|
-
ls docs/workflow/
|
|
92
|
+
ls docs/workflow/discussion/
|
|
51
93
|
```
|
|
52
94
|
|
|
53
|
-
If a
|
|
54
|
-
- Append to existing specification
|
|
55
|
-
- Choose a different name
|
|
56
|
-
- Replace existing specification
|
|
95
|
+
If a discussion with the same name exists, inform the user:
|
|
57
96
|
|
|
58
|
-
|
|
97
|
+
> *Output the next fenced block as markdown (not a code block):*
|
|
59
98
|
|
|
60
|
-
|
|
99
|
+
```
|
|
100
|
+
· · · · · · · · · · · ·
|
|
101
|
+
A discussion named "{topic}" already exists.
|
|
61
102
|
|
|
103
|
+
- **`r`/`resume`** — Resume the existing discussion
|
|
104
|
+
- **`n`/`new`** — Choose a different name
|
|
105
|
+
· · · · · · · · · · · ·
|
|
62
106
|
```
|
|
63
|
-
Feature specification for: {topic}
|
|
64
107
|
|
|
65
|
-
|
|
108
|
+
**STOP.** Wait for user response.
|
|
66
109
|
|
|
67
|
-
|
|
110
|
+
If resuming, check the discussion status. If concluded → skip to Step 4. If in-progress → proceed to Step 3.
|
|
111
|
+
|
|
112
|
+
→ Proceed to **Step 3**.
|
|
68
113
|
|
|
69
114
|
---
|
|
70
115
|
|
|
71
|
-
|
|
116
|
+
## Step 3: Invoke Discussion
|
|
117
|
+
|
|
118
|
+
Before invoking the processing skill, save a session bookmark.
|
|
119
|
+
|
|
120
|
+
> *Output the next fenced block as a code block:*
|
|
121
|
+
|
|
122
|
+
```
|
|
123
|
+
Saving session state so Claude can pick up where it left off and continue the feature pipeline if the conversation is compacted.
|
|
124
|
+
```
|
|
72
125
|
|
|
73
|
-
|
|
74
|
-
|
|
126
|
+
```bash
|
|
127
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
128
|
+
"{topic}" \
|
|
129
|
+
"skills/technical-discussion/SKILL.md" \
|
|
130
|
+
"docs/workflow/discussion/{topic}.md" \
|
|
131
|
+
--pipeline "This session is part of the feature pipeline. After the discussion concludes, load and follow the phase bridge at skills/start-feature/references/phase-bridge.md for topic '{topic}'."
|
|
75
132
|
```
|
|
76
133
|
|
|
77
|
-
|
|
134
|
+
Load **[invoke-discussion.md](references/invoke-discussion.md)** and follow its instructions.
|
|
135
|
+
|
|
136
|
+
**CRITICAL**: When the discussion concludes (status becomes "concluded"), you MUST proceed to **Step 4** below. Do not end the session — the feature pipeline continues to specification via the phase bridge.
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Step 4: Phase Bridge
|
|
141
|
+
|
|
142
|
+
Load **[phase-bridge.md](references/phase-bridge.md)** and follow its instructions.
|
|
78
143
|
|
|
79
|
-
|
|
80
|
-
- Output is a standard specification file at `docs/workflow/specification/{topic}/specification.md`
|
|
81
|
-
- From there, the user can proceed to `/start-planning` as normal
|
|
82
|
-
- This path skips formal discussion documentation - use the full workflow for complex features that need debate captured
|
|
144
|
+
The bridge will enter plan mode with instructions to invoke continue-feature for the topic in the next session.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Gather Feature Context
|
|
2
|
+
|
|
3
|
+
*Reference for **[start-feature](../SKILL.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Gather context about the feature through a structured interview. Ask questions one at a time with STOP gates between each.
|
|
8
|
+
|
|
9
|
+
**Note**: If the user has already provided context in their initial message, acknowledge what they've shared and skip questions that are already answered. Only ask what's missing.
|
|
10
|
+
|
|
11
|
+
## Question 1: What are you building?
|
|
12
|
+
|
|
13
|
+
> *Output the next fenced block as a code block:*
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
What feature are you adding?
|
|
17
|
+
|
|
18
|
+
- Brief description of what you're building
|
|
19
|
+
- What problem does it solve?
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**STOP.** Wait for user response.
|
|
23
|
+
|
|
24
|
+
## Question 2: What's the scope?
|
|
25
|
+
|
|
26
|
+
> *Output the next fenced block as a code block:*
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
What's the scope?
|
|
30
|
+
|
|
31
|
+
- Core functionality to implement
|
|
32
|
+
- Known edge cases or constraints
|
|
33
|
+
- What's explicitly out of scope?
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
**STOP.** Wait for user response.
|
|
37
|
+
|
|
38
|
+
## Question 3: Integration and constraints
|
|
39
|
+
|
|
40
|
+
> *Output the next fenced block as a code block:*
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
Any constraints or integration points?
|
|
44
|
+
|
|
45
|
+
- How does this integrate with existing code?
|
|
46
|
+
- Technical decisions already made
|
|
47
|
+
- Conventions or patterns to follow
|
|
48
|
+
- External dependencies or APIs
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**STOP.** Wait for user response.
|
|
52
|
+
|
|
53
|
+
## Compile Context
|
|
54
|
+
|
|
55
|
+
After gathering answers, compile the feature context into a structured summary that will be passed to the discussion skill. Do not output the summary — it will be used in the next step.
|
|
56
|
+
|
|
57
|
+
The compiled context should capture:
|
|
58
|
+
- **Feature**: What is being built and why
|
|
59
|
+
- **Scope**: Core functionality, edge cases, out-of-scope
|
|
60
|
+
- **Constraints**: Integration points, decisions, conventions
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Invoke Discussion
|
|
2
|
+
|
|
3
|
+
*Reference for **[start-feature](../SKILL.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Invoke the discussion skill with the gathered feature context.
|
|
8
|
+
|
|
9
|
+
## Handoff
|
|
10
|
+
|
|
11
|
+
Invoke the [technical-discussion](../../technical-discussion/SKILL.md) skill:
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
Technical discussion for: {topic}
|
|
15
|
+
|
|
16
|
+
{compiled feature context from gather-feature-context}
|
|
17
|
+
|
|
18
|
+
PIPELINE CONTINUATION — When this discussion concludes (status: concluded),
|
|
19
|
+
you MUST return to the start-feature skill and execute Step 4 (Phase Bridge).
|
|
20
|
+
Load: skills/start-feature/references/phase-bridge.md
|
|
21
|
+
Do not end the session after the discussion — the feature pipeline continues.
|
|
22
|
+
|
|
23
|
+
Invoke the technical-discussion skill.
|
|
24
|
+
```
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Phase Bridge
|
|
2
|
+
|
|
3
|
+
*Reference for **[start-feature](../SKILL.md)***
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
The phase bridge clears context between the discussion phase and the rest of the pipeline. This is necessary because discussion can consume significant context, and starting fresh prevents degradation.
|
|
8
|
+
|
|
9
|
+
## Enter Plan Mode
|
|
10
|
+
|
|
11
|
+
Enter plan mode and write the following plan:
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
# Continue Feature: {topic}
|
|
15
|
+
|
|
16
|
+
The discussion for "{topic}" has concluded. The next session should
|
|
17
|
+
continue the feature pipeline from specification onwards.
|
|
18
|
+
|
|
19
|
+
## Instructions
|
|
20
|
+
|
|
21
|
+
1. Invoke the `/continue-feature` skill for topic "{topic}"
|
|
22
|
+
2. The skill will detect that a concluded discussion exists and route to specification
|
|
23
|
+
|
|
24
|
+
## Context
|
|
25
|
+
|
|
26
|
+
- Topic: {topic}
|
|
27
|
+
- Completed phase: discussion
|
|
28
|
+
- Expected next phase: specification
|
|
29
|
+
- Discussion: docs/workflow/discussion/{topic}.md
|
|
30
|
+
|
|
31
|
+
## How to proceed
|
|
32
|
+
|
|
33
|
+
Clear context and continue. Claude will invoke continue-feature
|
|
34
|
+
with the topic above and route to the specification phase automatically.
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Exit plan mode. The user will approve and clear context, and the fresh session will pick up with continue-feature routing to specification.
|
|
@@ -2,7 +2,13 @@
|
|
|
2
2
|
name: start-implementation
|
|
3
3
|
description: "Start an implementation session from an existing plan. Discovers available plans, checks environment setup, and invokes the technical-implementation skill."
|
|
4
4
|
disable-model-invocation: true
|
|
5
|
-
allowed-tools: Bash(.claude/skills/start-implementation/scripts/discovery.sh)
|
|
5
|
+
allowed-tools: Bash(.claude/skills/start-implementation/scripts/discovery.sh), Bash(.claude/hooks/workflows/write-session-state.sh)
|
|
6
|
+
hooks:
|
|
7
|
+
PreToolUse:
|
|
8
|
+
- hooks:
|
|
9
|
+
- type: command
|
|
10
|
+
command: "$CLAUDE_PROJECT_DIR/.claude/hooks/workflows/system-check.sh"
|
|
11
|
+
once: true
|
|
6
12
|
---
|
|
7
13
|
|
|
8
14
|
Invoke the **technical-implementation** skill for this conversation.
|
|
@@ -387,6 +393,21 @@ Are there any environment setup instructions I should follow before implementati
|
|
|
387
393
|
|
|
388
394
|
## Step 6: Invoke the Skill
|
|
389
395
|
|
|
396
|
+
Before invoking the processing skill, save a session bookmark.
|
|
397
|
+
|
|
398
|
+
> *Output the next fenced block as a code block:*
|
|
399
|
+
|
|
400
|
+
```
|
|
401
|
+
Saving session state so Claude can pick up where it left off if the conversation is compacted.
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
```bash
|
|
405
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
406
|
+
"{topic}" \
|
|
407
|
+
"skills/technical-implementation/SKILL.md" \
|
|
408
|
+
"docs/workflow/implementation/{topic}/tracking.md"
|
|
409
|
+
```
|
|
410
|
+
|
|
390
411
|
After completing the steps above, this skill's purpose is fulfilled.
|
|
391
412
|
|
|
392
413
|
Invoke the [technical-implementation](../technical-implementation/SKILL.md) skill for your next instructions. Do not act on the gathered information until the skill is loaded - it contains the instructions for how to proceed.
|
|
@@ -2,7 +2,13 @@
|
|
|
2
2
|
name: start-planning
|
|
3
3
|
description: "Start a planning session from an existing specification. Discovers available specifications, gathers context, and invokes the technical-planning skill."
|
|
4
4
|
disable-model-invocation: true
|
|
5
|
-
allowed-tools: Bash(.claude/skills/start-planning/scripts/discovery.sh)
|
|
5
|
+
allowed-tools: Bash(.claude/skills/start-planning/scripts/discovery.sh), Bash(.claude/hooks/workflows/write-session-state.sh)
|
|
6
|
+
hooks:
|
|
7
|
+
PreToolUse:
|
|
8
|
+
- hooks:
|
|
9
|
+
- type: command
|
|
10
|
+
command: "$CLAUDE_PROJECT_DIR/.claude/hooks/workflows/system-check.sh"
|
|
11
|
+
once: true
|
|
6
12
|
---
|
|
7
13
|
|
|
8
14
|
Invoke the **technical-planning** skill for this conversation.
|
|
@@ -177,4 +183,19 @@ Load **[cross-cutting-context.md](references/cross-cutting-context.md)** and fol
|
|
|
177
183
|
|
|
178
184
|
## Step 7: Invoke the Skill
|
|
179
185
|
|
|
186
|
+
Before invoking the processing skill, save a session bookmark.
|
|
187
|
+
|
|
188
|
+
> *Output the next fenced block as a code block:*
|
|
189
|
+
|
|
190
|
+
```
|
|
191
|
+
Saving session state so Claude can pick up where it left off if the conversation is compacted.
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
```bash
|
|
195
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
196
|
+
"{topic}" \
|
|
197
|
+
"skills/technical-planning/SKILL.md" \
|
|
198
|
+
"docs/workflow/planning/{topic}/plan.md"
|
|
199
|
+
```
|
|
200
|
+
|
|
180
201
|
Load **[invoke-skill.md](references/invoke-skill.md)** and follow its instructions as written.
|
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
name: start-research
|
|
3
3
|
description: "Start a research exploration using the technical-research skill. For early-stage ideas, feasibility checks, and broad exploration before formal discussion."
|
|
4
4
|
disable-model-invocation: true
|
|
5
|
+
allowed-tools: Bash(.claude/hooks/workflows/write-session-state.sh)
|
|
6
|
+
hooks:
|
|
7
|
+
PreToolUse:
|
|
8
|
+
- hooks:
|
|
9
|
+
- type: command
|
|
10
|
+
command: "$CLAUDE_PROJECT_DIR/.claude/hooks/workflows/system-check.sh"
|
|
11
|
+
once: true
|
|
5
12
|
---
|
|
6
13
|
|
|
7
14
|
Invoke the **technical-research** skill for this conversation.
|
|
@@ -43,7 +50,7 @@ Follow these steps EXACTLY as written. Do not skip steps or combine them. Presen
|
|
|
43
50
|
|
|
44
51
|
Invoke the `/migrate` skill and assess its output.
|
|
45
52
|
|
|
46
|
-
**If files were updated**: STOP and wait for the user to review the changes (e.g., via `git diff`) and confirm before proceeding to Step 1.
|
|
53
|
+
**If files were updated**: STOP and wait for the user to review the changes (e.g., via `git diff`) and confirm before proceeding to Step 1. Do not continue automatically.
|
|
47
54
|
|
|
48
55
|
**If no updates needed**: Proceed to Step 1.
|
|
49
56
|
|
|
@@ -59,4 +66,19 @@ Load **[gather-context.md](references/gather-context.md)** and follow its instru
|
|
|
59
66
|
|
|
60
67
|
## Step 2: Invoke the Skill
|
|
61
68
|
|
|
69
|
+
Before invoking the processing skill, save a session bookmark.
|
|
70
|
+
|
|
71
|
+
> *Output the next fenced block as a code block:*
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
Saving session state so Claude can pick up where it left off if the conversation is compacted.
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
79
|
+
"{topic}" \
|
|
80
|
+
"skills/technical-research/SKILL.md" \
|
|
81
|
+
"docs/workflow/research/{topic}.md"
|
|
82
|
+
```
|
|
83
|
+
|
|
62
84
|
Load **[invoke-skill.md](references/invoke-skill.md)** and follow its instructions as written.
|
|
@@ -2,7 +2,13 @@
|
|
|
2
2
|
name: start-review
|
|
3
3
|
description: "Start a review session from an existing plan and implementation. Discovers available plans, validates implementation exists, and invokes the technical-review skill."
|
|
4
4
|
disable-model-invocation: true
|
|
5
|
-
allowed-tools: Bash(.claude/skills/start-review/scripts/discovery.sh)
|
|
5
|
+
allowed-tools: Bash(.claude/skills/start-review/scripts/discovery.sh), Bash(.claude/hooks/workflows/write-session-state.sh)
|
|
6
|
+
hooks:
|
|
7
|
+
PreToolUse:
|
|
8
|
+
- hooks:
|
|
9
|
+
- type: command
|
|
10
|
+
command: "$CLAUDE_PROJECT_DIR/.claude/hooks/workflows/system-check.sh"
|
|
11
|
+
once: true
|
|
6
12
|
---
|
|
7
13
|
|
|
8
14
|
Invoke the **technical-review** skill for this conversation.
|
|
@@ -130,4 +136,19 @@ Load **[select-plans.md](references/select-plans.md)** and follow its instructio
|
|
|
130
136
|
|
|
131
137
|
## Step 5: Invoke the Skill
|
|
132
138
|
|
|
139
|
+
Before invoking the processing skill, save a session bookmark.
|
|
140
|
+
|
|
141
|
+
> *Output the next fenced block as a code block:*
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
Saving session state so Claude can pick up where it left off if the conversation is compacted.
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
```bash
|
|
148
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
149
|
+
"{topic}" \
|
|
150
|
+
"skills/technical-review/SKILL.md" \
|
|
151
|
+
"docs/workflow/review/{topic}.md"
|
|
152
|
+
```
|
|
153
|
+
|
|
133
154
|
Load **[invoke-skill.md](references/invoke-skill.md)** and follow its instructions as written.
|
|
@@ -2,7 +2,13 @@
|
|
|
2
2
|
name: start-specification
|
|
3
3
|
description: "Start a specification session from concluded discussions. Discovers available discussions, offers consolidation assessment for multiple discussions, and invokes the technical-specification skill."
|
|
4
4
|
disable-model-invocation: true
|
|
5
|
-
allowed-tools: Bash(.claude/skills/start-specification/scripts/discovery.sh), Bash(mkdir -p docs/workflow/.cache), Bash(rm docs/workflow/.cache/discussion-consolidation-analysis.md)
|
|
5
|
+
allowed-tools: Bash(.claude/skills/start-specification/scripts/discovery.sh), Bash(mkdir -p docs/workflow/.cache), Bash(rm docs/workflow/.cache/discussion-consolidation-analysis.md), Bash(.claude/hooks/workflows/write-session-state.sh)
|
|
6
|
+
hooks:
|
|
7
|
+
PreToolUse:
|
|
8
|
+
- hooks:
|
|
9
|
+
- type: command
|
|
10
|
+
command: "$CLAUDE_PROJECT_DIR/.claude/hooks/workflows/system-check.sh"
|
|
11
|
+
once: true
|
|
6
12
|
---
|
|
7
13
|
|
|
8
14
|
Invoke the **technical-specification** skill for this conversation.
|
|
@@ -46,7 +52,7 @@ Follow these steps EXACTLY as written. Do not skip steps or combine them. Presen
|
|
|
46
52
|
|
|
47
53
|
Invoke the `/migrate` skill and assess its output.
|
|
48
54
|
|
|
49
|
-
**If files were updated**: STOP and wait for the user to review the changes (e.g., via `git diff`) and confirm before proceeding to Step 1.
|
|
55
|
+
**If files were updated**: STOP and wait for the user to review the changes (e.g., via `git diff`) and confirm before proceeding to Step 1. Do not continue automatically.
|
|
50
56
|
|
|
51
57
|
**If no updates needed**: Proceed to Step 1.
|
|
52
58
|
|
|
@@ -6,6 +6,21 @@
|
|
|
6
6
|
|
|
7
7
|
Before invoking the skill, reset `finding_gate_mode` to `gated` in the specification frontmatter if present. Commit if changed: `spec({topic}): reset gate mode`
|
|
8
8
|
|
|
9
|
+
Before invoking the processing skill, save a session bookmark.
|
|
10
|
+
|
|
11
|
+
> *Output the next fenced block as a code block:*
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
Saving session state so Claude can pick up where it left off if the conversation is compacted.
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
19
|
+
"{topic}" \
|
|
20
|
+
"skills/technical-specification/SKILL.md" \
|
|
21
|
+
"docs/workflow/specification/{topic}/specification.md"
|
|
22
|
+
```
|
|
23
|
+
|
|
9
24
|
This skill's purpose is now fulfilled. Invoke the [technical-specification](../../../technical-specification/SKILL.md) skill for your next instructions. Do not act on the gathered information until the skill is loaded — it contains the instructions for how to proceed.
|
|
10
25
|
|
|
11
26
|
```
|
|
@@ -6,6 +6,21 @@
|
|
|
6
6
|
|
|
7
7
|
Before invoking the skill, reset `finding_gate_mode` to `gated` in the specification frontmatter if present. Commit if changed: `spec({topic}): reset gate mode`
|
|
8
8
|
|
|
9
|
+
Before invoking the processing skill, save a session bookmark.
|
|
10
|
+
|
|
11
|
+
> *Output the next fenced block as a code block:*
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
Saving session state so Claude can pick up where it left off if the conversation is compacted.
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
19
|
+
"{topic}" \
|
|
20
|
+
"skills/technical-specification/SKILL.md" \
|
|
21
|
+
"docs/workflow/specification/{topic}/specification.md"
|
|
22
|
+
```
|
|
23
|
+
|
|
9
24
|
This skill's purpose is now fulfilled. Invoke the [technical-specification](../../../technical-specification/SKILL.md) skill for your next instructions. Do not act on the gathered information until the skill is loaded — it contains the instructions for how to proceed.
|
|
10
25
|
|
|
11
26
|
```
|
|
@@ -4,6 +4,21 @@
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
Before invoking the processing skill, save a session bookmark.
|
|
8
|
+
|
|
9
|
+
> *Output the next fenced block as a code block:*
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
Saving session state so Claude can pick up where it left off if the conversation is compacted.
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
17
|
+
"{topic}" \
|
|
18
|
+
"skills/technical-specification/SKILL.md" \
|
|
19
|
+
"docs/workflow/specification/{topic}/specification.md"
|
|
20
|
+
```
|
|
21
|
+
|
|
7
22
|
This skill's purpose is now fulfilled. Invoke the [technical-specification](../../../technical-specification/SKILL.md) skill for your next instructions. Do not act on the gathered information until the skill is loaded — it contains the instructions for how to proceed.
|
|
8
23
|
|
|
9
24
|
```
|
|
@@ -4,6 +4,21 @@
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
Before invoking the processing skill, save a session bookmark.
|
|
8
|
+
|
|
9
|
+
> *Output the next fenced block as a code block:*
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
Saving session state so Claude can pick up where it left off if the conversation is compacted.
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
17
|
+
"{topic}" \
|
|
18
|
+
"skills/technical-specification/SKILL.md" \
|
|
19
|
+
"docs/workflow/specification/{topic}/specification.md"
|
|
20
|
+
```
|
|
21
|
+
|
|
7
22
|
This skill's purpose is now fulfilled. Invoke the [technical-specification](../../../technical-specification/SKILL.md) skill for your next instructions. Do not act on the gathered information until the skill is loaded — it contains the instructions for how to proceed.
|
|
8
23
|
|
|
9
24
|
```
|
|
@@ -4,6 +4,21 @@
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
Before invoking the processing skill, save a session bookmark.
|
|
8
|
+
|
|
9
|
+
> *Output the next fenced block as a code block:*
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
Saving session state so Claude can pick up where it left off if the conversation is compacted.
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
.claude/hooks/workflows/write-session-state.sh \
|
|
17
|
+
"unified" \
|
|
18
|
+
"skills/technical-specification/SKILL.md" \
|
|
19
|
+
"docs/workflow/specification/unified/specification.md"
|
|
20
|
+
```
|
|
21
|
+
|
|
7
22
|
This skill's purpose is now fulfilled. Invoke the [technical-specification](../../../technical-specification/SKILL.md) skill for your next instructions. Do not act on the gathered information until the skill is loaded — it contains the instructions for how to proceed.
|
|
8
23
|
|
|
9
24
|
```
|