@jakkrichm/create-nexus-devflow 2.7.0 → 2.9.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 +2 -2
- package/dist/bin/create-nexus-devflow.d.ts +2 -2
- package/dist/bin/create-nexus-devflow.js +130 -0
- package/dist/bin/create-nexus-devflow.js.map +1 -1
- package/dist/lib/branch-context.d.ts +1 -0
- package/dist/lib/branch-context.js +14 -9
- package/dist/lib/branch-context.js.map +1 -1
- package/dist/lib/current-work.js +10 -22
- package/dist/lib/current-work.js.map +1 -1
- package/dist/lib/doctor.js +44 -6
- package/dist/lib/doctor.js.map +1 -1
- package/dist/lib/findings.js +14 -10
- package/dist/lib/findings.js.map +1 -1
- package/dist/lib/mcp.js +3 -3
- package/dist/lib/mcp.js.map +1 -1
- package/dist/lib/skill-manager.d.ts +50 -0
- package/dist/lib/skill-manager.js +372 -0
- package/dist/lib/skill-manager.js.map +1 -0
- package/dist/lib/swarm-orchestrator.js +14 -8
- package/dist/lib/swarm-orchestrator.js.map +1 -1
- package/dist/lib/workflow-state.js +3 -1
- package/dist/lib/workflow-state.js.map +1 -1
- package/dist/scripts/prepare-template.js +0 -19
- package/dist/scripts/prepare-template.js.map +1 -1
- package/package.json +2 -2
- package/template/.agents/skills/audit/SKILL.md +7 -7
- package/template/.agents/skills/autopilot/SKILL.md +34 -58
- package/template/.agents/skills/brief/SKILL.md +1 -1
- package/template/.agents/skills/check/SKILL.md +4 -4
- package/template/.agents/skills/complete/SKILL.md +13 -46
- package/template/.agents/skills/continuous/SKILL.md +8 -9
- package/template/.agents/skills/devflow/SKILL.md +18 -13
- package/template/.agents/skills/discovery/SKILL.md +8 -3
- package/template/.agents/skills/doctor/SKILL.md +7 -11
- package/template/.agents/skills/feature/SKILL.md +5 -6
- package/template/.agents/skills/fix/SKILL.md +2 -2
- package/template/.agents/skills/implement/SKILL.md +11 -12
- package/template/.agents/skills/release/SKILL.md +1 -1
- package/template/.agents/skills/report-html/SKILL.md +3 -3
- package/template/.agents/skills/rollback/SKILL.md +4 -6
- package/template/.agents/skills/status/SKILL.md +20 -27
- package/template/.agents/skills/try/SKILL.md +5 -6
- package/template/.claude/skills/audit/SKILL.md +7 -7
- package/template/.claude/skills/autopilot/SKILL.md +34 -58
- package/template/.claude/skills/brief/SKILL.md +1 -1
- package/template/.claude/skills/check/SKILL.md +4 -4
- package/template/.claude/skills/complete/SKILL.md +13 -46
- package/template/.claude/skills/continuous/SKILL.md +8 -9
- package/template/.claude/skills/devflow/SKILL.md +18 -13
- package/template/.claude/skills/discovery/SKILL.md +8 -3
- package/template/.claude/skills/doctor/SKILL.md +7 -11
- package/template/.claude/skills/feature/SKILL.md +5 -6
- package/template/.claude/skills/fix/SKILL.md +2 -2
- package/template/.claude/skills/implement/SKILL.md +11 -12
- package/template/.claude/skills/release/SKILL.md +1 -1
- package/template/.claude/skills/report-html/SKILL.md +3 -3
- package/template/.claude/skills/rollback/SKILL.md +4 -6
- package/template/.claude/skills/status/SKILL.md +20 -27
- package/template/.claude/skills/try/SKILL.md +5 -6
- package/template/AGENTS.md +18 -19
- package/template/devflow/build-plan.md +9 -0
- package/template/devflow/context/ai-interaction.md +55 -16
- package/template/devflow/reference/feature-spec-template.md +2 -2
- package/template/devflow/reference/running-id-contract.md +0 -3
- package/template/devflow/context/current-feature.md +0 -3
- package/template/devflow/context/current-stage.md +0 -11
- package/template/devflow/context/findings.md +0 -10
|
@@ -13,7 +13,7 @@ Where this sits in the workflow:
|
|
|
13
13
|
reviewed) merge + log)
|
|
14
14
|
|
|
15
15
|
`/feature`, `/fix`, or `/rollback` wrote the spec to
|
|
16
|
-
`devflow/context/{xxx-slug}/spec.md`
|
|
16
|
+
`devflow/context/{xxx-slug}/spec.md` and stopped.
|
|
17
17
|
This skill turns that spec into code, following the build loop in
|
|
18
18
|
`devflow/context/ai-interaction.md`, without vibe coding: small steps, a visible diff plus
|
|
19
19
|
a plain-English explanation for each, testing, and iteration until it works, all
|
|
@@ -24,11 +24,11 @@ checkpoint after each step; the work-level commit, merging, and logging are
|
|
|
24
24
|
## Multi-Run Target Resolution
|
|
25
25
|
|
|
26
26
|
- **Given an ID or name** (e.g. `/implement 12`, `/implement 012`, `/implement kanban`) -> locates the matching run folder `devflow/context/{xxx-slug}/`, checks out `feature/{xxx-slug}`, and loads only that run's `spec.md`.
|
|
27
|
-
- **With no argument** (`/implement`) -> checks current git branch
|
|
27
|
+
- **With no argument** (`/implement`) -> checks current git branch matching `feature/{xxx-slug}`, or auto-picks if only 1 spec is active in `devflow/context/`, or prompts the user if multiple specs are queued.
|
|
28
28
|
|
|
29
29
|
## Before you start
|
|
30
30
|
|
|
31
|
-
Read the target spec from `devflow/context/{xxx-slug}/spec.md
|
|
31
|
+
Read the target spec from `devflow/context/{xxx-slug}/spec.md`. If it has no real spec (missing or its
|
|
32
32
|
status is already complete), stop and tell the user to run `/feature` (for a
|
|
33
33
|
planned feature), `/fix` (for an ad-hoc bug or change), or `/rollback` (for a
|
|
34
34
|
completed feature reversal) first. Pull the
|
|
@@ -45,13 +45,12 @@ feature was started earlier and interrupted (often a cleared context). The spec
|
|
|
45
45
|
its ticked steps are files, so pick up where it left off: read which steps are done,
|
|
46
46
|
check the git branch and `git status`/log to see what is committed and what is still
|
|
47
47
|
in the working tree, then continue from the **first unchecked step** instead of
|
|
48
|
-
starting over.
|
|
49
|
-
`current-feature.md` every session.
|
|
48
|
+
starting over.
|
|
50
49
|
|
|
51
50
|
## Step 1 - branch
|
|
52
51
|
|
|
53
|
-
Create and check out a branch named from the spec: `feature
|
|
54
|
-
`fix
|
|
52
|
+
Create and check out a branch named from the spec: `feature/{xxx-slug}` for a feature,
|
|
53
|
+
`fix/{xxx-slug}` for a fix, or `rollback/{xxx-slug}` for a Type: Rollback spec. If the
|
|
55
54
|
project isn't a git repo yet, say so and ask the user to run `git init` first;
|
|
56
55
|
the loop needs branches. On resume, the branch already exists - check it out
|
|
57
56
|
instead of creating a new one.
|
|
@@ -60,7 +59,7 @@ instead of creating a new one.
|
|
|
60
59
|
|
|
61
60
|
For a rollback spec, do not hand-delete the old feature and do not run a whole
|
|
62
61
|
commit `git revert`. Completed feature commits also contain Blueprint history and
|
|
63
|
-
plan bookkeeping, while `
|
|
62
|
+
plan bookkeeping, while `devflow/context/{xxx-slug}/spec.md` now contains the active rollback
|
|
64
63
|
spec. Reversing the whole commit would damage that state.
|
|
65
64
|
|
|
66
65
|
Before the first rollback build step:
|
|
@@ -133,9 +132,9 @@ Work through the spec's build steps in order, one at a time. For each step:
|
|
|
133
132
|
Repeat until it works and the user approves. Nothing is committed until the
|
|
134
133
|
user is happy with the step.
|
|
135
134
|
6. **Mark it done, then prompt to move on.** Once the step is approved, check that
|
|
136
|
-
step off (`- [x]`) in `devflow/context/
|
|
135
|
+
step off (`- [x]`) in `devflow/context/{xxx-slug}/spec.md` so progress survives a context
|
|
137
136
|
clear. If the step repaired a finding tracked in
|
|
138
|
-
`devflow/context/findings.md`, set that finding's status to `fixed` now too
|
|
137
|
+
`devflow/context/{xxx-slug}/findings.md`, set that finding's status to `fixed` now too
|
|
139
138
|
and note the repair in its **Resolution** line. Never set `closed`: a repair
|
|
140
139
|
is re-reviewed by `/audit` before it clears, because a fix can introduce a
|
|
141
140
|
worse defect than the one it removed. Then offer a short choice, noting that checkpoints are optional since
|
|
@@ -164,12 +163,12 @@ pass before any commit.
|
|
|
164
163
|
|
|
165
164
|
## Step 3 - hand off to /complete
|
|
166
165
|
|
|
167
|
-
Before handing off, check `devflow/context/findings.md`. A P0 or P1 finding
|
|
166
|
+
Before handing off, check `devflow/context/{xxx-slug}/findings.md`. A P0 or P1 finding
|
|
168
167
|
still `open` or `fixed` there means `/complete` will refuse the merge, so close
|
|
169
168
|
the loop now:
|
|
170
169
|
|
|
171
170
|
- Repair each `open` P0 or P1 as an extra reviewed step. First append it to the
|
|
172
|
-
spec's build steps in `
|
|
171
|
+
spec's build steps in `devflow/context/{xxx-slug}/spec.md` (`- [ ] Repair F-03 - <title>`) so
|
|
173
172
|
the repair is on the record and survives a context clear, then run the same
|
|
174
173
|
loop as Step 2: smallest change, diff, plain-English explanation, evidence.
|
|
175
174
|
Check the step off and mark the finding `fixed` together.
|
|
@@ -46,7 +46,7 @@ Read:
|
|
|
46
46
|
- `devflow/project-plan.md`
|
|
47
47
|
- `devflow/build-plan.md`
|
|
48
48
|
- `devflow/context/project-overview.md`
|
|
49
|
-
- `devflow/context/
|
|
49
|
+
- `devflow/context/{xxx-slug}/spec.md` (when a task is active)
|
|
50
50
|
- package or build files such as `package.json`, lockfiles, framework config,
|
|
51
51
|
Dockerfile, `render.yaml`, `vercel.json`, `.env.example`, and README files
|
|
52
52
|
- git branch and working tree status
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: report-html
|
|
3
|
-
description: "[devflow] Standalone HTML Report Generator - render an interactive standalone HTML dashboard from
|
|
3
|
+
description: "[devflow] Standalone HTML Report Generator - render an interactive standalone HTML dashboard from devflow/context/{xxx-slug}/spec.md or history archives on demand."
|
|
4
4
|
argument-hint: "[{running-id or workspace path}]"
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -8,7 +8,7 @@ argument-hint: "[{running-id or workspace path}]"
|
|
|
8
8
|
|
|
9
9
|
$ARGUMENTS
|
|
10
10
|
|
|
11
|
-
Standalone companion command to generate an interactive, self-contained HTML report dashboard on demand from
|
|
11
|
+
Standalone companion command to generate an interactive, self-contained HTML report dashboard on demand from task-specific context `devflow/context/{xxx-slug}/spec.md`, or archived history files in `devflow/history/`.
|
|
12
12
|
|
|
13
13
|
> [!NOTE]
|
|
14
14
|
> HTML reports are **never automatically generated** during normal mainline stages (`/complete`). Use this command whenever you or stakeholders wish to view or share an interactive web report.
|
|
@@ -26,7 +26,7 @@ When invoked:
|
|
|
26
26
|
|
|
27
27
|
### 1. Identify Target Run
|
|
28
28
|
1. Locate target markdown document:
|
|
29
|
-
- Active Living Spec: `devflow/context/
|
|
29
|
+
- Active Living Spec: `devflow/context/{xxx-slug}/spec.md`
|
|
30
30
|
- Archived History: `devflow/history/{features|fixes|rollbacks}/{xxx-slug}.md`
|
|
31
31
|
2. Parse spec sections, checklist steps, QA evidence, and verification logs.
|
|
32
32
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: rollback
|
|
3
|
-
description: "[devflow] Plan a safe reversal of a completed Blueprint feature using its archived spec and squashed git commit. Finds the exact feature commit, reviews later commits for dependency risk, writes a Type: Rollback spec to devflow/context/
|
|
3
|
+
description: "[devflow] Plan a safe reversal of a completed Blueprint feature using its archived spec and squashed git commit. Finds the exact feature commit, reviews later commits for dependency risk, writes a Type: Rollback spec to devflow/context/{xxx-slug}/spec.md, and stops for review before /implement applies any code change. Use when the user runs /rollback, asks to remove or undo a completed feature, or wants to return the app to its pre-feature behavior without erasing Blueprint history."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# rollback - safely reverse a completed feature
|
|
@@ -33,14 +33,12 @@ the feature was removed.
|
|
|
33
33
|
|
|
34
34
|
## Step 0 - preflight
|
|
35
35
|
|
|
36
|
-
Read `AGENTS.md`, `devflow/build-plan.md`,
|
|
37
|
-
`devflow/context/current-feature.md`, the completed feature archives, and git
|
|
36
|
+
Read `AGENTS.md`, `devflow/build-plan.md`, the completed feature archives, and git
|
|
38
37
|
state.
|
|
39
38
|
|
|
40
39
|
Stop before writing when:
|
|
41
40
|
|
|
42
41
|
- the directory is not a git repository
|
|
43
|
-
- `current-feature.md` already holds active work
|
|
44
42
|
- the working tree is dirty, including unrelated untracked work
|
|
45
43
|
- the current branch is not the local main or default branch
|
|
46
44
|
- the target is not a checked build-plan feature with a matching archive
|
|
@@ -107,8 +105,8 @@ remediation or explicitly plan the dependent rollbacks.
|
|
|
107
105
|
|
|
108
106
|
## Step 4 - write the rollback spec
|
|
109
107
|
|
|
110
|
-
Write `devflow/context/
|
|
111
|
-
`reference/rollback-spec-template.md`. Fill in:
|
|
108
|
+
Allocate sequential ID (`xxx-slug`) and create `devflow/context/{xxx-slug}/`. Write `devflow/context/{xxx-slug}/spec.md` using
|
|
109
|
+
`reference/rollback-spec-template.md`. Also initialize `stage.md` and `findings.md` in that folder. Fill in:
|
|
112
110
|
|
|
113
111
|
- target feature, archive, exact commit, and parent commit
|
|
114
112
|
- user's reason
|
|
@@ -34,14 +34,13 @@ state.
|
|
|
34
34
|
1. **Build plan** - `devflow/build-plan.md`. Count checked vs unchecked leaf
|
|
35
35
|
items. Name the next unchecked leaf, the same target `/feature` would pick,
|
|
36
36
|
and note if a parent item was split into sub-items (`4a`, `4b`, ...).
|
|
37
|
-
2. **Current work** - `devflow/context/
|
|
38
|
-
progress
|
|
39
|
-
present, report its type
|
|
40
|
-
first unchecked step where `/implement` resumes.
|
|
41
|
-
3. **Findings** - `devflow/context/findings.md`. Count findings by status and
|
|
37
|
+
2. **Current work & Spec Queue** - scan `devflow/context/{xxx-slug}/`. Is something in
|
|
38
|
+
progress? If a feature, fix, or rollback spec is
|
|
39
|
+
present, report its type, name, running ID, which build steps are checked, and the
|
|
40
|
+
first unchecked step where `/implement` resumes. If multiple tasks are queued, list the active spec queue.
|
|
41
|
+
3. **Findings** - `devflow/context/{xxx-slug}/findings.md`. Count findings by status and
|
|
42
42
|
report open and fixed counts next to build-plan progress. Call out any P0 or
|
|
43
|
-
P1 still `open` or `fixed` by ID, since those block `/complete`.
|
|
44
|
-
file means no findings.
|
|
43
|
+
P1 still `open` or `fixed` by ID, since those block `/complete`.
|
|
45
44
|
4. **Overview freshness** - if `devflow/context/project-overview.md` is missing,
|
|
46
45
|
or if `project-plan.md` or `build-plan.md` appears newer than it by filesystem
|
|
47
46
|
time, mention that `/overview` should run before new feature work.
|
|
@@ -49,38 +48,32 @@ state.
|
|
|
49
48
|
changes, roughly how many files changed, last commit subject, and whether the
|
|
50
49
|
branch is ahead of its remote. If the directory is not a git repo, say so and
|
|
51
50
|
skip this part rather than failing.
|
|
52
|
-
6. **Progress drift** - flag active
|
|
53
|
-
matching `feature
|
|
54
|
-
not completed, or disagreement between `build-plan.md` and
|
|
55
|
-
`current-feature.md`. A rollback legitimately targets a checked build-plan
|
|
56
|
-
item until `/complete` unchecks it, so do not compare it to the next unchecked
|
|
57
|
-
feature.
|
|
51
|
+
6. **Progress drift** - flag active task on `main`, a spec in progress but no
|
|
52
|
+
matching `feature/{xxx-slug}`, `fix/{xxx-slug}`, or `rollback/{xxx-slug}` branch, all spec steps checked but
|
|
53
|
+
not completed, or disagreement between `build-plan.md` and active specs.
|
|
58
54
|
|
|
59
55
|
## Output
|
|
60
56
|
|
|
61
57
|
A short, scannable summary, not a wall of text. Aim for something like:
|
|
62
58
|
|
|
63
|
-
Status: Building feature
|
|
64
|
-
Plans: Overview current. Build plan
|
|
65
|
-
Current work: Step 2 of
|
|
66
|
-
Findings:
|
|
67
|
-
Git: branch feature/
|
|
68
|
-
Watch: F-02 is fixed but not re-reviewed; it blocks /complete until /audit closes it.
|
|
59
|
+
Status: Building feature 061 - Pure Multi-Run Architecture
|
|
60
|
+
Plans: Overview current. Build plan 13 of 14 complete.
|
|
61
|
+
Current work: Step 2 of 4 done. Next step: Update Directives & Documentation.
|
|
62
|
+
Findings: 0 blockers in 061-pure-multi-run-task-isolated-architecture/findings.md.
|
|
63
|
+
Git: branch feature/061-pure-multi-run-task-isolated-architecture, 3 uncommitted files.
|
|
69
64
|
|
|
70
|
-
Next action: run /implement for
|
|
65
|
+
Next action: run /implement 061 for Task 2.
|
|
71
66
|
|
|
72
67
|
End with a single suggested next action, chosen in this order:
|
|
73
68
|
|
|
74
69
|
- The overview is missing or stale and no feature is in progress -> `/overview`.
|
|
75
|
-
- A spec is in progress with unchecked steps -> `/implement` and name the step.
|
|
76
|
-
- A spec is in progress and all implementation steps are checked -> `/check` if
|
|
70
|
+
- A spec is in progress with unchecked steps -> `/implement [id]` and name the step.
|
|
71
|
+
- A spec is in progress and all implementation steps are checked -> `/check [id]` if
|
|
77
72
|
proof is not recorded, `/try` if the user wants a manual review path,
|
|
78
|
-
`/implement` when a P0 or P1 finding is still `open` (the repair is an extra
|
|
73
|
+
`/implement [id]` when a P0 or P1 finding is still `open` (the repair is an extra
|
|
79
74
|
reviewed step), `/audit` when one is `fixed` and awaiting re-review (both
|
|
80
|
-
block `/complete`), otherwise `/complete`.
|
|
81
|
-
-
|
|
82
|
-
`/fix <finding id>`; when one is `fixed`, `/audit` to re-review and close it.
|
|
83
|
-
- `current-feature.md` is the reset stub and unchecked build-plan items remain ->
|
|
75
|
+
block `/complete`), otherwise `/complete [id]`.
|
|
76
|
+
- No active tasks in `devflow/context/` and unchecked build-plan items remain ->
|
|
84
77
|
`/feature` and name the next build-plan item.
|
|
85
78
|
- All build-plan items are checked -> say the current milestone is complete;
|
|
86
79
|
suggest hardening, release, or docs when appropriate, or
|
|
@@ -23,10 +23,10 @@ merge, push, or run destructive commands.
|
|
|
23
23
|
Optional scope:
|
|
24
24
|
|
|
25
25
|
- no argument: use the active feature, fix, or rollback in
|
|
26
|
-
`devflow/context/
|
|
26
|
+
`devflow/context/{xxx-slug}/spec.md`
|
|
27
27
|
- `latest`: use the most recent archive under `devflow/history/features/`,
|
|
28
28
|
`devflow/history/fixes/`, or `devflow/history/rollbacks/`
|
|
29
|
-
- a step name or number: focus the guide on that
|
|
29
|
+
- a step name or number: focus the guide on that active step
|
|
30
30
|
- a path, route, or command: include it as the main thing to try
|
|
31
31
|
|
|
32
32
|
If there is no active feature and no useful archive, ask what change the user
|
|
@@ -37,16 +37,15 @@ wants to try instead of guessing.
|
|
|
37
37
|
Read:
|
|
38
38
|
|
|
39
39
|
- `AGENTS.md`
|
|
40
|
-
- `devflow/context/
|
|
40
|
+
- `devflow/context/{xxx-slug}/spec.md` (or active task workspace)
|
|
41
41
|
- `devflow/context/project-overview.md`
|
|
42
42
|
- `devflow/context/coding-standards.md`
|
|
43
43
|
- `devflow/build-plan.md`
|
|
44
44
|
- latest files under `devflow/history/features/`,
|
|
45
|
-
`devflow/history/fixes/`, and `devflow/history/rollbacks/`, if
|
|
46
|
-
feature is reset
|
|
45
|
+
`devflow/history/fixes/`, and `devflow/history/rollbacks/`, if no task is active
|
|
47
46
|
- git branch and working tree status
|
|
48
47
|
|
|
49
|
-
Prefer the active spec. If
|
|
48
|
+
Prefer the active task spec. If no active task directory exists, use the most
|
|
50
49
|
recent archived feature, fix, or rollback by filename or modification time and
|
|
51
50
|
say that is what you used.
|
|
52
51
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: audit
|
|
3
|
-
description: "[devflow] Read-only code audit for a Blueprint project, except for the findings ledger it maintains at devflow/context/findings.md. Reviews the active feature, changed files, a selected path, or the full project through all concerns or a focused quality, security, performance, or tests lens. Use when the user runs /audit, invokes $audit, asks for a code or quality audit, security review, performance review, test quality review, dead-code or duplication check, vibe-coded project cleanup, or standards review."
|
|
3
|
+
description: "[devflow] Read-only code audit for a Blueprint project, except for the findings ledger it maintains at devflow/context/{xxx-slug}/findings.md. Reviews the active feature, changed files, a selected path, or the full project through all concerns or a focused quality, security, performance, or tests lens. Use when the user runs /audit, invokes $audit, asks for a code or quality audit, security review, performance review, test quality review, dead-code or duplication check, vibe-coded project cleanup, or standards review."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# audit - review code quality against the project standards
|
|
@@ -17,7 +17,7 @@ or one focused lens: quality, security, performance, or tests.
|
|
|
17
17
|
|
|
18
18
|
It reviews code without changing it: it never edits source files, installs
|
|
19
19
|
dependencies, commits, merges, pushes, or starts product work. Its one write is
|
|
20
|
-
the findings ledger at `devflow/context/findings.md` (Step 4), the durable
|
|
20
|
+
the findings ledger at `devflow/context/{xxx-slug}/findings.md` (Step 4), the durable
|
|
21
21
|
record of findings and their status.
|
|
22
22
|
|
|
23
23
|
## Input
|
|
@@ -29,7 +29,7 @@ Optional scope:
|
|
|
29
29
|
|
|
30
30
|
- no scope argument: use `current` when an active feature exists, otherwise use
|
|
31
31
|
`changed` when local changes exist, otherwise use `full`
|
|
32
|
-
- `current`: audit the active `
|
|
32
|
+
- `current`: audit the active `devflow/context/{xxx-slug}/spec.md`, every committed feature-branch
|
|
33
33
|
change from its merge base through `HEAD`, staged and unstaged changes,
|
|
34
34
|
untracked source files, and nearby code affected by the feature
|
|
35
35
|
- `changed`: audit staged, unstaged, and untracked source files plus nearby code
|
|
@@ -65,8 +65,8 @@ Read:
|
|
|
65
65
|
- `AGENTS.md`
|
|
66
66
|
- `devflow/context/project-overview.md`
|
|
67
67
|
- `devflow/context/coding-standards.md`
|
|
68
|
-
- `devflow/context/
|
|
69
|
-
- `devflow/context/findings.md
|
|
68
|
+
- `devflow/context/{xxx-slug}/spec.md` (when a task is active)
|
|
69
|
+
- `devflow/context/{xxx-slug}/findings.md` (or existing ledger), for existing IDs and statuses
|
|
70
70
|
- `devflow/context/ai-interaction.md`
|
|
71
71
|
- `devflow/build-plan.md`, when feature order matters
|
|
72
72
|
- git branch and working tree status
|
|
@@ -145,9 +145,9 @@ audit evidence before responding.
|
|
|
145
145
|
|
|
146
146
|
## Step 4 - update the findings ledger
|
|
147
147
|
|
|
148
|
-
`devflow/context/findings.md` is the durable record of findings. Chat reports
|
|
148
|
+
`devflow/context/{xxx-slug}/findings.md` is the durable record of findings for the active task. Chat reports
|
|
149
149
|
do not survive a context clear; the ledger does. It is the only file this skill
|
|
150
|
-
writes. If it is missing
|
|
150
|
+
writes. If it is missing, create it with a `# Findings`
|
|
151
151
|
heading first.
|
|
152
152
|
|
|
153
153
|
**The ledger never scopes the review.** Review the code fresh in Step 3, then
|
|
@@ -38,11 +38,11 @@ Common forms:
|
|
|
38
38
|
- `resume`: continue the current feature on its existing branch.
|
|
39
39
|
|
|
40
40
|
If the requested target conflicts with a feature already in progress, stop and
|
|
41
|
-
ask which one should win. Do not overwrite
|
|
41
|
+
ask which one should win. Do not overwrite task workspaces
|
|
42
42
|
silently.
|
|
43
43
|
|
|
44
44
|
Rollback is intentionally excluded from Autopilot. If the request is a rollback
|
|
45
|
-
or
|
|
45
|
+
or active spec is marked `Type: Rollback`, stop and direct the user to
|
|
46
46
|
the reviewed `/implement` path. Reversing completed work requires the explicit
|
|
47
47
|
dependency and conflict gates in `/rollback` and `/implement`.
|
|
48
48
|
|
|
@@ -54,8 +54,8 @@ Read the same state `/status` reads:
|
|
|
54
54
|
- `devflow/project-plan.md`
|
|
55
55
|
- `devflow/build-plan.md`
|
|
56
56
|
- `devflow/context/project-overview.md`
|
|
57
|
-
- `devflow/context/
|
|
58
|
-
- `devflow/context/findings.md`
|
|
57
|
+
- `devflow/context/{xxx-slug}/spec.md` (when present)
|
|
58
|
+
- `devflow/context/{xxx-slug}/findings.md` (when present)
|
|
59
59
|
- `devflow/context/coding-standards.md`
|
|
60
60
|
- `devflow/context/ai-interaction.md`
|
|
61
61
|
- git branch, status, and recent log
|
|
@@ -67,7 +67,7 @@ Stop before changing files when:
|
|
|
67
67
|
- The repo is not a git repo.
|
|
68
68
|
- The working tree is dirty and there is no current feature tying those changes
|
|
69
69
|
to this run.
|
|
70
|
-
-
|
|
70
|
+
- Active task spec has real work and the user requested a different target.
|
|
71
71
|
- `project-overview.md` is missing or stale and the planning docs are not clear
|
|
72
72
|
enough to regenerate it.
|
|
73
73
|
- The next feature is visual or replication-heavy and no design reference exists.
|
|
@@ -80,14 +80,14 @@ final packet.
|
|
|
80
80
|
|
|
81
81
|
## Step 2 - choose or write the spec
|
|
82
82
|
|
|
83
|
-
If `devflow/context/
|
|
83
|
+
If `devflow/context/{xxx-slug}/spec.md` already contains an active spec,
|
|
84
84
|
resume it. Read checked steps and continue from the first unchecked step.
|
|
85
85
|
|
|
86
86
|
If there is no active spec:
|
|
87
87
|
|
|
88
88
|
1. Use the `/feature` behavior for a planned feature, or `/fix` behavior for a
|
|
89
89
|
requested fix.
|
|
90
|
-
2.
|
|
90
|
+
2. Create workspace and write `devflow/context/{xxx-slug}/spec.md`.
|
|
91
91
|
3. Red-team the spec before building:
|
|
92
92
|
- missing unhappy paths
|
|
93
93
|
- oversized steps
|
|
@@ -101,32 +101,22 @@ If there is no active spec:
|
|
|
101
101
|
Autopilot may continue past this spec gate because the user explicitly invoked
|
|
102
102
|
Autopilot. Still report what the critique changed in the final packet.
|
|
103
103
|
|
|
104
|
-
## Step 3 -
|
|
104
|
+
## Step 3 - branch
|
|
105
105
|
|
|
106
|
-
|
|
106
|
+
Create or check out the branch for the work:
|
|
107
107
|
|
|
108
|
-
-
|
|
109
|
-
-
|
|
108
|
+
- `feature/{xxx-slug}` for a planned feature
|
|
109
|
+
- `fix/{xxx-slug}` for an ad-hoc fix
|
|
110
110
|
|
|
111
|
-
If the branch already exists,
|
|
112
|
-
If switching branches would strand unrelated dirty work, stop and report the
|
|
113
|
-
problem.
|
|
111
|
+
If the branch already exists, check it out and verify it matches the spec.
|
|
114
112
|
|
|
115
|
-
## Step 4 -
|
|
113
|
+
## Step 4 - build in small steps with review gates
|
|
116
114
|
|
|
117
|
-
Work through the spec's
|
|
118
|
-
Unlike `/implement`, do not pause for user approval after each passing step. The
|
|
119
|
-
review happens at the final packet unless a hard stop is hit.
|
|
115
|
+
Work through the spec's steps in order:
|
|
120
116
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
2. Run the relevant verification:
|
|
125
|
-
- the exact `Verify` command from `AGENTS.md`, when declared
|
|
126
|
-
- otherwise the build, relevant test, lint, and typecheck commands already
|
|
127
|
-
documented by the project
|
|
128
|
-
- browser, CLI, API, or app-level evidence for behavioral done-whens
|
|
129
|
-
3. If UI is involved, inspect the running app when possible. Prefer Playwright if
|
|
117
|
+
1. Keep each change small and focused on the current step.
|
|
118
|
+
2. Run the declared `test` command when logic changed.
|
|
119
|
+
3. If the step has visual or browser-visible behavior, drive the browser when
|
|
130
120
|
it is already installed or declared. Capture screenshots when they add useful
|
|
131
121
|
evidence. Check for console errors and failed requests.
|
|
132
122
|
4. Self-review the diff for the step:
|
|
@@ -136,15 +126,15 @@ For every step:
|
|
|
136
126
|
- did it follow `coding-standards.md`?
|
|
137
127
|
- are tests present for new in-scope logic when the test gate is on?
|
|
138
128
|
5. Fix obvious issues and rerun the failed checks.
|
|
139
|
-
6. Mark the step checked in `
|
|
129
|
+
6. Mark the step checked in `devflow/context/{xxx-slug}/spec.md` only after the step passes.
|
|
140
130
|
7. Create a checkpoint commit on the feature or fix branch for the passing step.
|
|
141
|
-
Include the code, tests, and the updated `
|
|
131
|
+
Include the code, tests, and the updated `spec.md` checkbox. Use a
|
|
142
132
|
conventional message such as `feat: checkpoint mock snapshot route` or
|
|
143
133
|
`fix: checkpoint stale service filter`. Keep the message about the step, not
|
|
144
134
|
about Autopilot.
|
|
145
135
|
|
|
146
136
|
Do not batch the whole feature into one large diff. If a step gets too large,
|
|
147
|
-
split the step in `
|
|
137
|
+
split the step in `devflow/context/{xxx-slug}/spec.md` and continue with the first smaller step.
|
|
148
138
|
|
|
149
139
|
## Step 5 - acceptance check
|
|
150
140
|
|
|
@@ -159,7 +149,7 @@ may be enough. Be explicit about the evidence used.
|
|
|
159
149
|
After the acceptance check, apply the `/audit current` behavior to the active
|
|
160
150
|
feature, its diff, and the nearby code affected by the change. This is a targeted
|
|
161
151
|
feature audit, not a repository-wide cleanup pass. Findings are recorded in
|
|
162
|
-
`devflow/context/findings.md` with durable IDs and statuses, as `/audit`
|
|
152
|
+
`devflow/context/{xxx-slug}/findings.md` with durable IDs and statuses, as `/audit`
|
|
163
153
|
defines; the ledger reports status and never scopes what the audit examines.
|
|
164
154
|
|
|
165
155
|
For every finding:
|
|
@@ -173,35 +163,21 @@ For every finding:
|
|
|
173
163
|
3. Report P2 and P3 findings in the final packet. Fix them only when the change
|
|
174
164
|
is small, directly caused by the current feature, and clearly required by the
|
|
175
165
|
project standards.
|
|
176
|
-
4. If a
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
1. Rerun the documented `Verify` command when present; otherwise rerun the
|
|
182
|
-
affected build, lint, typecheck, and test commands.
|
|
183
|
-
2. Rerun the acceptance evidence affected by the repair.
|
|
184
|
-
3. Recheck the repaired area using the same targeted audit criteria. When that
|
|
185
|
-
recheck confirms the original defect is gone and the repair introduced no
|
|
186
|
-
new one, move the `fixed` finding to `closed` under the `/audit` close
|
|
187
|
-
conditions and name it in the packet. An unrelated new finding gets its own
|
|
188
|
-
ledger entry and does not keep the repaired one open.
|
|
189
|
-
4. Create a checkpoint commit only after the repair and its checks pass.
|
|
166
|
+
4. If a finding cannot be resolved safely in-scope, leave it `open` and describe
|
|
167
|
+
it in the final packet. A finding that is wrong goes back to `/audit` to
|
|
168
|
+
invalidate with recorded evidence; Autopilot never marks findings `invalid`
|
|
169
|
+
or `accepted`.
|
|
190
170
|
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
step into a full-project hardening pass. A broader cleanup remains a separate
|
|
194
|
-
`/audit` followed by planned `/fix` work.
|
|
171
|
+
Re-run the build, tests, and any affected checks after repairs. If a repair fails
|
|
172
|
+
twice, stop and report the blocker.
|
|
195
173
|
|
|
196
|
-
## Step 7 -
|
|
174
|
+
## Step 7 - compile the review packet
|
|
197
175
|
|
|
198
|
-
Stop
|
|
199
|
-
a full audit report:
|
|
176
|
+
Stop and produce a concise review packet:
|
|
200
177
|
|
|
201
|
-
- branch name
|
|
202
178
|
- target feature or fix
|
|
203
|
-
-
|
|
204
|
-
- what
|
|
179
|
+
- branch name
|
|
180
|
+
- what was built
|
|
205
181
|
- changed files and why each changed
|
|
206
182
|
- build/test/check commands run, with pass or fail
|
|
207
183
|
- screenshots or output paths, when relevant
|
|
@@ -210,7 +186,7 @@ a full audit report:
|
|
|
210
186
|
- self-review findings
|
|
211
187
|
- targeted audit scope and findings
|
|
212
188
|
- audit repairs made and checks rerun
|
|
213
|
-
- P0/P1 findings still `open` or `fixed` in `devflow/context/findings.md`,
|
|
189
|
+
- P0/P1 findings still `open` or `fixed` in `devflow/context/{xxx-slug}/findings.md`,
|
|
214
190
|
which block `/complete`
|
|
215
191
|
- unresolved risks or skipped checks
|
|
216
192
|
- exact next action
|
|
@@ -240,11 +216,11 @@ Stop immediately and report instead of continuing when Autopilot would need to:
|
|
|
240
216
|
- Autopilot creates checkpoint commits on the feature or fix branch after passing
|
|
241
217
|
steps.
|
|
242
218
|
- Autopilot audits the active feature and affected code, not the entire project.
|
|
243
|
-
- A P0 or P1 finding left `open` or `fixed` in `devflow/context/findings.md`
|
|
219
|
+
- A P0 or P1 finding left `open` or `fixed` in `devflow/context/{xxx-slug}/findings.md`
|
|
244
220
|
blocks readiness for `/complete`. The ledger is what makes this enforceable.
|
|
245
221
|
- Autopilot stops before `/complete`. It never merges.
|
|
246
222
|
- The Blueprint files remain the state machine. Keep
|
|
247
|
-
`
|
|
223
|
+
`devflow/context/{xxx-slug}/spec.md` accurate as steps complete.
|
|
248
224
|
- Follow `coding-standards.md`, `ai-interaction.md`, and `AGENTS.md`.
|
|
249
225
|
- Prefer fewer, higher-quality changes over broad coverage.
|
|
250
226
|
- Report uncertainty plainly. A blocked run is useful if it tells the truth.
|
|
@@ -82,7 +82,7 @@ plans aren't ready, `/prototype` if it's UI-facing and the look isn't locked, or
|
|
|
82
82
|
## Rules
|
|
83
83
|
|
|
84
84
|
- **Read-only, always.** Never write a file, never edit `build-plan.md` or
|
|
85
|
-
`
|
|
85
|
+
specs in `devflow/context/`, never branch, commit, install, or build. To act on the
|
|
86
86
|
briefing, the user runs `/feature` next.
|
|
87
87
|
- **Explain, don't spec.** Size, dependencies, and a likely sub-split are the
|
|
88
88
|
value here; the actual build steps are `/feature`'s job. Don't write step lists.
|
|
@@ -28,7 +28,7 @@ It changes no source and commits nothing — it executes, inspects, and reports
|
|
|
28
28
|
|
|
29
29
|
## Step 1 - Build the Dual-Axis Review Matrix
|
|
30
30
|
|
|
31
|
-
Read the target spec from `devflow/context/{xxx-slug}/spec.md`
|
|
31
|
+
Read the target spec from `devflow/context/{xxx-slug}/spec.md` and `devflow/context/coding-standards.md`. Prepare the inspection criteria across two independent axes:
|
|
32
32
|
|
|
33
33
|
1. **Axis 1 (Standards & Architecture Criteria)**:
|
|
34
34
|
- Coding conventions in `coding-standards.md`
|
|
@@ -36,7 +36,7 @@ Read the target spec from `devflow/context/{xxx-slug}/spec.md` (or `devflow/cont
|
|
|
36
36
|
- Baseline 12 Fowler Code Smells (Primitive obsession, Feature envy, Shotgun surgery, Speculative generality, etc.)
|
|
37
37
|
- Multi-lane technical gates (Typecheck, test suites, zero secrets, zero P0/P1 findings)
|
|
38
38
|
2. **Axis 2 (Spec Fidelity & Behavioral Observables)**:
|
|
39
|
-
- Line-by-line Acceptance Criteria (ACs) and "Done When" observables from `
|
|
39
|
+
- Line-by-line Acceptance Criteria (ACs) and "Done When" observables from `devflow/context/{xxx-slug}/spec.md`
|
|
40
40
|
- Scope Creep detection (Unrequested behavior in the diff)
|
|
41
41
|
- Missing Requirements detection (Unimplemented edge cases)
|
|
42
42
|
|
|
@@ -69,7 +69,7 @@ Format the report into two distinct, un-merged review axes:
|
|
|
69
69
|
- [pass] Type Safety: `tsc --noEmit` (0 errors)
|
|
70
70
|
- [pass] Automated Tests: `npm test` (All tests green)
|
|
71
71
|
- [pass] Security & Hygiene: Zero secrets, sanitized inputs
|
|
72
|
-
- [pass] Findings Ledger: 0 blocking P0/P1 in `devflow/context/findings.md`
|
|
72
|
+
- [pass] Findings Ledger: 0 blocking P0/P1 in `devflow/context/{xxx-slug}/findings.md`
|
|
73
73
|
- **Deep Modules & Architecture**:
|
|
74
74
|
- [pass] Seam Integrity: Public interfaces remain small, implementation details hidden.
|
|
75
75
|
- [pass] The Deletion Test: Complexity is concentrated inside the module, not scattered across callers.
|
|
@@ -78,7 +78,7 @@ Format the report into two distinct, un-merged review axes:
|
|
|
78
78
|
|
|
79
79
|
## 🎯 Axis 2: Spec Fidelity & Behavioral Acceptance Gate
|
|
80
80
|
|
|
81
|
-
Line-by-line verification against `
|
|
81
|
+
Line-by-line verification against `devflow/context/{xxx-slug}/spec.md`:
|
|
82
82
|
- [pass] **AC-1 (<title>)**: <Observed empirical evidence / screenshot path>
|
|
83
83
|
- [pass] **AC-2 (<title>)**: <Observed empirical evidence / terminal output>
|
|
84
84
|
- [fail] **AC-3 (<title>)**: <Exact observed failure with reproduction command>
|