@dv.nghiem/flowdeck 0.2.4 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -41
- package/dist/hooks/memory-hook.d.ts +21 -0
- package/dist/hooks/memory-hook.d.ts.map +1 -0
- package/dist/hooks/orchestrator-guard-hook.d.ts.map +1 -1
- package/dist/hooks/todo-hook.d.ts +1 -7
- package/dist/hooks/todo-hook.d.ts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +709 -420
- package/dist/services/memory-store.d.ts +40 -0
- package/dist/services/memory-store.d.ts.map +1 -0
- package/dist/tools/memory-search.d.ts +3 -0
- package/dist/tools/memory-search.d.ts.map +1 -0
- package/docs/commands/fd-doctor.md +21 -0
- package/docs/commands/fd-quick.md +33 -0
- package/docs/commands/fd-reflect.md +23 -0
- package/docs/commands/fd-status.md +31 -0
- package/docs/commands/fd-translate-intent.md +17 -0
- package/docs/commands.md +209 -271
- package/docs/configuration.md +1 -2
- package/docs/index.md +22 -28
- package/docs/memory.md +69 -0
- package/docs/quick-start.md +1 -1
- package/package.json +1 -1
- package/src/commands/fd-deploy-check.md +131 -11
- package/src/commands/fd-new-project.md +14 -1
- package/src/commands/fd-quick.md +60 -0
- package/src/commands/fd-reflect.md +41 -2
- package/src/commands/fd-status.md +84 -0
- package/src/rules/README.md +8 -7
- package/src/skills/agent-harness-construction/SKILL.md +227 -0
- package/src/skills/api-design/SKILL.md +5 -0
- package/src/skills/backend-patterns/SKILL.md +105 -0
- package/src/skills/clean-architecture/SKILL.md +85 -0
- package/src/skills/cqrs/SKILL.md +230 -0
- package/src/skills/ddd-architecture/SKILL.md +104 -0
- package/src/skills/django-patterns/SKILL.md +304 -0
- package/src/skills/django-tdd/SKILL.md +297 -0
- package/src/skills/event-driven-architecture/SKILL.md +152 -0
- package/src/skills/frontend-pattern/SKILL.md +159 -0
- package/src/skills/hexagonal-architecture/SKILL.md +80 -0
- package/src/skills/layered-architecture/SKILL.md +64 -0
- package/src/skills/postgres-patterns/SKILL.md +74 -0
- package/src/skills/python-patterns/SKILL.md +5 -0
- package/src/skills/saga-architecture/SKILL.md +113 -0
- package/dist/tools/run-parallel.d.ts +0 -4
- package/dist/tools/run-parallel.d.ts.map +0 -1
- package/docs/command-migration.md +0 -175
- package/docs/commands/fd-analyze-change.md +0 -107
- package/docs/commands/fd-dashboard.md +0 -11
- package/docs/commands/fd-evaluate-risk.md +0 -134
- package/docs/commands/fd-guarded-edit.md +0 -105
- package/docs/commands/fd-progress.md +0 -11
- package/docs/commands/fd-review-code.md +0 -29
- package/docs/commands/fd-roadmap.md +0 -10
- package/docs/commands/fd-settings.md +0 -10
- package/docs/parallel-execution.md +0 -255
- package/src/commands/fd-analyze-change.md +0 -57
- package/src/commands/fd-approve.md +0 -64
- package/src/commands/fd-blast-radius.md +0 -49
- package/src/commands/fd-dashboard.md +0 -57
- package/src/commands/fd-evaluate-risk.md +0 -62
- package/src/commands/fd-guarded-edit.md +0 -69
- package/src/commands/fd-impact-radar.md +0 -51
- package/src/commands/fd-learn.md +0 -36
- package/src/commands/fd-progress.md +0 -50
- package/src/commands/fd-regression-predict.md +0 -57
- package/src/commands/fd-review-code.md +0 -96
- package/src/commands/fd-review-route.md +0 -54
- package/src/commands/fd-roadmap.md +0 -46
- package/src/commands/fd-settings.md +0 -57
- package/src/commands/fd-test-gap.md +0 -54
- package/src/commands/fd-volatility-map.md +0 -64
- package/src/commands/fd-workspace-status.md +0 -34
- package/src/skills/parallel-execute/SKILL.md +0 -92
package/README.md
CHANGED
|
@@ -10,7 +10,7 @@ FlowDeck adds a structured, multi-agent development workflow to OpenCode. It coo
|
|
|
10
10
|
|
|
11
11
|
- 🤖 **25 agents** — architect, planner, coder, reviewer, tester, debugger, risk-analyst, policy-enforcer, and more
|
|
12
12
|
- 🛠️ **24 skills** — reusable workflow patterns (TDD, security scan, deploy check, code review, and more)
|
|
13
|
-
- ⚡ **
|
|
13
|
+
- ⚡ **17 commands** — workflow commands for all project operations
|
|
14
14
|
- 📋 **15 workflows** — pre-built orchestration flows including Spec-Driven Development (SDD)
|
|
15
15
|
- 🔄 **Persistent state** — resume exactly where you left off across sessions via `.planning/STATE.md`
|
|
16
16
|
- 🔀 **Parallel execution** — independent tasks run simultaneously in wave-structured batches
|
|
@@ -21,6 +21,7 @@ FlowDeck adds a structured, multi-agent development workflow to OpenCode. It coo
|
|
|
21
21
|
- 🪝 **Deep System Hooks** — context window monitoring, session idle summaries, shell environment injection, and structured compaction to prevent context loss
|
|
22
22
|
- 🌐 **Built-in MCPs** — Context7 (docs), Exa (web search), and Grep.app (code search) included and enabled by default
|
|
23
23
|
- 💎 **Ensemble Reasoning** — `/fd-council` tool for synthesized consensus from multiple specialized agents
|
|
24
|
+
- 🧠 **Persistent Memory** — SQLite-based memory stores tool executions, assistant messages, and session summaries. Agents can search past observations with `memory-search` tool.
|
|
24
25
|
|
|
25
26
|
---
|
|
26
27
|
|
|
@@ -68,53 +69,35 @@ State is written to `.planning/STATE.md` after each phase. Use `/fd-checkpoint`
|
|
|
68
69
|
| Command | Purpose |
|
|
69
70
|
|---------|---------|
|
|
70
71
|
| `/fd-new-project` | Bootstrap a new project with PROJECT.md, ROADMAP.md, STATE.md |
|
|
71
|
-
| `/fd-map-codebase` | Analyse and index the codebase into
|
|
72
|
-
| `/fd-discuss` | Pre-planning
|
|
73
|
-
| `/fd-plan` | Generate a wave-structured execution plan |
|
|
74
|
-
| `/fd-new-feature` | Implement a feature with
|
|
75
|
-
| `/fd-fix-bug` |
|
|
76
|
-
| `/fd-
|
|
77
|
-
| `/fd-
|
|
78
|
-
| `/fd-
|
|
79
|
-
| `/fd-
|
|
80
|
-
| `/fd-
|
|
81
|
-
| `/fd-
|
|
82
|
-
| `/fd-
|
|
83
|
-
| `/fd-
|
|
84
|
-
| `/fd-
|
|
85
|
-
| `/fd-
|
|
86
|
-
| `/fd-ask` | Smart agent dispatch — routes to the right agent by keyword |
|
|
72
|
+
| `/fd-map-codebase` | Analyse and index the codebase into structured `.codebase/` files |
|
|
73
|
+
| `/fd-discuss` | Pre-planning structured Q&A to capture decisions |
|
|
74
|
+
| `/fd-plan` | Generate a wave-structured execution plan from decisions |
|
|
75
|
+
| `/fd-new-feature` | Implement a feature with TDD discipline and parallel agents |
|
|
76
|
+
| `/fd-fix-bug` | Diagnose, fix, and verify a bug with regression test |
|
|
77
|
+
| `/fd-write-docs` | Explore APIs and generate accurate documentation |
|
|
78
|
+
| `/fd-deploy-check` | Pre-deploy safety check with test, security, and build verification |
|
|
79
|
+
| `/fd-status` | View project progress, roadmap, and workspace overview |
|
|
80
|
+
| `/fd-checkpoint` | Save a session checkpoint to STATE.md |
|
|
81
|
+
| `/fd-resume` | Reload STATE.md and PLAN.md to continue interrupted session |
|
|
82
|
+
| `/fd-reflect` | Post-session reflection or capture patterns as reusable skills |
|
|
83
|
+
| `/fd-multi-repo` | Multi-repo orchestration — list, add, remove, or status |
|
|
84
|
+
| `/fd-translate-intent` | Convert vague requests into ranked implementation options |
|
|
85
|
+
| `/fd-ask` | Smart agent dispatch — routes to specialist by keyword |
|
|
86
|
+
| `/fd-quick` | Focused task with automatic agent selection |
|
|
87
87
|
| `/fd-doctor` | Check FlowDeck installation and environment health |
|
|
88
|
-
| `/fd-council` | Ensemble-based reasoning from multiple specialized agents |
|
|
89
88
|
|
|
90
89
|
### Analysis commands
|
|
91
90
|
|
|
92
|
-
These umbrella commands consolidate
|
|
91
|
+
These umbrella commands consolidate multiple analysis modules into focused entry points:
|
|
93
92
|
|
|
94
93
|
| Command | Purpose |
|
|
95
94
|
|---------|---------|
|
|
96
|
-
| `/fd-
|
|
97
|
-
| `/fd-
|
|
98
|
-
| `/fd-
|
|
99
|
-
| `/fd-
|
|
95
|
+
| `/fd-translate-intent` | Convert vague requests into ranked implementation options with tradeoffs |
|
|
96
|
+
| `/fd-analyze-change` | Combined pre-change analysis (impact, blast radius, regression, test gaps, volatility) |
|
|
97
|
+
| `/fd-guarded-edit` | Edit gate returning auto-approve / confirm / review / block |
|
|
98
|
+
| `/fd-evaluate-risk` | Standalone risk assessment with confidence score |
|
|
100
99
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
# 1. Understand the intent
|
|
105
|
-
/fd-translate-intent --intent "make checkout faster"
|
|
106
|
-
|
|
107
|
-
# 2. Full pre-change analysis
|
|
108
|
-
/fd-analyze-change --change "add Redis cache for checkout queries"
|
|
109
|
-
|
|
110
|
-
# 3. Gate decision for the specific file
|
|
111
|
-
/fd-guarded-edit --file "src/checkout/query.ts" --change "add Redis cache layer"
|
|
112
|
-
|
|
113
|
-
# 4. Quantified risk estimate
|
|
114
|
-
/fd-evaluate-risk --change "add Redis cache for checkout queries" --file "src/checkout/query.ts"
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
The individual analysis commands (`/fd-impact-radar`, `/fd-blast-radius`, `/fd-regression-predict`, `/fd-test-gap`, `/fd-volatility-map`, `/fd-review-route`) remain available for single-purpose use. See [docs/command-migration.md](docs/command-migration.md) for the full migration guide.
|
|
100
|
+
See [docs/workflows.md](docs/workflows.md) for details on how analysis commands work.
|
|
118
101
|
|
|
119
102
|
---
|
|
120
103
|
|
|
@@ -127,7 +110,7 @@ The individual analysis commands (`/fd-impact-radar`, `/fd-blast-radius`, `/fd-r
|
|
|
127
110
|
| [docs/quick-start.md](docs/quick-start.md) | First 15 minutes — step-by-step walkthrough |
|
|
128
111
|
| [docs/configuration.md](docs/configuration.md) | `opencode.json`, project config, environment variables, plugin tools |
|
|
129
112
|
| [docs/USER_GUIDE.md](docs/USER_GUIDE.md) | Full agent and skill usage reference with examples |
|
|
130
|
-
| [docs/
|
|
113
|
+
| [docs/workflows.md](docs/workflows.md) | Command architecture and workflow patterns |
|
|
131
114
|
|
|
132
115
|
---
|
|
133
116
|
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type Session } from "../services/memory-store";
|
|
2
|
+
export declare function onSessionCreated(directory: string, contentSessionId: string, prompt?: string): Session;
|
|
3
|
+
export declare function onToolExecuted(contentSessionId: string, toolName: string, toolInput: Record<string, unknown>, toolResponse: string | null, directory: string): void;
|
|
4
|
+
export declare function onMessageUpdated(contentSessionId: string, role: string, content: string, directory: string): void;
|
|
5
|
+
export declare function onSessionCompact(contentSessionId: string, summary: string): void;
|
|
6
|
+
export declare function onSessionEnd(contentSessionId: string, lastMessage?: string): void;
|
|
7
|
+
export declare function getSessionContext(directory: string, contentSessionId: string): {
|
|
8
|
+
context: string;
|
|
9
|
+
previousSessions: Session[];
|
|
10
|
+
};
|
|
11
|
+
export declare function clearSession(contentSessionId: string): void;
|
|
12
|
+
export declare const memoryHook: {
|
|
13
|
+
onSessionCreated: typeof onSessionCreated;
|
|
14
|
+
onToolExecuted: typeof onToolExecuted;
|
|
15
|
+
onMessageUpdated: typeof onMessageUpdated;
|
|
16
|
+
onSessionCompact: typeof onSessionCompact;
|
|
17
|
+
onSessionEnd: typeof onSessionEnd;
|
|
18
|
+
getSessionContext: typeof getSessionContext;
|
|
19
|
+
clearSession: typeof clearSession;
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=memory-hook.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-hook.d.ts","sourceRoot":"","sources":["../../src/hooks/memory-hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,OAAO,EACb,MAAM,0BAA0B,CAAA;AAwBjC,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAYtG;AAED,wBAAgB,cAAc,CAC5B,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,SAAS,EAAE,MAAM,GAChB,IAAI,CAsBN;AAED,wBAAgB,gBAAgB,CAC9B,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,IAAI,CAyBN;AAED,wBAAgB,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAKhF;AAED,wBAAgB,YAAY,CAAC,gBAAgB,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CASjF;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG;IAC9E,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,OAAO,EAAE,CAAA;CAC5B,CAYA;AAED,wBAAgB,YAAY,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAE3D;AAED,eAAO,MAAM,UAAU;;;;;;;;CAQtB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator-guard-hook.d.ts","sourceRoot":"","sources":["../../src/hooks/orchestrator-guard-hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"orchestrator-guard-hook.d.ts","sourceRoot":"","sources":["../../src/hooks/orchestrator-guard-hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAsEH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,gBAAgB,CAAsB;IAE9C;;;OAGG;IACH,OAAO,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;IAa5D;;;OAGG;IACH,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;CASjD"}
|
|
@@ -3,11 +3,6 @@
|
|
|
3
3
|
* Logs FlowDeck planning progress whenever OpenCode's todo list is updated.
|
|
4
4
|
* Ported from ECC's todo.updated handler.
|
|
5
5
|
*/
|
|
6
|
-
type Todo = {
|
|
7
|
-
text: string;
|
|
8
|
-
done: boolean;
|
|
9
|
-
status?: string;
|
|
10
|
-
};
|
|
11
6
|
export declare function createTodoHook(client: {
|
|
12
7
|
app: {
|
|
13
8
|
log: (args: {
|
|
@@ -19,7 +14,6 @@ export declare function createTodoHook(client: {
|
|
|
19
14
|
}) => Promise<any>;
|
|
20
15
|
};
|
|
21
16
|
}): (event: {
|
|
22
|
-
todos
|
|
17
|
+
todos?: unknown;
|
|
23
18
|
}) => Promise<void>;
|
|
24
|
-
export {};
|
|
25
19
|
//# sourceMappingURL=todo-hook.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"todo-hook.d.ts","sourceRoot":"","sources":["../../src/hooks/todo-hook.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"todo-hook.d.ts","sourceRoot":"","sources":["../../src/hooks/todo-hook.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,wBAAgB,cAAc,CAAC,MAAM,EAAE;IAAE,GAAG,EAAE;QAAE,GAAG,EAAE,CAAC,IAAI,EAAE;YAAE,IAAI,EAAE;gBAAE,OAAO,EAAE,MAAM,CAAC;gBAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;gBAAC,OAAO,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;KAAE,CAAA;CAAE,IAG3J,OAAO;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,mBAezC"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAiGjD,QAAA,MAAM,MAAM,EAAE,MAqNb,CAAA;AAED,eAAe,MAAM,CAAA"}
|