@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
package/docs/commands.md
ADDED
|
@@ -0,0 +1,476 @@
|
|
|
1
|
+
# FlowDeck Commands
|
|
2
|
+
|
|
3
|
+
Commands are slash commands registered in OpenCode. Run them by typing `/command-name [arguments]` in any OpenCode session.
|
|
4
|
+
|
|
5
|
+
## Quick Reference
|
|
6
|
+
|
|
7
|
+
| Command | Arguments | Description |
|
|
8
|
+
|---------|-----------|-------------|
|
|
9
|
+
| `/fd-new-project` | `[project-name]` | Initialize `.planning/` directory and project state files |
|
|
10
|
+
| `/fd-discuss` | `[phase-number]` | Structured Q&A session to capture decisions for a phase |
|
|
11
|
+
| `/fd-plan` | `[phase-number]` | Generate a detailed implementation plan from discussion output |
|
|
12
|
+
| `/fd-new-feature` | `[feature-description]` | Full feature implementation with parallel agents |
|
|
13
|
+
| `/fd-fix-bug` | `[bug-description\|issue-number]` | Debug, fix, and verify a bug with regression test |
|
|
14
|
+
| `/fd-review-code` | `[scope]` | Parallel code review and security audit |
|
|
15
|
+
| `/fd-deploy-check` | — | Pre-deploy gate: tests, review, CVE scan |
|
|
16
|
+
| `/fd-write-docs` | — | Explore public APIs and generate documentation |
|
|
17
|
+
| `/fd-map-codebase` | `[--full] [--update]` | Map codebase into structured `.codebase/` files |
|
|
18
|
+
| `/fd-progress` | — | Display current STATE.md and active plan (no agents) |
|
|
19
|
+
| `/fd-checkpoint` | — | Persist current state to STATE.md |
|
|
20
|
+
| `/fd-resume` | — | Reload STATE.md and PLAN.md context in a new session |
|
|
21
|
+
| `/fd-dashboard` | — | Project dashboard: phases, milestones, blockers |
|
|
22
|
+
| `/fd-roadmap` | — | View or update ROADMAP.md with phase statuses |
|
|
23
|
+
| `/fd-settings` | — | View or update FlowDeck model and workspace settings |
|
|
24
|
+
| `/fd-multi-repo` | `[--add\|--list\|--status\|--remove]` | Manage multi-repo configuration |
|
|
25
|
+
| `/fd-impact-radar` | `[--change] [--scope]` | Predict affected files, APIs, tests before editing |
|
|
26
|
+
| `/fd-blast-radius` | `[--change] [--depth]` | Show downstream consequences and hidden dependencies |
|
|
27
|
+
| `/fd-translate-intent` | `[--intent]` | Convert vague request into ranked concrete implementation options |
|
|
28
|
+
| `/fd-volatility-map` | `[--threshold] [--limit]` | Show unstable code zones by churn and hotfix frequency |
|
|
29
|
+
| `/fd-regression-predict` | `[--change] [--categories]` | Estimate likely regression categories for a change |
|
|
30
|
+
| `/fd-test-gap` | `[--change] [--scope]` | Identify weakly-tested areas in a proposed change |
|
|
31
|
+
| `/fd-review-route` | `[--files] [--change]` | Route risky patches to the right reviewer type |
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Detailed Command Reference
|
|
36
|
+
|
|
37
|
+
## /fd-new-project
|
|
38
|
+
|
|
39
|
+
**Description:** Bootstraps a new FlowDeck-managed project. Creates the `.planning/` directory and all required state files so subsequent commands have a place to read and write context.
|
|
40
|
+
|
|
41
|
+
**Arguments:**
|
|
42
|
+
- `[project-name]` — name of the project (optional; defaults to current directory name)
|
|
43
|
+
|
|
44
|
+
**What it does:**
|
|
45
|
+
1. Creates `.planning/` directory in the current working directory
|
|
46
|
+
2. Generates `.planning/PROJECT.md` with project name, description placeholders, and tech stack fields
|
|
47
|
+
3. Generates `.planning/ROADMAP.md` with a blank phase structure
|
|
48
|
+
4. Generates `.planning/STATE.md` with initial status set to `setup`
|
|
49
|
+
5. Generates `.planning/config.json` with default model assignments, guard settings, and an empty `sub_repos` array
|
|
50
|
+
6. Prompts you to fill in the project description and tech stack
|
|
51
|
+
|
|
52
|
+
**Example:**
|
|
53
|
+
```
|
|
54
|
+
/fd-new-project my-api-service
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
**What Next?**
|
|
58
|
+
1. Run `/fd-discuss 1` to begin structured discovery for Phase 1
|
|
59
|
+
2. Run `/fd-map-codebase` if this is an existing codebase you want indexed
|
|
60
|
+
3. Run `/fd-settings` to configure model assignments before proceeding
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## /fd-discuss
|
|
65
|
+
|
|
66
|
+
**Description:** Opens a structured Q&A session for a given phase. The `@discusser` agent asks targeted questions to surface requirements, constraints, and decisions, then saves everything to a phase file.
|
|
67
|
+
|
|
68
|
+
**Arguments:**
|
|
69
|
+
- `[phase-number]` — the phase number to discuss (required; e.g. `1`, `2`)
|
|
70
|
+
|
|
71
|
+
**What it does:**
|
|
72
|
+
1. Loads `.planning/PROJECT.md` and `.planning/STATE.md` for project context
|
|
73
|
+
2. Invokes `@discusser`, which asks a sequence of structured questions about goals, constraints, edge cases, and acceptance criteria
|
|
74
|
+
3. You answer each question in the session
|
|
75
|
+
4. Saves all decisions to `.planning/phases/phase-N/DISCUSS.md` using `D-XX` numbering (D-01, D-02, …)
|
|
76
|
+
5. Updates `STATE.md` to record that discussion for this phase is complete
|
|
77
|
+
|
|
78
|
+
**Example:**
|
|
79
|
+
```
|
|
80
|
+
/fd-discuss 1
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
**What Next?**
|
|
84
|
+
1. Run `/fd-plan 1` to generate a detailed implementation plan from this discussion
|
|
85
|
+
2. Run `/fd-discuss 1` again to add more decisions if you missed something
|
|
86
|
+
3. Run `/fd-progress` to review the current project state
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## /fd-plan
|
|
91
|
+
|
|
92
|
+
**Description:** Reads the discussion output for a phase and produces a detailed, step-by-step implementation plan. Requires explicit confirmation before finalizing.
|
|
93
|
+
|
|
94
|
+
**Arguments:**
|
|
95
|
+
- `[phase-number]` — the phase to plan (required; must have a completed DISCUSS.md)
|
|
96
|
+
|
|
97
|
+
**What it does:**
|
|
98
|
+
1. Reads `.planning/phases/phase-N/DISCUSS.md` for decisions and requirements
|
|
99
|
+
2. Invokes `@planner`, which produces a detailed `PLAN.md` with tasks, dependencies, file paths, and acceptance criteria
|
|
100
|
+
3. Invokes `@flowdeck-plan-checker` to validate the plan for completeness, contradiction, and missing edge cases
|
|
101
|
+
4. Displays the plan and any checker feedback
|
|
102
|
+
5. Prompts: **type `CONFIRMED` to accept the plan and write it to disk**
|
|
103
|
+
6. On confirmation, saves `.planning/phases/phase-N/PLAN.md` and updates `STATE.md`
|
|
104
|
+
|
|
105
|
+
**Example:**
|
|
106
|
+
```
|
|
107
|
+
/fd-plan 1
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
**What Next?**
|
|
111
|
+
1. Run `/fd-new-feature "feature description"` to implement the first item in the plan
|
|
112
|
+
2. Run `/fd-progress` to see the full plan summary
|
|
113
|
+
3. Run `/fd-plan 1` again to regenerate the plan if requirements changed
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## /fd-new-feature
|
|
118
|
+
|
|
119
|
+
**Description:** Implements a new feature end-to-end using an orchestrated pipeline of parallel agents. Reads the active PLAN.md for context before starting.
|
|
120
|
+
|
|
121
|
+
**Arguments:**
|
|
122
|
+
- `[feature-description]` — plain-language description of the feature (required)
|
|
123
|
+
|
|
124
|
+
**What it does:**
|
|
125
|
+
1. Reads the active `.planning/phases/*/PLAN.md` for context
|
|
126
|
+
2. `@orchestrator` assesses scope and invokes `@parallel-coordinator` if work exceeds ~30 minutes
|
|
127
|
+
3. Executes the standard 4-wave pattern:
|
|
128
|
+
- **Wave 1 (parallel):** `@researcher` gathers relevant docs/best practices; `@code-explorer` maps existing patterns
|
|
129
|
+
- **Wave 2 (serial):** `@architect` produces interface contracts and data models
|
|
130
|
+
- **Wave 3 (parallel):** `@coder` implements against Wave 2 interfaces; `@tester` writes tests against those same interfaces
|
|
131
|
+
- **Wave 4 (parallel):** `@reviewer` checks logic and quality; `@security-auditor` runs OWASP checklist
|
|
132
|
+
4. Aggregates results into a feature summary
|
|
133
|
+
5. Updates `STATE.md` with the completed feature
|
|
134
|
+
|
|
135
|
+
**Example:**
|
|
136
|
+
```
|
|
137
|
+
/fd-new-feature "user authentication with JWT and refresh tokens"
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**What Next?**
|
|
141
|
+
1. Run `/fd-review-code src/auth/` to do an additional focused review
|
|
142
|
+
2. Run `/fd-fix-bug` if any issues were surfaced during implementation
|
|
143
|
+
3. Run `/fd-checkpoint` to save state before moving on
|
|
144
|
+
4. Run `/fd-new-feature` again for the next planned feature
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## /fd-fix-bug
|
|
149
|
+
|
|
150
|
+
**Description:** Diagnoses and fixes a bug through a focused pipeline: scope analysis, mini-plan, code fix, regression test, and reviewer sign-off.
|
|
151
|
+
|
|
152
|
+
**Arguments:**
|
|
153
|
+
- `[bug-description or issue-number]` — plain-language description of the bug, or a GitHub/tracker issue number (required)
|
|
154
|
+
|
|
155
|
+
**What it does:**
|
|
156
|
+
1. `@debug-specialist` analyzes scope: identifies the failing code path, reproduces the issue, and determines root cause
|
|
157
|
+
2. Produces a mini-plan (2–5 steps) for the fix
|
|
158
|
+
3. `@coder` applies the fix
|
|
159
|
+
4. `@tester` writes a regression test that would have caught the bug
|
|
160
|
+
5. `@reviewer` confirms the fix is complete and the regression test passes
|
|
161
|
+
6. Updates `STATE.md` with the resolved bug reference
|
|
162
|
+
|
|
163
|
+
**Example:**
|
|
164
|
+
```
|
|
165
|
+
/fd-fix-bug "user sessions expire immediately after login"
|
|
166
|
+
/fd-fix-bug 412
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
**What Next?**
|
|
170
|
+
1. Run `/fd-review-code` on the changed files for a full quality pass
|
|
171
|
+
2. Run `/fd-deploy-check` if this is a hotfix going to production
|
|
172
|
+
3. Run `/fd-checkpoint` to save state
|
|
173
|
+
4. Run `/fd-progress` to see remaining open issues
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## /fd-review-code
|
|
178
|
+
|
|
179
|
+
**Description:** Runs a parallel code review and security audit on the specified scope, then aggregates findings into a tiered report.
|
|
180
|
+
|
|
181
|
+
**Arguments:**
|
|
182
|
+
- `[scope]` — file path, directory path, or `staged` (reviews only git-staged changes); required
|
|
183
|
+
|
|
184
|
+
**What it does:**
|
|
185
|
+
1. `@reviewer` and `@security-auditor` run in parallel over the specified scope
|
|
186
|
+
2. `@reviewer` checks: logic correctness, error handling, naming, test coverage, anti-patterns
|
|
187
|
+
3. `@security-auditor` checks: OWASP Top 10, authentication/authorization, injection risks, secrets in code, dependency vulnerabilities
|
|
188
|
+
4. Results are aggregated into a structured report with three tiers:
|
|
189
|
+
- **Critical** — must fix before merge
|
|
190
|
+
- **Major** — should fix; requires justification to skip
|
|
191
|
+
- **Minor** — suggestions and style notes
|
|
192
|
+
5. Saves report to `.planning/reviews/REVIEW-<timestamp>.md`
|
|
193
|
+
|
|
194
|
+
**Example:**
|
|
195
|
+
```
|
|
196
|
+
/fd-review-code src/payments/
|
|
197
|
+
/fd-review-code staged
|
|
198
|
+
/fd-review-code src/api/handlers/user.ts
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
**What Next?**
|
|
202
|
+
1. Address **Critical** findings first, then re-run `/fd-review-code` on the changed files
|
|
203
|
+
2. Run `/fd-fix-bug` for any defects surfaced in the review
|
|
204
|
+
3. Run `/fd-deploy-check` once all criticals are resolved
|
|
205
|
+
4. Run `/fd-checkpoint` to save progress
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## /fd-deploy-check
|
|
210
|
+
|
|
211
|
+
**Description:** Runs a full pre-deployment gate. All checks must pass before the orchestrator issues a go/no-go decision. Blocks deploy if any check fails.
|
|
212
|
+
|
|
213
|
+
**Arguments:** None
|
|
214
|
+
|
|
215
|
+
**What it does:**
|
|
216
|
+
1. Runs three checks in parallel:
|
|
217
|
+
- `@tester` executes the full test suite and checks coverage thresholds
|
|
218
|
+
- `@reviewer` does a final quality pass on changes since the last deploy
|
|
219
|
+
- CVE scanner checks all dependencies against known vulnerability databases
|
|
220
|
+
2. `@orchestrator` collects results from all three
|
|
221
|
+
3. If all pass: issues **GO** decision and prints a deploy summary
|
|
222
|
+
4. If any fail: issues **NO-GO** decision with specific failure details and a remediation list
|
|
223
|
+
5. Saves the decision report to `.planning/fd-deploy-checks/DEPLOY-<timestamp>.md`
|
|
224
|
+
|
|
225
|
+
**Example:**
|
|
226
|
+
```
|
|
227
|
+
/fd-deploy-check
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
**What Next?**
|
|
231
|
+
1. If **GO**: proceed with your deployment pipeline
|
|
232
|
+
2. If **NO-GO**: address each listed failure, then re-run `/fd-deploy-check`
|
|
233
|
+
3. Run `/fd-fix-bug` for any test failures surfaced
|
|
234
|
+
4. Run `/fd-checkpoint` after a successful deploy check
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
## /fd-write-docs
|
|
239
|
+
|
|
240
|
+
**Description:** Explores all public APIs in the codebase and generates documentation. A `@reviewer` then checks the draft for accuracy against the actual code.
|
|
241
|
+
|
|
242
|
+
**Arguments:** None
|
|
243
|
+
|
|
244
|
+
**What it does:**
|
|
245
|
+
1. `@code-explorer` scans the codebase for public-facing interfaces, exported functions, REST endpoints, and configuration options
|
|
246
|
+
2. `@writer` drafts documentation: function signatures with descriptions, parameter tables, return values, usage examples, and any error conditions
|
|
247
|
+
3. `@reviewer` verifies every documented item against the actual source code, flagging inaccuracies
|
|
248
|
+
4. Final docs are written to the project's `docs/` directory (or the path set in `.planning/config.json`)
|
|
249
|
+
5. Updates `STATE.md` to record documentation generation
|
|
250
|
+
|
|
251
|
+
**Example:**
|
|
252
|
+
```
|
|
253
|
+
/fd-write-docs
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
**What Next?**
|
|
257
|
+
1. Review the generated docs and edit sections that need domain context
|
|
258
|
+
2. Run `/fd-write-docs` again after adding new public APIs
|
|
259
|
+
3. Run `/fd-review-code docs/` if you want a quality pass on the written docs
|
|
260
|
+
4. Run `/fd-checkpoint` to save state
|
|
261
|
+
|
|
262
|
+
---
|
|
263
|
+
|
|
264
|
+
## /fd-map-codebase
|
|
265
|
+
|
|
266
|
+
**Description:** Builds a structured map of the codebase into `.codebase/` files. Essential before starting work on an unfamiliar or large project.
|
|
267
|
+
|
|
268
|
+
**Arguments:**
|
|
269
|
+
- `[--full]` — perform a deep scan including all dependencies and test files (optional)
|
|
270
|
+
- `[--update]` — update an existing map rather than regenerating from scratch (optional)
|
|
271
|
+
|
|
272
|
+
**What it does:**
|
|
273
|
+
1. `@code-explorer` scans the entire project (respecting `.gitignore`)
|
|
274
|
+
2. Writes or updates five files in `.codebase/`:
|
|
275
|
+
- `STACK.md` — languages, frameworks, major libraries, and versions
|
|
276
|
+
- `ARCHITECTURE.md` — high-level architecture: layers, services, data flow
|
|
277
|
+
- `STRUCTURE.md` — directory tree with purpose annotations per directory
|
|
278
|
+
- `CONVENTIONS.md` — naming patterns, file organization rules, detected style
|
|
279
|
+
- `TESTING.md` — test framework, test locations, coverage tooling, CI integration
|
|
280
|
+
3. Updates `.planning/STATE.md` to note that codebase map is current
|
|
281
|
+
|
|
282
|
+
**Example:**
|
|
283
|
+
```
|
|
284
|
+
/fd-map-codebase
|
|
285
|
+
/fd-map-codebase --full
|
|
286
|
+
/fd-map-codebase --update
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
**What Next?**
|
|
290
|
+
1. Run `/fd-discuss 1` now that the AI has full codebase context
|
|
291
|
+
2. Review `.codebase/CONVENTIONS.md` and add any corrections before proceeding
|
|
292
|
+
3. Run `/fd-map-codebase --update` after significant refactors to keep the map current
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
## /fd-progress
|
|
297
|
+
|
|
298
|
+
**Description:** Displays a snapshot of the current project state. Reads directly from state files — no agents are invoked.
|
|
299
|
+
|
|
300
|
+
**Arguments:** None
|
|
301
|
+
|
|
302
|
+
**What it does:**
|
|
303
|
+
1. Reads and displays `.planning/STATE.md` — current phase, status, last action
|
|
304
|
+
2. Reads and displays the active `.planning/phases/*/PLAN.md` — remaining tasks
|
|
305
|
+
3. Shows recent command results from the session log
|
|
306
|
+
4. Reports any blockers or pending decisions recorded in STATE.md
|
|
307
|
+
|
|
308
|
+
**Example:**
|
|
309
|
+
```
|
|
310
|
+
/fd-progress
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
**What Next?**
|
|
314
|
+
1. Run the next command indicated by the active plan
|
|
315
|
+
2. Run `/fd-dashboard` for a more visual phase-by-phase view
|
|
316
|
+
3. Run `/fd-roadmap` to see the full project timeline
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
## /fd-checkpoint
|
|
321
|
+
|
|
322
|
+
**Description:** Persists the current session state to `.planning/STATE.md`. Run this before closing an OpenCode session so nothing is lost.
|
|
323
|
+
|
|
324
|
+
**Arguments:** None
|
|
325
|
+
|
|
326
|
+
**What it does:**
|
|
327
|
+
1. Writes current phase, completed tasks, pending tasks, and any in-progress context to `.planning/STATE.md`
|
|
328
|
+
2. Records a timestamp and session summary
|
|
329
|
+
3. Confirms: "State saved. Safe to close this session."
|
|
330
|
+
|
|
331
|
+
**Example:**
|
|
332
|
+
```
|
|
333
|
+
/fd-checkpoint
|
|
334
|
+
```
|
|
335
|
+
|
|
336
|
+
**What Next?**
|
|
337
|
+
1. Close and reopen your OpenCode session
|
|
338
|
+
2. Run `/fd-resume` in the new session to reload context
|
|
339
|
+
3. Run `/fd-progress` to verify state was saved correctly
|
|
340
|
+
|
|
341
|
+
---
|
|
342
|
+
|
|
343
|
+
## /fd-resume
|
|
344
|
+
|
|
345
|
+
**Description:** Reloads project context at the start of a new OpenCode session. Reads STATE.md and the active PLAN.md so you can continue where you left off.
|
|
346
|
+
|
|
347
|
+
**Arguments:** None
|
|
348
|
+
|
|
349
|
+
**What it does:**
|
|
350
|
+
1. Reads `.planning/STATE.md` and reports current phase and status
|
|
351
|
+
2. Reads the active `.planning/phases/*/PLAN.md` and loads its task list into context
|
|
352
|
+
3. Summarizes: what was last done, what is next, any pending decisions
|
|
353
|
+
4. Does not invoke any agents — purely a context-loading operation
|
|
354
|
+
|
|
355
|
+
**Example:**
|
|
356
|
+
```
|
|
357
|
+
/fd-resume
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
**What Next?**
|
|
361
|
+
1. Run the next task from the active plan
|
|
362
|
+
2. Run `/fd-progress` for a full status view
|
|
363
|
+
3. Run `/fd-discuss` or `/fd-plan` if context indicates a phase is not yet planned
|
|
364
|
+
|
|
365
|
+
---
|
|
366
|
+
|
|
367
|
+
## /fd-dashboard
|
|
368
|
+
|
|
369
|
+
**Description:** Renders a project dashboard showing phase-by-phase progress, milestone status, and any active blockers.
|
|
370
|
+
|
|
371
|
+
**Arguments:** None
|
|
372
|
+
|
|
373
|
+
**What it does:**
|
|
374
|
+
1. Reads `.planning/ROADMAP.md`, `.planning/STATE.md`, and all phase directories
|
|
375
|
+
2. Renders a structured dashboard:
|
|
376
|
+
- Phase completion percentages
|
|
377
|
+
- Milestone statuses (pending / in-progress / done / blocked)
|
|
378
|
+
- Active blockers with descriptions
|
|
379
|
+
- Recent activity log
|
|
380
|
+
3. Does not invoke any agents — read-only view
|
|
381
|
+
|
|
382
|
+
**Example:**
|
|
383
|
+
```
|
|
384
|
+
/fd-dashboard
|
|
385
|
+
```
|
|
386
|
+
|
|
387
|
+
**What Next?**
|
|
388
|
+
1. Run `/fd-roadmap` to update phase statuses or add milestones
|
|
389
|
+
2. Run `/fd-progress` for a task-level view
|
|
390
|
+
3. Run `/fd-discuss` or `/fd-plan` for phases shown as blocked
|
|
391
|
+
|
|
392
|
+
---
|
|
393
|
+
|
|
394
|
+
## /fd-roadmap
|
|
395
|
+
|
|
396
|
+
**Description:** View or update the project roadmap. Shows all phases with their current statuses and lets you mark phases as complete or add new ones.
|
|
397
|
+
|
|
398
|
+
**Arguments:** None (interactive prompts guide updates)
|
|
399
|
+
|
|
400
|
+
**What it does:**
|
|
401
|
+
1. Reads and displays `.planning/ROADMAP.md` with phase names, statuses, and target dates
|
|
402
|
+
2. Prompts you to update any phase status or add new phases
|
|
403
|
+
3. Saves changes back to `.planning/ROADMAP.md`
|
|
404
|
+
4. Reflects changes in subsequent `/fd-dashboard` calls
|
|
405
|
+
|
|
406
|
+
**Example:**
|
|
407
|
+
```
|
|
408
|
+
/fd-roadmap
|
|
409
|
+
```
|
|
410
|
+
|
|
411
|
+
**What Next?**
|
|
412
|
+
1. Run `/fd-discuss N` to begin work on the next planned phase
|
|
413
|
+
2. Run `/fd-dashboard` to see the updated roadmap in context
|
|
414
|
+
3. Run `/fd-checkpoint` to save state after roadmap updates
|
|
415
|
+
|
|
416
|
+
---
|
|
417
|
+
|
|
418
|
+
## /fd-settings
|
|
419
|
+
|
|
420
|
+
**Description:** View or update FlowDeck configuration: model assignments per agent, guard enforcement, and workspace mode.
|
|
421
|
+
|
|
422
|
+
**Arguments:** None (interactive prompts guide configuration)
|
|
423
|
+
|
|
424
|
+
**What it does:**
|
|
425
|
+
1. Reads `.planning/config.json` and displays current settings
|
|
426
|
+
2. Presents configuration options:
|
|
427
|
+
- **Model assignments** — which AI model handles each agent role (e.g. `@architect → claude-3-5-sonnet`)
|
|
428
|
+
- **Guard enforcement** — whether security and review guards are mandatory or advisory
|
|
429
|
+
- **Workspace mode** — `single` (one repo) or `multi` (multi-repo coordination enabled)
|
|
430
|
+
3. Saves changes to `.planning/config.json`
|
|
431
|
+
|
|
432
|
+
**Example:**
|
|
433
|
+
```
|
|
434
|
+
/fd-settings
|
|
435
|
+
```
|
|
436
|
+
|
|
437
|
+
**What Next?**
|
|
438
|
+
1. Run `/fd-multi-repo --list` to see registered repos if workspace mode is `multi`
|
|
439
|
+
2. Run `/fd-progress` to confirm settings are in effect
|
|
440
|
+
3. Run `/fd-new-feature` to use updated model assignments
|
|
441
|
+
|
|
442
|
+
---
|
|
443
|
+
|
|
444
|
+
## /fd-multi-repo
|
|
445
|
+
|
|
446
|
+
**Description:** Manages multi-repo configuration in `.planning/config.json`. Register, list, check status of, or remove service repositories for cross-repo coordination.
|
|
447
|
+
|
|
448
|
+
**Arguments:**
|
|
449
|
+
- `--add <path> <role>` — register a repository at the given path with the specified role
|
|
450
|
+
- `--list` — show all registered repositories and their roles
|
|
451
|
+
- `--status` — check git status across all registered repositories
|
|
452
|
+
- `--remove <name>` — remove a registered repository by name
|
|
453
|
+
|
|
454
|
+
**What it does:**
|
|
455
|
+
- `--add`: Resolves the path, detects tech stack, and appends an entry to `sub_repos` in `.planning/config.json`
|
|
456
|
+
- `--list`: Reads `sub_repos` and prints a formatted table of name, path, role, tech stack, and owner team
|
|
457
|
+
- `--status`: Runs `git status` in each registered repo and summarizes uncommitted changes and branch positions
|
|
458
|
+
- `--remove`: Removes the named entry from `sub_repos` in `.planning/config.json`
|
|
459
|
+
|
|
460
|
+
**Example:**
|
|
461
|
+
```
|
|
462
|
+
/fd-multi-repo --add ../user-service upstream-api
|
|
463
|
+
/fd-multi-repo --add ../order-service consumer
|
|
464
|
+
/fd-multi-repo --list
|
|
465
|
+
/fd-multi-repo --status
|
|
466
|
+
/fd-multi-repo --remove notification-service
|
|
467
|
+
```
|
|
468
|
+
|
|
469
|
+
**What Next?**
|
|
470
|
+
1. Run `@multi-repo-coordinator` with a cross-cutting change description to begin coordinated work
|
|
471
|
+
2. Run `/fd-multi-repo --status` before starting any cross-repo feature to check for diverged branches
|
|
472
|
+
3. Run `/fd-settings` to confirm workspace mode is set to `multi`
|
|
473
|
+
|
|
474
|
+
---
|
|
475
|
+
|
|
476
|
+
← [Back to Index](index.md)
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
# Configuration
|
|
2
|
+
|
|
3
|
+
FlowDeck has two levels of configuration: the global OpenCode config (`opencode.json`) and the per-project config (`.planning/config.json`). This document covers both, plus environment variables and the plugin tools that FlowDeck exposes to every OpenCode session.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## opencode.json
|
|
8
|
+
|
|
9
|
+
OpenCode reads `~/.config/opencode/opencode.json` at startup. FlowDeck requires one entry in the `plugin` array and supports optional entries in `instructions` to load rule files.
|
|
10
|
+
|
|
11
|
+
### Minimal configuration
|
|
12
|
+
|
|
13
|
+
```json
|
|
14
|
+
{
|
|
15
|
+
"$schema": "https://opencode.ai/config.json",
|
|
16
|
+
"plugin": ["@dv.nghiem/flowdeck"]
|
|
17
|
+
}
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
The `plugin` entry is written automatically by the FlowDeck installer. If it is missing, agents, skills, and commands will not load.
|
|
21
|
+
|
|
22
|
+
### Full configuration with rules
|
|
23
|
+
|
|
24
|
+
```json
|
|
25
|
+
{
|
|
26
|
+
"$schema": "https://opencode.ai/config.json",
|
|
27
|
+
"plugin": ["@dv.nghiem/flowdeck"],
|
|
28
|
+
"instructions": [
|
|
29
|
+
".planning/PROJECT.md",
|
|
30
|
+
"flowdeck-rules/common/coding-style.md",
|
|
31
|
+
"flowdeck-rules/typescript/patterns.md"
|
|
32
|
+
]
|
|
33
|
+
}
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Files listed under `instructions` are injected into every agent's context at session start. Use this to load project context and language-specific coding standards automatically.
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Using Language Rules
|
|
41
|
+
|
|
42
|
+
FlowDeck installs rule files under the npm package cache path:
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
~/.cache/opencode/packages/@dv.nghiem/flowdeck@latest/rules/
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
To activate rules, reference them by their path in the `instructions` array. Examples for each supported language:
|
|
49
|
+
|
|
50
|
+
**TypeScript**
|
|
51
|
+
```json
|
|
52
|
+
"instructions": [
|
|
53
|
+
"flowdeck-rules/common/coding-style.md",
|
|
54
|
+
"flowdeck-rules/common/security.md",
|
|
55
|
+
"flowdeck-rules/common/testing.md",
|
|
56
|
+
"flowdeck-rules/typescript/patterns.md"
|
|
57
|
+
]
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
**Python**
|
|
61
|
+
```json
|
|
62
|
+
"instructions": [
|
|
63
|
+
"flowdeck-rules/common/coding-style.md",
|
|
64
|
+
"flowdeck-rules/common/testing.md",
|
|
65
|
+
"flowdeck-rules/python/patterns.md"
|
|
66
|
+
]
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
**Go**
|
|
70
|
+
```json
|
|
71
|
+
"instructions": [
|
|
72
|
+
"flowdeck-rules/common/coding-style.md",
|
|
73
|
+
"flowdeck-rules/common/git-workflow.md",
|
|
74
|
+
"flowdeck-rules/golang/patterns.md"
|
|
75
|
+
]
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
**Java**
|
|
79
|
+
```json
|
|
80
|
+
"instructions": [
|
|
81
|
+
"flowdeck-rules/common/coding-style.md",
|
|
82
|
+
"flowdeck-rules/common/security.md",
|
|
83
|
+
"flowdeck-rules/java/patterns.md"
|
|
84
|
+
]
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
**Rust**
|
|
88
|
+
```json
|
|
89
|
+
"instructions": [
|
|
90
|
+
"flowdeck-rules/common/coding-style.md",
|
|
91
|
+
"flowdeck-rules/rust/patterns.md"
|
|
92
|
+
]
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
**Common rules (all projects)**
|
|
96
|
+
|
|
97
|
+
| File | Purpose |
|
|
98
|
+
|------|---------|
|
|
99
|
+
| `flowdeck-rules/common/coding-style.md` | Formatting, naming conventions, comment standards |
|
|
100
|
+
| `flowdeck-rules/common/testing.md` | Test structure, coverage targets, assertion patterns |
|
|
101
|
+
| `flowdeck-rules/common/security.md` | Input validation, secrets handling, OWASP reminders |
|
|
102
|
+
| `flowdeck-rules/common/git-workflow.md` | Branching strategy, commit message format, PR workflow |
|
|
103
|
+
| `flowdeck-rules/common/agent-orchestration.md` | How agents hand off context and coordinate work |
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Project Config (.planning/config.json)
|
|
108
|
+
|
|
109
|
+
Each FlowDeck project stores its settings in `.planning/config.json`. This file is created by `/fd-new-project` and updated by `/fd-settings`.
|
|
110
|
+
|
|
111
|
+
### Full schema
|
|
112
|
+
|
|
113
|
+
```json
|
|
114
|
+
{
|
|
115
|
+
"project_name": "MyApp",
|
|
116
|
+
"workspace_mode": "single",
|
|
117
|
+
"active_phase": 1,
|
|
118
|
+
"plan_confirmed": false,
|
|
119
|
+
"enforce_guardrails": true,
|
|
120
|
+
"sub_repos": [
|
|
121
|
+
{
|
|
122
|
+
"name": "user-service",
|
|
123
|
+
"path": "../user-service",
|
|
124
|
+
"role": "upstream-api",
|
|
125
|
+
"tech_stack": "node+typescript",
|
|
126
|
+
"owner_team": "platform"
|
|
127
|
+
}
|
|
128
|
+
]
|
|
129
|
+
}
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Field reference
|
|
133
|
+
|
|
134
|
+
| Field | Type | Description |
|
|
135
|
+
|-------|------|-------------|
|
|
136
|
+
| `project_name` | string | Human-readable name shown in `/fd-dashboard` and state files |
|
|
137
|
+
| `workspace_mode` | `"single"` \| `"multi"` | `"single"` for one repo; `"multi"` enables the multi-repo coordinator |
|
|
138
|
+
| `active_phase` | integer | The current phase number. `@orchestrator` reads this to determine which plan to execute |
|
|
139
|
+
| `plan_confirmed` | boolean | Set to `true` when you type `CONFIRMED` after `/fd-plan`. Guards against unreviewed execution |
|
|
140
|
+
| `enforce_guardrails` | boolean | When `true`, the `@flowdeck-plan-checker` must approve a plan before `@flowdeck-executor` runs it |
|
|
141
|
+
| `sub_repos` | array | List of additional repositories involved in this project (multi-repo mode only) |
|
|
142
|
+
| `sub_repos[].name` | string | Short identifier used in cross-repo task delegation |
|
|
143
|
+
| `sub_repos[].path` | string | Relative or absolute path to the repository on disk |
|
|
144
|
+
| `sub_repos[].role` | string | Describes the relationship: `"upstream-api"`, `"downstream-consumer"`, `"shared-lib"`, etc. |
|
|
145
|
+
| `sub_repos[].tech_stack` | string | Primary language and framework, used by `@multi-repo-coordinator` for context |
|
|
146
|
+
| `sub_repos[].owner_team` | string | Informational — used in planning notes and review assignments |
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## Settings Command
|
|
151
|
+
|
|
152
|
+
To view or modify project configuration interactively, run inside an OpenCode session:
|
|
153
|
+
|
|
154
|
+
```
|
|
155
|
+
/fd-settings
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
`/fd-settings` displays the current values from `.planning/config.json`, lists active model assignments for each agent, and presents options to:
|
|
159
|
+
|
|
160
|
+
- Switch `workspace_mode` between `single` and `multi`
|
|
161
|
+
- Change the `active_phase`
|
|
162
|
+
- Toggle `enforce_guardrails`
|
|
163
|
+
- Register or remove sub-repos
|
|
164
|
+
- Run `/fd-doctor` to verify environment health
|
|
165
|
+
|
|
166
|
+
Changes are written back to `.planning/config.json` immediately.
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## Built-in MCP Servers
|
|
171
|
+
|
|
172
|
+
FlowDeck automatically registers three free, read-only remote Model Context Protocol (MCP) servers to give your agents extended capabilities:
|
|
173
|
+
|
|
174
|
+
| MCP | Endpoint | Purpose |
|
|
175
|
+
|---|---|---|
|
|
176
|
+
| **Context7** | `mcp.context7.com/mcp` | Fast library and API documentation lookup |
|
|
177
|
+
| **Exa Websearch** | `mcp.exa.ai/mcp` | General web search capabilities |
|
|
178
|
+
| **Grep.app** | `mcp.grep.app` | Global code search across open-source repositories |
|
|
179
|
+
|
|
180
|
+
These are enabled by default. If you have API keys (e.g., `CONTEXT7_API_KEY`, `EXA_API_KEY`), FlowDeck will automatically inject them. To disable any of these, use the `FLOWDECK_DISABLE_MCP` environment variable (e.g., `FLOWDECK_DISABLE_MCP=context7,websearch`).
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
## Environment Variables
|
|
185
|
+
|
|
186
|
+
| Variable | Default | Description |
|
|
187
|
+
|----------|---------|-------------|
|
|
188
|
+
| `OPENCODE_CONFIG_DIR` | `~/.config/opencode` | Override the directory where FlowDeck looks for agents, skills, and commands |
|
|
189
|
+
| `XDG_CONFIG_HOME` | `~/.config` | Standard XDG base directory; used to resolve `OPENCODE_CONFIG_DIR` when not explicitly set |
|
|
190
|
+
| `FLOWDECK_CONTEXT_LIMIT` | `200000` | Token limit used by the Context Window Monitor to warn when context usage exceeds 70% |
|
|
191
|
+
| `FLOWDECK_DISABLE_MCP` | (empty) | Comma-separated list of remote MCPs to disable. Valid options: `context7`, `websearch`, `grep_app` |
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
195
|
+
## FlowDeck Plugin Tools
|
|
196
|
+
|
|
197
|
+
When the `@dv.nghiem/flowdeck` plugin is loaded, six tools become available to every agent in your OpenCode session. You do not need to invoke these directly — they are used automatically by FlowDeck agents and workflows.
|
|
198
|
+
|
|
199
|
+
| `planning-state` | Read and write `.planning/` state files (`STATE.md`, `PLAN.md`, `DISCUSS.md`, `config.json`). Used by every agent that needs project context. |
|
|
200
|
+
| `codebase-state` | Read `.codebase/` documentation files generated by `@mapper`. Gives agents access to `STACK.md`, `ARCHITECTURE.md`, and `CONVENTIONS.md`. |
|
|
201
|
+
| `workspace-state` | Read workspace and multi-repo metadata. Returns the current project config, sub-repo list, and active phase. |
|
|
202
|
+
| `run-parallel` | Fan out a set of independent agent tasks simultaneously. Used by `@parallel-coordinator` to execute wave tasks concurrently. |
|
|
203
|
+
| `run-pipeline` | Execute a sequence of agent tasks in strict order, passing each step's output as input to the next. Used by `@orchestrator` for ordered workflows. |
|
|
204
|
+
| `delegate` | Invoke a specific named agent with a given prompt and context. The core primitive used by orchestration agents to hand off work. |
|
|
205
|
+
| `hash-edit` | Reliable file editing with content verification. Takes target content and its expected hash to prevent edits on stale versions. |
|
|
206
|
+
| `council` | Ensemble-based reasoning. Runs 3 specialized agents in parallel and synthesizes their consensus for complex decisions. |
|
|
207
|
+
| `context-generator` | Auto-generate/update hierarchical `AGENTS.md` and `CLAUDE.md` files throughout the project for better agent grounding. |
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
← [Back to Index](index.md)
|