@fluentcommerce/ai-skills 0.1.0 → 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.
Potentially problematic release.
This version of @fluentcommerce/ai-skills might be problematic. Click here for more details.
- package/README.md +866 -622
- package/bin/cli.mjs +2112 -1973
- package/content/cli/agents/fluent-cli/agent.json +149 -149
- package/content/cli/agents/fluent-cli.md +132 -132
- package/content/cli/skills/fluent-bootstrap/SKILL.md +214 -181
- package/content/cli/skills/fluent-cli-index/SKILL.md +1 -1
- package/content/cli/skills/fluent-cli-mcp-cicd/SKILL.md +117 -1
- package/content/cli/skills/fluent-cli-reference/SKILL.md +1040 -1031
- package/content/cli/skills/fluent-cli-retailer/SKILL.md +27 -2
- package/content/cli/skills/fluent-cli-settings/SKILL.md +21 -1
- package/content/cli/skills/fluent-connect/SKILL.md +937 -886
- package/content/cli/skills/fluent-module-deploy/SKILL.md +63 -5
- package/content/cli/skills/fluent-profile/SKILL.md +73 -0
- package/content/cli/skills/fluent-workflow/SKILL.md +360 -310
- package/content/dev/agents/fluent-backend-dev/AGENT.md +58 -0
- package/content/dev/agents/fluent-backend-dev/agent.json +69 -0
- package/content/dev/agents/fluent-backend-dev.md +287 -0
- package/content/dev/agents/fluent-dev/AGENT.md +98 -0
- package/content/dev/agents/fluent-dev/agent.json +14 -2
- package/content/dev/agents/fluent-dev.md +194 -525
- package/content/dev/agents/fluent-frontend-dev/AGENT.md +63 -0
- package/content/dev/agents/fluent-frontend-dev/agent.json +52 -0
- package/content/dev/agents/fluent-frontend-dev.md +323 -0
- package/content/dev/skills/fluent-archive/SKILL.md +234 -0
- package/content/dev/skills/fluent-build/SKILL.md +312 -192
- package/content/dev/skills/fluent-connection-analysis/SKILL.md +422 -386
- package/content/dev/skills/fluent-custom-code/SKILL.md +15 -9
- package/content/dev/skills/fluent-data-module-scaffold/SKILL.md +19 -2
- package/content/dev/skills/fluent-e2e-test/SKILL.md +501 -394
- package/content/dev/skills/fluent-event-api/SKILL.md +962 -945
- package/content/dev/skills/fluent-feature-explain/SKILL.md +680 -603
- package/content/dev/skills/fluent-feature-plan/PLAN_TEMPLATE.md +27 -2
- package/content/dev/skills/fluent-feature-plan/SKILL.md +478 -227
- package/content/dev/skills/fluent-feature-status/SKILL.md +335 -0
- package/content/dev/skills/fluent-feedback/SKILL.md +221 -0
- package/content/dev/skills/fluent-implementation-map/SKILL.md +644 -0
- package/content/dev/skills/fluent-job-batch/SKILL.md +10 -0
- package/content/dev/skills/fluent-module-scaffold/SKILL.md +64 -2
- package/content/dev/skills/fluent-module-validate/SKILL.md +778 -775
- package/content/dev/skills/fluent-mystique-analyze/SKILL.md +817 -0
- package/content/dev/skills/fluent-mystique-builder/COMPONENT_TEMPLATE.md +81 -0
- package/content/dev/skills/fluent-mystique-builder/README.md +63 -0
- package/content/dev/skills/fluent-mystique-builder/SKILL.md +1294 -0
- package/content/dev/skills/fluent-mystique-builder/components/INDEX.md +92 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.accordion.md +48 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.action.field.fulfilmentpack.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.action.field.multiparcel.md +21 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.action.field.returnitems.md +21 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.action.field.wavepick.md +21 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.action.inline.md +24 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.activity.entity.md +25 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.analytics.viz.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.attribute.column.md +111 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.attribute.json.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.attribute.jsoneditor.md +54 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.attribute.locationId.md +51 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.attribute.retailerId.md +52 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.button.bar.md +57 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.button.print.download.md +53 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.button.print.inline.compatibility.md +60 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.button.print.inline.md +53 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.button.print.md +24 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.button.print.pick.md +61 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.buttons.add.reject.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.card.attribute.md +73 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.card.attributes.grid.md +40 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.card.image.md +37 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.card.map.point.md +24 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.card.multi.md +79 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.card.product.md +27 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.chart.area.md +34 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.chart.area.wrapper.feed.md +98 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.chart.bar.md +52 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.chart.bar.wrapper.source.md +104 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.chart.gauge.md +28 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.chart.gauge.wrapper.threshold.md +118 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.chart.line.md +32 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.conditional.md +62 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.dashboard.threshold.md +65 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.daterange.wrapper.forwarder.md +56 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.drawer.button.md +21 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.event.detail.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.events.search.md +21 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.field.daterange.md +83 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.field.filterComplex.md +106 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.field.intrange.md +82 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.field.multistring.md +50 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.filterPanel.md +53 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.json.editor.md +22 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.json.viewer.md +21 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.list.customAction.md +79 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.list.md +116 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.list.wrapper.bppmetrics.md +69 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.list.wrapper.feed.md +65 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.list.wrapper.source.md +64 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.modal.button.addItem.md +60 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.modal.button.md +21 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.mutation.inline.md +88 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.mystique.collapsible.attributes.md +83 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.mystique.collapsible.text.md +33 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.mystique.link.md +30 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.order.itemDetails.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.order.shipmentDetails.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.page.filter.select.md +87 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.page.md +64 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.page.refresh.md +48 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.page.section.column.md +71 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.page.section.header.md +61 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.page.section.md +59 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.page.wizard.md +45 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.page.wizard.summary.md +56 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.progress.circular.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.provider.graphql.md +71 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.quantity.list.md +87 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.repeater.md +56 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.reports.ipuipc.md +54 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.return.rowExpansion.md +19 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.scanner.barcode.md +21 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.scanner.barcodeFilter.md +72 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.scanner.camera.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.settingForm.md +64 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.sourcing.profile.drawer.button.md +19 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.sourcing.profile.modal.button.md +64 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.sourcing.strategy.modal.button.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.stepper.md +20 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.tab.content.md +56 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.tabs.card.md +64 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.tabs.md +69 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.tile.metric.md +73 -0
- package/content/dev/skills/fluent-mystique-builder/components/fc.workflow.provider.md +77 -0
- package/content/dev/skills/fluent-mystique-builder/validate-docs.ps1 +260 -0
- package/content/dev/skills/fluent-mystique-scaffold/SKILL.md +1830 -0
- package/content/dev/skills/fluent-mystique-validate/SKILL.md +646 -0
- package/content/dev/skills/fluent-pre-deploy-check/SKILL.md +1144 -1108
- package/content/dev/skills/fluent-retailer-config/SKILL.md +1162 -1111
- package/content/dev/skills/fluent-rollback/SKILL.md +387 -0
- package/content/dev/skills/fluent-rule-scaffold/SKILL.md +515 -385
- package/content/dev/skills/fluent-scope-decompose/SKILL.md +1123 -1021
- package/content/dev/skills/fluent-session-audit-export/SKILL.md +880 -632
- package/content/dev/skills/fluent-session-summary/SKILL.md +320 -195
- package/content/dev/skills/fluent-settings/SKILL.md +160 -1
- package/content/dev/skills/fluent-source-onboard/SKILL.md +31 -3
- package/content/dev/skills/fluent-sourcing/SKILL.md +1185 -0
- package/content/dev/skills/fluent-system-monitoring/SKILL.md +771 -767
- package/content/dev/skills/fluent-test-data/SKILL.md +514 -513
- package/content/dev/skills/fluent-trace/SKILL.md +1169 -1143
- package/content/dev/skills/fluent-transition-api/SKILL.md +364 -346
- package/content/dev/skills/fluent-use-case-discover/SKILL.md +593 -0
- package/content/dev/skills/fluent-use-case-discover/SPEC_TEMPLATE.md +281 -0
- package/content/dev/skills/fluent-version-manage/SKILL.md +53 -2
- package/content/dev/skills/fluent-workflow-analyzer/SKILL.md +995 -959
- package/content/dev/skills/fluent-workflow-builder/SKILL.md +668 -319
- package/content/dev/skills/fluent-workflow-deploy/SKILL.md +480 -267
- package/content/dev/skills/fluent-workspace-tree/SKILL.md +281 -0
- package/content/mcp-extn/agents/fluent-mcp.md +133 -69
- package/content/mcp-extn/skills/fluent-mcp-tools/SKILL.md +812 -461
- package/content/mcp-official/agents/fluent-mcp-core.md +91 -91
- package/content/mcp-official/skills/fluent-mcp-core/SKILL.md +94 -94
- package/content/rfl/skills/fluent-rfl-assess/SKILL.md +172 -172
- package/docs/CAPABILITY_MAP.md +106 -77
- package/docs/DEPLOYMENT_PROMOTION_RUNBOOK.md +218 -0
- package/docs/DESIGN-implementation-map.md +698 -0
- package/docs/DEV_WORKFLOW.md +814 -802
- package/docs/FLOW_RUN.md +142 -142
- package/docs/GETTING_STARTED.md +427 -0
- package/docs/USE_CASES.md +909 -52
- package/metadata.json +184 -156
- package/package.json +3 -2
package/docs/USE_CASES.md
CHANGED
|
@@ -4,32 +4,191 @@ A scenario-based guide to everything your AI assistant can do after installing `
|
|
|
4
4
|
|
|
5
5
|
> **Prerequisites:** Skills installed (`npx @fluentcommerce/ai-skills install`), MCP servers configured (`mcp-setup --profile YOUR_PROFILE`), and workspace connected (`/fluent-connect`).
|
|
6
6
|
|
|
7
|
+
> **New here?** Start with the [Getting Started Guide](GETTING_STARTED.md) for a step-by-step walkthrough before diving into specific scenarios.
|
|
8
|
+
|
|
7
9
|
---
|
|
8
10
|
|
|
9
11
|
## Quick Reference: "I want to..."
|
|
10
12
|
|
|
11
13
|
| I want to... | Say this | Skill |
|
|
12
14
|
|---|---|---|
|
|
15
|
+
| Connect to a Fluent account | "Set up my workspace" | `/fluent-connect` |
|
|
16
|
+
| Create or switch CLI profiles | "Create a profile for production" | `/fluent-profile` |
|
|
13
17
|
| Understand how a feature works | "Explain how Home Delivery works" | `/fluent-feature-explain` |
|
|
18
|
+
| Gather requirements for a feature | "Help me define use cases for curbside pickup" | `/fluent-use-case-discover` |
|
|
19
|
+
| Plan a multi-artifact feature | "Plan the curbside pickup feature" | `/fluent-feature-plan` |
|
|
14
20
|
| Debug why an order is stuck | "Why is order HD-001 stuck in BOOKED?" | `/fluent-trace` |
|
|
15
|
-
| Build a new workflow from scratch | "Build an ORDER::
|
|
21
|
+
| Build a new workflow from scratch | "Build an ORDER::RETURN workflow" | `/fluent-workflow-builder` |
|
|
22
|
+
| Analyze workflow structure | "Analyze ORDER::HD for orphaned rulesets" | `/fluent-workflow-analyzer` |
|
|
23
|
+
| Map cross-entity dependencies | "Show me how ORDER::HD connects to FULFILMENT workflows" | `/fluent-connection-analysis` |
|
|
24
|
+
| Scaffold a new Java rule | "Create a rule called ValidateReturnWindow" | `/fluent-rule-scaffold` |
|
|
25
|
+
| Create a new extension module | "Scaffold a new module called hm-returns" | `/fluent-module-scaffold` |
|
|
26
|
+
| Create a data-only module | "Create a data module for reference data" | `/fluent-data-module-scaffold` |
|
|
27
|
+
| Onboard existing source into module format | "Refactor this code into a Fluent module" | `/fluent-source-onboard` |
|
|
28
|
+
| Check module health | "What modules are deployed? Are they valid?" | `/fluent-module-validate` |
|
|
29
|
+
| Analyze custom plugin source | "Analyze the custom code for this account" | `/fluent-custom-code` |
|
|
30
|
+
| Build and package a module | "Build the hm-extensions module" | `/fluent-build` |
|
|
31
|
+
| Bump module version | "Bump the module version to 1.4.0" | `/fluent-version-manage` |
|
|
32
|
+
| Run quality gates before deploying | "Run pre-deploy checks for hm-extensions" | `/fluent-pre-deploy-check` |
|
|
33
|
+
| Deploy a module | "Deploy my extension module to HM_TEST" | `/fluent-module-deploy` |
|
|
34
|
+
| Deploy a workflow | "Deploy ORDER::HD to HM_TEST" | `/fluent-workflow-deploy` |
|
|
16
35
|
| Run an end-to-end test | "Run an E2E test of the HD order flow" | `/fluent-e2e-test` |
|
|
17
|
-
| Check if we're ready for go-live | "Run an RFL assessment" | `/fluent-rfl-assess` |
|
|
18
36
|
| Create test data | "Create a test HD order" | `/fluent-test-data` |
|
|
19
|
-
|
|
|
20
|
-
| Deploy a module | "Deploy my extension module to HM_TEST" | `/fluent-module-deploy` |
|
|
37
|
+
| Check if we're ready for go-live | "Run an RFL assessment" | `/fluent-rfl-assess` |
|
|
21
38
|
| Audit settings | "What settings are missing for ORDER::HD?" | `/fluent-settings` |
|
|
39
|
+
| Create a location or network | "Set up a warehouse location for testing" | `/fluent-retailer-config` |
|
|
22
40
|
| Monitor event health | "Show me event failure rates for the last hour" | `/fluent-system-monitoring` |
|
|
23
|
-
| Set up a new account | "Bootstrap a new Fluent account" | `/fluent-bootstrap` |
|
|
24
|
-
| Analyze workflow structure | "Analyze ORDER::HD for orphaned rulesets" | `/fluent-workflow-analyzer` |
|
|
25
41
|
| See what actions are available | "What actions can I take on an ORDER in BOOKED status?" | `/fluent-transition-api` |
|
|
26
42
|
| Understand the event model | "How does event routing work in Fluent?" | `/fluent-event-api` |
|
|
27
|
-
|
|
|
28
|
-
|
|
|
29
|
-
|
|
|
30
|
-
|
|
|
31
|
-
|
|
|
32
|
-
|
|
|
43
|
+
| Batch ingest data | "Create a batch ingestion job for inventory positions" | `/fluent-job-batch` |
|
|
44
|
+
| Set up a new account | "Bootstrap a new Fluent account" | `/fluent-bootstrap` |
|
|
45
|
+
| Decompose a scope document | "Break this scope doc into tasks with dependencies" | `/fluent-scope-decompose` |
|
|
46
|
+
| Understand sourcing configuration | "How does sourcing work? What criteria are available?" | `/fluent-sourcing` |
|
|
47
|
+
| Configure a sourcing profile | "Create an HD sourcing profile with distance + stock criteria" | `/fluent-sourcing` |
|
|
48
|
+
| Debug sourcing decisions | "Why was this location selected for the order?" | `/fluent-sourcing` → `/fluent-trace` |
|
|
49
|
+
| Audit what skills and tools ran | "What skills ran this session? Show the decision chain" | `/fluent-session-summary` |
|
|
50
|
+
| Export audit trail for CI/CD | "Export a JSON audit trail with full provenance" | `/fluent-session-audit-export` |
|
|
51
|
+
| Map what's been built on an account | "What has been built here? Give me a feature inventory" | `/fluent-implementation-map` |
|
|
52
|
+
| Check feature status dashboard | "What features are in progress? Show the dashboard" | `/fluent-feature-status` |
|
|
53
|
+
| Archive a completed feature | "Archive the return-order feature" | `/fluent-archive` |
|
|
54
|
+
| Roll back a deployment | "Roll back ORDER::HD to the previous version" | `/fluent-rollback` |
|
|
55
|
+
| See the workspace structure | "Show me the workspace tree" | `/fluent-workspace-tree` |
|
|
56
|
+
| Build a Mystique UI page | "Build an order detail page" | `/fluent-mystique-builder` |
|
|
57
|
+
| Validate a manifest before deploying | "Validate the admin manifest" | `/fluent-mystique-validate` |
|
|
58
|
+
| Scaffold a custom SDK component | "Create a custom order tracker component" | `/fluent-mystique-scaffold` |
|
|
59
|
+
| Analyze an existing manifest | "What components are used in the admin app?" | `/fluent-mystique-analyze` |
|
|
60
|
+
| Build a full-stack feature (backend + UI) | "Build order tracking with a dashboard" | `/fluent-feature-plan` → backend → frontend |
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## How It Works: The Feature Lifecycle
|
|
65
|
+
|
|
66
|
+
When you build a feature with AI Skills, artifacts are organized in a predictable structure under your `accounts/<PROFILE>/` directory. This section explains what gets created, where it goes, and how the AI tracks progress across sessions.
|
|
67
|
+
|
|
68
|
+
### The Feature Directory
|
|
69
|
+
|
|
70
|
+
Every feature gets its own directory at `accounts/<PROFILE>/features/<slug>/` with up to four files:
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
features/
|
|
74
|
+
return-order/
|
|
75
|
+
status.json ← lifecycle tracker (always present, created first)
|
|
76
|
+
spec.md ← business requirements (from /fluent-use-case-discover)
|
|
77
|
+
plan.md ← implementation plan (from /fluent-feature-plan)
|
|
78
|
+
architecture.md ← reverse-engineered docs (from /fluent-feature-explain)
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
The **slug** is a short kebab-case name (e.g., `return-order`, `curbside-pickup`). Set once by the first skill that creates the directory. Not all files are always present — `spec.md` only exists if you ran requirements gathering, `architecture.md` only exists if you ran feature explain.
|
|
82
|
+
|
|
83
|
+
### status.json — How the AI Tracks Progress
|
|
84
|
+
|
|
85
|
+
Every feature directory has a `status.json` that the AI reads to know where you left off:
|
|
86
|
+
|
|
87
|
+
```json
|
|
88
|
+
{
|
|
89
|
+
"$schema": "feature-status-v1",
|
|
90
|
+
"feature": "return-order",
|
|
91
|
+
"retailer": "HM_TEST",
|
|
92
|
+
"status": "PLANNING",
|
|
93
|
+
"spec": "APPROVED",
|
|
94
|
+
"plan": "PENDING",
|
|
95
|
+
"planRevision": null,
|
|
96
|
+
"architecture": false,
|
|
97
|
+
"next": "/fluent-feature-plan"
|
|
98
|
+
}
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
**What the fields mean:**
|
|
102
|
+
|
|
103
|
+
| Field | What it tells the AI |
|
|
104
|
+
|-------|---------------------|
|
|
105
|
+
| `status` | Overall progress: `DISCOVERY` → `PLANNING` → `APPROVED` → `IN_PROGRESS` → `VERIFIED` → `ARCHIVED` |
|
|
106
|
+
| `spec` | Business spec state: `null` → `DRAFT` → `APPROVED` |
|
|
107
|
+
| `plan` | Implementation plan state: `null` → `PENDING` → `APPROVED` |
|
|
108
|
+
| `architecture` | Whether a feature architecture doc exists (`true`/`false`) |
|
|
109
|
+
| `next` | Which skill to run next — the AI reads this to continue automatically |
|
|
110
|
+
| `planRevision` | How many times the plan has been revised (increments on changes) |
|
|
111
|
+
|
|
112
|
+
**Why this matters to you:** If you close your IDE and come back tomorrow, the AI checks `status.json` and picks up exactly where you left off. You don't need to re-explain context.
|
|
113
|
+
|
|
114
|
+
### What Gets Created at Each Step
|
|
115
|
+
|
|
116
|
+
Here's the full lifecycle — what you say, what the AI does, and what appears on disk:
|
|
117
|
+
|
|
118
|
+
| Step | You say | Skill | Artifact created | Where |
|
|
119
|
+
|------|---------|-------|-----------------|-------|
|
|
120
|
+
| 1 | "Define use cases for return orders" | `/fluent-use-case-discover` | Business Spec | `features/return-order/spec.md` |
|
|
121
|
+
| 2 | "Plan the return order feature" | `/fluent-feature-plan` | 18-section plan with diagrams | `features/return-order/plan.md` |
|
|
122
|
+
| 3 | *(you review and say "approved")* | — | status.json updated | `plan: "APPROVED"` |
|
|
123
|
+
| 4 | "Scaffold the module" | `/fluent-module-scaffold` | Maven project skeleton | `SOURCE/fc-module-hm-returns/` |
|
|
124
|
+
| 5 | "Create the rules from the plan" | `/fluent-rule-scaffold` | Java classes + tests | `SOURCE/.../src/main/java/...` |
|
|
125
|
+
| 6 | "Build the workflow from the plan" | `/fluent-workflow-builder` | Workflow JSON | `workflows/HM_TEST/RETURN_ORDER__DEFAULT.json` |
|
|
126
|
+
| 7 | "Build the module" | `/fluent-build` | Compiled ZIP | `SOURCE/.../dist/fc-module-hm-returns-1.0.0.zip` |
|
|
127
|
+
| 8 | "Run pre-deploy checks" | `/fluent-pre-deploy-check` | Readiness report | `reports/pre-deploy/...` |
|
|
128
|
+
| 9 | "Deploy to HM_TEST" | `/fluent-module-deploy` | *(deployed remotely)* | Module + workflow installed on Fluent |
|
|
129
|
+
| 10 | "Run E2E test" | `/fluent-e2e-test` | Test results | Pass/fail per step in the plan's test plan |
|
|
130
|
+
|
|
131
|
+
### The Approval Gate
|
|
132
|
+
|
|
133
|
+
The AI never makes changes without asking. Here's how approval works:
|
|
134
|
+
|
|
135
|
+
1. **Plan is presented** — full markdown with architecture diagrams, rules inventory, risk assessment, deployment steps, test plan
|
|
136
|
+
2. **You review** — ask questions ("what does rule X do?"), request changes ("add error handling for empty carts"), or reject ("wrong approach")
|
|
137
|
+
3. **You approve** — say "yes", "approved", "go ahead", or "do it"
|
|
138
|
+
4. **Implementation begins** — the AI follows the approved plan step by step
|
|
139
|
+
|
|
140
|
+
You can also say **"just do it"** to skip the approval gate entirely (logged as auto-skip).
|
|
141
|
+
|
|
142
|
+
### Your Workspace After a Full Feature Build
|
|
143
|
+
|
|
144
|
+
After completing all steps for a return order feature, your directory looks like this:
|
|
145
|
+
|
|
146
|
+
```
|
|
147
|
+
accounts/HMDEV/
|
|
148
|
+
features/
|
|
149
|
+
return-order/
|
|
150
|
+
status.json ← status: VERIFIED
|
|
151
|
+
spec.md ← business requirements
|
|
152
|
+
plan.md ← approved implementation plan
|
|
153
|
+
SOURCE/
|
|
154
|
+
fc-module-hm-returns/
|
|
155
|
+
resources/module.json ← rule registrations
|
|
156
|
+
plugins/rules/hm-returns/
|
|
157
|
+
src/main/java/.../ValidateReturnWindow.java ← scaffolded rule
|
|
158
|
+
src/test/java/.../ValidateReturnWindowTest.java
|
|
159
|
+
dist/fc-module-hm-returns-1.0.0.zip ← built module
|
|
160
|
+
workflows/
|
|
161
|
+
HM_TEST/
|
|
162
|
+
RETURN_ORDER__DEFAULT.json ← workflow definition
|
|
163
|
+
workflow-context.json ← download metadata
|
|
164
|
+
reports/
|
|
165
|
+
module-validate/hm-returns.report.json ← validation report
|
|
166
|
+
analysis/
|
|
167
|
+
code/source-map.json ← rule-to-file mapping
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
### Non-Feature Tasks
|
|
171
|
+
|
|
172
|
+
Not everything is a "feature." One-off tasks (single rule scaffold, quick workflow edit, settings change) use `tasks/` instead:
|
|
173
|
+
|
|
174
|
+
```
|
|
175
|
+
accounts/HMDEV/
|
|
176
|
+
tasks/
|
|
177
|
+
2026-02-24-rule-scaffold-cancel-order.md
|
|
178
|
+
2026-02-24-settings-webhook-urls.md
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
These are standalone plan files — no `status.json`, no lifecycle tracking. They're for work that doesn't span multiple artifact types.
|
|
182
|
+
|
|
183
|
+
### Reading an Existing Feature (No Plan Needed)
|
|
184
|
+
|
|
185
|
+
If you want to **understand** a feature rather than **build** one, the AI produces an architecture document instead:
|
|
186
|
+
|
|
187
|
+
```
|
|
188
|
+
Explain how Home Delivery works end-to-end
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
This creates `features/home-delivery/architecture.md` — a read-only document with state machine diagrams, cross-entity sequence diagrams, rules tables, and settings dependencies. No planning gate, no implementation.
|
|
33
192
|
|
|
34
193
|
---
|
|
35
194
|
|
|
@@ -55,7 +214,9 @@ This produces a **Feature Architecture Document** with:
|
|
|
55
214
|
- Integration points (webhooks, scheduled events)
|
|
56
215
|
- Analysis confidence levels (HIGH/MEDIUM/LOW per rule)
|
|
57
216
|
|
|
58
|
-
Output saved to `accounts/<PROFILE>/
|
|
217
|
+
Output saved to `accounts/<PROFILE>/features/home-delivery/architecture.md`.
|
|
218
|
+
|
|
219
|
+
> **Artifact:** `accounts/<PROFILE>/features/home-delivery/architecture.md` — a Feature Architecture Document you can share with your team. Includes Mermaid diagrams that render in GitHub, Confluence, and most markdown viewers.
|
|
59
220
|
|
|
60
221
|
**Step 3: Analyze specific workflows**
|
|
61
222
|
```
|
|
@@ -99,43 +260,131 @@ Builds and sends the event (with dry-run preview first), then monitors the resul
|
|
|
99
260
|
|
|
100
261
|
---
|
|
101
262
|
|
|
102
|
-
## Scenario 3: "Build a
|
|
263
|
+
## Scenario 3: "Build a complete feature end-to-end"
|
|
264
|
+
|
|
265
|
+
**Situation:** Product asks for a new Return Order capability. You need new workflows, custom rules, settings, and deployment — the full lifecycle.
|
|
266
|
+
|
|
267
|
+
This is the flagship use case. The AI follows the mandatory chain: **requirements → plan → implement → build → deploy → test**. See [How It Works: The Feature Lifecycle](#how-it-works-the-feature-lifecycle) above for the full artifact map.
|
|
268
|
+
|
|
269
|
+
**Step 1: Gather requirements (if unclear)**
|
|
270
|
+
```
|
|
271
|
+
Help me define the use cases for a Return Order feature
|
|
272
|
+
```
|
|
273
|
+
The `/fluent-use-case-discover` wizard runs through 10 phases:
|
|
274
|
+
- Entity types involved (ORDER, RETURN_ORDER, FULFILMENT)
|
|
275
|
+
- Business rules (return window, item eligibility, refund policies)
|
|
276
|
+
- Status lifecycles per entity
|
|
277
|
+
- Integration points (WMS, ERP, payment gateway)
|
|
278
|
+
- Environment discovery (if profile connected)
|
|
279
|
+
|
|
280
|
+
Produces a **Business Spec** saved to `accounts/<PROFILE>/features/return-order/spec.md` with a completeness score.
|
|
281
|
+
|
|
282
|
+
**Step 2: Plan the feature**
|
|
283
|
+
```
|
|
284
|
+
Plan the Return Order feature
|
|
285
|
+
```
|
|
286
|
+
`/fluent-feature-plan` checks the spec (must be >= 75% completeness), then produces an 18-section plan:
|
|
287
|
+
- Architecture diagrams (Mermaid state machines + sequence diagrams)
|
|
288
|
+
- Workflow changes with before/after
|
|
289
|
+
- Rules inventory: NEW rules get pseudo-logic contracts, OOTB rules get prop configuration
|
|
290
|
+
- Settings, webhooks, cross-entity impacts
|
|
291
|
+
- Every artifact tagged as NEW / EXISTING / MODIFIED / REUSED / OOTB
|
|
292
|
+
- Deployment sequence, risk assessment, test plan
|
|
293
|
+
|
|
294
|
+
Plan saved to `accounts/<PROFILE>/features/return-order/plan.md`.
|
|
295
|
+
|
|
296
|
+
**Waits for your approval.** You can ask questions, request changes, or approve.
|
|
297
|
+
|
|
298
|
+
> **Your workspace after steps 1-2:**
|
|
299
|
+
> ```
|
|
300
|
+
> accounts/<PROFILE>/features/return-order/
|
|
301
|
+
> status.json ← status: PLANNING, plan: PENDING (or APPROVED after you approve)
|
|
302
|
+
> spec.md ← business requirements with completeness score
|
|
303
|
+
> plan.md ← 18-section implementation plan with Mermaid diagrams
|
|
304
|
+
> ```
|
|
305
|
+
> You can close your IDE here. When you come back, the AI reads `status.json`, sees `plan: "APPROVED"` and `next: "/fluent-rule-scaffold"`, and picks up at Step 3.
|
|
306
|
+
|
|
307
|
+
**Step 3: Scaffold the module (if new)**
|
|
308
|
+
```
|
|
309
|
+
Create a new module called hm-returns
|
|
310
|
+
```
|
|
311
|
+
`/fluent-module-scaffold` generates the full Maven project: POMs, `module.json`, directory structure, build scripts, `.gitignore`.
|
|
103
312
|
|
|
104
|
-
**
|
|
313
|
+
**Step 4: Scaffold custom rules**
|
|
314
|
+
```
|
|
315
|
+
Create the rules from the plan
|
|
316
|
+
```
|
|
317
|
+
`/fluent-rule-scaffold` generates each rule from the plan: Java class with SDK boilerplate, test skeleton, wired into `module.json`. Each rule emits `-> READY: <path>` and `-> NEXT: /fluent-build` on completion.
|
|
105
318
|
|
|
106
|
-
**Step
|
|
319
|
+
**Step 5: Build the workflow**
|
|
107
320
|
```
|
|
108
|
-
Build
|
|
321
|
+
Build the RETURN_ORDER::DEFAULT workflow from the plan
|
|
109
322
|
```
|
|
110
|
-
|
|
111
|
-
- State machine diagram (Mermaid `stateDiagram-v2`)
|
|
112
|
-
- Ruleset inventory (what triggers each transition)
|
|
113
|
-
- Settings dependencies
|
|
114
|
-
- Cross-entity interactions
|
|
115
|
-
- Risk assessment
|
|
323
|
+
`/fluent-workflow-builder` creates the workflow JSON with rulesets, states, triggers, and validates all references. Then `/fluent-workflow-analyzer` runs automatically to catch orphaned rulesets or trigger conflicts.
|
|
116
324
|
|
|
117
|
-
**
|
|
325
|
+
**Step 6: Build and package**
|
|
326
|
+
```
|
|
327
|
+
Build the module
|
|
328
|
+
```
|
|
329
|
+
`/fluent-build` bumps the version, runs `mvn clean install`, packages the ZIP. If compilation fails, reports the error and suggests fixes.
|
|
118
330
|
|
|
119
|
-
**Step
|
|
331
|
+
**Step 7: Pre-deploy quality gates**
|
|
120
332
|
```
|
|
121
|
-
|
|
333
|
+
Run pre-deploy checks
|
|
122
334
|
```
|
|
123
|
-
|
|
124
|
-
- Java rule class with Fluent SDK boilerplate
|
|
125
|
-
- Test class skeleton
|
|
126
|
-
- Wires the rule into `module.json`
|
|
335
|
+
`/fluent-pre-deploy-check` runs 26 gates across 8 phases: environment reachability, module structure, workflow validity, connection integrity, settings completeness, target environment checks, risk assessment, completeness verification. Reports READY or BLOCKED with specific blockers.
|
|
127
336
|
|
|
128
|
-
**Step
|
|
337
|
+
**Step 8: Deploy module + workflow**
|
|
129
338
|
```
|
|
130
|
-
|
|
339
|
+
Deploy everything to HM_TEST
|
|
131
340
|
```
|
|
132
|
-
|
|
341
|
+
`/fluent-module-deploy` installs the module ZIP. `/fluent-workflow-deploy` uploads the workflow JSON (tries MCP first, falls back to REST API). Both verify the deployed version matches.
|
|
133
342
|
|
|
134
|
-
**Step
|
|
343
|
+
**Step 9: End-to-end test**
|
|
135
344
|
```
|
|
136
|
-
Run
|
|
345
|
+
Run the E2E test from the plan
|
|
137
346
|
```
|
|
138
|
-
|
|
347
|
+
`/fluent-e2e-test` creates test entities dynamically (using `/fluent-test-data` discovery), fires events at each step, polls for status transitions, and reports pass/fail per step. On failure, automatically traces the failed event to find the root cause.
|
|
348
|
+
|
|
349
|
+
**Step 10: Fix loop (if needed)**
|
|
350
|
+
|
|
351
|
+
If a test fails, the agent diagnoses the issue (wrong prop value? missing setting? rule bug?), applies the fix, rebuilds, redeploys, and re-tests. This loop continues until all tests pass or an unresolvable blocker is hit.
|
|
352
|
+
|
|
353
|
+
> **Your workspace after all steps:**
|
|
354
|
+
> ```
|
|
355
|
+
> accounts/<PROFILE>/
|
|
356
|
+
> features/return-order/
|
|
357
|
+
> status.json ← status: VERIFIED, plan: APPROVED
|
|
358
|
+
> spec.md ← business requirements
|
|
359
|
+
> plan.md ← approved implementation plan
|
|
360
|
+
> SOURCE/fc-module-hm-returns/
|
|
361
|
+
> resources/module.json ← rule registrations
|
|
362
|
+
> plugins/rules/hm-returns/src/main/java/
|
|
363
|
+
> .../ValidateReturnWindow.java ← custom rule
|
|
364
|
+
> .../ProcessReturnRefund.java ← custom rule
|
|
365
|
+
> plugins/rules/hm-returns/src/test/java/
|
|
366
|
+
> .../ValidateReturnWindowTest.java ← test skeleton
|
|
367
|
+
> dist/fc-module-hm-returns-1.0.0.zip ← deployed module
|
|
368
|
+
> workflows/<RETAILER_REF>/
|
|
369
|
+
> RETURN_ORDER__DEFAULT.json ← deployed workflow
|
|
370
|
+
> reports/module-validate/hm-returns.report.json
|
|
371
|
+
> ```
|
|
372
|
+
|
|
373
|
+
**Common issues:**
|
|
374
|
+
- "PLAN_REQUIRED" — you tried to scaffold rules without approving the plan first. Say "approved" to continue.
|
|
375
|
+
- "PREREQ_MISSING" — the module doesn't exist yet. Run `/fluent-module-scaffold` first.
|
|
376
|
+
- Build fails — check the error message. Common causes: missing imports, wrong SDK version, typo in `@ParamString` name.
|
|
377
|
+
- Deploy blocked — pre-deploy check found issues. Run `/fluent-pre-deploy-check` to see what's blocking.
|
|
378
|
+
|
|
379
|
+
### Resuming This Feature
|
|
380
|
+
|
|
381
|
+
If you close your IDE at any point and come back later:
|
|
382
|
+
|
|
383
|
+
```
|
|
384
|
+
"Continue working on return orders"
|
|
385
|
+
```
|
|
386
|
+
|
|
387
|
+
The AI reads `features/return-order/status.json`, sees the current state and `next` skill, and picks up exactly where you left off. No need to re-explain context.
|
|
139
388
|
|
|
140
389
|
---
|
|
141
390
|
|
|
@@ -156,11 +405,20 @@ Analyzes:
|
|
|
156
405
|
|
|
157
406
|
Produces a scored report with risk ratings and prioritized recommendations.
|
|
158
407
|
|
|
408
|
+
The RFL assessment produces a scored report covering:
|
|
409
|
+
- Workflow health score (0-100)
|
|
410
|
+
- Code quality score (0-100)
|
|
411
|
+
- Settings completeness score (0-100)
|
|
412
|
+
- Integration risk rating (LOW/MEDIUM/HIGH/CRITICAL)
|
|
413
|
+
- Prioritized remediation recommendations
|
|
414
|
+
|
|
415
|
+
Each finding includes severity, affected entity, and a specific fix recommendation.
|
|
416
|
+
|
|
159
417
|
**Step 2: Audit settings**
|
|
160
418
|
```
|
|
161
419
|
Audit all settings for ORDER::HD — find any gaps
|
|
162
420
|
```
|
|
163
|
-
Cross-references workflow rule parameters against deployed settings. Flags missing settings, wrong value formats, and cascading scope issues.
|
|
421
|
+
Cross-references workflow rule parameters against deployed settings. Flags missing settings, wrong value formats, and cascading scope issues (RETAILER vs ACCOUNT).
|
|
164
422
|
|
|
165
423
|
**Step 3: Check event health**
|
|
166
424
|
```
|
|
@@ -172,6 +430,12 @@ Queries Prometheus metrics or Event API, runs anomaly detection, and reports:
|
|
|
172
430
|
- PENDING queue buildup
|
|
173
431
|
- Single-event dominance (possible runaway loops)
|
|
174
432
|
|
|
433
|
+
**Step 4: Validate cross-entity connections**
|
|
434
|
+
```
|
|
435
|
+
Run connection analysis on ORDER::HD with --validate against a real order
|
|
436
|
+
```
|
|
437
|
+
Compares the static workflow paths (what should happen) against actual runtime events for a real entity (what did happen). Shows gaps, unexpected events, and timing analysis. Flags any rulesets that never fired in production.
|
|
438
|
+
|
|
175
439
|
---
|
|
176
440
|
|
|
177
441
|
## Scenario 5: "Set up a fresh environment for testing"
|
|
@@ -267,43 +531,103 @@ Run connection analysis on ORDER::HD — check for broken cross-entity links
|
|
|
267
531
|
```
|
|
268
532
|
Maps all internal, cross-entity, and cross-workflow connections. Flags any rulesets that emit events with no matching triggers.
|
|
269
533
|
|
|
270
|
-
**Step 3:
|
|
534
|
+
**Step 3: Run pre-deploy quality gates**
|
|
271
535
|
```
|
|
272
|
-
|
|
536
|
+
Run pre-deploy checks for this workflow change
|
|
273
537
|
```
|
|
274
|
-
|
|
538
|
+
`/fluent-pre-deploy-check` validates: environment is reachable, workflow structure is valid, no orphaned rulesets, all rule references resolve to deployed modules, settings exist for referenced keys. Reports READY or BLOCKED.
|
|
275
539
|
|
|
276
|
-
|
|
540
|
+
If BLOCKED, shows exactly what to fix (e.g., "Rule `ACCT.returns.ValidateReturnWindow` not found in any deployed module — deploy the module first").
|
|
541
|
+
|
|
542
|
+
**Step 4: Deploy the workflow**
|
|
543
|
+
```
|
|
544
|
+
Deploy ORDER::HD to HM_TEST
|
|
545
|
+
```
|
|
546
|
+
`/fluent-workflow-deploy` uploads the workflow. Tries MCP `workflow.upload` first; if that fails (auth issue, size limit), falls back to REST API with automatic token acquisition. Verifies the deployed version matches the uploaded version.
|
|
547
|
+
|
|
548
|
+
**Step 5: Verify with E2E test**
|
|
277
549
|
```
|
|
278
550
|
Run an E2E test of the HD flow to verify the deployment
|
|
279
551
|
```
|
|
280
|
-
Exercises the deployed workflow end-to-end and reports pass/fail.
|
|
552
|
+
Exercises the deployed workflow end-to-end and reports pass/fail. On failure, traces the specific event to pinpoint whether the new workflow change caused the issue.
|
|
553
|
+
|
|
554
|
+
**Common issues:**
|
|
555
|
+
- Diff shows "removed rulesets" — HIGH risk. Verify these rulesets are truly unused before deploying. Run connection analysis to check for incoming triggers from other workflows.
|
|
556
|
+
- Pre-deploy reports BLOCKED on rule references — the module containing those rules isn't deployed yet. Deploy the module first.
|
|
557
|
+
- Workflow upload fails with 413 — workflow JSON exceeds size limit. The skill automatically falls back to REST API upload.
|
|
281
558
|
|
|
282
559
|
---
|
|
283
560
|
|
|
284
561
|
## Scenario 9: "Batch ingest inventory data"
|
|
285
562
|
|
|
286
|
-
**Situation:** You need to load inventory positions
|
|
563
|
+
**Situation:** You need to load 10,000 inventory positions from an external system.
|
|
287
564
|
|
|
565
|
+
**Step 1: Create the batch job**
|
|
288
566
|
```
|
|
289
567
|
Create a batch ingestion job for inventory positions
|
|
290
568
|
```
|
|
291
|
-
|
|
569
|
+
`/fluent-job-batch` walks through the setup:
|
|
570
|
+
- Creates a JOB entity scoped to INVENTORY_POSITION
|
|
571
|
+
- Confirms the target catalogue and location refs
|
|
572
|
+
|
|
573
|
+
**Step 2: Send records in batches**
|
|
574
|
+
```
|
|
575
|
+
Send the inventory records — here's the CSV/JSON data
|
|
576
|
+
```
|
|
577
|
+
Splits records into batches (default 100 per batch), sends each via `batch.send`, tracks progress. Shows a running count: "Sent 3,200 / 10,000 records (32%)".
|
|
578
|
+
|
|
579
|
+
**Step 3: Monitor job status**
|
|
580
|
+
```
|
|
581
|
+
Check the job status
|
|
582
|
+
```
|
|
583
|
+
Polls `batch.status` and `batch.batchStatus` to show:
|
|
584
|
+
- Overall job progress (PENDING → IN_PROGRESS → COMPLETE)
|
|
585
|
+
- Per-batch results (success count, error count, error details)
|
|
586
|
+
- Records that failed with specific validation errors
|
|
587
|
+
|
|
588
|
+
**Step 4: Retry failures**
|
|
589
|
+
```
|
|
590
|
+
Show me the failed records and retry them
|
|
591
|
+
```
|
|
592
|
+
Fetches `batch.results` for failed batches, shows the specific records and error messages (e.g., "Location ref WAREHOUSE_99 not found"), and offers to re-send corrected records.
|
|
593
|
+
|
|
594
|
+
**Common failure patterns:**
|
|
595
|
+
| Error | Cause | Fix |
|
|
596
|
+
|---|---|---|
|
|
597
|
+
| "Entity not found" | Location or catalogue ref doesn't exist | Create the entity first via `/fluent-retailer-config` |
|
|
598
|
+
| "Duplicate ref" | Record already exists | Use update mode or skip duplicates |
|
|
599
|
+
| "Validation error" | Missing required fields | Fix the source data and resend |
|
|
600
|
+
| "Rate limited" | Too many concurrent batches | Reduce batch size or add delays |
|
|
292
601
|
|
|
293
602
|
---
|
|
294
603
|
|
|
295
604
|
## Scenario 10: "Decompose a scope document into tasks"
|
|
296
605
|
|
|
297
|
-
**Situation:** You have a structured scope document (ADD format) and need an executable task plan.
|
|
606
|
+
**Situation:** You have a structured scope document (ADD format) describing a new feature and need an executable task plan before writing any code.
|
|
298
607
|
|
|
608
|
+
**Step 1: Feed the scope document**
|
|
299
609
|
```
|
|
300
610
|
Decompose this scope document into tasks with dependencies
|
|
301
611
|
```
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
-
|
|
305
|
-
-
|
|
306
|
-
-
|
|
612
|
+
Provide the scope doc (paste it, or point to a file). `/fluent-scope-decompose` parses it and produces:
|
|
613
|
+
|
|
614
|
+
- **Ordered task list** with IDs (T-001, T-002, ...) and descriptions
|
|
615
|
+
- **Dependency DAG** — which tasks block which (e.g., T-003 depends on T-001 and T-002)
|
|
616
|
+
- **Skill mappings** — which skill handles each task (e.g., T-001 → `/fluent-module-scaffold`, T-003 → `/fluent-rule-scaffold`)
|
|
617
|
+
- **Decision classifications** — SCAFFOLD (new), EXTEND (modify existing), SOURCE_ONBOARD (restructure), CONFIGURE (settings/data)
|
|
618
|
+
- **Ambiguity flags** — where the scope is unclear and needs clarification ("T-005: scope says 'custom validation' but doesn't specify what fields to validate")
|
|
619
|
+
|
|
620
|
+
**Step 2: Resolve ambiguities**
|
|
621
|
+
```
|
|
622
|
+
For T-005, validate that the return is within 30 days of order completion
|
|
623
|
+
```
|
|
624
|
+
Clarification updates the task and clears the ambiguity flag.
|
|
625
|
+
|
|
626
|
+
**Step 3: Generate the feature plan**
|
|
627
|
+
```
|
|
628
|
+
Now generate a feature plan from these tasks
|
|
629
|
+
```
|
|
630
|
+
The task list feeds directly into `/fluent-feature-plan`, which produces the full 18-section plan with architecture diagrams, rules inventory, deployment sequence, and test plan. Each plan section cross-references the task IDs.
|
|
307
631
|
|
|
308
632
|
---
|
|
309
633
|
|
|
@@ -355,6 +679,403 @@ After approval:
|
|
|
355
679
|
|
|
356
680
|
---
|
|
357
681
|
|
|
682
|
+
## Scenario 12: "Gather requirements before building"
|
|
683
|
+
|
|
684
|
+
**Situation:** Product says "we need curbside pickup" but there are no structured requirements, use cases, or entity definitions.
|
|
685
|
+
|
|
686
|
+
```
|
|
687
|
+
Help me define the use cases for curbside pickup
|
|
688
|
+
```
|
|
689
|
+
|
|
690
|
+
`/fluent-use-case-discover` runs an interactive wizard through 10 phases:
|
|
691
|
+
|
|
692
|
+
| Phase | What happens | Output |
|
|
693
|
+
|---|---|---|
|
|
694
|
+
| 1. Scope | Define the feature boundary — what's in, what's out | Scope statement |
|
|
695
|
+
| 2. Actors | Identify who interacts (customer, store staff, OMS, WMS) | Actor registry |
|
|
696
|
+
| 3. Use cases | Walk through each user journey step by step | Structured use case list |
|
|
697
|
+
| 4. Environment discovery | Query live environment for existing workflows, rules, entity types (requires connected profile) | Available infrastructure |
|
|
698
|
+
| 5. Entity model | Define entities, subtypes, and relationships | Entity relationship diagram |
|
|
699
|
+
| 6. Status lifecycles | Map statuses per entity with allowed transitions | State machine diagrams |
|
|
700
|
+
| 7. Business rules | Capture validation rules, constraints, edge cases | Rules inventory |
|
|
701
|
+
| 8. Integration points | Webhooks, external systems, scheduled jobs | Integration map |
|
|
702
|
+
| 9. Settings | Required configuration keys and values | Settings inventory |
|
|
703
|
+
| 10. Gap analysis | Compare requirements against existing environment | Completeness score |
|
|
704
|
+
|
|
705
|
+
**Output:** A Business Spec saved to `accounts/<PROFILE>/features/curbside-pickup/spec.md` with a completeness score (0-100%). Specs scoring >= 75% can proceed directly to `/fluent-feature-plan`.
|
|
706
|
+
|
|
707
|
+
> **Offline limitation:** If no Fluent profile is connected, Phase 4 (environment discovery) is skipped. The spec may contain assumptions. Connect a profile via `/fluent-profile` before running the wizard for best results.
|
|
708
|
+
|
|
709
|
+
---
|
|
710
|
+
|
|
711
|
+
## Scenario 13: "Validate cross-entity workflow dependencies"
|
|
712
|
+
|
|
713
|
+
**Situation:** Your ORDER::HD workflow sends events that trigger FULFILMENT and FULFILMENT_OPTIONS workflows. You need to verify all the cross-entity connections are wired correctly.
|
|
714
|
+
|
|
715
|
+
**Step 1: Map static connections**
|
|
716
|
+
```
|
|
717
|
+
Run connection analysis on ORDER::HD
|
|
718
|
+
```
|
|
719
|
+
`/fluent-connection-analysis` maps:
|
|
720
|
+
- **Internal connections** — rulesets within ORDER::HD that SendEvent to other ORDER::HD rulesets
|
|
721
|
+
- **Cross-entity connections** — SendEvent calls targeting FULFILMENT, FULFILMENT_OPTIONS, ARTICLE entities
|
|
722
|
+
- **Cross-workflow connections** — events that leave ORDER::HD and enter another workflow
|
|
723
|
+
- **Orphaned rulesets** — rulesets with no incoming trigger
|
|
724
|
+
- **Dead-end events** — SendEvent calls with no matching target ruleset
|
|
725
|
+
|
|
726
|
+
Output includes Mermaid flowcharts showing the full event graph across workflows.
|
|
727
|
+
|
|
728
|
+
**Step 2: Compare against runtime (--validate)**
|
|
729
|
+
```
|
|
730
|
+
Run connection analysis on ORDER::HD --validate HD-12345 --entity-type ORDER
|
|
731
|
+
```
|
|
732
|
+
Compares the static workflow paths against actual runtime events for a real entity. Shows:
|
|
733
|
+
- **Expected but not fired** — rulesets that should have triggered but didn't (possible bug)
|
|
734
|
+
- **Fired but not expected** — events that occurred outside the static model (dynamic behavior, scheduled events)
|
|
735
|
+
- **Timing analysis** — how long each transition took
|
|
736
|
+
- **Cross-entity propagation** — traces events across ORDER → FULFILMENT → FULFILMENT_OPTIONS
|
|
737
|
+
|
|
738
|
+
This is the most thorough validation — it proves the workflow works as designed for real entities.
|
|
739
|
+
|
|
740
|
+
---
|
|
741
|
+
|
|
742
|
+
## Scenario 14: "Bump version and prepare a release"
|
|
743
|
+
|
|
744
|
+
**Situation:** You've finished development and need to version, build, validate, and deploy a module.
|
|
745
|
+
|
|
746
|
+
**Step 1: Check current version**
|
|
747
|
+
```
|
|
748
|
+
What version is the hm-extensions module?
|
|
749
|
+
```
|
|
750
|
+
`/fluent-version-manage` reads the version from `module.json`, `pom.xml` (parent + child), and CHANGELOG. Reports any inconsistencies (e.g., POM says 1.3.0 but module.json says 1.2.9).
|
|
751
|
+
|
|
752
|
+
**Step 2: Bump the version**
|
|
753
|
+
```
|
|
754
|
+
Bump hm-extensions to 1.4.0
|
|
755
|
+
```
|
|
756
|
+
Updates ALL version references in sync:
|
|
757
|
+
- `plugins/pom.xml` (parent version)
|
|
758
|
+
- `plugins/rules/<module>/pom.xml` (module + parent version)
|
|
759
|
+
- `resources/module.json` (version field)
|
|
760
|
+
- `CHANGELOG.md` (moves [Unreleased] entries to [1.4.0])
|
|
761
|
+
|
|
762
|
+
**Step 3: Build**
|
|
763
|
+
```
|
|
764
|
+
Build it
|
|
765
|
+
```
|
|
766
|
+
`/fluent-build` runs `mvn clean install`, packages the ZIP, verifies the output artifact.
|
|
767
|
+
|
|
768
|
+
**Step 4: Pre-deploy gates**
|
|
769
|
+
```
|
|
770
|
+
Run pre-deploy checks
|
|
771
|
+
```
|
|
772
|
+
26 quality gates across 8 phases. If all pass → READY. If any critical gate fails → BLOCKED with specific fix instructions.
|
|
773
|
+
|
|
774
|
+
**Step 5: Deploy**
|
|
775
|
+
```
|
|
776
|
+
Deploy to HM_TEST
|
|
777
|
+
```
|
|
778
|
+
Module install + post-deploy verification.
|
|
779
|
+
|
|
780
|
+
**Common issues:**
|
|
781
|
+
- Version mismatch — `module.json` says 1.4.0 but `pom.xml` still says 1.3.0. Run `/fluent-version-manage` to sync all version references.
|
|
782
|
+
- Build fails after version bump — stale `dist/` artifacts from the old version. Clean build (`mvn clean install`) resolves this.
|
|
783
|
+
- Pre-deploy gate fails on "module already deployed at same version" — bump the version again or use a `-SNAPSHOT` suffix for testing.
|
|
784
|
+
|
|
785
|
+
---
|
|
786
|
+
|
|
787
|
+
## Scenario 15: "Audit what happened in this session"
|
|
788
|
+
|
|
789
|
+
**Situation:** You've been working for an hour — scaffolded rules, edited workflows, deployed a module, ran tests. Now you need to know exactly what changed and what tools were called.
|
|
790
|
+
|
|
791
|
+
**Quick summary:**
|
|
792
|
+
```
|
|
793
|
+
What did we change this session?
|
|
794
|
+
```
|
|
795
|
+
`/fluent-session-summary` shows three tables:
|
|
796
|
+
|
|
797
|
+
**Skill Invocations:**
|
|
798
|
+
| # | Skill | Gate | Outcome | Next |
|
|
799
|
+
|---|---|---|---|---|
|
|
800
|
+
| 1 | fluent-rule-scaffold | PASS | completed | fluent-build |
|
|
801
|
+
| 2 | fluent-build | PASS | completed | fluent-pre-deploy-check |
|
|
802
|
+
| 3 | fluent-pre-deploy-check | — | completed (READY) | fluent-module-deploy |
|
|
803
|
+
| 4 | fluent-module-deploy | PASS | completed | fluent-e2e-test |
|
|
804
|
+
|
|
805
|
+
**MCP Tool Calls:**
|
|
806
|
+
| # | Tool | Target | Write? | Outcome | Skill |
|
|
807
|
+
|---|---|---|---|---|---|
|
|
808
|
+
| 1 | entity.create | ORDER/E2E_HD_001 | Yes | ok | fluent-e2e-test |
|
|
809
|
+
| 2 | event.send | ORDER/E2E_HD_001 | Yes | ok | fluent-e2e-test |
|
|
810
|
+
| 3 | test.assert | ORDER/E2E_HD_001 status=BOOKED | No | ok | fluent-e2e-test |
|
|
811
|
+
|
|
812
|
+
**Changes:**
|
|
813
|
+
| # | Action | File/Entity | Details |
|
|
814
|
+
|---|---|---|---|
|
|
815
|
+
| 1 | CREATE | src/.../ValidateReturnWindow.java | New rule class |
|
|
816
|
+
| 2 | MODIFY | resources/module.json | Registered ValidateReturnWindow |
|
|
817
|
+
| 3 | DEPLOY | fc-module-hm-returns 1.4.0 | Installed to HM_TEST |
|
|
818
|
+
|
|
819
|
+
**Machine-readable export:**
|
|
820
|
+
```
|
|
821
|
+
Export a JSON audit trail
|
|
822
|
+
```
|
|
823
|
+
`/fluent-session-audit-export` writes a JSON file to `accounts/<PROFILE>/sessions/` with:
|
|
824
|
+
- `skillInvocations[]` — full decision chain with gate results, handoff signals, cross-references
|
|
825
|
+
- `toolCalls[]` — every MCP tool call with target, outcome, triggering skill
|
|
826
|
+
- `changes[]` — every state mutation with rollback commands
|
|
827
|
+
- `decisionTrail[]` — explicit branch decisions with rationale and confidence
|
|
828
|
+
- `compliance` — scope traceability matrix, task completion status
|
|
829
|
+
|
|
830
|
+
The JSON is designed for CI/CD consumption — parse it as a deployment gate, feed it into Jira work logs, or attach to Confluence release pages.
|
|
831
|
+
|
|
832
|
+
> **Tip:** Run `/fluent-session-summary` regularly during long sessions. The AI tracks changes as they happen — it's easier to review incrementally than reconstruct everything at the end.
|
|
833
|
+
|
|
834
|
+
---
|
|
835
|
+
|
|
836
|
+
## Scenario 16: "Create a data module (no Java)"
|
|
837
|
+
|
|
838
|
+
**Situation:** You need to deploy reference data, workflow fragments, or configuration assets — no custom Java rules.
|
|
839
|
+
|
|
840
|
+
```
|
|
841
|
+
Create a data module called hm-reference-data
|
|
842
|
+
```
|
|
843
|
+
`/fluent-data-module-scaffold` generates:
|
|
844
|
+
- `module.json` with module metadata (no `rules` array)
|
|
845
|
+
- `assets/` directory structure for workflows, settings, and data files
|
|
846
|
+
- `config/` template for module configuration
|
|
847
|
+
- Build script that packages the module ZIP without Maven compilation
|
|
848
|
+
|
|
849
|
+
Data modules are lighter than extension modules — no POMs, no Java source, no test skeletons. They're deployed the same way (`fluent module install`) but only carry assets.
|
|
850
|
+
|
|
851
|
+
---
|
|
852
|
+
|
|
853
|
+
## Scenario 17: "Map what's been built on this account"
|
|
854
|
+
|
|
855
|
+
**Situation:** You're onboarding to a new Fluent Commerce account and need to understand the full implementation — what features exist, how they connect, and where the gaps are.
|
|
856
|
+
|
|
857
|
+
```
|
|
858
|
+
What has been built here? Give me a feature inventory
|
|
859
|
+
```
|
|
860
|
+
|
|
861
|
+
`/fluent-implementation-map` runs a 5-phase analysis:
|
|
862
|
+
|
|
863
|
+
1. **Inventory Collection** — queries workflows (`workflow.list`), custom rules (`plugin.list`), settings (`graphql.query`), and local source code to build the raw inventory
|
|
864
|
+
2. **Feature Identification** — clusters workflows into logical features using subtype alignment, cross-entity events, shared custom rules, and naming conventions
|
|
865
|
+
3. **Flow Mapping** — traces cross-feature dependencies and generates Mermaid diagrams (feature dependency graph + entity lifecycle sequence)
|
|
866
|
+
4. **Gap Analysis** — identifies missing workflows, orphaned rules, webhook health issues, dead-end risks, and OOTB coverage gaps
|
|
867
|
+
5. **Report Generation** — produces the master document plus per-feature summaries
|
|
868
|
+
|
|
869
|
+
**Output at `accounts/<PROFILE>/analysis/implementation-map/`:**
|
|
870
|
+
|
|
871
|
+
```
|
|
872
|
+
implementation-map.md ← Master document with executive summary, feature table, diagrams
|
|
873
|
+
inventory.json ← Machine-readable inventory (workflows, features, gaps, modules)
|
|
874
|
+
gaps.md ← All identified gaps with severity and remediation
|
|
875
|
+
features/
|
|
876
|
+
home-delivery.md ← Per-feature summary with workflows, rules, webhooks
|
|
877
|
+
click-collect.md
|
|
878
|
+
inventory-management.md
|
|
879
|
+
...
|
|
880
|
+
diagrams/
|
|
881
|
+
feature-dependency.mmd ← Cross-feature dependency flowchart
|
|
882
|
+
entity-flow.mmd ← Entity lifecycle sequence diagram
|
|
883
|
+
```
|
|
884
|
+
|
|
885
|
+
Each feature gets a **customisation depth score** (0-4: OOTB → Configured → Extended → Custom → Bespoke) and a **confidence rating** (HIGH/MEDIUM/LOW) based on evidence quality.
|
|
886
|
+
|
|
887
|
+
Read-only — no planning gate, no environment changes. Great as a first step before `/fluent-feature-explain` on specific features.
|
|
888
|
+
|
|
889
|
+
---
|
|
890
|
+
|
|
891
|
+
## Scenario 18: "Check feature status across the workspace"
|
|
892
|
+
|
|
893
|
+
**Situation:** You have multiple features in various lifecycle stages and need a dashboard view.
|
|
894
|
+
|
|
895
|
+
```
|
|
896
|
+
What features are in progress? Show the dashboard
|
|
897
|
+
```
|
|
898
|
+
|
|
899
|
+
`/fluent-feature-status` scans all `accounts/<PROFILE>/features/*/status.json` files and presents a consolidated table:
|
|
900
|
+
|
|
901
|
+
| Feature | Retailer | Status | Spec | Plan | Rev | Next Step |
|
|
902
|
+
|---------|----------|--------|------|------|-----|-----------|
|
|
903
|
+
| curbside-pickup | HM_TEST | IN_PROGRESS | APPROVED | APPROVED | 2 | /fluent-build |
|
|
904
|
+
| return-order | HM_TEST | VERIFIED | APPROVED | APPROVED | 1 | — |
|
|
905
|
+
| loyalty-points | HM_TEST | PLANNING | APPROVED | DRAFT | 1 | /fluent-feature-plan |
|
|
906
|
+
|
|
907
|
+
**Filtering:** Ask for specific states:
|
|
908
|
+
```
|
|
909
|
+
Show only IN_PROGRESS features
|
|
910
|
+
```
|
|
911
|
+
|
|
912
|
+
**Attention items** are highlighted automatically:
|
|
913
|
+
- Features stuck in PLANNING for more than 7 days
|
|
914
|
+
- Features with `plan: "PENDING"` but `status: "IN_PROGRESS"` (skipped approval?)
|
|
915
|
+
- Features with `basedOn` links to non-existent features
|
|
916
|
+
|
|
917
|
+
Read-only — no planning gate, no environment changes. Use this when resuming a session to see where you left off.
|
|
918
|
+
|
|
919
|
+
---
|
|
920
|
+
|
|
921
|
+
## Scenario 19: "Archive a completed feature"
|
|
922
|
+
|
|
923
|
+
**Situation:** The return-order feature is verified and deployed. You want to mark it as done and remove it from the active dashboard.
|
|
924
|
+
|
|
925
|
+
```
|
|
926
|
+
Archive the return-order feature
|
|
927
|
+
```
|
|
928
|
+
|
|
929
|
+
`/fluent-archive` performs:
|
|
930
|
+
1. **Status check** — verifies the feature exists and reads `status.json`
|
|
931
|
+
2. **Safety gate** — if status is `IN_PROGRESS`, archival is **blocked** (use `--force` to override)
|
|
932
|
+
3. **Confirmation** — presents current status and asks for explicit approval
|
|
933
|
+
4. **Update** — sets `status: "ARCHIVED"` and `archivedOn` timestamp in `status.json`
|
|
934
|
+
|
|
935
|
+
**After archival:**
|
|
936
|
+
- The feature directory and all artifacts remain intact (specs, plans, architecture docs)
|
|
937
|
+
- `/fluent-feature-status` excludes archived features from the default view (use `--filter ARCHIVED` to see them)
|
|
938
|
+
- There is no "unarchive" — to resume, manually edit `status.json`
|
|
939
|
+
|
|
940
|
+
**Force archive an in-progress feature:**
|
|
941
|
+
```
|
|
942
|
+
Archive curbside-pickup --force
|
|
943
|
+
```
|
|
944
|
+
Bypasses the safety gate. Use when abandoning a feature that won't be completed.
|
|
945
|
+
|
|
946
|
+
---
|
|
947
|
+
|
|
948
|
+
## Scenario 20: "Roll back a failed deployment"
|
|
949
|
+
|
|
950
|
+
**Situation:** You deployed a new workflow version and it's causing event failures. You need to revert to the previous version.
|
|
951
|
+
|
|
952
|
+
```
|
|
953
|
+
Roll back ORDER::HD to the previous version
|
|
954
|
+
```
|
|
955
|
+
|
|
956
|
+
`/fluent-rollback` follows a structured process:
|
|
957
|
+
|
|
958
|
+
**Step 1: Planning gate** — presents a rollback plan showing:
|
|
959
|
+
- Current deployed version vs target version
|
|
960
|
+
- Source of the rollback artifact (pre-deploy backup, local cache, or git history)
|
|
961
|
+
- What will change and what won't
|
|
962
|
+
- Irreversible operations that can't be rolled back (already-processed events, sent webhooks)
|
|
963
|
+
|
|
964
|
+
**Step 2: Dry run** (recommended for production):
|
|
965
|
+
```
|
|
966
|
+
Roll back ORDER::HD --dry-run
|
|
967
|
+
```
|
|
968
|
+
Shows exactly what would happen without making changes.
|
|
969
|
+
|
|
970
|
+
**Step 3: Execute** — after plan approval, uploads the previous workflow version as a new version.
|
|
971
|
+
|
|
972
|
+
**Three artifact types supported:**
|
|
973
|
+
|
|
974
|
+
| Artifact | Rollback method | Source resolution |
|
|
975
|
+
|----------|----------------|-------------------|
|
|
976
|
+
| Workflow | Re-upload previous JSON as new version | Pre-deploy backup → local cache → git history |
|
|
977
|
+
| Module | Redeploy prior module ZIP | Local dist → git tag → artifact repository |
|
|
978
|
+
| Settings | Restore prior values via GraphQL | Session export → settings audit → pre-deploy report |
|
|
979
|
+
|
|
980
|
+
**Cannot roll back:** Entity state changes, sent events, batch ingestion data, webhook deliveries. The skill refuses these and suggests compensating alternatives.
|
|
981
|
+
|
|
982
|
+
---
|
|
983
|
+
|
|
984
|
+
## Scenario 21: "Show me the workspace structure"
|
|
985
|
+
|
|
986
|
+
**Situation:** You want to see what's in the workspace — features, workflows, source code, reports — with counts and annotations.
|
|
987
|
+
|
|
988
|
+
```
|
|
989
|
+
Show me the workspace tree
|
|
990
|
+
```
|
|
991
|
+
|
|
992
|
+
`/fluent-workspace-tree` produces an annotated directory listing:
|
|
993
|
+
|
|
994
|
+
```
|
|
995
|
+
accounts/HMDEV/
|
|
996
|
+
SOURCE/ (2 repos)
|
|
997
|
+
fc-module-hm-extensions/ (97 rules, v1.4.0)
|
|
998
|
+
fc-module-hm-returns/ (3 rules, v1.0.0)
|
|
999
|
+
workflows/HM_TEST/ (17 workflows)
|
|
1000
|
+
ORDER__HD.json (v1.51, 64 rulesets)
|
|
1001
|
+
ORDER__CC.json (v1.12, 50 rulesets)
|
|
1002
|
+
...
|
|
1003
|
+
features/ (4 features)
|
|
1004
|
+
curbside-pickup/ IN_PROGRESS (plan rev 2)
|
|
1005
|
+
return-order/ VERIFIED
|
|
1006
|
+
home-delivery/ architecture only
|
|
1007
|
+
loyalty-points/ PLANNING
|
|
1008
|
+
reports/ (3 reports)
|
|
1009
|
+
pre-deploy/hm-returns.json 2026-02-24
|
|
1010
|
+
analysis/
|
|
1011
|
+
implementation-map/ (11 features mapped)
|
|
1012
|
+
code/ (source-map, behavior-map)
|
|
1013
|
+
```
|
|
1014
|
+
|
|
1015
|
+
Read-only — no planning gate, no environment changes. Useful for orientation when starting a new session or after running multiple skills.
|
|
1016
|
+
|
|
1017
|
+
---
|
|
1018
|
+
|
|
1019
|
+
## Frontend / Mystique UI Scenarios
|
|
1020
|
+
|
|
1021
|
+
### Scenario: Build a New UI Page
|
|
1022
|
+
|
|
1023
|
+
**You say:** "Build an order detail page showing order summary, customer info, items, and fulfilments"
|
|
1024
|
+
|
|
1025
|
+
**What happens:**
|
|
1026
|
+
1. `/fluent-mystique-builder` analyzes the requirement against OOTB components
|
|
1027
|
+
2. Presents a plan: route structure, component tree, data query, composition pattern
|
|
1028
|
+
3. On approval: generates manifest JSON with `fc.page` → `fc.card.attribute` (summary) + `fc.card.attribute` (customer) + `fc.tabs.card` (items/fulfilments)
|
|
1029
|
+
4. Auto-runs `/fluent-mystique-validate` to verify structure
|
|
1030
|
+
|
|
1031
|
+
**You get:** A complete manifest JSON page definition ready to deploy as a Fluent setting.
|
|
1032
|
+
|
|
1033
|
+
### Scenario: Validate Before Deploying
|
|
1034
|
+
|
|
1035
|
+
**You say:** "Validate the admin manifest before I deploy it"
|
|
1036
|
+
|
|
1037
|
+
**What happens:**
|
|
1038
|
+
1. `/fluent-mystique-validate` runs 49 rules across 6 phases
|
|
1039
|
+
2. Checks schema compliance, component aliases, GraphQL queries, template strings, prop completeness, cross-manifest references
|
|
1040
|
+
3. Reports issues by severity (CRITICAL/HIGH/MEDIUM/LOW)
|
|
1041
|
+
|
|
1042
|
+
**You get:** A validation report with pass/fail and specific fix suggestions for any issues found.
|
|
1043
|
+
|
|
1044
|
+
### Scenario: Custom Component When OOTB Falls Short
|
|
1045
|
+
|
|
1046
|
+
**You say:** "I need a drag-and-drop pick list interface for warehouse staff"
|
|
1047
|
+
|
|
1048
|
+
**What happens:**
|
|
1049
|
+
1. `/fluent-mystique-builder` evaluates the Build vs Configure decision framework
|
|
1050
|
+
2. Determines OOTB components can't handle drag-and-drop → escalates to Step 4 (custom component)
|
|
1051
|
+
3. `/fluent-mystique-scaffold` creates a complete SDK project: webpack config, TypeScript setup, component boilerplate, Storybook stories, Jest tests
|
|
1052
|
+
4. Manifest is updated with `plugins[]` reference to the custom bundle
|
|
1053
|
+
|
|
1054
|
+
**You get:** A buildable SDK project with `ComponentRegistry.register()` wiring and a manifest referencing the custom component.
|
|
1055
|
+
|
|
1056
|
+
### Scenario: Analyze What's Built in an App
|
|
1057
|
+
|
|
1058
|
+
**You say:** "What components are used in the admin manifest? Any complexity issues?"
|
|
1059
|
+
|
|
1060
|
+
**What happens:**
|
|
1061
|
+
1. `/fluent-mystique-analyze` runs 7-dimension analysis: component census, route mapping, complexity scoring (weighted 0-100), data query analysis, i18n coverage, pattern detection, Mermaid diagrams
|
|
1062
|
+
|
|
1063
|
+
**You get:** A comprehensive analysis report with component counts, unused components, complexity hotspots, and optimization recommendations.
|
|
1064
|
+
|
|
1065
|
+
### Scenario: Full-Stack Feature (Backend + Frontend)
|
|
1066
|
+
|
|
1067
|
+
**You say:** "Build order tracking with a customer-facing status page"
|
|
1068
|
+
|
|
1069
|
+
**What happens:**
|
|
1070
|
+
1. `/fluent-feature-plan` creates a unified plan covering both backend (workflow rules, settings) and frontend (manifest pages, components)
|
|
1071
|
+
2. On approval: backend agent builds rules → workflows → settings first
|
|
1072
|
+
3. Then frontend agent builds manifest → validates → deploys
|
|
1073
|
+
4. `/fluent-e2e-test` runs cross-cutting tests
|
|
1074
|
+
|
|
1075
|
+
**You get:** Complete backend logic AND UI pages deployed and verified end-to-end.
|
|
1076
|
+
|
|
1077
|
+
---
|
|
1078
|
+
|
|
358
1079
|
## What Happens Behind the Scenes
|
|
359
1080
|
|
|
360
1081
|
When you ask your AI assistant to perform these tasks, it doesn't just generate text — it **executes real operations** against your Fluent environment:
|
|
@@ -366,7 +1087,60 @@ When you ask your AI assistant to perform these tasks, it doesn't just generate
|
|
|
366
1087
|
| **Official MCP Server** (CLI layer) | Workflow listing, downloading, GraphQL validation via the Fluent CLI |
|
|
367
1088
|
| **Fluent Commerce API** (platform) | The actual REST/GraphQL endpoints being called |
|
|
368
1089
|
|
|
369
|
-
|
|
1090
|
+
### Planning Gate
|
|
1091
|
+
|
|
1092
|
+
Before any implementation work, the AI presents a structured plan and **waits for your explicit approval**. This isn't optional — it's enforced by every implementation skill. You can ask questions, request changes, or reject the plan entirely. No code is written, no entities are created, and no deployments happen without your say-so.
|
|
1093
|
+
|
|
1094
|
+
### Progress Visualization
|
|
1095
|
+
|
|
1096
|
+
Multi-phase skills show a live progress block as they work, so you always know where the AI is in the process:
|
|
1097
|
+
|
|
1098
|
+
```
|
|
1099
|
+
▸ /fluent-pre-deploy-check [3/8]
|
|
1100
|
+
✓ Environment ✓ Module structure
|
|
1101
|
+
✓ Workflow validity → Connections
|
|
1102
|
+
○ Settings ○ Target environment
|
|
1103
|
+
○ Risk assessment ○ Completeness
|
|
1104
|
+
```
|
|
1105
|
+
|
|
1106
|
+
- `✓` completed — `→` currently running — `○` pending
|
|
1107
|
+
- The block updates at each phase transition
|
|
1108
|
+
|
|
1109
|
+
Available on the 10 most-used skills: `/fluent-feature-plan`, `/fluent-trace`, `/fluent-e2e-test`, `/fluent-implementation-map`, `/fluent-feature-explain`, `/fluent-build`, `/fluent-pre-deploy-check`, `/fluent-connection-analysis`, `/fluent-use-case-discover`, `/fluent-workflow-builder`.
|
|
1110
|
+
|
|
1111
|
+
### Skill Chains and Handoff Signals
|
|
1112
|
+
|
|
1113
|
+
Skills communicate via handoff signals:
|
|
1114
|
+
- `-> READY: <path>` — "I'm done, here's what I produced"
|
|
1115
|
+
- `-> NEXT: /fluent-build` — "The next step is this skill"
|
|
1116
|
+
- `-> BLOCKED: No module found` — "I can't proceed; here's why and what to do"
|
|
1117
|
+
- `-> SKIP: No settings changes` — "This step doesn't apply"
|
|
1118
|
+
|
|
1119
|
+
These signals chain skills together automatically. When `/fluent-rule-scaffold` finishes, it emits `-> NEXT: /fluent-build`. The agent follows the chain without you having to spell out each step.
|
|
1120
|
+
|
|
1121
|
+
### Error Taxonomy
|
|
1122
|
+
|
|
1123
|
+
When something goes wrong, skills report structured error codes:
|
|
1124
|
+
- `PLAN_REQUIRED` — you tried to implement without an approved plan
|
|
1125
|
+
- `PREREQ_MISSING` — a dependency doesn't exist yet (e.g., no module to add rules to)
|
|
1126
|
+
- `VALIDATION_FAILED` — input failed structural or semantic checks
|
|
1127
|
+
- `ENV_UNREACHABLE` — can't connect to the Fluent environment
|
|
1128
|
+
- `DEPLOYMENT_BLOCKED` — pre-deploy gates failed
|
|
1129
|
+
|
|
1130
|
+
Each error code comes with a recovery action (which skill to run to fix it).
|
|
1131
|
+
|
|
1132
|
+
### Three-Level Pre-Flight Chain
|
|
1133
|
+
|
|
1134
|
+
For multi-artifact features, enforcement happens at three levels:
|
|
1135
|
+
1. **Requirements check** — `/fluent-feature-plan` verifies a Business Spec exists (or structured requirements are provided). If not → redirects to `/fluent-use-case-discover`.
|
|
1136
|
+
2. **Plan verification** — each implementation skill checks for an approved plan. If not → redirects to `/fluent-feature-plan`.
|
|
1137
|
+
3. **Dependency checks** — each skill checks that its prerequisites exist (e.g., rule-scaffold checks the module exists). If not → redirects to the prerequisite skill.
|
|
1138
|
+
|
|
1139
|
+
This creates an enforced chain: **requirements → plan → implementation**. No step can be skipped without explicit user override.
|
|
1140
|
+
|
|
1141
|
+
### Session Tracking
|
|
1142
|
+
|
|
1143
|
+
Every skill invocation, MCP tool call, and state change is tracked during the session. At any point you can ask "what did we change?" for a structured report, or export a JSON audit trail for CI/CD pipelines.
|
|
370
1144
|
|
|
371
1145
|
---
|
|
372
1146
|
|
|
@@ -389,9 +1163,92 @@ When evidence is incomplete, the AI flags it explicitly and recommends how to ge
|
|
|
389
1163
|
|
|
390
1164
|
| Capability | Status | Workaround |
|
|
391
1165
|
|-----------|--------|-----------|
|
|
392
|
-
| Refactor loose source into module format | **Supported** via `/fluent-source-onboard` | Analyzes, plans, restructures, validates, and builds in one flow (see Scenario 11) |
|
|
393
1166
|
| Live log tailing / real-time event streaming | Not supported | Use `event.list` with time filters for polling |
|
|
394
1167
|
| Multi-retailer operations in single command | Not supported | Switch retailer context between operations |
|
|
1168
|
+
| Visual workflow editor (GUI) | Not supported | Edit workflow JSON directly via `/fluent-workflow-builder` |
|
|
1169
|
+
| Anonymous mode (no credentials) | Not supported | MCP tools require profile auth or OAuth credentials |
|
|
1170
|
+
| Decompiled source modification | Read-only | Analyze decompiled code but can't edit it; provide original source or scaffold a new module via `/fluent-source-onboard` |
|
|
1171
|
+
| Windows `::` in workflow filenames | Auto-handled | CLI and skills auto-sanitize to `__` and maintain `workflow-file-map.json` |
|
|
1172
|
+
| `fluent workflow merge` upload bug | Known CLI bug | Skills use REST API upload as fallback automatically |
|
|
1173
|
+
| `workflow.simulate` runtime execution | Static only | Simulates by matching status + event + subtype; does not execute Java rules or check runtime state |
|
|
1174
|
+
| Java rule execution | Not supported | Skills can scaffold, build, and deploy rules but cannot execute them locally; use E2E tests against the live environment |
|
|
1175
|
+
|
|
1176
|
+
---
|
|
1177
|
+
|
|
1178
|
+
## Troubleshooting
|
|
1179
|
+
|
|
1180
|
+
### Skill Gate Errors
|
|
1181
|
+
|
|
1182
|
+
These errors come from the skill enforcement chain. Each one tells you exactly what's missing and which skill to run.
|
|
1183
|
+
|
|
1184
|
+
| Error code | What happened | Fix |
|
|
1185
|
+
|---|---|---|
|
|
1186
|
+
| `PLAN_REQUIRED` | You asked a skill to implement something but there's no approved plan | Run `/fluent-feature-plan` (multi-artifact) or let the skill create a task plan (single artifact). Approve it, then retry. |
|
|
1187
|
+
| `PREREQ_MISSING` | A skill needs something that doesn't exist yet | Follow the redirect. Common cases: `/fluent-rule-scaffold` needs a module → run `/fluent-module-scaffold`. `/fluent-workflow-builder` needs deployed rules → run `/fluent-build` then `/fluent-module-deploy`. `/fluent-build` needs a validation report → run `/fluent-module-validate`. |
|
|
1188
|
+
| `VALIDATION_FAILED` | Input data failed structural or semantic checks | Read the error details — they specify which field or structure is wrong. Fix and retry. |
|
|
1189
|
+
| `ENV_UNREACHABLE` | Can't connect to the Fluent environment | Run `config.validate` and `connection.test` via MCP to diagnose. Common causes: expired credentials, wrong profile, VPN not connected. |
|
|
1190
|
+
| `DEPLOYMENT_BLOCKED` | Pre-deploy quality gates failed | Run `/fluent-pre-deploy-check` to see the full gate report. Each blocked gate explains what to fix. |
|
|
1191
|
+
|
|
1192
|
+
If you want to bypass a gate, say **"skip planning"** or **"just do it"** — the override is logged as `USER_OVERRIDE`.
|
|
1193
|
+
|
|
1194
|
+
### MCP Tool Errors
|
|
1195
|
+
|
|
1196
|
+
These errors come from the MCP extension server when calling Fluent Commerce APIs. Every tool response includes `ok: true` or `ok: false` with a typed error code.
|
|
1197
|
+
|
|
1198
|
+
| Error code | What it means | What to do |
|
|
1199
|
+
|---|---|---|
|
|
1200
|
+
| `CONFIG_ERROR` | Environment variables are missing or invalid | Check `.mcp.json` — verify `FLUENT_PROFILE` is set (or OAuth credentials if not using profile auth). Restart IDE after editing `.mcp.json`. |
|
|
1201
|
+
| `AUTH_ERROR` | Credentials are wrong or expired | For profile auth: run `fluent auth login -p YOUR_PROFILE` to refresh. For OAuth: verify client ID/secret/username/password in `.mcp.json`. |
|
|
1202
|
+
| `TIMEOUT_ERROR` | Request took longer than 30 seconds (default) | For large queries, increase `FLUENT_REQUEST_TIMEOUT_MS` in `.mcp.json` env block (e.g., `"60000"` for 60s). |
|
|
1203
|
+
| `RATE_LIMIT` | Too many API requests | Wait a moment and retry. The server uses exponential backoff automatically for read operations. |
|
|
1204
|
+
| `UPSTREAM_UNAVAILABLE` | Fluent API returned 502/503/504 | The platform may be under maintenance. Check Fluent status page. Reads retry automatically (up to 3 attempts with backoff). |
|
|
1205
|
+
| `NETWORK_ERROR` | Can't reach the API endpoint at all | Check VPN, network connectivity, firewall. Verify the base URL in your profile is correct. |
|
|
1206
|
+
| `SDK_ERROR` | Fluent SDK returned an unexpected error | Usually a bug or unsupported operation. Check the error message for details. |
|
|
1207
|
+
|
|
1208
|
+
### Common Setup Problems
|
|
1209
|
+
|
|
1210
|
+
**"I typed a slash command but nothing happened"**
|
|
1211
|
+
- Skills must be installed first: `npx @fluentcommerce/ai-skills install`
|
|
1212
|
+
- Slash commands (`/fluent-*`) only work in Claude Code. Other IDEs use natural language prompts that trigger the same skills.
|
|
1213
|
+
|
|
1214
|
+
**"MCP tools aren't available"**
|
|
1215
|
+
- Run `npx @fluentcommerce/ai-skills mcp-setup --profile YOUR_PROFILE` to generate `.mcp.json`
|
|
1216
|
+
- Restart your IDE after creating or editing `.mcp.json` — MCP servers are loaded at startup
|
|
1217
|
+
- Verify with `config.validate` → `health.ping` → `connection.test` (in that order)
|
|
1218
|
+
|
|
1219
|
+
**"Workflow download fails or returns empty"**
|
|
1220
|
+
- Check you have the right profile and retailer: `fluent workflow list -p YOUR_PROFILE -r YOUR_RETAILER`
|
|
1221
|
+
- Fluent CLI must be installed: `npm i -g @fluentcommerce/cli`
|
|
1222
|
+
- The profile must have the retailer associated — verify with `fluent retailer list -p YOUR_PROFILE`
|
|
1223
|
+
|
|
1224
|
+
**"The AI keeps asking me to approve a plan"**
|
|
1225
|
+
- This is by design — the planning gate prevents unreviewed changes. Say **"approved"**, **"yes"**, or **"go ahead"** to proceed. Or say **"just do it"** or **"skip planning"** to bypass.
|
|
1226
|
+
|
|
1227
|
+
**"I came back to a session and the AI lost context"**
|
|
1228
|
+
- Check `accounts/<PROFILE>/features/*/status.json` — the AI reads these to resume where you left off
|
|
1229
|
+
- If `status.json` shows `next: "/fluent-rule-scaffold"`, the AI knows to continue with that skill
|
|
1230
|
+
- If files are missing, re-run `/fluent-connect` to rebuild workspace state
|
|
1231
|
+
|
|
1232
|
+
**"Response is truncated or summarized"**
|
|
1233
|
+
- Large API responses are auto-summarized (not truncated) when they exceed 50,000 characters. The summary includes record counts, field inventory, distributions, and sample records.
|
|
1234
|
+
- To get full raw data, set `FLUENT_RESPONSE_BUDGET_CHARS=0` in `.mcp.json` env block. This disables the budget and returns everything.
|
|
1235
|
+
|
|
1236
|
+
---
|
|
1237
|
+
|
|
1238
|
+
## IDE Target Differences
|
|
1239
|
+
|
|
1240
|
+
Claude Code is the primary target with full feature support. Other IDEs receive the same domain knowledge but in different formats with some limitations.
|
|
1241
|
+
|
|
1242
|
+
| Capability | Claude Code | Cursor | Copilot / VS Code / Windsurf / Codex / Gemini |
|
|
1243
|
+
|---|---|---|---|
|
|
1244
|
+
| **Slash commands** (`/fluent-*`) | Yes — each skill is a slash command | No — use natural language prompts | No — use natural language prompts |
|
|
1245
|
+
| **Agent routing** | Full — agents route to skills by task type | Partial — rules loaded per-file, no agent hierarchy | Partial — all content in one file, relies on IDE's own routing |
|
|
1246
|
+
| **MCP tool access** | Full — 36 tools via MCP servers | Full — if `.mcp.json` or `.cursor/mcp.json` is configured | Varies by IDE — check IDE docs for MCP support |
|
|
1247
|
+
| **Session resumption** | Yes — reads `status.json` to continue | Yes — same `status.json` mechanism | Yes — same `status.json` mechanism |
|
|
1248
|
+
| **Skill content** | Full markdown with frontmatter | `.mdc` files with Cursor frontmatter (one per skill) | Merged into single instruction file (managed block) |
|
|
1249
|
+
| **Install scope** | Global (`~/.claude/`) | Project (`.cursor/rules/`) | Project (`.github/`, `.windsurfrules`, `AGENTS.md`, `GEMINI.md`) |
|
|
1250
|
+
|
|
1251
|
+
**Prompt equivalence:** The same natural language works across all IDEs. Instead of `/fluent-trace`, say "trace why order HD-001 is stuck". Instead of `/fluent-feature-plan`, say "plan the curbside pickup feature". The AI recognizes the intent from the domain knowledge injected by the skills.
|
|
395
1252
|
|
|
396
1253
|
---
|
|
397
1254
|
|