@dv.nghiem/flowdeck 0.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/LICENSE +21 -0
- package/README.md +136 -0
- package/bin/flowdeck.js +108 -0
- package/dist/agents/architect.d.ts +3 -0
- package/dist/agents/architect.d.ts.map +1 -0
- package/dist/agents/code-explorer.d.ts +3 -0
- package/dist/agents/code-explorer.d.ts.map +1 -0
- package/dist/agents/coder.d.ts +3 -0
- package/dist/agents/coder.d.ts.map +1 -0
- package/dist/agents/debug.d.ts +4 -0
- package/dist/agents/debug.d.ts.map +1 -0
- package/dist/agents/doc-updater.d.ts +3 -0
- package/dist/agents/doc-updater.d.ts.map +1 -0
- package/dist/agents/flowdeck.d.ts +5 -0
- package/dist/agents/flowdeck.d.ts.map +1 -0
- package/dist/agents/index.d.ts +38 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/mapper.d.ts +3 -0
- package/dist/agents/mapper.d.ts.map +1 -0
- package/dist/agents/orchestrator.d.ts +10 -0
- package/dist/agents/orchestrator.d.ts.map +1 -0
- package/dist/agents/performance.d.ts +4 -0
- package/dist/agents/performance.d.ts.map +1 -0
- package/dist/agents/planner.d.ts +3 -0
- package/dist/agents/planner.d.ts.map +1 -0
- package/dist/agents/policy-enforcer.d.ts +3 -0
- package/dist/agents/policy-enforcer.d.ts.map +1 -0
- package/dist/agents/researcher.d.ts +3 -0
- package/dist/agents/researcher.d.ts.map +1 -0
- package/dist/agents/reviewer.d.ts +3 -0
- package/dist/agents/reviewer.d.ts.map +1 -0
- package/dist/agents/risk-analyst.d.ts +3 -0
- package/dist/agents/risk-analyst.d.ts.map +1 -0
- package/dist/agents/security-auditor.d.ts +3 -0
- package/dist/agents/security-auditor.d.ts.map +1 -0
- package/dist/agents/specialist.d.ts +5 -0
- package/dist/agents/specialist.d.ts.map +1 -0
- package/dist/agents/tester.d.ts +3 -0
- package/dist/agents/tester.d.ts.map +1 -0
- package/dist/agents/types.d.ts +20 -0
- package/dist/agents/types.d.ts.map +1 -0
- package/dist/agents/writer.d.ts +3 -0
- package/dist/agents/writer.d.ts.map +1 -0
- package/dist/commands/analysis/analysis.test.d.ts +2 -0
- package/dist/commands/analysis/analysis.test.d.ts.map +1 -0
- package/dist/commands/analysis/analyze-change.d.ts +148 -0
- package/dist/commands/analysis/analyze-change.d.ts.map +1 -0
- package/dist/commands/analysis/evaluate-risk.d.ts +77 -0
- package/dist/commands/analysis/evaluate-risk.d.ts.map +1 -0
- package/dist/commands/analysis/guarded-edit.d.ts +72 -0
- package/dist/commands/analysis/guarded-edit.d.ts.map +1 -0
- package/dist/commands/execution/deploy-check.d.ts +91 -0
- package/dist/commands/execution/deploy-check.d.ts.map +1 -0
- package/dist/commands/execution/fix-bug.d.ts +187 -0
- package/dist/commands/execution/fix-bug.d.ts.map +1 -0
- package/dist/commands/execution/new-feature.d.ts +171 -0
- package/dist/commands/execution/new-feature.d.ts.map +1 -0
- package/dist/commands/execution/review-code.d.ts +130 -0
- package/dist/commands/execution/review-code.d.ts.map +1 -0
- package/dist/commands/execution/write-docs.d.ts +94 -0
- package/dist/commands/execution/write-docs.d.ts.map +1 -0
- package/dist/commands/governance/approve.d.ts +80 -0
- package/dist/commands/governance/approve.d.ts.map +1 -0
- package/dist/commands/intelligence/blast-radius.d.ts +67 -0
- package/dist/commands/intelligence/blast-radius.d.ts.map +1 -0
- package/dist/commands/intelligence/impact-radar.d.ts +71 -0
- package/dist/commands/intelligence/impact-radar.d.ts.map +1 -0
- package/dist/commands/intelligence/intelligence.test.d.ts +2 -0
- package/dist/commands/intelligence/intelligence.test.d.ts.map +1 -0
- package/dist/commands/intelligence/regression-predict.d.ts +75 -0
- package/dist/commands/intelligence/regression-predict.d.ts.map +1 -0
- package/dist/commands/intelligence/review-route.d.ts +65 -0
- package/dist/commands/intelligence/review-route.d.ts.map +1 -0
- package/dist/commands/intelligence/test-gap.d.ts +73 -0
- package/dist/commands/intelligence/test-gap.d.ts.map +1 -0
- package/dist/commands/intelligence/translate-intent.d.ts +87 -0
- package/dist/commands/intelligence/translate-intent.d.ts.map +1 -0
- package/dist/commands/intelligence/volatility-map-cmd.d.ts +68 -0
- package/dist/commands/intelligence/volatility-map-cmd.d.ts.map +1 -0
- package/dist/commands/planning/ask.d.ts +62 -0
- package/dist/commands/planning/ask.d.ts.map +1 -0
- package/dist/commands/planning/ask.test.d.ts +2 -0
- package/dist/commands/planning/ask.test.d.ts.map +1 -0
- package/dist/commands/planning/dashboard.d.ts +30 -0
- package/dist/commands/planning/dashboard.d.ts.map +1 -0
- package/dist/commands/planning/discuss.d.ts +39 -0
- package/dist/commands/planning/discuss.d.ts.map +1 -0
- package/dist/commands/planning/plan.d.ts +67 -0
- package/dist/commands/planning/plan.d.ts.map +1 -0
- package/dist/commands/planning/roadmap.d.ts +105 -0
- package/dist/commands/planning/roadmap.d.ts.map +1 -0
- package/dist/commands/setup/doctor.d.ts +10 -0
- package/dist/commands/setup/doctor.d.ts.map +1 -0
- package/dist/commands/setup/map-codebase.d.ts +62 -0
- package/dist/commands/setup/map-codebase.d.ts.map +1 -0
- package/dist/commands/setup/new-project.d.ts +19 -0
- package/dist/commands/setup/new-project.d.ts.map +1 -0
- package/dist/commands/setup/settings.d.ts +57 -0
- package/dist/commands/setup/settings.d.ts.map +1 -0
- package/dist/commands/state/checkpoint.d.ts +27 -0
- package/dist/commands/state/checkpoint.d.ts.map +1 -0
- package/dist/commands/state/multi-repo.d.ts +63 -0
- package/dist/commands/state/multi-repo.d.ts.map +1 -0
- package/dist/commands/state/progress.d.ts +57 -0
- package/dist/commands/state/progress.d.ts.map +1 -0
- package/dist/commands/state/resume.d.ts +11 -0
- package/dist/commands/state/resume.d.ts.map +1 -0
- package/dist/commands/state/workspace-commands.d.ts +207 -0
- package/dist/commands/state/workspace-commands.d.ts.map +1 -0
- package/dist/dashboard/lib/port-finder.d.ts +10 -0
- package/dist/dashboard/lib/port-finder.d.ts.map +1 -0
- package/dist/dashboard/lib/port-finder.test.d.ts +2 -0
- package/dist/dashboard/lib/port-finder.test.d.ts.map +1 -0
- package/dist/dashboard/lib/state-reader.d.ts +3 -0
- package/dist/dashboard/lib/state-reader.d.ts.map +1 -0
- package/dist/dashboard/server.d.ts +2 -0
- package/dist/dashboard/server.d.ts.map +1 -0
- package/dist/dashboard/server.mjs +13649 -0
- package/dist/dashboard/types.d.ts +72 -0
- package/dist/dashboard/types.d.ts.map +1 -0
- package/dist/dashboard/views/index.ejs +391 -0
- package/dist/dashboard/views/partials/blockers.ejs +10 -0
- package/dist/dashboard/views/partials/header.ejs +20 -0
- package/dist/dashboard/views/partials/phase-timeline.ejs +40 -0
- package/dist/dashboard/views/partials/progress.ejs +12 -0
- package/dist/hooks/approval-hook.d.ts +13 -0
- package/dist/hooks/approval-hook.d.ts.map +1 -0
- package/dist/hooks/compaction-hook.d.ts +23 -0
- package/dist/hooks/compaction-hook.d.ts.map +1 -0
- package/dist/hooks/context-window-monitor.d.ts +21 -0
- package/dist/hooks/context-window-monitor.d.ts.map +1 -0
- package/dist/hooks/decision-trace-hook.d.ts +13 -0
- package/dist/hooks/decision-trace-hook.d.ts.map +1 -0
- package/dist/hooks/file-tracker.d.ts +29 -0
- package/dist/hooks/file-tracker.d.ts.map +1 -0
- package/dist/hooks/guard-rails.d.ts +33 -0
- package/dist/hooks/guard-rails.d.ts.map +1 -0
- package/dist/hooks/index.d.ts +5 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/notifications.d.ts +21 -0
- package/dist/hooks/notifications.d.ts.map +1 -0
- package/dist/hooks/patch-trust.d.ts +27 -0
- package/dist/hooks/patch-trust.d.ts.map +1 -0
- package/dist/hooks/patch-trust.test.d.ts +2 -0
- package/dist/hooks/patch-trust.test.d.ts.map +1 -0
- package/dist/hooks/session-events.d.ts +8 -0
- package/dist/hooks/session-events.d.ts.map +1 -0
- package/dist/hooks/session-idle-hook.d.ts +21 -0
- package/dist/hooks/session-idle-hook.d.ts.map +1 -0
- package/dist/hooks/session-start.d.ts +10 -0
- package/dist/hooks/session-start.d.ts.map +1 -0
- package/dist/hooks/shell-env-hook.d.ts +21 -0
- package/dist/hooks/shell-env-hook.d.ts.map +1 -0
- package/dist/hooks/telemetry-hook.d.ts +25 -0
- package/dist/hooks/telemetry-hook.d.ts.map +1 -0
- package/dist/hooks/todo-hook.d.ts +25 -0
- package/dist/hooks/todo-hook.d.ts.map +1 -0
- package/dist/hooks/tool-guard.d.ts +41 -0
- package/dist/hooks/tool-guard.d.ts.map +1 -0
- package/dist/hooks/tool-guard.test.d.ts +2 -0
- package/dist/hooks/tool-guard.test.d.ts.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6639 -0
- package/dist/lib/confirmation.d.ts +20 -0
- package/dist/lib/confirmation.d.ts.map +1 -0
- package/dist/lib/impact-radar.d.ts +35 -0
- package/dist/lib/impact-radar.d.ts.map +1 -0
- package/dist/lib/signatures.d.ts +12 -0
- package/dist/lib/signatures.d.ts.map +1 -0
- package/dist/lib/timestamps.d.ts +23 -0
- package/dist/lib/timestamps.d.ts.map +1 -0
- package/dist/mcp/index.d.ts +20 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/services/agent-performance.d.ts +29 -0
- package/dist/services/agent-performance.d.ts.map +1 -0
- package/dist/services/approval-manager.d.ts +30 -0
- package/dist/services/approval-manager.d.ts.map +1 -0
- package/dist/services/index.d.ts +7 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/model-router.d.ts +35 -0
- package/dist/services/model-router.d.ts.map +1 -0
- package/dist/services/policy-compiler.d.ts +27 -0
- package/dist/services/policy-compiler.d.ts.map +1 -0
- package/dist/services/run-trace.d.ts +34 -0
- package/dist/services/run-trace.d.ts.map +1 -0
- package/dist/services/services.test.d.ts +2 -0
- package/dist/services/services.test.d.ts.map +1 -0
- package/dist/services/telemetry.d.ts +34 -0
- package/dist/services/telemetry.d.ts.map +1 -0
- package/dist/tools/agent-dispatch.test.d.ts +2 -0
- package/dist/tools/agent-dispatch.test.d.ts.map +1 -0
- package/dist/tools/codebase-state.d.ts +4 -0
- package/dist/tools/codebase-state.d.ts.map +1 -0
- package/dist/tools/context-generator.d.ts +3 -0
- package/dist/tools/context-generator.d.ts.map +1 -0
- package/dist/tools/council.d.ts +4 -0
- package/dist/tools/council.d.ts.map +1 -0
- package/dist/tools/decision-trace.d.ts +16 -0
- package/dist/tools/decision-trace.d.ts.map +1 -0
- package/dist/tools/delegate.d.ts +4 -0
- package/dist/tools/delegate.d.ts.map +1 -0
- package/dist/tools/failure-replay.d.ts +19 -0
- package/dist/tools/failure-replay.d.ts.map +1 -0
- package/dist/tools/failure-replay.test.d.ts +2 -0
- package/dist/tools/failure-replay.test.d.ts.map +1 -0
- package/dist/tools/hash-edit.d.ts +3 -0
- package/dist/tools/hash-edit.d.ts.map +1 -0
- package/dist/tools/planning-state-lib.d.ts +65 -0
- package/dist/tools/planning-state-lib.d.ts.map +1 -0
- package/dist/tools/planning-state.d.ts +3 -0
- package/dist/tools/planning-state.d.ts.map +1 -0
- package/dist/tools/policy-engine.d.ts +19 -0
- package/dist/tools/policy-engine.d.ts.map +1 -0
- package/dist/tools/repo-memory.d.ts +20 -0
- package/dist/tools/repo-memory.d.ts.map +1 -0
- package/dist/tools/repo-memory.test.d.ts +2 -0
- package/dist/tools/repo-memory.test.d.ts.map +1 -0
- package/dist/tools/run-parallel.d.ts +4 -0
- package/dist/tools/run-parallel.d.ts.map +1 -0
- package/dist/tools/run-pipeline.d.ts +4 -0
- package/dist/tools/run-pipeline.d.ts.map +1 -0
- package/dist/tools/volatility-map.d.ts +18 -0
- package/dist/tools/volatility-map.d.ts.map +1 -0
- package/dist/tools/volatility-map.test.d.ts +2 -0
- package/dist/tools/volatility-map.test.d.ts.map +1 -0
- package/dist/tools/workspace-state.d.ts +3 -0
- package/dist/tools/workspace-state.d.ts.map +1 -0
- package/docs/USER_GUIDE.md +20 -0
- package/docs/agents.md +562 -0
- package/docs/best-practices.md +47 -0
- package/docs/command-migration.md +175 -0
- package/docs/commands/fd-analyze-change.md +107 -0
- package/docs/commands/fd-ask.md +51 -0
- package/docs/commands/fd-checkpoint.md +10 -0
- package/docs/commands/fd-dashboard.md +11 -0
- package/docs/commands/fd-deploy-check.md +11 -0
- package/docs/commands/fd-discuss.md +28 -0
- package/docs/commands/fd-evaluate-risk.md +134 -0
- package/docs/commands/fd-fix-bug.md +24 -0
- package/docs/commands/fd-guarded-edit.md +105 -0
- package/docs/commands/fd-map-codebase.md +27 -0
- package/docs/commands/fd-multi-repo.md +63 -0
- package/docs/commands/fd-new-feature.md +25 -0
- package/docs/commands/fd-new-project.md +24 -0
- package/docs/commands/fd-plan.md +33 -0
- package/docs/commands/fd-progress.md +11 -0
- package/docs/commands/fd-resume.md +10 -0
- package/docs/commands/fd-review-code.md +29 -0
- package/docs/commands/fd-roadmap.md +10 -0
- package/docs/commands/fd-settings.md +10 -0
- package/docs/commands/fd-write-docs.md +10 -0
- package/docs/commands.md +476 -0
- package/docs/configuration.md +211 -0
- package/docs/feature-integration-architecture.md +255 -0
- package/docs/index.md +75 -0
- package/docs/installation.md +134 -0
- package/docs/intelligence.md +294 -0
- package/docs/multi-repo.md +201 -0
- package/docs/notifications.md +170 -0
- package/docs/parallel-execution.md +227 -0
- package/docs/quick-start.md +174 -0
- package/docs/rules.md +459 -0
- package/docs/skills.md +408 -0
- package/docs/workflows.md +376 -0
- package/package.json +58 -0
- package/postinstall.mjs +102 -0
- package/src/rules/README.md +37 -0
- package/src/rules/common/agent-orchestration.md +86 -0
- package/src/rules/common/coding-style.md +120 -0
- package/src/rules/common/git-workflow.md +77 -0
- package/src/rules/common/security.md +94 -0
- package/src/rules/common/testing.md +105 -0
- package/src/rules/golang/patterns.md +187 -0
- package/src/rules/java/patterns.md +204 -0
- package/src/rules/python/patterns.md +141 -0
- package/src/rules/rust/patterns.md +210 -0
- package/src/rules/typescript/patterns.md +168 -0
- package/src/skills/api-design/SKILL.md +143 -0
- package/src/skills/arch-constraint-guard/SKILL.md +61 -0
- package/src/skills/blast-radius-preview/SKILL.md +65 -0
- package/src/skills/change-impact-radar/SKILL.md +63 -0
- package/src/skills/code-review/SKILL.md +108 -0
- package/src/skills/code-tour/SKILL.md +101 -0
- package/src/skills/codebase-mapping/SKILL.md +87 -0
- package/src/skills/codebase-onboarding/SKILL.md +133 -0
- package/src/skills/confidence-aware-planning/SKILL.md +67 -0
- package/src/skills/context-load/SKILL.md +63 -0
- package/src/skills/debug-flow/SKILL.md +75 -0
- package/src/skills/decision-trace/SKILL.md +72 -0
- package/src/skills/dependency-audit/SKILL.md +126 -0
- package/src/skills/deploy-check/SKILL.md +87 -0
- package/src/skills/documentation-writer/SKILL.md +154 -0
- package/src/skills/failure-replay-engine/SKILL.md +59 -0
- package/src/skills/git-release/SKILL.md +94 -0
- package/src/skills/git-workflow/SKILL.md +177 -0
- package/src/skills/golang-patterns/SKILL.md +511 -0
- package/src/skills/human-review-routing/SKILL.md +65 -0
- package/src/skills/intent-translator/SKILL.md +57 -0
- package/src/skills/java-patterns/SKILL.md +479 -0
- package/src/skills/multi-repo/SKILL.md +187 -0
- package/src/skills/parallel-execute/SKILL.md +92 -0
- package/src/skills/patch-trust-score/SKILL.md +44 -0
- package/src/skills/performance-profiling/SKILL.md +153 -0
- package/src/skills/plan-task/SKILL.md +101 -0
- package/src/skills/python-patterns/SKILL.md +529 -0
- package/src/skills/refactor-guide/SKILL.md +117 -0
- package/src/skills/regression-prediction/SKILL.md +57 -0
- package/src/skills/repo-memory-graph/SKILL.md +49 -0
- package/src/skills/rust-patterns/SKILL.md +492 -0
- package/src/skills/security-scan/SKILL.md +91 -0
- package/src/skills/self-healing-policies/SKILL.md +76 -0
- package/src/skills/tdd-workflow/SKILL.md +126 -0
- package/src/skills/test-coverage/SKILL.md +94 -0
- package/src/skills/test-gap-detector/SKILL.md +58 -0
- package/src/skills/volatility-map/SKILL.md +52 -0
- package/src/workflows/debug-flow.md +119 -0
- package/src/workflows/deploy-check-flow.md +98 -0
- package/src/workflows/discuss-flow.md +97 -0
- package/src/workflows/execute-flow.md +233 -0
- package/src/workflows/execute-phase.md +142 -0
- package/src/workflows/fix-bug-flow.md +210 -0
- package/src/workflows/map-codebase-flow.md +92 -0
- package/src/workflows/multi-repo-flow.md +226 -0
- package/src/workflows/parallel-execution-flow.md +236 -0
- package/src/workflows/plan-flow.md +126 -0
- package/src/workflows/plan-phase.md +101 -0
- package/src/workflows/refactor-flow.md +122 -0
- package/src/workflows/review-code-flow.md +105 -0
- package/src/workflows/spec-driven-flow.md +43 -0
- package/src/workflows/write-docs-flow.md +95 -0
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: refactor-flow
|
|
3
|
+
description: "Safe refactoring workflow: baseline tests → one transform at a time → verify green → commit. No behavior changes."
|
|
4
|
+
triggers:
|
|
5
|
+
- /refactor
|
|
6
|
+
steps:
|
|
7
|
+
- name: baseline
|
|
8
|
+
agent: "@tester"
|
|
9
|
+
action: Run test suite and confirm green before any changes
|
|
10
|
+
- name: identify_targets
|
|
11
|
+
agent: "@mapper"
|
|
12
|
+
action: Mapper identifies refactoring candidates (large files, duplication, complexity)
|
|
13
|
+
- name: plan_transforms
|
|
14
|
+
agent: "@refactor-guide"
|
|
15
|
+
action: List specific transforms in low-to-high risk order
|
|
16
|
+
- name: apply_transform
|
|
17
|
+
agent: "@coder"
|
|
18
|
+
action: Coder applies one transform at a time
|
|
19
|
+
- name: verify
|
|
20
|
+
agent: "@tester"
|
|
21
|
+
action: Run test suite after each transform — must stay green
|
|
22
|
+
- name: commit
|
|
23
|
+
agent: "@orchestrator"
|
|
24
|
+
action: Commit each transform separately with descriptive message
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# Refactor Flow
|
|
28
|
+
|
|
29
|
+
## Purpose
|
|
30
|
+
|
|
31
|
+
Improve code structure without changing behavior. Each step must leave the test suite green.
|
|
32
|
+
|
|
33
|
+
## Rules
|
|
34
|
+
|
|
35
|
+
1. Tests must pass **before** you start — if broken, fix tests first
|
|
36
|
+
2. One transform per commit — never combine multiple in one step
|
|
37
|
+
3. No behavior changes — if a test breaks, undo and investigate
|
|
38
|
+
4. No new features during refactoring — separate PRs
|
|
39
|
+
|
|
40
|
+
## Process
|
|
41
|
+
|
|
42
|
+
### Step 1: Baseline
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npm test
|
|
46
|
+
# Must be 100% GREEN before proceeding
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
If tests fail: fix them first. Do not refactor on a broken baseline.
|
|
50
|
+
|
|
51
|
+
### Step 2: Identify Refactoring Targets
|
|
52
|
+
|
|
53
|
+
Spawn `@mapper` to find:
|
|
54
|
+
- Files over 400 lines
|
|
55
|
+
- Functions over 50 lines
|
|
56
|
+
- Duplicated logic (3+ occurrences of same pattern)
|
|
57
|
+
- Deep nesting (> 4 levels)
|
|
58
|
+
- Unclear names
|
|
59
|
+
|
|
60
|
+
Prioritize: most impactful changes first.
|
|
61
|
+
|
|
62
|
+
### Step 3: Plan Transforms
|
|
63
|
+
|
|
64
|
+
List transforms in low-to-high risk order:
|
|
65
|
+
|
|
66
|
+
**Low risk** (one at a time):
|
|
67
|
+
- Rename variable/function within a file
|
|
68
|
+
- Extract constant from magic number
|
|
69
|
+
- Remove unused imports
|
|
70
|
+
- Reorder parameters (update all call sites)
|
|
71
|
+
|
|
72
|
+
**Medium risk** (test after each):
|
|
73
|
+
- Extract function from long method
|
|
74
|
+
- Move function to appropriate module
|
|
75
|
+
- Replace duplication with shared utility
|
|
76
|
+
|
|
77
|
+
**Higher risk** (full test run mandatory):
|
|
78
|
+
- Split large file into modules
|
|
79
|
+
- Change data shape
|
|
80
|
+
- Reorganize module structure
|
|
81
|
+
|
|
82
|
+
### Step 4: Apply One Transform
|
|
83
|
+
|
|
84
|
+
Spawn `@coder` to apply exactly ONE transform.
|
|
85
|
+
|
|
86
|
+
Example commit messages:
|
|
87
|
+
- `refactor: extract validateEmail from UserService`
|
|
88
|
+
- `refactor: rename userId to userID for consistency`
|
|
89
|
+
- `refactor: move auth helpers to auth/utils.ts`
|
|
90
|
+
|
|
91
|
+
### Step 5: Verify Green
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
npm test
|
|
95
|
+
# Still GREEN? Proceed to next transform.
|
|
96
|
+
# RED? Undo the transform, investigate why.
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Never proceed to the next transform with a failing test.
|
|
100
|
+
|
|
101
|
+
### Step 6: Commit and Repeat
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
git commit -m "refactor: <what changed>"
|
|
105
|
+
# Return to Step 4 for next transform
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Output
|
|
109
|
+
|
|
110
|
+
After all transforms complete:
|
|
111
|
+
|
|
112
|
+
```
|
|
113
|
+
## Refactor Complete
|
|
114
|
+
|
|
115
|
+
Transforms applied: N
|
|
116
|
+
Files changed: N
|
|
117
|
+
Test suite: ✅ N/N passing
|
|
118
|
+
|
|
119
|
+
Changes:
|
|
120
|
+
- refactor: [description]
|
|
121
|
+
- refactor: [description]
|
|
122
|
+
```
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: review-code-flow
|
|
3
|
+
description: "Parallel code review workflow: security + quality + convention checks with CRITICAL/HIGH/MEDIUM/LOW severity classification"
|
|
4
|
+
triggers:
|
|
5
|
+
- /review-code
|
|
6
|
+
steps:
|
|
7
|
+
- name: identify_scope
|
|
8
|
+
agent: "@orchestrator"
|
|
9
|
+
action: Determine files to review (changed files, or explicit scope argument)
|
|
10
|
+
- name: parallel_review
|
|
11
|
+
agent: "@parallel-coordinator"
|
|
12
|
+
action: Spawn @reviewer, @researcher, @tester in parallel
|
|
13
|
+
- name: security_check
|
|
14
|
+
agent: "@reviewer"
|
|
15
|
+
action: Reviewer checks for vulnerabilities (injection, secrets, auth)
|
|
16
|
+
- name: quality_check
|
|
17
|
+
agent: "@reviewer"
|
|
18
|
+
action: Reviewer checks code quality and convention adherence
|
|
19
|
+
- name: context_check
|
|
20
|
+
agent: "@researcher"
|
|
21
|
+
action: Researcher provides best-practice context for flagged areas
|
|
22
|
+
- name: test_check
|
|
23
|
+
agent: "@tester"
|
|
24
|
+
action: Tester verifies test coverage for changed code
|
|
25
|
+
- name: aggregate
|
|
26
|
+
agent: "@orchestrator"
|
|
27
|
+
action: Aggregate findings by severity, present unified report
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
# Review Code Flow
|
|
31
|
+
|
|
32
|
+
## Purpose
|
|
33
|
+
|
|
34
|
+
Run a thorough parallel code review before merging or deploying.
|
|
35
|
+
|
|
36
|
+
## Process
|
|
37
|
+
|
|
38
|
+
### Step 1: Identify Scope
|
|
39
|
+
|
|
40
|
+
If `/review-code [scope]` provided: review files matching scope.
|
|
41
|
+
If no scope: review all files changed since last commit.
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
git diff --name-only HEAD~1
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Step 2: Parallel Review
|
|
48
|
+
|
|
49
|
+
Spawn three agents simultaneously:
|
|
50
|
+
|
|
51
|
+
**@reviewer**
|
|
52
|
+
- Security: secrets, injection, auth, XSS
|
|
53
|
+
- Quality: function size, nesting, error handling
|
|
54
|
+
- Conventions: naming, import style, patterns
|
|
55
|
+
|
|
56
|
+
**@researcher**
|
|
57
|
+
- Look up best practices for flagged patterns
|
|
58
|
+
- Check if flagged patterns are known vulnerabilities
|
|
59
|
+
- Provide context for MEDIUM findings
|
|
60
|
+
|
|
61
|
+
**@tester**
|
|
62
|
+
- Check coverage for changed files
|
|
63
|
+
- Identify untested paths
|
|
64
|
+
- Run existing tests
|
|
65
|
+
|
|
66
|
+
### Step 3: Aggregate Results
|
|
67
|
+
|
|
68
|
+
Merge all findings by severity:
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
## Code Review: <scope>
|
|
72
|
+
|
|
73
|
+
### 🔴 CRITICAL (block merge)
|
|
74
|
+
- [finding with file:line and fix]
|
|
75
|
+
|
|
76
|
+
### 🟠 HIGH (strongly recommend fix)
|
|
77
|
+
- [finding]
|
|
78
|
+
|
|
79
|
+
### 🟡 MEDIUM (consider fixing)
|
|
80
|
+
- [finding]
|
|
81
|
+
|
|
82
|
+
### 🟢 LOW (optional)
|
|
83
|
+
- [finding]
|
|
84
|
+
|
|
85
|
+
### Coverage
|
|
86
|
+
- Changed files: N%
|
|
87
|
+
- Untested paths: [list]
|
|
88
|
+
|
|
89
|
+
### Verdict: PASS | FAIL | PASS_WITH_NOTES
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### Step 4: Decision
|
|
93
|
+
|
|
94
|
+
- **CRITICAL found** → Block. Fix before merge.
|
|
95
|
+
- **HIGH found** → Strongly recommend fix. Document if proceeding anyway.
|
|
96
|
+
- **MEDIUM/LOW** → Document. Proceed.
|
|
97
|
+
- **PASS** → Ready to merge.
|
|
98
|
+
|
|
99
|
+
## Agent configuration
|
|
100
|
+
|
|
101
|
+
| Agent | Model | Purpose |
|
|
102
|
+
|-------|-------|---------|
|
|
103
|
+
| @reviewer | google/gemini-2.5-flash | Security and quality |
|
|
104
|
+
| @researcher | anthropic/claude-sonnet-4-5 | Context and best practices |
|
|
105
|
+
| @tester | anthropic/claude-sonnet-4-5 | Coverage analysis |
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Spec-Driven Development (SDD) Workflow
|
|
2
|
+
|
|
3
|
+
This workflow enforces a strict separation between planning and execution.
|
|
4
|
+
|
|
5
|
+
## Phases
|
|
6
|
+
|
|
7
|
+
### 1. Discuss (Gated)
|
|
8
|
+
- Goal: Capture all requirements and architectural decisions.
|
|
9
|
+
- Tool: `/discuss`
|
|
10
|
+
- Restriction: **Write access to codebase is BLOCKED.**
|
|
11
|
+
|
|
12
|
+
### 2. Plan (Gated)
|
|
13
|
+
- Goal: Create a detailed implementation plan and acceptance criteria.
|
|
14
|
+
- Tool: `/fd-plan`
|
|
15
|
+
- Review: `/fd-plan --confirm` (User must approve)
|
|
16
|
+
- Restriction: **Write access to codebase is BLOCKED.**
|
|
17
|
+
|
|
18
|
+
### 3. Execute
|
|
19
|
+
- Goal: Implement the plan.
|
|
20
|
+
- Tool: `/fd-execute` (Orchestrator takes over)
|
|
21
|
+
- Restriction: Write access is ENABLED.
|
|
22
|
+
|
|
23
|
+
### 4. Review
|
|
24
|
+
- Goal: Verify implementation against acceptance criteria.
|
|
25
|
+
- Tool: `/review-code`
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
Strict enforcement ensures that AI agents don't start coding until the design is solid.
|
|
29
|
+
|
|
30
|
+
## Best Practices
|
|
31
|
+
|
|
32
|
+
### 1. Leverage the Council
|
|
33
|
+
For complex architectural decisions in the **Discuss** phase, use `/fd-council`. This runs multiple "hero" agents (Architect, Oracle, Reviewer) and provides a synthesized consensus.
|
|
34
|
+
- *Example*: `/fd-council "Should we use a relational or NoSQL database for the audit log?"`
|
|
35
|
+
|
|
36
|
+
### 2. Verify with Hash-Edits
|
|
37
|
+
When implementation starts in the **Execute** phase, ensure agents use `fd-hash-edit` for critical files. This prevents stale-line errors if multiple agents are working in the same area.
|
|
38
|
+
|
|
39
|
+
### 3. Maintain Context
|
|
40
|
+
Run `context-generator` at the start of each new phase to ensure `AGENTS.md` reflects the current roadmap and decisions. This helps sub-agents stay grounded.
|
|
41
|
+
|
|
42
|
+
### 4. Health Check
|
|
43
|
+
Run `/fd-doctor` before starting a major execution wave to ensure your environment and configuration are correctly set up.
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: write-docs-flow
|
|
3
|
+
description: "Documentation workflow: explore public APIs → draft docs → review for accuracy → finalize"
|
|
4
|
+
triggers:
|
|
5
|
+
- /write-docs
|
|
6
|
+
steps:
|
|
7
|
+
- name: explore_apis
|
|
8
|
+
agent: "@code-explorer"
|
|
9
|
+
action: Mapper explores public APIs, exports, and interfaces in the codebase
|
|
10
|
+
- name: draft
|
|
11
|
+
agent: "@writer"
|
|
12
|
+
action: Writer drafts documentation covering API reference, examples, and usage
|
|
13
|
+
- name: review
|
|
14
|
+
agent: "@reviewer"
|
|
15
|
+
action: Reviewer checks accuracy against actual code behavior
|
|
16
|
+
- name: revise
|
|
17
|
+
agent: "@writer"
|
|
18
|
+
action: Writer incorporates review feedback
|
|
19
|
+
- name: finalize
|
|
20
|
+
agent: "@doc-updater"
|
|
21
|
+
action: Write final docs to appropriate location
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
# Write Docs Flow
|
|
25
|
+
|
|
26
|
+
## Purpose
|
|
27
|
+
|
|
28
|
+
Generate accurate, up-to-date documentation from the codebase.
|
|
29
|
+
|
|
30
|
+
## Process
|
|
31
|
+
|
|
32
|
+
### Step 1: Explore APIs
|
|
33
|
+
|
|
34
|
+
Spawn `@mapper` to:
|
|
35
|
+
- Find all exported functions, classes, and types
|
|
36
|
+
- Identify public API entry points
|
|
37
|
+
- Map key workflows and integration points
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# Find exports
|
|
41
|
+
grep -rn "export " src/ --include="*.ts"
|
|
42
|
+
# Find public interfaces
|
|
43
|
+
grep -rn "export interface\|export type\|export class" src/ --include="*.ts"
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Step 2: Draft Documentation
|
|
47
|
+
|
|
48
|
+
Spawn `@writer` to produce:
|
|
49
|
+
|
|
50
|
+
**API Reference**
|
|
51
|
+
```markdown
|
|
52
|
+
## functionName(param: Type): ReturnType
|
|
53
|
+
|
|
54
|
+
Description of what the function does.
|
|
55
|
+
|
|
56
|
+
**Parameters:**
|
|
57
|
+
- `param` (Type) — description
|
|
58
|
+
|
|
59
|
+
**Returns:** description
|
|
60
|
+
|
|
61
|
+
**Example:**
|
|
62
|
+
\`\`\`typescript
|
|
63
|
+
const result = functionName(value);
|
|
64
|
+
\`\`\`
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Usage Guide**
|
|
68
|
+
- Step-by-step workflow with examples
|
|
69
|
+
- Common patterns and best practices
|
|
70
|
+
- Configuration options
|
|
71
|
+
|
|
72
|
+
**Troubleshooting**
|
|
73
|
+
- Common errors and their solutions
|
|
74
|
+
|
|
75
|
+
### Step 3: Review for Accuracy
|
|
76
|
+
|
|
77
|
+
Spawn `@reviewer` to verify:
|
|
78
|
+
- Every documented function/method actually exists
|
|
79
|
+
- Parameter types match the actual signatures
|
|
80
|
+
- Examples are syntactically correct
|
|
81
|
+
- No outdated API references
|
|
82
|
+
|
|
83
|
+
### Step 4: Finalize
|
|
84
|
+
|
|
85
|
+
Writer incorporates feedback and writes final docs to:
|
|
86
|
+
- `README.md` — project overview and quick start
|
|
87
|
+
- `docs/API.md` — complete API reference
|
|
88
|
+
- `docs/USER_GUIDE.md` — detailed usage guide
|
|
89
|
+
|
|
90
|
+
## Output
|
|
91
|
+
|
|
92
|
+
Updated documentation files with:
|
|
93
|
+
- Accurate function signatures
|
|
94
|
+
- Working code examples
|
|
95
|
+
- Clear explanations of behavior
|