create-sdd-project 0.2.4 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -10
- package/lib/config.js +1 -1
- package/lib/generator.js +7 -28
- package/lib/init-generator.js +24 -35
- package/lib/init-wizard.js +1 -1
- package/package.json +1 -1
- package/template/.claude/agents/backend-developer.md +1 -1
- package/template/.claude/agents/frontend-developer.md +1 -1
- package/template/.claude/settings.json +1 -1
- package/template/.claude/skills/bug-workflow/SKILL.md +2 -2
- package/template/.claude/skills/development-workflow/SKILL.md +18 -18
- package/template/.claude/skills/development-workflow/references/add-feature-template.md +16 -0
- package/template/.claude/skills/development-workflow/references/branching-strategy.md +1 -1
- package/template/.claude/skills/development-workflow/references/complexity-guide.md +6 -6
- package/template/.claude/skills/development-workflow/references/failure-handling.md +3 -3
- package/template/.claude/skills/development-workflow/references/pr-template.md +3 -3
- package/template/.claude/skills/development-workflow/references/ticket-template.md +3 -3
- package/template/.claude/skills/development-workflow/references/workflow-example.md +7 -7
- package/template/.claude/skills/project-memory/SKILL.md +9 -9
- package/template/.gemini/agents/backend-developer.md +1 -1
- package/template/.gemini/agents/frontend-developer.md +1 -1
- package/template/.gemini/commands/add-feature.toml +2 -0
- package/template/.gemini/commands/next-task.toml +2 -2
- package/template/.gemini/commands/show-progress.toml +2 -2
- package/template/.gemini/commands/start-task.toml +1 -1
- package/template/.gemini/skills/bug-workflow/SKILL.md +4 -4
- package/template/.gemini/skills/development-workflow/SKILL.md +18 -18
- package/template/.gemini/skills/development-workflow/references/add-feature-template.md +16 -0
- package/template/.gemini/skills/development-workflow/references/branching-strategy.md +1 -1
- package/template/.gemini/skills/development-workflow/references/complexity-guide.md +6 -6
- package/template/.gemini/skills/development-workflow/references/failure-handling.md +3 -3
- package/template/.gemini/skills/development-workflow/references/pr-template.md +3 -3
- package/template/.gemini/skills/development-workflow/references/ticket-template.md +3 -3
- package/template/.gemini/skills/development-workflow/references/workflow-example.md +7 -7
- package/template/.gemini/skills/project-memory/SKILL.md +8 -8
- package/template/AGENTS.md +5 -5
- package/template/CLAUDE.md +2 -2
- package/template/ai-specs/specs/base-standards.mdc +8 -8
- package/template/docs/project_notes/product-tracker.md +56 -0
- package/template/.claude/skills/development-workflow/references/sprint-init-template.md +0 -82
- package/template/.gemini/commands/init-sprint.toml +0 -2
- package/template/.gemini/skills/development-workflow/references/sprint-init-template.md +0 -82
- package/template/docs/project_notes/sprint-0-tracker.md +0 -66
|
@@ -7,7 +7,7 @@ description: "Set up and maintain a structured project memory system in docs/pro
|
|
|
7
7
|
|
|
8
8
|
## Overview
|
|
9
9
|
|
|
10
|
-
Maintain institutional knowledge for projects by establishing a structured memory system in `docs/project_notes/`. This skill sets up three key memory files (bugs, decisions, key facts) plus
|
|
10
|
+
Maintain institutional knowledge for projects by establishing a structured memory system in `docs/project_notes/`. This skill sets up three key memory files (bugs, decisions, key facts) plus the product tracker, and configures the main AI instruction file to automatically reference and maintain them.
|
|
11
11
|
|
|
12
12
|
## When to Use This Skill
|
|
13
13
|
|
|
@@ -32,14 +32,14 @@ docs/
|
|
|
32
32
|
├── bugs.md # Bug log with solutions
|
|
33
33
|
├── decisions.md # Architectural Decision Records
|
|
34
34
|
├── key_facts.md # Project configuration and constants
|
|
35
|
-
└──
|
|
35
|
+
└── product-tracker.md # Feature backlog, active session, completion log
|
|
36
36
|
```
|
|
37
37
|
|
|
38
38
|
**Initial file content:** Copy templates from the `references/` directory in this skill:
|
|
39
39
|
- Use `references/bugs_template.md` for initial `bugs.md`
|
|
40
40
|
- Use `references/decisions_template.md` for initial `decisions.md`
|
|
41
41
|
- Use `references/key_facts_template.md` for initial `key_facts.md`
|
|
42
|
-
-
|
|
42
|
+
- Product tracker is created using the development-workflow skill
|
|
43
43
|
|
|
44
44
|
### 2. Configure AI Instruction File - Memory-Aware Behavior
|
|
45
45
|
|
|
@@ -51,7 +51,7 @@ Add or update a "Project Memory System" section in the project's main AI instruc
|
|
|
51
51
|
This project maintains institutional knowledge in `docs/project_notes/`.
|
|
52
52
|
|
|
53
53
|
### Memory Files
|
|
54
|
-
- **
|
|
54
|
+
- **product-tracker.md** - Feature backlog, active session, completion log
|
|
55
55
|
- **bugs.md** - Bug log with dates, solutions, and prevention notes
|
|
56
56
|
- **decisions.md** - Architectural Decision Records (ADRs)
|
|
57
57
|
- **key_facts.md** - Project configuration, ports, important URLs
|
|
@@ -68,7 +68,7 @@ This project maintains institutional knowledge in `docs/project_notes/`.
|
|
|
68
68
|
- Check `docs/project_notes/key_facts.md`
|
|
69
69
|
|
|
70
70
|
**When completing work:**
|
|
71
|
-
- Update
|
|
71
|
+
- Update product tracker and add to Completion Log
|
|
72
72
|
```
|
|
73
73
|
|
|
74
74
|
### 3. Searching Memory Files
|
|
@@ -116,7 +116,7 @@ When encountering problems or making decisions, proactively search memory files:
|
|
|
116
116
|
|
|
117
117
|
- User is responsible for manual cleanup
|
|
118
118
|
- Remove very old bug entries (6+ months) that are no longer relevant
|
|
119
|
-
-
|
|
119
|
+
- Review and clean up completed features in product tracker
|
|
120
120
|
- Keep all decisions (they provide historical context)
|
|
121
121
|
- Update key_facts.md when project configuration changes
|
|
122
122
|
|
|
@@ -126,7 +126,7 @@ When encountering problems or making decisions, proactively search memory files:
|
|
|
126
126
|
- **references/decisions_template.md** - ADR format with examples
|
|
127
127
|
- **references/key_facts_template.md** - Key facts organization with examples
|
|
128
128
|
|
|
129
|
-
|
|
129
|
+
Product tracker is created using the development-workflow skill.
|
|
130
130
|
|
|
131
131
|
## Tips for Effective Memory Management
|
|
132
132
|
|
|
@@ -138,7 +138,7 @@ Sprint trackers are created using the development-workflow skill.
|
|
|
138
138
|
|
|
139
139
|
## Integration with Other Skills
|
|
140
140
|
|
|
141
|
-
- **development-workflow**: Updates
|
|
141
|
+
- **development-workflow**: Updates product tracker and memory files during task execution
|
|
142
142
|
- **bug-workflow**: Documents bugs and solutions in bugs.md
|
|
143
143
|
|
|
144
144
|
## Success Criteria
|
|
@@ -146,7 +146,7 @@ Sprint trackers are created using the development-workflow skill.
|
|
|
146
146
|
This skill is successfully deployed when:
|
|
147
147
|
|
|
148
148
|
- `docs/project_notes/` directory exists with memory files
|
|
149
|
-
-
|
|
149
|
+
- Product tracker exists with feature backlog
|
|
150
150
|
- AI instruction file includes "Project Memory System" section
|
|
151
151
|
- Memory files follow template format
|
|
152
152
|
- AI assistant checks memory files before proposing changes
|
|
@@ -28,4 +28,4 @@ Implement the task following the Implementation Plan in the ticket. Use strict T
|
|
|
28
28
|
- ALWAYS use explicit types (no `any`)
|
|
29
29
|
- ALWAYS handle errors with domain error classes
|
|
30
30
|
- NEVER modify code outside the scope of the current ticket
|
|
31
|
-
- ALWAYS verify implementation matches the approved spec. If deviation needed, document in
|
|
31
|
+
- ALWAYS verify implementation matches the approved spec. If deviation needed, document in product tracker's Active Session and ask for approval
|
|
@@ -28,4 +28,4 @@ Implement the task following the Implementation Plan in the ticket. Use strict T
|
|
|
28
28
|
- ALWAYS use `'use client'` for components with hooks
|
|
29
29
|
- ALWAYS handle loading and error states
|
|
30
30
|
- NEVER modify code outside the scope of the current ticket
|
|
31
|
-
- ALWAYS verify implementation matches the approved spec. If deviation needed, document in
|
|
31
|
+
- ALWAYS verify implementation matches the approved spec. If deviation needed, document in product tracker's Active Session and ask for approval
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
description = "Start the next pending
|
|
2
|
-
prompt = "Read the
|
|
1
|
+
description = "Start the next pending feature from the product tracker"
|
|
2
|
+
prompt = "Read the product tracker in docs/project_notes/ and start the next pending feature. Follow the development-workflow skill in .gemini/skills/development-workflow/SKILL.md"
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
description = "Show current
|
|
2
|
-
prompt = "Read the
|
|
1
|
+
description = "Show current progress and active feature status"
|
|
2
|
+
prompt = "Read the product tracker in docs/project_notes/ and show: current progress (features done vs total), active feature and step, and list of pending features."
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
description = "Start working on a specific
|
|
1
|
+
description = "Start working on a specific feature (e.g., /start-task F001)"
|
|
2
2
|
prompt = "Start task {{args}}. Follow the development-workflow skill in .gemini/skills/development-workflow/SKILL.md"
|
|
@@ -23,7 +23,7 @@ description: "Handles bug discovery, triage, investigation, and resolution. Invo
|
|
|
23
23
|
|----------|----------|------|
|
|
24
24
|
| Critical | Immediate (<1h) | **C: Hotfix** — Confirm → Branch from main → Minimal fix → Test → Deploy → Document → Post-mortem |
|
|
25
25
|
| High | Same day | **B: Standard** — Triage → Branch → Investigate → Fix (TDD) → Validate → Document → PR |
|
|
26
|
-
| Medium | Within
|
|
26
|
+
| Medium | Within cycle | **A: Quick** — Triage → Investigate → Fix → Test → Document → Commit |
|
|
27
27
|
| Low | Backlog | **A: Quick** or escalate to backlog |
|
|
28
28
|
|
|
29
29
|
**Escalate to `development-workflow`** when: >1 day work, architectural changes needed, or significant refactoring required.
|
|
@@ -60,7 +60,7 @@ Find root cause, not symptoms. Techniques: git bisect, layer isolation (Frontend
|
|
|
60
60
|
|
|
61
61
|
## Step 5: Validate
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
Run `production-code-validator`. Ensure no debug code, proper error handling.
|
|
64
64
|
|
|
65
65
|
## Step 6: Document in bugs.md
|
|
66
66
|
|
|
@@ -78,7 +78,7 @@ Follow `production-code-validator` instructions in `.gemini/agents/`. Ensure no
|
|
|
78
78
|
|
|
79
79
|
## Step 7: Commit/PR
|
|
80
80
|
|
|
81
|
-
**Commit format:** `fix(<area>): <description>` + body (bug, root cause, fix)
|
|
81
|
+
**Commit format:** `fix(<area>): <description>` + body (bug, root cause, fix) + `Co-Authored-By: Claude <noreply@anthropic.com>`
|
|
82
82
|
|
|
83
83
|
**Hotfix PR:** `--base main` always. After merge in GitFlow: merge main back to develop. Tag: `vX.Y.Z+1`.
|
|
84
84
|
|
|
@@ -99,7 +99,7 @@ Follow `production-code-validator` instructions in `.gemini/agents/`. Ensure no
|
|
|
99
99
|
|
|
100
100
|
| File | When |
|
|
101
101
|
|------|------|
|
|
102
|
-
| `
|
|
102
|
+
| `product-tracker.md` | Bug being worked on (Active Session) |
|
|
103
103
|
| `bugs.md` | Always |
|
|
104
104
|
| `decisions.md` | If architectural decision made |
|
|
105
105
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: development-workflow
|
|
3
|
-
description: "Orchestrates the complete development workflow for each
|
|
3
|
+
description: "Orchestrates the complete development workflow for each feature. Invoke with: 'start task F001', 'show progress', 'next task', or 'add feature'."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Development Workflow Skill
|
|
@@ -8,7 +8,7 @@ description: "Orchestrates the complete development workflow for each task. Invo
|
|
|
8
8
|
## Quick Reference
|
|
9
9
|
|
|
10
10
|
0. **Spec** — `spec-creator` drafts/updates specs → SPEC APPROVAL (Std/Cplx)
|
|
11
|
-
1. **Setup** — Branch, ticket,
|
|
11
|
+
1. **Setup** — Branch, ticket, product tracker → TICKET APPROVAL (Std/Cplx)
|
|
12
12
|
2. **Plan** — Planner agent writes implementation plan → PLAN APPROVAL (Std/Cplx)
|
|
13
13
|
3. **Implement** — Developer agent, TDD, real-time spec sync
|
|
14
14
|
4. **Finalize** — Tests/lint/build, `production-code-validator` → COMMIT APPROVAL
|
|
@@ -19,19 +19,19 @@ description: "Orchestrates the complete development workflow for each task. Invo
|
|
|
19
19
|
|
|
20
20
|
## Commands
|
|
21
21
|
|
|
22
|
-
- `start task
|
|
23
|
-
- `next task` — Start the next pending
|
|
24
|
-
- `show
|
|
25
|
-
- `
|
|
22
|
+
- `start task F001` — Begin working on a specific feature
|
|
23
|
+
- `next task` — Start the next pending feature from product tracker
|
|
24
|
+
- `show progress` — View feature completion status
|
|
25
|
+
- `add feature "description"` — Add a new feature to the product tracker
|
|
26
26
|
|
|
27
27
|
---
|
|
28
28
|
|
|
29
29
|
## On Skill Start
|
|
30
30
|
|
|
31
|
-
1. Read the
|
|
31
|
+
1. Read the product tracker (`docs/project_notes/product-tracker.md`) → **Active Session** section for context recovery
|
|
32
32
|
2. Read `GEMINI.md` → **Autonomy Level**
|
|
33
33
|
3. Read `docs/project_notes/key_facts.md` → **Branching Strategy**
|
|
34
|
-
4. If resuming an active
|
|
34
|
+
4. If resuming an active feature → continue from the step recorded in the tracker's Active Session
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
@@ -47,7 +47,7 @@ Read the **Autonomy Level** from `GEMINI.md`.
|
|
|
47
47
|
| Commit Approval (Step 4) | Required | Auto | Auto | Auto |
|
|
48
48
|
| Merge Approval (Step 5) | Required | Required | Required | Auto |
|
|
49
49
|
|
|
50
|
-
- **Auto** = proceed without asking; log in
|
|
50
|
+
- **Auto** = proceed without asking; log in product tracker → "Auto-Approved Decisions" table
|
|
51
51
|
- **Required** = ask user explicitly; do NOT continue without approval
|
|
52
52
|
- **Quality gates always run** regardless of level (tests, lint, build, validators)
|
|
53
53
|
|
|
@@ -83,11 +83,11 @@ Ask user to classify complexity before starting. See `references/complexity-guid
|
|
|
83
83
|
|
|
84
84
|
See `references/branching-strategy.md` for details.
|
|
85
85
|
|
|
86
|
-
1. Verify
|
|
87
|
-
2. Create feature branch: `feature
|
|
86
|
+
1. Verify product tracker exists, no active feature, dependencies met
|
|
87
|
+
2. Create feature branch: `feature/<feature-id>-<short-description>`
|
|
88
88
|
3. **Std/Cplx:** Generate ticket from `references/ticket-template.md` → fill `## Spec` section
|
|
89
89
|
4. **Complex:** Also review `decisions.md` for related ADRs
|
|
90
|
-
5. Update
|
|
90
|
+
5. Update product tracker → Active Session: feature, step `1/6 (Setup)`, branch, complexity
|
|
91
91
|
|
|
92
92
|
**→ CHECKPOINT: Ticket Approval** (Std/Cplx only — Simple skips to Step 3)
|
|
93
93
|
|
|
@@ -95,7 +95,7 @@ See `references/branching-strategy.md` for details.
|
|
|
95
95
|
|
|
96
96
|
## Step 2: Plan (Standard/Complex only)
|
|
97
97
|
|
|
98
|
-
1. Follow the planner agent instructions (`backend-planner` for
|
|
98
|
+
1. Follow the planner agent instructions (`backend-planner` for backend features, `frontend-planner` for frontend features) in `.gemini/agents/`
|
|
99
99
|
2. Write Implementation Plan into ticket's `## Implementation Plan`
|
|
100
100
|
3. Update tracker: step `2/6 (Plan)`
|
|
101
101
|
|
|
@@ -115,7 +115,7 @@ See `references/branching-strategy.md` for details.
|
|
|
115
115
|
- UI components → `docs/specs/ui-components.md` (MANDATORY)
|
|
116
116
|
- Env variables → `.env.example` | ADRs → `decisions.md`
|
|
117
117
|
|
|
118
|
-
**Spec deviation** → document in
|
|
118
|
+
**Spec deviation** → document in product tracker Active Session and ask for approval.
|
|
119
119
|
|
|
120
120
|
Update tracker: step `3/6 (Implement)`, context summary.
|
|
121
121
|
|
|
@@ -154,7 +154,7 @@ Update tracker: step `5/6 (Review)`
|
|
|
154
154
|
## Step 6: Complete
|
|
155
155
|
|
|
156
156
|
1. Delete feature branch (local + remote)
|
|
157
|
-
2. Update
|
|
157
|
+
2. Update product tracker: feature → done, add to Completion Log, update progress
|
|
158
158
|
3. Record bugs in `bugs.md`, decisions in `decisions.md`
|
|
159
159
|
4. Clear Active Session → "No active work"
|
|
160
160
|
|
|
@@ -179,18 +179,18 @@ Agent instructions are in `.gemini/agents/`. Read the relevant agent file when e
|
|
|
179
179
|
- `references/ticket-template.md` — Ticket format
|
|
180
180
|
- `references/pr-template.md` — PR template
|
|
181
181
|
- `references/branching-strategy.md` — Branching guide
|
|
182
|
-
- `references/
|
|
182
|
+
- `references/add-feature-template.md` — Add feature to tracker
|
|
183
183
|
- `references/complexity-guide.md` — Complexity classification
|
|
184
184
|
- `references/workflow-example.md` — Full worked example
|
|
185
185
|
- `references/failure-handling.md` — Recovery & rollbacks
|
|
186
186
|
|
|
187
187
|
## Constraints
|
|
188
188
|
|
|
189
|
-
- **One
|
|
189
|
+
- **One feature at a time** — never start a new feature before completing current
|
|
190
190
|
- **TDD mandatory** — all code needs tests
|
|
191
191
|
- **Type safety** — fully typed, no `any`
|
|
192
192
|
- **English only** — all technical artifacts
|
|
193
193
|
- **Memory first** — check `project_notes/` before changes
|
|
194
|
-
- **
|
|
194
|
+
- **Product tracker** — keep Active Session updated at every step
|
|
195
195
|
- **Correct agents** — Backend → `backend-planner` + `backend-developer`, Frontend → `frontend-planner` + `frontend-developer`
|
|
196
196
|
- **Correct base branch** — check `key_facts.md` before creating branches
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Add Feature Template
|
|
2
|
+
|
|
3
|
+
Use this template when running `add feature "description"`.
|
|
4
|
+
|
|
5
|
+
## How to Add a Feature
|
|
6
|
+
|
|
7
|
+
1. Read the product tracker (`docs/project_notes/product-tracker.md`)
|
|
8
|
+
2. Determine the next feature ID (F001, F002, ...)
|
|
9
|
+
3. Add a row to the Features table
|
|
10
|
+
4. Use `start task F001` to begin working on it
|
|
11
|
+
|
|
12
|
+
## Feature ID Convention
|
|
13
|
+
|
|
14
|
+
- **Format:** F001, F002, F003... (sequential)
|
|
15
|
+
- **Type:** backend, frontend, fullstack, infra
|
|
16
|
+
- **Branch:** `feature/<id>-<short-desc>` (e.g., `feature/F001-external-api`)
|
|
@@ -19,23 +19,23 @@ Before starting any task, ask the user to classify its complexity using **contex
|
|
|
19
19
|
|
|
20
20
|
## Examples
|
|
21
21
|
|
|
22
|
-
**Example 1 -
|
|
22
|
+
**Example 1 - Feature might overlap with existing work:**
|
|
23
23
|
```
|
|
24
|
-
What complexity level for
|
|
24
|
+
What complexity level for F003 (Implement refresh token rotation)?
|
|
25
25
|
|
|
26
26
|
1. Simple (Recommended)
|
|
27
|
-
Verify existing implementation in
|
|
27
|
+
Verify existing implementation in F001, add tests if missing
|
|
28
28
|
|
|
29
29
|
2. Standard
|
|
30
30
|
Add additional rotation logic or edge cases
|
|
31
31
|
|
|
32
|
-
3. Skip
|
|
33
|
-
Already done in
|
|
32
|
+
3. Skip F003
|
|
33
|
+
Already done in F001, move to F004 (auth controller)
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
**Example 2 - Standard new feature:**
|
|
37
37
|
```
|
|
38
|
-
What complexity level for
|
|
38
|
+
What complexity level for F002 (Create auth middleware)?
|
|
39
39
|
|
|
40
40
|
1. Simple
|
|
41
41
|
Straightforward middleware, minimal logic
|
|
@@ -68,14 +68,14 @@
|
|
|
68
68
|
|
|
69
69
|
**Recovery:**
|
|
70
70
|
1. **Identify** the blocking task/resource
|
|
71
|
-
2. **Document** the block in
|
|
71
|
+
2. **Document** the block in product tracker "Active Session" section
|
|
72
72
|
3. **Options:**
|
|
73
73
|
- Wait for blocker to resolve
|
|
74
74
|
- Switch to different task
|
|
75
75
|
- Create mock/stub to continue
|
|
76
76
|
|
|
77
|
-
**Update
|
|
78
|
-
- Change
|
|
77
|
+
**Update product tracker:**
|
|
78
|
+
- Change feature status to Blocked
|
|
79
79
|
|
|
80
80
|
---
|
|
81
81
|
|
|
@@ -14,10 +14,10 @@ gh pr create --base main --title "<type>(<scope>): <description>" --body "$(cat
|
|
|
14
14
|
|
|
15
15
|
[One paragraph: what this PR does and why]
|
|
16
16
|
|
|
17
|
-
##
|
|
17
|
+
## Feature Reference
|
|
18
18
|
|
|
19
|
-
- **
|
|
20
|
-
- **Ticket:** [docs/tickets/
|
|
19
|
+
- **Feature:** [F001]
|
|
20
|
+
- **Ticket:** [docs/tickets/feature-id.md]
|
|
21
21
|
|
|
22
22
|
## Changes
|
|
23
23
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
# [
|
|
1
|
+
# [FEATURE-ID]: [Feature Title]
|
|
2
2
|
|
|
3
|
-
**
|
|
4
|
-
**Status:** In Progress | **Branch:** feature/
|
|
3
|
+
**Feature:** [ID] | **Type:** [Backend/Frontend/Fullstack]-[Feature/Bugfix/Refactor] | **Priority:** [High/Medium/Low]
|
|
4
|
+
**Status:** In Progress | **Branch:** feature/[FEATURE-ID]-[short-description]
|
|
5
5
|
**Created:** [YYYY-MM-DD] | **Dependencies:** [List or "None"]
|
|
6
6
|
|
|
7
7
|
---
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
# Workflow Example:
|
|
1
|
+
# Workflow Example: Feature F001 (Simple, L2 Trusted, github-flow)
|
|
2
2
|
|
|
3
3
|
## On Skill Start
|
|
4
4
|
|
|
5
|
-
1. Read
|
|
5
|
+
1. Read product tracker → Active Session → No active feature
|
|
6
6
|
2. `CLAUDE.md` → Autonomy Level 2 (Trusted)
|
|
7
7
|
3. `key_facts.md` → branching: github-flow (base: `main`)
|
|
8
8
|
|
|
@@ -12,10 +12,10 @@
|
|
|
12
12
|
|
|
13
13
|
```bash
|
|
14
14
|
git checkout main && git pull
|
|
15
|
-
git checkout -b feature/
|
|
15
|
+
git checkout -b feature/F001-express-setup
|
|
16
16
|
```
|
|
17
17
|
|
|
18
|
-
Update
|
|
18
|
+
Update product tracker → Active Session: F001, step `1/6`, branch, complexity: Simple.
|
|
19
19
|
|
|
20
20
|
## Step 2: Plan — Skipped (Simple task)
|
|
21
21
|
|
|
@@ -72,7 +72,7 @@ git commit -m "feat(backend): initialize Express + TypeScript project
|
|
|
72
72
|
## Step 5: Review
|
|
73
73
|
|
|
74
74
|
```bash
|
|
75
|
-
git push -u origin feature/
|
|
75
|
+
git push -u origin feature/F001-express-setup
|
|
76
76
|
gh pr create --base main --title "feat(backend): initialize Express + TypeScript project" --body "..."
|
|
77
77
|
gh pr merge --squash
|
|
78
78
|
```
|
|
@@ -81,7 +81,7 @@ gh pr merge --squash
|
|
|
81
81
|
|
|
82
82
|
```bash
|
|
83
83
|
git checkout main && git pull
|
|
84
|
-
git branch -d feature/
|
|
84
|
+
git branch -d feature/F001-express-setup
|
|
85
85
|
```
|
|
86
86
|
|
|
87
|
-
Update
|
|
87
|
+
Update product tracker: F001 → done, add to Completion Log, clear Active Session.
|
|
@@ -7,7 +7,7 @@ description: "Set up and maintain a structured project memory system in docs/pro
|
|
|
7
7
|
|
|
8
8
|
## Overview
|
|
9
9
|
|
|
10
|
-
Maintain institutional knowledge for projects by establishing a structured memory system in `docs/project_notes/`. This skill sets up three key memory files (bugs, decisions, key facts) plus
|
|
10
|
+
Maintain institutional knowledge for projects by establishing a structured memory system in `docs/project_notes/`. This skill sets up three key memory files (bugs, decisions, key facts) plus the product tracker, and ensures the AI assistant automatically references and maintains them.
|
|
11
11
|
|
|
12
12
|
## When to Use This Skill
|
|
13
13
|
|
|
@@ -32,14 +32,14 @@ docs/
|
|
|
32
32
|
├── bugs.md # Bug log with solutions
|
|
33
33
|
├── decisions.md # Architectural Decision Records
|
|
34
34
|
├── key_facts.md # Project configuration and constants
|
|
35
|
-
└──
|
|
35
|
+
└── product-tracker.md # Feature backlog, active session, completion log
|
|
36
36
|
```
|
|
37
37
|
|
|
38
38
|
**Initial file content:** Copy templates from the `references/` directory in this skill:
|
|
39
39
|
- Use `references/bugs_template.md` for initial `bugs.md`
|
|
40
40
|
- Use `references/decisions_template.md` for initial `decisions.md`
|
|
41
41
|
- Use `references/key_facts_template.md` for initial `key_facts.md`
|
|
42
|
-
-
|
|
42
|
+
- Product tracker is created using the development-workflow skill
|
|
43
43
|
|
|
44
44
|
### 2. Memory-Aware Behavior
|
|
45
45
|
|
|
@@ -55,7 +55,7 @@ The following protocols should be followed at all times:
|
|
|
55
55
|
- Check `docs/project_notes/key_facts.md`
|
|
56
56
|
|
|
57
57
|
**When completing work:**
|
|
58
|
-
- Update
|
|
58
|
+
- Update product tracker and add to Completion Log
|
|
59
59
|
|
|
60
60
|
### 3. Searching Memory Files
|
|
61
61
|
|
|
@@ -102,7 +102,7 @@ When encountering problems or making decisions, proactively search memory files:
|
|
|
102
102
|
|
|
103
103
|
- User is responsible for manual cleanup
|
|
104
104
|
- Remove very old bug entries (6+ months) that are no longer relevant
|
|
105
|
-
-
|
|
105
|
+
- Review and clean up completed features in product tracker
|
|
106
106
|
- Keep all decisions (they provide historical context)
|
|
107
107
|
- Update key_facts.md when project configuration changes
|
|
108
108
|
|
|
@@ -112,7 +112,7 @@ When encountering problems or making decisions, proactively search memory files:
|
|
|
112
112
|
- **references/decisions_template.md** - ADR format with examples
|
|
113
113
|
- **references/key_facts_template.md** - Key facts organization with examples
|
|
114
114
|
|
|
115
|
-
|
|
115
|
+
Product tracker is created using the development-workflow skill.
|
|
116
116
|
|
|
117
117
|
## Tips for Effective Memory Management
|
|
118
118
|
|
|
@@ -124,7 +124,7 @@ Sprint trackers are created using the development-workflow skill.
|
|
|
124
124
|
|
|
125
125
|
## Integration with Other Skills
|
|
126
126
|
|
|
127
|
-
- **development-workflow**: Updates
|
|
127
|
+
- **development-workflow**: Updates product tracker and memory files during task execution
|
|
128
128
|
- **bug-workflow**: Documents bugs and solutions in bugs.md
|
|
129
129
|
|
|
130
130
|
## Success Criteria
|
|
@@ -132,6 +132,6 @@ Sprint trackers are created using the development-workflow skill.
|
|
|
132
132
|
This skill is successfully deployed when:
|
|
133
133
|
|
|
134
134
|
- `docs/project_notes/` directory exists with memory files
|
|
135
|
-
-
|
|
135
|
+
- Product tracker exists with feature backlog
|
|
136
136
|
- Memory files follow template format
|
|
137
137
|
- AI assistant checks memory files before proposing changes
|
package/template/AGENTS.md
CHANGED
|
@@ -27,7 +27,7 @@ project/
|
|
|
27
27
|
|
|
28
28
|
Institutional knowledge lives in `docs/project_notes/`:
|
|
29
29
|
|
|
30
|
-
- **
|
|
30
|
+
- **product-tracker.md** — Feature backlog, **Active Session** (current feature, next actions, open questions), completion log
|
|
31
31
|
- **bugs.md** — Bug log with solutions and prevention notes
|
|
32
32
|
- **decisions.md** — Architectural Decision Records (ADRs)
|
|
33
33
|
- **key_facts.md** — Project configuration, ports, URLs, branching strategy
|
|
@@ -36,8 +36,8 @@ Institutional knowledge lives in `docs/project_notes/`:
|
|
|
36
36
|
|
|
37
37
|
After context loss, new session, or context compaction — BEFORE continuing work:
|
|
38
38
|
|
|
39
|
-
1. **Read
|
|
40
|
-
2. If there is an active
|
|
39
|
+
1. **Read product tracker** (`docs/project_notes/product-tracker.md`) → **Active Session** section
|
|
40
|
+
2. If there is an active feature → read the referenced ticket in `docs/tickets/`
|
|
41
41
|
3. Respect the configured autonomy level — do NOT skip checkpoints
|
|
42
42
|
|
|
43
43
|
## Anti-Patterns (Avoid)
|
|
@@ -48,14 +48,14 @@ After context loss, new session, or context compaction — BEFORE continuing wor
|
|
|
48
48
|
- Creating files when existing ones can be extended
|
|
49
49
|
- Adding features not explicitly requested
|
|
50
50
|
- Committing without updating ticket acceptance criteria
|
|
51
|
-
- Forgetting to update
|
|
51
|
+
- Forgetting to update product tracker's Active Session after step changes
|
|
52
52
|
|
|
53
53
|
## Automated Hooks (Claude Code)
|
|
54
54
|
|
|
55
55
|
The project includes pre-configured hooks in `.claude/settings.json`:
|
|
56
56
|
|
|
57
57
|
- **Quick Scan** (`SubagentStop`): After `backend-developer` or `frontend-developer` finishes, a fast grep-based scan (~2s, no additional API calls) checks for `console.log`, `debugger`, `TODO/FIXME`, hardcoded secrets, and localhost references. Critical issues block; warnings are non-blocking (full review happens in Step 5).
|
|
58
|
-
- **Compaction Recovery** (`SessionStart → compact`): After context compaction, injects a reminder to read the
|
|
58
|
+
- **Compaction Recovery** (`SessionStart → compact`): After context compaction, injects a reminder to read the product tracker Active Session for context recovery.
|
|
59
59
|
|
|
60
60
|
Personal notification hooks (macOS/Linux) are in `.claude/settings.local.json` — see that file for examples.
|
|
61
61
|
|
package/template/CLAUDE.md
CHANGED
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
|
|
13
13
|
After context compaction or new session — BEFORE continuing work:
|
|
14
14
|
|
|
15
|
-
1. Read
|
|
16
|
-
2. If active
|
|
15
|
+
1. Read product tracker (`docs/project_notes/product-tracker.md`) → **Active Session**
|
|
16
|
+
2. If active feature → read referenced ticket in `docs/tickets/`
|
|
17
17
|
3. Read the active skill file (`.claude/skills/*/SKILL.md`)
|
|
18
18
|
4. Do NOT proceed past any checkpoint without user confirmation (respect autonomy level)
|
|
19
19
|
5. If Active Session shows a pending checkpoint, ask before continuing
|
|
@@ -31,7 +31,7 @@ These conventions adapt per-project via `<!-- CONFIG: -->` comments in `CLAUDE.m
|
|
|
31
31
|
|
|
32
32
|
```
|
|
33
33
|
0. SPEC → spec-creator drafts/updates specs → SPEC APPROVAL (Std/Cplx)
|
|
34
|
-
1. SETUP → Branch, ticket,
|
|
34
|
+
1. SETUP → Branch, ticket, product tracker → TICKET APPROVAL (Std/Cplx)
|
|
35
35
|
2. PLAN → Planner agent creates implementation plan → PLAN APPROVAL (Std/Cplx)
|
|
36
36
|
3. IMPLEMENT → Developer agent, TDD, real-time spec sync
|
|
37
37
|
4. FINALIZE → Tests/lint/build, production-validator → COMMIT APPROVAL
|
|
@@ -67,12 +67,12 @@ Quality gates (tests, lint, build, validators) **always run** regardless of leve
|
|
|
67
67
|
| Commit Approval | Required | Auto | Auto | Auto |
|
|
68
68
|
| Merge Approval | Required | Required | Required | Auto |
|
|
69
69
|
|
|
70
|
-
- **L1 Full Control**:
|
|
70
|
+
- **L1 Full Control**: New project or learning SDD — human approves every step.
|
|
71
71
|
- **L2 Trusted**: Comfortable with SDD — AI handles routine, human reviews plans and merges.
|
|
72
72
|
- **L3 Autopilot**: Battle-tested workflow — human only reviews PRs before merge.
|
|
73
|
-
- **L4 Full Auto**: Full automation — human reviews
|
|
73
|
+
- **L4 Full Auto**: Full automation — human reviews completed features only.
|
|
74
74
|
|
|
75
|
-
**Auto** = proceed without asking; log in
|
|
75
|
+
**Auto** = proceed without asking; log in product tracker → "Auto-Approved Decisions" table.
|
|
76
76
|
|
|
77
77
|
## 4. Agent Roles
|
|
78
78
|
|
|
@@ -121,11 +121,11 @@ All agents MUST follow: **Acknowledge** → **Execute** → **Explain** → **Ga
|
|
|
121
121
|
|
|
122
122
|
## 8. Project Memory Protocols
|
|
123
123
|
|
|
124
|
-
- Starting a session or after compaction → read
|
|
124
|
+
- Starting a session or after compaction → read product tracker's **Active Session** first
|
|
125
125
|
- Before architectural changes → check `decisions.md`
|
|
126
126
|
- When encountering bugs → search `bugs.md`
|
|
127
127
|
- When looking up config → check `key_facts.md`
|
|
128
|
-
- After every step change → update
|
|
128
|
+
- After every step change → update product tracker's Active Session
|
|
129
129
|
|
|
130
130
|
## 9. Git Conventions
|
|
131
131
|
|
|
@@ -139,7 +139,7 @@ All agents MUST follow: **Acknowledge** → **Execute** → **Explain** → **Ga
|
|
|
139
139
|
| Branch | Base | Merges to |
|
|
140
140
|
|--------|------|-----------|
|
|
141
141
|
| `main` | — | — (always deployable) |
|
|
142
|
-
| `feature
|
|
142
|
+
| `feature/<feature-id>-<desc>` | main | main (PR) |
|
|
143
143
|
| `bugfix/<area>-<desc>` | main | main (PR) |
|
|
144
144
|
| `hotfix/<desc>` | main | main (fast-track PR) |
|
|
145
145
|
|
|
@@ -149,7 +149,7 @@ All agents MUST follow: **Acknowledge** → **Execute** → **Explain** → **Ga
|
|
|
149
149
|
|--------|------|-----------|
|
|
150
150
|
| `main` | — | — (releases only) |
|
|
151
151
|
| `develop` | main | — (integration) |
|
|
152
|
-
| `feature
|
|
152
|
+
| `feature/<feature-id>-<desc>` | develop | develop (PR) |
|
|
153
153
|
| `release/<version>` | develop | main + develop |
|
|
154
154
|
| `hotfix/<desc>` | main | main + develop |
|
|
155
155
|
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Product Tracker
|
|
2
|
+
|
|
3
|
+
> Feature backlog and progress tracking. Each feature follows the SDD workflow (Steps 0-6).
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Active Session
|
|
8
|
+
|
|
9
|
+
> **Read this section first** when starting a new session or after context compaction. Provides instant context recovery.
|
|
10
|
+
|
|
11
|
+
**Last Updated:** —
|
|
12
|
+
|
|
13
|
+
| Field | Value |
|
|
14
|
+
|-------|-------|
|
|
15
|
+
| **Current Feature** | None |
|
|
16
|
+
| **Step** | — |
|
|
17
|
+
| **Branch** | — |
|
|
18
|
+
| **Complexity** | — |
|
|
19
|
+
| **Ticket** | — |
|
|
20
|
+
|
|
21
|
+
**Context:** _No active work._
|
|
22
|
+
|
|
23
|
+
**Next Actions:**
|
|
24
|
+
1. —
|
|
25
|
+
|
|
26
|
+
**Open Questions:** _None._
|
|
27
|
+
|
|
28
|
+
**Auto-Approved Decisions (this session):**
|
|
29
|
+
|
|
30
|
+
| Step | Decision | Rationale |
|
|
31
|
+
|------|----------|-----------|
|
|
32
|
+
| — | — | — |
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Features
|
|
37
|
+
|
|
38
|
+
| ID | Feature | Type | Status | Step | Notes |
|
|
39
|
+
|----|---------|------|--------|------|-------|
|
|
40
|
+
| F001 | [Feature description] | backend | pending | — | |
|
|
41
|
+
|
|
42
|
+
**Status Legend:** pending | in-progress | done | blocked | cancelled
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Completion Log
|
|
47
|
+
|
|
48
|
+
| Date | Feature | Commit/PR | Notes |
|
|
49
|
+
|------|---------|-----------|-------|
|
|
50
|
+
| | | | |
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Notes
|
|
55
|
+
|
|
56
|
+
- Tracker initialized. Use `add feature "description"` to add features.
|