@dv.nghiem/flowdeck 0.2.3 → 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 (100) 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 +2 -1
  5. package/dist/hooks/orchestrator-guard-hook.d.ts.map +1 -1
  6. package/dist/hooks/todo-hook.d.ts +1 -7
  7. package/dist/hooks/todo-hook.d.ts.map +1 -1
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +649 -310
  10. package/dist/services/memory-store.d.ts +40 -0
  11. package/dist/services/memory-store.d.ts.map +1 -0
  12. package/dist/services/telemetry.d.ts +1 -1
  13. package/dist/services/telemetry.d.ts.map +1 -1
  14. package/dist/tools/memory-search.d.ts +3 -0
  15. package/dist/tools/memory-search.d.ts.map +1 -0
  16. package/docs/commands/fd-doctor.md +21 -0
  17. package/docs/commands/fd-quick.md +33 -0
  18. package/docs/commands/fd-reflect.md +23 -0
  19. package/docs/commands/fd-status.md +31 -0
  20. package/docs/commands/fd-translate-intent.md +17 -0
  21. package/docs/commands.md +209 -271
  22. package/docs/configuration.md +2 -1
  23. package/docs/index.md +22 -28
  24. package/docs/memory.md +69 -0
  25. package/docs/quick-start.md +1 -1
  26. package/docs/workflows.md +72 -320
  27. package/package.json +1 -2
  28. package/src/commands/fd-deploy-check.md +189 -34
  29. package/src/commands/fd-discuss.md +44 -6
  30. package/src/commands/fd-fix-bug.md +47 -20
  31. package/src/commands/fd-map-codebase.md +66 -18
  32. package/src/commands/fd-multi-repo.md +130 -6
  33. package/src/commands/fd-new-feature.md +164 -21
  34. package/src/commands/fd-new-project.md +14 -1
  35. package/src/commands/fd-plan.md +66 -44
  36. package/src/commands/fd-quick.md +60 -0
  37. package/src/commands/fd-reflect.md +41 -2
  38. package/src/commands/fd-status.md +84 -0
  39. package/src/commands/fd-write-docs.md +55 -23
  40. package/src/rules/README.md +8 -7
  41. package/src/skills/agent-harness-construction/SKILL.md +227 -0
  42. package/src/skills/api-design/SKILL.md +5 -0
  43. package/src/skills/backend-patterns/SKILL.md +105 -0
  44. package/src/skills/clean-architecture/SKILL.md +85 -0
  45. package/src/skills/cqrs/SKILL.md +230 -0
  46. package/src/skills/ddd-architecture/SKILL.md +104 -0
  47. package/src/skills/django-patterns/SKILL.md +304 -0
  48. package/src/skills/django-tdd/SKILL.md +297 -0
  49. package/src/skills/event-driven-architecture/SKILL.md +152 -0
  50. package/src/skills/frontend-pattern/SKILL.md +159 -0
  51. package/src/skills/hexagonal-architecture/SKILL.md +80 -0
  52. package/src/skills/layered-architecture/SKILL.md +64 -0
  53. package/src/skills/postgres-patterns/SKILL.md +74 -0
  54. package/src/skills/python-patterns/SKILL.md +5 -0
  55. package/src/skills/saga-architecture/SKILL.md +113 -0
  56. package/dist/tools/run-parallel.d.ts +0 -4
  57. package/dist/tools/run-parallel.d.ts.map +0 -1
  58. package/docs/command-migration.md +0 -175
  59. package/docs/commands/fd-analyze-change.md +0 -107
  60. package/docs/commands/fd-dashboard.md +0 -11
  61. package/docs/commands/fd-evaluate-risk.md +0 -134
  62. package/docs/commands/fd-guarded-edit.md +0 -105
  63. package/docs/commands/fd-progress.md +0 -11
  64. package/docs/commands/fd-review-code.md +0 -29
  65. package/docs/commands/fd-roadmap.md +0 -10
  66. package/docs/commands/fd-settings.md +0 -10
  67. package/docs/parallel-execution.md +0 -227
  68. package/src/commands/fd-analyze-change.md +0 -57
  69. package/src/commands/fd-approve.md +0 -64
  70. package/src/commands/fd-blast-radius.md +0 -49
  71. package/src/commands/fd-dashboard.md +0 -57
  72. package/src/commands/fd-evaluate-risk.md +0 -62
  73. package/src/commands/fd-guarded-edit.md +0 -69
  74. package/src/commands/fd-impact-radar.md +0 -51
  75. package/src/commands/fd-learn.md +0 -36
  76. package/src/commands/fd-progress.md +0 -50
  77. package/src/commands/fd-regression-predict.md +0 -57
  78. package/src/commands/fd-review-code.md +0 -62
  79. package/src/commands/fd-review-route.md +0 -54
  80. package/src/commands/fd-roadmap.md +0 -46
  81. package/src/commands/fd-settings.md +0 -57
  82. package/src/commands/fd-test-gap.md +0 -54
  83. package/src/commands/fd-volatility-map.md +0 -64
  84. package/src/commands/fd-workspace-status.md +0 -34
  85. package/src/skills/parallel-execute/SKILL.md +0 -92
  86. package/src/workflows/debug-flow.md +0 -119
  87. package/src/workflows/deploy-check-flow.md +0 -98
  88. package/src/workflows/discuss-flow.md +0 -97
  89. package/src/workflows/execute-flow.md +0 -233
  90. package/src/workflows/execute-phase.md +0 -145
  91. package/src/workflows/fix-bug-flow.md +0 -210
  92. package/src/workflows/map-codebase-flow.md +0 -92
  93. package/src/workflows/multi-repo-flow.md +0 -226
  94. package/src/workflows/parallel-execution-flow.md +0 -236
  95. package/src/workflows/plan-flow.md +0 -126
  96. package/src/workflows/plan-phase.md +0 -101
  97. package/src/workflows/refactor-flow.md +0 -122
  98. package/src/workflows/review-code-flow.md +0 -105
  99. package/src/workflows/spec-driven-flow.md +0 -43
  100. package/src/workflows/write-docs-flow.md +0 -95
@@ -1,49 +0,0 @@
1
- ---
2
- description: Blast Radius Preview — show downstream consequences of a proposed change including hidden dependencies and fragile integration points
3
- argument-hint: [change description] [--depth=N]
4
- ---
5
-
6
- # Blast Radius
7
-
8
- Map the full downstream blast radius of a proposed change.
9
-
10
- **Input:** $ARGUMENTS — description or file path of the proposed change. Optional `--depth=N` (default: 3).
11
-
12
- ## Steps
13
-
14
- Run two agents in parallel:
15
-
16
- - **@architect**: Trace dependency graph to depth `--depth` (default 3 levels); flag integration points, event listeners, shared state, and service-to-service calls that would be affected
17
-
18
- - **@researcher**: Identify hidden couplings — shared config values, environment variables, database tables, message queue topics, and implicit conventions that the changed code relies on
19
-
20
- ## Report
21
-
22
- ```
23
- ════════════════════════════════════════════
24
- BLAST RADIUS PREVIEW
25
- ════════════════════════════════════════════
26
- Change: <summary>
27
- Depth: <N> levels
28
-
29
- Direct Impact (depth 1):
30
- - <file/module> — <relationship>
31
-
32
- Indirect Impact (depth 2-3):
33
- - <file/module> — <chain>
34
-
35
- Hidden Couplings:
36
- - <coupling type>: <description>
37
-
38
- Fragile Integration Points:
39
- - <point> — <why fragile>
40
-
41
- Risk Assessment:
42
- Score: <0-10>
43
- Level: <low|medium|high|critical>
44
-
45
- <1-2 sentence summary of the biggest risks>
46
-
47
- Recommended: <proceed | add tests | get review | redesign>
48
- ════════════════════════════════════════════
49
- ```
@@ -1,57 +0,0 @@
1
- ---
2
- description: Open project dashboard in browser — displays phase progress, milestones, and blockers
3
- argument-hint: [--port=N]
4
- ---
5
-
6
- # Dashboard
7
-
8
- Open the FlowDeck project dashboard.
9
-
10
- **Input:** $ARGUMENTS — optional `--port=N` (default: 3847)
11
-
12
- ## Steps
13
-
14
- 1. Check `.planning/STATE.md` exists — if not, error: "No active project. Run /fd-new-project first."
15
-
16
- 2. Read project state from:
17
- - `.planning/STATE.md` — current phase, status, progress
18
- - `.planning/ROADMAP.md` — all phases and completion status
19
- - `.planning/phases/phase-*/PLAN.md` — step completion per phase
20
-
21
- 3. Try to start the dashboard server if not running:
22
- ```bash
23
- npx @dv.nghiem/flowdeck-dashboard --port <port> &
24
- ```
25
- Or if the package is installed, run:
26
- ```bash
27
- flowdeck-dashboard --port <port> &
28
- ```
29
-
30
- 4. If server cannot start, display a text-based dashboard instead:
31
-
32
- ```
33
- ════════════════════════════════════════════
34
- FLOWDECK DASHBOARD
35
- ════════════════════════════════════════════
36
- Project: <name from PROJECT.md>
37
- Updated: <last_updated>
38
-
39
- ROADMAP
40
- ✅ Phase 1: Setup — completed
41
- 🔄 Phase 2: Core Feature — in progress (3/7 steps)
42
- ⏳ Phase 3: Polish — planned
43
-
44
- CURRENT PHASE (2): Core Feature
45
- ✅ Step 1: Set up database schema
46
- ✅ Step 2: Create API endpoints
47
- ✅ Step 3: Add authentication
48
- ⬜ Step 4: Write tests
49
- ⬜ Step 5: Write documentation
50
-
51
- BLOCKERS
52
- - (none)
53
- ════════════════════════════════════════════
54
- Run /fd-progress for detailed state view.
55
- ```
56
-
57
- 5. If server starts: report the URL: "Dashboard running at http://localhost:<port>"
@@ -1,62 +0,0 @@
1
- ---
2
- description: Risk assessment — estimates change risk, confidence, likely regressions, and whether approval is needed before proceeding
3
- argument-hint: [change description]
4
- ---
5
-
6
- # Evaluate Risk
7
-
8
- Produce a risk assessment for a proposed change.
9
-
10
- **Input:** $ARGUMENTS — description of the proposed change
11
-
12
- ## Steps
13
-
14
- Run two agents in parallel:
15
-
16
- - **@researcher**: Map `$ARGUMENTS` to affected paths and modules; check `.codebase/VOLATILITY.json` for hotspot scores; check `.codebase/FAILURES.json` for prior failures; identify external dependencies touched
17
-
18
- - **@reviewer**: Validate the risk assessment — verify risk level is calibrated correctly given the scope; flag any under-estimated risks; check if approval is warranted by active policies in `.planning/config.json`
19
-
20
- ## Risk Dimensions
21
-
22
- | Dimension | Weight | Assessment |
23
- |-----------|--------|------------|
24
- | Volatility | 30% | hotspot score of affected files |
25
- | Blast radius | 25% | number of downstream dependents |
26
- | Prior failures | 25% | recurrences in FAILURES.json |
27
- | External deps | 20% | third-party APIs or services involved |
28
-
29
- ## Approval Logic
30
-
31
- Approval required if:
32
- - `approval_required: true` in config
33
- - Overall risk score ≥ `volatility_threshold` (default 0.7)
34
- - Any touched file has 3+ prior failures
35
-
36
- ## Report
37
-
38
- ```
39
- ════════════════════════════════════════════
40
- RISK ASSESSMENT
41
- ════════════════════════════════════════════
42
- Change: <summary>
43
-
44
- Risk Score: <0.0–1.0> (<low|medium|high|critical>)
45
- Confidence: <high|medium|low>
46
-
47
- Breakdown:
48
- Volatility: <score> (<rationale>)
49
- Blast radius: <score> (<N downstream>)
50
- Prior failures: <score> (<N failures>)
51
- External deps: <score> (<list or none>)
52
-
53
- Likely Regressions:
54
- - <category>: <reason>
55
-
56
- Approval Required: <yes|no>
57
- <if yes: reason and who should approve>
58
-
59
- Recommendation:
60
- <proceed | add tests | get review | redesign>
61
- ════════════════════════════════════════════
62
- ```
@@ -1,69 +0,0 @@
1
- ---
2
- description: Edit gate — decides auto-approve / require-confirmation / require-review / block based on policy, trust score, volatility, and arch constraints
3
- argument-hint: [change description or file path]
4
- ---
5
-
6
- # Guarded Edit
7
-
8
- Evaluate a proposed edit against all safety gates before allowing it to proceed.
9
-
10
- **Input:** $ARGUMENTS — description or file path of the proposed edit
11
-
12
- ## Gates (evaluated in order)
13
-
14
- ### Gate 1 — Policy Check
15
-
16
- Read `.planning/config.json` for active policies:
17
- - `approval_required`: if true, all edits need explicit approval
18
- - `volatility_threshold`: edits touching files above this score need confirmation
19
-
20
- ### Gate 2 — Volatility Check
21
-
22
- Check `.codebase/VOLATILITY.json` for the files in `$ARGUMENTS`.
23
- - Score ≥ 0.8 → REQUIRE REVIEW
24
- - Score ≥ 0.6 → REQUIRE CONFIRMATION
25
- - Score < 0.6 → proceed
26
-
27
- ### Gate 3 — Architecture Constraints
28
-
29
- Read `.codebase/ARCHITECTURE.md` and check if the edit:
30
- - Crosses defined service boundaries
31
- - Modifies public API contracts
32
- - Touches security-critical paths (auth, payments, PII)
33
-
34
- ### Gate 4 — Trust Score
35
-
36
- Check `.codebase/FAILURES.json` for prior failures in the same path.
37
- - 3+ prior failures in this area → REQUIRE REVIEW
38
- - 1-2 prior failures → REQUIRE CONFIRMATION
39
-
40
- ## Decision Matrix
41
-
42
- | Condition | Decision |
43
- |-----------|----------|
44
- | Any BLOCK signal | ❌ BLOCK |
45
- | REQUIRE REVIEW signal | 👁️ REQUIRE REVIEW |
46
- | REQUIRE CONFIRMATION signal | ⚠️ REQUIRE CONFIRMATION |
47
- | All gates pass | ✅ AUTO-APPROVE |
48
-
49
- ## Report
50
-
51
- ```
52
- ════════════════════════════════════
53
- GUARDED EDIT GATE
54
- ════════════════════════════════════
55
- Edit: <summary>
56
-
57
- Gate 1 — Policy: <pass|flag>
58
- Gate 2 — Volatility: <score> → <pass|confirm|review>
59
- Gate 3 — Arch: <pass|flag>
60
- Gate 4 — Trust: <failures count> → <pass|confirm|review>
61
-
62
- DECISION: AUTO-APPROVE / CONFIRM / REVIEW / BLOCK
63
-
64
- <if BLOCK or REVIEW: explain what needs to happen first>
65
- ════════════════════════════════════
66
- ```
67
-
68
- If BLOCK: do not proceed with the edit. Explain what must change first.
69
- If CONFIRM: present to user and wait for explicit "yes" before proceeding.
@@ -1,51 +0,0 @@
1
- ---
2
- description: Change Impact Radar — predict which files, modules, APIs, tests, and DB paths are affected before editing anything
3
- argument-hint: [change description]
4
- ---
5
-
6
- # Impact Radar
7
-
8
- Predict the blast area of a proposed change before any code is written.
9
-
10
- **Input:** $ARGUMENTS — description of the proposed change
11
-
12
- ## Steps
13
-
14
- Run three agents in parallel:
15
-
16
- - **@researcher**: Trace dependency graph from the paths mentioned in `$ARGUMENTS`; find all files that import or are imported by those modules; map 2 levels deep
17
-
18
- - **@architect**: Identify API contracts and service boundaries at risk; flag any public interfaces that would change; check for DB schema impacts
19
-
20
- - **@tester**: Find test files that cover the affected paths; identify which tests would need updating; spot gaps (changed files with no tests)
21
-
22
- ## Report
23
-
24
- ```
25
- ════════════════════════════════════════════
26
- CHANGE IMPACT RADAR
27
- ════════════════════════════════════════════
28
- Change: <summary of $ARGUMENTS>
29
- Risk score: <low|medium|high>
30
-
31
- Affected Files (<N>):
32
- - <file> (<reason>)
33
-
34
- API Contracts at Risk:
35
- - <interface/endpoint> — <risk>
36
-
37
- Tests to Update (<N>):
38
- - <test file>
39
-
40
- Test Gaps (<N> files with no tests):
41
- - <file>
42
-
43
- DB / Schema Impact:
44
- - <none | description>
45
-
46
- Recommendation:
47
- <proceed with caution | review required | block>
48
- ════════════════════════════════════════════
49
- ```
50
-
51
- If no impact found: "No significant impact detected. Proceed with standard review."
@@ -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,62 +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.
9
-
10
- **Input:** $ARGUMENTS — optional `--scope=<path>` and `--focus=<areas>`
11
-
12
- ## Steps
13
-
14
- 1. Determine scope: use `--scope` if provided, else review uncommitted changes (`git diff --name-only HEAD`).
15
- 2. If no changes found, report: "Nothing to review."
16
-
17
- ## Parallel Review
18
-
19
- Run three reviewers in parallel:
20
-
21
- - **@reviewer**: Quality, security, convention compliance, TDD discipline
22
- - CRITICAL: hardcoded secrets, SQL injection, XSS, auth gaps
23
- - HIGH: logic errors, missing error handling, unsafe casts
24
- - MEDIUM: functions >50 lines, nesting >4 deep, missing tests
25
- - LOW: naming nits, missing comments on public APIs
26
-
27
- - **@researcher**: API contracts, edge cases, hidden dependencies, integration risks
28
-
29
- - **@tester**: Test coverage, missing test cases, test quality, regression risks
30
-
31
- ## Report
32
-
33
- Aggregate findings into:
34
-
35
- ```
36
- ════════════════════════════════════════════
37
- CODE REVIEW REPORT
38
- ════════════════════════════════════════════
39
- Files reviewed: <N>
40
-
41
- CRITICAL (<count>)
42
- - <file>:<line> — <issue>
43
-
44
- HIGH (<count>)
45
- - <file>:<line> — <issue>
46
-
47
- MEDIUM (<count>)
48
- - <file>:<line> — <issue>
49
-
50
- LOW (<count>)
51
- - <file>:<line> — <issue>
52
-
53
- Test Coverage: <findings>
54
- ────────────────────────────────────────────
55
- Verdict: PASS / NEEDS CHANGES / BLOCK
56
- ════════════════════════════════════════════
57
- ```
58
-
59
- **Verdict rules:**
60
- - CRITICAL issues → BLOCK
61
- - HIGH issues → NEEDS CHANGES
62
- - Only MEDIUM/LOW → PASS with comments
@@ -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
- ```