@brunosps00/dev-workflow 0.13.0 → 1.0.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 +106 -122
- package/lib/constants.js +16 -36
- package/lib/migrate-skills.js +11 -4
- package/lib/removed-commands.js +30 -0
- package/package.json +1 -1
- package/scaffold/en/agent-instructions.md +27 -16
- package/scaffold/en/commands/dw-adr.md +2 -2
- package/scaffold/en/commands/dw-analyze-project.md +7 -7
- package/scaffold/en/commands/dw-autopilot.md +20 -20
- package/scaffold/en/commands/dw-brainstorm.md +160 -9
- package/scaffold/en/commands/dw-bugfix.md +7 -6
- package/scaffold/en/commands/dw-commit.md +1 -1
- package/scaffold/en/commands/dw-dockerize.md +9 -9
- package/scaffold/en/commands/dw-find-skills.md +4 -4
- package/scaffold/en/commands/dw-functional-doc.md +2 -2
- package/scaffold/en/commands/dw-generate-pr.md +4 -4
- package/scaffold/en/commands/dw-help.md +95 -351
- package/scaffold/en/commands/dw-intel.md +76 -12
- package/scaffold/en/commands/dw-new-project.md +9 -9
- package/scaffold/en/commands/dw-plan.md +175 -0
- package/scaffold/en/commands/dw-qa.md +166 -0
- package/scaffold/en/commands/dw-redesign-ui.md +7 -7
- package/scaffold/en/commands/dw-review.md +198 -0
- package/scaffold/en/commands/dw-run.md +176 -0
- package/scaffold/en/commands/dw-secure-audit.md +222 -0
- package/scaffold/en/commands/dw-update.md +1 -1
- package/scaffold/en/references/playwright-patterns.md +1 -1
- package/scaffold/en/references/refactoring-catalog.md +1 -1
- package/scaffold/en/templates/brainstorm-matrix.md +1 -1
- package/scaffold/en/templates/idea-onepager.md +3 -3
- package/scaffold/en/templates/project-onepager.md +5 -5
- package/scaffold/pt-br/agent-instructions.md +27 -16
- package/scaffold/pt-br/commands/dw-adr.md +2 -2
- package/scaffold/pt-br/commands/dw-analyze-project.md +7 -7
- package/scaffold/pt-br/commands/dw-autopilot.md +20 -20
- package/scaffold/pt-br/commands/dw-brainstorm.md +160 -9
- package/scaffold/pt-br/commands/dw-bugfix.md +10 -9
- package/scaffold/pt-br/commands/dw-commit.md +1 -1
- package/scaffold/pt-br/commands/dw-dockerize.md +9 -9
- package/scaffold/pt-br/commands/dw-find-skills.md +4 -4
- package/scaffold/pt-br/commands/dw-functional-doc.md +2 -2
- package/scaffold/pt-br/commands/dw-generate-pr.md +4 -4
- package/scaffold/pt-br/commands/dw-help.md +97 -300
- package/scaffold/pt-br/commands/dw-intel.md +77 -13
- package/scaffold/pt-br/commands/dw-new-project.md +9 -9
- package/scaffold/pt-br/commands/dw-plan.md +175 -0
- package/scaffold/pt-br/commands/dw-qa.md +166 -0
- package/scaffold/pt-br/commands/dw-redesign-ui.md +7 -7
- package/scaffold/pt-br/commands/dw-review.md +198 -0
- package/scaffold/pt-br/commands/dw-run.md +176 -0
- package/scaffold/pt-br/commands/dw-secure-audit.md +222 -0
- package/scaffold/pt-br/commands/dw-update.md +1 -1
- package/scaffold/pt-br/references/playwright-patterns.md +1 -1
- package/scaffold/pt-br/references/refactoring-catalog.md +1 -1
- package/scaffold/pt-br/templates/brainstorm-matrix.md +1 -1
- package/scaffold/pt-br/templates/idea-onepager.md +3 -3
- package/scaffold/pt-br/templates/project-onepager.md +5 -5
- package/scaffold/pt-br/templates/tasks-template.md +1 -1
- package/scaffold/skills/api-testing-recipes/SKILL.md +6 -6
- package/scaffold/skills/api-testing-recipes/references/auth-patterns.md +1 -1
- package/scaffold/skills/api-testing-recipes/references/matrix-conventions.md +1 -1
- package/scaffold/skills/api-testing-recipes/references/openapi-driven.md +3 -3
- package/scaffold/skills/docker-compose-recipes/SKILL.md +1 -1
- package/scaffold/skills/dw-codebase-intel/SKILL.md +9 -9
- package/scaffold/skills/dw-codebase-intel/agents/intel-updater.md +4 -4
- package/scaffold/skills/dw-codebase-intel/references/api-design-discipline.md +1 -1
- package/scaffold/skills/dw-codebase-intel/references/incremental-update.md +5 -5
- package/scaffold/skills/dw-codebase-intel/references/intel-format.md +1 -1
- package/scaffold/skills/dw-codebase-intel/references/query-patterns.md +3 -3
- package/scaffold/skills/dw-council/SKILL.md +2 -2
- package/scaffold/skills/dw-debug-protocol/SKILL.md +5 -3
- package/scaffold/skills/dw-execute-phase/SKILL.md +16 -16
- package/scaffold/skills/dw-execute-phase/agents/executor.md +5 -5
- package/scaffold/skills/dw-execute-phase/agents/plan-checker.md +4 -4
- package/scaffold/skills/dw-execute-phase/references/atomic-commits.md +1 -1
- package/scaffold/skills/dw-execute-phase/references/plan-verification.md +2 -2
- package/scaffold/skills/dw-execute-phase/references/wave-coordination.md +1 -1
- package/scaffold/skills/dw-git-discipline/SKILL.md +5 -2
- package/scaffold/skills/dw-incident-response/SKILL.md +168 -0
- package/scaffold/skills/dw-incident-response/references/blameless-discipline.md +126 -0
- package/scaffold/skills/dw-incident-response/references/communication-templates.md +107 -0
- package/scaffold/skills/dw-incident-response/references/postmortem-template.md +133 -0
- package/scaffold/skills/dw-incident-response/references/runbook-templates.md +169 -0
- package/scaffold/skills/dw-incident-response/references/severity-and-triage.md +186 -0
- package/scaffold/skills/dw-llm-eval/SKILL.md +150 -0
- package/scaffold/skills/dw-llm-eval/references/agent-eval.md +252 -0
- package/scaffold/skills/dw-llm-eval/references/judge-calibration.md +169 -0
- package/scaffold/skills/dw-llm-eval/references/oracle-ladder.md +171 -0
- package/scaffold/skills/dw-llm-eval/references/rag-metrics.md +186 -0
- package/scaffold/skills/dw-llm-eval/references/reference-dataset.md +190 -0
- package/scaffold/skills/dw-memory/SKILL.md +2 -2
- package/scaffold/skills/dw-review-rigor/SKILL.md +5 -5
- package/scaffold/skills/dw-simplification/SKILL.md +4 -4
- package/scaffold/skills/dw-source-grounding/SKILL.md +1 -1
- package/scaffold/skills/dw-testing-discipline/SKILL.md +103 -78
- package/scaffold/skills/dw-testing-discipline/references/agent-guardrails.md +170 -0
- package/scaffold/skills/dw-testing-discipline/references/anti-patterns.md +7 -7
- package/scaffold/skills/dw-testing-discipline/references/core-rules.md +128 -0
- package/scaffold/skills/dw-testing-discipline/references/flaky-discipline.md +3 -3
- package/scaffold/skills/dw-testing-discipline/references/{positive-patterns.md → patterns.md} +1 -1
- package/scaffold/skills/dw-testing-discipline/references/playwright-recipes.md +3 -3
- package/scaffold/skills/dw-ui-discipline/SKILL.md +103 -79
- package/scaffold/skills/dw-ui-discipline/references/accessibility-floor.md +2 -2
- package/scaffold/skills/dw-ui-discipline/references/hard-gate.md +93 -73
- package/scaffold/skills/dw-ui-discipline/references/state-matrix.md +1 -1
- package/scaffold/skills/dw-ui-discipline/references/visual-slop.md +152 -0
- package/scaffold/skills/dw-verify/SKILL.md +4 -4
- package/scaffold/skills/humanizer/SKILL.md +1 -7
- package/scaffold/skills/remotion-best-practices/SKILL.md +3 -1
- package/scaffold/skills/security-review/SKILL.md +1 -1
- package/scaffold/skills/security-review/languages/csharp.md +1 -1
- package/scaffold/skills/security-review/languages/rust.md +1 -1
- package/scaffold/skills/security-review/languages/typescript.md +1 -1
- package/scaffold/skills/vercel-react-best-practices/SKILL.md +3 -1
- package/scaffold/templates-overrides-readme.md +3 -3
- package/scaffold/en/commands/dw-code-review.md +0 -385
- package/scaffold/en/commands/dw-create-prd.md +0 -148
- package/scaffold/en/commands/dw-create-tasks.md +0 -195
- package/scaffold/en/commands/dw-create-techspec.md +0 -210
- package/scaffold/en/commands/dw-deep-research.md +0 -418
- package/scaffold/en/commands/dw-deps-audit.md +0 -327
- package/scaffold/en/commands/dw-fix-qa.md +0 -152
- package/scaffold/en/commands/dw-map-codebase.md +0 -125
- package/scaffold/en/commands/dw-refactoring-analysis.md +0 -340
- package/scaffold/en/commands/dw-revert-task.md +0 -114
- package/scaffold/en/commands/dw-review-implementation.md +0 -349
- package/scaffold/en/commands/dw-run-plan.md +0 -300
- package/scaffold/en/commands/dw-run-qa.md +0 -496
- package/scaffold/en/commands/dw-run-task.md +0 -209
- package/scaffold/en/commands/dw-security-check.md +0 -271
- package/scaffold/pt-br/commands/dw-code-review.md +0 -365
- package/scaffold/pt-br/commands/dw-create-prd.md +0 -148
- package/scaffold/pt-br/commands/dw-create-tasks.md +0 -195
- package/scaffold/pt-br/commands/dw-create-techspec.md +0 -208
- package/scaffold/pt-br/commands/dw-deep-research.md +0 -172
- package/scaffold/pt-br/commands/dw-deps-audit.md +0 -327
- package/scaffold/pt-br/commands/dw-fix-qa.md +0 -152
- package/scaffold/pt-br/commands/dw-map-codebase.md +0 -125
- package/scaffold/pt-br/commands/dw-refactoring-analysis.md +0 -340
- package/scaffold/pt-br/commands/dw-revert-task.md +0 -114
- package/scaffold/pt-br/commands/dw-review-implementation.md +0 -337
- package/scaffold/pt-br/commands/dw-run-plan.md +0 -296
- package/scaffold/pt-br/commands/dw-run-qa.md +0 -494
- package/scaffold/pt-br/commands/dw-run-task.md +0 -208
- package/scaffold/pt-br/commands/dw-security-check.md +0 -271
- package/scaffold/skills/dw-testing-discipline/references/ai-agent-gates.md +0 -170
- package/scaffold/skills/dw-testing-discipline/references/iron-laws.md +0 -128
- package/scaffold/skills/dw-ui-discipline/references/anti-slop.md +0 -162
|
@@ -94,12 +94,12 @@ services: []
|
|
|
94
94
|
|
|
95
95
|
## Escopo MVP
|
|
96
96
|
|
|
97
|
-
[A primeira feature menor que voce vai entregar. Pensada como user stories — vai dirigir a primeira rodada de /dw-
|
|
97
|
+
[A primeira feature menor que voce vai entregar. Pensada como user stories — vai dirigir a primeira rodada de /dw-plan prd.]
|
|
98
98
|
|
|
99
99
|
- Como [persona], eu posso [acao] para que [beneficio]
|
|
100
100
|
- Como [persona], eu posso [acao] para que [beneficio]
|
|
101
101
|
|
|
102
|
-
Se voce ainda nao tem a primeira feature em mente, tudo bem — deixa placeholder e roda o /dw-
|
|
102
|
+
Se voce ainda nao tem a primeira feature em mente, tudo bem — deixa placeholder e roda o /dw-plan prd quando tiver.
|
|
103
103
|
|
|
104
104
|
## Nao Estou Fazendo (explicito)
|
|
105
105
|
|
|
@@ -115,7 +115,7 @@ Se voce ainda nao tem a primeira feature em mente, tudo bem — deixa placeholde
|
|
|
115
115
|
|
|
116
116
|
## Perguntas em Aberto
|
|
117
117
|
|
|
118
|
-
[O que este one-pager nao consegue responder sozinho. Resolva antes do /dw-
|
|
118
|
+
[O que este one-pager nao consegue responder sozinho. Resolva antes do /dw-plan prd ou escale para um stakeholder.]
|
|
119
119
|
|
|
120
120
|
- [pergunta 1]
|
|
121
121
|
- [pergunta 2]
|
|
@@ -124,6 +124,6 @@ Se voce ainda nao tem a primeira feature em mente, tudo bem — deixa placeholde
|
|
|
124
124
|
|
|
125
125
|
Escolha UM:
|
|
126
126
|
|
|
127
|
-
- **`/dw-
|
|
127
|
+
- **`/dw-plan prd`** — quando voce tem a primeira feature em mente e quer rascunhar o PRD em cima deste stack
|
|
128
128
|
- **`/dw-analyze-project`** — apos primeiro commit substancial, para enriquecer `.dw/rules/` com convencoes por modulo
|
|
129
|
-
- **`/dw-
|
|
129
|
+
- **`/dw-secure-audit --plan --scan-only`** — para confirmar que nenhuma dep vulneravel veio dos templates `create-*`
|
|
@@ -34,7 +34,7 @@ feat/prd-[nome-funcionalidade]
|
|
|
34
34
|
## Workflow
|
|
35
35
|
|
|
36
36
|
Cada task segue o fluxo:
|
|
37
|
-
1. `/dw-run
|
|
37
|
+
1. `/dw-run [N]_task.md` - Implementa a task
|
|
38
38
|
2. Testes unitários incluídos na implementação
|
|
39
39
|
3. Commit ao final da task (sem push)
|
|
40
40
|
4. Próxima task ou `/dw-generate-pr [branch-alvo]` quando todas concluídas
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: api-testing-recipes
|
|
3
|
-
description:
|
|
3
|
+
description: Use for API testing recipes (.http, pytest+httpx, supertest, WebApplicationFactory, reqwest). Invoked by /dw-qa in API mode and when authoring API tests. Default format is .http for IDE portability.
|
|
4
4
|
allowed-tools:
|
|
5
5
|
- Read
|
|
6
6
|
- Write
|
|
@@ -10,7 +10,7 @@ allowed-tools:
|
|
|
10
10
|
|
|
11
11
|
# api-testing-recipes
|
|
12
12
|
|
|
13
|
-
Curated library of **API-testing snippets** that `/dw-
|
|
13
|
+
Curated library of **API-testing snippets** that `/dw-qa` and `/dw-qa --fix` use when a project is API-only (no Playwright). Each recipe is a ready-to-customize block per stack; the default is `.http` (REST Client) for maximum portability across IDEs.
|
|
14
14
|
|
|
15
15
|
## Why a skill (not inline)
|
|
16
16
|
|
|
@@ -22,14 +22,14 @@ Curated library of **API-testing snippets** that `/dw-run-qa` and `/dw-fix-qa` u
|
|
|
22
22
|
|
|
23
23
|
Read this skill when:
|
|
24
24
|
|
|
25
|
-
- `/dw-
|
|
26
|
-
- `/dw-fix
|
|
25
|
+
- `/dw-qa` detected API mode (no UI deps in the manifest) or was invoked with `--api`.
|
|
26
|
+
- `/dw-qa --fix` is retesting a bug whose `evidence_type` is `api-log`.
|
|
27
27
|
- Generating a baseline test suite from an OpenAPI spec.
|
|
28
28
|
- Authoring contract checks against a backend.
|
|
29
29
|
|
|
30
30
|
Do NOT use when:
|
|
31
31
|
|
|
32
|
-
- The project has a UI and `/dw-
|
|
32
|
+
- The project has a UI and `/dw-qa` is in UI mode → use Playwright MCP instead.
|
|
33
33
|
- The user wants browser-level acceptance (forms, navigation, accessibility) — that's Playwright territory.
|
|
34
34
|
|
|
35
35
|
## Available Recipes
|
|
@@ -49,7 +49,7 @@ Picking order:
|
|
|
49
49
|
|
|
50
50
|
## How to Compose
|
|
51
51
|
|
|
52
|
-
The composing command (`/dw-
|
|
52
|
+
The composing command (`/dw-qa` API mode) follows this loop:
|
|
53
53
|
|
|
54
54
|
1. **Pick the recipe** based on the rules above.
|
|
55
55
|
2. **Read the recipe file** (`recipes/<name>.md`) for the variable conventions, test-matrix shape, and an example block.
|
|
@@ -135,4 +135,4 @@ Add one env var per role; the recipe reads them as needed. Tests that don't need
|
|
|
135
135
|
|
|
136
136
|
## What `dw-run-qa` does
|
|
137
137
|
|
|
138
|
-
In API mode, `/dw-
|
|
138
|
+
In API mode, `/dw-qa` reads `QA/test-credentials.md` (or `.env`) for the env var names, picks the recipe, and substitutes variables at test-generation time. The script files reference `@variable` references only — never raw tokens.
|
|
@@ -65,4 +65,4 @@ That's 9 test cases for one RF — the floor for a real API surface, not the cei
|
|
|
65
65
|
|
|
66
66
|
## How `dw-run-qa` uses this
|
|
67
67
|
|
|
68
|
-
When in API mode, `/dw-
|
|
68
|
+
When in API mode, `/dw-qa` walks each `RF-XX` in the PRD, runs through this matrix, and emits PASS/FAIL per RF — not per test case. A single FAIL in any tier marks the RF as FAIL and lands a `BUG-NN` entry pointing to the failing log line.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenAPI-driven mode — generating tests from a spec
|
|
2
2
|
|
|
3
|
-
When the project exposes an OpenAPI spec (static `openapi.yaml`/`openapi.json`, or dynamic `/openapi.json` for FastAPI), `/dw-
|
|
3
|
+
When the project exposes an OpenAPI spec (static `openapi.yaml`/`openapi.json`, or dynamic `/openapi.json` for FastAPI), `/dw-qa` can derive a baseline test suite directly from it. This catches contract drift between code and spec for free.
|
|
4
4
|
|
|
5
5
|
## When to use this mode
|
|
6
6
|
|
|
@@ -20,13 +20,13 @@ The generated tests live alongside hand-written ones in `{{PRD_PATH}}/QA/scripts
|
|
|
20
20
|
|
|
21
21
|
## How to run it
|
|
22
22
|
|
|
23
|
-
`/dw-
|
|
23
|
+
`/dw-qa --from-openapi <spec-path-or-url>` — explicit. The `<spec-path-or-url>` can be:
|
|
24
24
|
|
|
25
25
|
- `./openapi.yaml`
|
|
26
26
|
- `http://localhost:3000/openapi.json` (FastAPI default)
|
|
27
27
|
- `http://localhost:3000/swagger/v1/swagger.json` (ASP.NET Core default)
|
|
28
28
|
|
|
29
|
-
Without the flag, `/dw-
|
|
29
|
+
Without the flag, `/dw-qa` auto-detects:
|
|
30
30
|
|
|
31
31
|
- File at repo root: `openapi.yaml`, `openapi.json`, `swagger.yaml`, `swagger.json`.
|
|
32
32
|
- Project running locally: `GET /openapi.json`, `GET /swagger/v1/swagger.json`, `GET /api-docs`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: docker-compose-recipes
|
|
3
|
-
description:
|
|
3
|
+
description: Use for docker-compose service blocks (postgres, redis, mailhog, minio, meilisearch, jaeger, traefik). Invoked by /dw-new-project, /dw-dockerize, or when composing dev/prod compose files.
|
|
4
4
|
allowed-tools:
|
|
5
5
|
- Read
|
|
6
6
|
- Write
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: dw-codebase-intel
|
|
3
|
-
description:
|
|
3
|
+
description: Use to query or build codebase intel (.dw/intel/ — stack, files, apis, deps, arch). Powers /dw-intel queries and /dw-intel --build. Invoke on 'where is X', 'what uses Y', or after refactors.
|
|
4
4
|
allowed-tools:
|
|
5
5
|
- Read
|
|
6
6
|
- Write
|
|
@@ -11,7 +11,7 @@ allowed-tools:
|
|
|
11
11
|
|
|
12
12
|
# dw-codebase-intel
|
|
13
13
|
|
|
14
|
-
Bundled skill that gives dev-workflow native **codebase intelligence** — a queryable knowledge base of the project's stack, file graph, API surface, dependencies, and architecture. Other commands (`/dw-
|
|
14
|
+
Bundled skill that gives dev-workflow native **codebase intelligence** — a queryable knowledge base of the project's stack, file graph, API surface, dependencies, and architecture. Other commands (`/dw-plan prd`, `/dw-plan techspec`, `/dw-review --code-only`, `/dw-brainstorm --refactor`, `/dw-brainstorm`, etc.) read from this index instead of re-exploring the codebase on every invocation.
|
|
15
15
|
|
|
16
16
|
## Why a skill (not inline)
|
|
17
17
|
|
|
@@ -23,7 +23,7 @@ Bundled skill that gives dev-workflow native **codebase intelligence** — a que
|
|
|
23
23
|
|
|
24
24
|
Read this skill when:
|
|
25
25
|
|
|
26
|
-
- `/dw-
|
|
26
|
+
- `/dw-intel --build` is invoked (full or partial codebase analysis).
|
|
27
27
|
- `/dw-intel "<query>"` is invoked (query existing intel).
|
|
28
28
|
- `/dw-analyze-project` runs after first commit and wants to enrich `.dw/rules/` with structural facts from `.dw/intel/`.
|
|
29
29
|
- Any other `dw-*` command wants to look up "where is X used", "what frameworks are in this stack", "what's the architecture pattern" without re-scanning files.
|
|
@@ -53,25 +53,25 @@ Schemas are documented in `references/intel-format.md`.
|
|
|
53
53
|
|
|
54
54
|
| Agent | Responsibility | Spawn from |
|
|
55
55
|
|-------|----------------|------------|
|
|
56
|
-
| `agents/intel-updater.md` | Reads source files, writes structured intel to `.dw/intel/`. Supports `full` or `partial --files <paths>` updates. | `/dw-
|
|
56
|
+
| `agents/intel-updater.md` | Reads source files, writes structured intel to `.dw/intel/`. Supports `full` or `partial --files <paths>` updates. | `/dw-intel --build` |
|
|
57
57
|
|
|
58
58
|
This skill ships ONE agent — `intel-updater` — which produces machine-readable JSON for `/dw-intel` queries. Human-readable architecture analysis (per-module conventions, anti-patterns, code smells) lives in `.dw/rules/` and is generated by `/dw-analyze-project`. The two are complementary: `.dw/intel/` answers "what's in this codebase right now?" and `.dw/rules/` answers "how should we write code here?".
|
|
59
59
|
|
|
60
60
|
## How to Compose (the typical flow)
|
|
61
61
|
|
|
62
|
-
1. **`/dw-
|
|
62
|
+
1. **`/dw-intel --build`** is invoked.
|
|
63
63
|
2. The command spawns `intel-updater` with `focus: full` (first run) or `focus: partial --files <paths>` (incremental).
|
|
64
64
|
3. The agent reads source files (using Glob/Read/Grep; no Bash file listing for cross-platform safety) and writes the 5 intel files.
|
|
65
65
|
4. The agent writes `.last-refresh.json` with timestamps + hashes for incremental change detection on the next run.
|
|
66
|
-
5. `/dw-
|
|
66
|
+
5. `/dw-intel --build` reports completion and invites the user to query via `/dw-intel "<question>"`.
|
|
67
67
|
|
|
68
|
-
For human-readable analysis (architecture overview, module conventions, anti-patterns), run `/dw-analyze-project` after `/dw-
|
|
68
|
+
For human-readable analysis (architecture overview, module conventions, anti-patterns), run `/dw-analyze-project` after `/dw-intel --build` — it reads `.dw/intel/` as input and produces `.dw/rules/`.
|
|
69
69
|
|
|
70
70
|
## How `/dw-intel` Reads This
|
|
71
71
|
|
|
72
72
|
`/dw-intel "auth flow"` does:
|
|
73
73
|
|
|
74
|
-
1. Check `.dw/intel/.last-refresh.json` — is the index fresh (within last 7 days)? If stale, suggest re-running `/dw-
|
|
74
|
+
1. Check `.dw/intel/.last-refresh.json` — is the index fresh (within last 7 days)? If stale, suggest re-running `/dw-intel --build`.
|
|
75
75
|
2. Search `apis.json` for matching paths/descriptions.
|
|
76
76
|
3. Search `files.json` for matching exports.
|
|
77
77
|
4. Search `arch.md` (full-text) for the keyword.
|
|
@@ -95,7 +95,7 @@ If no `.dw/intel/` exists at all, `/dw-intel` falls back to `.dw/rules/` (seeded
|
|
|
95
95
|
- `references/intel-format.md` — schema for each `.dw/intel/` file with examples.
|
|
96
96
|
- `references/incremental-update.md` — how partial updates work (which files to re-read, how to merge with existing entries).
|
|
97
97
|
- `references/query-patterns.md` — how `/dw-intel` answers different question shapes (where-is, what-uses, architecture-of, dependency-of).
|
|
98
|
-
- `references/api-design-discipline.md` — Hyrum's Law, contract-first design, error semantics, boundary validation, versioning. Use when intel feeds techspec authoring (`/dw-
|
|
98
|
+
- `references/api-design-discipline.md` — Hyrum's Law, contract-first design, error semantics, boundary validation, versioning. Use when intel feeds techspec authoring (`/dw-plan techspec`) for endpoints — design must respect existing project conventions surfaced in `apis.json`. Adapted from [`addyosmani/agent-skills/api-design`](https://github.com/addyosmani/agent-skills/tree/main/api-design) (MIT).
|
|
99
99
|
|
|
100
100
|
## Inspired by
|
|
101
101
|
|
|
@@ -26,7 +26,7 @@ This ensures project-specific patterns, conventions, and best practices are appl
|
|
|
26
26
|
# dw-intel-updater
|
|
27
27
|
|
|
28
28
|
<role>
|
|
29
|
-
You are **dw-intel-updater**, the codebase intelligence agent for dev-workflow. You read project source files and write structured intel to `.dw/intel/`. Your output becomes the queryable knowledge base that other commands (`/dw-intel`, `/dw-
|
|
29
|
+
You are **dw-intel-updater**, the codebase intelligence agent for dev-workflow. You read project source files and write structured intel to `.dw/intel/`. Your output becomes the queryable knowledge base that other commands (`/dw-intel`, `/dw-plan prd`, `/dw-plan techspec`, `/dw-review --code-only`, etc.) use instead of doing expensive codebase exploration reads.
|
|
30
30
|
|
|
31
31
|
## Core Principle
|
|
32
32
|
|
|
@@ -42,15 +42,15 @@ Write machine-parseable, evidence-based intelligence. Every claim references act
|
|
|
42
42
|
<upstream_input>
|
|
43
43
|
## Upstream Input
|
|
44
44
|
|
|
45
|
-
### From `/dw-
|
|
45
|
+
### From `/dw-intel --build` Command
|
|
46
46
|
|
|
47
|
-
- **Spawned by:** `/dw-
|
|
47
|
+
- **Spawned by:** `/dw-intel --build` command
|
|
48
48
|
- **Receives:** Focus directive — either `full` (all 5 files) or `partial --files <paths>` (update specific file entries only)
|
|
49
49
|
- **Input format:** Spawn prompt with `focus: full|partial` directive and project root path
|
|
50
50
|
|
|
51
51
|
### Trigger gate
|
|
52
52
|
|
|
53
|
-
`/dw-
|
|
53
|
+
`/dw-intel --build` confirms the command is enabled and the project has source files before spawning this agent. Proceed directly to Step 1.
|
|
54
54
|
</upstream_input>
|
|
55
55
|
|
|
56
56
|
## Project Scope
|
|
@@ -135,4 +135,4 @@ If `.dw/intel/apis.json` shows a strong existing pattern (e.g., all endpoints us
|
|
|
135
135
|
|
|
136
136
|
## Integration with dev-workflow
|
|
137
137
|
|
|
138
|
-
Use this discipline when authoring techspecs (`/dw-
|
|
138
|
+
Use this discipline when authoring techspecs (`/dw-plan techspec`) or refactoring API surfaces. Cite `apis.json` evidence in the techspec — "existing endpoints use cursor pagination (apis.json:42); this endpoint follows the same pattern."
|
|
@@ -9,15 +9,15 @@ A full scan of a 50K-line repo takes minutes and burns context. Incremental upda
|
|
|
9
9
|
- After 30+ days since last refresh (file structure has likely drifted)
|
|
10
10
|
- When `/dw-intel` queries return obviously stale results
|
|
11
11
|
|
|
12
|
-
Trigger via `/dw-
|
|
12
|
+
Trigger via `/dw-intel --build` (no flag) or `/dw-intel --build --full`.
|
|
13
13
|
|
|
14
14
|
## When to run a partial update
|
|
15
15
|
|
|
16
16
|
- A single PR / feature branch touched 1-20 files
|
|
17
|
-
- After `/dw-run
|
|
17
|
+
- After `/dw-run` completes (touched files are known via git)
|
|
18
18
|
- After `dw-deps-audit --execute` updates dependencies (only `deps.json` needs refresh)
|
|
19
19
|
|
|
20
|
-
Trigger via `/dw-
|
|
20
|
+
Trigger via `/dw-intel --build --files src/foo.ts src/bar.ts` (explicit list) or `/dw-intel --build --since HEAD~5` (from git diff).
|
|
21
21
|
|
|
22
22
|
## Partial update protocol
|
|
23
23
|
|
|
@@ -33,7 +33,7 @@ The `intel-updater` agent receives `focus: partial --files <paths>` and:
|
|
|
33
33
|
4. **Bump** `_meta.version` by 1, set `_meta.updated_at` to now.
|
|
34
34
|
5. **Update** `.last-refresh.json` with the new hashes for `files.json`, `apis.json`, `deps.json` (the three that were touched).
|
|
35
35
|
|
|
36
|
-
If you run a partial update on a project where `.dw/intel/` doesn't exist, abort with: `"No .dw/intel/ found. Run /dw-
|
|
36
|
+
If you run a partial update on a project where `.dw/intel/` doesn't exist, abort with: `"No .dw/intel/ found. Run /dw-intel --build first for a full scan."`
|
|
37
37
|
|
|
38
38
|
## How `intel-updater` knows what's "key" in a partial
|
|
39
39
|
|
|
@@ -72,7 +72,7 @@ If a full update is triggered while a partial update is in flight (rare but poss
|
|
|
72
72
|
## What incremental updates do NOT cover
|
|
73
73
|
|
|
74
74
|
- New `package.json` (e.g., user added `express` to deps but no source file imports it yet) — `deps.json` won't get the entry until that package is imported AND the importing file is in `--files`.
|
|
75
|
-
- Mitigation: when running `/dw-
|
|
75
|
+
- Mitigation: when running `/dw-secure-audit --plan --execute`, follow up with `/dw-intel --build --full` to capture new deps.
|
|
76
76
|
- New file with a brand-new API route, when neither the new file nor any registration site was in `--files`.
|
|
77
77
|
- Mitigation: include `src/routes/index.ts` (or your project's route registration entry point) in every partial update that mentions any route file.
|
|
78
78
|
- Architectural changes (the kind that would update `arch.md`) — partial updates leave `arch.md` stale.
|
|
@@ -194,7 +194,7 @@ The project follows a layered architecture: HTTP routes → application services
|
|
|
194
194
|
}
|
|
195
195
|
```
|
|
196
196
|
|
|
197
|
-
Hashes are SHA-256 of file contents at the moment of refresh. Used by `/dw-
|
|
197
|
+
Hashes are SHA-256 of file contents at the moment of refresh. Used by `/dw-intel --build` to detect drift on the next run and decide whether a partial update is enough.
|
|
198
198
|
|
|
199
199
|
## Validation rules
|
|
200
200
|
|
|
@@ -126,8 +126,8 @@ Orders (5) ...
|
|
|
126
126
|
|
|
127
127
|
Before answering, check `.dw/intel/.last-refresh.json`:
|
|
128
128
|
|
|
129
|
-
- If `updated_at` is more than 7 days old → prefix the answer with: `⚠ Index last refreshed YYYY-MM-DD (X days ago). Run /dw-
|
|
130
|
-
- If `.last-refresh.json` is absent → prefix with: `⚠ No refresh metadata. Index may be stale; run /dw-
|
|
129
|
+
- If `updated_at` is more than 7 days old → prefix the answer with: `⚠ Index last refreshed YYYY-MM-DD (X days ago). Run /dw-intel --build to refresh.`
|
|
130
|
+
- If `.last-refresh.json` is absent → prefix with: `⚠ No refresh metadata. Index may be stale; run /dw-intel --build.`
|
|
131
131
|
|
|
132
132
|
Don't refuse to answer — return the best info available, but flag the staleness so the user can decide whether to trust it.
|
|
133
133
|
|
|
@@ -138,7 +138,7 @@ If `.dw/intel/` doesn't exist at all:
|
|
|
138
138
|
1. Check `.dw/rules/` (from `/dw-analyze-project` or `/dw-new-project` seeding)
|
|
139
139
|
2. If `.dw/rules/index.md` exists, search there for the query keywords
|
|
140
140
|
3. Otherwise, do a direct `grep -r` over the project source (excluding `node_modules`, `.git`, etc.)
|
|
141
|
-
4. Suggest at the end: `Tip: run /dw-
|
|
141
|
+
4. Suggest at the end: `Tip: run /dw-intel --build to build a queryable index. Subsequent /dw-intel queries will be much faster.`
|
|
142
142
|
|
|
143
143
|
## Don't
|
|
144
144
|
|
|
@@ -140,7 +140,7 @@ Record as:
|
|
|
140
140
|
|
|
141
141
|
## Output Location
|
|
142
142
|
|
|
143
|
-
- **Embedded mode** (invoked by `/dw-brainstorm --council` or `/dw-
|
|
143
|
+
- **Embedded mode** (invoked by `/dw-brainstorm --council` or `/dw-plan techspec --council`): return the synthesis inline; the caller extracts what it needs for the parent artifact (PRD, techspec, ADR).
|
|
144
144
|
- **Standalone mode**: save to `.dw/spec/<prd-slug>/council-YYYYMMDD.md` (if a PRD is active) or present inline if no PRD context exists. If the decision warrants a permanent record, suggest `/dw-adr` as the next step.
|
|
145
145
|
|
|
146
146
|
## Debate Protocols (non-negotiable)
|
|
@@ -160,7 +160,7 @@ Record as:
|
|
|
160
160
|
## Integration With Other dw-* Commands
|
|
161
161
|
|
|
162
162
|
- **`/dw-brainstorm --council`** (opt-in): invokes the council after the normal brainstorm to stress-test the top 2-3 options before recommending
|
|
163
|
-
- **`/dw-
|
|
163
|
+
- **`/dw-plan techspec --council`** (opt-in): invokes the council on the primary architectural decision of the techspec before finalizing
|
|
164
164
|
- **Standalone** `/dw-council "<dilemma>"` (if registered as a command — currently this is a bundled skill invoked by the two above; it can be promoted to a command in a future release if direct usage becomes common)
|
|
165
165
|
|
|
166
166
|
The `--council` flag is **additive**: omitting it produces the normal brainstorm/techspec flow. Including it adds a debate section to the output.
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: dw-debug-protocol
|
|
3
|
-
description: Use when investigating a bug
|
|
3
|
+
description: Use when investigating a bug. Stop-the-line discipline + six-step triage (reproduce → localize → reduce → fix root cause → guard → verify). Triggers on every bug report, test failure, or /dw-bugfix.
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Read
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# Debug Protocol
|
|
@@ -93,8 +95,8 @@ If any are missing, the bug is "fixed pending verification," not "fixed."
|
|
|
93
95
|
## Integration with dev-workflow commands
|
|
94
96
|
|
|
95
97
|
- `/dw-bugfix` runs this skill end-to-end. The bug report is decomposed into steps 1-6 and progressed atomically.
|
|
96
|
-
- `/dw-fix
|
|
97
|
-
- `/dw-code-
|
|
98
|
+
- `/dw-qa --fix` uses this skill when QA findings are bug-shaped (failing scenario rather than missing feature). Each finding becomes a six-step run.
|
|
99
|
+
- `/dw-review --code-only` flags fixes that skipped step 5 (no regression test) as REJECTED.
|
|
98
100
|
|
|
99
101
|
## When to escalate / pair
|
|
100
102
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: dw-execute-phase
|
|
3
|
-
description:
|
|
3
|
+
description: "Use for task execution. Two agents: executor (wave-based parallel dispatch + deviation handling) and plan-checker (goal-backward verification). Invoked by /dw-run and /dw-autopilot."
|
|
4
4
|
allowed-tools:
|
|
5
5
|
- Read
|
|
6
6
|
- Write
|
|
@@ -16,8 +16,8 @@ Bundled skill providing **phase-level execution discipline** for dev-workflow: p
|
|
|
16
16
|
|
|
17
17
|
## Why a skill (not inline)
|
|
18
18
|
|
|
19
|
-
- The execution discipline (wave coordination, deviation rules, checkpoint protocol) is a separate concern from the commands that invoke it. Bundling it as a skill lets multiple commands (`/dw-run
|
|
20
|
-
- The plan-checker is a verification GATE — it must run before `/dw-run
|
|
19
|
+
- The execution discipline (wave coordination, deviation rules, checkpoint protocol) is a separate concern from the commands that invoke it. Bundling it as a skill lets multiple commands (`/dw-run`, `/dw-autopilot`, `/dw-execute-phase` itself) reuse the same discipline.
|
|
20
|
+
- The plan-checker is a verification GATE — it must run before `/dw-run`/`/dw-execute-phase` mutate code, and bundling it makes that contract visible.
|
|
21
21
|
- The agents own the protocol; the orchestrating commands just wire them up.
|
|
22
22
|
|
|
23
23
|
## When to Use
|
|
@@ -26,30 +26,30 @@ Read this skill when:
|
|
|
26
26
|
|
|
27
27
|
- `/dw-execute-phase` is invoked to run a batch of tasks in parallel waves.
|
|
28
28
|
- `/dw-plan-checker` is invoked to verify a `tasks.md` file will achieve its PRD goal before execution.
|
|
29
|
-
- `/dw-run
|
|
29
|
+
- `/dw-run` is invoked (it spawns the executor agent for each wave).
|
|
30
30
|
- `/dw-autopilot` enters the execution stage (it gates on plan-checker before invoking the executor).
|
|
31
31
|
|
|
32
32
|
Do NOT use when:
|
|
33
33
|
|
|
34
|
-
- A single one-off change is being made (use `/dw-run
|
|
34
|
+
- A single one-off change is being made (use `/dw-run` directly — no waves needed).
|
|
35
35
|
- The user is exploring/brainstorming, not executing (use `/dw-brainstorm`).
|
|
36
|
-
- The plan hasn't been created yet (use `/dw-
|
|
36
|
+
- The plan hasn't been created yet (use `/dw-plan tasks` first).
|
|
37
37
|
|
|
38
38
|
## Agents
|
|
39
39
|
|
|
40
40
|
| Agent | Responsibility | Spawn from |
|
|
41
41
|
|-------|----------------|------------|
|
|
42
|
-
| `agents/executor.md` | Runs tasks in waves, atomic commit per task, handles deviations (3 deviation rules), respects checkpoint markers, writes `SUMMARY.md` per phase | `/dw-execute-phase`, `/dw-run
|
|
43
|
-
| `agents/plan-checker.md` | Goal-backward verification of `tasks.md` before execution. Checks: requirement coverage, task completeness, dependency soundness, artifact wiring, context budget. Returns PASS / REVISE / BLOCK. | `/dw-plan-checker`, `/dw-
|
|
42
|
+
| `agents/executor.md` | Runs tasks in waves, atomic commit per task, handles deviations (3 deviation rules), respects checkpoint markers, writes `SUMMARY.md` per phase | `/dw-execute-phase`, `/dw-run` |
|
|
43
|
+
| `agents/plan-checker.md` | Goal-backward verification of `tasks.md` before execution. Checks: requirement coverage, task completeness, dependency soundness, artifact wiring, context budget. Returns PASS / REVISE / BLOCK. | `/dw-plan-checker`, `/dw-plan tasks` (auto-gate before declaring tasks ready) |
|
|
44
44
|
|
|
45
45
|
## How the Two Agents Compose
|
|
46
46
|
|
|
47
47
|
The expected flow:
|
|
48
48
|
|
|
49
|
-
1. `/dw-
|
|
49
|
+
1. `/dw-plan tasks` produces `.dw/spec/prd-<slug>/tasks.md` from PRD + TechSpec.
|
|
50
50
|
2. **Plan-checker GATE** — `/dw-plan-checker .dw/spec/prd-<slug>/` spawns the plan-checker agent. The agent reads PRD/TechSpec/tasks.md and verifies tasks WILL achieve the goal. Returns one of: `PASS` (proceed), `REVISE` (issues found, planner re-runs), `BLOCK` (fundamental gap, abort).
|
|
51
51
|
3. `/dw-execute-phase` spawns the executor agent ONLY if plan-checker returned `PASS`. The executor runs tasks in waves, commits atomically, handles deviations.
|
|
52
|
-
4. `/dw-
|
|
52
|
+
4. `/dw-qa` runs after all waves complete to validate the implementation against PRD.
|
|
53
53
|
|
|
54
54
|
`/dw-autopilot` orchestrates this entire flow with hard gates between stages.
|
|
55
55
|
|
|
@@ -106,10 +106,10 @@ If the executor exhausts its context budget mid-phase OR the user signals stop:
|
|
|
106
106
|
|
|
107
107
|
| File | Read by | Written by |
|
|
108
108
|
|------|---------|------------|
|
|
109
|
-
| `prd.md` | plan-checker, executor | `/dw-
|
|
110
|
-
| `techspec.md` | plan-checker, executor | `/dw-
|
|
111
|
-
| `tasks.md` | plan-checker (verifies), executor (executes) | `/dw-
|
|
112
|
-
| `<NN>_task.md` | executor (per-task detail) | `/dw-
|
|
109
|
+
| `prd.md` | plan-checker, executor | `/dw-plan prd` |
|
|
110
|
+
| `techspec.md` | plan-checker, executor | `/dw-plan techspec` |
|
|
111
|
+
| `tasks.md` | plan-checker (verifies), executor (executes) | `/dw-plan tasks` |
|
|
112
|
+
| `<NN>_task.md` | executor (per-task detail) | `/dw-plan tasks` |
|
|
113
113
|
| `deviations.md` | plan-checker (next iteration), executor | executor (rule 1/2 deviations) |
|
|
114
114
|
| `active-session.md` | `/dw-resume`, executor (continuation) | executor (checkpoint) |
|
|
115
115
|
| `SUMMARY.md` | `/dw-generate-pr` | executor (after final wave) |
|
|
@@ -122,7 +122,7 @@ If the executor exhausts its context budget mid-phase OR the user signals stop:
|
|
|
122
122
|
|
|
123
123
|
## Rules
|
|
124
124
|
|
|
125
|
-
- **No execution without plan-checker PASS.** `/dw-execute-phase` and `/dw-run
|
|
125
|
+
- **No execution without plan-checker PASS.** `/dw-execute-phase` and `/dw-run` must call plan-checker first; if it returns REVISE or BLOCK, abort.
|
|
126
126
|
- **One commit per task, no exceptions.** Even trivial tasks commit. This drives traceability and revert safety.
|
|
127
127
|
- **Deviations are recorded, not silenced.** Every adjustment beyond the plan goes in `deviations.md` with reason.
|
|
128
128
|
- **Checkpoint > timeout.** When context budget is low, checkpoint cleanly rather than running tasks half-way.
|
|
@@ -130,4 +130,4 @@ If the executor exhausts its context budget mid-phase OR the user signals stop:
|
|
|
130
130
|
|
|
131
131
|
## Inspired by
|
|
132
132
|
|
|
133
|
-
Adapted from [`get-shit-done-cc`](https://github.com/gsd-build/get-shit-done) (`gsd-executor`, `gsd-plan-checker`) by gsd-build (MIT license). Core protocols (goal-backward verification, atomic commits, deviation handling, checkpoint resume) preserved. Path conventions changed from `.planning/<phase>/` to `.dw/spec/prd-<slug>/`. SDK CLI calls (`gsd-sdk query init.execute-phase`) replaced by inline operations. The companion `gsd-debugger` agent (1452 lines) was NOT ported — its scope overlaps with the existing `/dw-bugfix` and `/dw-fix
|
|
133
|
+
Adapted from [`get-shit-done-cc`](https://github.com/gsd-build/get-shit-done) (`gsd-executor`, `gsd-plan-checker`) by gsd-build (MIT license). Core protocols (goal-backward verification, atomic commits, deviation handling, checkpoint resume) preserved. Path conventions changed from `.planning/<phase>/` to `.dw/spec/prd-<slug>/`. SDK CLI calls (`gsd-sdk query init.execute-phase`) replaced by inline operations. The companion `gsd-debugger` agent (1452 lines) was NOT ported — its scope overlaps with the existing `/dw-bugfix` and `/dw-qa --fix` commands.
|
|
@@ -14,7 +14,7 @@ CRITICAL: If your spawn prompt contains a required_reading block, you MUST Read
|
|
|
14
14
|
<role>
|
|
15
15
|
You are **dw-executor**, the phase execution agent for dev-workflow. You execute the tasks in `.dw/spec/prd-<slug>/tasks.md` atomically, in waves, with one git commit per task. You handle deviations mid-execution per the three deviation rules. You checkpoint cleanly when context budget gets tight.
|
|
16
16
|
|
|
17
|
-
Spawned by `/dw-execute-phase` or `/dw-run
|
|
17
|
+
Spawned by `/dw-execute-phase` or `/dw-run` orchestrator with a PRD path.
|
|
18
18
|
|
|
19
19
|
Your job: run every task in the phase to completion, commit each one, write `SUMMARY.md` at the end, update `active-session.md` for resume.
|
|
20
20
|
</role>
|
|
@@ -28,7 +28,7 @@ Before executing, discover project context:
|
|
|
28
28
|
|
|
29
29
|
**`.dw/rules/`**: project conventions (from `/dw-analyze-project`). Read `index.md` first; load module-specific rules as relevant per task.
|
|
30
30
|
|
|
31
|
-
**`.dw/intel/`**: machine-readable codebase intel (from `/dw-
|
|
31
|
+
**`.dw/intel/`**: machine-readable codebase intel (from `/dw-intel --build`). Read `arch.md` for architecture overview; query `files.json`/`apis.json` when implementing.
|
|
32
32
|
</project_context>
|
|
33
33
|
|
|
34
34
|
## Execution Flow
|
|
@@ -224,8 +224,8 @@ duration_minutes: <N>
|
|
|
224
224
|
|
|
225
225
|
## Next Steps
|
|
226
226
|
|
|
227
|
-
- Run `/dw-
|
|
228
|
-
- Run `/dw-code-
|
|
227
|
+
- Run `/dw-qa` to validate against PRD
|
|
228
|
+
- Run `/dw-review --code-only` for the formal Level 3 review
|
|
229
229
|
- Then `/dw-commit` (consolidates) and `/dw-generate-pr`
|
|
230
230
|
```
|
|
231
231
|
|
|
@@ -251,7 +251,7 @@ The orchestrator pattern-matches on these — emit exactly one:
|
|
|
251
251
|
- <critical>Deviations are recorded. Every Rule-1/2/3 adjustment goes in `deviations.md` with the linked commit.</critical>
|
|
252
252
|
- <critical>CLAUDE.md > plan. If plan and CLAUDE.md conflict, CLAUDE.md wins (Rule 1 deviation).</critical>
|
|
253
253
|
- <critical>Atomic edits to tasks.md. Mark `[x]` for the just-committed task BEFORE moving to the next.</critical>
|
|
254
|
-
- Do NOT push to remote. The orchestrator runs `/dw-generate-pr` after `/dw-
|
|
254
|
+
- Do NOT push to remote. The orchestrator runs `/dw-generate-pr` after `/dw-qa`.
|
|
255
255
|
- Do NOT skip waves. Tasks within a wave run in parallel; waves run sequentially.
|
|
256
256
|
|
|
257
257
|
## Anti-Patterns
|
|
@@ -14,7 +14,7 @@ CRITICAL: If your spawn prompt contains a required_reading block, you MUST Read
|
|
|
14
14
|
<role>
|
|
15
15
|
You are **dw-plan-checker**, the plan verification agent for dev-workflow. You verify that `.dw/spec/prd-<slug>/tasks.md` WILL achieve the PRD goal — not just that it looks complete.
|
|
16
16
|
|
|
17
|
-
Spawned by `/dw-plan-checker` (manual gate) or `/dw-
|
|
17
|
+
Spawned by `/dw-plan-checker` (manual gate) or `/dw-plan tasks` (auto-gate before declaring tasks ready) or `/dw-autopilot` (gate before execution).
|
|
18
18
|
|
|
19
19
|
Goal-backward verification of plans BEFORE execution. Start from what the PRD SHOULD deliver, verify the tasks address it.
|
|
20
20
|
|
|
@@ -187,7 +187,7 @@ After running all 6 dimensions:
|
|
|
187
187
|
## Recommendation
|
|
188
188
|
|
|
189
189
|
- PASS → proceed to `/dw-execute-phase .dw/spec/prd-<slug>/`
|
|
190
|
-
- REVISE → re-run `/dw-
|
|
190
|
+
- REVISE → re-run `/dw-plan tasks` with the issues above as input
|
|
191
191
|
- BLOCK → resolve the locked-decision conflict before re-planning
|
|
192
192
|
|
|
193
193
|
## Status Marker
|
|
@@ -204,12 +204,12 @@ After running all 6 dimensions:
|
|
|
204
204
|
- <critical>Cite file paths and line numbers in every issue. The planner re-running needs to know exactly where to look.</critical>
|
|
205
205
|
- <critical>The status marker is the final line. Orchestrators pattern-match on it.</critical>
|
|
206
206
|
- Do NOT modify files. Plan-checker is read-only.
|
|
207
|
-
- Do NOT verify implementation correctness. That's the executor's job and `/dw-
|
|
207
|
+
- Do NOT verify implementation correctness. That's the executor's job and `/dw-qa`'s job. You only verify the PLAN.
|
|
208
208
|
|
|
209
209
|
## Anti-Patterns
|
|
210
210
|
|
|
211
211
|
1. DO NOT skip dimensions because the plan "looks fine"
|
|
212
212
|
2. DO NOT classify locked-decision conflicts as REVISE — they are BLOCK
|
|
213
|
-
3. DO NOT include code-quality nitpicks (linting, formatting) — that's `/dw-code-
|
|
213
|
+
3. DO NOT include code-quality nitpicks (linting, formatting) — that's `/dw-review --code-only`'s domain
|
|
214
214
|
4. DO NOT modify `tasks.md`; only verify it
|
|
215
215
|
5. DO NOT silently downgrade BLOCK to REVISE because "the user might fix it later"
|
|
@@ -26,7 +26,7 @@ Closes RF-XX (partial — full close on tasks.md completion).
|
|
|
26
26
|
| Type | Use |
|
|
27
27
|
|------|-----|
|
|
28
28
|
| `feat` | New user-facing capability (default for most PRD tasks) |
|
|
29
|
-
| `fix` | Bug fix discovered during the phase (rare in `/dw-execute-phase`; common in `/dw-fix
|
|
29
|
+
| `fix` | Bug fix discovered during the phase (rare in `/dw-execute-phase`; common in `/dw-qa --fix`) |
|
|
30
30
|
| `refactor` | Code reshape without behavior change |
|
|
31
31
|
| `test` | Tests-only task |
|
|
32
32
|
| `docs` | Docs-only task |
|
|
@@ -143,9 +143,9 @@ After running all 6 dimensions:
|
|
|
143
143
|
|
|
144
144
|
The plan-checker is part of a bounded quality loop:
|
|
145
145
|
|
|
146
|
-
1. `/dw-
|
|
146
|
+
1. `/dw-plan tasks` produces v1 of `tasks.md`
|
|
147
147
|
2. `/dw-plan-checker` runs → REVISE
|
|
148
|
-
3. `/dw-
|
|
148
|
+
3. `/dw-plan tasks --revise` produces v2 (consumes plan-checker's issues as input)
|
|
149
149
|
4. `/dw-plan-checker` runs → PASS or REVISE again
|
|
150
150
|
5. After 3 revisions without reaching PASS → escalate to user (something fundamental is wrong)
|
|
151
151
|
|
|
@@ -81,7 +81,7 @@ This means: subagents return their changes (files written, but NOT committed). T
|
|
|
81
81
|
|
|
82
82
|
## When to NOT use waves
|
|
83
83
|
|
|
84
|
-
Single-task changes (`/dw-quick`, `/dw-run
|
|
84
|
+
Single-task changes (`/dw-quick`, `/dw-run`) bypass waves entirely. Waves are for `/dw-run` and `/dw-execute-phase` — phase-scale execution.
|
|
85
85
|
|
|
86
86
|
## Verification of wave structure (pre-execution)
|
|
87
87
|
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: dw-git-discipline
|
|
3
|
-
description: Use when committing or opening a PR
|
|
3
|
+
description: Use when committing or opening a PR. Atomic commits (one intent), Conventional Commits, trunk-based pattern, branch hygiene. Triggers before /dw-commit, /dw-generate-pr, or any git operation.
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Bash
|
|
4
7
|
---
|
|
5
8
|
|
|
6
9
|
# Git Discipline
|
|
@@ -87,7 +90,7 @@ When wired into `/dw-generate-pr`, every PR must:
|
|
|
87
90
|
|
|
88
91
|
- `/dw-commit` runs this skill — verifies lint/tests/build green, drafts a Conventional Commits message, splits commits if multi-intent detected.
|
|
89
92
|
- `/dw-generate-pr` uses this skill to validate branch naming, PR body structure, and scope.
|
|
90
|
-
- `/dw-run
|
|
93
|
+
- `/dw-run` and `/dw-run` follow the atomic-commit discipline when their executor commits work — one task = one commit (or one logical sub-task).
|
|
91
94
|
|
|
92
95
|
## Anti-patterns this skill prevents
|
|
93
96
|
|