@curdx/flow 1.1.11 → 2.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +3 -3
- package/.claude-plugin/plugin.json +2 -2
- package/CHANGELOG.md +79 -0
- package/README.md +74 -102
- package/agents/flow-adversary.md +1 -1
- package/agents/flow-architect.md +1 -1
- package/agents/flow-product-designer.md +1 -1
- package/agents/flow-qa-engineer.md +3 -3
- package/agents/flow-researcher.md +1 -1
- package/agents/flow-security-auditor.md +1 -1
- package/agents/flow-triage-analyst.md +3 -3
- package/agents/flow-ui-researcher.md +5 -5
- package/agents/flow-ux-designer.md +2 -2
- package/cli/install.js +16 -5
- package/commands/debug.md +10 -10
- package/commands/help.md +109 -87
- package/commands/implement.md +4 -4
- package/commands/init.md +5 -5
- package/commands/review.md +114 -130
- package/commands/spec.md +131 -89
- package/commands/start.md +100 -153
- package/commands/verify.md +110 -92
- package/gates/adversarial-review-gate.md +1 -1
- package/gates/coverage-audit-gate.md +1 -1
- package/gates/devex-gate.md +1 -1
- package/gates/edge-case-gate.md +1 -1
- package/gates/security-gate.md +3 -3
- package/hooks/scripts/session-start.sh +1 -1
- package/knowledge/epic-decomposition.md +2 -2
- package/knowledge/execution-strategies.md +4 -4
- package/knowledge/planning-reviews.md +6 -6
- package/knowledge/spec-driven-development.md +3 -3
- package/knowledge/two-stage-review.md +2 -2
- package/knowledge/wave-execution.md +5 -5
- package/package.json +1 -1
- package/agents/persona-amelia.md +0 -128
- package/agents/persona-david.md +0 -141
- package/agents/persona-emma.md +0 -179
- package/agents/persona-john.md +0 -105
- package/agents/persona-mary.md +0 -95
- package/agents/persona-oliver.md +0 -136
- package/agents/persona-rachel.md +0 -126
- package/agents/persona-serena.md +0 -175
- package/agents/persona-winston.md +0 -117
- package/commands/audit.md +0 -170
- package/commands/autoplan.md +0 -184
- package/commands/design.md +0 -155
- package/commands/discuss.md +0 -162
- package/commands/doctor.md +0 -124
- package/commands/index.md +0 -261
- package/commands/install-deps.md +0 -128
- package/commands/party.md +0 -241
- package/commands/plan-ceo.md +0 -117
- package/commands/plan-design.md +0 -107
- package/commands/plan-dx.md +0 -104
- package/commands/plan-eng.md +0 -108
- package/commands/qa.md +0 -118
- package/commands/requirements.md +0 -146
- package/commands/research.md +0 -141
- package/commands/security.md +0 -109
- package/commands/sketch.md +0 -118
- package/commands/spike.md +0 -181
- package/commands/status.md +0 -139
- package/commands/switch.md +0 -95
- package/commands/tasks.md +0 -189
- package/commands/triage.md +0 -160
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
"email": "bydongxin@gmail.com"
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
|
-
"description": "
|
|
9
|
-
"version": "
|
|
8
|
+
"description": "Claude Code Discipline Layer — spec-driven workflow + goal-backward verification + Karpathy 4 principles enforced via gates. Stops Claude from faking \"done\" on non-trivial features.",
|
|
9
|
+
"version": "2.0.0-beta.2"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "curdx-flow",
|
|
14
14
|
"source": "./",
|
|
15
|
-
"description": "
|
|
15
|
+
"description": "Claude Code Discipline Layer — spec-driven workflow + goal-backward verification + Karpathy 4 principles enforced via gates. Stops Claude from faking \"done\" on non-trivial features.",
|
|
16
16
|
"keywords": [
|
|
17
17
|
"workflow",
|
|
18
18
|
"spec-driven",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "curdx-flow",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "2.0.0-beta.2",
|
|
4
|
+
"description": "Claude Code Discipline Layer — spec-driven workflow + goal-backward verification + Karpathy 4 principles enforced via gates. Stops Claude from faking \"done\" on non-trivial features.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "wdx",
|
|
7
7
|
"email": "bydongxin@gmail.com"
|
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,85 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to CurDX-Flow will be documented here.
|
|
4
4
|
|
|
5
|
+
## [2.0.0-beta.1] - 2026-04-20
|
|
6
|
+
|
|
7
|
+
### BREAKING — Major redesign: Discipline Layer, not meta-framework
|
|
8
|
+
|
|
9
|
+
v2 reframes the project from "AI engineering workflow meta-framework distilling 6 methodologies" into a focused **Claude Code Discipline Layer** — spec-driven workflow + goal-backward verification + Karpathy discipline. 30 slash commands became 9. 24 agents became 15.
|
|
10
|
+
|
|
11
|
+
See [MIGRATION.md](./MIGRATION.md) for the full v1 → v2 command mapping.
|
|
12
|
+
|
|
13
|
+
### Removed — 21 slash commands
|
|
14
|
+
|
|
15
|
+
Folded into `/curdx-flow:spec` via flags:
|
|
16
|
+
- `/research`, `/requirements`, `/design`, `/tasks` → `/spec --phase=<name>`
|
|
17
|
+
- `/plan-ceo`, `/plan-eng`, `/plan-design`, `/plan-dx`, `/autoplan` → `/spec --review[=<dim>]`
|
|
18
|
+
- `/audit` → `/verify --strict`
|
|
19
|
+
|
|
20
|
+
Moved to auto-invoked skills (also slash-callable by their skill name):
|
|
21
|
+
- `/triage` → `epic` skill
|
|
22
|
+
- `/qa` → `browser-qa` skill
|
|
23
|
+
- `/sketch` → `ui-sketch` skill
|
|
24
|
+
- `/security` → `security-audit` skill
|
|
25
|
+
- `/index` → `brownfield-index` skill
|
|
26
|
+
|
|
27
|
+
Moved to CLI-only (outside Claude Code):
|
|
28
|
+
- `/doctor` → `npx @curdx/flow doctor`
|
|
29
|
+
- `/install-deps` → `npx @curdx/flow install --all`
|
|
30
|
+
|
|
31
|
+
Removed outright:
|
|
32
|
+
- `/party` — gimmick, no measured value. Ask Claude directly for multi-perspective discussion.
|
|
33
|
+
- `/discuss` — edit `.flow/STATE.md` directly to log decisions.
|
|
34
|
+
- `/status` — use `/curdx-flow:start --list`, or read `.flow/specs/<name>/.state.json` directly.
|
|
35
|
+
- `/switch` — folded into `/curdx-flow:start <spec-name>`.
|
|
36
|
+
- `/spike` — folded into `/curdx-flow:fast "spike: <hypothesis>"`.
|
|
37
|
+
|
|
38
|
+
### Removed — 9 persona agents
|
|
39
|
+
|
|
40
|
+
Mary, John, Winston, Amelia, Rachel, David, Oliver, Serena, Emma. Their voices merged into the corresponding `flow-*` functional agents. `/party` is gone too.
|
|
41
|
+
|
|
42
|
+
### Added — 5 auto-invoked skills
|
|
43
|
+
|
|
44
|
+
Each skill has extensive trigger keywords in English and Chinese so Claude auto-invokes based on context. All are also slash-callable (`/curdx-flow:<skill-name>`).
|
|
45
|
+
|
|
46
|
+
- `skills/epic/` — vertical-slice decomposition of large features
|
|
47
|
+
- `skills/browser-qa/` — real-browser testing via chrome-devtools MCP
|
|
48
|
+
- `skills/ui-sketch/` — UI design variant generation (uses `frontend-design` skill)
|
|
49
|
+
- `skills/security-audit/` — OWASP + STRIDE + CVE scan
|
|
50
|
+
- `skills/brownfield-index/` — map unfamiliar / legacy codebases
|
|
51
|
+
|
|
52
|
+
### Changed — expanded flag surface on core commands
|
|
53
|
+
|
|
54
|
+
- `/curdx-flow:spec` gains `--phase=<X[,Y,...]>`, `--until=<phase>`, `--review[=<dim>]`, `--regenerate`, `--resume`
|
|
55
|
+
- `/curdx-flow:start` gains `--resume`, `--list`, `--mode=<fast|standard|enterprise>` and now handles spec switching (absorbing v1 `/switch`)
|
|
56
|
+
- `/curdx-flow:verify` gains `--strict` (multi-source coverage audit, absorbing v1 `/audit`)
|
|
57
|
+
- `/curdx-flow:review` normalizes flags to `--stage=<1|2|both>`, `--adversarial`, `--edge-case`
|
|
58
|
+
|
|
59
|
+
### Changed — mode semantics
|
|
60
|
+
|
|
61
|
+
Modes reduced from 4 (`sketch / fast / standard / enterprise`) to 3 (`fast / standard / enterprise`). `sketch` folded into the `ui-sketch` skill which runs regardless of mode.
|
|
62
|
+
|
|
63
|
+
### Unchanged (intentionally)
|
|
64
|
+
|
|
65
|
+
- `.flow/` directory structure — fully backwards-compatible with v1 specs
|
|
66
|
+
- 3 auto-installed MCPs (context7, sequential-thinking, chrome-devtools)
|
|
67
|
+
- 5 hook events (SessionStart, InstructionsLoaded, Stop, PreToolUse, PostToolUseFailure)
|
|
68
|
+
- 8 composable gates (karpathy, verification, tdd, coverage-audit, adversarial-review, edge-case, security, devex)
|
|
69
|
+
- Templates (`templates/*.tmpl`) and their rendering pipeline
|
|
70
|
+
- The CLI (install, doctor, upgrade, uninstall)
|
|
71
|
+
- Global `~/.claude/CLAUDE.md` protocol injection
|
|
72
|
+
|
|
73
|
+
### Why
|
|
74
|
+
|
|
75
|
+
Field feedback on v1:
|
|
76
|
+
- Users couldn't discover commands — 30 options in the slash menu exceeds working memory
|
|
77
|
+
- Claude Code auto-truncates slash descriptions once they exceed ~8 KB, hitting us at 30 commands
|
|
78
|
+
- Peer tools (Spec Kit ~7, BMAD ~15, Aider ~15) ship with far fewer commands
|
|
79
|
+
- "Meta-framework distilling 6 methodologies" is a maintainer concept, not a user value prop
|
|
80
|
+
- The real value is **Karpathy discipline + goal-backward verification** — everything else is scaffolding
|
|
81
|
+
|
|
82
|
+
v2 keeps the scaffolding (agents, gates, hooks, knowledge docs) but hides it behind the 9 commands that real users use.
|
|
83
|
+
|
|
5
84
|
## [1.1.1] - 2026-04-20
|
|
6
85
|
|
|
7
86
|
### Fixed
|
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# CurDX-Flow
|
|
2
2
|
|
|
3
|
-
> **
|
|
4
|
-
>
|
|
3
|
+
> **Stop Claude Code from faking "done".**
|
|
4
|
+
> Spec-driven workflow + goal-backward verification + Karpathy discipline.
|
|
5
5
|
|
|
6
6
|
[](https://www.npmjs.com/package/@curdx/flow)
|
|
7
7
|
[](./LICENSE)
|
|
@@ -10,148 +10,120 @@
|
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
-
##
|
|
13
|
+
## Why this exists
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
Claude Code drifts. It claims features work without running the tests. It uses stale library APIs from its training data. It takes three questions worth of code and squeezes in six.
|
|
16
16
|
|
|
17
|
-
**
|
|
17
|
+
CurDX-Flow is a thin **discipline layer** on top of Claude Code that makes non-trivial feature work actually work:
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
1. **A spec workflow** (research → requirements → design → tasks) for features too big to vibe-code.
|
|
20
|
+
2. **Goal-backward verification** that scans your implementation against your own FR / AC / AD and catches stubs, fake completions, and untested acceptance criteria.
|
|
21
|
+
3. **Karpathy's 4 principles** (think-first, simplicity, surgical changes, goal-driven) enforced via always-on hooks and gates.
|
|
20
22
|
|
|
21
|
-
|
|
22
|
-
- **24 agents** — 15 functional + 9 personas (Mary, John, Winston, Amelia, Rachel, David, Oliver, Serena, Emma)
|
|
23
|
-
- **8 composable gates** — Karpathy / Verification / TDD / Coverage / Adversarial / Edge-Case / Security / DevEx
|
|
24
|
-
- **4 execution strategies** — linear / subagent / stop-hook / wave (auto-routed)
|
|
25
|
-
- **10 knowledge docs** — spec-driven dev, POC-first, atomic commits, execution strategies, ...
|
|
26
|
-
- **5 hook events** — SessionStart / InstructionsLoaded / Stop / PreToolUse / PostToolUseFailure
|
|
27
|
-
- **3 auto-installed MCPs** — context7, sequential-thinking, chrome-devtools
|
|
28
|
-
- **Graceful degradation** — missing deps → fallback modes with clear notices
|
|
29
|
-
|
|
30
|
-
## Why Use It
|
|
31
|
-
|
|
32
|
-
Existing AI-coding workflows suffer from:
|
|
23
|
+
Not a framework. Not a methodology library. A discipline layer.
|
|
33
24
|
|
|
34
|
-
|
|
35
|
-
|---------|---------------------|
|
|
36
|
-
| Context rot (long sessions degrade) | Subagent isolation + stop-hook loops + claude-mem |
|
|
37
|
-
| No discipline (AI skips, hallucinates) | Karpathy L1 + verification-gate + TDD-gate enforcement |
|
|
38
|
-
| Scattered best practices | Six workflows distilled into one meta-framework |
|
|
39
|
-
| Weak verification (claim "done" without proof) | Goal-backward verification + forbidden-word detection |
|
|
40
|
-
| Single-viewpoint decisions | Party Mode (real multi-agent, not role-play) + adversarial review |
|
|
25
|
+
## Install (one command)
|
|
41
26
|
|
|
42
|
-
## Install
|
|
43
|
-
|
|
44
|
-
### Recommended: one-shot via npm (works in any project, fast on Chinese npm mirrors)
|
|
45
27
|
```bash
|
|
46
|
-
# Interactive install (picks recommended plugins)
|
|
47
|
-
npx @curdx/flow install
|
|
48
|
-
|
|
49
|
-
# Or install everything automatically
|
|
50
28
|
npx @curdx/flow install --all
|
|
51
|
-
|
|
52
|
-
# After the one-time install, initialize your project INSIDE Claude Code:
|
|
53
|
-
# $ claude
|
|
54
|
-
# /curdx-flow:init
|
|
55
|
-
# /curdx-flow:start my-feature "<description>"
|
|
56
|
-
|
|
57
|
-
# Other CLI lifecycle operations
|
|
58
|
-
npx @curdx/flow doctor # Health check
|
|
59
|
-
npx @curdx/flow upgrade # Update all plugins
|
|
60
|
-
npx @curdx/flow uninstall # Remove curdx-flow
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
### From the Claude Code marketplace
|
|
64
|
-
```
|
|
65
|
-
/plugin marketplace add curdx/curdx-flow
|
|
66
|
-
/plugin install curdx-flow
|
|
67
29
|
```
|
|
68
30
|
|
|
69
|
-
|
|
70
|
-
```bash
|
|
71
|
-
git clone https://github.com/curdx/curdx-flow
|
|
72
|
-
claude --plugin-dir ./curdx-flow
|
|
73
|
-
```
|
|
31
|
+
This installs the Claude Code plugin (fully offline from the npm package — no GitHub fetch), the 3 auto-registered MCP servers, and three recommended companion plugins (pua, claude-mem, frontend-design).
|
|
74
32
|
|
|
75
|
-
|
|
33
|
+
## 9 slash commands, that's it
|
|
76
34
|
|
|
77
35
|
```
|
|
78
|
-
/curdx-flow:
|
|
79
|
-
/curdx-flow:
|
|
80
|
-
/curdx-flow:
|
|
36
|
+
/curdx-flow:init Initialize .flow/ in the current project
|
|
37
|
+
/curdx-flow:start Create / resume / switch a feature spec
|
|
38
|
+
/curdx-flow:spec Write or refresh the spec (--phase, --review flags)
|
|
39
|
+
/curdx-flow:implement Execute the tasks
|
|
40
|
+
/curdx-flow:verify Goal-backward check ← the moat
|
|
41
|
+
/curdx-flow:review Two-stage code review
|
|
42
|
+
/curdx-flow:fast Skip spec for one-off tasks
|
|
43
|
+
/curdx-flow:debug Systematic 4-stage debugging
|
|
44
|
+
/curdx-flow:help Reference
|
|
81
45
|
```
|
|
82
46
|
|
|
83
|
-
|
|
47
|
+
Plus 5 auto-invoked skills (Claude picks them up from context): `epic`, `browser-qa`, `ui-sketch`, `security-audit`, `brownfield-index`.
|
|
84
48
|
|
|
85
|
-
## Quick
|
|
49
|
+
## Quick start
|
|
86
50
|
|
|
87
51
|
```bash
|
|
88
|
-
# 1. In your project
|
|
52
|
+
# 1. In your project, initialize
|
|
53
|
+
cd ~/your-project
|
|
54
|
+
claude
|
|
89
55
|
/curdx-flow:init
|
|
90
56
|
|
|
91
57
|
# 2. Start a feature
|
|
92
|
-
/curdx-flow:start jwt-auth "Add JWT authentication to REST API"
|
|
58
|
+
/curdx-flow:start jwt-auth "Add JWT authentication to the REST API"
|
|
93
59
|
|
|
94
|
-
# 3. Generate
|
|
60
|
+
# 3. Generate the spec (research → requirements → design → tasks)
|
|
95
61
|
/curdx-flow:spec
|
|
96
62
|
|
|
97
|
-
# 4. Execute
|
|
63
|
+
# 4. Execute
|
|
98
64
|
/curdx-flow:implement
|
|
99
65
|
|
|
100
66
|
# 5. Verify + review
|
|
101
67
|
/curdx-flow:verify
|
|
102
68
|
/curdx-flow:review
|
|
103
69
|
|
|
104
|
-
# Done.
|
|
70
|
+
# Done.
|
|
105
71
|
```
|
|
106
72
|
|
|
107
|
-
|
|
73
|
+
See [`docs/getting-started.md`](./docs/getting-started.md) for a five-minute walkthrough, or [`docs/workflows.md`](./docs/workflows.md) for typical scenarios (greenfield / brownfield / epic / fast / enterprise).
|
|
108
74
|
|
|
109
|
-
##
|
|
75
|
+
## The three modes
|
|
110
76
|
|
|
111
|
-
|
|
112
|
-
2. **Spec** — Research → Requirements → Design → Tasks (scalable, 4-file lite to 12-file enterprise)
|
|
113
|
-
3. **Agents** — 15 functional + 9 persona (Mary / John / Winston / ...)
|
|
114
|
-
4. **Flow** — 4 execution strategies, auto-routed
|
|
115
|
-
5. **Memory** — claude-mem (implicit) + `.flow/STATE.md` (explicit decisions as D-NN)
|
|
77
|
+
Set when you run `/curdx-flow:start --mode=<mode>`. Each mode decides which gates are enforced.
|
|
116
78
|
|
|
117
|
-
|
|
79
|
+
| Mode | Workflow | Gates |
|
|
80
|
+
|------|----------|-------|
|
|
81
|
+
| `fast` | Skip the spec — just execute | karpathy + verification |
|
|
82
|
+
| `standard` (default) | Full 4-phase spec | + tdd + coverage-audit |
|
|
83
|
+
| `enterprise` | Full spec + planning review + adversarial + edge-case + security audit | All gates |
|
|
118
84
|
|
|
119
|
-
##
|
|
85
|
+
## Upgrading from v1.x
|
|
120
86
|
|
|
121
|
-
|
|
122
|
-
|-----|--------------|
|
|
123
|
-
| [`docs/getting-started.md`](./docs/getting-started.md) | First time, 5-minute walkthrough |
|
|
124
|
-
| [`docs/command-reference.md`](./docs/command-reference.md) | All 31 commands with usage |
|
|
125
|
-
| [`docs/agent-reference.md`](./docs/agent-reference.md) | All 24 agents + personas |
|
|
126
|
-
| [`docs/workflows.md`](./docs/workflows.md) | 5 typical scenarios (greenfield/brownfield/epic/fast/UI) |
|
|
127
|
-
| [`docs/architecture.md`](./docs/architecture.md) | Internal design for extenders |
|
|
128
|
-
| [`docs/ethos.md`](./docs/ethos.md) | Why it's built this way |
|
|
129
|
-
| [`docs/troubleshoot.md`](./docs/troubleshoot.md) | Fix common problems |
|
|
87
|
+
v2 is a major rewrite. Thirty slash commands became nine. If you're coming from v1, see [`MIGRATION.md`](./MIGRATION.md) for the mapping table. If you'd rather stay on v1:
|
|
130
88
|
|
|
131
|
-
|
|
89
|
+
```bash
|
|
90
|
+
npm i -g @curdx/flow@^1.1
|
|
91
|
+
```
|
|
132
92
|
|
|
133
|
-
|
|
134
|
-
- **Phase 6** (ship / land / canary / retro) — Low ROI for private-repo use cases. Future release if community asks.
|
|
135
|
-
- **Integration checker** — For Epic cross-spec validation. Manual for now.
|
|
136
|
-
- **Checkpoint save/restore** — Current `.flow/STATE.md` covers most needs.
|
|
137
|
-
- **Multi-runtime support** — Claude Code only. Other tools later if their plugin API matures.
|
|
93
|
+
## What's in the box
|
|
138
94
|
|
|
139
|
-
|
|
95
|
+
- **9 slash commands** + **5 auto-invoked skills** (the complete public surface)
|
|
96
|
+
- **15 internal agents** that the commands dispatch (no user-visible personas — that was v1)
|
|
97
|
+
- **8 composable gates** — Karpathy / Verification / TDD / Coverage / Adversarial / Edge-Case / Security / DevEx
|
|
98
|
+
- **4 execution strategies** for `/curdx-flow:implement` (linear / subagent / stop-hook / wave, auto-routed)
|
|
99
|
+
- **5 hook events** that enforce the discipline without user action
|
|
100
|
+
- **3 auto-installed MCPs** — context7 (latest docs), sequential-thinking (structured reasoning), chrome-devtools (browser automation)
|
|
101
|
+
- **Offline-capable install** — the npm package ships the full plugin body; zero GitHub round-trips during install
|
|
102
|
+
|
|
103
|
+
## Documentation
|
|
104
|
+
|
|
105
|
+
| Doc | When to read |
|
|
106
|
+
|-----|--------------|
|
|
107
|
+
| [`docs/getting-started.md`](./docs/getting-started.md) | First time — five-minute walkthrough |
|
|
108
|
+
| [`docs/command-reference.md`](./docs/command-reference.md) | All 9 commands + 5 skills with flags |
|
|
109
|
+
| [`docs/agent-reference.md`](./docs/agent-reference.md) | The 15 internal agents |
|
|
110
|
+
| [`docs/workflows.md`](./docs/workflows.md) | Typical scenarios with exact command sequences |
|
|
111
|
+
| [`docs/architecture.md`](./docs/architecture.md) | Internal design for contributors and extenders |
|
|
112
|
+
| [`docs/ethos.md`](./docs/ethos.md) | Why we built it this way |
|
|
113
|
+
| [`docs/troubleshoot.md`](./docs/troubleshoot.md) | Symptom-indexed fixes |
|
|
114
|
+
| [`docs/releasing.md`](./docs/releasing.md) | Maintainer: how to cut a new version |
|
|
115
|
+
| [`MIGRATION.md`](./MIGRATION.md) | v1 → v2 command mapping |
|
|
140
116
|
|
|
141
117
|
## Credits
|
|
142
118
|
|
|
143
|
-
CurDX-Flow is a distillation, not an invention.
|
|
119
|
+
CurDX-Flow v2 is a distillation, not an invention. Ideas we depend on:
|
|
144
120
|
|
|
145
|
-
- [**
|
|
146
|
-
- [**
|
|
121
|
+
- [**Andrej Karpathy's 4 principles**](https://github.com/forrestchang/andrej-karpathy-skills) — the discipline foundation
|
|
122
|
+
- [**GitHub Spec Kit**](https://github.com/github/spec-kit) — spec-driven development boiled down
|
|
147
123
|
- [**superpowers**](https://github.com/obra/superpowers) — subagent discipline + TDD + two-stage review
|
|
148
|
-
- [**
|
|
149
|
-
- [**
|
|
150
|
-
-
|
|
151
|
-
- [**pua**](https://github.com/tanweai/pua) — persistence + 3 red lines
|
|
152
|
-
- [**claude-mem**](https://github.com/thedotmack/claude-mem) — automatic cross-session memory
|
|
153
|
-
- [**frontend-design skill**](https://claude.ai/skills/frontend-design) — distinctive UI (Anthropic official)
|
|
154
|
-
- **context7** (Upstash) + **sequential-thinking** (Anthropic) + **chrome-devtools-mcp** (Chrome team)
|
|
124
|
+
- [**pua**](https://github.com/tanweai/pua) — the three red lines
|
|
125
|
+
- [**claude-mem**](https://github.com/thedotmack/claude-mem) — cross-session memory
|
|
126
|
+
- **Anthropic official** — context7 (Upstash), sequential-thinking, chrome-devtools-mcp, frontend-design skill
|
|
155
127
|
|
|
156
128
|
## License
|
|
157
129
|
|
|
@@ -159,9 +131,9 @@ MIT. See [`LICENSE`](./LICENSE).
|
|
|
159
131
|
|
|
160
132
|
## Contributing
|
|
161
133
|
|
|
162
|
-
- Issues: https://github.com/
|
|
163
|
-
- PRs
|
|
164
|
-
-
|
|
134
|
+
- Issues: https://github.com/curdx/curdx-flow/issues
|
|
135
|
+
- PRs: please eat your own dogfood — run `/curdx-flow:spec` on your own PR first
|
|
136
|
+
- Be specific. No rage-at-the-LLM. The point is to make Claude reliable, not to whine about when it isn't.
|
|
165
137
|
|
|
166
138
|
---
|
|
167
139
|
|
package/agents/flow-adversary.md
CHANGED
|
@@ -164,7 +164,7 @@ Possible reasons:
|
|
|
164
164
|
|
|
165
165
|
**Recommendations**:
|
|
166
166
|
- Human review (walk through the diff)
|
|
167
|
-
-
|
|
167
|
+
- the `browser-qa` skill for real browser/integration testing (Phase 5+)
|
|
168
168
|
- Observe in staging
|
|
169
169
|
```
|
|
170
170
|
|
package/agents/flow-architect.md
CHANGED
|
@@ -22,7 +22,7 @@ Output: `.flow/specs/<name>/qa-report.md`.
|
|
|
22
22
|
|
|
23
23
|
## Prerequisites
|
|
24
24
|
|
|
25
|
-
- `chrome-devtools` MCP is running (confirm with
|
|
25
|
+
- `chrome-devtools` MCP is running (confirm with `npx @curdx/flow doctor`)
|
|
26
26
|
- Dev server is reachable (e.g. localhost:3000)
|
|
27
27
|
- The spec's `design.md` exists (so you know expected behavior)
|
|
28
28
|
|
|
@@ -216,7 +216,7 @@ Tester: flow-qa-engineer
|
|
|
216
216
|
- Performance: pass
|
|
217
217
|
- Accessibility: warnings
|
|
218
218
|
|
|
219
|
-
Recommendation: fix Bug-001, Bug-004, then re-run
|
|
219
|
+
Recommendation: fix Bug-001, Bug-004, then re-run the `browser-qa` skill (or say "test this in a real browser").
|
|
220
220
|
```
|
|
221
221
|
|
|
222
222
|
### Step 8: Update .state.json
|
|
@@ -267,7 +267,7 @@ Report: .flow/specs/<name>/qa-report.md
|
|
|
267
267
|
Screenshots: .flow/specs/<name>/qa-screenshots/
|
|
268
268
|
|
|
269
269
|
Next:
|
|
270
|
-
- Fix high bug →
|
|
270
|
+
- Fix high bug → re-run the `browser-qa` skill
|
|
271
271
|
- Or append to tasks.md (Phase 3.X QA fixes)
|
|
272
272
|
```
|
|
273
273
|
|
|
@@ -390,7 +390,7 @@ Report: .flow/specs/<name>/security-audit.md
|
|
|
390
390
|
|
|
391
391
|
Next:
|
|
392
392
|
- Fix must-fix items → /curdx-flow:implement <task>
|
|
393
|
-
- Then re-run
|
|
393
|
+
- Then re-run the `security-audit` skill (or say "audit for security issues")
|
|
394
394
|
```
|
|
395
395
|
|
|
396
396
|
---
|
|
@@ -282,9 +282,9 @@ Sub-spec skeletons (N):
|
|
|
282
282
|
Dependency graph: see epic.md
|
|
283
283
|
|
|
284
284
|
Recommended execution order:
|
|
285
|
-
1. /curdx-flow:
|
|
286
|
-
2. In parallel: /curdx-flow:
|
|
287
|
-
3. After 1 is done: /curdx-flow:
|
|
285
|
+
1. /curdx-flow:start <sub-1> && /curdx-flow:spec
|
|
286
|
+
2. In parallel: /curdx-flow:start <sub-2> && /curdx-flow:spec
|
|
287
|
+
3. After 1 is done: /curdx-flow:start <sub-3> && /curdx-flow:spec
|
|
288
288
|
|
|
289
289
|
Estimated total duration: N weeks
|
|
290
290
|
```
|
|
@@ -133,7 +133,7 @@ For this project (per CONTEXT.md):
|
|
|
133
133
|
- Palette: follow project primary #6366F1
|
|
134
134
|
- Font: keep Inter system
|
|
135
135
|
|
|
136
|
-
## Suggested Direction for
|
|
136
|
+
## Suggested Direction for flow-ux-designer
|
|
137
137
|
|
|
138
138
|
Generate 2-3 variants:
|
|
139
139
|
1. Variant A: pure Stripe style (most conservative)
|
|
@@ -170,20 +170,20 @@ mkdir -p "$REF_DIR"
|
|
|
170
170
|
/curdx-flow:ui-research "reference patterns for login form"
|
|
171
171
|
↓ outputs ui-research.md
|
|
172
172
|
|
|
173
|
-
|
|
173
|
+
the `ui-sketch` skill
|
|
174
174
|
↓ flow-ux-designer reads ui-research.md as input
|
|
175
175
|
↓ generates variants A/B/C based on research findings
|
|
176
176
|
```
|
|
177
177
|
|
|
178
178
|
Division of labor:
|
|
179
179
|
- **Me (UI Researcher)**: gather + classify, no design
|
|
180
|
-
- **
|
|
180
|
+
- **flow-ux-designer**: produces actual UI based on my research
|
|
181
181
|
|
|
182
182
|
---
|
|
183
183
|
|
|
184
184
|
## Forbidden
|
|
185
185
|
|
|
186
|
-
- ✗ Doing actual UI design (that's
|
|
186
|
+
- ✗ Doing actual UI design (that's flow-ux-designer's job)
|
|
187
187
|
- ✗ Listing references from memory (must WebSearch or scan the codebase)
|
|
188
188
|
- ✗ Providing only one reference (at least 3 categories)
|
|
189
189
|
- ✗ Ignoring CONTEXT.md preferences
|
|
@@ -219,7 +219,7 @@ Report: .flow/specs/<name>/ui-research.md
|
|
|
219
219
|
Assets: .flow/specs/<name>/ui-research/refs/
|
|
220
220
|
|
|
221
221
|
Next step:
|
|
222
|
-
|
|
222
|
+
the `ui-sketch` skill — generate concrete UI variants based on research
|
|
223
223
|
```
|
|
224
224
|
|
|
225
225
|
---
|
|
@@ -28,7 +28,7 @@ Output: HTML files under `.flow/specs/<name>/ui-sketch/` (multiple variants allo
|
|
|
28
28
|
**Fallback when skill is unavailable**:
|
|
29
29
|
- Switch to Tailwind CSS + shadcn/ui default style
|
|
30
30
|
- Clearly tell the user "frontend-design skill not installed, using generic styles"
|
|
31
|
-
- Suggest
|
|
31
|
+
- Suggest `npx @curdx/flow install --all` to install frontend-design
|
|
32
32
|
|
|
33
33
|
---
|
|
34
34
|
|
|
@@ -201,7 +201,7 @@ View:
|
|
|
201
201
|
|
|
202
202
|
Next:
|
|
203
203
|
- Pick a variant → tell me which one → I'll turn it into production components
|
|
204
|
-
- Or
|
|
204
|
+
- Or the `browser-qa` skill to verify interactions in-browser (chrome-devtools)
|
|
205
205
|
```
|
|
206
206
|
|
|
207
207
|
---
|
package/cli/install.js
CHANGED
|
@@ -237,15 +237,26 @@ export async function install(args = []) {
|
|
|
237
237
|
}
|
|
238
238
|
|
|
239
239
|
function printNextSteps() {
|
|
240
|
+
// Detect whether the CLI is globally installed (curdx-flow on PATH) or
|
|
241
|
+
// the user ran us via npx. Tell them the right invocation each time.
|
|
242
|
+
const cliOnPath = has("curdx-flow");
|
|
243
|
+
const cliCmd = cliOnPath ? "curdx-flow" : "npx @curdx/flow";
|
|
244
|
+
|
|
240
245
|
console.log(`\n${color.bold("✅ Install complete")}\n`);
|
|
246
|
+
console.log(`${color.bold("Restart Claude Code")} so the plugin registers all its commands and hooks.\n`);
|
|
241
247
|
console.log(`${color.bold("Next steps")}:\n`);
|
|
242
248
|
console.log(` ${color.dim("# Verify health")}`);
|
|
243
|
-
console.log(`
|
|
244
|
-
console.log(` ${color.dim("#
|
|
245
|
-
console.log(` cd ~/your-project
|
|
246
|
-
console.log(` ${color.dim("# Start using it (inside Claude Code)")}`);
|
|
249
|
+
console.log(` ${cliCmd} doctor\n`);
|
|
250
|
+
console.log(` ${color.dim("# Inside any project, initialize and start a feature spec")}`);
|
|
251
|
+
console.log(` ${color.cyan("cd ~/your-project")}`);
|
|
247
252
|
console.log(` ${color.cyan("claude")}`);
|
|
248
|
-
console.log(` ${color.cyan("/curdx-flow:
|
|
253
|
+
console.log(` ${color.cyan("/curdx-flow:init")}`);
|
|
254
|
+
console.log(` ${color.cyan("/curdx-flow:start my-feature \"<one-line goal>\"")}\n`);
|
|
255
|
+
if (!cliOnPath) {
|
|
256
|
+
console.log(
|
|
257
|
+
`${color.dim("Tip: install the CLI globally for shorter commands —")} ${color.cyan("npm i -g @curdx/flow")}\n`
|
|
258
|
+
);
|
|
259
|
+
}
|
|
249
260
|
console.log(
|
|
250
261
|
`${color.bold("Learn more")}: https://github.com/curdx/curdx-flow/blob/main/docs/getting-started.md\n`
|
|
251
262
|
);
|
package/commands/debug.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: debug
|
|
3
|
-
description: Systematic debugging — 4-phase methodology (root cause → pattern → hypothesis → fix); ≥3 failures triggers architectural questioning. Dispatches flow-debugger
|
|
3
|
+
description: Systematic debugging — 4-phase methodology (root cause → pattern → hypothesis → fix); ≥3 failures triggers architectural questioning. Dispatches flow-debugger.
|
|
4
4
|
argument-hint: "\"<bug description>\""
|
|
5
5
|
allowed-tools: [Read, Write, Edit, Bash, Task, Grep, Glob]
|
|
6
6
|
---
|
|
@@ -9,7 +9,7 @@ allowed-tools: [Read, Write, Edit, Bash, Task, Grep, Glob]
|
|
|
9
9
|
|
|
10
10
|
@${CLAUDE_PLUGIN_ROOT}/knowledge/systematic-debugging.md
|
|
11
11
|
|
|
12
|
-
Dispatches the `flow-debugger`
|
|
12
|
+
Dispatches the `flow-debugger` agent to perform systematic 4-phase debugging.
|
|
13
13
|
|
|
14
14
|
## When to use
|
|
15
15
|
|
|
@@ -21,7 +21,7 @@ Dispatches the `flow-debugger` (David) agent to perform systematic 4-phase debug
|
|
|
21
21
|
## When not to use
|
|
22
22
|
|
|
23
23
|
- Still in coding phase → use the normal flow-executor flow
|
|
24
|
-
- Question needs investigation → use
|
|
24
|
+
- Question needs investigation → use `/curdx-flow:fast` with a prompt like "spike: verify X with minimal tests"
|
|
25
25
|
- Performance issue needing benchmarks → performance tuning is not debug
|
|
26
26
|
|
|
27
27
|
## Step 1: Parse bug description
|
|
@@ -33,7 +33,7 @@ BUG_DESC="$ARGUMENTS"
|
|
|
33
33
|
|
|
34
34
|
## Step 2: Collect prerequisites (main agent, no dispatch)
|
|
35
35
|
|
|
36
|
-
Before dispatching
|
|
36
|
+
Before dispatching the debugger, the main agent (you) collects first:
|
|
37
37
|
|
|
38
38
|
```bash
|
|
39
39
|
# 1. Recent commit history (bug may be introduced by a new commit)
|
|
@@ -47,14 +47,14 @@ git diff --stat
|
|
|
47
47
|
ACTIVE=$(cat .flow/.active-spec 2>/dev/null)
|
|
48
48
|
```
|
|
49
49
|
|
|
50
|
-
## Step 3: Dispatch flow-debugger
|
|
50
|
+
## Step 3: Dispatch flow-debugger
|
|
51
51
|
|
|
52
52
|
```
|
|
53
53
|
Task:
|
|
54
54
|
subagent_type: general-purpose
|
|
55
55
|
description: "Debug: $BUG_DESC"
|
|
56
56
|
prompt: |
|
|
57
|
-
You are the flow-debugger agent
|
|
57
|
+
You are the flow-debugger agent. Full definition:
|
|
58
58
|
${CLAUDE_PLUGIN_ROOT}/agents/flow-debugger.md
|
|
59
59
|
|
|
60
60
|
Methodology knowledge base:
|
|
@@ -150,7 +150,7 @@ Next steps:
|
|
|
150
150
|
|
|
151
151
|
## Special case: 3 failures
|
|
152
152
|
|
|
153
|
-
If
|
|
153
|
+
If the debugger reports 3 failures:
|
|
154
154
|
|
|
155
155
|
```
|
|
156
156
|
⚠ Systematic debugging failed (3 attempts)
|
|
@@ -166,8 +166,8 @@ Possible root issues:
|
|
|
166
166
|
- Data-layer issue
|
|
167
167
|
|
|
168
168
|
Suggestions:
|
|
169
|
-
- Review
|
|
170
|
-
-
|
|
169
|
+
- Review the debugger's detailed report analysis
|
|
170
|
+
- Ask Claude directly: "from an architect's and debugger's perspective, what architectural issue does this bug hint at?"
|
|
171
171
|
- Or temporarily @ts-ignore / skip test and record as tech debt in STATE.md
|
|
172
172
|
```
|
|
173
173
|
|
|
@@ -175,7 +175,7 @@ Suggestions:
|
|
|
175
175
|
|
|
176
176
|
- ✗ Omitting the bug description
|
|
177
177
|
- ✗ Expecting "one-shot fix" (debug is a process, not an event)
|
|
178
|
-
- ✗ Skipping
|
|
178
|
+
- ✗ Skipping the debugger and editing code yourself (loses the systematic methodology)
|
|
179
179
|
- ✗ Accepting "maybe it's..." as a root cause
|
|
180
180
|
|
|
181
181
|
## Relationship to other commands
|