@curdx/flow 3.0.0 → 3.1.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/CHANGELOG.md +21 -87
- package/LICENSE +1 -1
- package/README.md +28 -129
- package/dist/index.mjs +995 -0
- package/package.json +33 -44
- package/.claude-plugin/marketplace.json +0 -48
- package/.claude-plugin/plugin.json +0 -52
- package/agent-preamble/preamble.md +0 -314
- package/agents/flow-adversary.md +0 -203
- package/agents/flow-architect.md +0 -198
- package/agents/flow-brownfield-analyst.md +0 -143
- package/agents/flow-debugger.md +0 -321
- package/agents/flow-edge-hunter.md +0 -289
- package/agents/flow-executor.md +0 -269
- package/agents/flow-orchestrator.md +0 -145
- package/agents/flow-planner.md +0 -247
- package/agents/flow-product-designer.md +0 -159
- package/agents/flow-qa-engineer.md +0 -282
- package/agents/flow-researcher.md +0 -166
- package/agents/flow-reviewer.md +0 -304
- package/agents/flow-security-auditor.md +0 -401
- package/agents/flow-triage-analyst.md +0 -272
- package/agents/flow-ui-researcher.md +0 -230
- package/agents/flow-ux-designer.md +0 -221
- package/agents/flow-verifier.md +0 -350
- package/bin/curdx-flow +0 -5
- package/bin/curdx-flow-state +0 -104
- package/bin/curdx-flow.js +0 -54
- package/cli/README.md +0 -104
- package/cli/doctor-workflow.js +0 -483
- package/cli/doctor.js +0 -73
- package/cli/help.js +0 -59
- package/cli/install-bundled-mcps.js +0 -37
- package/cli/install-companions.js +0 -19
- package/cli/install-context7-config.js +0 -80
- package/cli/install-curdx-plugin.js +0 -96
- package/cli/install-language.js +0 -35
- package/cli/install-next-steps.js +0 -29
- package/cli/install-options.js +0 -9
- package/cli/install-paths.js +0 -52
- package/cli/install-recommended-plugins.js +0 -104
- package/cli/install-required-plugins.js +0 -57
- package/cli/install-self-update.js +0 -62
- package/cli/install-workflow.js +0 -209
- package/cli/install.js +0 -101
- package/cli/lib/claude-commands.js +0 -41
- package/cli/lib/claude-ops.js +0 -47
- package/cli/lib/claude.js +0 -183
- package/cli/lib/config.js +0 -24
- package/cli/lib/doctor-claude-settings.js +0 -1186
- package/cli/lib/doctor-report.js +0 -978
- package/cli/lib/doctor-runtime-environment.js +0 -196
- package/cli/lib/frontmatter.js +0 -44
- package/cli/lib/json-schema.js +0 -57
- package/cli/lib/logging.js +0 -25
- package/cli/lib/process.js +0 -60
- package/cli/lib/prompts.js +0 -135
- package/cli/lib/runtime.js +0 -107
- package/cli/lib/semver.js +0 -109
- package/cli/lib/version.js +0 -12
- package/cli/protocols-body.md +0 -22
- package/cli/protocols.js +0 -162
- package/cli/registry.js +0 -123
- package/cli/router.js +0 -49
- package/cli/uninstall-actions.js +0 -360
- package/cli/uninstall-workflow.js +0 -146
- package/cli/uninstall.js +0 -42
- package/cli/upgrade-workflow.js +0 -80
- package/cli/upgrade.js +0 -91
- package/cli/utils.js +0 -40
- package/gates/adversarial-review-gate.md +0 -219
- package/gates/coverage-audit-gate.md +0 -182
- package/gates/devex-gate.md +0 -254
- package/gates/edge-case-gate.md +0 -194
- package/gates/karpathy-gate.md +0 -130
- package/gates/security-gate.md +0 -218
- package/gates/tdd-gate.md +0 -182
- package/gates/test-quality-gate.md +0 -59
- package/gates/verification-gate.md +0 -179
- package/hooks/hooks.json +0 -130
- package/hooks/scripts/common.sh +0 -237
- package/hooks/scripts/config-change-guard.sh +0 -94
- package/hooks/scripts/flow-context-watch.sh +0 -94
- package/hooks/scripts/inject-karpathy.sh +0 -53
- package/hooks/scripts/quick-mode-guard.sh +0 -69
- package/hooks/scripts/session-start.sh +0 -94
- package/hooks/scripts/session-title.sh +0 -87
- package/hooks/scripts/stop-watcher.sh +0 -231
- package/hooks/scripts/subagent-artifact-guard.sh +0 -92
- package/hooks/scripts/subagent-statusline.sh +0 -111
- package/hooks/scripts/task-lifecycle-guard.sh +0 -106
- package/hooks/scripts/teammate-idle-guard.sh +0 -83
- package/knowledge/artifact-output-discipline.md +0 -24
- package/knowledge/artifact-summary-contracts.md +0 -50
- package/knowledge/atomic-commits.md +0 -262
- package/knowledge/claude-code-runtime-contracts.md +0 -240
- package/knowledge/epic-decomposition.md +0 -307
- package/knowledge/execution-strategies.md +0 -303
- package/knowledge/karpathy-guidelines.md +0 -219
- package/knowledge/planning-reviews.md +0 -211
- package/knowledge/poc-first-workflow.md +0 -223
- package/knowledge/review-feedback-intake.md +0 -57
- package/knowledge/spec-driven-development.md +0 -180
- package/knowledge/systematic-debugging.md +0 -378
- package/knowledge/two-stage-review.md +0 -249
- package/knowledge/wave-execution.md +0 -403
- package/monitors/monitors.json +0 -8
- package/monitors/scripts/flow-state-monitor.sh +0 -102
- package/output-styles/curdx-evidence-first.md +0 -34
- package/output-styles/curdx-fast-mode.md +0 -42
- package/output-styles/curdx-spec-mode.md +0 -46
- package/schemas/agent-frontmatter.schema.json +0 -66
- package/schemas/config.schema.json +0 -134
- package/schemas/gate-frontmatter.schema.json +0 -30
- package/schemas/hooks.schema.json +0 -115
- package/schemas/output-style-frontmatter.schema.json +0 -22
- package/schemas/plugin-manifest.schema.json +0 -436
- package/schemas/plugin-settings.schema.json +0 -29
- package/schemas/skill-frontmatter.schema.json +0 -177
- package/schemas/spec-frontmatter.schema.json +0 -42
- package/schemas/spec-state.schema.json +0 -165
- package/settings.json +0 -8
- package/skills/brownfield-index/SKILL.md +0 -53
- package/skills/brownfield-index/references/applicability.md +0 -12
- package/skills/brownfield-index/references/handoff.md +0 -8
- package/skills/brownfield-index/references/index-contract.md +0 -10
- package/skills/browser-qa/SKILL.md +0 -39
- package/skills/browser-qa/references/handoff.md +0 -6
- package/skills/browser-qa/references/prerequisites.md +0 -10
- package/skills/browser-qa/references/qa-contract.md +0 -20
- package/skills/cancel/SKILL.md +0 -41
- package/skills/cancel/references/destructive-mode.md +0 -17
- package/skills/cancel/references/reporting.md +0 -18
- package/skills/cancel/references/state-recovery.md +0 -30
- package/skills/cancel/references/target-resolution.md +0 -7
- package/skills/debug/SKILL.md +0 -45
- package/skills/debug/references/context-gathering.md +0 -11
- package/skills/debug/references/failure-guard.md +0 -25
- package/skills/debug/references/intake.md +0 -12
- package/skills/debug/references/phase-workflow.md +0 -34
- package/skills/debug/references/reporting.md +0 -20
- package/skills/epic/SKILL.md +0 -39
- package/skills/epic/references/epic-artifacts.md +0 -20
- package/skills/epic/references/epic-intake.md +0 -9
- package/skills/epic/references/slice-handoff.md +0 -16
- package/skills/fast/SKILL.md +0 -62
- package/skills/fast/references/applicability.md +0 -25
- package/skills/fast/references/clarification.md +0 -20
- package/skills/fast/references/execution-contract.md +0 -56
- package/skills/help/SKILL.md +0 -55
- package/skills/help/references/dispatch.md +0 -20
- package/skills/help/references/overview.md +0 -39
- package/skills/help/references/troubleshoot.md +0 -47
- package/skills/help/references/workflow.md +0 -37
- package/skills/implement/SKILL.md +0 -104
- package/skills/implement/references/error-recovery.md +0 -36
- package/skills/implement/references/linear-execution.md +0 -43
- package/skills/implement/references/native-task-sync.md +0 -107
- package/skills/implement/references/preflight.md +0 -43
- package/skills/implement/references/progress-contract.md +0 -36
- package/skills/implement/references/state-init.md +0 -36
- package/skills/implement/references/stop-hook-execution.md +0 -50
- package/skills/implement/references/strategy-router.md +0 -38
- package/skills/implement/references/subagent-execution.md +0 -57
- package/skills/implement/references/wave-execution.md +0 -180
- package/skills/init/SKILL.md +0 -49
- package/skills/init/references/gitignore-and-health.md +0 -26
- package/skills/init/references/next-steps.md +0 -22
- package/skills/init/references/preflight.md +0 -15
- package/skills/init/references/scaffold-contract.md +0 -27
- package/skills/review/SKILL.md +0 -82
- package/skills/review/references/optional-passes.md +0 -48
- package/skills/review/references/preflight.md +0 -38
- package/skills/review/references/report-contract.md +0 -49
- package/skills/review/references/reporting.md +0 -20
- package/skills/review/references/stage-execution.md +0 -32
- package/skills/security-audit/SKILL.md +0 -47
- package/skills/security-audit/references/audit-contract.md +0 -21
- package/skills/security-audit/references/gate-handoff.md +0 -8
- package/skills/security-audit/references/scope-and-depth.md +0 -9
- package/skills/spec/SKILL.md +0 -100
- package/skills/spec/references/artifact-landing.md +0 -31
- package/skills/spec/references/phase-execution.md +0 -50
- package/skills/spec/references/planning-review.md +0 -31
- package/skills/spec/references/preflight-and-routing.md +0 -46
- package/skills/spec/references/reporting.md +0 -21
- package/skills/start/SKILL.md +0 -84
- package/skills/start/references/branch-routing.md +0 -51
- package/skills/start/references/mode-semantics.md +0 -12
- package/skills/start/references/preflight.md +0 -13
- package/skills/start/references/reporting.md +0 -20
- package/skills/start/references/state-seeding.md +0 -44
- package/skills/start/references/workflow-handoff.md +0 -26
- package/skills/status/SKILL.md +0 -41
- package/skills/status/references/gather-contract.md +0 -30
- package/skills/status/references/health-rules.md +0 -27
- package/skills/status/references/output-contract.md +0 -25
- package/skills/status/references/preflight.md +0 -10
- package/skills/status/references/recovery-hints.md +0 -18
- package/skills/ui-sketch/SKILL.md +0 -39
- package/skills/ui-sketch/references/brief-intake.md +0 -10
- package/skills/ui-sketch/references/iteration-handoff.md +0 -5
- package/skills/ui-sketch/references/variant-contract.md +0 -15
- package/skills/verify/SKILL.md +0 -56
- package/skills/verify/references/evidence-workflow.md +0 -39
- package/skills/verify/references/output-contract.md +0 -23
- package/skills/verify/references/preflight.md +0 -11
- package/skills/verify/references/report-handoff.md +0 -35
- package/skills/verify/references/strict-mode.md +0 -12
- package/templates/CONTEXT.md.tmpl +0 -53
- package/templates/PROJECT.md.tmpl +0 -59
- package/templates/ROADMAP.md.tmpl +0 -50
- package/templates/STATE.md.tmpl +0 -49
- package/templates/config.json.tmpl +0 -51
- package/templates/design.md.tmpl +0 -83
- package/templates/progress.md.tmpl +0 -77
- package/templates/requirements.md.tmpl +0 -76
- package/templates/research.md.tmpl +0 -83
- package/templates/tasks.md.tmpl +0 -107
package/skills/start/SKILL.md
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: start
|
|
3
|
-
description: Create, resume, list, or switch the active feature spec.
|
|
4
|
-
when_to_use: Use when the user wants to create a spec, switch active work, resume a prior spec, list specs, or set the workflow mode for a feature.
|
|
5
|
-
argument-hint: "[<spec-name>] [\"<one-line goal>\"] [--resume] [--list] [--mode=<fast|standard|enterprise>]"
|
|
6
|
-
disable-model-invocation: true
|
|
7
|
-
allowed-tools: [Read, Write, Bash, AskUserQuestion, Agent]
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Start or Resume a Feature Spec
|
|
11
|
-
|
|
12
|
-
Entry point for every feature. Keep this skill focused on argument parsing,
|
|
13
|
-
branch selection, state seeding, and next-step routing. Detailed branch behavior
|
|
14
|
-
and workflow handoff rules live in:
|
|
15
|
-
|
|
16
|
-
- `references/preflight.md`
|
|
17
|
-
- `references/branch-routing.md`
|
|
18
|
-
- `references/state-seeding.md`
|
|
19
|
-
- `references/mode-semantics.md`
|
|
20
|
-
- `references/workflow-handoff.md`
|
|
21
|
-
- `references/reporting.md`
|
|
22
|
-
|
|
23
|
-
## Invocation Patterns
|
|
24
|
-
|
|
25
|
-
| Pattern | Behavior |
|
|
26
|
-
|---------|----------|
|
|
27
|
-
| `/curdx-flow:start my-feature "Add JWT auth to REST API"` | Create a fresh spec named `my-feature`, set it active, seed draft requirements. |
|
|
28
|
-
| `/curdx-flow:start my-feature` (name exists) | Switch active spec to `my-feature` (same as v1 `/switch`). |
|
|
29
|
-
| `/curdx-flow:start --resume` | Resume the last active spec from `.flow/.active-spec`. |
|
|
30
|
-
| `/curdx-flow:start --list` | List all specs with their phase and last-updated time, prompt to pick. |
|
|
31
|
-
| `/curdx-flow:start` (no args) | Interactive: ask the user whether to create new, resume recent, or list all. |
|
|
32
|
-
| Add `--mode=<fast\|standard\|enterprise>` | Set the execution mode for this spec (stored in `.state.json`). |
|
|
33
|
-
|
|
34
|
-
## Preflight
|
|
35
|
-
|
|
36
|
-
Use `references/preflight.md` for the project-level guard.
|
|
37
|
-
|
|
38
|
-
## Flag Parsing
|
|
39
|
-
|
|
40
|
-
Do not shell-split `$ARGUMENTS`. Parse flags and positional arguments using the
|
|
41
|
-
rules in `references/branch-routing.md`.
|
|
42
|
-
|
|
43
|
-
Hard constraints:
|
|
44
|
-
|
|
45
|
-
- Flags allowed: `--resume`, `--list`, `--mode=<fast|standard|enterprise>`
|
|
46
|
-
- First positional token -> `SPEC_NAME`
|
|
47
|
-
- Remaining trimmed content -> `GOAL`
|
|
48
|
-
- `SPEC_NAME` must be kebab-case per `schemas/spec-state.schema.json`
|
|
49
|
-
- Invalid mode -> warn and fall back to `standard`
|
|
50
|
-
|
|
51
|
-
## Branch Selection
|
|
52
|
-
|
|
53
|
-
Use `references/branch-routing.md` for the full branch contract:
|
|
54
|
-
|
|
55
|
-
- Branch A: `--list`
|
|
56
|
-
- Branch B: `--resume`
|
|
57
|
-
- Branch C: existing `SPEC_NAME`
|
|
58
|
-
- Branch D: new `SPEC_NAME`
|
|
59
|
-
- Branch E: no args / no flags
|
|
60
|
-
|
|
61
|
-
If a new spec must be created, seed `.state.json`, `.flow/.active-spec`, and
|
|
62
|
-
`.progress.md` using `references/state-seeding.md`.
|
|
63
|
-
|
|
64
|
-
## Mode Semantics
|
|
65
|
-
|
|
66
|
-
Use `references/mode-semantics.md` for the workflow defaults implied by
|
|
67
|
-
`mode`.
|
|
68
|
-
|
|
69
|
-
## Post-Create and Resume Handoff
|
|
70
|
-
|
|
71
|
-
The next-command routing rules are centralized in
|
|
72
|
-
`references/workflow-handoff.md`.
|
|
73
|
-
|
|
74
|
-
User-visible create/switch/resume summaries live in `references/reporting.md`.
|
|
75
|
-
For a newly created spec, the immediate handoff remains:
|
|
76
|
-
|
|
77
|
-
```text
|
|
78
|
-
Next: /curdx-flow:spec
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
## References
|
|
82
|
-
|
|
83
|
-
- State schema: `@${CLAUDE_PLUGIN_ROOT}/schemas/spec-state.schema.json`
|
|
84
|
-
- Mode semantics: `@${CLAUDE_PLUGIN_ROOT}/knowledge/execution-strategies.md`
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
# Branch Routing — Start Skill Control Flow
|
|
2
|
-
|
|
3
|
-
## Argument Parsing Rules
|
|
4
|
-
|
|
5
|
-
Do not shell-split `$ARGUMENTS`.
|
|
6
|
-
|
|
7
|
-
1. Detect and remove these flags from the raw string:
|
|
8
|
-
- `--resume`
|
|
9
|
-
- `--list`
|
|
10
|
-
- `--mode=<fast|standard|enterprise>`
|
|
11
|
-
2. After flags are removed:
|
|
12
|
-
- first whitespace-delimited token -> `SPEC_NAME`
|
|
13
|
-
- remaining trimmed text -> `GOAL`
|
|
14
|
-
- strip one outer layer of matching single or double quotes from `GOAL`
|
|
15
|
-
3. Reject unknown flags instead of ignoring them.
|
|
16
|
-
|
|
17
|
-
## Branches
|
|
18
|
-
|
|
19
|
-
### Branch A — `--list`
|
|
20
|
-
|
|
21
|
-
- enumerate `.flow/specs/*`
|
|
22
|
-
- read each `.state.json`
|
|
23
|
-
- show phase + updated timestamp
|
|
24
|
-
- use `AskUserQuestion` to choose
|
|
25
|
-
- set `.flow/.active-spec`
|
|
26
|
-
|
|
27
|
-
### Branch B — `--resume`
|
|
28
|
-
|
|
29
|
-
- read `.flow/.active-spec`
|
|
30
|
-
- if stale or missing, fall back to Branch A
|
|
31
|
-
- report current phase and route using `references/workflow-handoff.md`
|
|
32
|
-
|
|
33
|
-
### Branch C — Existing `SPEC_NAME`
|
|
34
|
-
|
|
35
|
-
- switch `.flow/.active-spec` to that spec
|
|
36
|
-
- confirm if the user likely intended to switch rather than overwrite
|
|
37
|
-
- report current phase
|
|
38
|
-
|
|
39
|
-
### Branch D — New `SPEC_NAME`
|
|
40
|
-
|
|
41
|
-
- gather missing `GOAL` if necessary
|
|
42
|
-
- create state and progress files using `references/state-seeding.md`
|
|
43
|
-
- set `.flow/.active-spec`
|
|
44
|
-
|
|
45
|
-
### Branch E — No args / no flags
|
|
46
|
-
|
|
47
|
-
Ask the user to choose:
|
|
48
|
-
|
|
49
|
-
- create a new spec
|
|
50
|
-
- resume the last active spec
|
|
51
|
-
- list all specs
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
# Start Mode Semantics — What Each Mode Implies
|
|
2
|
-
|
|
3
|
-
The `mode` field in `.state.json` drives later workflow defaults:
|
|
4
|
-
|
|
5
|
-
| Mode | `/curdx-flow:spec` default | `/curdx-flow:implement` default | Gates applied |
|
|
6
|
-
|------|---------------------------|--------------------------------|---------------|
|
|
7
|
-
| `fast` | skipped (use `/curdx-flow:fast` instead) | linear strategy | karpathy + verification |
|
|
8
|
-
| `standard` | full 4 phases | auto strategy | + tdd + coverage-audit |
|
|
9
|
-
| `enterprise` | full 4 phases + `--review=all` | auto strategy + stricter gates | + adversarial + edge-case + security + devex |
|
|
10
|
-
|
|
11
|
-
If an invalid mode is provided during argument parsing, warn and fall back to
|
|
12
|
-
`standard`.
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
# Start Preflight — Project Must Be Initialized
|
|
2
|
-
|
|
3
|
-
Before parsing arguments or touching spec state:
|
|
4
|
-
|
|
5
|
-
```bash
|
|
6
|
-
[ ! -d ".flow" ] && {
|
|
7
|
-
echo "✗ Not a CurdX-Flow project. Run /curdx-flow:init first.";
|
|
8
|
-
exit 1;
|
|
9
|
-
}
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
`/curdx-flow:start` is the first mutable workflow entrypoint after init. If the
|
|
13
|
-
project scaffold is missing, stop immediately instead of attempting recovery.
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
# Start Reporting — User-Facing Summaries
|
|
2
|
-
|
|
3
|
-
For a newly created spec, report:
|
|
4
|
-
|
|
5
|
-
```text
|
|
6
|
-
✓ Spec ready: <name>
|
|
7
|
-
Goal: <goal>
|
|
8
|
-
Mode: <mode>
|
|
9
|
-
Path: .flow/specs/<name>/
|
|
10
|
-
|
|
11
|
-
Next: /curdx-flow:spec
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
For resume and switch flows, keep the message short:
|
|
15
|
-
|
|
16
|
-
- identify the active spec
|
|
17
|
-
- state the current phase when known
|
|
18
|
-
- route using `references/workflow-handoff.md`
|
|
19
|
-
|
|
20
|
-
Do not restate the full workflow. Point to the immediate next command only.
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
# State Seeding — New Spec Bootstrap
|
|
2
|
-
|
|
3
|
-
When creating a fresh spec, use `Write` for all files so Claude checkpoints can
|
|
4
|
-
rewind the bootstrap cleanly.
|
|
5
|
-
|
|
6
|
-
## `.state.json`
|
|
7
|
-
|
|
8
|
-
Required shape:
|
|
9
|
-
|
|
10
|
-
```json
|
|
11
|
-
{
|
|
12
|
-
"version": "1.0",
|
|
13
|
-
"spec_name": "$SPEC_NAME",
|
|
14
|
-
"goal": "$GOAL",
|
|
15
|
-
"mode": "$FLAG_MODE",
|
|
16
|
-
"phase": "research",
|
|
17
|
-
"phase_status": {},
|
|
18
|
-
"strategy": "auto",
|
|
19
|
-
"execute_state": {},
|
|
20
|
-
"created": "YYYY-MM-DD",
|
|
21
|
-
"updated": "YYYY-MM-DDTHH:MM:SSZ"
|
|
22
|
-
}
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
## `.progress.md`
|
|
26
|
-
|
|
27
|
-
```markdown
|
|
28
|
-
# Progress Log — $SPEC_NAME
|
|
29
|
-
|
|
30
|
-
**Goal**: $GOAL
|
|
31
|
-
**Mode**: $FLAG_MODE
|
|
32
|
-
**Created**: YYYY-MM-DD
|
|
33
|
-
|
|
34
|
-
## Decisions
|
|
35
|
-
(populated during /curdx-flow:spec)
|
|
36
|
-
|
|
37
|
-
## Learnings
|
|
38
|
-
(populated during /curdx-flow:implement)
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## Activation
|
|
42
|
-
|
|
43
|
-
Write `.flow/.active-spec` last, after the spec directory and both artifacts
|
|
44
|
-
exist.
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
# Workflow Handoff — What Comes Next
|
|
2
|
-
|
|
3
|
-
`/curdx-flow:start` is the entrypoint, but it should route users to the right
|
|
4
|
-
next command based on current phase.
|
|
5
|
-
|
|
6
|
-
## New Spec
|
|
7
|
-
|
|
8
|
-
After a fresh spec is created:
|
|
9
|
-
|
|
10
|
-
```text
|
|
11
|
-
Next: /curdx-flow:spec
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
## Resume / Switch Routing
|
|
15
|
-
|
|
16
|
-
When resuming an existing spec:
|
|
17
|
-
|
|
18
|
-
- `phase` before `tasks` completion -> suggest `/curdx-flow:spec`
|
|
19
|
-
- `tasks` completed but execution not complete -> suggest `/curdx-flow:implement`
|
|
20
|
-
- `execute` completed but verification missing or failed -> suggest `/curdx-flow:verify`
|
|
21
|
-
- `verify` completed but review missing or failed -> suggest `/curdx-flow:review`
|
|
22
|
-
- both verification and review completed -> report evidence-backed handoff is
|
|
23
|
-
ready for human PR/release work
|
|
24
|
-
|
|
25
|
-
Do not invent non-existent ship commands. The workflow ends at human handoff
|
|
26
|
-
with persisted evidence.
|
package/skills/status/SKILL.md
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: status
|
|
3
|
-
description: Show active spec health, progress, artifacts, and recovery hints.
|
|
4
|
-
when_to_use: Use when the user asks what is active, which phase a spec is in, what artifacts exist, or how to recover from interrupted execution.
|
|
5
|
-
argument-hint: "[--all]"
|
|
6
|
-
disable-model-invocation: true
|
|
7
|
-
allowed-tools: [Read, Bash, Glob]
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# CurdX-Flow Status
|
|
11
|
-
|
|
12
|
-
Show a compact, read-only status summary for the current project. Keep this
|
|
13
|
-
entrypoint focused on read-only inventory, health classification, and recovery
|
|
14
|
-
hints. Detailed health and recovery rules live in:
|
|
15
|
-
|
|
16
|
-
- `references/preflight.md`
|
|
17
|
-
- `references/gather-contract.md`
|
|
18
|
-
- `references/health-rules.md`
|
|
19
|
-
- `references/recovery-hints.md`
|
|
20
|
-
- `references/output-contract.md`
|
|
21
|
-
|
|
22
|
-
## Preconditions
|
|
23
|
-
|
|
24
|
-
Use `references/preflight.md` for the project-level guard.
|
|
25
|
-
|
|
26
|
-
## Gather
|
|
27
|
-
|
|
28
|
-
Use `references/gather-contract.md` for the full read-only inventory contract.
|
|
29
|
-
|
|
30
|
-
## Output Format
|
|
31
|
-
|
|
32
|
-
Use `references/output-contract.md` for the compact markdown report shape.
|
|
33
|
-
|
|
34
|
-
Use `references/health-rules.md` to compute `Health`, and
|
|
35
|
-
`references/recovery-hints.md` to compute the single best next action.
|
|
36
|
-
|
|
37
|
-
## Strictness
|
|
38
|
-
|
|
39
|
-
- Read-only. Do not modify files.
|
|
40
|
-
- Do not claim a spec is complete from `.state.json` alone; compare `tasks.md`
|
|
41
|
-
checkboxes.
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# Status Gather Contract — What to Read
|
|
2
|
-
|
|
3
|
-
Gather read-only state in this order:
|
|
4
|
-
|
|
5
|
-
1. Read `.flow/.active-spec` if present.
|
|
6
|
-
2. List `.flow/specs/*/` directories.
|
|
7
|
-
3. For each spec, check artifacts:
|
|
8
|
-
- `research.md`
|
|
9
|
-
- `requirements.md`
|
|
10
|
-
- `design.md`
|
|
11
|
-
- `tasks.md`
|
|
12
|
-
- `verification-report.md`
|
|
13
|
-
- `review-report.md`
|
|
14
|
-
4. If `.state.json` exists, read:
|
|
15
|
-
- `phase`
|
|
16
|
-
- `strategy`
|
|
17
|
-
- `phase_status`
|
|
18
|
-
- `execute_state.task_index`
|
|
19
|
-
- `execute_state.total_tasks`
|
|
20
|
-
- `execute_state.failed_attempts`
|
|
21
|
-
- `execute_state.global_iteration`
|
|
22
|
-
- `execute_state.native_sync_enabled`
|
|
23
|
-
- `execute_state.native_sync_failure_count`
|
|
24
|
-
- `execute_state.native_task_map` size
|
|
25
|
-
5. If `tasks.md` exists, count:
|
|
26
|
-
- completed tasks: lines matching `- [x] **`
|
|
27
|
-
- open tasks: lines matching `- [ ] **`
|
|
28
|
-
|
|
29
|
-
Do not mutate files while gathering. `status` is an observer, not a repair
|
|
30
|
-
workflow.
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# Status Health Rules — Canonical Evaluation
|
|
2
|
-
|
|
3
|
-
## `OK`
|
|
4
|
-
|
|
5
|
-
Use `OK` only when:
|
|
6
|
-
|
|
7
|
-
- state and tasks agree
|
|
8
|
-
- failed attempts are zero
|
|
9
|
-
- the current phase's expected artifact exists
|
|
10
|
-
|
|
11
|
-
## `NEEDS_ATTENTION`
|
|
12
|
-
|
|
13
|
-
Use `NEEDS_ATTENTION` when any of these is true:
|
|
14
|
-
|
|
15
|
-
- `.state.json` says execute complete but `tasks.md` still has open tasks
|
|
16
|
-
- `failed_attempts > 0`
|
|
17
|
-
- `.flow/.active-spec` points to a missing directory
|
|
18
|
-
- the current phase's expected artifact is missing or obviously truncated
|
|
19
|
-
|
|
20
|
-
## Artifact Expectations
|
|
21
|
-
|
|
22
|
-
- `research` -> `research.md`
|
|
23
|
-
- `requirements` -> `requirements.md`
|
|
24
|
-
- `design` -> `design.md`
|
|
25
|
-
- `tasks` / `execute` -> `tasks.md`
|
|
26
|
-
- `verify` -> `verification-report.md`
|
|
27
|
-
- `review` -> `review-report.md`
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
# Status Output Contract — Compact Read-Only Summary
|
|
2
|
-
|
|
3
|
-
Render:
|
|
4
|
-
|
|
5
|
-
```markdown
|
|
6
|
-
# CurDX-Flow Status
|
|
7
|
-
|
|
8
|
-
Project: <cwd>
|
|
9
|
-
Active spec: <name | none>
|
|
10
|
-
|
|
11
|
-
## Specs
|
|
12
|
-
|
|
13
|
-
### <spec-name> [ACTIVE]
|
|
14
|
-
Phase: <phase | unknown>
|
|
15
|
-
Strategy: <strategy | auto>
|
|
16
|
-
Tasks: <done>/<total from tasks.md> checked, state cursor <task_index>/<total_tasks>
|
|
17
|
-
Failures: <failed_attempts>, rounds: <global_iteration>
|
|
18
|
-
Native sync: <on|off>, mapped tasks: <count>, sync failures: <native_sync_failure_count>
|
|
19
|
-
Artifacts: [x] research [x] requirements [x] design [x] tasks [ ] verify [ ] review
|
|
20
|
-
Health: OK | NEEDS_ATTENTION
|
|
21
|
-
Recovery: <one concrete next command>
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
Keep it compact and operational. Show one best recovery command, not a list of
|
|
25
|
-
possible next steps.
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
# Status Preflight — Project Must Exist
|
|
2
|
-
|
|
3
|
-
Before reading any status signals:
|
|
4
|
-
|
|
5
|
-
```bash
|
|
6
|
-
[ ! -d ".flow" ] && { echo "✗ Not a CurdX-Flow project. Run /curdx-flow:init first."; exit 1; }
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
`status` is strictly read-only. If `.flow/` does not exist, stop immediately
|
|
10
|
-
and route to `/curdx-flow:init`.
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
# Status Recovery Hints — Single Best Next Command
|
|
2
|
-
|
|
3
|
-
Choose one concrete recovery command, not a menu.
|
|
4
|
-
|
|
5
|
-
## Priority Rules
|
|
6
|
-
|
|
7
|
-
- No `.flow/` -> `/curdx-flow:init`
|
|
8
|
-
- No active spec -> `/curdx-flow:start <name> "<goal>"`
|
|
9
|
-
- Missing or stale spec artifact before tasks completion -> `/curdx-flow:spec`
|
|
10
|
-
- Tasks complete but execute not done -> `/curdx-flow:implement`
|
|
11
|
-
- Execute complete but verification missing or failed -> `/curdx-flow:verify`
|
|
12
|
-
- Verification complete but review missing or failed -> `/curdx-flow:review`
|
|
13
|
-
- Stop-hook or execution parity drift -> `/curdx-flow:cancel`, then `/curdx-flow:implement --strategy=subagent`
|
|
14
|
-
|
|
15
|
-
## Constraint
|
|
16
|
-
|
|
17
|
-
Do not suggest a later-stage command when an earlier missing artifact or failed
|
|
18
|
-
phase blocks it.
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ui-sketch
|
|
3
|
-
description: Use when the user needs UI design drafts, layout variants, mockups, prototypes, or styling direction.
|
|
4
|
-
when_to_use: Triggers on "design UI", "UI design", "component layout", "variants", "wireframe", "mockup", "prototype", "sketch", "draft layout", "visual design", "styling", "CSS", "theming", "dark mode", "responsive design", "color scheme", "build me a UI", "show several variants", "try different colors".
|
|
5
|
-
argument-hint: "\"<screen or component brief>\""
|
|
6
|
-
context: fork
|
|
7
|
-
agent: flow-ux-designer
|
|
8
|
-
paths:
|
|
9
|
-
- "**/*.{html,css,scss,sass,less,js,jsx,ts,tsx,vue,svelte,astro}"
|
|
10
|
-
- "app/**"
|
|
11
|
-
- "pages/**"
|
|
12
|
-
- "components/**"
|
|
13
|
-
- "public/**"
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
# UI Sketch
|
|
17
|
-
|
|
18
|
-
This skill is for design exploration, not final implementation. Keep the
|
|
19
|
-
entrypoint focused on design-brief intake, variant output requirements, and the
|
|
20
|
-
iteration handoff. Detailed rules live in:
|
|
21
|
-
|
|
22
|
-
- `references/brief-intake.md`
|
|
23
|
-
- `references/variant-contract.md`
|
|
24
|
-
- `references/iteration-handoff.md`
|
|
25
|
-
|
|
26
|
-
## Design Brief
|
|
27
|
-
|
|
28
|
-
Use `references/brief-intake.md` to confirm the brief before dispatching
|
|
29
|
-
`flow-ux-designer`.
|
|
30
|
-
|
|
31
|
-
## Variant Contract
|
|
32
|
-
|
|
33
|
-
The required outputs for `flow-ux-designer` and optional `flow-ui-researcher`
|
|
34
|
-
live in `references/variant-contract.md`.
|
|
35
|
-
|
|
36
|
-
## Iteration Handoff
|
|
37
|
-
|
|
38
|
-
How to pick, merge, or promote a variant lives in
|
|
39
|
-
`references/iteration-handoff.md`.
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
# UI Sketch Brief Intake — What to Clarify
|
|
2
|
-
|
|
3
|
-
Before sketching, confirm:
|
|
4
|
-
|
|
5
|
-
- what is being designed
|
|
6
|
-
- context (consumer, enterprise, marketing, internal tool)
|
|
7
|
-
- must-haves (brand, system, responsive constraints)
|
|
8
|
-
- variant count
|
|
9
|
-
|
|
10
|
-
If the user already provided all of this, do not over-interview.
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
# UI Sketch Iteration Handoff — Pick, Merge, or Promote
|
|
2
|
-
|
|
3
|
-
- if the user picks a variant, promote it into the active design discussion
|
|
4
|
-
- if the user wants a hybrid, rerun with an explicit merge instruction
|
|
5
|
-
- treat sketches as exploratory assets, not shipped implementation by default
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
# UI Sketch Variant Contract — What Must Be Produced
|
|
2
|
-
|
|
3
|
-
`flow-ux-designer` should:
|
|
4
|
-
|
|
5
|
-
1. invoke the frontend-design workflow
|
|
6
|
-
2. generate distinct variants
|
|
7
|
-
3. write rationale for each variant
|
|
8
|
-
4. optionally use `flow-ui-researcher` for precedent gathering
|
|
9
|
-
|
|
10
|
-
## Required Artifacts
|
|
11
|
-
|
|
12
|
-
- `.flow/specs/<active>/ui-sketch/`
|
|
13
|
-
- `.flow/specs/<active>/ui-sketch/index.html`
|
|
14
|
-
|
|
15
|
-
Each variant should include rationale and accessibility notes.
|
package/skills/verify/SKILL.md
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: verify
|
|
3
|
-
description: Verify the active spec against code, tests, and browser evidence.
|
|
4
|
-
when_to_use: Use when implementation is done and the user wants proof that FRs, ACs, and ADs are actually satisfied rather than merely claimed complete.
|
|
5
|
-
argument-hint: "[--strict]"
|
|
6
|
-
disable-model-invocation: true
|
|
7
|
-
context: fork
|
|
8
|
-
agent: flow-verifier
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Goal-Backward Verification
|
|
12
|
-
|
|
13
|
-
Verify the active `.flow/` spec using goal-backward analysis. Keep this
|
|
14
|
-
entrypoint focused on preflight, evidence scope, strict-mode expansion, and the
|
|
15
|
-
final handoff. Detailed evidence rules live in:
|
|
16
|
-
|
|
17
|
-
- `references/preflight.md`
|
|
18
|
-
- `references/evidence-workflow.md`
|
|
19
|
-
- `references/strict-mode.md`
|
|
20
|
-
- `references/output-contract.md`
|
|
21
|
-
- `references/report-handoff.md`
|
|
22
|
-
|
|
23
|
-
## Arguments
|
|
24
|
-
|
|
25
|
-
`$ARGUMENTS` optionally includes `--strict`.
|
|
26
|
-
|
|
27
|
-
## Preflight
|
|
28
|
-
|
|
29
|
-
Use `references/preflight.md` for the project-level guard.
|
|
30
|
-
|
|
31
|
-
## Evidence Scope
|
|
32
|
-
|
|
33
|
-
Use `references/evidence-workflow.md` for the full evidence contract.
|
|
34
|
-
UI-facing checks still rely on `mcp__chrome_devtools__*` when browser evidence
|
|
35
|
-
is required.
|
|
36
|
-
|
|
37
|
-
## Strict Mode
|
|
38
|
-
|
|
39
|
-
If `$ARGUMENTS` contains `--strict`, also apply the multi-source audit from
|
|
40
|
-
`references/strict-mode.md`.
|
|
41
|
-
|
|
42
|
-
## Deliverables and Gate
|
|
43
|
-
|
|
44
|
-
Use `references/output-contract.md` for the required artifact and compact
|
|
45
|
-
summary. The exact report structure, landing order, and post-write routing are
|
|
46
|
-
governed by `references/report-handoff.md` plus the `flow-verifier` agent
|
|
47
|
-
contract.
|
|
48
|
-
Primary artifact: `.flow/specs/<name>/verification-report.md`.
|
|
49
|
-
|
|
50
|
-
Apply `@${CLAUDE_PLUGIN_ROOT}/gates/verification-gate.md` before returning a
|
|
51
|
-
PASS verdict.
|
|
52
|
-
|
|
53
|
-
## Output to User
|
|
54
|
-
|
|
55
|
-
Use `references/output-contract.md` for the final compact response. Next-step
|
|
56
|
-
routing is defined in `references/report-handoff.md`.
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
# Evidence Workflow — Verification Rules
|
|
2
|
-
|
|
3
|
-
## Read Set
|
|
4
|
-
|
|
5
|
-
Load:
|
|
6
|
-
|
|
7
|
-
- `.flow/specs/<name>/requirements.md`
|
|
8
|
-
- `.flow/specs/<name>/design.md`
|
|
9
|
-
- `.flow/specs/<name>/tasks.md`
|
|
10
|
-
- `.flow/specs/<name>/.progress.md`
|
|
11
|
-
- `.flow/specs/<name>/.state.json`
|
|
12
|
-
- `.flow/STATE.md`
|
|
13
|
-
|
|
14
|
-
## Assertion Model
|
|
15
|
-
|
|
16
|
-
Verify every relevant:
|
|
17
|
-
|
|
18
|
-
- `FR`
|
|
19
|
-
- `AC`
|
|
20
|
-
- `AD`
|
|
21
|
-
- implementation-relevant component existence
|
|
22
|
-
|
|
23
|
-
For fix/debug specs, also verify `VF-original-issue`.
|
|
24
|
-
|
|
25
|
-
## UI vs Code-Only
|
|
26
|
-
|
|
27
|
-
- UI-facing ACs require browser verification through `mcp__chrome_devtools__*`
|
|
28
|
-
- Code inspection plus `jsdom` / `happy-dom` tests are insufficient for
|
|
29
|
-
UI-facing ACs
|
|
30
|
-
- If browser MCP is unavailable, mark UI-facing ACs as
|
|
31
|
-
`unverified — browser MCP missing`
|
|
32
|
-
|
|
33
|
-
## Required Checks
|
|
34
|
-
|
|
35
|
-
- run real tests or verify commands, never hypothetical ones
|
|
36
|
-
- scan for stub and fake-completion patterns on FR-covered paths
|
|
37
|
-
- apply `test-quality-gate` to every evidentiary test
|
|
38
|
-
- downgrade assertions backed only by weak tests
|
|
39
|
-
- require `.progress.md` BEFORE/AFTER reality checks for fix/debug work
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
# Verify Output Contract — Artifact and Summary
|
|
2
|
-
|
|
3
|
-
## Artifact
|
|
4
|
-
|
|
5
|
-
Write:
|
|
6
|
-
|
|
7
|
-
```text
|
|
8
|
-
.flow/specs/<name>/verification-report.md
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## Summary
|
|
12
|
-
|
|
13
|
-
After the report lands, respond with:
|
|
14
|
-
|
|
15
|
-
```text
|
|
16
|
-
✓ Verification complete: <spec-name>
|
|
17
|
-
FR coverage: N/M implemented (S stub, K missing)
|
|
18
|
-
AC coverage: N/M tested
|
|
19
|
-
Verdict: PASS | PARTIAL | MISSING
|
|
20
|
-
Report: .flow/specs/<name>/verification-report.md
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
Keep the response compact. The report file holds the detail.
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
# Verify Preflight — Active Spec and Artifact Guard
|
|
2
|
-
|
|
3
|
-
Before verifying:
|
|
4
|
-
|
|
5
|
-
- `.flow/` must exist
|
|
6
|
-
- `.flow/.active-spec` must be non-empty
|
|
7
|
-
- `.flow/specs/<active>/requirements.md` must exist
|
|
8
|
-
- `.flow/specs/<active>/design.md` must exist
|
|
9
|
-
- `.flow/specs/<active>/tasks.md` must exist
|
|
10
|
-
|
|
11
|
-
If any precondition fails, emit a clear error and stop immediately.
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
# Report Handoff — Deliverable and Next Step
|
|
2
|
-
|
|
3
|
-
## Deliverable
|
|
4
|
-
|
|
5
|
-
Write:
|
|
6
|
-
|
|
7
|
-
```text
|
|
8
|
-
.flow/specs/<name>/verification-report.md
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
The first substantive action after gathering findings must be the `Write` call
|
|
12
|
-
for the complete report. Do not preview the report first.
|
|
13
|
-
|
|
14
|
-
## Gate Outcome
|
|
15
|
-
|
|
16
|
-
- `PASS` -> verification evidence is complete; next logical step is
|
|
17
|
-
`/curdx-flow:review`
|
|
18
|
-
- `PARTIAL` or `MISSING` -> address findings, then rerun `/curdx-flow:verify`
|
|
19
|
-
|
|
20
|
-
## Output Summary
|
|
21
|
-
|
|
22
|
-
After `Write` succeeds, respond with no more than 5 lines:
|
|
23
|
-
|
|
24
|
-
```text
|
|
25
|
-
✓ Verification complete: <spec-name>
|
|
26
|
-
FR coverage: N/M implemented (S stub, K missing)
|
|
27
|
-
AC coverage: N/M tested
|
|
28
|
-
Verdict: PASS | PARTIAL | MISSING
|
|
29
|
-
Report: .flow/specs/<name>/verification-report.md
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
Next:
|
|
33
|
-
|
|
34
|
-
- `/curdx-flow:review` after a clean verification pass
|
|
35
|
-
- `/curdx-flow:verify` again after fixes
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
# Strict Mode — Multi-Source Audit
|
|
2
|
-
|
|
3
|
-
When `--strict` is present, also apply
|
|
4
|
-
`@${CLAUDE_PLUGIN_ROOT}/gates/coverage-audit-gate.md`.
|
|
5
|
-
|
|
6
|
-
Cross-check:
|
|
7
|
-
|
|
8
|
-
- every `FR` <-> `AC` <-> `AD` <-> task <-> test <-> commit chain
|
|
9
|
-
- research recommendations versus the actual implementation
|
|
10
|
-
- every relevant `D-NN` in `.flow/STATE.md`
|
|
11
|
-
|
|
12
|
-
`--strict` expands evidence requirements; it does not relax any baseline gate.
|