planflow-ai 1.1.7 → 1.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/resources/core/project-tasklist.md +6 -0
- package/README.md +113 -56
- package/package.json +1 -1
- package/rules/core/_index.mdc +12 -0
- package/rules/core/project-tasklist.mdc +90 -0
- package/rules/skills/create-plan-skill.mdc +8 -0
- package/rules/skills/discovery-skill.mdc +8 -0
- package/rules/skills/execute-plan-skill.mdc +8 -0
- package/rules/skills/review-code-skill.mdc +7 -0
- package/rules/skills/review-pr-skill.mdc +7 -0
- package/rules/skills/write-tests-skill.mdc +7 -0
- package/skills/plan-flow/SKILL.md +2 -0
- package/templates/shared/AGENTS.md.template +18 -1
- package/templates/shared/CLAUDE.md.template +11 -2
|
@@ -11,6 +11,10 @@ A persistent project todo list that tracks work items across sessions. The taskl
|
|
|
11
11
|
|
|
12
12
|
## Behavior
|
|
13
13
|
|
|
14
|
+
### CRITICAL: All Tasks MUST Be Written to Disk
|
|
15
|
+
|
|
16
|
+
**NEVER keep tasks in-memory only.** Every task addition, status change, or update MUST be written to `flow/tasklist.md` immediately using the Edit or Write tool. If a user asks to add tasks to the tasklist, you MUST edit the file — not just acknowledge the tasks in conversation. The tasklist is a **file on disk**, not a conversation artifact.
|
|
17
|
+
|
|
14
18
|
### On Session Start
|
|
15
19
|
|
|
16
20
|
1. Check if `flow/tasklist.md` exists
|
|
@@ -27,6 +31,7 @@ A persistent project todo list that tracks work items across sessions. The taskl
|
|
|
27
31
|
- When a task is completed (skill finishes successfully), move it to **Done** with the completion date
|
|
28
32
|
- When new work items are discovered during execution, add them to **To Do**
|
|
29
33
|
- Update `flow/tasklist.md` in real-time as work progresses
|
|
34
|
+
- **EVERY update MUST be persisted to `flow/tasklist.md` via Edit/Write tool — no exceptions**
|
|
30
35
|
|
|
31
36
|
### Task Format
|
|
32
37
|
|
|
@@ -221,3 +226,4 @@ When a task is completed:
|
|
|
221
226
|
6. **Always update**: Every command MUST update the tasklist — this is not optional
|
|
222
227
|
7. **Add vs Execute**: When the user says "add to tasklist" or "add a task for X", ONLY add it to **To Do**. Do NOT start working on it. Only execute when the user explicitly says "do this", "implement this", "work on X", or invokes a command.
|
|
223
228
|
8. **Tasklist is a backlog**: The tasklist is a planning tool, not an execution trigger. Adding a task is separate from executing it.
|
|
229
|
+
9. **Persist to disk — ALWAYS**: Every task addition or status change MUST be written to `flow/tasklist.md` using Edit or Write. NEVER keep tasks only in conversation memory. If you added tasks but did not call Edit/Write on `flow/tasklist.md`, you have a bug — fix it immediately.
|
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ Works with **Claude Code**, **Cursor**, **OpenClaw**, and **Codex CLI**.
|
|
|
7
7
|
## Quick Start
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
|
-
npx
|
|
10
|
+
npx planflow-ai init
|
|
11
11
|
```
|
|
12
12
|
|
|
13
13
|
This interactive command installs plan-flow into your project for your chosen platform(s).
|
|
@@ -17,7 +17,7 @@ This interactive command installs plan-flow into your project for your chosen pl
|
|
|
17
17
|
### Claude Code
|
|
18
18
|
|
|
19
19
|
```bash
|
|
20
|
-
npx
|
|
20
|
+
npx planflow-ai init --claude
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
Installs slash commands (`.claude/commands/`), core rules (`.claude/rules/`), and reference docs (`.claude/resources/`) into your project. Creates or updates your `CLAUDE.md` with plan-flow instructions.
|
|
@@ -25,15 +25,15 @@ Installs slash commands (`.claude/commands/`), core rules (`.claude/rules/`), an
|
|
|
25
25
|
### Cursor
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
|
-
npx
|
|
28
|
+
npx planflow-ai init --cursor
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
-
Copies Cursor-compatible
|
|
31
|
+
Copies Cursor-compatible commands (`.cursor/commands/`) into your project.
|
|
32
32
|
|
|
33
33
|
### OpenClaw
|
|
34
34
|
|
|
35
35
|
```bash
|
|
36
|
-
npx
|
|
36
|
+
npx planflow-ai init --openclaw
|
|
37
37
|
```
|
|
38
38
|
|
|
39
39
|
Copies skill manifests to `skills/plan-flow/` in your project.
|
|
@@ -41,7 +41,7 @@ Copies skill manifests to `skills/plan-flow/` in your project.
|
|
|
41
41
|
### Codex CLI
|
|
42
42
|
|
|
43
43
|
```bash
|
|
44
|
-
npx
|
|
44
|
+
npx planflow-ai init --codex
|
|
45
45
|
```
|
|
46
46
|
|
|
47
47
|
Copies skills to `.agents/skills/plan-flow/` and creates or updates your `AGENTS.md` with plan-flow instructions.
|
|
@@ -49,7 +49,7 @@ Copies skills to `.agents/skills/plan-flow/` and creates or updates your `AGENTS
|
|
|
49
49
|
### All Platforms
|
|
50
50
|
|
|
51
51
|
```bash
|
|
52
|
-
npx
|
|
52
|
+
npx planflow-ai init --all
|
|
53
53
|
```
|
|
54
54
|
|
|
55
55
|
Installs for Claude Code, Cursor, OpenClaw, and Codex CLI simultaneously.
|
|
@@ -66,28 +66,6 @@ Installs for Claude Code, Cursor, OpenClaw, and Codex CLI simultaneously.
|
|
|
66
66
|
| `--force` | Overwrite existing files |
|
|
67
67
|
| `--target <dir>` | Target directory (defaults to current) |
|
|
68
68
|
|
|
69
|
-
## Manual Installation
|
|
70
|
-
|
|
71
|
-
### Claude Code (Manual)
|
|
72
|
-
|
|
73
|
-
1. Copy `.claude/commands/*.md` to your project's `.claude/commands/`
|
|
74
|
-
2. Copy `.claude/rules/` to your project's `.claude/rules/`
|
|
75
|
-
3. Copy `.claude/resources/` to your project's `.claude/resources/`
|
|
76
|
-
4. Add the plan-flow section from `templates/shared/CLAUDE.md.template` to your `CLAUDE.md`
|
|
77
|
-
|
|
78
|
-
### Cursor (Manual)
|
|
79
|
-
|
|
80
|
-
Copy `rules/` to your project's `rules/`
|
|
81
|
-
|
|
82
|
-
### OpenClaw (Manual)
|
|
83
|
-
|
|
84
|
-
Copy `skills/plan-flow/` to your project's `skills/plan-flow/`
|
|
85
|
-
|
|
86
|
-
### Codex CLI (Manual)
|
|
87
|
-
|
|
88
|
-
1. Copy `skills/plan-flow/` to your project's `.agents/skills/plan-flow/`
|
|
89
|
-
2. Add the plan-flow section from `templates/shared/AGENTS.md.template` to your `AGENTS.md`
|
|
90
|
-
|
|
91
69
|
## Commands
|
|
92
70
|
|
|
93
71
|
| Command | Description |
|
|
@@ -100,7 +78,7 @@ Copy `skills/plan-flow/` to your project's `skills/plan-flow/`
|
|
|
100
78
|
| `/review-code` | Review local uncommitted changes |
|
|
101
79
|
| `/review-pr` | Review a Pull Request |
|
|
102
80
|
| `/write-tests` | Generate tests for coverage target |
|
|
103
|
-
| `/flow` |
|
|
81
|
+
| `/flow` | Configure plan-flow settings (autopilot, git control, runtime options) |
|
|
104
82
|
| `/brain` | Capture meeting notes, ideas, brainstorms |
|
|
105
83
|
| `/learn` | Extract reusable patterns or learn a topic step-by-step |
|
|
106
84
|
| `/pattern-validate` | Scan and index global brain patterns |
|
|
@@ -120,7 +98,7 @@ Copy `skills/plan-flow/` to your project's `skills/plan-flow/`
|
|
|
120
98
|
|
|
121
99
|
### Autopilot Mode
|
|
122
100
|
|
|
123
|
-
Enable autopilot with `/flow
|
|
101
|
+
Enable autopilot with `/flow autopilot=true` and the full workflow runs automatically for feature requests:
|
|
124
102
|
|
|
125
103
|
```
|
|
126
104
|
You: "Add dark mode support"
|
|
@@ -135,17 +113,101 @@ You: "Add dark mode support"
|
|
|
135
113
|
|
|
136
114
|
Autopilot classifies every input and only triggers the full flow for feature requests (complexity 3+). Questions, trivial tasks, and slash commands are handled normally.
|
|
137
115
|
|
|
138
|
-
| Usage | Description |
|
|
139
|
-
|-------|-------------|
|
|
140
|
-
| `/flow -enable` | Enable autopilot mode |
|
|
141
|
-
| `/flow -disable` | Disable autopilot mode |
|
|
142
|
-
| `/flow -status` | Check current state |
|
|
143
|
-
|
|
144
116
|
**Mandatory checkpoints** — even in autopilot, the flow always pauses for:
|
|
145
117
|
- **Discovery Q&A**: You answer requirements questions
|
|
146
118
|
- **Plan approval**: You review and approve the plan before execution
|
|
147
119
|
|
|
148
|
-
|
|
120
|
+
## Flow Configuration (`/flow`)
|
|
121
|
+
|
|
122
|
+
The `/flow` command is the central configuration hub. All settings use `key=value` syntax and persist in `flow/.flowconfig` (YAML).
|
|
123
|
+
|
|
124
|
+
| Setting | Values | Default | Description |
|
|
125
|
+
|---------|--------|---------|-------------|
|
|
126
|
+
| `autopilot` | `true/false` | `false` | Enable/disable autopilot mode |
|
|
127
|
+
| `commit` | `true/false` | `false` | Auto-commit after each completed phase |
|
|
128
|
+
| `push` | `true/false` | `false` | Auto-push after all phases + build/test pass |
|
|
129
|
+
| `branch` | any string | current branch | Target branch for git operations |
|
|
130
|
+
|
|
131
|
+
### Examples
|
|
132
|
+
|
|
133
|
+
```bash
|
|
134
|
+
/flow autopilot=true # Enable autopilot
|
|
135
|
+
/flow commit=true push=true # Enable git control (works without autopilot)
|
|
136
|
+
/flow autopilot=true commit=true # Enable both
|
|
137
|
+
/flow branch=development # Set target branch
|
|
138
|
+
/flow -status # Show current config
|
|
139
|
+
/flow -reset # Reset everything
|
|
140
|
+
|
|
141
|
+
# Shorthand: text without key=value enables autopilot and starts flow
|
|
142
|
+
/flow add dark mode support # autopilot=true + start discovery
|
|
143
|
+
/flow commit=true add user auth # autopilot=true + git + start discovery
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### Git Control
|
|
147
|
+
|
|
148
|
+
When `commit=true`, plan-flow auto-commits after each completed execution phase:
|
|
149
|
+
|
|
150
|
+
```
|
|
151
|
+
Phase 1: Setup types → git commit "Phase 1: Setup types — user-auth"
|
|
152
|
+
Phase 2: API endpoints → git commit "Phase 2: API endpoints — user-auth"
|
|
153
|
+
Phase 3: Tests → git commit "Phase 3: Tests — user-auth"
|
|
154
|
+
Build + Test pass → git commit "Complete: user-auth — all phases done"
|
|
155
|
+
→ git push origin development (if push=true)
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
Git control works independently of autopilot — you can use `commit=true` with manual `/execute-plan` runs.
|
|
159
|
+
|
|
160
|
+
## Project Tasklist
|
|
161
|
+
|
|
162
|
+
Each project has a `flow/tasklist.md` that tracks work items across sessions. On session start, active tasks are summarized and you can pick one to work on.
|
|
163
|
+
|
|
164
|
+
Every command automatically updates the tasklist:
|
|
165
|
+
- On start: adds the task to **In Progress**
|
|
166
|
+
- On complete: moves it to **Done** with the date
|
|
167
|
+
- Next step: adds the logical follow-up to **To Do**
|
|
168
|
+
|
|
169
|
+
### Scheduled Tasks
|
|
170
|
+
|
|
171
|
+
Tasks can be scheduled for later execution by linking them to the heartbeat daemon:
|
|
172
|
+
|
|
173
|
+
```
|
|
174
|
+
/flow add to tasklist: implement feature X and execute in 1 hour
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
This creates a tasklist entry linked to a heartbeat one-shot task via `[[]]` references. Both files cross-reference each other for Obsidian navigation.
|
|
178
|
+
|
|
179
|
+
## Heartbeat (Scheduled Automation)
|
|
180
|
+
|
|
181
|
+
The heartbeat daemon is a background process that executes scheduled tasks defined in `flow/heartbeat.md`.
|
|
182
|
+
|
|
183
|
+
### Schedule Syntax
|
|
184
|
+
|
|
185
|
+
| Syntax | Example |
|
|
186
|
+
|--------|---------|
|
|
187
|
+
| `daily at {HH:MM AM/PM}` | `daily at 10:00 PM` |
|
|
188
|
+
| `every {N} hours` | `every 6 hours` |
|
|
189
|
+
| `every {N} minutes` | `every 30 minutes` |
|
|
190
|
+
| `weekly on {day} at {HH:MM}` | `weekly on Monday at 9:00 AM` |
|
|
191
|
+
| `in {N} hours` | `in 2 hours` (one-shot) |
|
|
192
|
+
| `in {N} minutes` | `in 30 minutes` (one-shot) |
|
|
193
|
+
|
|
194
|
+
### Daemon Management
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
npx planflow-ai heartbeat start # Start the daemon
|
|
198
|
+
npx planflow-ai heartbeat stop # Stop the daemon
|
|
199
|
+
npx planflow-ai heartbeat status # Show daemon status
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
The daemon **auto-starts** during `planflow-ai init` if `flow/heartbeat.md` exists.
|
|
203
|
+
|
|
204
|
+
### One-Shot Tasks
|
|
205
|
+
|
|
206
|
+
Tasks with `in {N} hours/minutes` schedules run once and auto-disable after execution. These are used for scheduled tasklist items.
|
|
207
|
+
|
|
208
|
+
### Retry on Active Session
|
|
209
|
+
|
|
210
|
+
If a task fails because a Claude Code session is already active, the daemon retries up to 5 times at 60-second intervals instead of failing permanently.
|
|
149
211
|
|
|
150
212
|
## Complexity Scoring
|
|
151
213
|
|
|
@@ -177,11 +239,13 @@ flow/
|
|
|
177
239
|
├── resources/ # Valuable artifacts captured during skill execution
|
|
178
240
|
├── reviewed-code/ # Code review documents
|
|
179
241
|
├── reviewed-pr/ # PR review documents
|
|
180
|
-
├── tasklist.md # Project task list (
|
|
242
|
+
├── tasklist.md # Project task list (updated in real-time during execution)
|
|
181
243
|
├── memory.md # Persistent artifact tracker (completed work)
|
|
182
244
|
├── heartbeat.md # Scheduled task definitions for the heartbeat daemon
|
|
183
245
|
├── log.md # Heartbeat event log
|
|
184
|
-
|
|
246
|
+
├── ledger.md # Persistent project learning journal
|
|
247
|
+
├── .flowconfig # Central config file (autopilot, git control, settings)
|
|
248
|
+
└── .gitcontrol # Git control settings (backward compat)
|
|
185
249
|
```
|
|
186
250
|
|
|
187
251
|
## Session Start Behaviors
|
|
@@ -192,30 +256,23 @@ When a session starts, plan-flow automatically loads context from your project:
|
|
|
192
256
|
- **Memory** (`flow/memory.md`) — Loads the last 7 days of completed work so context is never lost
|
|
193
257
|
- **Brain** (`flow/brain/index.md`) — Internalizes active features and recent error patterns
|
|
194
258
|
- **Ledger** (`flow/ledger.md`) — Internalizes project-specific lessons learned
|
|
259
|
+
- **Autopilot** (`flow/.flowconfig`) — If `autopilot: true`, activates automatic workflow orchestration
|
|
195
260
|
|
|
196
261
|
## Intelligent Learn Skill
|
|
197
262
|
|
|
198
263
|
The `/learn` skill supports step-by-step teaching. When you run `/learn about <topic>`, it creates a structured curriculum stored as a brain `.md` file. Each step requires your confirmation before progressing, and confirmed steps become learned patterns.
|
|
199
264
|
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
265
|
+
Commands also recommend `/learn` automatically when:
|
|
266
|
+
- New dependencies are added during execution
|
|
267
|
+
- Non-trivial errors are resolved (3+ attempts)
|
|
268
|
+
- The user corrects the approach
|
|
269
|
+
- A new technology or pattern is introduced
|
|
203
270
|
|
|
204
|
-
##
|
|
271
|
+
## Central Obsidian Vault
|
|
205
272
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
## Heartbeat (Scheduled Automation)
|
|
209
|
-
|
|
210
|
-
The `flow/heartbeat.md` file works as a cronjob system. Define scheduled tasks and the heartbeat daemon will execute them automatically:
|
|
211
|
-
|
|
212
|
-
```
|
|
213
|
-
do
|
|
214
|
-
daily at 10:00 PM - research about topic X, create md files and add to brain
|
|
215
|
-
daily at 11:00 AM - using flow --enabled, create feature Y, execute, and push to repo
|
|
216
|
-
```
|
|
273
|
+
All projects are linked into a central Obsidian vault at `~/plan-flow/brain/`. Each `planflow-ai init` creates a project directory in the vault with symlinks for brain subdirectories and the tasklist. A global tasklist at `~/plan-flow/brain/tasklist.md` aggregates task counts across all projects.
|
|
217
274
|
|
|
218
|
-
|
|
275
|
+
Open `~/plan-flow/brain/` as an Obsidian vault to browse all projects in one graph.
|
|
219
276
|
|
|
220
277
|
## Requirements
|
|
221
278
|
|
package/package.json
CHANGED
package/rules/core/_index.mdc
CHANGED
|
@@ -63,6 +63,14 @@ Core rules define the foundational coding standards that apply across the entire
|
|
|
63
63
|
| COR-BR-2 | File templates (feature, error, decision, session) and naming conventions | brain-capture.mdc | 52-100 |
|
|
64
64
|
| COR-BR-3 | Index management (caps, rotation) and brain vs ledger comparison | brain-capture.mdc | 102-140 |
|
|
65
65
|
|
|
66
|
+
### Project Tasklist (`project-tasklist.mdc`)
|
|
67
|
+
|
|
68
|
+
| Code | Description | Source | Lines |
|
|
69
|
+
|------|-------------|--------|-------|
|
|
70
|
+
| COR-TL-1 | Tasklist disk persistence rules and session behavior | project-tasklist.mdc | 10-50 |
|
|
71
|
+
| COR-TL-2 | Command integration and update rules | project-tasklist.mdc | 52-80 |
|
|
72
|
+
| COR-TL-3 | Task management rules (persist to disk, no duplicates, add vs execute) | project-tasklist.mdc | 82-100 |
|
|
73
|
+
|
|
66
74
|
### Resource Capture (`resource-capture.mdc`)
|
|
67
75
|
|
|
68
76
|
| Code | Description | Source | Lines |
|
|
@@ -93,6 +101,9 @@ Core rules define the foundational coding standards that apply across the entire
|
|
|
93
101
|
| COR-AM-1 | Need to understand input classification for autopilot |
|
|
94
102
|
| COR-AM-2 | Need autopilot flow execution steps |
|
|
95
103
|
| COR-AM-3 | Need mandatory checkpoint and override rules |
|
|
104
|
+
| COR-TL-1 | Need tasklist disk persistence and session behavior |
|
|
105
|
+
| COR-TL-2 | Need tasklist command integration rules |
|
|
106
|
+
| COR-TL-3 | Need tasklist management rules |
|
|
96
107
|
| COR-RC-1 | Need resource capture behavior and criteria |
|
|
97
108
|
| COR-RC-2 | Need resource file format and naming conventions |
|
|
98
109
|
|
|
@@ -130,4 +141,5 @@ Core rules define the foundational coding standards that apply across the entire
|
|
|
130
141
|
- `brain-capture.mdc` has `alwaysApply: false` - loaded when `flow/brain/index.md` exists or when brain-capture blocks need processing
|
|
131
142
|
- `complexity-scoring.mdc` has `alwaysApply: false` - loaded on-demand when needed for planning
|
|
132
143
|
- `autopilot-mode.mdc` has `alwaysApply: false` - loaded when autopilot mode is active (`flow/.autopilot` exists)
|
|
144
|
+
- `project-tasklist.mdc` has `alwaysApply: false` - loaded when `flow/tasklist.md` exists or when tasks are being managed
|
|
133
145
|
- `resource-capture.mdc` has `alwaysApply: false` - loaded during skill execution to watch for valuable reference materials
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Project tasklist persistence - ensures tasks are always written to flow/tasklist.md on disk. Include when working with tasks, backlogs, or when flow/tasklist.md exists."
|
|
3
|
+
alwaysApply: false
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Project Tasklist
|
|
7
|
+
|
|
8
|
+
## Purpose
|
|
9
|
+
|
|
10
|
+
A persistent project todo list that tracks work items across sessions. The tasklist is loaded at session start to provide continuity and help users pick up where they left off.
|
|
11
|
+
|
|
12
|
+
**Location**: `flow/tasklist.md`
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## CRITICAL: All Tasks MUST Be Written to Disk
|
|
17
|
+
|
|
18
|
+
**NEVER keep tasks in-memory only.** Every task addition, status change, or update MUST be written to `flow/tasklist.md` immediately. If a user asks to add tasks to the tasklist, you MUST edit the file — not just acknowledge the tasks in conversation. The tasklist is a **file on disk**, not a conversation artifact.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Behavior
|
|
23
|
+
|
|
24
|
+
### On Session Start
|
|
25
|
+
|
|
26
|
+
1. Check if `flow/tasklist.md` exists
|
|
27
|
+
2. If it exists: read it silently and internalize the content
|
|
28
|
+
3. Present a brief summary of active tasks:
|
|
29
|
+
- Count of **In Progress** items
|
|
30
|
+
- Count of **To Do** items
|
|
31
|
+
4. Ask the user if they want to pick a task from the list
|
|
32
|
+
5. Do NOT read the full tasklist aloud — just summarize counts and top items
|
|
33
|
+
|
|
34
|
+
### During Work
|
|
35
|
+
|
|
36
|
+
- When a task is picked by the user, mark it as **In Progress** in `flow/tasklist.md`
|
|
37
|
+
- When a task is completed (skill finishes successfully), move it to **Done** with the completion date
|
|
38
|
+
- When new work items are discovered during execution, add them to **To Do**
|
|
39
|
+
- Update `flow/tasklist.md` in real-time as work progresses
|
|
40
|
+
- **EVERY update MUST be persisted to `flow/tasklist.md` — no exceptions**
|
|
41
|
+
|
|
42
|
+
### Task Format
|
|
43
|
+
|
|
44
|
+
```markdown
|
|
45
|
+
## In Progress
|
|
46
|
+
|
|
47
|
+
- [ ] Task description — started {YYYY-MM-DD}
|
|
48
|
+
|
|
49
|
+
## To Do
|
|
50
|
+
|
|
51
|
+
- [ ] Task description
|
|
52
|
+
|
|
53
|
+
## Done
|
|
54
|
+
|
|
55
|
+
- [x] Task description — completed {YYYY-MM-DD}
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Command Integration
|
|
61
|
+
|
|
62
|
+
Every plan-flow command MUST update the tasklist at specific points:
|
|
63
|
+
|
|
64
|
+
| Command | On Start | On Complete | Next Task Added |
|
|
65
|
+
|---------|----------|-------------|-----------------|
|
|
66
|
+
| `/discovery` | Add "Discovery: {feature}" → In Progress | Move to Done | Add "Create plan for {feature}" → To Do |
|
|
67
|
+
| `/create-plan` | Add "Plan: {feature}" → In Progress | Move to Done | Add "Execute plan for {feature}" → To Do |
|
|
68
|
+
| `/execute-plan` | Add "Execute: {feature}" → In Progress | Move to Done | Add "Review code for {feature}" → To Do |
|
|
69
|
+
| `/review-code` | Add "Review: {scope}" → In Progress | Move to Done | — |
|
|
70
|
+
| `/review-pr` | Add "Review PR: #{number}" → In Progress | Move to Done | — |
|
|
71
|
+
| `/write-tests` | Add "Tests: {scope}" → In Progress | Move to Done | — |
|
|
72
|
+
|
|
73
|
+
### Update Rules
|
|
74
|
+
|
|
75
|
+
1. **On command start**: Check if the task already exists. If yes, move it to In Progress. If no, add it.
|
|
76
|
+
2. **On command complete**: Move from In Progress to Done with today's date.
|
|
77
|
+
3. **Next step task**: Add the logical next step to To Do.
|
|
78
|
+
4. **User requests**: When the user asks to add tasks outside a command, add them to **To Do** in `flow/tasklist.md` immediately.
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Rules
|
|
83
|
+
|
|
84
|
+
1. **Summarize, don't dump**: On session start, show counts and top 3 items, not the full list
|
|
85
|
+
2. **Real-time updates**: Update tasklist immediately when status changes, don't batch
|
|
86
|
+
3. **No duplicates**: Before adding a task, check if it already exists (check all sections)
|
|
87
|
+
4. **User-driven**: Only pick/execute tasks when the user explicitly asks to
|
|
88
|
+
5. **Add vs Execute**: "Add to tasklist" = add to To Do. "Do this" = execute. They are separate actions.
|
|
89
|
+
6. **Always update**: Every command MUST update the tasklist — this is not optional
|
|
90
|
+
7. **Persist to disk — ALWAYS**: Every task addition or status change MUST be written to `flow/tasklist.md`. NEVER keep tasks only in conversation memory. If you added tasks but did not write to the file, you have a bug — fix it immediately.
|
|
@@ -269,3 +269,11 @@ Before completing the plan, verify:
|
|
|
269
269
|
| `flow/plans/` | Output folder for plan documents |
|
|
270
270
|
| `flow/discovery/` | Input discovery documents |
|
|
271
271
|
|
|
272
|
+
## Tasklist Updates
|
|
273
|
+
|
|
274
|
+
Update `flow/tasklist.md` at these points (you MUST write to the file, not keep in memory):
|
|
275
|
+
|
|
276
|
+
1. **On start**: Add "Plan: {feature}" to **In Progress** (or move it from To Do if it already exists)
|
|
277
|
+
2. **On complete**: Move "Plan: {feature}" to **Done** with today's date
|
|
278
|
+
3. **Next step**: Add "Execute plan for {feature}" to **To Do**
|
|
279
|
+
|
|
@@ -296,3 +296,11 @@ Before completing discovery, verify:
|
|
|
296
296
|
| `.cursor/rules/tools/interactive-questions-tool.mdc` | Interactive Questions UI workflow |
|
|
297
297
|
| `flow/discovery/` | Output folder for discovery docs |
|
|
298
298
|
|
|
299
|
+
## Tasklist Updates
|
|
300
|
+
|
|
301
|
+
Update `flow/tasklist.md` at these points (you MUST write to the file, not keep in memory):
|
|
302
|
+
|
|
303
|
+
1. **On start**: Add "Discovery: {feature}" to **In Progress** (or move it from To Do if it already exists)
|
|
304
|
+
2. **On complete**: Move "Discovery: {feature}" to **Done** with today's date
|
|
305
|
+
3. **Next step**: Add "Create plan for {feature}" to **To Do**
|
|
306
|
+
|
|
@@ -396,3 +396,11 @@ During this skill's execution, watch for valuable reference materials worth pres
|
|
|
396
396
|
At natural break points, if you encounter information that could be useful for future development (API specs, architecture notes, config references, domain knowledge, etc.), ask the user: "I found something that could be useful for future reference: _{brief description}_. Should I save it to `flow/resources/`?"
|
|
397
397
|
|
|
398
398
|
Only save if the user approves. Do not re-ask if declined.
|
|
399
|
+
|
|
400
|
+
## Tasklist Updates
|
|
401
|
+
|
|
402
|
+
Update `flow/tasklist.md` at these points (you MUST write to the file, not keep in memory):
|
|
403
|
+
|
|
404
|
+
1. **On start**: Add "Execute: {feature}" to **In Progress** (or move it from To Do if it already exists)
|
|
405
|
+
2. **On complete**: Move "Execute: {feature}" to **Done** with today's date
|
|
406
|
+
3. **Next step**: Add "Review code for {feature}" to **To Do**
|
|
@@ -307,3 +307,10 @@ After running this command:
|
|
|
307
307
|
|
|
308
308
|
> The goal is not just to review current changes, but to **improve the codebase patterns over time** by documenting good patterns and preventing anti-patterns from spreading.
|
|
309
309
|
|
|
310
|
+
## Tasklist Updates
|
|
311
|
+
|
|
312
|
+
Update `flow/tasklist.md` at these points (you MUST write to the file, not keep in memory):
|
|
313
|
+
|
|
314
|
+
1. **On start**: Add "Review: {scope}" to **In Progress** (or move it from To Do if it already exists)
|
|
315
|
+
2. **On complete**: Move "Review: {scope}" to **Done** with today's date
|
|
316
|
+
|
|
@@ -497,3 +497,10 @@ Authentication is handled by the **[PR Authentication Tool](../tools/auth-pr-too
|
|
|
497
497
|
- Error handling
|
|
498
498
|
- Security notes
|
|
499
499
|
|
|
500
|
+
## Tasklist Updates
|
|
501
|
+
|
|
502
|
+
Update `flow/tasklist.md` at these points (you MUST write to the file, not keep in memory):
|
|
503
|
+
|
|
504
|
+
1. **On start**: Add "Review PR: #{number}" to **In Progress** (or move it from To Do if it already exists)
|
|
505
|
+
2. **On complete**: Move "Review PR: #{number}" to **Done** with today's date
|
|
506
|
+
|
|
@@ -302,3 +302,10 @@ During this skill's execution, watch for valuable reference materials worth pres
|
|
|
302
302
|
At natural break points, if you encounter information that could be useful for future development (API specs, architecture notes, config references, domain knowledge, etc.), ask the user: "I found something that could be useful for future reference: _{brief description}_. Should I save it to `flow/resources/`?"
|
|
303
303
|
|
|
304
304
|
Only save if the user approves. Do not re-ask if declined.
|
|
305
|
+
|
|
306
|
+
## Tasklist Updates
|
|
307
|
+
|
|
308
|
+
Update `flow/tasklist.md` at these points (you MUST write to the file, not keep in memory):
|
|
309
|
+
|
|
310
|
+
1. **On start**: Add "Tests: {scope} ({target}%)" to **In Progress** (or move it from To Do if it already exists)
|
|
311
|
+
2. **On complete**: Move "Tests: {scope}" to **Done** with today's date
|
|
@@ -33,6 +33,7 @@ A comprehensive skill set for AI-assisted software development with structured w
|
|
|
33
33
|
|---------|-------------|
|
|
34
34
|
| Project Ledger | Persistent learning journal at `flow/ledger.md` - silently captures mistakes, corrections, and project-specific knowledge across sessions |
|
|
35
35
|
| Project Brain | Automatic knowledge capture at `flow/brain/` - records features, errors, decisions, and session logs with Obsidian-compatible `[[wiki-links]]` |
|
|
36
|
+
| Project Tasklist | Persistent todo list at `flow/tasklist.md` — **MUST be written to disk**, never kept in-memory only. Every task addition or status change must edit the file immediately. |
|
|
36
37
|
| Resource Capture | During any skill execution, watches for valuable reference materials (API specs, architecture notes, domain knowledge) and asks user before saving to `flow/resources/` |
|
|
37
38
|
|
|
38
39
|
## Recommended Workflow
|
|
@@ -102,6 +103,7 @@ flow/
|
|
|
102
103
|
3. **Tests Last**: Tests are always the last phase of any implementation plan.
|
|
103
104
|
4. **Build at End Only**: Run build verification only after ALL phases complete.
|
|
104
105
|
5. **Archive When Done**: Move completed discovery and plans to `flow/archive/`.
|
|
106
|
+
6. **Tasklist is a file, not memory**: When adding, moving, or completing tasks, you MUST write changes to `flow/tasklist.md`. NEVER keep tasks only in conversation memory.
|
|
105
107
|
|
|
106
108
|
## Configuration
|
|
107
109
|
|
|
@@ -31,12 +31,23 @@ The Project Ledger (`flow/ledger.md`) is always active. It silently captures pro
|
|
|
31
31
|
|
|
32
32
|
The Project Brain (`flow/brain/`) automatically captures features, errors, decisions, and session logs during skill execution. If `flow/brain/index.md` exists, read it silently at session start. Uses Obsidian-compatible `[[wiki-links]]` for cross-referencing.
|
|
33
33
|
|
|
34
|
+
## Project Tasklist
|
|
35
|
+
|
|
36
|
+
The Project Tasklist (`flow/tasklist.md`) tracks work items across sessions. If it exists, read it silently at session start and present a brief summary of active task counts.
|
|
37
|
+
|
|
38
|
+
**CRITICAL**: When adding, moving, or completing tasks, you MUST write changes to `flow/tasklist.md` on disk. NEVER keep tasks only in conversation memory. If the user says "add to tasklist", read the file, then edit it. The tasklist is a **file on disk**, not a conversation artifact.
|
|
39
|
+
|
|
40
|
+
## Project Memory
|
|
41
|
+
|
|
42
|
+
The Project Memory (`flow/memory.md`) tracks completed skill executions. If it exists, read it silently at session start and internalize the last 7 days of completed work.
|
|
43
|
+
|
|
34
44
|
## Critical Rules
|
|
35
45
|
|
|
36
46
|
1. **No Auto-Chaining**: Never auto-invoke the next command. Wait for user. **Exception**: When autopilot mode is ON (`flow/.autopilot` exists), commands auto-chain per the autopilot flow skill.
|
|
37
47
|
2. **Discovery First**: Recommend `/discovery-plan` before `/create-plan` for new features.
|
|
38
48
|
3. **Tests Last**: Tests are always the last phase of any implementation plan.
|
|
39
49
|
4. **Build at End Only**: Run `npm run build` only after ALL phases complete.
|
|
50
|
+
5. **Tasklist is a file, not memory**: When adding, moving, or completing tasks, you MUST write changes to `flow/tasklist.md`. NEVER keep tasks only in conversation memory.
|
|
40
51
|
|
|
41
52
|
## Flow Directory Structure
|
|
42
53
|
|
|
@@ -53,7 +64,13 @@ flow/
|
|
|
53
64
|
├── references/ # Reference materials
|
|
54
65
|
├── reviewed-code/ # Code review documents
|
|
55
66
|
├── reviewed-pr/ # PR review documents
|
|
56
|
-
|
|
67
|
+
├── tasklist.md # Project todo list (updated in real-time during execution)
|
|
68
|
+
├── memory.md # Persistent artifact tracker (completed skill executions)
|
|
69
|
+
├── heartbeat.md # Scheduled task definitions for the heartbeat daemon
|
|
70
|
+
├── log.md # Heartbeat log of important events
|
|
71
|
+
├── ledger.md # Persistent project learning journal
|
|
72
|
+
├── .flowconfig # Central config file (autopilot, git control, settings)
|
|
73
|
+
└── .gitcontrol # Git control settings — backward compat (prefer .flowconfig)
|
|
57
74
|
```
|
|
58
75
|
|
|
59
76
|
## Complexity Scoring
|
|
@@ -27,7 +27,9 @@
|
|
|
27
27
|
|
|
28
28
|
- **Project Ledger**: If `flow/ledger.md` exists, read it silently and internalize learnings. Update it when you learn project-specific lessons. See `.claude/resources/core/project-ledger.md` for full rules.
|
|
29
29
|
- **Project Brain**: If `flow/brain/index.md` exists, read it silently and internalize active features and recent errors. See `.claude/resources/core/brain-capture.md` for full rules.
|
|
30
|
-
- **
|
|
30
|
+
- **Project Tasklist**: If `flow/tasklist.md` exists, read it silently and present a brief summary of active tasks. See `.claude/resources/core/project-tasklist.md` for full rules.
|
|
31
|
+
- **Project Memory**: If `flow/memory.md` exists, read it silently and internalize the last 7 days of completed work. See `.claude/resources/core/project-memory.md` for full rules.
|
|
32
|
+
- **Autopilot Mode**: If `flow/.flowconfig` has `autopilot: true` (or `flow/.autopilot` exists for backward compat), read `.claude/resources/core/autopilot-mode.md` and follow its workflow for every user input.
|
|
31
33
|
|
|
32
34
|
## Critical Rules
|
|
33
35
|
|
|
@@ -35,6 +37,7 @@
|
|
|
35
37
|
2. **Discovery First**: `/discovery-plan` is **required** before `/create-plan`. Plans cannot be created without a discovery document. No exceptions.
|
|
36
38
|
3. **Tests Last**: Tests are always the last phase of any implementation plan.
|
|
37
39
|
4. **Build at End Only**: Run `npm run build` only after ALL phases complete.
|
|
40
|
+
5. **Tasklist is a file, not memory**: When adding, moving, or completing tasks, you MUST use the Edit tool to write changes to `flow/tasklist.md`. NEVER keep tasks only in conversation memory. If the user says "add to tasklist", read `flow/tasklist.md`, then Edit it. See `.claude/resources/core/project-tasklist.md` for full rules.
|
|
38
41
|
|
|
39
42
|
## Flow Directory Structure
|
|
40
43
|
|
|
@@ -51,7 +54,13 @@ flow/
|
|
|
51
54
|
├── references/ # Reference materials
|
|
52
55
|
├── reviewed-code/ # Code review documents
|
|
53
56
|
├── reviewed-pr/ # PR review documents
|
|
54
|
-
|
|
57
|
+
├── tasklist.md # Project todo list (updated in real-time during execution)
|
|
58
|
+
├── memory.md # Persistent artifact tracker (completed skill executions)
|
|
59
|
+
├── heartbeat.md # Scheduled task definitions for the heartbeat daemon
|
|
60
|
+
├── log.md # Heartbeat log of important events
|
|
61
|
+
├── ledger.md # Persistent project learning journal
|
|
62
|
+
├── .flowconfig # Central config file (autopilot, git control, settings)
|
|
63
|
+
└── .gitcontrol # Git control settings — backward compat (prefer .flowconfig)
|
|
55
64
|
```
|
|
56
65
|
|
|
57
66
|
## Central Vault
|