@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.
- 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/README.md
CHANGED
|
@@ -1,622 +1,866 @@
|
|
|
1
|
-
# @fluentcommerce/ai-skills
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
[
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
**
|
|
13
|
-
|
|
14
|
-
**
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
|
21
|
-
|
|
22
|
-
|
|
|
23
|
-
|
|
|
24
|
-
|
|
|
25
|
-
| Pre-go-live | "Run a Ready For Launch assessment" | Scored report across workflows, rules, settings, integrations |
|
|
26
|
-
| Ops | "Show event failure rates for the last hour" | Metrics anomaly detection with threshold alerts |
|
|
27
|
-
|
|
28
|
-
See [full scenario guide](docs/USE_CASES.md) for
|
|
29
|
-
|
|
30
|
-
## Quick Start
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
# Install all skill groups (default target: Claude Code)
|
|
34
|
-
npx @fluentcommerce/ai-skills install
|
|
35
|
-
|
|
36
|
-
# Configure MCP server entries for your project
|
|
37
|
-
npx @fluentcommerce/ai-skills mcp-setup --profile YOUR_PROFILE
|
|
38
|
-
|
|
39
|
-
# Verify what's installed
|
|
40
|
-
npx @fluentcommerce/ai-skills status
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
### Quick Start by Target
|
|
44
|
-
|
|
45
|
-
Run from your project root:
|
|
46
|
-
|
|
47
|
-
Primary target is **Claude**. The adapters below are **beta**.
|
|
48
|
-
|
|
49
|
-
```bash
|
|
50
|
-
# Cursor
|
|
51
|
-
npx @fluentcommerce/ai-skills install --target cursor
|
|
52
|
-
npx @fluentcommerce/ai-skills status --target cursor
|
|
53
|
-
|
|
54
|
-
# VS Code (Copilot instructions format)
|
|
55
|
-
npx @fluentcommerce/ai-skills install --target vscode
|
|
56
|
-
npx @fluentcommerce/ai-skills status --target vscode
|
|
57
|
-
|
|
58
|
-
# GitHub Copilot
|
|
59
|
-
npx @fluentcommerce/ai-skills install --target copilot
|
|
60
|
-
npx @fluentcommerce/ai-skills status --target copilot
|
|
61
|
-
|
|
62
|
-
# Windsurf
|
|
63
|
-
npx @fluentcommerce/ai-skills install --target windsurf
|
|
64
|
-
npx @fluentcommerce/ai-skills status --target windsurf
|
|
65
|
-
|
|
66
|
-
# Codex
|
|
67
|
-
npx @fluentcommerce/ai-skills install --target codex
|
|
68
|
-
npx @fluentcommerce/ai-skills status --target codex
|
|
69
|
-
|
|
70
|
-
# Gemini CLI
|
|
71
|
-
npx @fluentcommerce/ai-skills install --target gemini
|
|
72
|
-
npx @fluentcommerce/ai-skills status --target gemini
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
Tip: to keep instruction size lighter, install only needed groups (for example `npx @fluentcommerce/ai-skills install --target cursor cli mcp-extn`).
|
|
76
|
-
|
|
77
|
-
## Requirements
|
|
78
|
-
|
|
79
|
-
- Node.js 18+
|
|
80
|
-
- Fluent CLI (`npm i -g @fluentcommerce/cli`) — needed for official MCP server
|
|
81
|
-
|
|
82
|
-
## Supported Targets
|
|
83
|
-
|
|
84
|
-
Skills install into your coding assistant's native format:
|
|
85
|
-
|
|
86
|
-
| Target | Output location | Scope | Status |
|
|
87
|
-
|---|---|---|---|
|
|
88
|
-
| `claude` (default) | `~/.claude/agents/` + `~/.claude/skills/` | Global (shared across projects) | **Primary** |
|
|
89
|
-
| `cursor` | `.cursor/rules/*.mdc` | Project | Beta |
|
|
90
|
-
| `copilot` | `.github/copilot-instructions.md` | Project | Beta |
|
|
91
|
-
| `vscode` | `.github/copilot-instructions.md` (alias of `copilot`) | Project | Beta |
|
|
92
|
-
| `windsurf` | `.windsurfrules` | Project | Beta |
|
|
93
|
-
| `codex` | `AGENTS.md` | Project | Beta |
|
|
94
|
-
| `gemini` | `GEMINI.md` | Project | Beta |
|
|
95
|
-
|
|
96
|
-
> Claude Code is the primary target with full support (agents, skills, slash commands, MCP integration). Other targets receive the same domain knowledge as merged instruction content and are tested where possible, but may have limited functionality compared to Claude Code.
|
|
97
|
-
|
|
98
|
-
```bash
|
|
99
|
-
# Install for a specific target
|
|
100
|
-
npx @fluentcommerce/ai-skills install --target cursor
|
|
101
|
-
|
|
102
|
-
# Install specific groups only
|
|
103
|
-
npx @fluentcommerce/ai-skills install --target copilot cli mcp-extn
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
For non-Claude targets, the installer writes a managed block (`<!-- fluent-ai-skills:start --> ... <!-- fluent-ai-skills:end -->`). Uninstall removes only managed content and preserves anything else in the file.
|
|
107
|
-
|
|
108
|
-
## Available Groups
|
|
109
|
-
|
|
110
|
-
| Group | What it provides | Claude Code slash commands |
|
|
111
|
-
|---|---|---|
|
|
112
|
-
| `cli` | Fluent CLI command-family coverage (index routing, reference, account connect, profile, retailer, settings, modules, workflows, MCP/CI-CD, bootstrap) | `/fluent-cli-index` `/fluent-cli-reference` `/fluent-connect` `/fluent-cli-mcp-cicd` `/fluent-bootstrap` `/fluent-cli-retailer` `/fluent-cli-settings` `/fluent-module-deploy` `/fluent-profile` `/fluent-workflow` |
|
|
113
|
-
| `mcp-official` | Official Fluent CLI MCP server operations | `/fluent-mcp-core` |
|
|
114
|
-
| `mcp-extn` | Extension MCP tools (events, transitions, GraphQL, metrics, batch) | `/fluent-mcp-tools` |
|
|
115
|
-
| `rfl` | Ready For Launch assessments | `/fluent-rfl-assess` |
|
|
116
|
-
| `dev` |
|
|
117
|
-
|
|
118
|
-
> Slash commands are Claude Code specific. Other targets receive the same knowledge as merged instruction content.
|
|
119
|
-
|
|
120
|
-
For detailed command-family and guide-section coverage status (`full/partial/missing`), see [docs/CLI_COVERAGE.md](docs/CLI_COVERAGE.md).
|
|
121
|
-
|
|
122
|
-
###
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
|
127
|
-
|
|
128
|
-
| `
|
|
129
|
-
| `
|
|
130
|
-
| `
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
|
157
|
-
|
|
158
|
-
|
|
|
159
|
-
|
|
|
160
|
-
|
|
|
161
|
-
|
|
|
162
|
-
|
|
|
163
|
-
|
|
|
164
|
-
|
|
|
165
|
-
|
|
|
166
|
-
|
|
|
167
|
-
|
|
|
168
|
-
|
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
The `
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
- `
|
|
371
|
-
-
|
|
372
|
-
|
|
373
|
-
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
|
442
|
-
|
|
443
|
-
| `
|
|
444
|
-
|
|
|
445
|
-
|
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
`
|
|
476
|
-
|
|
477
|
-
```
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
```
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
###
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
1
|
+
# @fluentcommerce/ai-skills
|
|
2
|
+
|
|
3
|
+
> **Alpha** — This package is under active development. Skill content, CLI options, and supported targets may change between releases without notice. Use in non-production environments and pin to a specific version if stability matters.
|
|
4
|
+
|
|
5
|
+
Modular [Fluent Commerce](https://fluentcommerce.com) AI skill packs for coding assistants.
|
|
6
|
+
Install all groups, or only what each project needs.
|
|
7
|
+
|
|
8
|
+
**What this does:** AI coding assistants (Claude Code, Cursor, Copilot, etc.) are general-purpose — they don't know Fluent Commerce. This package injects Fluent-specific domain knowledge (workflows, events, rules, GraphQL patterns, CLI commands, deployment procedures) into your assistant so it can analyze workflows, scaffold rules, run E2E tests, debug failed events, and manage settings — all through natural language.
|
|
9
|
+
|
|
10
|
+
**New here?** Start with the [Getting Started Guide](docs/GETTING_STARTED.md) for a hands-on walkthrough, then see [What Can You Do?](docs/USE_CASES.md) for 21 scenario-based examples.
|
|
11
|
+
|
|
12
|
+
**Need release guidance?** Use the [Deployment and Promotion Runbook](docs/DEPLOYMENT_PROMOTION_RUNBOOK.md) for end-user, step-by-step promotion commands, artifacts created, verification gates, and rollback steps.
|
|
13
|
+
|
|
14
|
+
**What is a "skill"?** A skill is a structured instruction file that teaches the AI how to perform a specific Fluent task. For example, `/fluent-workflow-analyzer` teaches the AI how to read workflow JSON, map status graphs, detect orphaned rulesets, and generate Mermaid diagrams. Skills are installed into your assistant's native format (Claude agents/skills, Cursor rules, Copilot instructions, etc.).
|
|
15
|
+
|
|
16
|
+
## What Can You Do?
|
|
17
|
+
|
|
18
|
+
| Persona | Example prompt | What happens |
|
|
19
|
+
|---------|---------------|-------------|
|
|
20
|
+
| New developer | "Explain how Home Delivery works" | Feature Architecture Document with diagrams, rules, settings |
|
|
21
|
+
| Debugging | "Why is order HD-001 stuck?" | Event forensics, NO_MATCH analysis, remediation options |
|
|
22
|
+
| Building | "Build an ORDER::RETURN workflow" | Plan mode → state machine → rulesets → deploy → E2E test |
|
|
23
|
+
| Frontend | "Build a manifest page for order details" | Compose OOTB Mystique components, validate manifest, deploy to UX App |
|
|
24
|
+
| UI building | "Build an order tracking page" | Manifest builder → component composition → validation → deploy |
|
|
25
|
+
| Pre-go-live | "Run a Ready For Launch assessment" | Scored report across workflows, rules, settings, integrations |
|
|
26
|
+
| Ops | "Show event failure rates for the last hour" | Metrics anomaly detection with threshold alerts |
|
|
27
|
+
|
|
28
|
+
See [full scenario guide](docs/USE_CASES.md) for 21 detailed walkthroughs.
|
|
29
|
+
|
|
30
|
+
## Quick Start
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# Install all skill groups (default target: Claude Code)
|
|
34
|
+
npx @fluentcommerce/ai-skills install
|
|
35
|
+
|
|
36
|
+
# Configure MCP server entries for your project
|
|
37
|
+
npx @fluentcommerce/ai-skills mcp-setup --profile YOUR_PROFILE
|
|
38
|
+
|
|
39
|
+
# Verify what's installed
|
|
40
|
+
npx @fluentcommerce/ai-skills status
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### Quick Start by Target
|
|
44
|
+
|
|
45
|
+
Run from your project root:
|
|
46
|
+
|
|
47
|
+
Primary target is **Claude**. The adapters below are **beta**.
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
# Cursor
|
|
51
|
+
npx @fluentcommerce/ai-skills install --target cursor
|
|
52
|
+
npx @fluentcommerce/ai-skills status --target cursor
|
|
53
|
+
|
|
54
|
+
# VS Code (Copilot instructions format)
|
|
55
|
+
npx @fluentcommerce/ai-skills install --target vscode
|
|
56
|
+
npx @fluentcommerce/ai-skills status --target vscode
|
|
57
|
+
|
|
58
|
+
# GitHub Copilot
|
|
59
|
+
npx @fluentcommerce/ai-skills install --target copilot
|
|
60
|
+
npx @fluentcommerce/ai-skills status --target copilot
|
|
61
|
+
|
|
62
|
+
# Windsurf
|
|
63
|
+
npx @fluentcommerce/ai-skills install --target windsurf
|
|
64
|
+
npx @fluentcommerce/ai-skills status --target windsurf
|
|
65
|
+
|
|
66
|
+
# Codex
|
|
67
|
+
npx @fluentcommerce/ai-skills install --target codex
|
|
68
|
+
npx @fluentcommerce/ai-skills status --target codex
|
|
69
|
+
|
|
70
|
+
# Gemini CLI
|
|
71
|
+
npx @fluentcommerce/ai-skills install --target gemini
|
|
72
|
+
npx @fluentcommerce/ai-skills status --target gemini
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Tip: to keep instruction size lighter, install only needed groups (for example `npx @fluentcommerce/ai-skills install --target cursor cli mcp-extn`).
|
|
76
|
+
|
|
77
|
+
## Requirements
|
|
78
|
+
|
|
79
|
+
- Node.js 18+
|
|
80
|
+
- Fluent CLI (`npm i -g @fluentcommerce/cli`) — needed for official MCP server
|
|
81
|
+
|
|
82
|
+
## Supported Targets
|
|
83
|
+
|
|
84
|
+
Skills install into your coding assistant's native format:
|
|
85
|
+
|
|
86
|
+
| Target | Output location | Scope | Status |
|
|
87
|
+
|---|---|---|---|
|
|
88
|
+
| `claude` (default) | `~/.claude/agents/` + `~/.claude/skills/` | Global (shared across projects) | **Primary** |
|
|
89
|
+
| `cursor` | `.cursor/rules/*.mdc` | Project | Beta |
|
|
90
|
+
| `copilot` | `.github/copilot-instructions.md` | Project | Beta |
|
|
91
|
+
| `vscode` | `.github/copilot-instructions.md` (alias of `copilot`) | Project | Beta |
|
|
92
|
+
| `windsurf` | `.windsurfrules` | Project | Beta |
|
|
93
|
+
| `codex` | `AGENTS.md` | Project | Beta |
|
|
94
|
+
| `gemini` | `GEMINI.md` | Project | Beta |
|
|
95
|
+
|
|
96
|
+
> Claude Code is the primary target with full support (agents, skills, slash commands, MCP integration). Other targets receive the same domain knowledge as merged instruction content and are tested where possible, but may have limited functionality compared to Claude Code.
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
# Install for a specific target
|
|
100
|
+
npx @fluentcommerce/ai-skills install --target cursor
|
|
101
|
+
|
|
102
|
+
# Install specific groups only
|
|
103
|
+
npx @fluentcommerce/ai-skills install --target copilot cli mcp-extn
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
For non-Claude targets, the installer writes a managed block (`<!-- fluent-ai-skills:start --> ... <!-- fluent-ai-skills:end -->`). Uninstall removes only managed content and preserves anything else in the file.
|
|
107
|
+
|
|
108
|
+
## Available Groups
|
|
109
|
+
|
|
110
|
+
| Group | What it provides | Claude Code slash commands |
|
|
111
|
+
|---|---|---|
|
|
112
|
+
| `cli` | Fluent CLI command-family coverage (index routing, reference, account connect, profile, retailer, settings, modules, workflows, MCP/CI-CD, bootstrap) | `/fluent-cli-index` `/fluent-cli-reference` `/fluent-connect` `/fluent-cli-mcp-cicd` `/fluent-bootstrap` `/fluent-cli-retailer` `/fluent-cli-settings` `/fluent-module-deploy` `/fluent-profile` `/fluent-workflow` |
|
|
113
|
+
| `mcp-official` | Official Fluent CLI MCP server operations | `/fluent-mcp-core` |
|
|
114
|
+
| `mcp-extn` | Extension MCP tools (events, transitions, GraphQL, metrics, batch) | `/fluent-mcp-tools` |
|
|
115
|
+
| `rfl` | Ready For Launch assessments | `/fluent-rfl-assess` |
|
|
116
|
+
| `dev` | **Backend:** workflow builder, analyzer, connection analysis (with `--validate` static-vs-dynamic comparison), custom code analysis, transition API, rule scaffold, module scaffold, source onboarding, module validation, build, version management, trace, event API (model + causality analysis), system monitoring, batch ingestion, settings (with Phase 2B value format validation and cascading scope resolution), environment setup, deploy, pre-deploy checks, workflow deploy. **Frontend (Mystique):** manifest validation (73 OOTB components, 49 rules), manifest builder (6 operations, 7 composition patterns), SDK component scaffolding, manifest analysis (complexity scoring, Mermaid diagrams). **Cross-cutting:** feature planning (with universal NEW/EXISTING/MODIFIED/REUSED/OOTB classification), feature status dashboard, feature archival, deployment rollback, implementation mapping, E2E test, test data, session summary, session audit export, scope decomposition (with batch feature stubbing), feature explanation, sourcing framework reference | `/fluent-feature-plan` `/fluent-feature-status` `/fluent-implementation-map` `/fluent-archive` `/fluent-rollback` `/fluent-workflow-builder` `/fluent-workflow-analyzer` `/fluent-connection-analysis` `/fluent-custom-code` `/fluent-transition-api` `/fluent-rule-scaffold` `/fluent-module-scaffold` `/fluent-source-onboard` `/fluent-module-validate` `/fluent-build` `/fluent-version-manage` `/fluent-trace` `/fluent-event-api` `/fluent-system-monitoring` `/fluent-job-batch` `/fluent-e2e-test` `/fluent-test-data` `/fluent-settings` `/fluent-retailer-config` `/fluent-session-summary` `/fluent-scope-decompose` `/fluent-pre-deploy-check` `/fluent-session-audit-export` `/fluent-feature-explain` `/fluent-sourcing` `/fluent-use-case-discover` `/fluent-data-module-scaffold` `/fluent-mermaid-validate` `/fluent-workflow-deploy` `/fluent-workspace-tree` `/fluent-mystique-validate` `/fluent-mystique-builder` `/fluent-mystique-scaffold` `/fluent-mystique-analyze` |
|
|
117
|
+
|
|
118
|
+
> Slash commands are Claude Code specific. Other targets receive the same knowledge as merged instruction content.
|
|
119
|
+
|
|
120
|
+
For detailed command-family and guide-section coverage status (`full/partial/missing`), see [docs/CLI_COVERAGE.md](docs/CLI_COVERAGE.md).
|
|
121
|
+
|
|
122
|
+
### Agent Architecture
|
|
123
|
+
|
|
124
|
+
The `dev` group uses a three-agent architecture for clear separation of concerns:
|
|
125
|
+
|
|
126
|
+
| Agent | Role | Skills |
|
|
127
|
+
|-------|------|--------|
|
|
128
|
+
| `fluent-dev` | Lightweight orchestrator — routes requests to backend or frontend agents; owns cross-cutting skills (feature planning, implementation mapping, E2E testing, session tracking) | Cross-cutting: `/fluent-feature-plan`, `/fluent-feature-status`, `/fluent-implementation-map`, `/fluent-use-case-discover`, `/fluent-scope-decompose`, `/fluent-archive`, `/fluent-session-summary`, `/fluent-pre-deploy-check`, `/fluent-e2e-test`, `/fluent-workspace-tree` |
|
|
129
|
+
| `fluent-backend-dev` | Backend specialist — Java rules, Maven modules, workflow JSON, settings, events, deployment | 24 skills including `/fluent-workflow-builder`, `/fluent-rule-scaffold`, `/fluent-module-scaffold`, `/fluent-build`, `/fluent-trace`, `/fluent-settings` |
|
|
130
|
+
| `fluent-frontend-dev` | Frontend specialist — Mystique manifest building, validation, SDK component scaffolding, manifest analysis | `/fluent-mystique-builder`, `/fluent-mystique-validate`, `/fluent-mystique-scaffold`, `/fluent-mystique-analyze` |
|
|
131
|
+
|
|
132
|
+
Routing is automatic — mention "workflow", "rule", "module", "event", "settings" for backend; mention "manifest", "page", "component", "UI", "Mystique" for frontend. Cross-domain features use the orchestrator's unified planning gate.
|
|
133
|
+
|
|
134
|
+
### Group Aliases
|
|
135
|
+
|
|
136
|
+
| Alias | Resolves to |
|
|
137
|
+
|---|---|
|
|
138
|
+
| `mcp` | `mcp-extn` |
|
|
139
|
+
| `extn` | `mcp-extn` |
|
|
140
|
+
| `extension` | `mcp-extn` |
|
|
141
|
+
| `mcp-core` | `mcp-official` |
|
|
142
|
+
| `official` | `mcp-official` |
|
|
143
|
+
|
|
144
|
+
## Autonomous Development Workflow
|
|
145
|
+
|
|
146
|
+
The `dev` skill group enables AI agents to run a full closed-loop development lifecycle with a mandatory planning gate:
|
|
147
|
+
|
|
148
|
+
```
|
|
149
|
+
ANALYZE → EXPLAIN (if requested) or PLAN → [USER APPROVAL] → IMPLEMENT → BUILD → DEPLOY → TEST → DIAGNOSE → FIX → (loop back)
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
After analysis, the agent presents a structured implementation plan (workflow changes, settings, rules, Mermaid diagrams, risk assessment, test plan) and waits for explicit user approval before making changes. The agent then continues iterating until all E2E tests pass or an unresolvable blocker is hit.
|
|
153
|
+
|
|
154
|
+
Event API source docs are curated into skills via selective extraction; they are not mirrored wholesale.
|
|
155
|
+
|
|
156
|
+
| Phase | Skill / Command | What the agent does |
|
|
157
|
+
|-------|----------------|---------------------|
|
|
158
|
+
| Analyze | `/fluent-workflow-analyzer`, `/fluent-connection-analysis` | Map status graphs, trace event chains, detect orphans, verify connectivity; `--validate` mode compares static workflow paths with runtime events, traces cross-entity propagation, and produces timing analysis |
|
|
159
|
+
| Custom code analysis | `/fluent-custom-code` | Scan custom source, generate reusable analysis artifacts (source-map, workflow-rule-map, constraints, behavior-map, extension-plan) |
|
|
160
|
+
| Discover | `/fluent-transition-api` | Query available user actions at each status, map required attributes |
|
|
161
|
+
| Scope decomposition | `/fluent-scope-decompose` | Parse scope documents into ordered task lists with dependency DAG, skill mappings, and ambiguity detection |
|
|
162
|
+
| Feature plan | `/fluent-feature-plan` | Produce comprehensive implementation plan with universal source classification (NEW/EXISTING/MODIFIED/REUSED/OOTB) across all artifacts — rules, workflows, settings, webhooks, cross-entity flows, deployment sequence |
|
|
163
|
+
| Plan & Approve | *(check gate)* | Present structured implementation plan (workflows, settings, rules, Mermaid diagrams, risks, test plan). **Wait for user approval.** |
|
|
164
|
+
| Implement | `/fluent-workflow-builder`, `/fluent-rule-scaffold` | Edit workflow JSON, scaffold Java rules, update settings |
|
|
165
|
+
| Scaffold module | `/fluent-module-scaffold` | Generate complete Maven module skeleton (POMs, module.json, rule classes, build scripts) |
|
|
166
|
+
| Onboard source | `/fluent-source-onboard` | Restructure existing Java source (loose files, decompiled JARs, non-standard layouts) into proper Fluent module format; validate and build |
|
|
167
|
+
| Validate | `/fluent-module-validate` | Check module structure, version consistency, rule wiring, test coverage; cached report with content hash |
|
|
168
|
+
| Version | `/fluent-version-manage` | Read, bump, sync, and tag versions across POM files, module.json, and CHANGELOG |
|
|
169
|
+
| Build | `/fluent-build` | Version bump, Maven compile, ZIP packaging |
|
|
170
|
+
| Pre-deploy | `/fluent-pre-deploy-check` | 26 quality gates across 8 phases (env, module, workflow, connections, settings, target, risk, completeness) |
|
|
171
|
+
| Deploy | `/fluent-module-deploy` or `flow-run` | Module install or REST workflow upload |
|
|
172
|
+
| Test | `/fluent-e2e-test` | Create entities, fire events, poll states, assert transitions |
|
|
173
|
+
| Test data | `/fluent-test-data` | Discover retailer environment and generate valid test entity payloads |
|
|
174
|
+
| Settings | `/fluent-settings` | Manage retailer settings — discover, audit (with Phase 2B value format validation), create/update, migrate; cascading scope resolution (RETAILER -> ACCOUNT) for module-installed settings |
|
|
175
|
+
| Environment | `/fluent-retailer-config` | Configure retailer environments — locations, networks, catalogues, inventory, carriers |
|
|
176
|
+
| Diagnose | `/fluent-trace`, `/fluent-event-api` | Trace failed events, correlate with rulesets, and build causality chains across parent/child events |
|
|
177
|
+
| Fix | (routes back to Implement/Build/Deploy) | Apply fix based on diagnosis, re-test |
|
|
178
|
+
| Explain | `/fluent-feature-explain` | Reverse-engineer existing feature into a Feature Architecture Document with Mermaid diagrams, data flow, and runtime evidence; tiered analysis (plugin.list → decompiled JAR / source code → runtime), auto-discovers entities, JAR decompilation fallback, Analysis Confidence section; saved to `accounts/<PROFILE>/features/<slug>/architecture.md` |
|
|
179
|
+
| Implementation Map | `/fluent-implementation-map` | Reverse-engineer entire implementation into feature inventory with end-to-end flow diagrams, cross-feature dependency maps, customisation scoring, and gap analysis |
|
|
180
|
+
| Sourcing | `/fluent-sourcing` | Reference for sourcing profiles, strategies, conditions, criteria, scoring algorithms, permutation search, custom extensions, and GraphQL patterns |
|
|
181
|
+
| Audit | `/fluent-session-summary`, `/fluent-session-audit-export` | Track all changes, skill invocations, MCP tool calls, and gate decisions; export machine-readable JSON audit trail with decision chain reconstruction |
|
|
182
|
+
| Dashboard | `/fluent-feature-status` | Scan all features and show lifecycle status table — highlights stale features, next steps, and attention items across profiles |
|
|
183
|
+
| Workspace | `/fluent-workspace-tree` | Annotated workspace tree showing all artifacts by category with counts and status overlays |
|
|
184
|
+
| Rollback | `/fluent-rollback` | Roll back deployments — re-upload previous workflow versions, restore settings snapshots, document irreversible entity changes |
|
|
185
|
+
| Manifest build | `/fluent-mystique-builder` | Create manifest pages, routes, component trees, data queries; compose OOTB `fc.*` components before resorting to custom |
|
|
186
|
+
| Manifest validate | `/fluent-mystique-validate` | Schema validation (49 rules, 6 phases), component resolution against 73 OOTB aliases, prop checking, i18n, data queries |
|
|
187
|
+
| Manifest analyze | `/fluent-mystique-analyze` | Complexity scoring (weighted 0-100), component census, pattern detection (15 patterns), Mermaid diagrams |
|
|
188
|
+
| SDK scaffold | `/fluent-mystique-scaffold` | Scaffold Mystique SDK component project (webpack, TypeScript, Storybook, Jest, component registration) when OOTB components cannot meet the requirement |
|
|
189
|
+
| Archive | `/fluent-archive` | Transition features to ARCHIVED status with cleanup and audit trail |
|
|
190
|
+
|
|
191
|
+
**Progress visualization:** Multi-phase skills emit an ASCII progress block (`✓/→/○`) at each phase transition, so you always see where the AI is in the process. Available on the 10 most-used skills.
|
|
192
|
+
|
|
193
|
+
Artifacts from custom code analysis are written to `accounts/<PROFILE>/analysis/code/` and reused by other skills (workflow-analyzer, trace, rule-scaffold, etc.). A `fingerprint.json` file is used to detect input changes and skip re-parsing when nothing changed. Module validation reports are written to `accounts/<PROFILE>/reports/module-validate/` with a content hash — re-validation is skipped when the module source is unchanged. Persistent module inventory (rule registrations, version history) is stored in `accounts/<PROFILE>/analysis/modules/`.
|
|
194
|
+
|
|
195
|
+
Account workspace convention — see [Workspace Setup](#workspace-setup) for the full guide.
|
|
196
|
+
|
|
197
|
+
### Settings Update Quick Recipe
|
|
198
|
+
|
|
199
|
+
For safe setting updates, use this exact flow with `/fluent-settings`:
|
|
200
|
+
|
|
201
|
+
1. Resolve by `name` + `context/contextId` to fetch `id`, `valueType`, and current value.
|
|
202
|
+
2. Update by `id` (never guessed) using:
|
|
203
|
+
- `value` for `STRING`/`BOOLEAN`
|
|
204
|
+
- `lobValue` for `LOB`/`JSON`
|
|
205
|
+
3. Re-query the same `name` + scope and confirm the value changed.
|
|
206
|
+
4. If no setting exists, create it with the same scope (upsert behavior).
|
|
207
|
+
|
|
208
|
+
See [docs/DEV_WORKFLOW.md](docs/DEV_WORKFLOW.md) for the complete orchestration protocol with decision trees, tool chains, and error recovery patterns.
|
|
209
|
+
|
|
210
|
+
### Deep Analysis Fallback (Vague Ruleset/Rule Intent)
|
|
211
|
+
|
|
212
|
+
When workflow/ruleset descriptions are too generic to explain behavior confidently, the skills escalate evidence in this order:
|
|
213
|
+
|
|
214
|
+
1. Ask focused clarification questions (trigger, expected state, actual outcome).
|
|
215
|
+
2. Request source (`module.json` + Java rule classes).
|
|
216
|
+
3. If source is unavailable, first check for JAR/ZIP already present under `accounts/<PROFILE>/SOURCE/`, then decompile targeted rule classes.
|
|
217
|
+
4. Correlate decompiled logic with workflow props and runtime event/log evidence.
|
|
218
|
+
|
|
219
|
+
This keeps end-to-end analysis grounded in executable rule logic rather than names/descriptions only.
|
|
220
|
+
|
|
221
|
+
## Workspace Setup
|
|
222
|
+
|
|
223
|
+
Skills expect implementation source code, workflows, and analysis artifacts to be organized under an `accounts/` directory in your workspace root, keyed by Fluent CLI profile name.
|
|
224
|
+
|
|
225
|
+
### Directory Structure
|
|
226
|
+
|
|
227
|
+
```
|
|
228
|
+
accounts/
|
|
229
|
+
<PROFILE>/ # matches your FLUENT_PROFILE name
|
|
230
|
+
SOURCE/ # account-level, shared across retailers
|
|
231
|
+
<repo-name>/ # git-cloned custom plugin repo
|
|
232
|
+
resources/module.json
|
|
233
|
+
pom.xml
|
|
234
|
+
src/main/java/...
|
|
235
|
+
<reference-module>/ # reference module package (module.json + JAR)
|
|
236
|
+
module.json
|
|
237
|
+
assets/rules/*.jar
|
|
238
|
+
.decompiled/<jar-basename>/ # auto-generated from JAR decompilation
|
|
239
|
+
DECOMPILED.md # marker with source JAR, date, decompiler
|
|
240
|
+
com/fluentcommerce/... # decompiled Java classes
|
|
241
|
+
workflows/ # retailer-scoped workflow definitions
|
|
242
|
+
<RETAILER_REF>/
|
|
243
|
+
ORDER__HD.json
|
|
244
|
+
FULFILMENT__HD_WH.json
|
|
245
|
+
workflow-context.json # download metadata
|
|
246
|
+
features/ # feature-axis: one dir per feature
|
|
247
|
+
curbside-pickup/
|
|
248
|
+
spec.md # business spec (from use-case-discover)
|
|
249
|
+
plan.md # implementation plan (from feature-plan)
|
|
250
|
+
architecture.md # feature architecture doc (from feature-explain)
|
|
251
|
+
status.json # machine-readable lifecycle state
|
|
252
|
+
analysis/ # generated analysis artifacts
|
|
253
|
+
code/source-map.json
|
|
254
|
+
modules/ # persistent module inventory
|
|
255
|
+
reports/ # ephemeral reports
|
|
256
|
+
module-validate/*.report.json
|
|
257
|
+
tasks/ # operational task plans (non-feature)
|
|
258
|
+
2026-02-23-rule-scaffold-curbside-pickup.md
|
|
259
|
+
workspace-state.json # cached state for idempotent re-runs
|
|
260
|
+
workspace-index.json # cross-profile index
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
**Why this layout:**
|
|
264
|
+
- `SOURCE/` is at the profile (account) level because plugin code is deployed per-account and shared across retailers.
|
|
265
|
+
- `workflows/` are scoped by retailer ref inside subdirectories because workflow definitions can differ per retailer.
|
|
266
|
+
- `analysis/` holds generated artifacts that other skills reuse (source maps, module validation reports, etc.).
|
|
267
|
+
- `features/` stores per-feature artifacts (spec, plan, architecture, status.json). Each feature gets its own directory with a machine-readable `status.json` tracking lifecycle state.
|
|
268
|
+
- `tasks/` stores operational task plans (non-feature) created by the Planning Gate. Each plan is a markdown file with status tracking.
|
|
269
|
+
|
|
270
|
+
### Feature Lifecycle
|
|
271
|
+
|
|
272
|
+
Every feature goes through a structured lifecycle. The AI follows this chain automatically — you just need to prompt at each stage and approve when asked.
|
|
273
|
+
|
|
274
|
+
#### Lifecycle states
|
|
275
|
+
|
|
276
|
+
```
|
|
277
|
+
DISCOVERY → PLANNING → APPROVED → IN_PROGRESS → VERIFIED → ARCHIVED
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
| State | What's happening | How you enter it |
|
|
281
|
+
|-------|-----------------|------------------|
|
|
282
|
+
| `DISCOVERY` | Requirements are being gathered | You ask the AI to discover use cases |
|
|
283
|
+
| `PLANNING` | Implementation plan is being written | AI starts planning after spec is approved |
|
|
284
|
+
| `APPROVED` | Plan is approved, ready to build | You explicitly approve the plan |
|
|
285
|
+
| `IN_PROGRESS` | Rules, workflows, settings are being built/deployed/tested | Any implementation skill starts |
|
|
286
|
+
| `VERIFIED` | All E2E tests passed, feature is complete | E2E test suite passes |
|
|
287
|
+
| `ARCHIVED` | Feature retained for reference, no longer active | You run `/fluent-archive` or ask the AI to archive it |
|
|
288
|
+
|
|
289
|
+
#### Step-by-step: Building a feature from scratch
|
|
290
|
+
|
|
291
|
+
Here's exactly what happens at each stage, what you say, and what artifacts are created.
|
|
292
|
+
|
|
293
|
+
**Step 1: Discover requirements** (creates `spec.md`, status → `DISCOVERY`)
|
|
294
|
+
|
|
295
|
+
```
|
|
296
|
+
"Help me define the use cases for curbside pickup"
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
The `/fluent-use-case-discover` wizard runs through 10 phases interactively — scope, actors, use cases, entity model, status lifecycles, business rules, integrations, settings, and gap analysis. It queries your live environment if a profile is connected.
|
|
300
|
+
|
|
301
|
+
**What's created:**
|
|
302
|
+
```
|
|
303
|
+
features/curbside-pickup/
|
|
304
|
+
spec.md ← structured Business Specification with completeness score
|
|
305
|
+
status.json ← { "status": "DISCOVERY", "spec": "DRAFT", "plan": null }
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
You review the spec. When satisfied, tell the AI "approve the spec" → `spec` field changes to `"APPROVED"`.
|
|
309
|
+
|
|
310
|
+
**Step 2: Plan the feature** (creates `plan.md`, status → `PLANNING`)
|
|
311
|
+
|
|
312
|
+
```
|
|
313
|
+
"Plan the curbside pickup feature"
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
The `/fluent-feature-plan` skill checks that the spec is approved (>= 75% completeness), then produces an 18-section implementation plan:
|
|
317
|
+
|
|
318
|
+
- Architecture diagrams (Mermaid state machines + sequence diagrams)
|
|
319
|
+
- Workflow changes with before/after diffs
|
|
320
|
+
- Rules inventory — NEW rules get pseudo-logic contracts, OOTB rules get prop configuration
|
|
321
|
+
- Every artifact tagged as NEW / EXISTING / MODIFIED / REUSED / OOTB
|
|
322
|
+
- Settings, webhooks, cross-entity impacts
|
|
323
|
+
- Deployment sequence, risk assessment, test plan
|
|
324
|
+
|
|
325
|
+
**What's created:**
|
|
326
|
+
```
|
|
327
|
+
features/curbside-pickup/
|
|
328
|
+
spec.md ← unchanged
|
|
329
|
+
plan.md ← comprehensive 18-section implementation plan
|
|
330
|
+
status.json ← { "status": "PLANNING", "spec": "APPROVED", "plan": "DRAFT" }
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
The AI presents the plan and **waits for your explicit approval**. You can ask questions, request changes, or reject it. Nothing is built until you say "approved" or "go ahead".
|
|
334
|
+
|
|
335
|
+
**Step 3: Approve the plan** (status → `APPROVED`)
|
|
336
|
+
|
|
337
|
+
```
|
|
338
|
+
"Looks good, approved"
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
**What changes:**
|
|
342
|
+
```
|
|
343
|
+
status.json ← { "status": "APPROVED", "plan": "APPROVED", "planRevision": 1,
|
|
344
|
+
"next": "/fluent-rule-scaffold" }
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
The `next` field tells the AI (and you) which skill to run first. The AI follows the implementation chain from the plan automatically.
|
|
348
|
+
|
|
349
|
+
**Step 4: Build** (status → `IN_PROGRESS`)
|
|
350
|
+
|
|
351
|
+
The AI now executes the plan in order. You can let it run or prompt each step manually:
|
|
352
|
+
|
|
353
|
+
```
|
|
354
|
+
"Create the rules from the plan" → /fluent-rule-scaffold
|
|
355
|
+
"Build the workflow from the plan" → /fluent-workflow-builder
|
|
356
|
+
"Build the module" → /fluent-build
|
|
357
|
+
"Run pre-deploy checks" → /fluent-pre-deploy-check
|
|
358
|
+
"Deploy everything to MY_RETAILER" → /fluent-module-deploy + /fluent-workflow-deploy
|
|
359
|
+
"Run the E2E test from the plan" → /fluent-e2e-test
|
|
360
|
+
```
|
|
361
|
+
|
|
362
|
+
**What's created at each sub-step:**
|
|
363
|
+
|
|
364
|
+
| Sub-step | Skill | Artifacts created |
|
|
365
|
+
|----------|-------|-------------------|
|
|
366
|
+
| Scaffold rules | `/fluent-rule-scaffold` | `SOURCE/<repo>/src/main/java/.../RuleName.java` + test class + `module.json` updated |
|
|
367
|
+
| Build workflow | `/fluent-workflow-builder` | Modified workflow JSON in `workflows/<RETAILER>/` |
|
|
368
|
+
| Validate | `/fluent-workflow-analyzer` | Structural analysis (runs automatically after workflow edits) |
|
|
369
|
+
| Compile module | `/fluent-build` | `SOURCE/<repo>/dist/<module>.zip` + report in `reports/build/` |
|
|
370
|
+
| Pre-deploy gate | `/fluent-pre-deploy-check` | Report in `reports/pre-deploy/` (READY or BLOCKED) |
|
|
371
|
+
| Deploy module | `/fluent-module-deploy` | Module installed on live environment |
|
|
372
|
+
| Deploy workflow | `/fluent-workflow-deploy` | Workflow uploaded to live environment |
|
|
373
|
+
| E2E test | `/fluent-e2e-test` | Test results in `reports/e2e-test/`, entities created on live env |
|
|
374
|
+
|
|
375
|
+
During this phase:
|
|
376
|
+
```
|
|
377
|
+
status.json ← { "status": "IN_PROGRESS", "next": "/fluent-build" }
|
|
378
|
+
(next updates as each step completes)
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
If a test fails, the AI diagnoses the issue, applies a fix, rebuilds, redeploys, and re-tests automatically — looping until all tests pass or an unresolvable blocker is hit.
|
|
382
|
+
|
|
383
|
+
**Step 5: Verified** (status → `VERIFIED`)
|
|
384
|
+
|
|
385
|
+
When all E2E tests pass:
|
|
386
|
+
|
|
387
|
+
```
|
|
388
|
+
status.json ← { "status": "VERIFIED", "next": null }
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
The feature is complete. The AI offers a session summary showing everything that was changed.
|
|
392
|
+
|
|
393
|
+
#### Explaining an existing feature (creates `architecture.md`)
|
|
394
|
+
|
|
395
|
+
Not building — just understanding? Use feature-explain instead:
|
|
396
|
+
|
|
397
|
+
```
|
|
398
|
+
"Explain how Home Delivery works end-to-end"
|
|
399
|
+
```
|
|
400
|
+
|
|
401
|
+
The `/fluent-feature-explain` skill reverse-engineers the live environment:
|
|
402
|
+
|
|
403
|
+
**What's created:**
|
|
404
|
+
```
|
|
405
|
+
features/home-delivery/
|
|
406
|
+
architecture.md ← Feature Architecture Document with:
|
|
407
|
+
- State machine diagrams (Mermaid)
|
|
408
|
+
- Cross-entity sequence diagrams
|
|
409
|
+
- Rules & logic tables
|
|
410
|
+
- Settings dependencies
|
|
411
|
+
- Integration points
|
|
412
|
+
- Analysis Confidence levels (HIGH/MEDIUM/LOW per rule)
|
|
413
|
+
status.json ← { "architecture": true }
|
|
414
|
+
```
|
|
415
|
+
|
|
416
|
+
This is read-only — no plan or implementation needed.
|
|
417
|
+
|
|
418
|
+
#### status.json reference
|
|
419
|
+
|
|
420
|
+
Every feature directory has a `status.json` that the AI reads to know where things stand:
|
|
421
|
+
|
|
422
|
+
```json
|
|
423
|
+
{
|
|
424
|
+
"$schema": "feature-status-v1",
|
|
425
|
+
"feature": "curbside-pickup",
|
|
426
|
+
"retailers": ["Module Test"],
|
|
427
|
+
"status": "APPROVED",
|
|
428
|
+
"created": "2026-02-23",
|
|
429
|
+
"updated": "2026-02-24",
|
|
430
|
+
"spec": "APPROVED",
|
|
431
|
+
"plan": "APPROVED",
|
|
432
|
+
"planRevision": 2,
|
|
433
|
+
"architecture": true,
|
|
434
|
+
"next": "/fluent-rule-scaffold",
|
|
435
|
+
"basedOn": null,
|
|
436
|
+
"archivedOn": null,
|
|
437
|
+
"sessions": []
|
|
438
|
+
}
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
| Field | What it means |
|
|
442
|
+
|-------|--------------|
|
|
443
|
+
| `status` | Overall lifecycle state (DISCOVERY → PLANNING → APPROVED → IN_PROGRESS → VERIFIED → ARCHIVED) |
|
|
444
|
+
| `retailers` | Target retailer ref(s) — array for multi-retailer features (accepts singular `retailer` for backward compat) |
|
|
445
|
+
| `spec` | `"DRAFT"` / `"APPROVED"` / `null` (no spec) |
|
|
446
|
+
| `plan` | `"DRAFT"` / `"APPROVED"` / `null` (no plan) |
|
|
447
|
+
| `planRevision` | Current approved plan revision (increments on re-approval) |
|
|
448
|
+
| `architecture` | `true` if an architecture doc exists |
|
|
449
|
+
| `next` | Which skill should run next (advisory — the AI follows this automatically) |
|
|
450
|
+
| `basedOn` | Slug of parent feature whose architecture.md this feature builds on |
|
|
451
|
+
| `archivedOn` | Date the feature was archived (null if not archived) |
|
|
452
|
+
| `sessions` | Links to audit trail exports (populated by `/fluent-session-audit-export`) |
|
|
453
|
+
|
|
454
|
+
#### Resuming work across sessions
|
|
455
|
+
|
|
456
|
+
When you start a new session, the AI checks `features/*/status.json` to find in-progress work:
|
|
457
|
+
|
|
458
|
+
```
|
|
459
|
+
"What features are in progress?"
|
|
460
|
+
```
|
|
461
|
+
|
|
462
|
+
Or resume a specific feature:
|
|
463
|
+
|
|
464
|
+
```
|
|
465
|
+
"Continue working on curbside pickup"
|
|
466
|
+
```
|
|
467
|
+
|
|
468
|
+
The AI reads `status.json`, sees `"status": "IN_PROGRESS"` and `"next": "/fluent-build"`, and picks up where it left off.
|
|
469
|
+
|
|
470
|
+
#### Revision tracking
|
|
471
|
+
|
|
472
|
+
When a plan or spec is re-approved (major changes), the AI:
|
|
473
|
+
1. Snapshots the current version to `features/<slug>/history/plan.v1.md`
|
|
474
|
+
2. Overwrites `plan.md` with the new version
|
|
475
|
+
3. Increments `planRevision` in `status.json`
|
|
476
|
+
|
|
477
|
+
```
|
|
478
|
+
features/curbside-pickup/
|
|
479
|
+
plan.md ← current (revision 2)
|
|
480
|
+
spec.md ← current
|
|
481
|
+
history/
|
|
482
|
+
plan.v1.md ← snapshot of revision 1
|
|
483
|
+
```
|
|
484
|
+
|
|
485
|
+
### Guided Onboarding (`/fluent-connect`)
|
|
486
|
+
|
|
487
|
+
The fastest way to set up a workspace is the guided connect wizard. In Claude Code:
|
|
488
|
+
|
|
489
|
+
```
|
|
490
|
+
/fluent-connect
|
|
491
|
+
```
|
|
492
|
+
|
|
493
|
+
Or with explicit arguments to skip interactive selection:
|
|
494
|
+
|
|
495
|
+
```
|
|
496
|
+
/fluent-connect --profile MYPROFILE --retailer MY_RETAILER
|
|
497
|
+
```
|
|
498
|
+
|
|
499
|
+
The wizard runs through 5 phases:
|
|
500
|
+
|
|
501
|
+
1. **Profile Discovery** — scans `~/.fluentcommerce/` for CLI profiles, presents a table with account name and environment tier
|
|
502
|
+
2. **Retailer Selection** — reads retailer files for the selected profile, asks which retailer to target
|
|
503
|
+
3. **MCP Wiring** — runs `mcp-setup`, verifies `.mcp.json`, prompts IDE reload, validates connectivity
|
|
504
|
+
4. **Workspace Readiness** — creates directories, downloads workflows, scans source repos, decompiles JARs if needed, builds a deployed rule inventory by cross-referencing `plugin.list` with local source
|
|
505
|
+
5. **Persist & Report** — writes `workspace-state.json` (with content hash for caching), updates `workspace-index.json`, prints a readiness report with next-step suggestions
|
|
506
|
+
|
|
507
|
+
Re-running `/fluent-connect` is safe and instant if nothing changed (content hash match). Use `--force` to re-run full discovery.
|
|
508
|
+
|
|
509
|
+
### Adding Source Code
|
|
510
|
+
|
|
511
|
+
Clone your custom plugin repositories into `accounts/<PROFILE>/SOURCE/`:
|
|
512
|
+
|
|
513
|
+
```bash
|
|
514
|
+
cd accounts/MYPROFILE/SOURCE
|
|
515
|
+
git clone https://bitbucket.org/yourorg/fc-module-extensions.git
|
|
516
|
+
git clone https://bitbucket.org/yourorg/fc-module-returns.git
|
|
517
|
+
```
|
|
518
|
+
|
|
519
|
+
Each repo should contain at minimum:
|
|
520
|
+
- `resources/module.json` — module metadata and rule registrations
|
|
521
|
+
- `pom.xml` — Maven build configuration
|
|
522
|
+
- `src/main/java/` — Java rule classes
|
|
523
|
+
|
|
524
|
+
Skills automatically detect repos by searching recursively for `module.json`, `pom.xml`, or `src/main/java/`. Nested directory structures (including double-nested git clone artifacts like `repo/repo/`) are handled.
|
|
525
|
+
|
|
526
|
+
### Adding JAR Files
|
|
527
|
+
|
|
528
|
+
When original source code is not available, place compiled module JARs directly in `SOURCE/`:
|
|
529
|
+
|
|
530
|
+
```bash
|
|
531
|
+
cp fc-module-extensions-1.2.3.jar accounts/MYPROFILE/SOURCE/
|
|
532
|
+
```
|
|
533
|
+
|
|
534
|
+
Skills will:
|
|
535
|
+
1. Auto-detect JAR files during workspace setup
|
|
536
|
+
2. Decompile them (using CFR or Fernflower if available) into `SOURCE/.decompiled/<jar-basename>/`
|
|
537
|
+
3. Extract `module.json` from the JAR if present
|
|
538
|
+
4. Create a `DECOMPILED.md` marker noting the source JAR, date, and confidence level
|
|
539
|
+
|
|
540
|
+
**Decompiled source is read-only.** Skills can analyze it for rule discovery, behavior explanation, and workflow-rule mapping, but will never suggest editing decompiled files. To modify code, provide original source or scaffold a new module.
|
|
541
|
+
|
|
542
|
+
### Reference Modules
|
|
543
|
+
|
|
544
|
+
Reference (OOTB) modules that ship as a `module.json` + JAR package can also be placed in `SOURCE/`:
|
|
545
|
+
|
|
546
|
+
```bash
|
|
547
|
+
cp -r fluent-module-order/ accounts/MYPROFILE/SOURCE/
|
|
548
|
+
# Contains: module.json + assets/rules/*.jar
|
|
549
|
+
```
|
|
550
|
+
|
|
551
|
+
Skills read rule names, descriptions, and version directly from `module.json` — no decompilation needed for metadata. Decompilation is only triggered if deep analysis of rule implementation logic is requested.
|
|
552
|
+
|
|
553
|
+
### Adding a New Account
|
|
554
|
+
|
|
555
|
+
```bash
|
|
556
|
+
# Create the directory structure
|
|
557
|
+
mkdir -p accounts/NEW_PROFILE/SOURCE
|
|
558
|
+
mkdir -p accounts/NEW_PROFILE/workflows
|
|
559
|
+
mkdir -p accounts/NEW_PROFILE/analysis
|
|
560
|
+
|
|
561
|
+
# Clone plugin repos
|
|
562
|
+
cd accounts/NEW_PROFILE/SOURCE
|
|
563
|
+
git clone <repo-url>
|
|
564
|
+
|
|
565
|
+
# Download workflows (after setting up profile)
|
|
566
|
+
fluent workflow download -p NEW_PROFILE -r RETAILER_REF -w all \
|
|
567
|
+
-o accounts/NEW_PROFILE/workflows/RETAILER_REF/
|
|
568
|
+
```
|
|
569
|
+
|
|
570
|
+
Or let `/fluent-connect` do all of this interactively.
|
|
571
|
+
|
|
572
|
+
### How Analysis Works
|
|
573
|
+
|
|
574
|
+
Once the workspace is populated, skills build a holistic view of what's deployed:
|
|
575
|
+
|
|
576
|
+
1. **Live environment** — `plugin.list` queries all registered orchestration rules
|
|
577
|
+
2. **Local source** — repos with full Java source (modifiable, buildable)
|
|
578
|
+
3. **Local JARs** — decompiled bytecode (analyzable, read-only)
|
|
579
|
+
4. **Workflow definitions** — downloaded JSON files
|
|
580
|
+
|
|
581
|
+
Cross-referencing these produces a **deployed rule inventory**:
|
|
582
|
+
|
|
583
|
+
| Status | Meaning | What you can do |
|
|
584
|
+
|--------|---------|-----------------|
|
|
585
|
+
| Full source | Rule class found in a git repo | Analyze, modify, build, redeploy |
|
|
586
|
+
| Decompiled | Rule class found in decompiled JAR | Analyze behavior, cannot modify |
|
|
587
|
+
| Missing | Deployed rule with no local source or JAR | Blind spot — provide source or JAR |
|
|
588
|
+
|
|
589
|
+
This inventory is persisted in `workspace-state.json` and powers downstream skills like `/fluent-custom-code`, `/fluent-workflow-analyzer`, and `/fluent-rfl-assess`.
|
|
590
|
+
|
|
591
|
+
### .gitignore
|
|
592
|
+
|
|
593
|
+
The `accounts/` directory should be in `.gitignore` — it may contain credentials (via profile references), downloaded workflows, and customer-specific source code:
|
|
594
|
+
|
|
595
|
+
```gitignore
|
|
596
|
+
accounts/
|
|
597
|
+
```
|
|
598
|
+
|
|
599
|
+
## Setup Guide
|
|
600
|
+
|
|
601
|
+
### Option A — Fastest (no source clone)
|
|
602
|
+
|
|
603
|
+
```bash
|
|
604
|
+
npx @fluentcommerce/ai-skills install
|
|
605
|
+
npx @fluentcommerce/ai-skills mcp-setup --profile YOUR_PROFILE
|
|
606
|
+
|
|
607
|
+
# Multi-retailer profile (retailer ref for extension server)
|
|
608
|
+
npx @fluentcommerce/ai-skills mcp-setup --profile YOUR_PROFILE --profile-retailer YOUR_RETAILER_REF
|
|
609
|
+
```
|
|
610
|
+
|
|
611
|
+
When `--profile` is provided, both MCP servers are wired with `FLUENT_PROFILE` automatically.
|
|
612
|
+
You can run immediately with profile auth, or override with explicit OAuth/token env vars.
|
|
613
|
+
|
|
614
|
+
For explicit env auth in `.mcp.json`, fill:
|
|
615
|
+
|
|
616
|
+
- `FLUENT_BASE_URL` — your tenant API URL
|
|
617
|
+
- `FLUENT_RETAILER_ID` — target retailer ID
|
|
618
|
+
- `FLUENT_CLIENT_ID` / `FLUENT_CLIENT_SECRET` — OAuth credentials
|
|
619
|
+
- `FLUENT_USERNAME` / `FLUENT_PASSWORD` — user credentials (if using password grant)
|
|
620
|
+
- `FLUENT_PROFILE_RETAILER` — optional retailer ref for profile-scoped user overrides
|
|
621
|
+
|
|
622
|
+
Restart your IDE after editing `.mcp.json`.
|
|
623
|
+
|
|
624
|
+
### Option B — Extension source clone + local build
|
|
625
|
+
|
|
626
|
+
```bash
|
|
627
|
+
npx @fluentcommerce/ai-skills mcp-setup --install-extn-source --profile YOUR_PROFILE
|
|
628
|
+
```
|
|
629
|
+
|
|
630
|
+
This clones the `fluent-mcp-extn` source into your project, builds it, and wires `.mcp.json` to the local build. Use this if you want to debug or customize the extension server.
|
|
631
|
+
|
|
632
|
+
### Option C — Install from tarball
|
|
633
|
+
|
|
634
|
+
```bash
|
|
635
|
+
# Create tarball
|
|
636
|
+
cd fluent-ai-skills && npm pack
|
|
637
|
+
|
|
638
|
+
# Install from tarball on any machine
|
|
639
|
+
npx ./fluentcommerce-ai-skills-0.2.0.tgz install
|
|
640
|
+
```
|
|
641
|
+
|
|
642
|
+
## End-to-End Validation (Recommended)
|
|
643
|
+
|
|
644
|
+
Validate the full setup path (skills bootstrap -> MCP config -> extension runtime smoke):
|
|
645
|
+
|
|
646
|
+
```bash
|
|
647
|
+
# 1) Install skills + generate MCP config
|
|
648
|
+
npx @fluentcommerce/ai-skills install
|
|
649
|
+
npx @fluentcommerce/ai-skills mcp-setup --profile YOUR_PROFILE --profile-retailer YOUR_RETAILER_REF
|
|
650
|
+
|
|
651
|
+
# 2) Verify generated env in .mcp.json (extension server)
|
|
652
|
+
# FLUENT_PROFILE=YOUR_PROFILE
|
|
653
|
+
# FLUENT_PROFILE_RETAILER=YOUR_RETAILER_REF
|
|
654
|
+
|
|
655
|
+
# 3) Run extension end-to-end smoke
|
|
656
|
+
cd fluent-mcp-extn
|
|
657
|
+
npm install
|
|
658
|
+
npm run build
|
|
659
|
+
npm test
|
|
660
|
+
npm run e2e:smoke -- --wizard
|
|
661
|
+
npm run e2e:smoke -- --profile YOUR_PROFILE
|
|
662
|
+
npm run e2e:smoke -- --profile YOUR_PROFILE --retailer YOUR_RETAILER_REF_OR_ID
|
|
663
|
+
|
|
664
|
+
# 4) Optional: run one smoke cycle per profile retailer
|
|
665
|
+
npm run e2e:smoke -- --profile YOUR_PROFILE --all-retailers
|
|
666
|
+
```
|
|
667
|
+
|
|
668
|
+
This verifies both MCP servers are configured and that `fluent-mcp-extn` can execute real API smoke checks in profile mode.
|
|
669
|
+
|
|
670
|
+
Notes:
|
|
671
|
+
- `--wizard` is for interactive local runs (guided profile/account + retailer selection).
|
|
672
|
+
- `--retailer` accepts retailer ID or retailer ref.
|
|
673
|
+
- CI/non-interactive runs should use explicit flags (`--profile <name> --retailer <id|ref>` or `--profile <name> --all-retailers`).
|
|
674
|
+
- `flow-run` is diagnostics + optional guarded deploy; use `fluent-mcp-extn` smoke for runtime E2E checks.
|
|
675
|
+
|
|
676
|
+
## CLI Reference
|
|
677
|
+
|
|
678
|
+
```
|
|
679
|
+
npx @fluentcommerce/ai-skills <command> [--target <target>] [groups...]
|
|
680
|
+
```
|
|
681
|
+
|
|
682
|
+
| Command | Description |
|
|
683
|
+
|---|---|
|
|
684
|
+
| `install [groups...]` | Install all groups (default) or selected groups |
|
|
685
|
+
| `uninstall [groups...]` | Uninstall all groups or selected groups |
|
|
686
|
+
| `status [groups...]` | Show install status |
|
|
687
|
+
| `list` | List available groups |
|
|
688
|
+
| `mcp-setup [options]` | Generate `.mcp.json` for official + extension MCP servers |
|
|
689
|
+
| `flow-run [options]` | Run diagnostics and optional guarded module deploy |
|
|
690
|
+
| `--version` | Show package version |
|
|
691
|
+
| `--help` | Show help |
|
|
692
|
+
|
|
693
|
+
### `mcp-setup` Options
|
|
694
|
+
|
|
695
|
+
```bash
|
|
696
|
+
# Basic — generates .mcp.json with both servers
|
|
697
|
+
npx @fluentcommerce/ai-skills mcp-setup --profile YOUR_PROFILE
|
|
698
|
+
|
|
699
|
+
# Profile + retailer ref (for fluent-mcp-extn profile-scoped user overrides)
|
|
700
|
+
npx @fluentcommerce/ai-skills mcp-setup --profile YOUR_PROFILE --profile-retailer YOUR_RETAILER_REF
|
|
701
|
+
|
|
702
|
+
# Clone and build extension source locally
|
|
703
|
+
npx @fluentcommerce/ai-skills mcp-setup --install-extn-source --profile YOUR_PROFILE
|
|
704
|
+
|
|
705
|
+
# Custom source location and repo
|
|
706
|
+
npx @fluentcommerce/ai-skills mcp-setup \
|
|
707
|
+
--install-extn-source \
|
|
708
|
+
--extn-dir tools/fluent-mcp-extn \
|
|
709
|
+
--extn-repo https://bitbucket.org/fluentcommerce/fluent-mcp-extn.git
|
|
710
|
+
|
|
711
|
+
# Custom server names
|
|
712
|
+
npx @fluentcommerce/ai-skills mcp-setup \
|
|
713
|
+
--official-server-name fluent-mcp \
|
|
714
|
+
--extn-server-name fluent-mcp-extn
|
|
715
|
+
```
|
|
716
|
+
|
|
717
|
+
`--profile-retailer` expects a retailer **ref** (for example `RETAILER_REF`), not retailer ID.
|
|
718
|
+
|
|
719
|
+
### `flow-run` Options
|
|
720
|
+
|
|
721
|
+
`flow-run` runs pre-deploy diagnostics and optionally deploys a module:
|
|
722
|
+
|
|
723
|
+
```bash
|
|
724
|
+
# Diagnostics only (no deploy)
|
|
725
|
+
npx @fluentcommerce/ai-skills flow-run \
|
|
726
|
+
--profile YOUR_PROFILE \
|
|
727
|
+
--retailer YOUR_RETAILER \
|
|
728
|
+
--module dist/module.zip \
|
|
729
|
+
--config config/module.config.json
|
|
730
|
+
|
|
731
|
+
# Diagnostics + guarded deploy
|
|
732
|
+
npx @fluentcommerce/ai-skills flow-run \
|
|
733
|
+
--profile YOUR_PROFILE \
|
|
734
|
+
--retailer YOUR_RETAILER \
|
|
735
|
+
--module dist/module.zip \
|
|
736
|
+
--config config/module.config.json \
|
|
737
|
+
--deploy --yes --exclude-workflows
|
|
738
|
+
```
|
|
739
|
+
|
|
740
|
+
Steps executed: config checks, CLI preflight, module/workflow listing, optional deploy, JSON report.
|
|
741
|
+
|
|
742
|
+
Report output: `./.fluent-ai-skills/flow-run-report-<timestamp>.json`
|
|
743
|
+
|
|
744
|
+
## Usage Examples
|
|
745
|
+
|
|
746
|
+
### Claude Code — full install + MCP
|
|
747
|
+
|
|
748
|
+
```bash
|
|
749
|
+
npx @fluentcommerce/ai-skills install
|
|
750
|
+
npx @fluentcommerce/ai-skills mcp-setup --profile YOUR_PROFILE
|
|
751
|
+
npx @fluentcommerce/ai-skills status
|
|
752
|
+
```
|
|
753
|
+
|
|
754
|
+
### Cursor — operations focused
|
|
755
|
+
|
|
756
|
+
```bash
|
|
757
|
+
cd your-project
|
|
758
|
+
npx @fluentcommerce/ai-skills install --target cursor cli mcp-extn
|
|
759
|
+
npx @fluentcommerce/ai-skills status --target cursor
|
|
760
|
+
```
|
|
761
|
+
|
|
762
|
+
### GitHub Copilot — shared repo instructions
|
|
763
|
+
|
|
764
|
+
```bash
|
|
765
|
+
cd your-project
|
|
766
|
+
npx @fluentcommerce/ai-skills install --target copilot cli rfl
|
|
767
|
+
```
|
|
768
|
+
|
|
769
|
+
### Uninstall
|
|
770
|
+
|
|
771
|
+
```bash
|
|
772
|
+
# Uninstall all groups from default target
|
|
773
|
+
npx @fluentcommerce/ai-skills uninstall
|
|
774
|
+
|
|
775
|
+
# Uninstall specific groups from specific target
|
|
776
|
+
npx @fluentcommerce/ai-skills uninstall --target windsurf cli
|
|
777
|
+
```
|
|
778
|
+
|
|
779
|
+
## Size Guidance
|
|
780
|
+
|
|
781
|
+
Single-file targets (`copilot`, `vscode`, `windsurf`, `codex`, `gemini`) concatenate all content into one file. If prompt size becomes a concern, install only the groups you need:
|
|
782
|
+
|
|
783
|
+
```bash
|
|
784
|
+
npx @fluentcommerce/ai-skills install --target codex cli mcp-extn
|
|
785
|
+
```
|
|
786
|
+
|
|
787
|
+
## Advanced
|
|
788
|
+
|
|
789
|
+
### Override install location
|
|
790
|
+
|
|
791
|
+
For Claude target, override the default `~/.claude/` location:
|
|
792
|
+
|
|
793
|
+
```bash
|
|
794
|
+
FLUENT_AI_SKILLS_HOME=/custom/path npx @fluentcommerce/ai-skills install
|
|
795
|
+
```
|
|
796
|
+
|
|
797
|
+
```powershell
|
|
798
|
+
# PowerShell
|
|
799
|
+
$env:FLUENT_AI_SKILLS_HOME = "C:\custom\path"; npx @fluentcommerce/ai-skills install
|
|
800
|
+
```
|
|
801
|
+
|
|
802
|
+
```cmd
|
|
803
|
+
# Windows CMD
|
|
804
|
+
set FLUENT_AI_SKILLS_HOME=C:\custom\path && npx @fluentcommerce/ai-skills install
|
|
805
|
+
```
|
|
806
|
+
|
|
807
|
+
### MCP config locations by client
|
|
808
|
+
|
|
809
|
+
| Client | Where to put `.mcp.json` |
|
|
810
|
+
|---|---|
|
|
811
|
+
| Claude Code | Workspace root `.mcp.json` |
|
|
812
|
+
| Cursor | Workspace root `.mcp.json` or `.cursor/mcp.json` |
|
|
813
|
+
| VS Code Copilot | `.vscode/mcp.json` |
|
|
814
|
+
| Windsurf | Workspace/app MCP settings |
|
|
815
|
+
|
|
816
|
+
## Diagrams
|
|
817
|
+
|
|
818
|
+
### Install Flow
|
|
819
|
+
|
|
820
|
+
```mermaid
|
|
821
|
+
flowchart TD
|
|
822
|
+
A["npx @fluentcommerce/ai-skills install"] --> B{"--target"}
|
|
823
|
+
B -->|"claude (default)"| C["~/.claude/agents + ~/.claude/skills"]
|
|
824
|
+
B -->|"cursor"| D[".cursor/rules/*.mdc"]
|
|
825
|
+
B -->|"copilot"| E[".github/copilot-instructions.md"]
|
|
826
|
+
B -->|"windsurf"| F[".windsurfrules"]
|
|
827
|
+
B -->|"codex"| G["AGENTS.md"]
|
|
828
|
+
A --> H{"groups specified?"}
|
|
829
|
+
H -->|"no"| I["install all groups"]
|
|
830
|
+
H -->|"yes"| J["install selected groups only"]
|
|
831
|
+
```
|
|
832
|
+
|
|
833
|
+
### flow-run Execution
|
|
834
|
+
|
|
835
|
+
```mermaid
|
|
836
|
+
flowchart LR
|
|
837
|
+
subgraph Local
|
|
838
|
+
A["Check .mcp.json"]
|
|
839
|
+
B["Scan config placeholders"]
|
|
840
|
+
end
|
|
841
|
+
subgraph CLI
|
|
842
|
+
C["fluent --version"]
|
|
843
|
+
D["fluent profile active"]
|
|
844
|
+
E["fluent module describe/list"]
|
|
845
|
+
F["fluent workflow list"]
|
|
846
|
+
end
|
|
847
|
+
subgraph Deploy
|
|
848
|
+
G{"--deploy --yes?"}
|
|
849
|
+
H["fluent module install"]
|
|
850
|
+
I["post-deploy verify"]
|
|
851
|
+
end
|
|
852
|
+
A --> B --> C --> D --> E --> F --> G
|
|
853
|
+
G -->|"yes"| H --> I
|
|
854
|
+
G -->|"no"| J["write diagnostics report only"]
|
|
855
|
+
```
|
|
856
|
+
|
|
857
|
+
## Companion Packages
|
|
858
|
+
|
|
859
|
+
| Package | Purpose |
|
|
860
|
+
|---|---|
|
|
861
|
+
| [`@fluentcommerce/fluent-mcp-extn`](https://www.npmjs.com/package/@fluentcommerce/fluent-mcp-extn) | MCP extension server (events, transitions, GraphQL, metrics, batch, webhooks) |
|
|
862
|
+
| Fluent CLI (`@fluentcommerce/cli`) | Official CLI and built-in MCP server |
|
|
863
|
+
|
|
864
|
+
## License
|
|
865
|
+
|
|
866
|
+
MIT
|