@dv.nghiem/flowdeck 0.2.4 → 0.3.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.
Files changed (74) hide show
  1. package/README.md +24 -41
  2. package/dist/hooks/memory-hook.d.ts +21 -0
  3. package/dist/hooks/memory-hook.d.ts.map +1 -0
  4. package/dist/hooks/orchestrator-guard-hook.d.ts.map +1 -1
  5. package/dist/hooks/todo-hook.d.ts +1 -7
  6. package/dist/hooks/todo-hook.d.ts.map +1 -1
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +709 -420
  9. package/dist/services/memory-store.d.ts +40 -0
  10. package/dist/services/memory-store.d.ts.map +1 -0
  11. package/dist/tools/memory-search.d.ts +3 -0
  12. package/dist/tools/memory-search.d.ts.map +1 -0
  13. package/docs/commands/fd-doctor.md +21 -0
  14. package/docs/commands/fd-quick.md +33 -0
  15. package/docs/commands/fd-reflect.md +23 -0
  16. package/docs/commands/fd-status.md +31 -0
  17. package/docs/commands/fd-translate-intent.md +17 -0
  18. package/docs/commands.md +209 -271
  19. package/docs/configuration.md +1 -2
  20. package/docs/index.md +22 -28
  21. package/docs/memory.md +69 -0
  22. package/docs/quick-start.md +1 -1
  23. package/package.json +1 -1
  24. package/src/commands/fd-deploy-check.md +131 -11
  25. package/src/commands/fd-new-project.md +14 -1
  26. package/src/commands/fd-quick.md +60 -0
  27. package/src/commands/fd-reflect.md +41 -2
  28. package/src/commands/fd-status.md +84 -0
  29. package/src/rules/README.md +8 -7
  30. package/src/skills/agent-harness-construction/SKILL.md +227 -0
  31. package/src/skills/api-design/SKILL.md +5 -0
  32. package/src/skills/backend-patterns/SKILL.md +105 -0
  33. package/src/skills/clean-architecture/SKILL.md +85 -0
  34. package/src/skills/cqrs/SKILL.md +230 -0
  35. package/src/skills/ddd-architecture/SKILL.md +104 -0
  36. package/src/skills/django-patterns/SKILL.md +304 -0
  37. package/src/skills/django-tdd/SKILL.md +297 -0
  38. package/src/skills/event-driven-architecture/SKILL.md +152 -0
  39. package/src/skills/frontend-pattern/SKILL.md +159 -0
  40. package/src/skills/hexagonal-architecture/SKILL.md +80 -0
  41. package/src/skills/layered-architecture/SKILL.md +64 -0
  42. package/src/skills/postgres-patterns/SKILL.md +74 -0
  43. package/src/skills/python-patterns/SKILL.md +5 -0
  44. package/src/skills/saga-architecture/SKILL.md +113 -0
  45. package/dist/tools/run-parallel.d.ts +0 -4
  46. package/dist/tools/run-parallel.d.ts.map +0 -1
  47. package/docs/command-migration.md +0 -175
  48. package/docs/commands/fd-analyze-change.md +0 -107
  49. package/docs/commands/fd-dashboard.md +0 -11
  50. package/docs/commands/fd-evaluate-risk.md +0 -134
  51. package/docs/commands/fd-guarded-edit.md +0 -105
  52. package/docs/commands/fd-progress.md +0 -11
  53. package/docs/commands/fd-review-code.md +0 -29
  54. package/docs/commands/fd-roadmap.md +0 -10
  55. package/docs/commands/fd-settings.md +0 -10
  56. package/docs/parallel-execution.md +0 -255
  57. package/src/commands/fd-analyze-change.md +0 -57
  58. package/src/commands/fd-approve.md +0 -64
  59. package/src/commands/fd-blast-radius.md +0 -49
  60. package/src/commands/fd-dashboard.md +0 -57
  61. package/src/commands/fd-evaluate-risk.md +0 -62
  62. package/src/commands/fd-guarded-edit.md +0 -69
  63. package/src/commands/fd-impact-radar.md +0 -51
  64. package/src/commands/fd-learn.md +0 -36
  65. package/src/commands/fd-progress.md +0 -50
  66. package/src/commands/fd-regression-predict.md +0 -57
  67. package/src/commands/fd-review-code.md +0 -96
  68. package/src/commands/fd-review-route.md +0 -54
  69. package/src/commands/fd-roadmap.md +0 -46
  70. package/src/commands/fd-settings.md +0 -57
  71. package/src/commands/fd-test-gap.md +0 -54
  72. package/src/commands/fd-volatility-map.md +0 -64
  73. package/src/commands/fd-workspace-status.md +0 -34
  74. package/src/skills/parallel-execute/SKILL.md +0 -92
@@ -1,36 +0,0 @@
1
- ---
2
- description: Capture a repeatable pattern from this session and save it as a reusable FlowDeck skill
3
- argument-hint: [skill-name]
4
- ---
5
-
6
- # Learn: Capture Session Knowledge
7
-
8
- Review what happened in this session and create a reusable skill from the most significant learning.
9
-
10
- **Input:** `$ARGUMENTS` — optional kebab-case name for the skill (the agent will choose one if omitted)
11
-
12
- ## Steps
13
-
14
- 1. **Identify what is worth capturing.** Look for:
15
- - A novel problem that required figuring out a non-obvious solution
16
- - A pattern that required human guidance or clarification to resolve
17
- - A workflow or sequence that would save significant time if remembered
18
- - A pitfall that was hit and corrected
19
-
20
- If nothing significant was discovered, reply: "No new patterns to capture from this session." and stop.
21
-
22
- 2. **Draft the skill.** Structure it as:
23
- - `## When to Activate` — concrete triggers (e.g., "when X file pattern exists", "when the user asks about Y")
24
- - `## Steps` — ordered, concrete steps to apply the skill
25
- - `## Examples` — at least one short, concrete example
26
- - `## Pitfalls` — common mistakes to avoid
27
-
28
- 3. **Choose the skill name.** Use `$ARGUMENTS` if provided, otherwise derive a kebab-case name from the pattern.
29
-
30
- 4. **Write the skill** using the `create-skill` tool with:
31
- - `name`: kebab-case identifier
32
- - `description`: one sentence summarising what the skill does
33
- - `content`: the full Markdown body from step 2
34
- - `tags`: 2–4 relevant tags
35
-
36
- 5. **Report** what was captured, why it is useful, and remind the user to restart OpenCode to activate it.
@@ -1,50 +0,0 @@
1
- ---
2
- description: Display project progress — STATE.md summary, active PLAN.md steps, and recent results
3
- argument-hint: [--json]
4
- ---
5
-
6
- # Progress
7
-
8
- Display current project progress from planning files.
9
-
10
- **Input:** $ARGUMENTS (pass `--json` for machine-readable output)
11
-
12
- ## Steps
13
-
14
- 1. Check `.planning/STATE.md` exists — if not, return error: "Initialize project first with /fd-new-project."
15
-
16
- 2. Read STATE.md and parse:
17
- - Current phase number
18
- - Status (planned/in_progress/completed)
19
- - Last updated timestamp
20
- - `plan_confirmed` flag
21
-
22
- 3. Read `.planning/phases/phase-<N>/PLAN.md` if it exists:
23
- - Count total steps (lines matching `- [ ]` or `- [x]`)
24
- - Count completed steps (lines matching `- [x]`)
25
-
26
- 4. Check for recent RESULT.md files in the last 3 phases.
27
-
28
- 5. Display:
29
-
30
- ```
31
- ════════════════════════════════════════════════════════════
32
- Phase: <N> | Status: <status> | Updated: <timestamp>
33
- ────────────────────────────────────────────────────────────
34
- Plan: <X> steps (<Y> complete)
35
- Plan confirmed: <yes/no>
36
- Recent results: Phase <N-1>, Phase <N>
37
- ════════════════════════════════════════════════════════════
38
- ```
39
-
40
- If `--json`, output structured JSON instead:
41
- ```json
42
- {
43
- "phase": N,
44
- "status": "...",
45
- "plan_confirmed": true,
46
- "steps_total": X,
47
- "steps_complete": Y,
48
- "last_updated": "..."
49
- }
50
- ```
@@ -1,57 +0,0 @@
1
- ---
2
- description: Regression Prediction — estimate the most likely regression categories for a proposed change
3
- argument-hint: [change description]
4
- ---
5
-
6
- # Regression Predict
7
-
8
- Predict the most likely regression categories for a proposed change before implementing it.
9
-
10
- **Input:** $ARGUMENTS — description of the proposed change
11
-
12
- ## Steps
13
-
14
- Run two agents in parallel:
15
-
16
- - **@researcher**: Map the changed code paths in `$ARGUMENTS` to regression category keywords and patterns; check `.codebase/FAILURES.json` for prior regressions in the same area
17
-
18
- - **@tester**: Analyze existing test coverage for the affected paths; identify which regression categories are under-tested
19
-
20
- ## Regression Categories
21
-
22
- | Category | Indicators |
23
- |----------|-----------|
24
- | **Performance** | touching caching, DB queries, loops, response serialization |
25
- | **Auth / Security** | touching middleware, tokens, sessions, permissions |
26
- | **Schema / Data** | touching DB models, migrations, serializers |
27
- | **UI States** | touching frontend components, state management, events |
28
- | **Async Flows** | touching queues, workers, webhooks, timeouts |
29
- | **API Contracts** | touching public endpoints, request/response shapes |
30
- | **Integration** | touching external service calls, adapters |
31
-
32
- ## Report
33
-
34
- ```
35
- ════════════════════════════════════════════
36
- REGRESSION PREDICTION
37
- ════════════════════════════════════════════
38
- Change: <summary of $ARGUMENTS>
39
-
40
- Likely Regressions (ranked by probability):
41
-
42
- 🔴 HIGH — Auth/Security
43
- Reason: change touches middleware X
44
- Prior: FAILURES.json F-12 (×3 recurrences)
45
-
46
- 🟠 MEDIUM — API Contracts
47
- Reason: modifies response shape of /api/checkout
48
-
49
- 🟡 LOW — Performance
50
- Reason: adds DB query in hot path
51
-
52
- ────────────────────────────────────────────
53
- Recommended Tests to Add:
54
- 1. <specific test scenario>
55
- 2. <specific test scenario>
56
- ════════════════════════════════════════════
57
- ```
@@ -1,96 +0,0 @@
1
- ---
2
- description: Parallel reviewer + researcher + tester — aggregates findings into critical/major/minor report
3
- argument-hint: [--scope=path | --focus=security,quality,tdd]
4
- ---
5
-
6
- # Review Code
7
-
8
- Run a comprehensive parallel code review before merging or deploying.
9
-
10
- **Input:** $ARGUMENTS — optional `--scope=<path>` and `--focus=<areas>`
11
-
12
- ## Process
13
-
14
- ### Step 1: Identify Scope
15
-
16
- If `/review-code [scope]` provided: review files matching scope.
17
- If no scope: review all files changed since last commit.
18
-
19
- ```bash
20
- git diff --name-only HEAD~1
21
- ```
22
-
23
- If no changes found, report: "Nothing to review."
24
-
25
- ### Step 2: Parallel Review
26
-
27
- Spawn three agents simultaneously:
28
-
29
- **@reviewer**
30
- - Security: secrets, injection, auth, XSS
31
- - Quality: function size, nesting, error handling
32
- - Conventions: naming, import style, patterns
33
-
34
- **@researcher**
35
- - Look up best practices for flagged patterns
36
- - Check if flagged patterns are known vulnerabilities
37
- - Provide context for MEDIUM findings
38
-
39
- **@tester**
40
- - Check coverage for changed files
41
- - Identify untested paths
42
- - Run existing tests
43
-
44
- ### Step 3: Aggregate Results
45
-
46
- Merge all findings by severity:
47
-
48
- ```
49
- ## Code Review: <scope>
50
-
51
- ### 🔴 CRITICAL (block merge)
52
- - [finding with file:line and fix]
53
-
54
- ### 🟠 HIGH (strongly recommend fix)
55
- - [finding]
56
-
57
- ### 🟡 MEDIUM (consider fixing)
58
- - [finding]
59
-
60
- ### 🟢 LOW (optional)
61
- - [finding]
62
-
63
- ### Coverage
64
- - Changed files: N%
65
- - Untested paths: [list]
66
-
67
- ### Verdict: PASS | FAIL | PASS_WITH_NOTES
68
- ```
69
-
70
- ### Step 4: Decision
71
-
72
- - **CRITICAL found** → Block. Fix before merge.
73
- - **HIGH found** → Strongly recommend fix. Document if proceeding anyway.
74
- - **MEDIUM/LOW** → Document. Proceed.
75
- - **PASS** → Ready to merge.
76
-
77
- ## Agent Configuration
78
-
79
- | Agent | Model | Purpose |
80
- |-------|-------|---------|
81
- | @reviewer | google/gemini-2.5-flash | Security and quality |
82
- | @researcher | anthropic/claude-sonnet-4-5 | Context and best practices |
83
- | @tester | anthropic/claude-sonnet-4-5 | Coverage analysis |
84
-
85
- ## Severity Classification
86
-
87
- | Severity | Meaning | Action |
88
- |----------|---------|--------|
89
- | CRITICAL | Security vulnerability or data loss risk | **BLOCK** - Must fix before merge |
90
- | HIGH | Bug or significant quality issue | **WARN** - Should fix before merge |
91
- | MEDIUM | Maintainability concern | **INFO** - Consider fixing |
92
- | LOW | Style or minor suggestion | **NOTE** - Optional |
93
-
94
- ## Output
95
-
96
- Report: files reviewed, findings by severity, coverage, verdict.
@@ -1,54 +0,0 @@
1
- ---
2
- description: Human Review Routing — route risky patches to the right reviewer type based on change nature and risk score
3
- argument-hint: [change description or PR number]
4
- ---
5
-
6
- # Review Route
7
-
8
- Determine the right reviewer type for a proposed change based on its nature and risk.
9
-
10
- **Input:** $ARGUMENTS — change description or PR number/URL
11
-
12
- ## Steps
13
-
14
- 1. Analyze the change described in `$ARGUMENTS`:
15
- - Read affected files and their categories
16
- - Check `.codebase/VOLATILITY.json` for risk scores if available
17
- - Check `.codebase/FAILURES.json` for prior failures in this area
18
-
19
- 2. Classify change by domain:
20
-
21
- | Domain Signals | Reviewer Type |
22
- |---------------|---------------|
23
- | Auth, tokens, sessions, permissions | **Security reviewer** |
24
- | DB migrations, schema, models | **Backend/DB reviewer** |
25
- | Infrastructure, CI/CD, containers | **Infra reviewer** |
26
- | Public APIs, SDK changes | **API owner** |
27
- | High-churn or volatile file (score >0.7) | **Domain owner** |
28
- | New external dependency | **Security + Arch reviewer** |
29
- | Low risk, no sensitive paths | **Any peer reviewer** |
30
-
31
- ## Report
32
-
33
- ```
34
- ════════════════════════════════════════════
35
- REVIEW ROUTING
36
- ════════════════════════════════════════════
37
- Change: <summary>
38
- Risk score: <0-10>
39
-
40
- Recommended Reviewers:
41
-
42
- PRIMARY: <reviewer type> — <reason>
43
- SECONDARY: <reviewer type> — <reason>
44
-
45
- Why:
46
- - <specific signal that triggered routing>
47
- - <prior failures in this area if any>
48
-
49
- SLA:
50
- - <high risk: same-day | medium: 24h | low: 48h>
51
- ════════════════════════════════════════════
52
- ```
53
-
54
- If risk score < 3: "Low risk — any peer reviewer is sufficient."
@@ -1,46 +0,0 @@
1
- ---
2
- description: View or update project roadmap — displays ROADMAP.md, shows phase statuses, add new phase, or mark phase complete
3
- argument-hint: [--add "Phase Name" | --complete N | --list]
4
- ---
5
-
6
- # Roadmap
7
-
8
- View or update the project roadmap.
9
-
10
- **Input:** $ARGUMENTS
11
-
12
- ## Behavior
13
-
14
- ### View Roadmap (no args or `--list`)
15
-
16
- 1. Read `.planning/ROADMAP.md` — if not found, error: "Run /fd-new-project first."
17
- 2. Read `.planning/STATE.md` for current phase and completed phases.
18
- 3. Display the roadmap with status indicators:
19
-
20
- ```
21
- ═══════════════════════════════════════
22
- PROJECT ROADMAP
23
- ═══════════════════════════════════════
24
- ✅ Phase 1: <name> — completed
25
- 🔄 Phase 2: <name> — in progress ← current
26
- ⏳ Phase 3: <name> — planned
27
- ═══════════════════════════════════════
28
- Current: Phase 2 | Status: in_progress
29
- ```
30
-
31
- ### Add Phase (`--add "Phase Name"`)
32
-
33
- Append a new phase row to the `ROADMAP.md` overview table with status `planned`.
34
-
35
- Update STATE.md `total_phases` counter.
36
-
37
- Report: "Phase <N> '<name>' added."
38
-
39
- ### Mark Complete (`--complete N`)
40
-
41
- 1. Update ROADMAP.md to mark phase N as completed.
42
- 2. Update STATE.md:
43
- - Increment `completed_phases`
44
- - Advance `phase` to N+1 if N is current phase
45
- - Set new phase `status: planned`
46
- 3. Report: "Phase N marked complete. Now on phase N+1."
@@ -1,57 +0,0 @@
1
- ---
2
- description: View or update FlowDeck settings — agent models, quality profiles, and workflow toggles
3
- argument-hint: [key=value | --list]
4
- ---
5
-
6
- # Settings
7
-
8
- View or update FlowDeck configuration.
9
-
10
- **Input:** $ARGUMENTS
11
-
12
- ## Behavior
13
-
14
- ### List Settings (`--list` or no arguments)
15
-
16
- Read `.planning/config.json` (create with defaults if missing) and display current settings:
17
-
18
- | Setting | Value | Description |
19
- |---------|-------|-------------|
20
- | `model_profile` | balanced | Agent quality profile (quality/balanced/economy) |
21
- | `tdd_enforced` | true | Require TDD red-green-refactor cycle |
22
- | `approval_required` | false | Require human approval for risky changes |
23
- | `volatility_threshold` | 0.7 | Risk score that triggers approval gate |
24
- | `default_agent` | orchestrator | Default agent for commands |
25
-
26
- ### Set a Value (`key=value`)
27
-
28
- Parse `$ARGUMENTS` as `key=value` pairs (space-separated for multiple).
29
-
30
- Valid keys:
31
- - `model_profile` — `quality`, `balanced`, `economy`
32
- - `tdd_enforced` — `true`, `false`
33
- - `approval_required` — `true`, `false`
34
- - `volatility_threshold` — number between 0.0 and 1.0
35
- - `default_agent` — agent name string
36
-
37
- Update `.planning/config.json` with the new values.
38
-
39
- Report what was changed.
40
-
41
- ### Invalid Key
42
-
43
- Report error with list of valid keys.
44
-
45
- ## Default Config
46
-
47
- If `.planning/config.json` does not exist, create it with defaults:
48
-
49
- ```json
50
- {
51
- "model_profile": "balanced",
52
- "tdd_enforced": true,
53
- "approval_required": false,
54
- "volatility_threshold": 0.7,
55
- "default_agent": "orchestrator"
56
- }
57
- ```
@@ -1,54 +0,0 @@
1
- ---
2
- description: Test Gap Detector — identify areas of a proposed change weakly covered by tests and suggest minimum high-value tests to add
3
- argument-hint: [change description or file paths]
4
- ---
5
-
6
- # Test Gap
7
-
8
- Identify test gaps in a proposed change and recommend the minimum high-value tests to add.
9
-
10
- **Input:** $ARGUMENTS — description of the change or specific file paths
11
-
12
- ## Steps
13
-
14
- Run two agents in parallel:
15
-
16
- - **@tester**: Find source files mentioned in `$ARGUMENTS` that have no corresponding test file; identify branches/edge cases in changed functions with no test coverage; look for missing error-path tests
17
-
18
- - **@researcher**: Check if the changed functions appear in any integration or end-to-end test; find prior test gaps in this area from git history (tests added reactively after bugs)
19
-
20
- ## Gap Scoring
21
-
22
- For each identified gap:
23
- - **CRITICAL**: public API with no test at all
24
- - **HIGH**: error handling path with no test
25
- - **MEDIUM**: business logic branch not covered
26
- - **LOW**: edge case (empty input, max values) not tested
27
-
28
- ## Report
29
-
30
- ```
31
- ════════════════════════════════════════════
32
- TEST GAP REPORT
33
- ════════════════════════════════════════════
34
- Change: <summary>
35
-
36
- Gaps Found (<N>):
37
-
38
- CRITICAL: <file> — no test file exists
39
- Suggest: <test file path> testing <what>
40
-
41
- HIGH: <function> in <file> — error path not tested
42
- Suggest: test case for <error condition>
43
-
44
- MEDIUM: <function> — branch "<condition>" not covered
45
- Suggest: test case where <condition is true>
46
-
47
- ────────────────────────────────────────────
48
- Minimum Tests to Add (prioritized):
49
- 1. <test description> — covers CRITICAL gap
50
- 2. <test description> — covers HIGH gap
51
- ════════════════════════════════════════════
52
- ```
53
-
54
- Ask: "Should I write these tests now?"
@@ -1,64 +0,0 @@
1
- ---
2
- description: Codebase Volatility Map — highlight unstable zones based on git churn, hotfix frequency, and TODO clusters. Updates .codebase/VOLATILITY.json
3
- ---
4
-
5
- # Volatility Map
6
-
7
- Generate a volatility map of the codebase to identify unstable, high-churn areas.
8
-
9
- ## Steps
10
-
11
- Run three analyses in parallel:
12
-
13
- ### 1. Git Churn (@researcher)
14
- ```bash
15
- git log --follow --format="%ad" --date=short -- <file> | wc -l
16
- ```
17
- Run for all source files (last 90 days). Identify files with the most commits.
18
-
19
- ### 2. TODO/FIXME Scan (@researcher)
20
- Scan all source files for `TODO`, `FIXME`, `HACK`, `XXX` comments. Count per file.
21
-
22
- ### 3. Hotfix Frequency (@researcher)
23
- Search git log for commit messages containing `fix`, `hotfix`, `patch`, `urgent`, `bug` (last 90 days). Count per file touched.
24
-
25
- ## Scoring
26
-
27
- For each file, compute a volatility score (0.0–1.0):
28
- - `churn_score` = commits / max_commits (normalized)
29
- - `todo_score` = todo_count / max_todos (normalized)
30
- - `hotfix_score` = hotfix_commits / max_hotfixes (normalized)
31
- - `volatility = (churn * 0.4) + (hotfix * 0.4) + (todo * 0.2)`
32
-
33
- ## Output
34
-
35
- Write results to `.codebase/VOLATILITY.json`:
36
- ```json
37
- {
38
- "generated_at": "<timestamp>",
39
- "hotspots": [
40
- { "path": "<file>", "score": 0.92, "commits": 47, "todos": 8, "hotfixes": 12 }
41
- ],
42
- "stable_zones": [
43
- { "path": "<file>", "score": 0.05 }
44
- ]
45
- }
46
- ```
47
-
48
- ## Report
49
-
50
- ```
51
- ════════════════════════════════
52
- VOLATILITY MAP
53
- ════════════════════════════════
54
- Top Hotspots:
55
- 🔴 <file> — score: 0.92 (47 commits, 12 hotfixes)
56
- 🟠 <file> — score: 0.71 (23 commits, 5 hotfixes)
57
- 🟡 <file> — score: 0.45 (15 commits, 8 TODOs)
58
-
59
- Stable Zones:
60
- 🟢 <file> — score: 0.05
61
-
62
- Saved: .codebase/VOLATILITY.json
63
- ════════════════════════════════
64
- ```
@@ -1,34 +0,0 @@
1
- ---
2
- description: Display workspace overview — all repos, their current phase, status, and progress
3
- ---
4
-
5
- # Workspace Status
6
-
7
- Display an overview of all repositories registered in the workspace.
8
-
9
- ## Steps
10
-
11
- 1. Read `.planning/config.json` for the list of registered repos.
12
- - If no repos registered, show status for the current directory only.
13
-
14
- 2. For each repo, read its `.planning/STATE.md`:
15
- - Current phase, status, last_updated
16
- - Plan confirmed flag
17
-
18
- 3. Display workspace overview:
19
-
20
- ```
21
- ════════════════════════════════════════════════════
22
- WORKSPACE OVERVIEW
23
- ════════════════════════════════════════════════════
24
- frontend — Phase 2 | in_progress | Plan: ✅ | Updated: <time>
25
- backend — Phase 3 | completed | Plan: ✅ | Updated: <time>
26
- shared — Phase 1 | planned | Plan: ❌ | Updated: <time>
27
- ────────────────────────────────────────────────────
28
- Total: 3 repos | 1 in progress | 1 completed | 1 planned
29
- ════════════════════════════════════════════════════
30
- ```
31
-
32
- 4. Highlight any repos with:
33
- - `status: blocked` → show with ⚠️
34
- - `plan_confirmed: false` + `status: in_progress` → note: "plan not confirmed"
@@ -1,92 +0,0 @@
1
- ---
2
- name: parallel-execute
3
- description: Coordinate parallel agent execution for independent workstreams. Assign tasks to specialist agents by wave, merge outputs, handle conflicts. Use when a plan has parallel tasks.
4
- origin: FlowDeck
5
- ---
6
-
7
- # Parallel Execute Skill
8
-
9
- Maximizes throughput by running independent work simultaneously. Manages waves, verifies independence, handles merge conflicts.
10
-
11
- ## When to Activate
12
-
13
- Activate when:
14
- - A plan has tasks that can run simultaneously
15
- - Multiple independent features need to be implemented
16
- - Research can happen in parallel with implementation
17
-
18
- ## Core Principles
19
-
20
- - Parallel = different files + no shared state + not dependent on each other
21
- - Always wait for an entire wave before starting the next
22
- - Conflicts mean the tasks weren't truly independent — reassign as sequential
23
- - Brief each agent completely — they are stateless
24
-
25
- ## Workflow
26
-
27
- 1. **Identify Wave 1** — tasks with no dependencies
28
- 2. **Verify independence** — confirm different files, no shared state
29
- 3. **Spawn Wave 1 simultaneously** — delegate all Wave 1 tasks at once
30
- 4. **Wait for all Wave 1** — do not start Wave 2 until all complete
31
- 5. **Check for conflicts** — compare files changed by each agent
32
- 6. **Spawn Wave 2** — tasks that depend on Wave 1 outputs
33
-
34
- ## Wave Structure Example
35
-
36
- ```
37
- Wave 1 (start simultaneously — ~2 hours):
38
- Track A: @coder implements UserModel in src/models/user.ts
39
- Track B: @researcher documents bcrypt API for password hashing
40
- Track C: @tester writes tests for UserService in src/user.test.ts
41
-
42
- [Wait for all three to complete]
43
-
44
- Wave 2 (sequential — ~2 hours):
45
- Task 2.A: @coder implements auth service using outputs from Track A + B
46
- Task 2.B: @writer documents the public API using outputs from Track A
47
-
48
- [Wait for 2.A and 2.B to complete]
49
-
50
- Wave 3 (review — 30 min):
51
- @reviewer reviews all changes together
52
- ```
53
-
54
- Timing example:
55
- - Sequential total: 6.5 hours
56
- - Parallel total: ~4.5 hours (30% faster)
57
-
58
- ## Independence Checklist
59
-
60
- Before marking tasks as parallel:
61
- - [ ] Task A and Task B touch different files
62
- - [ ] Neither task's output is needed as input by the other
63
- - [ ] Both tasks can be verified independently
64
- - [ ] If both complete correctly, integration will be straightforward
65
-
66
- ## Conflict Resolution
67
-
68
- If two agents modified the same file:
69
-
70
- ```
71
- CONFLICT: Track A and Track C both modified src/types/user.ts
72
- Resolution: Assigning @coder to reconcile both versions sequentially.
73
- Track A change: [description]
74
- Track C change: [description]
75
- ```
76
-
77
- ## Output Format
78
-
79
- ```markdown
80
- ## Parallel Execution Report
81
-
82
- ### Wave 1 Results (all must complete before Wave 2)
83
- - Track A (@coder): ✅ src/models/user.ts created
84
- - Track B (@researcher): ✅ bcrypt docs ready
85
- - Track C (@tester): ✅ 8 tests written, 8 passing
86
-
87
- ### Conflicts
88
- None detected.
89
-
90
- ### Wave 2 Starting
91
- Task 2.A: @coder building auth service with Wave 1 outputs
92
- ```