@fluentcommerce/ai-skills 0.8.2 → 0.8.3
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 +79 -29
- package/bin/cli.mjs +278 -10
- package/content/cli/skills/fluent-cli-mcp-cicd/SKILL.md +6 -3
- package/content/cli/skills/fluent-connect/SKILL.md +1 -1
- package/content/dev/skills/fluent-e2e-test/SKILL.md +3 -1
- package/content/dev/skills/fluent-event-api/SKILL.md +1 -0
- package/content/dev/skills/fluent-feature-explain/SKILL.md +1 -0
- package/content/dev/skills/fluent-feature-plan/SKILL.md +1 -0
- package/content/dev/skills/fluent-mystique-builder/SKILL.md +2 -3
- package/content/dev/skills/fluent-mystique-scaffold/SDK_REFERENCE.md +2 -2
- package/content/dev/skills/fluent-mystique-scaffold/TEMPLATES.md +1 -2
- package/content/dev/skills/fluent-mystique-sdk-reference/SKILL.md +2 -2
- package/content/dev/skills/fluent-pre-deploy-check/SKILL.md +25 -0
- package/content/dev/skills/fluent-sourcing/SKILL.md +4 -0
- package/content/dev/skills/fluent-test-data/SKILL.md +4 -0
- package/content/dev/skills/fluent-trace/SKILL.md +16 -1
- package/content/dev/skills/fluent-workflow-builder/SKILL.md +11 -1
- package/content/dev/skills/fluent-workflow-deploy/SKILL.md +27 -0
- package/content/knowledge/index.md +2 -0
- package/content/knowledge/platform/create-order-reference.md +797 -0
- package/content/knowledge/platform/domain-model.md +1 -1
- package/content/knowledge/platform/workflow-design.md +18 -0
- package/content/mcp-extn/skills/fluent-mcp-core/SKILL.md +1 -1
- package/content/mcp-extn/skills/fluent-mcp-tools/SKILL.md +1 -1
- package/docs/dev-workflow.md +5 -2
- package/docs/fluent-ai-skills-reference.md +2 -2
- package/docs/getting-started.md +2 -2
- package/docs/use-cases.md +1 -1
- package/docs/workflow-reference.md +4 -2
- package/metadata.json +1 -1
- package/package.json +1 -1
|
@@ -559,7 +559,7 @@ event into the workflow engine — enabling automatic rule execution on entity c
|
|
|
559
559
|
|
|
560
560
|
**Key implications:**
|
|
561
561
|
- **No CREATE event** (Location, Virtual Catalogue, Control Group): Entity creation does NOT trigger workflow rules. You must send an explicit event (e.g., `LOCATION_CREATED`) to kick off processing.
|
|
562
|
-
- **Has CREATE event** (Order, Fulfilment, etc.): The `createOrder`, `createFulfilment`, etc. mutations automatically fire a `CREATE` event. Workflows can have a ruleset triggered by `entityType: "ORDER"`, `eventName: "CREATE"` to begin processing immediately.
|
|
562
|
+
- **Has CREATE event** (Order, Fulfilment, etc.): The `createOrder`, `createFulfilment`, etc. mutations automatically fire a `CREATE` event. Workflows can have a ruleset triggered by `entityType: "ORDER"`, `eventName: "CREATE"` to begin processing immediately. See `knowledge/platform/create-order-reference.md` for full mutation input schemas, fulfilmentChoice wiring, and ORDER::MULTI patterns.
|
|
563
563
|
- **Sub-entities inherit the parent workflow**: A Fulfilment's statuses and rulesets are defined within the Order workflow (or a dedicated Fulfilment workflow). The workflow engine routes events by `entityType` + `entitySubtype`.
|
|
564
564
|
|
|
565
565
|
---
|
|
@@ -106,6 +106,24 @@ When an orchestrable entity is created, it is assigned to the **latest active ma
|
|
|
106
106
|
|
|
107
107
|
**Platform behavior:** Fluent no longer auto-bumps major versions. The platform always makes a **minor version bump** on update. Major version bumps are the developer's responsibility.
|
|
108
108
|
|
|
109
|
+
### Concrete Example: Major Version Boundary in Action
|
|
110
|
+
|
|
111
|
+
```
|
|
112
|
+
Timeline:
|
|
113
|
+
1. Workflow ORDER::CC is at v99.10
|
|
114
|
+
2. Order #A is created → assigned to major 99 (uses v99.10)
|
|
115
|
+
3. Developer makes breaking ruleset changes and uploads v100.0
|
|
116
|
+
4. Order #A continues processing on major 99 (still v99.10)
|
|
117
|
+
— every event on Order #A executes against v99.10, NOT v100.0
|
|
118
|
+
5. Developer patches v99.11 (minor bump on old major)
|
|
119
|
+
→ Order #A now uses v99.11 immediately
|
|
120
|
+
6. Order #B is created → assigned to major 100 (uses v100.0)
|
|
121
|
+
7. Order #A still on major 99, Order #B on major 100
|
|
122
|
+
— they coexist with different workflow logic
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
The major version acts as a **hard boundary** protecting in-flight entities. Entities never cross major versions automatically — they stay on the major they were assigned at creation and always use its latest minor.
|
|
126
|
+
|
|
109
127
|
### Migration Responsibility
|
|
110
128
|
|
|
111
129
|
If existing entities need to move to a new major version, the developer must handle migration (state changes, attribute updates, webhooks, etc.). The platform does not auto-migrate.
|
|
@@ -81,7 +81,7 @@ Run `health.ping` to confirm config readiness and SDK adapter status.
|
|
|
81
81
|
| `health.ping` fails | No active profile | Run `fluent profile active` |
|
|
82
82
|
| Auth error | Expired token | Run `fluent profile update <PROFILE> --password <new-pass>` |
|
|
83
83
|
| Empty workflow list | Wrong retailer ref | Check `fluent profile retailers <PROFILE>` |
|
|
84
|
-
| Server won't start | CLI not in PATH |
|
|
84
|
+
| Server won't start | CLI not in PATH | Install from [docs.fluentcommerce.com](https://docs.fluentcommerce.com/building-blocks/fluent-cli-package) |
|
|
85
85
|
|
|
86
86
|
## Transport Modes
|
|
87
87
|
|
|
@@ -231,7 +231,7 @@ Use `graphql.query` for one-off queries with manual pagination. Mutations are no
|
|
|
231
231
|
|
|
232
232
|
```json
|
|
233
233
|
{
|
|
234
|
-
"query": "{ orders(first: 10, status: \"BOOKED\") { edges { node { id ref status totalPrice } } pageInfo { hasNextPage
|
|
234
|
+
"query": "{ orders(first: 10, status: \"BOOKED\") { edges { cursor node { id ref status totalPrice } } pageInfo { hasNextPage } } }"
|
|
235
235
|
}
|
|
236
236
|
```
|
|
237
237
|
|
package/docs/dev-workflow.md
CHANGED
|
@@ -204,11 +204,14 @@ Use MCP `graphql.query`:
|
|
|
204
204
|
{ orders(ref: ["<REF>"], first: 1) { edges { node {
|
|
205
205
|
id ref type status createdOn updatedOn
|
|
206
206
|
attributes { name type value }
|
|
207
|
-
fulfilmentChoice {
|
|
208
|
-
|
|
207
|
+
fulfilmentChoice { id ref type status deliveryType }
|
|
208
|
+
fulfilmentChoices { edges { node { id ref type status deliveryType } } }
|
|
209
|
+
items { edges { node { ref quantity status fulfilmentChoice { id ref type status deliveryType } } } }
|
|
209
210
|
} } } }
|
|
210
211
|
```
|
|
211
212
|
|
|
213
|
+
Use `items[].fulfilmentChoiceRef` only on `createOrder` input. For schema-validated `ORDER::MULTI` input and readback patterns, see `content/knowledge/platform/create-order-reference.md`.
|
|
214
|
+
|
|
212
215
|
**Fulfilments:**
|
|
213
216
|
```graphql
|
|
214
217
|
{ fulfilments(ref: ["<REF>"], first: 1) { edges { node {
|
|
@@ -100,7 +100,7 @@ npx @fluentcommerce/ai-skills install --profile YOUR_PROFILE --profile-retailer
|
|
|
100
100
|
|
|
101
101
|
```mermaid
|
|
102
102
|
graph LR
|
|
103
|
-
A["1. Install Fluent CLI<br/>
|
|
103
|
+
A["1. Install Fluent CLI<br/>docs.fluentcommerce.com/building-blocks/fluent-cli-package"] --> B["2. Create profile<br/>fluent profile create MY_PROFILE"]
|
|
104
104
|
B --> C["3. Install skills<br/>npx @fluentcommerce/ai-skills install<br/>--profile MY_PROFILE"]
|
|
105
105
|
C --> D["4. Connect workspace<br/>/fluent-connect"]
|
|
106
106
|
D --> E["5. Start working<br/>Explain how HD works"]
|
|
@@ -231,7 +231,7 @@ Every artifact is scoped under `accounts/<PROFILE>/`. Directories are created on
|
|
|
231
231
|
```
|
|
232
232
|
fluent-ai-workspace/
|
|
233
233
|
├── .mcp.json ← MCP server config (auto-generated, gitignored)
|
|
234
|
-
├── CLAUDE.md ←
|
|
234
|
+
├── CLAUDE.md ← Starter workspace instructions (auto-generated, safe to edit)
|
|
235
235
|
└── accounts/<PROFILE>/ ← All data scoped to your Fluent account
|
|
236
236
|
│
|
|
237
237
|
├── SOURCE/ ← Implementation source code (shared across retailers)
|
package/docs/getting-started.md
CHANGED
|
@@ -29,7 +29,7 @@ A hands-on walkthrough for first-time users of `@fluentcommerce/ai-skills`. Foll
|
|
|
29
29
|
| Requirement | How to check |
|
|
30
30
|
|-------------|-------------|
|
|
31
31
|
| Node.js 18+ | `node --version` |
|
|
32
|
-
| Fluent CLI installed | `fluent --version` (install
|
|
32
|
+
| Fluent CLI installed | `fluent --version` (install from [docs.fluentcommerce.com](https://docs.fluentcommerce.com/building-blocks/fluent-cli-package)) |
|
|
33
33
|
| A Fluent Commerce account | Base URL, credentials, and a retailer to work with |
|
|
34
34
|
| A Fluent CLI profile configured | `fluent profile create YOUR_PROFILE --id <id> --username <user> --password <pass> --client-secret <secret> --base-url <url>` |
|
|
35
35
|
| Claude Code | The supported AI IDE |
|
|
@@ -432,7 +432,7 @@ The AI never makes changes without asking first:
|
|
|
432
432
|
|
|
433
433
|
```bash
|
|
434
434
|
# 1. Verify Fluent CLI
|
|
435
|
-
fluent --version # should print version; if not:
|
|
435
|
+
fluent --version # should print version; if not: https://docs.fluentcommerce.com/building-blocks/fluent-cli-package
|
|
436
436
|
|
|
437
437
|
# 2. Verify profile
|
|
438
438
|
ls ~/.fluentcommerce/YOUR_PROFILE/ # should exist; if not: fluent profile create YOUR_PROFILE ...
|
package/docs/use-cases.md
CHANGED
|
@@ -1163,7 +1163,7 @@ These errors come from the MCP extension server when calling Fluent Commerce API
|
|
|
1163
1163
|
|
|
1164
1164
|
**"Workflow download fails or returns empty"**
|
|
1165
1165
|
- Check you have the right profile and retailer: `fluent workflow list -p YOUR_PROFILE -r YOUR_RETAILER`
|
|
1166
|
-
- Fluent CLI must be installed:
|
|
1166
|
+
- Fluent CLI must be installed: see [install guide](https://docs.fluentcommerce.com/building-blocks/fluent-cli-package)
|
|
1167
1167
|
- The profile must have the retailer associated — verify with `fluent profile retailers YOUR_PROFILE`
|
|
1168
1168
|
|
|
1169
1169
|
**"The AI keeps asking me to approve a plan"**
|
|
@@ -67,8 +67,10 @@ When `source: "settings.<KEY>"` is used in a user action attribute, the UI popul
|
|
|
67
67
|
## ORDER::MULTI Workflow — Test Reference
|
|
68
68
|
|
|
69
69
|
Key points:
|
|
70
|
+
- Canonical `createOrder` contract: `content/knowledge/platform/create-order-reference.md`
|
|
70
71
|
- Order `type` must be `"MULTI"` (not `"HD"`)
|
|
71
|
-
-
|
|
72
|
+
- On mutation input, items MUST include `fulfilmentChoiceRef` to link to FC
|
|
73
|
+
- On readback queries, verify the link via `items[].fulfilmentChoice { ... }` — do not expect an `OrderItem.fulfilmentChoiceRef` scalar
|
|
72
74
|
- FC needs `sourcingLocationRef` attribute
|
|
73
75
|
- FC `type` (routing) ≠ fulfilment `type` (created fulfilment)
|
|
74
|
-
- Flow: `CREATE` → `SkipFraudCheck` → `ON_VALIDATION` → `ConfirmValidation` → `ProcessOrder` → `RouteFulfilmentChoice` → `ProcessHDFulfilmentChoice` → `CreateFulfilmentFromSourcingLocation`
|
|
76
|
+
- Flow: `CREATE` → `SkipFraudCheck` → `ON_VALIDATION` → `ConfirmValidation` → `ProcessOrder` → `RouteFulfilmentChoice` → `ProcessHDFulfilmentChoice` → `CreateFulfilmentFromSourcingLocation`
|
package/metadata.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluentcommerce/ai-skills",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.3",
|
|
4
4
|
"description": "[Experimental] Fluent Commerce domain knowledge for Claude Code. Skills, agents, and MCP server configs for workflows, events, rules, and APIs.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"fluent-commerce",
|