@salesforce/b2c-dx-mcp 3.2.1 → 3.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/bin/run.js +5 -9
- package/content/guidance/b2c/b2c-hooks/references/ORDER-HOOK-LIFECYCLE.md +1 -1
- package/content/guidance/b2c/b2c-onboarding/SKILL.md +4 -4
- package/content/guidance/b2c/b2c-ordering/SKILL.md +2 -2
- package/content/guidance/b2c/b2c-querying-data/SKILL.md +2 -2
- package/content/guidance/b2c/b2c-scapi-admin/SKILL.md +3 -3
- package/content/guidance/b2c/b2c-scapi-admin/references/CLIENT-EXAMPLES.md +4 -4
- package/content/guidance/b2c/b2c-scapi-shopper/SKILL.md +6 -6
- package/content/guidance/b2c/b2c-scapi-shopper/references/CLIENT-EXAMPLES.md +8 -9
- package/content/guidance/b2c-cli/b2c-cip/SKILL.md +3 -3
- package/content/guidance/b2c-cli/b2c-cip/references/SALES_ANALYSIS.md +1 -1
- package/content/guidance/b2c-cli/b2c-config/SKILL.md +31 -21
- package/content/guidance/b2c-cli/b2c-content/SKILL.md +1 -1
- package/content/guidance/b2c-cli/b2c-debug/SKILL.md +1 -1
- package/content/guidance/b2c-cli/b2c-docs/SKILL.md +23 -2
- package/content/guidance/b2c-cli/b2c-ecdn/references/ADVANCED.md +1 -1
- package/content/guidance/b2c-cli/b2c-job/references/IMPORT.md +1 -1
- package/content/guidance/b2c-cli/b2c-metrics/SKILL.md +1 -1
- package/content/guidance/b2c-cli/b2c-mrt/SKILL.md +3 -3
- package/content/guidance/b2c-cli/b2c-scapi-custom/SKILL.md +1 -1
- package/content/guidance/b2c-cli/b2c-scapi-schemas/SKILL.md +1 -1
- package/content/guidance/b2c-cli/b2c-site-import-export/SKILL.md +1 -1
- package/content/guidance/b2c-cli/b2c-sites/SKILL.md +1 -1
- package/content/guidance/b2c-cli/b2c-slas/SKILL.md +1 -1
- package/content/guidance/b2c-ops/b2c-checkout-triage/SKILL.md +2 -2
- package/content/guidance/b2c-ops/b2c-job-health/SKILL.md +2 -2
- package/content/guidance/b2c-ops/b2c-order-failure-triage/SKILL.md +1 -1
- package/content/guidance/b2c-ops/b2c-order-failure-triage/references/order-evidence.md +2 -2
- package/content/guidance/b2c-ops/b2c-production-triage/SKILL.md +4 -4
- package/content/guidance/index.json +935 -258
- package/content/guidance/mcp/{cip → b2c-mcp-cip}/SKILL.md +10 -8
- package/content/guidance/mcp/{b2c-config → b2c-mcp-config}/SKILL.md +10 -9
- package/content/guidance/mcp/{debugger → b2c-mcp-debugger}/SKILL.md +9 -8
- package/content/guidance/mcp/{scapi → b2c-mcp-scapi}/SKILL.md +81 -10
- package/content/guidance/mcp/{server → b2c-mcp-server}/SKILL.md +49 -25
- package/content/guidance/storefront-next/sfnext-accessibility/SKILL.md +103 -0
- package/content/guidance/storefront-next/sfnext-accessibility/references/checklist.md +64 -0
- package/content/guidance/storefront-next/sfnext-analytics-consent/SKILL.md +91 -0
- package/content/guidance/storefront-next/sfnext-analytics-consent/references/CUSTOM-ADAPTER.md +49 -0
- package/content/guidance/storefront-next/sfnext-authentication/SKILL.md +86 -79
- package/content/guidance/storefront-next/sfnext-authentication/references/COOKIES.md +39 -0
- package/content/guidance/storefront-next/sfnext-authentication/references/LOGIN-FLOWS.md +59 -0
- package/content/guidance/storefront-next/sfnext-commerce-features/SKILL.md +67 -0
- package/content/guidance/storefront-next/sfnext-commerce-features/references/FEATURE-PREREQUISITES.md +37 -0
- package/content/guidance/storefront-next/sfnext-components/SKILL.md +98 -136
- package/content/guidance/storefront-next/sfnext-components/references/COMPONENT-AUTHORING.md +118 -0
- package/content/guidance/storefront-next/sfnext-components/references/SHAPE-TOKENS.md +51 -0
- package/content/guidance/storefront-next/sfnext-components/references/STORYBOOK.md +54 -0
- package/content/guidance/storefront-next/sfnext-components/references/TOKEN-SYSTEM.md +53 -0
- package/content/guidance/storefront-next/sfnext-components/references/TROUBLESHOOTING.md +19 -0
- package/content/guidance/storefront-next/sfnext-configuration/SKILL.md +116 -113
- package/content/guidance/storefront-next/sfnext-configuration/references/ENV-VARIABLES.md +55 -0
- package/content/guidance/storefront-next/sfnext-configuration/references/MULTI-SITE-URLS.md +137 -0
- package/content/guidance/storefront-next/sfnext-data-fetching/SKILL.md +100 -150
- package/content/guidance/storefront-next/sfnext-data-fetching/references/ACTIONS.md +53 -0
- package/content/guidance/storefront-next/sfnext-data-fetching/references/API-CLIENTS.md +34 -0
- package/content/guidance/storefront-next/sfnext-data-fetching/references/LOADERS.md +73 -0
- package/content/guidance/storefront-next/sfnext-data-fetching/references/SCAPI-FETCHER.md +23 -77
- package/content/guidance/storefront-next/sfnext-deployment/SKILL.md +83 -97
- package/content/guidance/storefront-next/sfnext-deployment/references/MRT-DEPLOYMENT.md +37 -68
- package/content/guidance/storefront-next/sfnext-extensions/SKILL.md +73 -97
- package/content/guidance/storefront-next/sfnext-extensions/references/ACTION-HOOKS.md +57 -0
- package/content/guidance/storefront-next/sfnext-extensions/references/BASE-AUDIT.md +47 -44
- package/content/guidance/storefront-next/sfnext-extensions/references/CLI-AND-INSTALL.md +58 -0
- package/content/guidance/storefront-next/sfnext-extensions/references/EXTENSION-EXAMPLES.md +49 -86
- package/content/guidance/storefront-next/sfnext-hybrid-storefronts/SKILL.md +59 -114
- package/content/guidance/storefront-next/sfnext-hybrid-storefronts/references/HYBRID-PROXY-CONFIG.md +53 -90
- package/content/guidance/storefront-next/sfnext-i18n/SKILL.md +96 -131
- package/content/guidance/storefront-next/sfnext-i18n/references/locale-config.md +35 -0
- package/content/guidance/storefront-next/sfnext-overview/SKILL.md +101 -0
- package/content/guidance/storefront-next/sfnext-page-designer/SKILL.md +152 -131
- package/content/guidance/storefront-next/sfnext-page-designer/references/BUSINESS-MANAGER.md +46 -0
- package/content/guidance/storefront-next/sfnext-page-designer/references/COMPONENT-REGISTRY.md +86 -53
- package/content/guidance/storefront-next/sfnext-page-designer/references/DECORATOR-PATTERNS.md +119 -131
- package/content/guidance/storefront-next/sfnext-page-designer/references/REVIEW-CHECKLIST.md +83 -0
- package/content/guidance/storefront-next/sfnext-page-designer/references/TROUBLESHOOTING.md +35 -0
- package/content/guidance/storefront-next/sfnext-performance/SKILL.md +75 -105
- package/content/guidance/storefront-next/sfnext-performance/references/PERFORMANCE-REVIEW-CHECKLIST.md +85 -0
- package/content/guidance/storefront-next/sfnext-performance/references/SUSPENSE-AND-STREAMING.md +58 -0
- package/content/guidance/storefront-next/sfnext-project-setup/SKILL.md +103 -116
- package/content/guidance/storefront-next/sfnext-project-setup/references/PROJECT-STRUCTURE.md +61 -99
- package/content/guidance/storefront-next/sfnext-project-setup/references/SCRIPTS.md +47 -0
- package/content/guidance/storefront-next/sfnext-project-setup/references/SFNEXT-CLI.md +63 -0
- package/content/guidance/storefront-next/sfnext-quality-gates/SKILL.md +70 -0
- package/content/guidance/storefront-next/sfnext-quality-gates/references/lint-and-budgets.md +39 -0
- package/content/guidance/storefront-next/sfnext-revalidation/SKILL.md +121 -0
- package/content/guidance/storefront-next/sfnext-revalidation/references/POLICIES-AND-TAGS.md +55 -0
- package/content/guidance/storefront-next/sfnext-routing/SKILL.md +86 -143
- package/content/guidance/storefront-next/sfnext-routing/references/ROUTE-CONVENTIONS.md +51 -51
- package/content/guidance/storefront-next/sfnext-routing/references/URLS-AND-SEO-ROUTES.md +22 -0
- package/content/guidance/storefront-next/sfnext-scapi/SKILL.md +126 -0
- package/content/guidance/storefront-next/sfnext-scapi/references/WORKED-EXAMPLE.md +39 -0
- package/content/guidance/storefront-next/sfnext-security/SKILL.md +129 -0
- package/content/guidance/storefront-next/sfnext-security/references/COOKIE-DOMAIN.md +39 -0
- package/content/guidance/storefront-next/sfnext-security/references/TURNSTILE.md +43 -0
- package/content/guidance/storefront-next/sfnext-seo/SKILL.md +95 -0
- package/content/guidance/storefront-next/sfnext-seo/references/MULTI-DOMAIN-BASE-PATH.md +17 -0
- package/content/guidance/storefront-next/sfnext-seo/references/SEO-ROUTES.md +31 -0
- package/content/guidance/storefront-next/sfnext-state-management/SKILL.md +80 -89
- package/content/guidance/storefront-next/sfnext-state-management/references/PATTERNS.md +45 -0
- package/content/guidance/storefront-next/sfnext-testing/SKILL.md +105 -138
- package/content/guidance/storefront-next/sfnext-testing/references/E2E.md +38 -0
- package/content/guidance/storefront-next/sfnext-testing/references/STORYBOOK-PATTERNS.md +73 -94
- package/content/guidance/storefront-next/sfnext-testing/references/UNIT-AND-ROUTE-TESTS.md +60 -0
- package/content/guidance/storefront-next/sfnext-theming/SKILL.md +104 -0
- package/content/guidance/storefront-next/sfnext-theming/references/REBRAND-CHECKLIST.md +29 -0
- package/dist/commands/mcp.d.ts +8 -2
- package/dist/commands/mcp.js +54 -20
- package/dist/guidance.d.ts +4 -1
- package/dist/guidance.js +23 -5
- package/dist/registry.d.ts +2 -1
- package/dist/registry.js +3 -3
- package/dist/server.d.ts +10 -0
- package/dist/server.js +21 -0
- package/dist/skill-references.js +5 -5
- package/dist/tools/cartridges/index.js +1 -0
- package/dist/tools/cip/index.js +6 -3
- package/dist/tools/diagnostics/debug-capture-at-breakpoint.js +1 -1
- package/dist/tools/diagnostics/debug-set-breakpoints.js +1 -1
- package/dist/tools/diagnostics/debug-start-session.js +1 -1
- package/dist/tools/scapi/index.d.ts +4 -1
- package/dist/tools/scapi/index.js +4 -2
- package/dist/tools/scapi/scapi-code.d.ts +2 -2
- package/dist/tools/scapi/scapi-code.js +17 -61
- package/dist/utils/types.d.ts +6 -0
- package/node_modules/@salesforce/b2c-agent-plugins/CHANGELOG.md +20 -0
- package/node_modules/@salesforce/b2c-agent-plugins/README.md +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/b2c/.codex-plugin/plugin.json +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c/plugin.json +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c/skills/b2c-hooks/references/ORDER-HOOK-LIFECYCLE.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c/skills/b2c-onboarding/SKILL.md +4 -4
- package/node_modules/@salesforce/b2c-agent-plugins/b2c/skills/b2c-ordering/SKILL.md +2 -2
- package/node_modules/@salesforce/b2c-agent-plugins/b2c/skills/b2c-querying-data/SKILL.md +2 -2
- package/node_modules/@salesforce/b2c-agent-plugins/b2c/skills/b2c-scapi-admin/SKILL.md +3 -3
- package/node_modules/@salesforce/b2c-agent-plugins/b2c/skills/b2c-scapi-admin/references/CLIENT-EXAMPLES.md +4 -4
- package/node_modules/@salesforce/b2c-agent-plugins/b2c/skills/b2c-scapi-shopper/SKILL.md +6 -6
- package/node_modules/@salesforce/b2c-agent-plugins/b2c/skills/b2c-scapi-shopper/references/CLIENT-EXAMPLES.md +8 -9
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/.codex-plugin/plugin.json +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/plugin.json +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-cip/SKILL.md +3 -3
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-cip/references/SALES_ANALYSIS.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-config/SKILL.md +31 -21
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-content/SKILL.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-debug/SKILL.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-docs/SKILL.md +23 -2
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-ecdn/references/ADVANCED.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-job/references/IMPORT.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-metrics/SKILL.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-mrt/SKILL.md +3 -3
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-scapi-custom/SKILL.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-scapi-schemas/SKILL.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-site-import-export/SKILL.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-sites/SKILL.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-cli/skills/b2c-slas/SKILL.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-ops/.codex-plugin/plugin.json +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-ops/plugin.json +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-ops/skills/b2c-checkout-triage/SKILL.md +2 -2
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-ops/skills/b2c-job-health/SKILL.md +2 -2
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-ops/skills/b2c-order-failure-triage/SKILL.md +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-ops/skills/b2c-order-failure-triage/references/order-evidence.md +2 -2
- package/node_modules/@salesforce/b2c-agent-plugins/b2c-ops/skills/b2c-production-triage/SKILL.md +4 -4
- package/node_modules/@salesforce/b2c-agent-plugins/figma-to-sfnext-pagedesigner/README.md +4 -4
- package/node_modules/@salesforce/b2c-agent-plugins/figma-to-sfnext-pagedesigner/skills/figma-to-sfnext-pagedesigner/SKILL.md +76 -73
- package/node_modules/@salesforce/b2c-agent-plugins/figma-to-sfnext-pagedesigner/skills/figma-to-sfnext-pagedesigner/evals/trigger-evals.json +12 -10
- package/node_modules/@salesforce/b2c-agent-plugins/figma-to-sfnext-pagedesigner/skills/figma-to-sfnext-pagedesigner/references/PAGE-DESIGNER-SFN.md +49 -74
- package/node_modules/@salesforce/b2c-agent-plugins/package.json +1 -1
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/.codex-plugin/plugin.json +9 -6
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/README.md +43 -22
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/plugin.json +9 -6
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-accessibility/SKILL.md +103 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-accessibility/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-accessibility/references/checklist.md +64 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-analytics-consent/SKILL.md +91 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-analytics-consent/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-analytics-consent/references/CUSTOM-ADAPTER.md +49 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-authentication/SKILL.md +86 -79
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-authentication/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-authentication/references/COOKIES.md +39 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-authentication/references/LOGIN-FLOWS.md +59 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-commerce-features/SKILL.md +67 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-commerce-features/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-commerce-features/references/FEATURE-PREREQUISITES.md +37 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-components/SKILL.md +98 -136
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-components/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-components/references/COMPONENT-AUTHORING.md +118 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-components/references/SHAPE-TOKENS.md +51 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-components/references/STORYBOOK.md +54 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-components/references/TOKEN-SYSTEM.md +53 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-components/references/TROUBLESHOOTING.md +19 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-configuration/SKILL.md +116 -113
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-configuration/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-configuration/references/ENV-VARIABLES.md +55 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-configuration/references/MULTI-SITE-URLS.md +137 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-data-fetching/SKILL.md +100 -150
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-data-fetching/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-data-fetching/references/ACTIONS.md +53 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-data-fetching/references/API-CLIENTS.md +34 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-data-fetching/references/LOADERS.md +73 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-data-fetching/references/SCAPI-FETCHER.md +23 -77
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-deployment/SKILL.md +83 -97
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-deployment/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-deployment/references/MRT-DEPLOYMENT.md +37 -68
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-extensions/SKILL.md +73 -97
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-extensions/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-extensions/references/ACTION-HOOKS.md +57 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-extensions/references/BASE-AUDIT.md +47 -44
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-extensions/references/CLI-AND-INSTALL.md +58 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-extensions/references/EXTENSION-EXAMPLES.md +49 -86
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-hybrid-storefronts/SKILL.md +59 -114
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-hybrid-storefronts/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-hybrid-storefronts/references/HYBRID-PROXY-CONFIG.md +53 -90
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-i18n/SKILL.md +96 -131
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-i18n/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-i18n/references/locale-config.md +35 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-overview/SKILL.md +101 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-overview/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-page-designer/SKILL.md +152 -131
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-page-designer/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-page-designer/references/BUSINESS-MANAGER.md +46 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-page-designer/references/COMPONENT-REGISTRY.md +86 -53
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-page-designer/references/DECORATOR-PATTERNS.md +119 -131
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-page-designer/references/REVIEW-CHECKLIST.md +83 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-page-designer/references/TROUBLESHOOTING.md +35 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-performance/SKILL.md +75 -105
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-performance/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-performance/references/PERFORMANCE-REVIEW-CHECKLIST.md +85 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-performance/references/SUSPENSE-AND-STREAMING.md +58 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-project-setup/SKILL.md +103 -116
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-project-setup/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-project-setup/references/PROJECT-STRUCTURE.md +61 -99
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-project-setup/references/SCRIPTS.md +47 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-project-setup/references/SFNEXT-CLI.md +63 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-quality-gates/SKILL.md +70 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-quality-gates/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-quality-gates/references/lint-and-budgets.md +39 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-revalidation/SKILL.md +121 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-revalidation/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-revalidation/references/POLICIES-AND-TAGS.md +55 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-routing/SKILL.md +86 -143
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-routing/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-routing/references/ROUTE-CONVENTIONS.md +51 -51
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-routing/references/URLS-AND-SEO-ROUTES.md +22 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-scapi/SKILL.md +126 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-scapi/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-scapi/references/WORKED-EXAMPLE.md +39 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-security/SKILL.md +129 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-security/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-security/references/COOKIE-DOMAIN.md +39 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-security/references/TURNSTILE.md +43 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-seo/SKILL.md +95 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-seo/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-seo/references/MULTI-DOMAIN-BASE-PATH.md +17 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-seo/references/SEO-ROUTES.md +31 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-state-management/SKILL.md +80 -89
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-state-management/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-state-management/references/PATTERNS.md +45 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-testing/SKILL.md +105 -138
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-testing/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-testing/references/E2E.md +38 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-testing/references/STORYBOOK-PATTERNS.md +73 -94
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-testing/references/UNIT-AND-ROUTE-TESTS.md +60 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-theming/SKILL.md +104 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-theming/evals/trigger-evals.json +5 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-theming/references/REBRAND-CHECKLIST.md +29 -0
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next-figma/skills/sfnext-create-figma-kit/SKILL.md +3 -3
- package/oclif.manifest.json +21 -4
- package/package.json +3 -3
- package/content/guidance/storefront-next/sfnext-create-component/SKILL.md +0 -195
- package/content/guidance/storefront-next/sfnext-create-component/references/COMPONENT-AUTHORING.md +0 -206
- package/content/guidance/storefront-next/sfnext-create-component/references/PROJECT-STRUCTURE.md +0 -43
- package/content/guidance/storefront-next/sfnext-create-component/references/TOKEN-SYSTEM.md +0 -130
- package/content/guidance/storefront-next/sfnext-create-component/references/TROUBLESHOOTING.md +0 -34
- package/content/guidance/storefront-next/sfnext-create-vertical/SKILL.md +0 -135
- package/content/guidance/storefront-next/sfnext-create-vertical/references/COMPONENT-AUTHORING.md +0 -206
- package/content/guidance/storefront-next/sfnext-create-vertical/references/PROJECT-STRUCTURE.md +0 -43
- package/content/guidance/storefront-next/sfnext-create-vertical/references/TOKEN-SYSTEM.md +0 -130
- package/content/guidance/storefront-next/sfnext-create-vertical/references/TROUBLESHOOTING.md +0 -34
- package/content/guidance/storefront-next/sfnext-custom-apis/SKILL.md +0 -221
- package/content/guidance/storefront-next/sfnext-custom-apis/references/WORKFLOW-EXAMPLES.md +0 -294
- package/content/guidance/storefront-next/sfnext-data-fetching/references/LOADER-PATTERNS.md +0 -102
- package/content/guidance/storefront-next/sfnext-project-setup/references/ENV-VARIABLES.md +0 -82
- package/content/guidance/storefront-next/sfnext-scapi-management/SKILL.md +0 -203
- package/content/guidance/storefront-next/sfnext-scapi-management/references/CLI-COMMANDS.md +0 -122
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-component/SKILL.md +0 -195
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-component/evals/trigger-evals.json +0 -12
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-component/references/COMPONENT-AUTHORING.md +0 -206
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-component/references/PROJECT-STRUCTURE.md +0 -43
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-component/references/TOKEN-SYSTEM.md +0 -130
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-component/references/TROUBLESHOOTING.md +0 -34
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-vertical/SKILL.md +0 -135
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-vertical/evals/trigger-evals.json +0 -12
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-vertical/references/COMPONENT-AUTHORING.md +0 -206
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-vertical/references/PROJECT-STRUCTURE.md +0 -43
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-vertical/references/TOKEN-SYSTEM.md +0 -130
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-create-vertical/references/TROUBLESHOOTING.md +0 -34
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-custom-apis/SKILL.md +0 -221
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-custom-apis/evals/trigger-evals.json +0 -12
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-custom-apis/references/WORKFLOW-EXAMPLES.md +0 -294
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-data-fetching/references/LOADER-PATTERNS.md +0 -102
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-project-setup/references/ENV-VARIABLES.md +0 -82
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-scapi-management/SKILL.md +0 -203
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-scapi-management/evals/trigger-evals.json +0 -12
- package/node_modules/@salesforce/b2c-agent-plugins/storefront-next/skills/sfnext-scapi-management/references/CLI-COMMANDS.md +0 -122
- /package/content/guidance/mcp/{scapi → b2c-mcp-scapi}/references/custom-apis.md +0 -0
- /package/content/guidance/mcp/{scapi → b2c-mcp-scapi}/references/custom-properties.md +0 -0
- /package/content/guidance/mcp/{scapi → b2c-mcp-scapi}/references/jobs.md +0 -0
- /package/content/guidance/mcp/{scapi → b2c-mcp-scapi}/references/products.md +0 -0
- /package/content/guidance/mcp/{scapi → b2c-mcp-scapi}/references/promotions.md +0 -0
- /package/content/guidance/mcp/{scapi → b2c-mcp-scapi}/references/saving.md +0 -0
- /package/content/guidance/mcp/{scapi → b2c-mcp-scapi}/references/snippets.md +0 -0
- /package/content/guidance/mcp/{scapi → b2c-mcp-scapi}/references/tokens.md +0 -0
- /package/content/guidance/mcp/{server → b2c-mcp-server}/references/files.md +0 -0
|
@@ -41,12 +41,17 @@
|
|
|
41
41
|
"title": "b2c-am",
|
|
42
42
|
"description": "Manage Account Manager resources including API clients, users, roles, and organizations. Use this skill whenever the user needs to create or update API clients, onboard or offboard developers, assign Account Manager roles scoped to tenants, audit user permissions, look up organizations, or provision API clients for CI/CD pipelines. Also use when managing AM role assignments or querying Account Manager data — even if they just say \"add a new developer\" or \"set up an API client\". For instance-level Business Manager administration (BM roles, BM users, BM access keys, BM whoami), defer to the `b2c-cli:b2c-bm-users-roles` skill.",
|
|
43
43
|
"entrypoint": "SKILL.md",
|
|
44
|
+
"frontmatter": {
|
|
45
|
+
"name": "b2c-am",
|
|
46
|
+
"description": "Manage Account Manager resources including API clients, users, roles, and organizations. Use this skill whenever the user needs to create or update API clients, onboard or offboard developers, assign Account Manager roles scoped to tenants, audit user permissions, look up organizations, or provision API clients for CI/CD pipelines. Also use when managing AM role assignments or querying Account Manager data — even if they just say \"add a new developer\" or \"set up an API client\". For instance-level Business Manager administration (BM roles, BM users, BM access keys, BM whoami), defer to the `b2c-cli:b2c-bm-users-roles` skill."
|
|
47
|
+
},
|
|
44
48
|
"source": "skills/b2c-cli/skills/b2c-am/SKILL.md",
|
|
45
49
|
"headings": "B2C Account Manager Skill | Authentication | Role Requirements | API Clients | List Clients | Get Client | Create Client | Update Client | Change Client Password | Delete Client | Users | List Users | Get User | Create User | Update User | Delete User | Reset User Password | Roles | List Roles | Get Role | Grant Role to User | Revoke Role from User | Organizations | List Organizations | Get Organization | Business Manager Administration | Common Workflows | User Onboarding | User Offboarding | Bulk Operations with JSON | Common Patterns | More Commands",
|
|
46
50
|
"files": [
|
|
47
51
|
{
|
|
48
52
|
"path": "SKILL.md",
|
|
49
|
-
"bytes": 7983
|
|
53
|
+
"bytes": 7983,
|
|
54
|
+
"digest": "sha256:dc632347ba9d87a41e0f38f550fce55c6cc75822db8e3afb7bde95cf9a46d949"
|
|
50
55
|
}
|
|
51
56
|
]
|
|
52
57
|
},
|
|
@@ -56,12 +61,17 @@
|
|
|
56
61
|
"title": "b2c-bm-users-roles",
|
|
57
62
|
"description": "Manage Business Manager users, access roles, role permissions, and per-user access keys on a B2C Commerce instance using the b2c CLI. Use this skill whenever the user needs to list or search BM users on a sandbox or production instance, identify which BM user an OAuth token resolves to (\"whoami\"), assign or revoke instance-level access roles, edit role permissions, look up a user's WebDAV / OCAPI / Storefront access key, or rotate access keys for SSO-managed users. Also use when the user asks \"what's my BM login on sandbox X\", \"rotate my WebDAV password\", \"how do I make a custom BM role\", \"audit BM users on this instance\", or \"delete a stale BM user from a sandbox\".",
|
|
58
63
|
"entrypoint": "SKILL.md",
|
|
64
|
+
"frontmatter": {
|
|
65
|
+
"name": "b2c-bm-users-roles",
|
|
66
|
+
"description": "Manage Business Manager users, access roles, role permissions, and per-user access keys on a B2C Commerce instance using the b2c CLI. Use this skill whenever the user needs to list or search BM users on a sandbox or production instance, identify which BM user an OAuth token resolves to (\"whoami\"), assign or revoke instance-level access roles, edit role permissions, look up a user's WebDAV / OCAPI / Storefront access key, or rotate access keys for SSO-managed users. Also use when the user asks \"what's my BM login on sandbox X\", \"rotate my WebDAV password\", \"how do I make a custom BM role\", \"audit BM users on this instance\", or \"delete a stale BM user from a sandbox\"."
|
|
67
|
+
},
|
|
59
68
|
"source": "skills/b2c-cli/skills/b2c-bm-users-roles/SKILL.md",
|
|
60
69
|
"headings": "B2C Business Manager Users, Roles, and Access Keys | API Backend | Authentication | Business Manager Roles | Role Permissions | Business Manager Users | Whoami — Identify the Current BM User | Access Keys (WebDAV, OCAPI, Storefront) | Common Workflows | Rotate my own WebDAV password (no admin privileges needed) | Audit users with admin role and stale logins | Provision a new custom role and assign one user | Cycle access keys for an SSO user (admin) | Common Patterns | More",
|
|
61
70
|
"files": [
|
|
62
71
|
{
|
|
63
72
|
"path": "SKILL.md",
|
|
64
|
-
"bytes": 12187
|
|
73
|
+
"bytes": 12187,
|
|
74
|
+
"digest": "sha256:54a9372b20fd2d927200411a28f0a4cf98cf2bd8610db6a6a6fd5eb7cda513b1"
|
|
65
75
|
}
|
|
66
76
|
]
|
|
67
77
|
},
|
|
@@ -71,12 +81,17 @@
|
|
|
71
81
|
"title": "b2c-cap",
|
|
72
82
|
"description": "Manage Commerce App Packages (CAPs), also called commerce apps or apps, and commerce features using the b2c CLI. Use this skill whenever the user needs to validate, package, install, uninstall, list, or pull commerce apps on B2C Commerce instances, view configuration tasks, or pull app sources for cartridge deployment or Storefront Next development. Also use when checking which apps are installed on an instance, inspecting app details or versions, or managing app lifecycle — even if they just say \"what apps do I have\", \"list my commerce apps\", \"which CAPs are installed\", \"install this app\", \"pull app sources\", or \"show installed apps\".",
|
|
73
83
|
"entrypoint": "SKILL.md",
|
|
84
|
+
"frontmatter": {
|
|
85
|
+
"name": "b2c-cap",
|
|
86
|
+
"description": "Manage Commerce App Packages (CAPs), also called commerce apps or apps, and commerce features using the b2c CLI. Use this skill whenever the user needs to validate, package, install, uninstall, list, or pull commerce apps on B2C Commerce instances, view configuration tasks, or pull app sources for cartridge deployment or Storefront Next development. Also use when checking which apps are installed on an instance, inspecting app details or versions, or managing app lifecycle — even if they just say \"what apps do I have\", \"list my commerce apps\", \"which CAPs are installed\", \"install this app\", \"pull app sources\", or \"show installed apps\"."
|
|
87
|
+
},
|
|
74
88
|
"source": "skills/b2c-cli/skills/b2c-cap/SKILL.md",
|
|
75
89
|
"headings": "B2C CAP Skill | Configuration & Authentication | Examples | List Installed Features | Pull App Sources | View Configuration Tasks | Validate a CAP | Package a CAP | Install a CAP | Uninstall a CAP | More Commands | Related Skills",
|
|
76
90
|
"files": [
|
|
77
91
|
{
|
|
78
92
|
"path": "SKILL.md",
|
|
79
|
-
"bytes": 6330
|
|
93
|
+
"bytes": 6330,
|
|
94
|
+
"digest": "sha256:666f7cbd5b82af8b6dbe093588603af35e07518beefd78f4512c41f004f23949"
|
|
80
95
|
}
|
|
81
96
|
]
|
|
82
97
|
},
|
|
@@ -86,24 +101,32 @@
|
|
|
86
101
|
"title": "b2c-cip",
|
|
87
102
|
"description": "Query CIP/CCAC sales, merchandising, payment, traffic, and API/controller analytics with the B2C CLI or MCP. Discover reports/tables, scope SQL, export results, and resolve analytics access.",
|
|
88
103
|
"entrypoint": "SKILL.md",
|
|
104
|
+
"frontmatter": {
|
|
105
|
+
"name": "b2c-cip",
|
|
106
|
+
"description": "Query CIP/CCAC sales, merchandising, payment, traffic, and API/controller analytics with the B2C CLI or MCP. Discover reports/tables, scope SQL, export results, and resolve analytics access."
|
|
107
|
+
},
|
|
89
108
|
"source": "skills/b2c-cli/skills/b2c-cip/SKILL.md",
|
|
90
109
|
"headings": "Known CIP Tables | Aggregate Tables (`ccdw_aggr_*`) | Dimension Tables (`ccdw_dim_*`) | Fact Tables (`ccdw_fact_*`) | Practical Starters | Notes | Sales comparisons and coverage | Compare periods | Coverage check | Definitions | CIP Starter Queries | 1) Recent Daily Sales Snapshot | 2) Sales by Site (Joined) | 3) Top-Selling Products by Revenue | 4) Promotion Impact Summary | 5) OCAPI Request Volume | 6) SCAPI Request Volume | 7) Top Search Terms by Revenue | 8) Referrer Mix | 9) Customer Registration Trend | 10) Payment Method Performance | CIP analytics | Choose the surface | Configuration and access | Discover and execute | Select technical reports | Query and interpret | Conditional references",
|
|
91
110
|
"files": [
|
|
92
111
|
{
|
|
93
112
|
"path": "references/KNOWN_TABLES.md",
|
|
94
|
-
"bytes": 9466
|
|
113
|
+
"bytes": 9466,
|
|
114
|
+
"digest": "sha256:84d4d1c5562ce387b6ce509ac6faad9a173c178a7a067572d7be6fd939f662e1"
|
|
95
115
|
},
|
|
96
116
|
{
|
|
97
117
|
"path": "references/SALES_ANALYSIS.md",
|
|
98
|
-
"bytes":
|
|
118
|
+
"bytes": 2696,
|
|
119
|
+
"digest": "sha256:5700fe48da7dbf0b50495c96ddb078859bbb7ebd3a78fe5754086cde5ace08d7"
|
|
99
120
|
},
|
|
100
121
|
{
|
|
101
122
|
"path": "references/STARTER_QUERIES.md",
|
|
102
|
-
"bytes": 4956
|
|
123
|
+
"bytes": 4956,
|
|
124
|
+
"digest": "sha256:0b35dcf38bee2847e248a358e18e8c85afac4e7da4915019bf2f06c841cc50f7"
|
|
103
125
|
},
|
|
104
126
|
{
|
|
105
127
|
"path": "SKILL.md",
|
|
106
|
-
"bytes":
|
|
128
|
+
"bytes": 6017,
|
|
129
|
+
"digest": "sha256:8170bb25e0d7232620d5aac49da8f2cf23e589052a0724849edc5ae115859e5f"
|
|
107
130
|
}
|
|
108
131
|
]
|
|
109
132
|
},
|
|
@@ -113,12 +136,17 @@
|
|
|
113
136
|
"title": "b2c-code",
|
|
114
137
|
"description": "Deploy, download, and manage cartridge code versions on B2C Commerce instances. Use this skill whenever the user needs to upload or download cartridges to/from a sandbox, activate or delete code versions, watch for local file changes during development, or deploy a subset of cartridges. Also use when pushing code to an instance, pulling code from an instance, or setting up a dev workflow with live reload -- even if they just say 'push my code to the sandbox', 'download the code', or 'how do I activate the new version'.",
|
|
115
138
|
"entrypoint": "SKILL.md",
|
|
139
|
+
"frontmatter": {
|
|
140
|
+
"name": "b2c-code",
|
|
141
|
+
"description": "Deploy, download, and manage cartridge code versions on B2C Commerce instances. Use this skill whenever the user needs to upload or download cartridges to/from a sandbox, activate or delete code versions, watch for local file changes during development, or deploy a subset of cartridges. Also use when pushing code to an instance, pulling code from an instance, or setting up a dev workflow with live reload -- even if they just say 'push my code to the sandbox', 'download the code', or 'how do I activate the new version'."
|
|
142
|
+
},
|
|
116
143
|
"source": "skills/b2c-cli/skills/b2c-code/SKILL.md",
|
|
117
144
|
"headings": "B2C Code Skill | MCP equivalent | Configuration & Authentication | Examples | Deploy Cartridges | Download Cartridges | Watch for Changes | List Code Versions | Activate Code Version | Delete Code Version | API Backend | More Commands | Related Skills",
|
|
118
145
|
"files": [
|
|
119
146
|
{
|
|
120
147
|
"path": "SKILL.md",
|
|
121
|
-
"bytes": 6359
|
|
148
|
+
"bytes": 6359,
|
|
149
|
+
"digest": "sha256:31e925d4f1ac9e6c306d2e35153b1acd6a6bcace6ddea3139b0930867fdd1515"
|
|
122
150
|
}
|
|
123
151
|
]
|
|
124
152
|
},
|
|
@@ -128,12 +156,17 @@
|
|
|
128
156
|
"title": "b2c-config",
|
|
129
157
|
"description": "Configure B2C CLI/MCP authentication, instances, and project defaults; troubleshoot missing credentials, wrong targets, or configuration precedence. Routine inspection can use config_inspect or b2c setup inspect directly.",
|
|
130
158
|
"entrypoint": "SKILL.md",
|
|
159
|
+
"frontmatter": {
|
|
160
|
+
"name": "b2c-config",
|
|
161
|
+
"description": "Configure B2C CLI/MCP authentication, instances, and project defaults; troubleshoot missing credentials, wrong targets, or configuration precedence. Routine inspection can use config_inspect or b2c setup inspect directly."
|
|
162
|
+
},
|
|
131
163
|
"source": "skills/b2c-cli/skills/b2c-config/SKILL.md",
|
|
132
164
|
"headings": "B2C Config Skill | How the CLI Discovers Configuration | Storefront Next Environment Compatibility | Shared Global Default | MCP Project Context | `dw.json` Key Casing | Authentication | `--user-auth` Flag | Tenant ID and Organization ID | Inspecting Configuration | When to Use | View Current Configuration | Debug Sensitive Values | JSON Output for Scripting | IDE Integration | OpenShell Sandbox (Beta) | Managing Instances | List Configured Instances | Create a New Instance | Switch Active Instance | Remove an Instance | Understanding the Output | Configuration Priority | Project Defaults in package.json | Troubleshooting | Command says \"credentials required\" or \"client-id is required\" | Command targets the wrong instance | `dw.json` is not being picked up | 401/403 errors on SCAPI/OCAPI calls | Missing `tenantId` / `shortCode` | MRT commands say \"API key required\" | Sensitive values masked in `setup inspect` | Missing values | Wrong source taking precedence | Still stuck | Getting Admin OAuth Tokens | More Commands",
|
|
133
165
|
"files": [
|
|
134
166
|
{
|
|
135
167
|
"path": "SKILL.md",
|
|
136
|
-
"bytes":
|
|
168
|
+
"bytes": 27911,
|
|
169
|
+
"digest": "sha256:29686f950e622ba8e1161275514a53e677fa9528b2b8c21cd5d40feaacb6aadd"
|
|
137
170
|
}
|
|
138
171
|
]
|
|
139
172
|
},
|
|
@@ -143,12 +176,17 @@
|
|
|
143
176
|
"title": "b2c-content",
|
|
144
177
|
"description": "Export, list, and validate Page Designer content from B2C Commerce libraries. Use this skill whenever the user needs to export Page Designer pages, components, or content blocks, list pages in a content library, validate page JSON or metadefinitions, discover page IDs, migrate content between instances, or work with library XML offline. Also use when extracting content for review or building content deployment pipelines -- even if they just say 'export the homepage' or 'what pages are in the shared library'.",
|
|
145
178
|
"entrypoint": "SKILL.md",
|
|
179
|
+
"frontmatter": {
|
|
180
|
+
"name": "b2c-content",
|
|
181
|
+
"description": "Export, list, and validate Page Designer content from B2C Commerce libraries. Use this skill whenever the user needs to export Page Designer pages, components, or content blocks, list pages in a content library, validate page JSON or metadefinitions, discover page IDs, migrate content between instances, or work with library XML offline. Also use when extracting content for review or building content deployment pipelines -- even if they just say 'export the homepage' or 'what pages are in the shared library'."
|
|
182
|
+
},
|
|
146
183
|
"source": "skills/b2c-cli/skills/b2c-content/SKILL.md",
|
|
147
184
|
"headings": "B2C Content Skill | Configuration & Authentication | Examples | Export Pages | Export Directly into an Import-Set Migration | List Content | Content Blocks | Configuration | Validate Metadefinitions | More Commands | Troubleshooting | Related Skills",
|
|
148
185
|
"files": [
|
|
149
186
|
{
|
|
150
187
|
"path": "SKILL.md",
|
|
151
|
-
"bytes":
|
|
188
|
+
"bytes": 7778,
|
|
189
|
+
"digest": "sha256:dd0e60d7400eca3df9e547c49bec0bb3af64b3d4f67733c295bf5cfacaca14a8"
|
|
152
190
|
}
|
|
153
191
|
]
|
|
154
192
|
},
|
|
@@ -158,12 +196,17 @@
|
|
|
158
196
|
"title": "b2c-debug",
|
|
159
197
|
"description": "Debug B2C Commerce server-side scripts using the b2c CLI. Use this skill whenever the user needs to set breakpoints, step through code, inspect variables, evaluate expressions, or investigate runtime behavior on a B2C Commerce instance. Also use when the user wants to understand what a script is doing at runtime, capture state at a specific line, or drive the debugger from a headless script — even if they just say \"debug this controller\" or \"what's the value of basket at line 42\".",
|
|
160
198
|
"entrypoint": "SKILL.md",
|
|
199
|
+
"frontmatter": {
|
|
200
|
+
"name": "b2c-debug",
|
|
201
|
+
"description": "Debug B2C Commerce server-side scripts using the b2c CLI. Use this skill whenever the user needs to set breakpoints, step through code, inspect variables, evaluate expressions, or investigate runtime behavior on a B2C Commerce instance. Also use when the user wants to understand what a script is doing at runtime, capture state at a specific line, or drive the debugger from a headless script — even if they just say \"debug this controller\" or \"what's the value of basket at line 42\"."
|
|
202
|
+
},
|
|
161
203
|
"source": "skills/b2c-cli/skills/b2c-debug/SKILL.md",
|
|
162
204
|
"headings": "B2C Debug Skill | Configuration & Authentication | Prerequisites | Interactive Debugging | Start a Debug Session | Set Breakpoints | Inspect State When Halted | Control Execution | Thread Management | RPC Mode (Headless / Agent Use) | Send Commands | Receive Responses and Events | Available RPC Commands | DAP Mode (IDE Integration) | Related Skills",
|
|
163
205
|
"files": [
|
|
164
206
|
{
|
|
165
207
|
"path": "SKILL.md",
|
|
166
|
-
"bytes":
|
|
208
|
+
"bytes": 6609,
|
|
209
|
+
"digest": "sha256:81edda151447bfd3e9575891da526cf021a949dfa3a87e570dcd63b7e41094df"
|
|
167
210
|
}
|
|
168
211
|
]
|
|
169
212
|
},
|
|
@@ -171,14 +214,19 @@
|
|
|
171
214
|
"id": "b2c-cli/b2c-docs",
|
|
172
215
|
"collection": "b2c-cli",
|
|
173
216
|
"title": "b2c-docs",
|
|
174
|
-
"description": "Search and read B2C Commerce documentation using the b2c CLI. Covers Script API reference (dw.* classes/modules), Developer Center guides (Commerce API, PWA Kit, SFRA, Storefront Next, B2C Commerce, OCAPI), Salesforce Help (Business Manager administration and merchandising), tooling documentation (CLI/MCP/SDK), standard job steps, and XSD schemas. Use this skill for ANY B2C Commerce developer or administrator question that is not already grounded in a loaded skill or the current project context — even if they just say \"how do I implement passwordless login\" or \"what methods does Basket have\" or \"how do I deploy a PWA Kit bundle\" or \"how do I import a site archive\" or \"what SCAPI endpoints are available for checkout\".",
|
|
217
|
+
"description": "Search and read B2C Commerce documentation using the b2c CLI. Covers Script API reference (dw.* classes/modules), Developer Center guides (Commerce API, PWA Kit, SFRA, Storefront Next, B2C Commerce, Commerce Solutions, OCAPI), Salesforce Help (Business Manager administration and merchandising), tooling documentation (CLI/MCP/SDK), standard job steps, and XSD schemas. Use this skill for ANY B2C Commerce developer or administrator question that is not already grounded in a loaded skill or the current project context — even if they just say \"how do I implement passwordless login\" or \"what methods does Basket have\" or \"how do I deploy a PWA Kit bundle\" or \"how do I import a site archive\" or \"what SCAPI endpoints are available for checkout\".",
|
|
175
218
|
"entrypoint": "SKILL.md",
|
|
219
|
+
"frontmatter": {
|
|
220
|
+
"name": "b2c-docs",
|
|
221
|
+
"description": "Search and read B2C Commerce documentation using the b2c CLI. Covers Script API reference (dw.* classes/modules), Developer Center guides (Commerce API, PWA Kit, SFRA, Storefront Next, B2C Commerce, Commerce Solutions, OCAPI), Salesforce Help (Business Manager administration and merchandising), tooling documentation (CLI/MCP/SDK), standard job steps, and XSD schemas. Use this skill for ANY B2C Commerce developer or administrator question that is not already grounded in a loaded skill or the current project context — even if they just say \"how do I implement passwordless login\" or \"what methods does Basket have\" or \"how do I deploy a PWA Kit bundle\" or \"how do I import a site archive\" or \"what SCAPI endpoints are available for checkout\"."
|
|
222
|
+
},
|
|
176
223
|
"source": "skills/b2c-cli/skills/b2c-docs/SKILL.md",
|
|
177
|
-
"headings": "B2C Docs Skill | Key Features | Examples | Search Documentation | Workspace-Aware Search | Read Documentation | Standard Job Step Catalog | Download Documentation | Read XSD Schemas | Documentation Categories | Common Script API Classes | Common Schemas | More Commands",
|
|
224
|
+
"headings": "B2C Docs Skill | Key Features | Examples | Search Documentation | Workspace-Aware Search | Read Documentation | Standard Job Step Catalog | Download Documentation | Read XSD Schemas | Documentation Categories | Common Script API Classes | Common Schemas | Finding CLI Commands | Reading Agent Skills | More Commands",
|
|
178
225
|
"files": [
|
|
179
226
|
{
|
|
180
227
|
"path": "SKILL.md",
|
|
181
|
-
"bytes":
|
|
228
|
+
"bytes": 18990,
|
|
229
|
+
"digest": "sha256:02ff9c72c4f9fee86d1938f9d9465aedde6e66f062db84ebfd6ef1261d7893e4"
|
|
182
230
|
}
|
|
183
231
|
]
|
|
184
232
|
},
|
|
@@ -188,20 +236,27 @@
|
|
|
188
236
|
"title": "b2c-ecdn",
|
|
189
237
|
"description": "Manage eCDN zones, security settings, and edge configuration for B2C Commerce storefronts. Use this skill whenever the user needs to purge CDN cache, provision SSL certificates, configure WAF or firewall rules, set up rate limiting, enable logpush or Page Shield, manage MRT routing, configure mTLS or cipher suites, or optimize edge performance. Also use when troubleshooting CDN-layer issues or managing zone settings -- even if they just say 'clear the cache' or 'block bot traffic on our storefront'.",
|
|
190
238
|
"entrypoint": "SKILL.md",
|
|
239
|
+
"frontmatter": {
|
|
240
|
+
"name": "b2c-ecdn",
|
|
241
|
+
"description": "Manage eCDN zones, security settings, and edge configuration for B2C Commerce storefronts. Use this skill whenever the user needs to purge CDN cache, provision SSL certificates, configure WAF or firewall rules, set up rate limiting, enable logpush or Page Shield, manage MRT routing, configure mTLS or cipher suites, or optimize edge performance. Also use when troubleshooting CDN-layer issues or managing zone settings -- even if they just say 'clear the cache' or 'block bot traffic on our storefront'."
|
|
242
|
+
},
|
|
191
243
|
"source": "skills/b2c-cli/skills/b2c-ecdn/SKILL.md",
|
|
192
244
|
"headings": "eCDN Advanced Reference | Logpush | MRT Rules | mTLS Certificates | Cipher Suites | Origin Headers | eCDN Security Reference | WAF (Web Application Firewall) | Firewall Rules | Rate Limiting | Page Shield | B2C eCDN Skill | Configuration | Prerequisites | Examples | List CDN Zones | Create a Storefront Zone | Purge Cache | Manage Certificates | Manage Rate Limiting Rules | Security Settings | Speed Settings | Additional Topics | Configuration Overrides | OAuth Scopes | More Commands",
|
|
193
245
|
"files": [
|
|
194
246
|
{
|
|
195
247
|
"path": "references/ADVANCED.md",
|
|
196
|
-
"bytes":
|
|
248
|
+
"bytes": 4571,
|
|
249
|
+
"digest": "sha256:4156263254a2cfb12c6f9b78841a1c8feb14ffc1a668781dbb4a2189b270bb55"
|
|
197
250
|
},
|
|
198
251
|
{
|
|
199
252
|
"path": "references/SECURITY.md",
|
|
200
|
-
"bytes": 2213
|
|
253
|
+
"bytes": 2213,
|
|
254
|
+
"digest": "sha256:cf1ca7ed117fae1286b517755ec5412dece2ff7196d84c43adbbcf9e3d3e0bc8"
|
|
201
255
|
},
|
|
202
256
|
{
|
|
203
257
|
"path": "SKILL.md",
|
|
204
|
-
"bytes": 4863
|
|
258
|
+
"bytes": 4863,
|
|
259
|
+
"digest": "sha256:81cf27e25cdaf6717e26cff021b75608edf410a2b8dc2b488df8440c263e7b54"
|
|
205
260
|
}
|
|
206
261
|
]
|
|
207
262
|
},
|
|
@@ -211,12 +266,17 @@
|
|
|
211
266
|
"title": "b2c-import-set-migrations",
|
|
212
267
|
"description": "Create and apply ordered, idempotent B2C Commerce site import/export archives from discovered cartridge metadata and project migrations using `b2c job import-set`. Use this opt-in project workflow for migrations built from focused instance exports, repeatable setup, onboarding, and CI/CD imports that apply once per instance. Also covers source exclusions, post-import README notes, resetting history, and recovering an interrupted run.",
|
|
213
268
|
"entrypoint": "SKILL.md",
|
|
269
|
+
"frontmatter": {
|
|
270
|
+
"name": "b2c-import-set-migrations",
|
|
271
|
+
"description": "Create and apply ordered, idempotent B2C Commerce site import/export archives from discovered cartridge metadata and project migrations using `b2c job import-set`. Use this opt-in project workflow for migrations built from focused instance exports, repeatable setup, onboarding, and CI/CD imports that apply once per instance. Also covers source exclusions, post-import README notes, resetting history, and recovering an interrupted run."
|
|
272
|
+
},
|
|
214
273
|
"source": "skills/b2c-cli/skills/b2c-import-set-migrations/SKILL.md",
|
|
215
274
|
"headings": "Import Set Migrations Skill | Configuration & Authentication | Import Sources and Order | Naming convention | Commands | Flags | Source exclusions | Post-Import Notes (per-archive README) | Repeat Runs | Set IDs (namespaces) | Concurrent Runs and Recovery | Idiomatic Workflows | Local setup / onboarding | CI/CD | Adding a new migration | Building a migration from an instance export | Resetting Import History | Import Failure Recovery | Related Skills",
|
|
216
275
|
"files": [
|
|
217
276
|
{
|
|
218
277
|
"path": "SKILL.md",
|
|
219
|
-
"bytes": 15678
|
|
278
|
+
"bytes": 15678,
|
|
279
|
+
"digest": "sha256:2236b95ab5e867aba8c6e147360108548304c403ea3dfa827c8530822e839c29"
|
|
220
280
|
}
|
|
221
281
|
]
|
|
222
282
|
},
|
|
@@ -226,24 +286,32 @@
|
|
|
226
286
|
"title": "b2c-job",
|
|
227
287
|
"description": "Run existing B2C Commerce jobs, monitor executions, inspect failures, rebuild search indexes, and import or export site archives with the CLI.",
|
|
228
288
|
"entrypoint": "SKILL.md",
|
|
289
|
+
"frontmatter": {
|
|
290
|
+
"name": "b2c-job",
|
|
291
|
+
"description": "Run existing B2C Commerce jobs, monitor executions, inspect failures, rebuild search indexes, and import or export site archives with the CLI."
|
|
292
|
+
},
|
|
229
293
|
"source": "skills/b2c-cli/skills/b2c-job/SKILL.md",
|
|
230
294
|
"headings": "Export Site Archives | Compact Results | Export Commands | Output Directory Semantics | Available Data Units | Import Site Archives | Import Site Archives | Import Sets | Run and Monitor Jobs | Run a Job | Run System Jobs with Custom Request Bodies | Standard (System) Job Steps | View Job Logs | Search Job Executions | Delete Job Executions | API Backend | Wait for Job Completion | Run and Monitor Jobs | Configuration and tool choice | Run and inspect | Site archives | Output",
|
|
231
295
|
"files": [
|
|
232
296
|
{
|
|
233
297
|
"path": "references/EXPORT.md",
|
|
234
|
-
"bytes": 6540
|
|
298
|
+
"bytes": 6540,
|
|
299
|
+
"digest": "sha256:301408dcb37fa2d6fb7da5bfaed2d420148887d2c90ccf3fa5dc6396f66a6120"
|
|
235
300
|
},
|
|
236
301
|
{
|
|
237
302
|
"path": "references/IMPORT.md",
|
|
238
|
-
"bytes":
|
|
303
|
+
"bytes": 2870,
|
|
304
|
+
"digest": "sha256:5e7253db37fac7b4ec39024a3d9ba373abf50ee09b5bcd8a23de148cfdadedb1"
|
|
239
305
|
},
|
|
240
306
|
{
|
|
241
307
|
"path": "references/RUN-AND-MONITOR.md",
|
|
242
|
-
"bytes": 4748
|
|
308
|
+
"bytes": 4748,
|
|
309
|
+
"digest": "sha256:cfceaed6ff17c4c69f80f838694c700b4348cd5d7be5d2ec2ca169554036d264"
|
|
243
310
|
},
|
|
244
311
|
{
|
|
245
312
|
"path": "SKILL.md",
|
|
246
|
-
"bytes": 2861
|
|
313
|
+
"bytes": 2861,
|
|
314
|
+
"digest": "sha256:cd1552dd7340c2629bed96fad147bb66b2db80e143646577b7f36a93f05b83bb"
|
|
247
315
|
}
|
|
248
316
|
]
|
|
249
317
|
},
|
|
@@ -253,12 +321,17 @@
|
|
|
253
321
|
"title": "b2c-logs",
|
|
254
322
|
"description": "Retrieve and search logs from B2C Commerce instances using the b2c CLI. Use this skill whenever the user needs to view server logs, search for errors, filter log entries by level or time, or monitor logs in real-time. Also use when the user reports a 500 error, broken checkout, failing job, or any server-side issue that needs log investigation — even if they just say \"something's broken on the sandbox\" or \"check the logs\".",
|
|
255
323
|
"entrypoint": "SKILL.md",
|
|
324
|
+
"frontmatter": {
|
|
325
|
+
"name": "b2c-logs",
|
|
326
|
+
"description": "Retrieve and search logs from B2C Commerce instances using the b2c CLI. Use this skill whenever the user needs to view server logs, search for errors, filter log entries by level or time, or monitor logs in real-time. Also use when the user reports a 500 error, broken checkout, failing job, or any server-side issue that needs log investigation — even if they just say \"something's broken on the sandbox\" or \"check the logs\"."
|
|
327
|
+
},
|
|
256
328
|
"source": "skills/b2c-cli/skills/b2c-logs/SKILL.md",
|
|
257
329
|
"headings": "B2C Logs Skill | Configuration & Authentication | Agent-Friendly Log Retrieval | Examples | Get Recent Logs | Filter by Time | Filter by Log Level | Search Text | Combined Filters | List Available Log Files | Real-Time Tailing (Human Use) | Downloading Full Log Files | JSON Output Structure | Log Types | Discovering Custom Log Files | Logs in Subdirectories | More Commands | Related Skills",
|
|
258
330
|
"files": [
|
|
259
331
|
{
|
|
260
332
|
"path": "SKILL.md",
|
|
261
|
-
"bytes": 10026
|
|
333
|
+
"bytes": 10026,
|
|
334
|
+
"digest": "sha256:9c5ec55ec9294e254fa1b3ccc9694f260e102f72f9cbd98ccbf2fa22eee9df4e"
|
|
262
335
|
}
|
|
263
336
|
]
|
|
264
337
|
},
|
|
@@ -268,12 +341,17 @@
|
|
|
268
341
|
"title": "b2c-metrics",
|
|
269
342
|
"description": "Query observability metrics from SCAPI Metrics API (CLOSED BETA). Use this skill whenever the user needs request volume, latency distributions, error rates, cache performance, or technical health indicators for SCAPI, OCAPI, MRT, SFRA controllers, or overall system performance. Also use when they want to monitor third-party integrations, sales metrics, or eCDN performance -- even if they just say 'show me SCAPI metrics', 'what is my error rate', or 'check API performance'.",
|
|
270
343
|
"entrypoint": "SKILL.md",
|
|
344
|
+
"frontmatter": {
|
|
345
|
+
"name": "b2c-metrics",
|
|
346
|
+
"description": "Query observability metrics from SCAPI Metrics API (CLOSED BETA). Use this skill whenever the user needs request volume, latency distributions, error rates, cache performance, or technical health indicators for SCAPI, OCAPI, MRT, SFRA controllers, or overall system performance. Also use when they want to monitor third-party integrations, sales metrics, or eCDN performance -- even if they just say 'show me SCAPI metrics', 'what is my error rate', or 'check API performance'."
|
|
347
|
+
},
|
|
271
348
|
"source": "skills/b2c-cli/skills/b2c-metrics/SKILL.md",
|
|
272
349
|
"headings": "B2C Metrics Skill | Command Structure | Configuration | Requirements | Quick Workflow | Metric Categories and Commands | Discovery Examples | Fetch Metrics Examples | Time Windows | Series Tags | Response Format | SDK Usage | Troubleshooting",
|
|
273
350
|
"files": [
|
|
274
351
|
{
|
|
275
352
|
"path": "SKILL.md",
|
|
276
|
-
"bytes":
|
|
353
|
+
"bytes": 14824,
|
|
354
|
+
"digest": "sha256:d1d7495f37d22fd28519a8101cf4ad81392240fe7cb6c1d53a28fb9a95dec019"
|
|
277
355
|
}
|
|
278
356
|
]
|
|
279
357
|
},
|
|
@@ -283,24 +361,32 @@
|
|
|
283
361
|
"title": "b2c-mrt",
|
|
284
362
|
"description": "Deploy and manage Managed Runtime (MRT) storefronts using the b2c CLI. Use this skill whenever the user needs to deploy a PWA Kit bundle, manage MRT environments and projects, set environment variables, configure URL redirects, or manage organization connections — even if they just say \"deploy my PWA\" or \"set up a staging environment\".",
|
|
285
363
|
"entrypoint": "SKILL.md",
|
|
364
|
+
"frontmatter": {
|
|
365
|
+
"name": "b2c-mrt",
|
|
366
|
+
"description": "Deploy and manage Managed Runtime (MRT) storefronts using the b2c CLI. Use this skill whenever the user needs to deploy a PWA Kit bundle, manage MRT environments and projects, set environment variables, configure URL redirects, or manage organization connections — even if they just say \"deploy my PWA\" or \"set up a staging environment\"."
|
|
367
|
+
},
|
|
286
368
|
"source": "skills/b2c-cli/skills/b2c-mrt/SKILL.md",
|
|
287
369
|
"headings": "MRT Bundle Commands Reference | Bundle Deploy | Push Local Build | Deploy Existing Bundle | Bundle Upload (v2) | Bundle List | Bundle History | Bundle Download | Common Workflows | Development to Production Pipeline | Rollback to Previous Bundle | Download and Inspect Bundle | MRT Environment Commands Reference | Environment Management | List Environments | Create Environment | Get Environment Details | Update Environment | Delete Environment | Invalidate Cache | B2C Commerce Connection | Environment Variables | List Variables | Set Variables | Push Variables from a .env File | Delete Variable | URL Redirects | List Redirects | Create Redirect | Delete Redirect | Clone Redirects | Access Control Headers | List Access Control Headers | MRT Project Commands Reference | Project Management | List Projects | Create Project | Get Project Details | Update Project | Delete Project | Member Management | List Members | Add Member | Get Member Details | Update Member Role | Remove Member | Deployment Notifications | List Notifications | Create Notification | Get Notification Details | Update Notification | Delete Notification | B2C MRT Skill | Configuration & Authentication | MRT Backends (legacy vs SCAPI) | Command Structure | Quick Examples | Deploy a Bundle | Manage Environments | Environment Variables | View Deployment History | Organization Members and Certificates | Project Management | URL Redirects | Configuration | dw.json | Environment Variables | ~/.mobify Config | Detailed References | More Commands",
|
|
288
370
|
"files": [
|
|
289
371
|
{
|
|
290
372
|
"path": "references/BUNDLE-COMMANDS.md",
|
|
291
|
-
"bytes": 9061
|
|
373
|
+
"bytes": 9061,
|
|
374
|
+
"digest": "sha256:3975d4b4a7751cc340adaf0d5f2ce0c0629afb8d9687c1323d64b4567943b639"
|
|
292
375
|
},
|
|
293
376
|
{
|
|
294
377
|
"path": "references/ENVIRONMENT-COMMANDS.md",
|
|
295
|
-
"bytes": 7026
|
|
378
|
+
"bytes": 7026,
|
|
379
|
+
"digest": "sha256:b883faa7fbad5df95a5fa54379d3b73b27810f2b8700e18a82c8bf81f6143be7"
|
|
296
380
|
},
|
|
297
381
|
{
|
|
298
382
|
"path": "references/PROJECT-COMMANDS.md",
|
|
299
|
-
"bytes": 4923
|
|
383
|
+
"bytes": 4923,
|
|
384
|
+
"digest": "sha256:9e517f9fdd8c3f48e442560617720c56a3bab9a203e413e4900a2a1306734eb1"
|
|
300
385
|
},
|
|
301
386
|
{
|
|
302
387
|
"path": "SKILL.md",
|
|
303
|
-
"bytes": 8753
|
|
388
|
+
"bytes": 8753,
|
|
389
|
+
"digest": "sha256:48239402b91c6727c09f3927ed449a239e44c8a9c888e805bbbc78505c6a0588"
|
|
304
390
|
}
|
|
305
391
|
]
|
|
306
392
|
},
|
|
@@ -310,12 +396,17 @@
|
|
|
310
396
|
"title": "b2c-sandbox",
|
|
311
397
|
"description": "Create and manage on-demand sandboxes (ODS) for B2C Commerce using the b2c CLI. Use this skill whenever the user needs to spin up a new development sandbox, list running sandboxes, start/stop/restart an instance, or manage sandbox lifecycle — even if they just say \"I need a sandbox\" or \"restart my instance\".",
|
|
312
398
|
"entrypoint": "SKILL.md",
|
|
399
|
+
"frontmatter": {
|
|
400
|
+
"name": "b2c-sandbox",
|
|
401
|
+
"description": "Create and manage on-demand sandboxes (ODS) for B2C Commerce using the b2c CLI. Use this skill whenever the user needs to spin up a new development sandbox, list running sandboxes, start/stop/restart an instance, or manage sandbox lifecycle — even if they just say \"I need a sandbox\" or \"restart my instance\"."
|
|
402
|
+
},
|
|
313
403
|
"source": "skills/b2c-cli/skills/b2c-sandbox/SKILL.md",
|
|
314
404
|
"headings": "B2C Sandbox Skill | Configuration & Authentication | Sandbox ID Formats | Examples | List Sandboxes | Create Sandbox | Get/Start/Stop/Restart/Delete Sandbox | Clone Sandbox | More Commands",
|
|
315
405
|
"files": [
|
|
316
406
|
{
|
|
317
407
|
"path": "SKILL.md",
|
|
318
|
-
"bytes": 4928
|
|
408
|
+
"bytes": 4928,
|
|
409
|
+
"digest": "sha256:508ff225e9dace1fcce249578ddb14b6180b9ae70e4702d6fb93104a49e532ee"
|
|
319
410
|
}
|
|
320
411
|
]
|
|
321
412
|
},
|
|
@@ -325,12 +416,17 @@
|
|
|
325
416
|
"title": "b2c-scapi-custom",
|
|
326
417
|
"description": "Check custom SCAPI endpoint registration status using the b2c CLI. Use this skill whenever the user needs to verify that their custom API endpoints are registered and working, debug 404 or \"endpoint not found\" errors on custom APIs, or list custom API endpoints and their deployment status — even if they just say \"my custom API returns 404\" or \"is my endpoint deployed\".",
|
|
327
418
|
"entrypoint": "SKILL.md",
|
|
419
|
+
"frontmatter": {
|
|
420
|
+
"name": "b2c-scapi-custom",
|
|
421
|
+
"description": "Check custom SCAPI endpoint registration status using the b2c CLI. Use this skill whenever the user needs to verify that their custom API endpoints are registered and working, debug 404 or \"endpoint not found\" errors on custom APIs, or list custom API endpoints and their deployment status — even if they just say \"my custom API returns 404\" or \"is my endpoint deployed\"."
|
|
422
|
+
},
|
|
328
423
|
"source": "skills/b2c-cli/skills/b2c-scapi-custom/SKILL.md",
|
|
329
424
|
"headings": "B2C SCAPI Custom APIs Skill | Configuration | Tenant ID vs. Organization ID | Deriving Tenant ID from Hostname | Examples | Get Custom API Endpoint Status | Filter by Status | Group by Type or Site | Customize Output Columns | Debug Failed Registrations | Configuration Overrides | More Commands | OAuth Scopes (manual token minting) | Related Skills",
|
|
330
425
|
"files": [
|
|
331
426
|
{
|
|
332
427
|
"path": "SKILL.md",
|
|
333
|
-
"bytes":
|
|
428
|
+
"bytes": 5324,
|
|
429
|
+
"digest": "sha256:0e80963b60c31b60d89cca1d5a2dd794ff5cd40f2dd64f65d5594f3aae7bb4ce"
|
|
334
430
|
}
|
|
335
431
|
]
|
|
336
432
|
},
|
|
@@ -340,16 +436,22 @@
|
|
|
340
436
|
"title": "b2c-scapi-schemas",
|
|
341
437
|
"description": "Browse and retrieve SCAPI OpenAPI schema specifications. Use this skill whenever the user needs to list available SCAPI APIs, inspect endpoint paths or request/response shapes, explore data models for products or orders, check which fields an API returns, or understand SCAPI versioning. Also use when looking up API details before building an integration -- even if they just say 'what fields does the product API return' or 'show me the SCAPI endpoints'.",
|
|
342
438
|
"entrypoint": "SKILL.md",
|
|
439
|
+
"frontmatter": {
|
|
440
|
+
"name": "b2c-scapi-schemas",
|
|
441
|
+
"description": "Browse and retrieve SCAPI OpenAPI schema specifications. Use this skill whenever the user needs to list available SCAPI APIs, inspect endpoint paths or request/response shapes, explore data models for products or orders, check which fields an API returns, or understand SCAPI versioning. Also use when looking up API details before building an integration -- even if they just say 'what fields does the product API return' or 'show me the SCAPI endpoints'."
|
|
442
|
+
},
|
|
343
443
|
"source": "skills/b2c-cli/skills/b2c-scapi-schemas/SKILL.md",
|
|
344
444
|
"headings": "SCAPI Schema CLI Examples | List Available Schemas | Filter Schemas | Get Schema (Collapsed/Outline - Default) | Get Schema with Selective Expansion | Get Full Schema | List Available Paths/Schemas/Examples | Output Formats | Custom Properties | Configuration Overrides | More Commands | B2C SCAPI Schemas Skill | Tool choice | Configuration | Tenant ID vs. Organization ID | Deriving Tenant ID from Hostname",
|
|
345
445
|
"files": [
|
|
346
446
|
{
|
|
347
447
|
"path": "references/CLI-EXAMPLES.md",
|
|
348
|
-
"bytes": 2776
|
|
448
|
+
"bytes": 2776,
|
|
449
|
+
"digest": "sha256:7449bcc695fa7873dc650761937f19d781a18e1130cf0a53f8aec3e40c1b2572"
|
|
349
450
|
},
|
|
350
451
|
{
|
|
351
452
|
"path": "SKILL.md",
|
|
352
|
-
"bytes":
|
|
453
|
+
"bytes": 4271,
|
|
454
|
+
"digest": "sha256:6593e0cc8784c02c42167d7af8ce0568a2e158e69537c4d7a3e1cdc5000a4750"
|
|
353
455
|
}
|
|
354
456
|
]
|
|
355
457
|
},
|
|
@@ -359,24 +461,32 @@
|
|
|
359
461
|
"title": "b2c-site-import-export",
|
|
360
462
|
"description": "Author, validate, import, and verify B2C Commerce site archives and metadata XML; export selected data for inspection or migration.",
|
|
361
463
|
"entrypoint": "SKILL.md",
|
|
464
|
+
"frontmatter": {
|
|
465
|
+
"name": "b2c-site-import-export",
|
|
466
|
+
"description": "Author, validate, import, and verify B2C Commerce site archives and metadata XML; export selected data for inspection or migration."
|
|
467
|
+
},
|
|
362
468
|
"source": "skills/b2c-cli/skills/b2c-site-import-export/SKILL.md",
|
|
363
469
|
"headings": "Import Options | Import Commands | Import Local Directory | Import Remote Archive | Apply an Ordered, Idempotent Import Set | Import Archives Larger Than the Instance Limit | Metadata XML Patterns | XSD Schema Reference | Other Import Formats | System Object Extensions | Add String Attribute to Product | Add Enum Attribute to Order | Add Boolean Attribute to Customer Profile | Site Preferences | Boolean Preference | String Preference (API Key) | Preference Values | Custom Object Types | Simple Custom Object | Custom Object Data | Content Assets | Attribute Types Reference | Complete Import Example | Archive Workflows | Common Workflows | Adding a Custom Attribute to Products | Adding Site Preferences | Creating a Custom Object Type | Importing Custom Object Data | Site Archive Structure | Site Archives | Configuration and tool choice | Import and verify | Focused references",
|
|
364
470
|
"files": [
|
|
365
471
|
{
|
|
366
472
|
"path": "references/IMPORT-OPTIONS.md",
|
|
367
|
-
"bytes": 6436
|
|
473
|
+
"bytes": 6436,
|
|
474
|
+
"digest": "sha256:31798136ad860104a454fa1a24f1b7080fd945ac417449a874fb4a6ee5a6044c"
|
|
368
475
|
},
|
|
369
476
|
{
|
|
370
477
|
"path": "references/METADATA-XML.md",
|
|
371
|
-
"bytes": 14637
|
|
478
|
+
"bytes": 14637,
|
|
479
|
+
"digest": "sha256:12c1ba4308d4b71c1da4df2188546f5e2940875f23e983b1735b2ac9f799d99a"
|
|
372
480
|
},
|
|
373
481
|
{
|
|
374
482
|
"path": "references/WORKFLOWS.md",
|
|
375
|
-
"bytes": 5589
|
|
483
|
+
"bytes": 5589,
|
|
484
|
+
"digest": "sha256:b7e5189e840411be658eb9d7f6f817e8c47fa79707c4ff4de849ecdebad23cc4"
|
|
376
485
|
},
|
|
377
486
|
{
|
|
378
487
|
"path": "SKILL.md",
|
|
379
|
-
"bytes":
|
|
488
|
+
"bytes": 2952,
|
|
489
|
+
"digest": "sha256:774643b9a77c8cb389f6f9ddf54043b8c2a2ded12e25ed5312ea8b26d8643a5c"
|
|
380
490
|
}
|
|
381
491
|
]
|
|
382
492
|
},
|
|
@@ -386,12 +496,17 @@
|
|
|
386
496
|
"title": "b2c-sites",
|
|
387
497
|
"description": "List storefront sites, check site status, and manage cartridge paths on B2C Commerce instances using the b2c CLI. Use this skill whenever the user needs to discover site IDs, check which storefronts are online or offline, get site configuration as JSON, or view/modify the ordered cartridge path for a site or Business Manager. Also use when the user needs site information for scripting, CI/CD pipelines, or as input to other commands — even if they just say \"what sites do I have\" or \"add this cartridge to my site\".",
|
|
388
498
|
"entrypoint": "SKILL.md",
|
|
499
|
+
"frontmatter": {
|
|
500
|
+
"name": "b2c-sites",
|
|
501
|
+
"description": "List storefront sites, check site status, and manage cartridge paths on B2C Commerce instances using the b2c CLI. Use this skill whenever the user needs to discover site IDs, check which storefronts are online or offline, get site configuration as JSON, or view/modify the ordered cartridge path for a site or Business Manager. Also use when the user needs site information for scripting, CI/CD pipelines, or as input to other commands — even if they just say \"what sites do I have\" or \"add this cartridge to my site\"."
|
|
502
|
+
},
|
|
389
503
|
"source": "skills/b2c-cli/skills/b2c-sites/SKILL.md",
|
|
390
504
|
"headings": "B2C Sites Skill | Configuration & Authentication | Commands | `b2c sites list` | Cartridge Path Management | Common Use Cases | Related Skills",
|
|
391
505
|
"files": [
|
|
392
506
|
{
|
|
393
507
|
"path": "SKILL.md",
|
|
394
|
-
"bytes":
|
|
508
|
+
"bytes": 5102,
|
|
509
|
+
"digest": "sha256:bc55d1bdc1845e0356dc3671c23a9e319f56975d5acb59387125fe18d2f0222d"
|
|
395
510
|
}
|
|
396
511
|
]
|
|
397
512
|
},
|
|
@@ -401,12 +516,17 @@
|
|
|
401
516
|
"title": "b2c-slas",
|
|
402
517
|
"description": "Create, update, and manage SLAS (Shopper Login and API Access Service) clients using the b2c CLI. Use this skill whenever the user needs to provision a SLAS client, update OAuth scopes, rotate client secrets, get a shopper access token, or configure shopper authentication for headless, PWA, or Storefront Next (SFNext) storefronts — even if they just say \"I need a shopper token\" or \"set up auth for my storefront\".",
|
|
403
518
|
"entrypoint": "SKILL.md",
|
|
519
|
+
"frontmatter": {
|
|
520
|
+
"name": "b2c-slas",
|
|
521
|
+
"description": "Create, update, and manage SLAS (Shopper Login and API Access Service) clients using the b2c CLI. Use this skill whenever the user needs to provision a SLAS client, update OAuth scopes, rotate client secrets, get a shopper access token, or configure shopper authentication for headless, PWA, or Storefront Next (SFNext) storefronts — even if they just say \"I need a shopper token\" or \"set up auth for my storefront\"."
|
|
522
|
+
},
|
|
404
523
|
"source": "skills/b2c-cli/skills/b2c-slas/SKILL.md",
|
|
405
524
|
"headings": "B2C SLAS Skill | Configuration | When to Use | Examples | List SLAS Clients | Get SLAS Client Details | Create SLAS Client | Create Client for Custom API Testing | Get a Shopper Token | Update SLAS Client | Delete SLAS Client | Open SLAS Client | More Commands | Related Skills",
|
|
406
525
|
"files": [
|
|
407
526
|
{
|
|
408
527
|
"path": "SKILL.md",
|
|
409
|
-
"bytes":
|
|
528
|
+
"bytes": 7417,
|
|
529
|
+
"digest": "sha256:8b50ea9c51f186d0dc0fda22d214599bdb5632323563220361bc5ca43e90bd85"
|
|
410
530
|
}
|
|
411
531
|
]
|
|
412
532
|
},
|
|
@@ -416,12 +536,17 @@
|
|
|
416
536
|
"title": "b2c-webdav",
|
|
417
537
|
"description": "List, upload, download, and manage files on B2C Commerce instances via WebDAV. Use this skill whenever the user needs to upload files to IMPEX directories, download exports from an instance, list remote files, create or delete directories, zip or unzip files on the server, manage file transfers to sandboxes, or browse instance file systems — even if they just say \"upload a file to the instance\" or \"check what's in the IMPEX folder\".",
|
|
418
538
|
"entrypoint": "SKILL.md",
|
|
539
|
+
"frontmatter": {
|
|
540
|
+
"name": "b2c-webdav",
|
|
541
|
+
"description": "List, upload, download, and manage files on B2C Commerce instances via WebDAV. Use this skill whenever the user needs to upload files to IMPEX directories, download exports from an instance, list remote files, create or delete directories, zip or unzip files on the server, manage file transfers to sandboxes, or browse instance file systems — even if they just say \"upload a file to the instance\" or \"check what's in the IMPEX folder\"."
|
|
542
|
+
},
|
|
419
543
|
"source": "skills/b2c-cli/skills/b2c-webdav/SKILL.md",
|
|
420
544
|
"headings": "B2C WebDAV Skill | MCP equivalent | Configuration & Authentication | WebDAV Roots | Examples | Dynamic Site Files | List Files | Download Files | Upload Files | Create Directories | Delete Files | Delete Cartridges | Zip/Unzip Remote Files | Import-Set Managed State | More Commands | Related Skills",
|
|
421
545
|
"files": [
|
|
422
546
|
{
|
|
423
547
|
"path": "SKILL.md",
|
|
424
|
-
"bytes": 6788
|
|
548
|
+
"bytes": 6788,
|
|
549
|
+
"digest": "sha256:535197f57e1d7ad1b69b8ea7216d28aaf4da0bbbc4b5d8d0cf862ad67216d61e"
|
|
425
550
|
}
|
|
426
551
|
]
|
|
427
552
|
},
|
|
@@ -431,16 +556,22 @@
|
|
|
431
556
|
"title": "b2c-business-manager-extensions",
|
|
432
557
|
"description": "Build Business Manager extension cartridges with custom admin tools, menu items, and dialog actions. Use this skill whenever the user needs to create bm_* cartridges, add menu actions or dialog buttons in BM, configure bm_extensions.xml, or extend admin pages with form overlays. Also use when customizing the BM interface for back-office workflows -- even if they just say 'add a button to BM' or 'custom admin page'.",
|
|
433
558
|
"entrypoint": "SKILL.md",
|
|
559
|
+
"frontmatter": {
|
|
560
|
+
"name": "b2c-business-manager-extensions",
|
|
561
|
+
"description": "Build Business Manager extension cartridges with custom admin tools, menu items, and dialog actions. Use this skill whenever the user needs to create bm_* cartridges, add menu actions or dialog buttons in BM, configure bm_extensions.xml, or extend admin pages with form overlays. Also use when customizing the BM interface for back-office workflows -- even if they just say 'add a button to BM' or 'custom admin page'."
|
|
562
|
+
},
|
|
434
563
|
"source": "skills/b2c/skills/b2c-business-manager-extensions/SKILL.md",
|
|
435
564
|
"headings": "Business Manager Extensions XML Reference | XSD Schema Reference | File Location & Encoding | Root Element | Localized text: `LocalizedString` | Positioning | Menu Item Element | Attributes | Child Elements (in schema order) | Menu Action Element | Attributes | Child Elements | exec Element | sub-pipelines and the permission check | The `NoPermissionCheck` idiom | Dialog Action Element | Attributes | Child Elements | Common Extension Points (`xp_ref`) | Form Extension Element | formextension attributes | valueinput attributes | valueinput child elements | Complete Example | Controller Template | ISML Template | Core Business Manager Menu IDs | Site Menu (`site=\"true\"`) | Administration Menu (`site=\"false\"`) | Business Manager Extensions Skill | Overview | ⚠️ Schema essentials (read first) | File Structure | Basic bm_extensions.xml | Menu Items | Menu Actions | The `NoPermissionCheck` idiom | Dialog Actions | Form Extensions | Controller Example | Template Example | Attaching to Existing BM Menus | Enabling the Extension | Best Practices | Detailed Reference",
|
|
436
565
|
"files": [
|
|
437
566
|
{
|
|
438
567
|
"path": "references/EXTENSIONS-XML.md",
|
|
439
|
-
"bytes": 16933
|
|
568
|
+
"bytes": 16933,
|
|
569
|
+
"digest": "sha256:0f9e14eebdea34ab383693c636ffb1d40cd7f10772fe634e821b2c00f71a4a60"
|
|
440
570
|
},
|
|
441
571
|
{
|
|
442
572
|
"path": "SKILL.md",
|
|
443
|
-
"bytes": 15768
|
|
573
|
+
"bytes": 15768,
|
|
574
|
+
"digest": "sha256:37024f4465bedc1dc7d4907cab1d9e1b2233a9529b91fdb316f48fadc8712bdc"
|
|
444
575
|
}
|
|
445
576
|
]
|
|
446
577
|
},
|
|
@@ -450,20 +581,27 @@
|
|
|
450
581
|
"title": "b2c-controllers",
|
|
451
582
|
"description": "Create storefront controllers using SFRA or classic patterns with server.get/post, middleware chains, and res.render/json. Use this skill whenever the user needs to build a page route, handle form submissions, create AJAX endpoints, extend or override existing controllers, or add middleware to a request pipeline. Also use when debugging route registration or response rendering -- even if they just say 'new page endpoint' or 'handle a POST request'.",
|
|
452
583
|
"entrypoint": "SKILL.md",
|
|
584
|
+
"frontmatter": {
|
|
585
|
+
"name": "b2c-controllers",
|
|
586
|
+
"description": "Create storefront controllers using SFRA or classic patterns with server.get/post, middleware chains, and res.render/json. Use this skill whenever the user needs to build a page route, handle form submissions, create AJAX endpoints, extend or override existing controllers, or add middleware to a request pipeline. Also use when debugging route registration or response rendering -- even if they just say 'new page endpoint' or 'handle a POST request'."
|
|
587
|
+
},
|
|
453
588
|
"source": "skills/b2c/skills/b2c-controllers/SKILL.md",
|
|
454
589
|
"headings": "Classic Controller Patterns | When to Use Classic Controllers | Basic Structure | Request Handling | Response Types | HTML Response (ISML) | JSON Response | XML Response | Redirect | Status Codes | Error Handling | Database Operations | HTTPS Enforcement | Authentication Check | Complete Example | Comparison: Classic vs SFRA | SFRA Controller Patterns | Basic Route Structure | HTTP Methods | Multiple Middleware | Request Object Properties | Response Methods | View Data Pattern | Route Events | Extending Controllers | Using module.superModule | Append Pattern (Most Common) | Prepend Pattern | Replace Pattern | Common Middleware Examples | Caching Middleware | Authentication Middleware | HTTPS Middleware | CSRF Protection | Form Handling | AJAX Responses | Complete Controller Example | Controllers Skill | Overview | Two Controller Patterns | File Location | SFRA Controllers (Recommended) | Request Object (req) | Response Object (res) | Middleware | Common Middleware | Route Events | Extending Controllers | Classic Controllers (Non-SFRA) | Module Imports | Error Handling | Generating URLs | Best Practices | Detailed Reference",
|
|
455
590
|
"files": [
|
|
456
591
|
{
|
|
457
592
|
"path": "references/CLASSIC-PATTERNS.md",
|
|
458
|
-
"bytes": 7982
|
|
593
|
+
"bytes": 7982,
|
|
594
|
+
"digest": "sha256:ea43accf307455faf8736064e6433e9ce23a7c15633e0573fc737d483fd5b364"
|
|
459
595
|
},
|
|
460
596
|
{
|
|
461
597
|
"path": "references/SFRA-PATTERNS.md",
|
|
462
|
-
"bytes": 8601
|
|
598
|
+
"bytes": 8601,
|
|
599
|
+
"digest": "sha256:a4f953214157b2aeddb6f7af3e6cf507543750d2035d967e24a5accbb84409ad"
|
|
463
600
|
},
|
|
464
601
|
{
|
|
465
602
|
"path": "SKILL.md",
|
|
466
|
-
"bytes": 8729
|
|
603
|
+
"bytes": 8729,
|
|
604
|
+
"digest": "sha256:fe258ec5afff48fc7596e8bb1aa2523c33407ff2710043c49802844d68b24ea7"
|
|
467
605
|
}
|
|
468
606
|
]
|
|
469
607
|
},
|
|
@@ -473,24 +611,32 @@
|
|
|
473
611
|
"title": "b2c-custom-api-development",
|
|
474
612
|
"description": "Develop Custom SCAPI REST endpoints with api.json routes, schema.yaml definitions, and OAuth scope configuration. Use this skill whenever the user needs to create a custom API on the Commerce platform, define OpenAPI 3.0 schemas for request/response, structure the rest-apis cartridge folder, or debug endpoint registration and 404 issues. Also use when building headless commerce integrations, choosing between Shopper (`ShopperToken`) and Admin (`AmOAuth2`) APIs, or troubleshooting why a Custom API endpoint isn't appearing or returning 404 in `b2c scapi custom status` — even if they just say 'custom REST endpoint', 'expose my script as an API', or 'my admin custom API isn't registering'.",
|
|
475
613
|
"entrypoint": "SKILL.md",
|
|
614
|
+
"frontmatter": {
|
|
615
|
+
"name": "b2c-custom-api-development",
|
|
616
|
+
"description": "Develop Custom SCAPI REST endpoints with api.json routes, schema.yaml definitions, and OAuth scope configuration. Use this skill whenever the user needs to create a custom API on the Commerce platform, define OpenAPI 3.0 schemas for request/response, structure the rest-apis cartridge folder, or debug endpoint registration and 404 issues. Also use when building headless commerce integrations, choosing between Shopper (`ShopperToken`) and Admin (`AmOAuth2`) APIs, or troubleshooting why a Custom API endpoint isn't appearing or returning 404 in `b2c scapi custom status` — even if they just say 'custom REST endpoint', 'expose my script as an API', or 'my admin custom API isn't registering'."
|
|
617
|
+
},
|
|
476
618
|
"source": "skills/b2c/skills/b2c-custom-api-development/SKILL.md",
|
|
477
619
|
"headings": "API Contract Reference (schema.yaml) | Full Schema Example | Contract Requirements | Shopper vs Admin APIs | Admin API call contexts | Path Parameter Example | Request Body Example (POST/PUT/PATCH) | Implementation Reference (script.js) | Complete Implementation Example | Best Practices | Caching Responses | Remote Includes | External Service Calls | services.xml Example | HTTP Methods Supported | Circuit Breaker Protection | Testing Custom APIs | Prerequisites for Testing | Get a Shopper Token (Private Client) | Call Your Custom API | Testing Admin APIs | Get an Admin Token via the CLI (recommended) | Get an Admin Token via curl | Testing Tips | Common Test Failures | Custom API Development Skill | Scope & grounding | Overview | Cartridge Structure | Component 1: API Contract (schema.yaml) | Cartridge path requirements (where the platform looks up your `rest-apis/` folder) | Component 2: Implementation (script.js) | Component 3: Mapping (api.json) | Development Workflow | Deployment | When you need to re-activate the code version (`--reload`) | Authentication Setup | For Shopper APIs | For Admin APIs | Troubleshooting | Registration Issues | Related Skills | Reference Documentation",
|
|
478
620
|
"files": [
|
|
479
621
|
{
|
|
480
622
|
"path": "references/CONTRACT.md",
|
|
481
|
-
"bytes": 5263
|
|
623
|
+
"bytes": 5263,
|
|
624
|
+
"digest": "sha256:e5b764f7a007dc17d8558e6cc1c0e59698bea00f01cf3820d5264a0958399d12"
|
|
482
625
|
},
|
|
483
626
|
{
|
|
484
627
|
"path": "references/IMPLEMENTATION.md",
|
|
485
|
-
"bytes": 4568
|
|
628
|
+
"bytes": 4568,
|
|
629
|
+
"digest": "sha256:ebdd8e15031e263d2762d5bfd2068e3c8a64621e5876419926128ec7a433919b"
|
|
486
630
|
},
|
|
487
631
|
{
|
|
488
632
|
"path": "references/TESTING.md",
|
|
489
|
-
"bytes": 4826
|
|
633
|
+
"bytes": 4826,
|
|
634
|
+
"digest": "sha256:d3c85c77217043e23bb43be23c98180aaccbbb56c7307181d0a10b929bf417d2"
|
|
490
635
|
},
|
|
491
636
|
{
|
|
492
637
|
"path": "SKILL.md",
|
|
493
|
-
"bytes": 14684
|
|
638
|
+
"bytes": 14684,
|
|
639
|
+
"digest": "sha256:3bd3362e523409989340c4b6ec5ee6f5ffec6e2483516fcbf659641d399557fd"
|
|
494
640
|
}
|
|
495
641
|
]
|
|
496
642
|
},
|
|
@@ -500,12 +646,17 @@
|
|
|
500
646
|
"title": "b2c-custom-caches",
|
|
501
647
|
"description": "Implement custom caching with CacheMgr, caches.json definitions, and cache region configuration. Use this skill whenever the user needs to cache expensive computations or API responses server-side, define cache regions with TTL and size limits, invalidate cache entries, or debug disappearing cache data. Also use when optimizing script performance with application-level caching -- even if they just say 'cache this data' or 'my cached values keep disappearing'.",
|
|
502
648
|
"entrypoint": "SKILL.md",
|
|
649
|
+
"frontmatter": {
|
|
650
|
+
"name": "b2c-custom-caches",
|
|
651
|
+
"description": "Implement custom caching with CacheMgr, caches.json definitions, and cache region configuration. Use this skill whenever the user needs to cache expensive computations or API responses server-side, define cache regions with TTL and size limits, invalidate cache entries, or debug disappearing cache data. Also use when optimizing script performance with application-level caching -- even if they just say 'cache this data' or 'my cached values keep disappearing'."
|
|
652
|
+
},
|
|
503
653
|
"source": "skills/b2c/skills/b2c-custom-caches/SKILL.md",
|
|
504
654
|
"headings": "B2C Custom Caches | When to Use Custom Caches | Limitations | Defining a Custom Cache | File Structure | package.json | caches.json | Using Custom Caches | Script API Classes | Basic Usage | Recommended Pattern: get with Loader | Scoped Cache Keys | Cache Methods | Best Practices | Do | Don't | Cache Invalidation | Common Patterns | Caching External API Responses | Caching Expensive Calculations | Configuration Cache with Site Scope | Troubleshooting",
|
|
505
655
|
"files": [
|
|
506
656
|
{
|
|
507
657
|
"path": "SKILL.md",
|
|
508
|
-
"bytes": 8266
|
|
658
|
+
"bytes": 8266,
|
|
659
|
+
"digest": "sha256:4532b4e1dd070b3698951591362a6b74400837d87b08f00fb6ebee8f97584428"
|
|
509
660
|
}
|
|
510
661
|
]
|
|
511
662
|
},
|
|
@@ -515,28 +666,37 @@
|
|
|
515
666
|
"title": "b2c-custom-job-steps",
|
|
516
667
|
"description": "Create custom job steps for B2C Commerce batch processing. Use this skill whenever the user needs to write a batch job, data export script, scheduled cleanup task, or any server-side processing that runs on a schedule. Also use when they ask about steptypes.json, chunk-oriented vs task-oriented job steps, read/process/write patterns, how to get a custom job to appear in Business Manager, or how to author and import a jobs.xml job definition (job/flow/step structure, step type, the required triggers element) so a step type becomes a runnable, schedulable job — even if they just say \"I need a script that runs nightly\" or \"batch process orders\".",
|
|
517
668
|
"entrypoint": "SKILL.md",
|
|
669
|
+
"frontmatter": {
|
|
670
|
+
"name": "b2c-custom-job-steps",
|
|
671
|
+
"description": "Create custom job steps for B2C Commerce batch processing. Use this skill whenever the user needs to write a batch job, data export script, scheduled cleanup task, or any server-side processing that runs on a schedule. Also use when they ask about steptypes.json, chunk-oriented vs task-oriented job steps, read/process/write patterns, how to get a custom job to appear in Business Manager, or how to author and import a jobs.xml job definition (job/flow/step structure, step type, the required triggers element) so a step type becomes a runnable, schedulable job — even if they just say \"I need a script that runs nightly\" or \"batch process orders\"."
|
|
672
|
+
},
|
|
518
673
|
"source": "skills/b2c/skills/b2c-custom-job-steps/SKILL.md",
|
|
519
674
|
"headings": "Chunk-Oriented Job Steps Reference | When to Use | Basic Structure | Product Export Example | Order Processing Example | Customer Sync Example | Chunk Lifecycle | Chunk Size Considerations | Transaction Handling | steptypes.json for Chunk Steps | jobs.xml Reference (Job Definitions) | Namespace & Schema | Document Structure (element order matters) | Minimal Single-Step Job | Step Element | Multi-Step Job | Triggers (required) | run-once (on-demand / manual) | run-recurring (scheduled) | Importing & Running | Common Pitfalls | Related | steptypes.json Reference | File Location | Root Structure | Task-Oriented Step Schema | Chunk-Oriented Step Schema | Step Attributes | Task Step Functions | Chunk Step Functions | Parameters | Parameter Attributes | Parameter Types | Status Codes | Complete Example | Task-Oriented Job Steps Reference | When to Use | Basic Structure | Status Codes | Step Execution Context | FTP Download Example | SFTP Example | HTTP/REST API Example | File Processing Example | Cleanup Example | steptypes.json for Task Steps | Custom Job Steps Skill | When to Use | Overview | File Structure | Step Type Definition (steptypes.json) | From Step Type to Runnable Job (jobs.xml) | Task-Oriented Steps | Script (scripts/steps/myTaskStep.js) | Status Codes | Chunk-Oriented Steps | Required Functions | Optional Functions | Script (scripts/steps/myChunkStep.js) | Parameter Types | Parameter Validation Attributes | Configuration Options | steptypes.json Attributes | Standard (System) Job Steps | Commonly used standard steps | Referencing an IMPEX-staged file from a prior step | Chaining custom + standard steps in one flow | In-flow standard step vs. the CLI equivalent | Best Practices | Related Skills | Detailed Reference",
|
|
520
675
|
"files": [
|
|
521
676
|
{
|
|
522
677
|
"path": "references/CHUNK-ORIENTED.md",
|
|
523
|
-
"bytes": 10148
|
|
678
|
+
"bytes": 10148,
|
|
679
|
+
"digest": "sha256:1573609df21440125eaf0e86e9d543f7c982f677c3078a52edd71b3d145c895c"
|
|
524
680
|
},
|
|
525
681
|
{
|
|
526
682
|
"path": "references/JOBS-XML.md",
|
|
527
|
-
"bytes": 9451
|
|
683
|
+
"bytes": 9451,
|
|
684
|
+
"digest": "sha256:f734d41e1666e0dc6e23af3f032494ddc1c080efaf919516003bf68b24991e00"
|
|
528
685
|
},
|
|
529
686
|
{
|
|
530
687
|
"path": "references/STEPTYPES-JSON.md",
|
|
531
|
-
"bytes": 13956
|
|
688
|
+
"bytes": 13956,
|
|
689
|
+
"digest": "sha256:1adc753c0a17c72c944c080d0d942f30a21d185a05d9232b739690b17c11e757"
|
|
532
690
|
},
|
|
533
691
|
{
|
|
534
692
|
"path": "references/TASK-ORIENTED.md",
|
|
535
|
-
"bytes": 9967
|
|
693
|
+
"bytes": 9967,
|
|
694
|
+
"digest": "sha256:2a78df661d2ac14481b1c35e9e25260f01e625ed2d40a370815a1c0c287483fe"
|
|
536
695
|
},
|
|
537
696
|
{
|
|
538
697
|
"path": "SKILL.md",
|
|
539
|
-
"bytes": 22735
|
|
698
|
+
"bytes": 22735,
|
|
699
|
+
"digest": "sha256:2ed064d1a71472884d268c716fd53850d895e64f4881c8b3d95dfc80918868f3"
|
|
540
700
|
}
|
|
541
701
|
]
|
|
542
702
|
},
|
|
@@ -546,16 +706,22 @@
|
|
|
546
706
|
"title": "b2c-custom-objects",
|
|
547
707
|
"description": "Store and query custom business data using CustomObjectMgr, OCAPI Data API, and Shopper Custom Objects API. Use this skill whenever the user needs to create, read, update, or search custom object instances, build processing queues with status fields, choose between site-scoped and organization-scoped storage, or query custom objects with bool/term filters. Also use when persisting non-standard data -- even if they just say 'store config per site' or 'query my custom data'.",
|
|
548
708
|
"entrypoint": "SKILL.md",
|
|
709
|
+
"frontmatter": {
|
|
710
|
+
"name": "b2c-custom-objects",
|
|
711
|
+
"description": "Store and query custom business data using CustomObjectMgr, OCAPI Data API, and Shopper Custom Objects API. Use this skill whenever the user needs to create, read, update, or search custom object instances, build processing queues with status fields, choose between site-scoped and organization-scoped storage, or query custom objects with bool/term filters. Also use when persisting non-standard data -- even if they just say 'store config per site' or 'query my custom data'."
|
|
712
|
+
},
|
|
549
713
|
"source": "skills/b2c/skills/b2c-custom-objects/SKILL.md",
|
|
550
714
|
"headings": "OCAPI Custom Object Search Reference | Search Endpoint | Request Structure | Query Types | Term Query (Exact Match) | Text Query (Full-Text Search) | Range Filter | Boolean Query | Match All Query | Filtered Query | Nested Query | Sorting | Field Selection | Response Structure | Pagination Example | Complex Query Example | Error Handling | B2C Custom Objects | When to Use Custom Objects | Custom Object Types | Script API (CustomObjectMgr) | Getting Custom Objects | Creating Custom Objects | Querying Custom Objects | Deleting Custom Objects | Getting All Objects of a Type | CustomObjectMgr API Reference | OCAPI Data API | Get Custom Object | Create Custom Object | Update Custom Object | Delete Custom Object | Search Custom Objects | Search Query Types | Shopper Custom Objects API (SCAPI) | Get Custom Object (Shopper) | Required Scopes | Searchable System Fields | Best Practices | Do | Don't | Common Patterns | Configuration Store | Processing Queue | Detailed References",
|
|
551
715
|
"files": [
|
|
552
716
|
{
|
|
553
717
|
"path": "references/OCAPI-SEARCH.md",
|
|
554
|
-
"bytes": 6388
|
|
718
|
+
"bytes": 6388,
|
|
719
|
+
"digest": "sha256:d8ce3cac3a498ae0fe9c1fa4eff7ea790411a208a73a3d9d1d80074d773e2bc8"
|
|
555
720
|
},
|
|
556
721
|
{
|
|
557
722
|
"path": "SKILL.md",
|
|
558
|
-
"bytes": 9887
|
|
723
|
+
"bytes": 9887,
|
|
724
|
+
"digest": "sha256:58c65b6f45b26e08edf51906f93d26ae3c9d9b7b2abb7db8b3956622cedcd1ce"
|
|
559
725
|
}
|
|
560
726
|
]
|
|
561
727
|
},
|
|
@@ -565,16 +731,22 @@
|
|
|
565
731
|
"title": "b2c-forms",
|
|
566
732
|
"description": "Build forms with validation in B2C Commerce using SFRA patterns. Use this skill whenever the user needs to create a storefront form (checkout, registration, profile edit, address, contact), define form fields in XML, handle form submission in a controller, add field validation rules, or render forms in ISML templates. Also use when they mention form XML definitions, server.forms.getForm, form groups/actions/lists, or CSRF protection on form posts — even if they just say \"I need a registration form\" or \"add validation to checkout\".",
|
|
567
733
|
"entrypoint": "SKILL.md",
|
|
734
|
+
"frontmatter": {
|
|
735
|
+
"name": "b2c-forms",
|
|
736
|
+
"description": "Build forms with validation in B2C Commerce using SFRA patterns. Use this skill whenever the user needs to create a storefront form (checkout, registration, profile edit, address, contact), define form fields in XML, handle form submission in a controller, add field validation rules, or render forms in ISML templates. Also use when they mention form XML definitions, server.forms.getForm, form groups/actions/lists, or CSRF protection on form posts — even if they just say \"I need a registration form\" or \"add validation to checkout\"."
|
|
737
|
+
},
|
|
568
738
|
"source": "skills/b2c/skills/b2c-forms/SKILL.md",
|
|
569
739
|
"headings": "Form XML Reference | XSD Schema Reference | XML Schema | Field Element | All Attributes | Field Types | String Field | Integer Field | Number Field (Decimal) | Boolean Field | Date Field | Validation Patterns | Common Regular Expressions | Custom Validation Script | Groups | Lists | Actions | Object Binding | Complete Examples | Login Form | Address Form | Registration Form with Password Confirmation | Forms Skill | Overview | File Location | Form Definition (XML) | Basic Structure | Field Types | Key Field Attributes | Validation Error Messages | Controller Logic (SFRA) | Rendering a Form | Processing Form Submission | Prepopulating Forms | Template (ISML) | Basic Form Template | Localization | Best Practices | Detailed Reference",
|
|
570
740
|
"files": [
|
|
571
741
|
{
|
|
572
742
|
"path": "references/FORM-XML.md",
|
|
573
|
-
"bytes": 11322
|
|
743
|
+
"bytes": 11322,
|
|
744
|
+
"digest": "sha256:3d607174e082a5bf1465a0a3836aa639e7a435b494eac39ec7fa87c19acd75be"
|
|
574
745
|
},
|
|
575
746
|
{
|
|
576
747
|
"path": "SKILL.md",
|
|
577
|
-
"bytes": 7481
|
|
748
|
+
"bytes": 7481,
|
|
749
|
+
"digest": "sha256:0c602075f7c4213e05b9afcdd53baf42f070b539c4680dd08bfda8103641f04b"
|
|
578
750
|
}
|
|
579
751
|
]
|
|
580
752
|
},
|
|
@@ -584,24 +756,32 @@
|
|
|
584
756
|
"title": "b2c-hooks",
|
|
585
757
|
"description": "Register and implement B2C Commerce platform hooks declared in hooks.json and invoked by HookMgr during OCAPI/SCAPI requests or system events. Use for hooks.json, HookMgr.callHook(), dw.system.Status, dw.ocapi.shop.* before/after/modifyResponse hooks, dw.order.payment.authorize/authorizeCreditCard, dw.order.calculate, app.payment.processor.*, SCAPI order-payment authorization and placement, rollback semantics, and request.custom transport. Do not use for external Node.js webhooks, SFRA controller middleware or prepend/append chains, scheduled job steps in steptypes.json, or Git/CI hooks.",
|
|
586
758
|
"entrypoint": "SKILL.md",
|
|
759
|
+
"frontmatter": {
|
|
760
|
+
"name": "b2c-hooks",
|
|
761
|
+
"description": "Register and implement B2C Commerce platform hooks declared in hooks.json and invoked by HookMgr during OCAPI/SCAPI requests or system events. Use for hooks.json, HookMgr.callHook(), dw.system.Status, dw.ocapi.shop.* before/after/modifyResponse hooks, dw.order.payment.authorize/authorizeCreditCard, dw.order.calculate, app.payment.processor.*, SCAPI order-payment authorization and placement, rollback semantics, and request.custom transport. Do not use for external Node.js webhooks, SFRA controller middleware or prepend/append chains, scheduled job steps in steptypes.json, or Git/CI hooks."
|
|
762
|
+
},
|
|
587
763
|
"source": "skills/b2c/skills/b2c-hooks/SKILL.md",
|
|
588
764
|
"headings": "OCAPI/SCAPI Hooks Reference | Prerequisites | Hook Naming Convention | Complete Hook Reference | Authentication | Basket | Basket Billing Address | Basket Customer | Basket Coupon | Basket Items | Basket Gift Certificate Item | Basket Payment Instrument | Basket Payment Methods | Basket Shipment | Basket Shipment Shipping Address | Basket Shipment Shipping Method | Basket Shipments Shipping Methods | Category | Customer | Customer Auth | Customer Address | Customer Baskets | Customer Orders | Customer Password | Customer Payment Instrument | Customer Product Lists | Customer Product List Items | Gift Certificate | Order | Order Payment Instrument | Order Payment Methods | Product | Product Search | Promotion | Search Suggestion | Store | Common Patterns | Validation (return error to reject request) | Modify Response (add custom properties) | Custom Properties | Notes | Shopper Order Payment Lifecycle (SCAPI/OCAPI) | Recommended Lifecycle | Hook Responsibilities | Payment-Instrument Resolution | Success and Failure Handling | Alternative: Complete Checkout in `order.afterPOST` | Two-Hook Variant | Cross-References | System Hooks Reference | Calculate Hooks | Extension Points | Registration | SFRA Implementation | SCAPI Consideration | Payment Hooks | Extension Points | Authorization Flow | Capture Flow | Refund Flow | Order Hooks | Order Number Generation | Checkout Hooks | Return Hooks | Shipping Order Hooks | Basket Merge Hooks | Request Hooks | Custom Extension Points | Hook Execution Order | Best Practices | Calculate Hooks | Payment Hooks | General | B2C Commerce Hooks | Hook Types Overview | Hook Registration | File Structure | package.json | hooks.json | Hook Script | HookMgr API | Status Object | Return Value Behavior (Important) | When to Return a Value | When NOT to Return a Value | Summary | OCAPI/SCAPI Hooks | Hook Types | Common Hook Patterns | Passing Data Between Hooks | Detect SCAPI vs OCAPI | Headless Order Payment: Use the Order-PI Authorization Seam | Authorization Semantics | Storefront/BFF Outcome Handling | Alternative: Authorize and Place in `order.afterPOST` | `request.custom` for Inter-Hook Data Passing | System Hooks | Calculate Hooks | Payment Hooks | Order Hooks | Custom Hooks | Remote Includes in Hooks | Best Practices | Error Handling | Circuit Breaker | Timeout | Detailed References",
|
|
589
765
|
"files": [
|
|
590
766
|
{
|
|
591
767
|
"path": "references/OCAPI-SCAPI-HOOKS.md",
|
|
592
|
-
"bytes": 24101
|
|
768
|
+
"bytes": 24101,
|
|
769
|
+
"digest": "sha256:b0e56c86042a0a1b1e6076f56e2c3d4abe26614bc6a227a36e9f240e37891e15"
|
|
593
770
|
},
|
|
594
771
|
{
|
|
595
772
|
"path": "references/ORDER-HOOK-LIFECYCLE.md",
|
|
596
|
-
"bytes":
|
|
773
|
+
"bytes": 7878,
|
|
774
|
+
"digest": "sha256:056a0e749e6d518be2e578eeb79e9234c9475402149281af0cc798ed390f2fab"
|
|
597
775
|
},
|
|
598
776
|
{
|
|
599
777
|
"path": "references/SYSTEM-HOOKS.md",
|
|
600
|
-
"bytes": 16228
|
|
778
|
+
"bytes": 16228,
|
|
779
|
+
"digest": "sha256:065f14a6246884fa2d92041b0cef788053c11ca4901bc8a80a2aa9e8648346ad"
|
|
601
780
|
},
|
|
602
781
|
{
|
|
603
782
|
"path": "SKILL.md",
|
|
604
|
-
"bytes": 18143
|
|
783
|
+
"bytes": 18143,
|
|
784
|
+
"digest": "sha256:70416be41a00df167b3cadfa4ceb6a32585d01d0279a1fe3129d646300afb39c"
|
|
605
785
|
}
|
|
606
786
|
]
|
|
607
787
|
},
|
|
@@ -611,20 +791,27 @@
|
|
|
611
791
|
"title": "b2c-isml",
|
|
612
792
|
"description": "Build ISML templates with isprint, isset, isloop, isdecorate, isinclude tags, and ${...} expression syntax. Use this skill whenever the user needs to write or debug storefront templates, create decorator layouts with isreplace, build reusable template modules, control HTML encoding in output, or use ISML expression language for dynamic content. Also use when fixing template rendering issues -- even if they just say 'loop through products in the template' or 'my HTML is getting escaped'.",
|
|
613
793
|
"entrypoint": "SKILL.md",
|
|
794
|
+
"frontmatter": {
|
|
795
|
+
"name": "b2c-isml",
|
|
796
|
+
"description": "Build ISML templates with isprint, isset, isloop, isdecorate, isinclude tags, and ${...} expression syntax. Use this skill whenever the user needs to write or debug storefront templates, create decorator layouts with isreplace, build reusable template modules, control HTML encoding in output, or use ISML expression language for dynamic content. Also use when fixing template rendering issues -- even if they just say 'loop through products in the template' or 'my HTML is getting escaped'."
|
|
797
|
+
},
|
|
614
798
|
"source": "skills/b2c/skills/b2c-isml/SKILL.md",
|
|
615
799
|
"headings": "ISML Expressions Reference | Expression Syntax | Property Access | Built-in Objects | pdict | session | request | response | customer | Operators | Arithmetic | Comparison | Logical | Ternary | String Concatenation | Null Check | Built-in Functions | empty() | Utility Classes | URLUtils | Resource | StringUtils | dw.util.Locale | Date/Time | Formatting Dates | Current Date | Collection Operations | Iteration | Size/Length | Check Contents | Common Patterns | Null-safe Access | Default Values | Conditional Classes | Price Formatting | Product Images | Localized Attributes | ISML Tags Reference | Control Flow Tags | isif / iselseif / iselse | isloop | isbreak / iscontinue / isnext | Variable Tags | isset | isremove | Output Tags | isprint | Template Composition | isinclude | isdecorate / isreplace | ismodule | Content Tags | iscontent | iscache | iscomment | iscomponent | Navigation Tags | isredirect | isstatus | Form Tags | isselect | Script Tag | isscript | Slot Tag | isslot | Cookie Tag | iscookie | Active Data Tags | isobject | isactivedatahead | isactivedatacontext | isanalyticsoff | Special Tags | isprint with style options | ISML Skill | Overview | File Location | Essential Tags | Conditional Logic | Loops | Variables | Output | Include Templates | Decorator Pattern | Expressions | Built-in Utilities | URLUtils | Resource (Localization) | StringUtils | Custom Modules | Caching | Content Type | Embedded Scripts | Comments | Tag Location Constraints | Best Practices | Detailed Reference",
|
|
616
800
|
"files": [
|
|
617
801
|
{
|
|
618
802
|
"path": "references/EXPRESSIONS.md",
|
|
619
|
-
"bytes": 6434
|
|
803
|
+
"bytes": 6434,
|
|
804
|
+
"digest": "sha256:6834e7f6447c571b69695d56d82b0f75d185f1c0edfc10530151dc06b1eb3d5c"
|
|
620
805
|
},
|
|
621
806
|
{
|
|
622
807
|
"path": "references/TAGS.md",
|
|
623
|
-
"bytes": 10031
|
|
808
|
+
"bytes": 10031,
|
|
809
|
+
"digest": "sha256:86d3b4c5d1044a6cf51ad77be7b34bd8fff1218cb8967c5a1692949b05ea61e1"
|
|
624
810
|
},
|
|
625
811
|
{
|
|
626
812
|
"path": "SKILL.md",
|
|
627
|
-
"bytes": 8627
|
|
813
|
+
"bytes": 8627,
|
|
814
|
+
"digest": "sha256:f432b0ffd31f48b3cbafe654d7827dee9781e9c5440ddfb55f51e36be09d7b91"
|
|
628
815
|
}
|
|
629
816
|
]
|
|
630
817
|
},
|
|
@@ -634,16 +821,22 @@
|
|
|
634
821
|
"title": "b2c-localization",
|
|
635
822
|
"description": "Add translations and multi-language support to B2C Commerce storefronts. Use this skill whenever the user needs to translate a storefront, add a new locale, create or edit .properties resource bundles, display translated strings in templates, format dates or currencies for different regions, or build a language switcher. Also use when they mention Resource.msg, Resource.msgf, locale fallback, or i18n — even if they just say \"we need French translations\" or \"make this page work in multiple languages\".",
|
|
636
823
|
"entrypoint": "SKILL.md",
|
|
824
|
+
"frontmatter": {
|
|
825
|
+
"name": "b2c-localization",
|
|
826
|
+
"description": "Add translations and multi-language support to B2C Commerce storefronts. Use this skill whenever the user needs to translate a storefront, add a new locale, create or edit .properties resource bundles, display translated strings in templates, format dates or currencies for different regions, or build a language switcher. Also use when they mention Resource.msg, Resource.msgf, locale fallback, or i18n — even if they just say \"we need French translations\" or \"make this page work in multiple languages\"."
|
|
827
|
+
},
|
|
637
828
|
"source": "skills/b2c/skills/b2c-localization/SKILL.md",
|
|
638
829
|
"headings": "Localization Patterns Reference | Resource Bundle Organization | Recommended Structure | Bundle Content Patterns | Template Patterns | Page Layout | Form Labels | Pluralization | Date Formatting | Number Formatting | Controller Patterns | Locale-Aware Controller | Multi-Locale Email | JavaScript Client-Side | Passing Messages to JS | Using in JS | Special Characters | Escaping in Properties | UTF-8 Encoding | Testing Localization | Pseudo-Localization | Checklist | Localization Skill | Overview | Locale Format | Resource Bundles | Directory Structure | Property File Format | Using Resources in Templates | Parameterized Messages | Locale Fallback | Static Files | Directory Structure | Referencing Static Files | Forms Localization | Form Definition | Resource Bundle | URL Localization | Locale-Aware URLs | Language Switcher | Controller Localization | Accessing Current Locale | Locale-Specific Logic | Email Templates | Setting Locale | Currency Formatting | Date Formatting | Best Practices | Detailed Reference",
|
|
639
830
|
"files": [
|
|
640
831
|
{
|
|
641
832
|
"path": "references/PATTERNS.md",
|
|
642
|
-
"bytes": 10391
|
|
833
|
+
"bytes": 10391,
|
|
834
|
+
"digest": "sha256:86d8c24ed6fbb09aed82eb7cb648d46e8f083e1cd63c248ca74a558b4622dfb4"
|
|
643
835
|
},
|
|
644
836
|
{
|
|
645
837
|
"path": "SKILL.md",
|
|
646
|
-
"bytes": 9168
|
|
838
|
+
"bytes": 9168,
|
|
839
|
+
"digest": "sha256:788c2b9afe2644685045281a3a9fadad704f2e27164aa03be1ac70b7015d5cfe"
|
|
647
840
|
}
|
|
648
841
|
]
|
|
649
842
|
},
|
|
@@ -653,16 +846,22 @@
|
|
|
653
846
|
"title": "b2c-logging",
|
|
654
847
|
"description": "Implement server-side logging with dw.system.Logger, custom log categories, and named log files. Use this skill whenever the user needs to add debug or error logging to Commerce scripts, write to a dedicated log file, configure log categories and levels, or use nested diagnostic context for tracing. Also use when setting up logging in controllers, hooks, or job scripts -- even if they just say 'add logging to my script' or 'write to a custom log file'.",
|
|
655
848
|
"entrypoint": "SKILL.md",
|
|
849
|
+
"frontmatter": {
|
|
850
|
+
"name": "b2c-logging",
|
|
851
|
+
"description": "Implement server-side logging with dw.system.Logger, custom log categories, and named log files. Use this skill whenever the user needs to add debug or error logging to Commerce scripts, write to a dedicated log file, configure log categories and levels, or use nested diagnostic context for tracing. Also use when setting up logging in controllers, hooks, or job scripts -- even if they just say 'add logging to my script' or 'write to a custom log file'."
|
|
852
|
+
},
|
|
656
853
|
"source": "skills/b2c/skills/b2c-logging/SKILL.md",
|
|
657
854
|
"headings": "Log Files Reference | Log File Types | Custom Log Files | System Log Files | Custom Named Log Files | Log File Locations | WebDAV Access | Business Manager Access | Log Retention | Archive Process | Storage Limits | Custom Log Size Limits | File Count Limits | Custom Log File Quota | Log Entry Format | Standard Format | With NDC | Redundancy Tracking | Quota Log Format | Security Log Format | Import/Export Logs | Accessing Logs Programmatically | Via WebDAV Client | Via B2C CLI | Debug Logging on Production | Best Practices | 1. Monitor Log File Sizes | 2. Use Custom Named Logs for Integrations | 3. Clean Up Old Logs | 4. Configure Categories in Business Manager | 5. Use Appropriate Log Levels | Logging Skill | Overview | Log Levels | Basic Logging | Using Logger (Static Methods) | Using Log (Instance Methods) | Categories | Custom Named Log Files | File Name Rules | File Naming Pattern | Quota | Checking Log Level Status | Static Level Checks | Message Formatting | Nested Diagnostic Context (NDC) | NDC Methods | Best Practices | 1. Use Categories | 2. Check Level Before Expensive Operations | 3. Include Context in Messages | 4. Use Appropriate Levels | 5. Use Custom Log Files for Integration | 6. Don't Log Sensitive Data | Business Manager Configuration | Configuring Categories | Log Output Format | Detailed Reference | Script API Classes",
|
|
658
855
|
"files": [
|
|
659
856
|
{
|
|
660
857
|
"path": "references/LOG-FILES.md",
|
|
661
|
-
"bytes": 7369
|
|
858
|
+
"bytes": 7369,
|
|
859
|
+
"digest": "sha256:eedf4805e18a49be46869bc6031f9d5f6c1b847ecb59c5f861325e1b17b8581d"
|
|
662
860
|
},
|
|
663
861
|
{
|
|
664
862
|
"path": "SKILL.md",
|
|
665
|
-
"bytes": 10009
|
|
863
|
+
"bytes": 10009,
|
|
864
|
+
"digest": "sha256:ba5e6efc72f1399c4fd0515d9067c36f76d94e8fc80fe9e65dfdfd38094c5193"
|
|
666
865
|
}
|
|
667
866
|
]
|
|
668
867
|
},
|
|
@@ -672,20 +871,27 @@
|
|
|
672
871
|
"title": "b2c-metadata",
|
|
673
872
|
"description": "Define custom attributes, custom object types, and site preferences for B2C Commerce using metadata XML. Use this skill whenever the user needs to add a field to products, orders, or customers, create a new custom object type, set up site preferences, or extend the B2C data model. Also use when they ask about system-objecttype-extensions.xml, custom-objecttype-definitions.xml, attribute groups in Business Manager, or data model definitions — even if they just say \"add a field to products\" or \"I need a new object type\".",
|
|
674
873
|
"entrypoint": "SKILL.md",
|
|
874
|
+
"frontmatter": {
|
|
875
|
+
"name": "b2c-metadata",
|
|
876
|
+
"description": "Define custom attributes, custom object types, and site preferences for B2C Commerce using metadata XML. Use this skill whenever the user needs to add a field to products, orders, or customers, create a new custom object type, set up site preferences, or extend the B2C data model. Also use when they ask about system-objecttype-extensions.xml, custom-objecttype-definitions.xml, attribute groups in Business Manager, or data model definitions — even if they just say \"add a field to products\" or \"I need a new object type\"."
|
|
877
|
+
},
|
|
675
878
|
"source": "skills/b2c/skills/b2c-metadata/SKILL.md",
|
|
676
879
|
"headings": "System Objects Reference | Product-Related | Product | ProductLineItem | Category | Order-Related | Order | Basket | Shipment | Customer-Related | Profile | CustomerAddress | Content-Related | Content | Folder | Site Configuration | SitePreferences | OrganizationPreferences | Other Objects | Store | GiftCertificate | SourceCodeGroup | Complete List of System Objects | Metadata XML Examples | XSD Schema Reference | Site Archive Structure | Adding Custom Attributes to Products | Metadata (meta/system-objecttype-extensions.xml) | Adding Custom Attributes to Orders | Custom Object Definition | Site Preferences | Metadata | Preference Values (sites/RefArch/preferences.xml) | Product Data with Custom Attributes | Custom Object Data | Metadata Skill | Scope & grounding | Overview | Site Archive Structure | System Object Extensions | Basic Structure | Common System Objects | Attribute Types | Enum Value Definitions | Product Custom Attribute Example | Custom Object Definitions | Site Preferences | Metadata (system-objecttype-extensions.xml) | Values (sites/MySite/preferences.xml) | Access in Code | Attribute Definition Options | Best Practices | Quick Reference",
|
|
677
880
|
"files": [
|
|
678
881
|
{
|
|
679
882
|
"path": "references/SYSTEM-OBJECTS.md",
|
|
680
|
-
"bytes": 9335
|
|
883
|
+
"bytes": 9335,
|
|
884
|
+
"digest": "sha256:6b80525ccb206e6f55be7385eec5589d972ac0410b811da340fbee4542c3ea36"
|
|
681
885
|
},
|
|
682
886
|
{
|
|
683
887
|
"path": "references/XML-EXAMPLES.md",
|
|
684
|
-
"bytes": 15657
|
|
888
|
+
"bytes": 15657,
|
|
889
|
+
"digest": "sha256:673905049e880f26d72b6c950fb84acac3022a2521863c9bf9408e6174ba9c7d"
|
|
685
890
|
},
|
|
686
891
|
{
|
|
687
892
|
"path": "SKILL.md",
|
|
688
|
-
"bytes": 17974
|
|
893
|
+
"bytes": 17974,
|
|
894
|
+
"digest": "sha256:e064d0eb92094b59d7834933de1907b3a8cc329bf169fb4f037bfa443c396cbe"
|
|
689
895
|
}
|
|
690
896
|
]
|
|
691
897
|
},
|
|
@@ -695,12 +901,17 @@
|
|
|
695
901
|
"title": "b2c-onboarding",
|
|
696
902
|
"description": "Get started with Salesforce B2C Commerce development. Use this skill when the user is new to B2C Commerce, wants to set up a fresh development environment, is asking \"how do I get started\", needs to install the B2C CLI for the first time, wants to connect a sandbox, or wants to deploy their first cartridge. Triggers on phrases like \"help me get started\", \"set up B2C Commerce\", \"I'm new to this\", \"onboard me\", or \"first-time setup\". NOT for users who already have a configured environment and are asking about specific commands — those should go to the specific skill (b2c-code, b2c-sandbox, b2c-config, etc.).",
|
|
697
903
|
"entrypoint": "SKILL.md",
|
|
904
|
+
"frontmatter": {
|
|
905
|
+
"name": "b2c-onboarding",
|
|
906
|
+
"description": "Get started with Salesforce B2C Commerce development. Use this skill when the user is new to B2C Commerce, wants to set up a fresh development environment, is asking \"how do I get started\", needs to install the B2C CLI for the first time, wants to connect a sandbox, or wants to deploy their first cartridge. Triggers on phrases like \"help me get started\", \"set up B2C Commerce\", \"I'm new to this\", \"onboard me\", or \"first-time setup\". NOT for users who already have a configured environment and are asking about specific commands — those should go to the specific skill (b2c-code, b2c-sandbox, b2c-config, etc.)."
|
|
907
|
+
},
|
|
698
908
|
"source": "skills/b2c/skills/b2c-onboarding/SKILL.md",
|
|
699
909
|
"headings": "B2C Commerce Onboarding Skill | Behavioral rules | Flow | Step 1 — Identify the editor | Step 2 — Install the other B2C skills plugins | Step 3 — Verify the B2C CLI is available | Step 4 — Account Manager access check | Step 5 — Check for existing configuration | Step 6 — Initialize configuration | Step 7 — Sandbox | Step 8 — First cartridge deploy (if applicable) | Step 9 — Route to the user's goal | Reference",
|
|
700
910
|
"files": [
|
|
701
911
|
{
|
|
702
912
|
"path": "SKILL.md",
|
|
703
|
-
"bytes":
|
|
913
|
+
"bytes": 7759,
|
|
914
|
+
"digest": "sha256:3ab88befdf79fe7fcdafaaa737ef185251829e5db67cb6fec866ede6816a1aed"
|
|
704
915
|
}
|
|
705
916
|
]
|
|
706
917
|
},
|
|
@@ -710,12 +921,17 @@
|
|
|
710
921
|
"title": "b2c-ordering",
|
|
711
922
|
"description": "Manage the order lifecycle in B2C Commerce including order creation, status transitions, failure handling, and checkout completion. Use this skill whenever the user needs to create an order from a basket, transition order status, handle failed or cancelled orders, implement payment authorization in checkout, or understand async order processing — even if they just say \"my order is stuck\" or \"finish the checkout flow\".",
|
|
712
923
|
"entrypoint": "SKILL.md",
|
|
924
|
+
"frontmatter": {
|
|
925
|
+
"name": "b2c-ordering",
|
|
926
|
+
"description": "Manage the order lifecycle in B2C Commerce including order creation, status transitions, failure handling, and checkout completion. Use this skill whenever the user needs to create an order from a basket, transition order status, handle failed or cancelled orders, implement payment authorization in checkout, or understand async order processing — even if they just say \"my order is stuck\" or \"finish the checkout flow\"."
|
|
927
|
+
},
|
|
713
928
|
"source": "skills/b2c/skills/b2c-ordering/SKILL.md",
|
|
714
929
|
"headings": "B2C Ordering | Order Lifecycle | Creating Orders | Standard Flow (Synchronous) | SCAPI Flow: Create, Authorize Through Order PI, Then Place | OrderMgr API Reference | Order Creation | Order Status | Order Queries | Querying Orders | Get Order by Number | Search Orders | Query by Date Range | Order Status Management | Cancel Order | Fail Order | Handling Failed Orders | SCAPI: Fail Order and Reopen Basket | Undo Cancelled Order | Order Properties | Custom Order Numbers | Best Practices | Do | Don't | Error Handling | Related Skills",
|
|
715
930
|
"files": [
|
|
716
931
|
{
|
|
717
932
|
"path": "SKILL.md",
|
|
718
|
-
"bytes":
|
|
933
|
+
"bytes": 12099,
|
|
934
|
+
"digest": "sha256:af239ea07f97766a8847a87521bca58c83a0aca76c3f62667653b9ce5dc9d857"
|
|
719
935
|
}
|
|
720
936
|
]
|
|
721
937
|
},
|
|
@@ -725,20 +941,27 @@
|
|
|
725
941
|
"title": "b2c-page-designer",
|
|
726
942
|
"description": "Define Page Designer page types and component types with regions, attributes, and rendering scripts. Use this skill whenever the user needs to create a new page or component type, configure regions with allowed component constraints, define attribute_definition_groups, debug why a component does not appear in the editor, or fix enum/color attribute pitfalls. Also use when building visual merchandising experiences -- even if they just say 'my component is missing from PD' or 'add a hero banner component'.",
|
|
727
943
|
"entrypoint": "SKILL.md",
|
|
944
|
+
"frontmatter": {
|
|
945
|
+
"name": "b2c-page-designer",
|
|
946
|
+
"description": "Define Page Designer page types and component types with regions, attributes, and rendering scripts. Use this skill whenever the user needs to create a new page or component type, configure regions with allowed component constraints, define attribute_definition_groups, debug why a component does not appear in the editor, or fix enum/color attribute pitfalls. Also use when building visual merchandising experiences -- even if they just say 'my component is missing from PD' or 'add a hero banner component'."
|
|
947
|
+
},
|
|
728
948
|
"source": "skills/b2c/skills/b2c-page-designer/SKILL.md",
|
|
729
949
|
"headings": "Page Designer Attribute Types Reference | String Types | string | text | markup | Numeric Types | integer | Boolean Type | boolean | Selection Types | enum | enum with display names | Media Types | image | file | URL Type | url | Commerce Types | product | category | page | CMS Type | cms_record | Custom Type | custom | Complete Component Example | Page Designer Meta Definitions Reference | Page Type Schema | Page Type Properties | Region Definition Properties | Component Type Schema | Component Type Properties | Attribute Definition Properties | Complete Page Type Example | Complete Component Type Example | Container Component Example | Page Script Context | Component Script Context | Page Designer Skill | Scope & grounding | Overview | File Structure | Page Types | Meta Definition (pages/homepage.json) | Page Script (pages/homepage.js) | Page Template (templates/default/experience/pages/homepage.isml) | Component Types | Meta Definition (components/banner.json) | Component Script (components/banner.js) | Component Template (templates/experience/components/banner.isml) | Attribute Types | Region Definitions | Rendering Pages | In Controllers | In ISML | Component Groups | If the component does not appear in Page Designer | Best Practices | Detailed Reference",
|
|
730
950
|
"files": [
|
|
731
951
|
{
|
|
732
952
|
"path": "references/ATTRIBUTE-TYPES.md",
|
|
733
|
-
"bytes": 8272
|
|
953
|
+
"bytes": 8272,
|
|
954
|
+
"digest": "sha256:e40b349b6d1cb0c86d19a0946afc92ab8c93c707197db07132ec5ac6bccc7cb5"
|
|
734
955
|
},
|
|
735
956
|
{
|
|
736
957
|
"path": "references/META-DEFINITIONS.md",
|
|
737
|
-
"bytes": 10494
|
|
958
|
+
"bytes": 10494,
|
|
959
|
+
"digest": "sha256:40d7119a6ceef1b53bd2ce01c3c6680849c9922f93056de5500074c82b5d2b2f"
|
|
738
960
|
},
|
|
739
961
|
{
|
|
740
962
|
"path": "SKILL.md",
|
|
741
|
-
"bytes": 16065
|
|
963
|
+
"bytes": 16065,
|
|
964
|
+
"digest": "sha256:f40bc64c0a8f494fabdb1dc03e91394d5910e27c0421d06b440723c74a105bda"
|
|
742
965
|
}
|
|
743
966
|
]
|
|
744
967
|
},
|
|
@@ -748,16 +971,22 @@
|
|
|
748
971
|
"title": "b2c-querying-data",
|
|
749
972
|
"description": "Write efficient data queries in B2C Commerce for products, customers, and orders. Use this skill whenever the user needs to search products on a storefront page, look up customer profiles, query orders, paginate search results, or fix slow category pages. Also use when they ask about performance problems with data access, replacing database-intensive APIs with index-backed alternatives, or choosing between search vs query methods — even if they just say \"my category page is slow\" or \"how do I find customers by email\".",
|
|
750
973
|
"entrypoint": "SKILL.md",
|
|
974
|
+
"frontmatter": {
|
|
975
|
+
"name": "b2c-querying-data",
|
|
976
|
+
"description": "Write efficient data queries in B2C Commerce for products, customers, and orders. Use this skill whenever the user needs to search products on a storefront page, look up customer profiles, query orders, paginate search results, or fix slow category pages. Also use when they ask about performance problems with data access, replacing database-intensive APIs with index-backed alternatives, or choosing between search vs query methods — even if they just say \"my category page is slow\" or \"how do I find customers by email\"."
|
|
977
|
+
},
|
|
751
978
|
"source": "skills/b2c/skills/b2c-querying-data/SKILL.md",
|
|
752
979
|
"headings": "Performance-Critical APIs | Product APIs | Database-Intensive (Avoid on Storefront Pages) | Index-Friendly Replacements | Order APIs | Customer / Profile APIs | Custom Object APIs | General Query Performance Rules | Querying Data in B2C Commerce | Product Search (Storefront) | Basic Product Search | Paging Search Results | Getting Variation Data from Search Hits | Search Refinements | ProductSearchModel API Summary | Order Queries | OrderMgr.searchOrders / queryOrders | Query by Date Range | searchOrders vs queryOrders | Customer / Profile Queries | CustomerMgr (Preferred) | Batch Processing (Jobs) | Customer Query Behaviors | System Object Queries (SystemObjectMgr) | Database-Intensive APIs to Avoid | Related Skills | Best Practices | Do | Don't | Job-Specific Guidelines | Detailed References",
|
|
753
980
|
"files": [
|
|
754
981
|
{
|
|
755
982
|
"path": "references/PERFORMANCE-APIS.md",
|
|
756
|
-
"bytes": 4476
|
|
983
|
+
"bytes": 4476,
|
|
984
|
+
"digest": "sha256:71a3a31578a2f53cfd8ded8848f32134790ed8cb83207b23591e6d6275c5ecee"
|
|
757
985
|
},
|
|
758
986
|
{
|
|
759
987
|
"path": "SKILL.md",
|
|
760
|
-
"bytes":
|
|
988
|
+
"bytes": 10421,
|
|
989
|
+
"digest": "sha256:3a5a1aac36cd143e240fd7ff14aea7d59c5df41336e6704d5bb53252669db270"
|
|
761
990
|
}
|
|
762
991
|
]
|
|
763
992
|
},
|
|
@@ -767,24 +996,32 @@
|
|
|
767
996
|
"title": "b2c-scapi-admin",
|
|
768
997
|
"description": "Build backend integrations that sync data between B2C Commerce and external systems like ERPs, OMS, WMS, or CRMs using SCAPI Admin APIs. Use this skill whenever the user needs to pull or push orders, products, inventory, or customer data programmatically from a backend service, set up server-to-server authentication with Account Manager client credentials and admin OAuth scopes, implement bulk inventory imports with NDJSON, or call any Commerce API from a script or pipeline (not a storefront). Also use when building nightly data exports, warehouse sync jobs, or customer data integrations — even if they just say \"pull orders into our ERP\" or \"sync inventory from the warehouse\".",
|
|
769
998
|
"entrypoint": "SKILL.md",
|
|
999
|
+
"frontmatter": {
|
|
1000
|
+
"name": "b2c-scapi-admin",
|
|
1001
|
+
"description": "Build backend integrations that sync data between B2C Commerce and external systems like ERPs, OMS, WMS, or CRMs using SCAPI Admin APIs. Use this skill whenever the user needs to pull or push orders, products, inventory, or customer data programmatically from a backend service, set up server-to-server authentication with Account Manager client credentials and admin OAuth scopes, implement bulk inventory imports with NDJSON, or call any Commerce API from a script or pipeline (not a storefront). Also use when building nightly data exports, warehouse sync jobs, or customer data integrations — even if they just say \"pull orders into our ERP\" or \"sync inventory from the warehouse\"."
|
|
1002
|
+
},
|
|
770
1003
|
"source": "skills/b2c/skills/b2c-scapi-admin/SKILL.md",
|
|
771
1004
|
"headings": "SCAPI Client Examples | Overview | Base URL Structure | Authentication | Get Admin Token via CLI | Get Token Programmatically | Dual Scope Requirement | Account Manager Setup | API Families | Products API | Catalogs API | Orders API | Inventory Availability API | Inventory IMPEX API | Customers API | Promotions API | Request Tracking | Correlation IDs | Verbose Logging | Error Handling | Common Errors | Rate Limiting | Related Skills | Reference Documentation | Integration Patterns Reference | Inventory Sync Pattern | Real-Time Inventory Updates | Bulk Inventory Import (IMPEX) | Best Practices for Inventory IMPEX | Order Export Pattern | Polling for New Orders | Order Status Updates | Product Sync Pattern | Delta Product Updates | Customer Data Sync Pattern | Export Customers to CRM | Error Handling Pattern | Retry with Exponential Backoff | Dead Letter Queue Pattern | Token Management Pattern | Automatic Token Refresh | Monitoring Pattern | Request Logging | Scheduling Best Practices | Spread Load Over Time | Off-Peak Processing | Idempotency | Admin API OAuth Scopes Reference | Scope Format | Scope Suffix Convention | Getting Tokens with Scopes | Via CLI | Via cURL | Product API Scopes | Order API Scopes | Inventory API Scopes | Pricing API Scopes | Customer Management Scopes | Configuration Scopes | Experience Scopes | CDN API Scopes | Developer API Scopes | SLAS Admin Scopes | Recommended Scope Sets | Order Management Integration | Catalog/Product Sync | Inventory Sync | Customer Data Sync | Read-Only Analytics/Reporting | Full Admin Access | Best Practices | Principle of Least Privilege | Separate Clients for Different Integrations | Token Caching | Audit Scope Usage | Scope Errors | 403 Forbidden - Missing Scope | 403 Forbidden - Missing Tenant Scope | Invalid Scope Error | SCAPI Admin APIs | Tool choice | Execute deliberately | Conditional references",
|
|
772
1005
|
"files": [
|
|
773
1006
|
{
|
|
774
1007
|
"path": "references/CLIENT-EXAMPLES.md",
|
|
775
|
-
"bytes":
|
|
1008
|
+
"bytes": 13578,
|
|
1009
|
+
"digest": "sha256:11fccdc7fd284a5392a01c6b6aec1cc11622868c19d3c21708722e10838b9981"
|
|
776
1010
|
},
|
|
777
1011
|
{
|
|
778
1012
|
"path": "references/INTEGRATION-PATTERNS.md",
|
|
779
|
-
"bytes": 15062
|
|
1013
|
+
"bytes": 15062,
|
|
1014
|
+
"digest": "sha256:0d1164f87cbb1cc5c54ee84ff1f0f3ca50abfc4a83d00b0428487837ff723ff9"
|
|
780
1015
|
},
|
|
781
1016
|
{
|
|
782
1017
|
"path": "references/OAUTH-SCOPES.md",
|
|
783
|
-
"bytes": 10069
|
|
1018
|
+
"bytes": 10069,
|
|
1019
|
+
"digest": "sha256:e5fbec52987ac38bed047a8359fdd7a65a68f0e4ce3142098461fde83f4de072"
|
|
784
1020
|
},
|
|
785
1021
|
{
|
|
786
1022
|
"path": "SKILL.md",
|
|
787
|
-
"bytes":
|
|
1023
|
+
"bytes": 3525,
|
|
1024
|
+
"digest": "sha256:4cc116af06289cd956e65f0a76866942bf89d4882b42bc284b3dd92b979d9acf"
|
|
788
1025
|
}
|
|
789
1026
|
]
|
|
790
1027
|
},
|
|
@@ -794,28 +1031,37 @@
|
|
|
794
1031
|
"title": "b2c-scapi-shopper",
|
|
795
1032
|
"description": "Call Shopper Commerce APIs (SCAPI) from headless storefronts and composable commerce apps. Use this skill whenever the user is building with PWA Kit, Storefront Next (SFNext), or a headless frontend and needs to search products, manage baskets, submit orders, access customer data, or set shopper context. Also use when they ask about Shopper API authentication, checkout flows from a frontend app, or performance optimization for API calls — even if they just say \"search products from my PWA\" or \"build a headless checkout\".",
|
|
796
1033
|
"entrypoint": "SKILL.md",
|
|
1034
|
+
"frontmatter": {
|
|
1035
|
+
"name": "b2c-scapi-shopper",
|
|
1036
|
+
"description": "Call Shopper Commerce APIs (SCAPI) from headless storefronts and composable commerce apps. Use this skill whenever the user is building with PWA Kit, Storefront Next (SFNext), or a headless frontend and needs to search products, manage baskets, submit orders, access customer data, or set shopper context. Also use when they ask about Shopper API authentication, checkout flows from a frontend app, or performance optimization for API calls — even if they just say \"search products from my PWA\" or \"build a headless checkout\"."
|
|
1037
|
+
},
|
|
797
1038
|
"source": "skills/b2c/skills/b2c-scapi-shopper/SKILL.md",
|
|
798
1039
|
"headings": "Checkout Flow Reference | Flow Overview | Prerequisites | Step 1: Create Basket | Step 2: Add Items | Update Item Quantity | Remove Item | Step 3: Set Customer Info | Step 4: Set Shipping Address | Step 5: Get and Select Shipping Method | Get Available Shipping Methods | Set Shipping Method | Step 6: Add Payment Instrument | Set Billing Address | Step 7: Submit Order | Step 8: Authorize the Order Payment Instrument | Step 9: Fail a Deterministically Declined Order | Single-Request Basket Creation | Multiple Shipments | Applying Promotions | Apply Coupon Code | Remove Coupon | Error Handling | Common Basket Errors | Basket Validation | SCAPI Client Examples | Overview | Base URL Structure | Configuration Values | Authentication | Create SLAS Client | Get Guest Token | Required Scopes | API Families | Shopper Products | Shopper Search | Shopper Baskets | Shopper Orders | Shopper Customers | Shopper Context API | When to Set Context | Quota Limits | Best Practices | Performance Optimization | Use `select` Parameter | Use `expand` Carefully | Enable Compression | Debugging | Correlation IDs | Verbose Logging | Related Skills | Reference Documentation | Common Patterns Reference | Response Optimization | Field Selection with `select` | Using `expand` Parameter | Compression | Pagination | Offset-Based Pagination | Response Metadata | Error Handling | Error Response Format | Common HTTP Status Codes | Error Handling Pattern | Retry with Exponential Backoff | URL Encoding | Special Characters | Query Parameters | Caching Strategies | Client-Side Caching | CDN Cache Headers | Request Batching | Multiple Products | Parallel Requests | Debugging Requests | Include Correlation ID | Verbose Logging | Log Request/Response | Shopper API Scopes Reference | Scope Overview | Scope Categories | Product APIs | Search APIs | Checkout APIs | Customer APIs | Pricing APIs | Store APIs | Context APIs | Configuration APIs | Product Lists APIs | Special Scopes | Authentication Scopes | Trusted Agent/System Scopes | AI Agent Scope | Custom Scopes | Default Scopes | Recommended Scope Sets | Basic Shopping App (PWA Kit) | Read-Only Catalog Browser | Guest Checkout Only | Full Customer Experience | Best Practices | Minimize Scope Set | Avoid Redundant Scopes | Separate Clients for Different Purposes | Don't Mix Admin and Shopper Scopes | Verifying Token Scopes | Shopper Commerce APIs | Tool choice | Integration essentials | Conditional references",
|
|
799
1040
|
"files": [
|
|
800
1041
|
{
|
|
801
1042
|
"path": "references/CHECKOUT-FLOW.md",
|
|
802
|
-
"bytes": 14479
|
|
1043
|
+
"bytes": 14479,
|
|
1044
|
+
"digest": "sha256:0fdae15001e3bab0dc931891d60f3f63e5ad2ba7183cf3583c3b4af73a59fe4c"
|
|
803
1045
|
},
|
|
804
1046
|
{
|
|
805
1047
|
"path": "references/CLIENT-EXAMPLES.md",
|
|
806
|
-
"bytes":
|
|
1048
|
+
"bytes": 11640,
|
|
1049
|
+
"digest": "sha256:cb703b0dd6dd5a2f90264694a757fd24ac0f7f3c286bdceae28fa1dae7a854fa"
|
|
807
1050
|
},
|
|
808
1051
|
{
|
|
809
1052
|
"path": "references/COMMON-PATTERNS.md",
|
|
810
|
-
"bytes": 9837
|
|
1053
|
+
"bytes": 9837,
|
|
1054
|
+
"digest": "sha256:d3337f184a6e7521205c9d980d3f09315503897f78b14542da220d3401c010e5"
|
|
811
1055
|
},
|
|
812
1056
|
{
|
|
813
1057
|
"path": "references/SCOPES.md",
|
|
814
|
-
"bytes": 8446
|
|
1058
|
+
"bytes": 8446,
|
|
1059
|
+
"digest": "sha256:09af9a4012deba400e1a45dcc5d76ffaeb57ee9c2cb1f2ea9692b8140e729e6f"
|
|
815
1060
|
},
|
|
816
1061
|
{
|
|
817
1062
|
"path": "SKILL.md",
|
|
818
|
-
"bytes":
|
|
1063
|
+
"bytes": 3413,
|
|
1064
|
+
"digest": "sha256:16ab740894ab046c5904e2e9c50ba1dcedacbb38cb618905a4b477e74017af90"
|
|
819
1065
|
}
|
|
820
1066
|
]
|
|
821
1067
|
},
|
|
@@ -825,24 +1071,32 @@
|
|
|
825
1071
|
"title": "b2c-slas-auth-patterns",
|
|
826
1072
|
"description": "Implement SLAS authentication patterns in B2C Commerce including passwordless login (email OTP, SMS OTP, passkeys), session bridging between PWA Kit/Storefront Next and SFRA, hybrid authentication (B2C 25.3+), token refresh flows, trusted system on behalf of (TSOB), and JWT validation. Use this skill whenever the user asks about shopper authentication beyond basic login, token exchange flows, passwordless or biometric auth, keeping sessions alive across storefronts, handling 409 Conflict errors on token endpoints, refreshing shopper tokens, or validating JWTs — even if they don't mention SLAS by name.",
|
|
827
1073
|
"entrypoint": "SKILL.md",
|
|
1074
|
+
"frontmatter": {
|
|
1075
|
+
"name": "b2c-slas-auth-patterns",
|
|
1076
|
+
"description": "Implement SLAS authentication patterns in B2C Commerce including passwordless login (email OTP, SMS OTP, passkeys), session bridging between PWA Kit/Storefront Next and SFRA, hybrid authentication (B2C 25.3+), token refresh flows, trusted system on behalf of (TSOB), and JWT validation. Use this skill whenever the user asks about shopper authentication beyond basic login, token exchange flows, passwordless or biometric auth, keeping sessions alive across storefronts, handling 409 Conflict errors on token endpoints, refreshing shopper tokens, or validating JWTs — even if they don't mention SLAS by name."
|
|
1077
|
+
},
|
|
828
1078
|
"source": "skills/b2c/skills/b2c-slas-auth-patterns/SKILL.md",
|
|
829
1079
|
"headings": "Passkeys (FIDO2/WebAuthn) | Registration Flow (3 Steps) | Authentication Flow | Session Bridge Reference | Token Types | PWA Kit to SFRA | Step 1: Generate Bridge Tokens | Step 2: Redirect with Tokens | Step 3: SFRA Establishes Session | SFRA to PWA Kit | Step 1: Generate Bridge Tokens in SFRA | Step 2: Redirect to PWA Kit | Step 3: PWA Kit Handles Callback | Hybrid Navigation Component | Error Handling | Security Considerations | Testing | Token Lifecycle Reference | Token Types and Expiry | Access Token Lifecycle | Best Practices for Access Tokens | Refresh Token Patterns | Public Client (Single-Use) | Private Client (Reusable) | Token Rotation Strategy | Public Clients - Handle Race Conditions | Storage Strategies | Session Timeout Handling | Proactive Refresh | Activity-Based Extension | Guest to Registered Transition | Logout and Token Revocation | Error Handling Reference | Debugging Token Issues | B2C SLAS Authentication Patterns | Scope & grounding | Canonical docs | Authentication Methods Overview | Passwordless Email OTP | Flow Overview | Step 1: Initiate Passwordless Login | Step 2: Handle Callback and Send OTP | Step 3: Exchange OTP for Tokens | Rate Limits | Passwordless SMS OTP | Using Marketing Cloud | Custom SMS Provider | Passkeys (FIDO2/WebAuthn) | Session Bridge | Hybrid Authentication (B2C 25.3+) | Benefits | Migration from Plugin SLAS | Token Refresh | Public Clients (Single-Use Refresh) | Private Clients (Reusable Refresh) | Trusted System on Behalf (TSOB) | Use Cases | Get Token on Behalf of Shopper | Important Constraints | Required Configuration | JWT Validation | Get JWKS | Validate Token | Token Claims | Best Practices | Security | Token Management | User Experience | Detailed References",
|
|
830
1080
|
"files": [
|
|
831
1081
|
{
|
|
832
1082
|
"path": "references/PASSKEYS.md",
|
|
833
|
-
"bytes": 4525
|
|
1083
|
+
"bytes": 4525,
|
|
1084
|
+
"digest": "sha256:5db9c6ec4cdaf104abd27d719ce571fe4bd5625d3d2bc042aaff5dd164768ca2"
|
|
834
1085
|
},
|
|
835
1086
|
{
|
|
836
1087
|
"path": "references/SESSION-BRIDGE.md",
|
|
837
|
-
"bytes": 7808
|
|
1088
|
+
"bytes": 7808,
|
|
1089
|
+
"digest": "sha256:bc87a942ac18354c1bef45061e0f69710f6277e7067ab3a910f434955efa1593"
|
|
838
1090
|
},
|
|
839
1091
|
{
|
|
840
1092
|
"path": "references/TOKEN-LIFECYCLE.md",
|
|
841
|
-
"bytes": 9793
|
|
1093
|
+
"bytes": 9793,
|
|
1094
|
+
"digest": "sha256:c4b633234099d93ceeae2bab3eefdf5e06334d57ae1f21fd90751969239e79f2"
|
|
842
1095
|
},
|
|
843
1096
|
{
|
|
844
1097
|
"path": "SKILL.md",
|
|
845
|
-
"bytes": 15862
|
|
1098
|
+
"bytes": 15862,
|
|
1099
|
+
"digest": "sha256:21b7df8c751c60828c76097d2f5de2f45c5a791dc9e9bfb25524278e2ec3d2ec"
|
|
846
1100
|
}
|
|
847
1101
|
]
|
|
848
1102
|
},
|
|
@@ -852,28 +1106,37 @@
|
|
|
852
1106
|
"title": "b2c-webservices",
|
|
853
1107
|
"description": "Implement web service integrations in B2C Commerce using LocalServiceRegistry. Use this skill whenever the user needs to call external REST or SOAP APIs from a cartridge, configure service credentials and profiles in services.xml, handle HTTP requests with createRequest/parseResponse callbacks, set up FTP or SFTP file transfers, or troubleshoot circuit breaker errors. Also use when connecting to payment gateways, shipping providers, or third-party services -- even if they just say 'call an external API from my controller' or 'my service keeps timing out'.",
|
|
854
1108
|
"entrypoint": "SKILL.md",
|
|
1109
|
+
"frontmatter": {
|
|
1110
|
+
"name": "b2c-webservices",
|
|
1111
|
+
"description": "Implement web service integrations in B2C Commerce using LocalServiceRegistry. Use this skill whenever the user needs to call external REST or SOAP APIs from a cartridge, configure service credentials and profiles in services.xml, handle HTTP requests with createRequest/parseResponse callbacks, set up FTP or SFTP file transfers, or troubleshoot circuit breaker errors. Also use when connecting to payment gateways, shipping providers, or third-party services -- even if they just say 'call an external API from my controller' or 'my service keeps timing out'."
|
|
1112
|
+
},
|
|
855
1113
|
"source": "skills/b2c/skills/b2c-webservices/SKILL.md",
|
|
856
1114
|
"headings": "FTP/SFTP Services Reference | FTPService Methods | Configuration Styles | Style 1: setOperation (Simple) | Style 2: execute (Advanced) | SFTP Operations | List Directory | Download File | Download to String | Download to Local File | Upload File | Upload String Content | Upload Local File | Delete File | Create Directory | Move/Rename File | Complex Multi-Operation Example | Keep Connection Open | SFTP Key Authentication | File Info | Mock FTP Operations | FTP (Legacy) | HTTP Services Reference | HTTPService Methods | HTTPClient Properties (in parseResponse) | REST API Examples | GET Request | POST with JSON Body | PUT Request | DELETE Request | GET with Query Parameters | Authentication Patterns | Basic Authentication | Bearer Token (OAuth) | API Key Authentication | OAuth 2.0 Client Credentials Flow | Form Submissions (HTTPForm) | Multipart Form Data | Downloading Files | Response Caching | Custom HTTP Client Configuration | Mutual TLS (mTLS) | XML API Example | Error Response Handling | Services XML Import/Export Reference | XSD Schema Reference | XML Namespace | XML Structure | Service Credential | Credential Elements | Password Encryption | Credential with Custom Attributes | Service Profile | Profile Elements | Profile Examples | Service | Service Elements | Service Types | Complete Example | Delete Mode | Import via CLI | Export via Business Manager | Best Practices | SOAP Services Reference | SOAPService Methods | SOAP Service Setup | 1. Upload WSDL | 2. Generate Stub | 3. Create Service Configuration | Basic SOAP Service | Alternative: Set Client in createRequest | WS-Security | WSUtil Methods | WS-Security with Timestamps | Custom SOAP Headers | Handling Complex Types | Error Handling | Mock SOAP Services | Multiple Operations | Setting SOAP Endpoint | MTOM/Attachments | Web Services Skill | Overview | Service Types | Service Framework Components | Business Manager Configuration | Script Components | Basic Pattern | Service Callbacks | Result Object | Unavailable Reasons | Error Handling | Log Filtering | Mocking Services | Service Configuration in Business Manager | Creating a Service | Service Profile Settings | Service Credential Settings | Detailed References | Script API Classes",
|
|
857
1115
|
"files": [
|
|
858
1116
|
{
|
|
859
1117
|
"path": "references/FTP-SERVICES.md",
|
|
860
|
-
"bytes": 12987
|
|
1118
|
+
"bytes": 12987,
|
|
1119
|
+
"digest": "sha256:d3111c6f13f61e103f7270acb204e7d626e4fe248558417fdd5124f5754d5e75"
|
|
861
1120
|
},
|
|
862
1121
|
{
|
|
863
1122
|
"path": "references/HTTP-SERVICES.md",
|
|
864
|
-
"bytes": 14908
|
|
1123
|
+
"bytes": 14908,
|
|
1124
|
+
"digest": "sha256:b316510bd7eaa1442867c5d3af5eeb6aa1ab6fe822454afea3e55471fb262a7f"
|
|
865
1125
|
},
|
|
866
1126
|
{
|
|
867
1127
|
"path": "references/SERVICES-XML.md",
|
|
868
|
-
"bytes": 10962
|
|
1128
|
+
"bytes": 10962,
|
|
1129
|
+
"digest": "sha256:56957d8b4c2a3cd837916f38837dda93b5240a5862699aacceed408a0cfb335d"
|
|
869
1130
|
},
|
|
870
1131
|
{
|
|
871
1132
|
"path": "references/SOAP-SERVICES.md",
|
|
872
|
-
"bytes": 17847
|
|
1133
|
+
"bytes": 17847,
|
|
1134
|
+
"digest": "sha256:fe60cd3cfa790793f7ff7329762fcaebdf0d56dbaf38879a0b13b39de9e0f1e3"
|
|
873
1135
|
},
|
|
874
1136
|
{
|
|
875
1137
|
"path": "SKILL.md",
|
|
876
|
-
"bytes": 10289
|
|
1138
|
+
"bytes": 10289,
|
|
1139
|
+
"digest": "sha256:bc74d850f4d2f97cfd69d00e52f4c18142f8882ff3ba7e81763ef54fdc14ee6c"
|
|
877
1140
|
}
|
|
878
1141
|
]
|
|
879
1142
|
},
|
|
@@ -883,12 +1146,17 @@
|
|
|
883
1146
|
"title": "b2c-checkout-triage",
|
|
884
1147
|
"description": "Investigate B2C Commerce checkout or payment failures, increased failed orders, or falling order volume. Compare bounded order evidence, integration logs and affected data; separate payment failures from traffic and reporting gaps.",
|
|
885
1148
|
"entrypoint": "SKILL.md",
|
|
1149
|
+
"frontmatter": {
|
|
1150
|
+
"name": "b2c-checkout-triage",
|
|
1151
|
+
"description": "Investigate B2C Commerce checkout or payment failures, increased failed orders, or falling order volume. Compare bounded order evidence, integration logs and affected data; separate payment failures from traffic and reporting gaps."
|
|
1152
|
+
},
|
|
886
1153
|
"source": "skills/b2c-ops/skills/b2c-checkout-triage/SKILL.md",
|
|
887
1154
|
"headings": "Checkout and payment triage | Scope and impact | Access and tools | Checks and decisions | Mitigation and recovery | Escalation and handoff",
|
|
888
1155
|
"files": [
|
|
889
1156
|
{
|
|
890
1157
|
"path": "SKILL.md",
|
|
891
|
-
"bytes":
|
|
1158
|
+
"bytes": 5342,
|
|
1159
|
+
"digest": "sha256:b89cb4497f5da00a633c2ecd2eb518c5b1f86adc3bfd88b17cab01577624b542"
|
|
892
1160
|
}
|
|
893
1161
|
]
|
|
894
1162
|
},
|
|
@@ -898,16 +1166,22 @@
|
|
|
898
1166
|
"title": "b2c-job-health",
|
|
899
1167
|
"description": "Review B2C Commerce scheduled jobs during routine operations or investigate failed jobs, missing runs, stale imports, and green executions with incomplete results. Check logs and business data before proposing a rerun.",
|
|
900
1168
|
"entrypoint": "SKILL.md",
|
|
1169
|
+
"frontmatter": {
|
|
1170
|
+
"name": "b2c-job-health",
|
|
1171
|
+
"description": "Review B2C Commerce scheduled jobs during routine operations or investigate failed jobs, missing runs, stale imports, and green executions with incomplete results. Check logs and business data before proposing a rerun."
|
|
1172
|
+
},
|
|
901
1173
|
"source": "skills/b2c-ops/skills/b2c-job-health/SKILL.md",
|
|
902
1174
|
"headings": "Job execution logs | Job health | Scope and impact | Access and tools | Checks and decisions | Mitigation and recovery | Escalation and handoff",
|
|
903
1175
|
"files": [
|
|
904
1176
|
{
|
|
905
1177
|
"path": "references/job-logs.md",
|
|
906
|
-
"bytes": 1263
|
|
1178
|
+
"bytes": 1263,
|
|
1179
|
+
"digest": "sha256:02f547f12826fe7319f8c042e9b547b49edf06e554163e8e439e0ccb4703443f"
|
|
907
1180
|
},
|
|
908
1181
|
{
|
|
909
1182
|
"path": "SKILL.md",
|
|
910
|
-
"bytes":
|
|
1183
|
+
"bytes": 4877,
|
|
1184
|
+
"digest": "sha256:4db9a548adf76c86e0385231ece99a7c6cee5ce5547aef16007269cb58f86459"
|
|
911
1185
|
}
|
|
912
1186
|
]
|
|
913
1187
|
},
|
|
@@ -917,16 +1191,22 @@
|
|
|
917
1191
|
"title": "b2c-order-failure-triage",
|
|
918
1192
|
"description": "Find and investigate FAILED B2C Commerce orders, quantify their share of indexed orders, and correlate failed inputs with logs and jobs. Covers SCAPI status-filter limitations and the OCAPI Shop order_search fallback.",
|
|
919
1193
|
"entrypoint": "SKILL.md",
|
|
1194
|
+
"frontmatter": {
|
|
1195
|
+
"name": "b2c-order-failure-triage",
|
|
1196
|
+
"description": "Find and investigate FAILED B2C Commerce orders, quantify their share of indexed orders, and correlate failed inputs with logs and jobs. Covers SCAPI status-filter limitations and the OCAPI Shop order_search fallback."
|
|
1197
|
+
},
|
|
920
1198
|
"source": "skills/b2c-ops/skills/b2c-order-failure-triage/SKILL.md",
|
|
921
1199
|
"headings": "Failed-order search recipe | Choose a supported surface | Access and execution | Bounded query recipe | Errors and interpretation | Failed-order triage | Scope and impact | Access and tools | Checks and decisions | Mitigation and recovery | Escalation and handoff",
|
|
922
1200
|
"files": [
|
|
923
1201
|
{
|
|
924
1202
|
"path": "references/order-evidence.md",
|
|
925
|
-
"bytes":
|
|
1203
|
+
"bytes": 4101,
|
|
1204
|
+
"digest": "sha256:f4243f4eeceaf7a716d54899e14eb4c8bc1d664acfb8bad2ef026a7763fecfd8"
|
|
926
1205
|
},
|
|
927
1206
|
{
|
|
928
1207
|
"path": "SKILL.md",
|
|
929
|
-
"bytes":
|
|
1208
|
+
"bytes": 5273,
|
|
1209
|
+
"digest": "sha256:26bec20c884e9bd51830ee53c7a1fb0d6942789aa1c199fa391d912b11f2aaff"
|
|
930
1210
|
}
|
|
931
1211
|
]
|
|
932
1212
|
},
|
|
@@ -936,142 +1216,202 @@
|
|
|
936
1216
|
"title": "b2c-production-triage",
|
|
937
1217
|
"description": "Investigate B2C Commerce incidents using B2C MCP logs, SCAPI code-mode job/data reads, and CLI fallbacks. Route error spikes, stale data, or checkout failures to focused runbooks and produce a team or Support handoff.",
|
|
938
1218
|
"entrypoint": "SKILL.md",
|
|
1219
|
+
"frontmatter": {
|
|
1220
|
+
"name": "b2c-production-triage",
|
|
1221
|
+
"description": "Investigate B2C Commerce incidents using B2C MCP logs, SCAPI code-mode job/data reads, and CLI fallbacks. Route error spikes, stale data, or checkout failures to focused runbooks and produce a team or Support handoff."
|
|
1222
|
+
},
|
|
939
1223
|
"source": "skills/b2c-ops/skills/b2c-production-triage/SKILL.md",
|
|
940
1224
|
"headings": "Escalation and support cases | Select the owner | Case or handoff draft | Official platform guidance | Production triage | Scope and impact | Access and tools | Checks and decisions | Mitigation and recovery | Escalation and handoff",
|
|
941
1225
|
"files": [
|
|
942
1226
|
{
|
|
943
1227
|
"path": "references/escalation.md",
|
|
944
|
-
"bytes": 5594
|
|
1228
|
+
"bytes": 5594,
|
|
1229
|
+
"digest": "sha256:819e7f10cebee20d0d633118f3afbb0acb92edce460c8ade1f5a32fbf4ca0c1b"
|
|
945
1230
|
},
|
|
946
1231
|
{
|
|
947
1232
|
"path": "SKILL.md",
|
|
948
|
-
"bytes":
|
|
1233
|
+
"bytes": 7654,
|
|
1234
|
+
"digest": "sha256:f2dd75959557d4e611989637cbb09783f8b4095a788152a09cb6074b420e8450"
|
|
949
1235
|
}
|
|
950
1236
|
]
|
|
951
1237
|
},
|
|
952
1238
|
{
|
|
953
|
-
"id": "storefront-next/sfnext-
|
|
1239
|
+
"id": "storefront-next/sfnext-accessibility",
|
|
954
1240
|
"collection": "storefront-next",
|
|
955
|
-
"title": "sfnext-
|
|
956
|
-
"description": "
|
|
1241
|
+
"title": "sfnext-accessibility",
|
|
1242
|
+
"description": "Build and fix accessible UI in a Storefront Next storefront (WCAG 2.1 AA): jsx-a11y lint findings, missing accessible names and labels, form error association, dialog focus management, aria-live status messages, keyboard behavior, color contrast, and verifying fixes with Storybook a11y/play() tests and the e2e axe scan with its baseline. Use for \"accessibility\", \"a11y\", \"WCAG\", \"screen reader\", \"aria-label\", \"focus trap\", \"axe violation\", pnpm lint:a11y, pnpm a11y, a11y-baseline.json, skip-a11y, STORYBOOK_A11Y_TEST_MODE, or an accessibility audit finding to fix. Do not use for general lint/typecheck gates (use `storefront-next:sfnext-quality-gates`), writing non-accessibility tests (use `storefront-next:sfnext-testing`), or color/token design (use `storefront-next:sfnext-theming`).",
|
|
957
1243
|
"entrypoint": "SKILL.md",
|
|
958
|
-
"
|
|
959
|
-
|
|
1244
|
+
"frontmatter": {
|
|
1245
|
+
"name": "sfnext-accessibility",
|
|
1246
|
+
"description": "Build and fix accessible UI in a Storefront Next storefront (WCAG 2.1 AA): jsx-a11y lint findings, missing accessible names and labels, form error association, dialog focus management, aria-live status messages, keyboard behavior, color contrast, and verifying fixes with Storybook a11y/play() tests and the e2e axe scan with its baseline. Use for \"accessibility\", \"a11y\", \"WCAG\", \"screen reader\", \"aria-label\", \"focus trap\", \"axe violation\", pnpm lint:a11y, pnpm a11y, a11y-baseline.json, skip-a11y, STORYBOOK_A11Y_TEST_MODE, or an accessibility audit finding to fix. Do not use for general lint/typecheck gates (use `storefront-next:sfnext-quality-gates`), writing non-accessibility tests (use `storefront-next:sfnext-testing`), or color/token design (use `storefront-next:sfnext-theming`)."
|
|
1247
|
+
},
|
|
1248
|
+
"source": "skills/storefront-next/skills/sfnext-accessibility/SKILL.md",
|
|
1249
|
+
"headings": "Accessibility checklists | Classify a finding | States to exercise | Keyboard pass (per page or component) | Forms | Images and media | Content and structure | Where to run what | Storefront Next Accessibility | Author accessibly by default | Fix the right layer | Reproduce, fix, confirm | Storybook: a11y addon and play() assertions | e2e axe scan and baseline | Translated text | Related Skills",
|
|
960
1250
|
"files": [
|
|
1251
|
+
{
|
|
1252
|
+
"path": "references/checklist.md",
|
|
1253
|
+
"bytes": 3350,
|
|
1254
|
+
"digest": "sha256:aa6b37d77fd6cdf0eae9b2c6640e160d05c0d5467c4735200104cb91334625ff"
|
|
1255
|
+
},
|
|
961
1256
|
{
|
|
962
1257
|
"path": "SKILL.md",
|
|
963
|
-
"bytes":
|
|
1258
|
+
"bytes": 8319,
|
|
1259
|
+
"digest": "sha256:98b843b955571fd76a6e6b848af9191096607785d25d3d3bba529624f345800b"
|
|
964
1260
|
}
|
|
965
1261
|
]
|
|
966
1262
|
},
|
|
967
1263
|
{
|
|
968
|
-
"id": "storefront-next/sfnext-
|
|
1264
|
+
"id": "storefront-next/sfnext-analytics-consent",
|
|
969
1265
|
"collection": "storefront-next",
|
|
970
|
-
"title": "sfnext-
|
|
971
|
-
"description": "
|
|
1266
|
+
"title": "sfnext-analytics-consent",
|
|
1267
|
+
"description": "Storefront Next analytics: engagement adapters (Einstein, Active Data, Data 360), adding a custom adapter, tracking consent gating, PageViewTracker, useAnalytics events, and first-touch attribution (dw_attribution). Use when configuring engagement.adapters in config.server.ts, writing an adapter with hasConsent, registering it in initializeEngagementAdapters, wiring the consent banner (trackingConsent, consentCategories, dw_dnt), firing trackViewProduct/trackCartItemAdd events, debugging why no analytics events are sent, or passing campaign attribution to orders. Do not use for general config loading or env vars (use `storefront-next:sfnext-configuration`), CSP/script allowlisting of third-party tags (use `storefront-next:sfnext-security`), or SEO meta/JSON-LD (use `storefront-next:sfnext-seo`).",
|
|
972
1268
|
"entrypoint": "SKILL.md",
|
|
973
|
-
"
|
|
974
|
-
|
|
1269
|
+
"frontmatter": {
|
|
1270
|
+
"name": "sfnext-analytics-consent",
|
|
1271
|
+
"description": "Storefront Next analytics: engagement adapters (Einstein, Active Data, Data 360), adding a custom adapter, tracking consent gating, PageViewTracker, useAnalytics events, and first-touch attribution (dw_attribution). Use when configuring engagement.adapters in config.server.ts, writing an adapter with hasConsent, registering it in initializeEngagementAdapters, wiring the consent banner (trackingConsent, consentCategories, dw_dnt), firing trackViewProduct/trackCartItemAdd events, debugging why no analytics events are sent, or passing campaign attribution to orders. Do not use for general config loading or env vars (use `storefront-next:sfnext-configuration`), CSP/script allowlisting of third-party tags (use `storefront-next:sfnext-security`), or SEO meta/JSON-LD (use `storefront-next:sfnext-seo`)."
|
|
1272
|
+
},
|
|
1273
|
+
"source": "skills/storefront-next/skills/sfnext-analytics-consent/SKILL.md",
|
|
1274
|
+
"headings": "Writing a custom engagement adapter | 1. Implement | 2. Register | 3. Configure | 4. Allow the endpoint in CSP | 5. Test | Storefront Next Analytics and Consent | Where things live | Configure built-in adapters | Fire events | Consent | Add a custom adapter | Attribution | Troubleshooting | Related Skills",
|
|
975
1275
|
"files": [
|
|
1276
|
+
{
|
|
1277
|
+
"path": "references/CUSTOM-ADAPTER.md",
|
|
1278
|
+
"bytes": 1960,
|
|
1279
|
+
"digest": "sha256:04e693a952002bc0f4e0e715dda994a3202bf15034b6fccfbc268bd2f467372c"
|
|
1280
|
+
},
|
|
976
1281
|
{
|
|
977
1282
|
"path": "SKILL.md",
|
|
978
|
-
"bytes":
|
|
1283
|
+
"bytes": 6373,
|
|
1284
|
+
"digest": "sha256:8cb5f6ce591e95361bda4b889eec1b82d5c0a526fb03cc4b7eab5be7504abbe3"
|
|
979
1285
|
}
|
|
980
1286
|
]
|
|
981
1287
|
},
|
|
982
1288
|
{
|
|
983
|
-
"id": "storefront-next/sfnext-
|
|
1289
|
+
"id": "storefront-next/sfnext-authentication",
|
|
984
1290
|
"collection": "storefront-next",
|
|
985
|
-
"title": "sfnext-
|
|
986
|
-
"description": "
|
|
1291
|
+
"title": "sfnext-authentication",
|
|
1292
|
+
"description": "Work with Storefront Next's server-only authentication and session architecture (SLAS guest/registered tokens, httpOnly cookies, auth.server.ts middleware). Use for getAuth, useAuth, updateAuth, destroyAuth, protecting account routes, login/logout actions, guest-to-registered basket/wishlist merge, \"session expired\" redirects, 401 recovery loops, cc-at/cc-nx/usid/dwsid cookies, cookie names or expiry, passwordless login, social login, OTP email verification, passkeys, guest order lookup, or refresh-token lifetime settings. Do not use for Turnstile, CSP headers or cookie-domain config (use `storefront-next:sfnext-security`), calling SCAPI clients (use `storefront-next:sfnext-scapi`), or sharing sessions with SFRA (use `storefront-next:sfnext-hybrid-storefronts`).",
|
|
987
1293
|
"entrypoint": "SKILL.md",
|
|
988
|
-
"
|
|
989
|
-
|
|
1294
|
+
"frontmatter": {
|
|
1295
|
+
"name": "sfnext-authentication",
|
|
1296
|
+
"description": "Work with Storefront Next's server-only authentication and session architecture (SLAS guest/registered tokens, httpOnly cookies, auth.server.ts middleware). Use for getAuth, useAuth, updateAuth, destroyAuth, protecting account routes, login/logout actions, guest-to-registered basket/wishlist merge, \"session expired\" redirects, 401 recovery loops, cc-at/cc-nx/usid/dwsid cookies, cookie names or expiry, passwordless login, social login, OTP email verification, passkeys, guest order lookup, or refresh-token lifetime settings. Do not use for Turnstile, CSP headers or cookie-domain config (use `storefront-next:sfnext-security`), calling SCAPI clients (use `storefront-next:sfnext-scapi`), or sharing sessions with SFRA (use `storefront-next:sfnext-hybrid-storefronts`)."
|
|
1297
|
+
},
|
|
1298
|
+
"source": "skills/storefront-next/skills/sfnext-authentication/SKILL.md",
|
|
1299
|
+
"headings": "Storefront Next Auth Cookies | Rules | Debugging checklist | Login Flows | Passwordless (magic link) and OTP | Email delivery (email cartridge) | Social login | Passkeys | Guest order lookup | Bot protection on login | Storefront Next Authentication | Request flow | Read auth on the server | Read auth in components | Protect a route | Log in and out | Guest to registered merge | Common SCAPI calls for account data | Configuration | Pitfalls | References | Related Skills",
|
|
990
1300
|
"files": [
|
|
1301
|
+
{
|
|
1302
|
+
"path": "references/COOKIES.md",
|
|
1303
|
+
"bytes": 4608,
|
|
1304
|
+
"digest": "sha256:b011903a96093ab63e11858e458b945a91084f237e80e1553fa41ceb1cbb04b8"
|
|
1305
|
+
},
|
|
1306
|
+
{
|
|
1307
|
+
"path": "references/LOGIN-FLOWS.md",
|
|
1308
|
+
"bytes": 5797,
|
|
1309
|
+
"digest": "sha256:0153b606a185ea0e54e36896d8db078baff4e1521740d209a0fd1479ddfd60af"
|
|
1310
|
+
},
|
|
991
1311
|
{
|
|
992
1312
|
"path": "SKILL.md",
|
|
993
|
-
"bytes":
|
|
1313
|
+
"bytes": 8282,
|
|
1314
|
+
"digest": "sha256:9fbf8bfc243dad5e41589b8195f95aa7584387ae0923e988c963a77e6ab76792"
|
|
994
1315
|
}
|
|
995
1316
|
]
|
|
996
1317
|
},
|
|
997
1318
|
{
|
|
998
|
-
"id": "storefront-next/sfnext-
|
|
1319
|
+
"id": "storefront-next/sfnext-commerce-features",
|
|
999
1320
|
"collection": "storefront-next",
|
|
1000
|
-
"title": "sfnext-
|
|
1001
|
-
"description": "
|
|
1321
|
+
"title": "sfnext-commerce-features",
|
|
1322
|
+
"description": "Catalogue and router for optional Storefront Next commerce features: Shopper Context (qualifiers, source codes), Order Management returns/cancel/tracking (SOM/OMS), delivery estimates, feature stubs (@feature-stub), guest order lookup, the app_storefrontnext_base email cartridge, and the shipped extensions (bnpl, bopis, multiship, store-locator, ratings-reviews, customer-preferences, product-content, shipping-delivery, theme-switcher). For each: which flag, SLAS scope, Business Manager setting, cartridge, or extension registry entry it needs, and which in-project doc to read. Use when asked how to enable a feature, why a feature does not render, what prerequisites a feature has, or which stubs are mock data. Do not use for building a new extension (use `storefront-next:sfnext-extensions`), config loading (use `storefront-next:sfnext-configuration`), or SLAS login flows (use `storefront-next:sfnext-authentication`).",
|
|
1002
1323
|
"entrypoint": "SKILL.md",
|
|
1003
|
-
"
|
|
1004
|
-
|
|
1324
|
+
"frontmatter": {
|
|
1325
|
+
"name": "sfnext-commerce-features",
|
|
1326
|
+
"description": "Catalogue and router for optional Storefront Next commerce features: Shopper Context (qualifiers, source codes), Order Management returns/cancel/tracking (SOM/OMS), delivery estimates, feature stubs (@feature-stub), guest order lookup, the app_storefrontnext_base email cartridge, and the shipped extensions (bnpl, bopis, multiship, store-locator, ratings-reviews, customer-preferences, product-content, shipping-delivery, theme-switcher). For each: which flag, SLAS scope, Business Manager setting, cartridge, or extension registry entry it needs, and which in-project doc to read. Use when asked how to enable a feature, why a feature does not render, what prerequisites a feature has, or which stubs are mock data. Do not use for building a new extension (use `storefront-next:sfnext-extensions`), config loading (use `storefront-next:sfnext-configuration`), or SLAS login flows (use `storefront-next:sfnext-authentication`)."
|
|
1327
|
+
},
|
|
1328
|
+
"source": "skills/storefront-next/skills/sfnext-commerce-features/SKILL.md",
|
|
1329
|
+
"headings": "Feature prerequisites checklist | Shopper Context | Order Management | Delivery estimates | Guest order lookup | Email cartridge | Extensions | Storefront Next Commerce Features | Feature table | Extensions shipped in src/extensions | Feature stubs | Decision flow when \"the feature is not showing\" | Related Skills",
|
|
1005
1330
|
"files": [
|
|
1006
1331
|
{
|
|
1007
|
-
"path": "references/
|
|
1008
|
-
"bytes":
|
|
1009
|
-
|
|
1010
|
-
{
|
|
1011
|
-
"path": "references/PROJECT-STRUCTURE.md",
|
|
1012
|
-
"bytes": 1652
|
|
1013
|
-
},
|
|
1014
|
-
{
|
|
1015
|
-
"path": "references/TOKEN-SYSTEM.md",
|
|
1016
|
-
"bytes": 5525
|
|
1017
|
-
},
|
|
1018
|
-
{
|
|
1019
|
-
"path": "references/TROUBLESHOOTING.md",
|
|
1020
|
-
"bytes": 1914
|
|
1332
|
+
"path": "references/FEATURE-PREREQUISITES.md",
|
|
1333
|
+
"bytes": 2570,
|
|
1334
|
+
"digest": "sha256:61afb36aae23d6700342df9132e76ceae85f379d5e5b00d5d2830fcfe72a7312"
|
|
1021
1335
|
},
|
|
1022
1336
|
{
|
|
1023
1337
|
"path": "SKILL.md",
|
|
1024
|
-
"bytes":
|
|
1338
|
+
"bytes": 6212,
|
|
1339
|
+
"digest": "sha256:913d331d0d9b9c7ae05b2b09de66f0b3981bce54a8d573359f9ffb8beb4735f4"
|
|
1025
1340
|
}
|
|
1026
1341
|
]
|
|
1027
1342
|
},
|
|
1028
1343
|
{
|
|
1029
|
-
"id": "storefront-next/sfnext-
|
|
1344
|
+
"id": "storefront-next/sfnext-components",
|
|
1030
1345
|
"collection": "storefront-next",
|
|
1031
|
-
"title": "sfnext-
|
|
1032
|
-
"description": "
|
|
1346
|
+
"title": "sfnext-components",
|
|
1347
|
+
"description": "Build and modify UI components in a Storefront Next storefront: page components with Suspense and use()/Await, createPage and withSuspense, Tailwind v4 token classes, shape tokens (rounded-ui, shadow-ui, border-ui), shadcn/ui primitives in src/components/ui (sync-shadcn), CVA variants, data-slot, DynamicImage, lazy-loaded overlays, and Storybook stories with snapshot tests. Use when creating or editing a component in src/components, adding a shadcn primitive, fixing styling that ignores the theme, writing a *.stories.tsx file, or running pnpm storybook:test. Do not use for re-branding colors, fonts, or logos (use `storefront-next:sfnext-theming`), route loaders (use `storefront-next:sfnext-data-fetching`), or Page Designer registration (use `storefront-next:sfnext-page-designer`).",
|
|
1033
1348
|
"entrypoint": "SKILL.md",
|
|
1034
|
-
"
|
|
1035
|
-
|
|
1349
|
+
"frontmatter": {
|
|
1350
|
+
"name": "sfnext-components",
|
|
1351
|
+
"description": "Build and modify UI components in a Storefront Next storefront: page components with Suspense and use()/Await, createPage and withSuspense, Tailwind v4 token classes, shape tokens (rounded-ui, shadow-ui, border-ui), shadcn/ui primitives in src/components/ui (sync-shadcn), CVA variants, data-slot, DynamicImage, lazy-loaded overlays, and Storybook stories with snapshot tests. Use when creating or editing a component in src/components, adding a shadcn primitive, fixing styling that ignores the theme, writing a *.stories.tsx file, or running pnpm storybook:test. Do not use for re-branding colors, fonts, or logos (use `storefront-next:sfnext-theming`), route loaders (use `storefront-next:sfnext-data-fetching`), or Page Designer registration (use `storefront-next:sfnext-page-designer`)."
|
|
1352
|
+
},
|
|
1353
|
+
"source": "skills/storefront-next/skills/sfnext-components/SKILL.md",
|
|
1354
|
+
"headings": "Component Authoring | Workflow | Composite example | Rules of thumb | Editing a shadcn primitive | CSS component class, utility, or React component? | Decorative icons from CSS | Accessibility checklist | Page Designer | Shape Tokens | The bridge-variable trap | Overrides | Don't | Stories and Storybook Checks | Layout | Minimal story | Titles | Writing good stories | Commands | Token System | How a token becomes a class | Token files (`src/theme/tokens/`) | Class cheat sheet | Hard-coded colors | Dark mode | Troubleshooting | Storefront Next Components | Before you create anything | Styling rules | Shape tokens (read before touching Card, Button, Input, Dialog) | Page components and Suspense | Links, navigation, text | Images | Overlays | shadcn primitives | Stories and verification | More detail | Related Skills",
|
|
1036
1355
|
"files": [
|
|
1037
1356
|
{
|
|
1038
1357
|
"path": "references/COMPONENT-AUTHORING.md",
|
|
1039
|
-
"bytes":
|
|
1358
|
+
"bytes": 6110,
|
|
1359
|
+
"digest": "sha256:4fd83664c1939c6f08067c6fafa1d619759a29ae2700554432815b0cd2a17195"
|
|
1040
1360
|
},
|
|
1041
1361
|
{
|
|
1042
|
-
"path": "references/
|
|
1043
|
-
"bytes":
|
|
1362
|
+
"path": "references/SHAPE-TOKENS.md",
|
|
1363
|
+
"bytes": 2758,
|
|
1364
|
+
"digest": "sha256:da4b67e11ece78c764b7a18b70bc85a8811f7e5bb5def38770dab8789b5c42a4"
|
|
1365
|
+
},
|
|
1366
|
+
{
|
|
1367
|
+
"path": "references/STORYBOOK.md",
|
|
1368
|
+
"bytes": 2807,
|
|
1369
|
+
"digest": "sha256:9bb205c5cf1fea0af8ed2e5f94e6faa6021842dcc8a40b11542afbded29678af"
|
|
1044
1370
|
},
|
|
1045
1371
|
{
|
|
1046
1372
|
"path": "references/TOKEN-SYSTEM.md",
|
|
1047
|
-
"bytes":
|
|
1373
|
+
"bytes": 4101,
|
|
1374
|
+
"digest": "sha256:83357235dc2616be76f41b33028cebd9f6efa98fe7120f8a2ea9c36462ce32de"
|
|
1048
1375
|
},
|
|
1049
1376
|
{
|
|
1050
1377
|
"path": "references/TROUBLESHOOTING.md",
|
|
1051
|
-
"bytes":
|
|
1378
|
+
"bytes": 2141,
|
|
1379
|
+
"digest": "sha256:9576d9b2bbc5750293acb264c0c5335b6460c6e6f23ede6e1748a18420b06519"
|
|
1052
1380
|
},
|
|
1053
1381
|
{
|
|
1054
1382
|
"path": "SKILL.md",
|
|
1055
|
-
"bytes":
|
|
1383
|
+
"bytes": 10294,
|
|
1384
|
+
"digest": "sha256:3e0cd247f46eeb9775718457806b44b54c4dfde9a41ef82bbbcc86fe00796bcd"
|
|
1056
1385
|
}
|
|
1057
1386
|
]
|
|
1058
1387
|
},
|
|
1059
1388
|
{
|
|
1060
|
-
"id": "storefront-next/sfnext-
|
|
1389
|
+
"id": "storefront-next/sfnext-configuration",
|
|
1061
1390
|
"collection": "storefront-next",
|
|
1062
|
-
"title": "sfnext-
|
|
1063
|
-
"description": "
|
|
1391
|
+
"title": "sfnext-configuration",
|
|
1392
|
+
"description": "Configure a Storefront Next app: config.server.ts (defineConfig, metadata/runtime/app), AppConfig types in src/types/config.ts, PUBLIC__ environment variable overrides, getConfig(context) / useConfig(), extension config (app.extension, app.serverExtension), protected paths, server-only secrets, and multi-site settings (commerce.sites, url.prefix, seoRoutes, siteAliasMap, cookie domain). Use when editing config.server.ts, adding a config value, an env var is ignored or \"not applied\", `pnpm config:inspect` / `config:push-env`, \"Ignoring environment variable\" warnings, protected config path errors, setting up a second site or locale URLs, or going through the pre-launch config checklist. Do not use for creating a project or the npm script list (use `storefront-next:sfnext-project-setup`), pushing bundles or MRT env management (use `storefront-next:sfnext-deployment` / `b2c-cli:b2c-mrt`), or hybrid proxy and cookie-sharing with SFRA (use `storefront-next:sfnext-hybrid-storefronts`).",
|
|
1064
1393
|
"entrypoint": "SKILL.md",
|
|
1065
|
-
"
|
|
1066
|
-
|
|
1394
|
+
"frontmatter": {
|
|
1395
|
+
"name": "sfnext-configuration",
|
|
1396
|
+
"description": "Configure a Storefront Next app: config.server.ts (defineConfig, metadata/runtime/app), AppConfig types in src/types/config.ts, PUBLIC__ environment variable overrides, getConfig(context) / useConfig(), extension config (app.extension, app.serverExtension), protected paths, server-only secrets, and multi-site settings (commerce.sites, url.prefix, seoRoutes, siteAliasMap, cookie domain). Use when editing config.server.ts, adding a config value, an env var is ignored or \"not applied\", `pnpm config:inspect` / `config:push-env`, \"Ignoring environment variable\" warnings, protected config path errors, setting up a second site or locale URLs, or going through the pre-launch config checklist. Do not use for creating a project or the npm script list (use `storefront-next:sfnext-project-setup`), pushing bundles or MRT env management (use `storefront-next:sfnext-deployment` / `b2c-cli:b2c-mrt`), or hybrid proxy and cookie-sharing with SFRA (use `storefront-next:sfnext-hybrid-storefronts`)."
|
|
1397
|
+
},
|
|
1398
|
+
"source": "skills/storefront-next/skills/sfnext-configuration/SKILL.md",
|
|
1399
|
+
"headings": "Environment Variables | Where variables come from | Required to run | Required to push to Managed Runtime | Common optional `PUBLIC__` overrides | Server-only (no prefix) | Gotchas | Multi-Site, URLs, Domains, Base Path, and Cookie Domain | Quick decision table | Sites and locales | Reading the current site | URL shape (`app.url`) | Aliases | Building URLs correctly | SEO routes (`url.seoRoutes`) | Multiple domains, one environment | Base path (one domain, many environments) | Cookie domain | Switchers | Storefront Next Configuration | Model | Add a config value | Read config | Environment variable rules | Required variables | Debug \"my env var is not applied\" | Protected paths | Secrets | Extension config | Multi-site and URLs | Pre-launch config gate | Related Skills | Finding more",
|
|
1067
1400
|
"files": [
|
|
1068
1401
|
{
|
|
1069
|
-
"path": "references/
|
|
1070
|
-
"bytes":
|
|
1402
|
+
"path": "references/ENV-VARIABLES.md",
|
|
1403
|
+
"bytes": 3582,
|
|
1404
|
+
"digest": "sha256:b9a2664a67f9c7c3a82b4c0ed37a2d21171dd2fc0dbf1b20b74a9a66dbe32902"
|
|
1405
|
+
},
|
|
1406
|
+
{
|
|
1407
|
+
"path": "references/MULTI-SITE-URLS.md",
|
|
1408
|
+
"bytes": 9611,
|
|
1409
|
+
"digest": "sha256:98ff6029ffb4ba93d5b6151084fc45b69395fc25b8008405fc9cdf9e836cede7"
|
|
1071
1410
|
},
|
|
1072
1411
|
{
|
|
1073
1412
|
"path": "SKILL.md",
|
|
1074
|
-
"bytes":
|
|
1413
|
+
"bytes": 9742,
|
|
1414
|
+
"digest": "sha256:3594dc3a80bfc8581239e061b0f273e233f396f9e3e854e3aaf79de043cdbf45"
|
|
1075
1415
|
}
|
|
1076
1416
|
]
|
|
1077
1417
|
},
|
|
@@ -1079,22 +1419,39 @@
|
|
|
1079
1419
|
"id": "storefront-next/sfnext-data-fetching",
|
|
1080
1420
|
"collection": "storefront-next",
|
|
1081
1421
|
"title": "sfnext-data-fetching",
|
|
1082
|
-
"description": "
|
|
1422
|
+
"description": "Load and mutate data in a Storefront Next project: route loaders that call SCAPI through createApiClients from @/lib/api-clients.server, critical versus streamed (deferred) data, createBasketAction and BasketAction for cart actions, createActionError and ErrorCode, data() responses, useFetcher and the useScapiFetcher hook with its server allowlist, request-scoped dedupe and MRT timeouts, non-personalized SCAPI responses, shopper context, and custom API clients. Use for \"fetch products in a loader\", \"stream data\", \"add a cart action\", \"call SCAPI from a component\", \"resource route\", \"NormalizedApiError\", or \"loader blocks the page\". Do not use for route files or links (use `storefront-next:sfnext-routing`), when loaders re-run after actions (use `storefront-next:sfnext-revalidation`), Suspense/LCP tuning (use `storefront-next:sfnext-performance`), or defining SCAPI custom APIs (use `storefront-next:sfnext-scapi`).",
|
|
1083
1423
|
"entrypoint": "SKILL.md",
|
|
1424
|
+
"frontmatter": {
|
|
1425
|
+
"name": "sfnext-data-fetching",
|
|
1426
|
+
"description": "Load and mutate data in a Storefront Next project: route loaders that call SCAPI through createApiClients from @/lib/api-clients.server, critical versus streamed (deferred) data, createBasketAction and BasketAction for cart actions, createActionError and ErrorCode, data() responses, useFetcher and the useScapiFetcher hook with its server allowlist, request-scoped dedupe and MRT timeouts, non-personalized SCAPI responses, shopper context, and custom API clients. Use for \"fetch products in a loader\", \"stream data\", \"add a cart action\", \"call SCAPI from a component\", \"resource route\", \"NormalizedApiError\", or \"loader blocks the page\". Do not use for route files or links (use `storefront-next:sfnext-routing`), when loaders re-run after actions (use `storefront-next:sfnext-revalidation`), Suspense/LCP tuning (use `storefront-next:sfnext-performance`), or defining SCAPI custom APIs (use `storefront-next:sfnext-scapi`)."
|
|
1427
|
+
},
|
|
1084
1428
|
"source": "skills/storefront-next/skills/sfnext-data-fetching/SKILL.md",
|
|
1085
|
-
"headings": "
|
|
1429
|
+
"headings": "Actions and errors | Where to put a mutation | Basket actions: `createBasketAction` | Other actions | Error shape | Client side | After an action | API clients | What you get | Fetch layers | Errors | Custom APIs | Request shaping checklist | Loader patterns | Critical versus streamed | Stable promises | Consuming a promise | Shared layout data | Request context | Shopper context and personalization | Pitfalls | `useScapiFetcher` | Server allowlist (`src/lib/scapi/resource-policy.ts`) | Related hooks | When not to use it | Storefront Next Data Fetching | The rules (same as AGENTS.md) | Loader with critical and streamed data | SCAPI clients | Mutations: actions | Fetching from components | Checklist | Finding more | Related Skills",
|
|
1086
1430
|
"files": [
|
|
1087
1431
|
{
|
|
1088
|
-
"path": "references/
|
|
1089
|
-
"bytes":
|
|
1432
|
+
"path": "references/ACTIONS.md",
|
|
1433
|
+
"bytes": 3423,
|
|
1434
|
+
"digest": "sha256:2e6fff138d6cc2464ccfe9670f178942ae33dd1b64f690a069b0622f2bbb6f62"
|
|
1435
|
+
},
|
|
1436
|
+
{
|
|
1437
|
+
"path": "references/API-CLIENTS.md",
|
|
1438
|
+
"bytes": 2065,
|
|
1439
|
+
"digest": "sha256:b2c86a90c435581dee90903ec950f5ebcc3cea10d4ef261d0e830f46b204e4cd"
|
|
1440
|
+
},
|
|
1441
|
+
{
|
|
1442
|
+
"path": "references/LOADERS.md",
|
|
1443
|
+
"bytes": 3911,
|
|
1444
|
+
"digest": "sha256:eaa7a470312eb18b250838412e8ba701609e6015b48d001145eab052cd0d40d3"
|
|
1090
1445
|
},
|
|
1091
1446
|
{
|
|
1092
1447
|
"path": "references/SCAPI-FETCHER.md",
|
|
1093
|
-
"bytes":
|
|
1448
|
+
"bytes": 2684,
|
|
1449
|
+
"digest": "sha256:c9fbd9450b70a386f01ff7f3384186ac5255ad11f1f730d647b3369cb26411b5"
|
|
1094
1450
|
},
|
|
1095
1451
|
{
|
|
1096
1452
|
"path": "SKILL.md",
|
|
1097
|
-
"bytes":
|
|
1453
|
+
"bytes": 9866,
|
|
1454
|
+
"digest": "sha256:4c20956cee09eb20a75d7618b4941343abe84dda2a49c0050e1e72c884c1afaf"
|
|
1098
1455
|
}
|
|
1099
1456
|
]
|
|
1100
1457
|
},
|
|
@@ -1102,18 +1459,24 @@
|
|
|
1102
1459
|
"id": "storefront-next/sfnext-deployment",
|
|
1103
1460
|
"collection": "storefront-next",
|
|
1104
1461
|
"title": "sfnext-deployment",
|
|
1105
|
-
"description": "Build and deploy Storefront Next
|
|
1462
|
+
"description": "Build and deploy a Storefront Next storefront: `pnpm build`, `pnpm push` / `sfnext push` to Managed Runtime (MRT), MRT credentials (MRT_API_KEY, MRT_PROJECT, MRT_TARGET), syncing env vars with `pnpm config:push-env`, deploying the base cartridge and Page Designer metadata (`pnpm cartridge:generate|validate|deploy`), the shipped GitHub Actions deploy workflow, bundle size checks, the pre-launch checklist, and upgrading a project (template vs SDK compatibility, react-router pin). Use when a push fails or is rejected, a deployed site returns 500 or shows stale Page Designer components, \"deploy to staging/production\", or before go-live. Do not use for generic MRT project/environment/redirect/member management or log tailing (use `b2c-cli:b2c-mrt`), for config.server.ts and PUBLIC__ variable rules (use `storefront-next:sfnext-configuration`), or for creating the project (use `storefront-next:sfnext-project-setup`).",
|
|
1106
1463
|
"entrypoint": "SKILL.md",
|
|
1464
|
+
"frontmatter": {
|
|
1465
|
+
"name": "sfnext-deployment",
|
|
1466
|
+
"description": "Build and deploy a Storefront Next storefront: `pnpm build`, `pnpm push` / `sfnext push` to Managed Runtime (MRT), MRT credentials (MRT_API_KEY, MRT_PROJECT, MRT_TARGET), syncing env vars with `pnpm config:push-env`, deploying the base cartridge and Page Designer metadata (`pnpm cartridge:generate|validate|deploy`), the shipped GitHub Actions deploy workflow, bundle size checks, the pre-launch checklist, and upgrading a project (template vs SDK compatibility, react-router pin). Use when a push fails or is rejected, a deployed site returns 500 or shows stale Page Designer components, \"deploy to staging/production\", or before go-live. Do not use for generic MRT project/environment/redirect/member management or log tailing (use `b2c-cli:b2c-mrt`), for config.server.ts and PUBLIC__ variable rules (use `storefront-next:sfnext-configuration`), or for creating the project (use `storefront-next:sfnext-project-setup`)."
|
|
1467
|
+
},
|
|
1107
1468
|
"source": "skills/storefront-next/skills/sfnext-deployment/SKILL.md",
|
|
1108
|
-
"headings": "
|
|
1469
|
+
"headings": "Managed Runtime Deployment Reference | What MRT provides | Push flow | What push sends to MRT | Environment variables | Domains, base path, cookies | Rollback | Verifying a deployment | Storefront Next Deployment | Build | Push to Managed Runtime | Environment variables on MRT | Cartridge deployment | CI/CD | Pre-launch checklist | Upgrading a project | Troubleshooting | Related Skills | Finding more",
|
|
1109
1470
|
"files": [
|
|
1110
1471
|
{
|
|
1111
1472
|
"path": "references/MRT-DEPLOYMENT.md",
|
|
1112
|
-
"bytes":
|
|
1473
|
+
"bytes": 3898,
|
|
1474
|
+
"digest": "sha256:ca95095aa58d819f8eb79d40e1fa3a9093d6a376e98d816ea4a6500b900f6e0f"
|
|
1113
1475
|
},
|
|
1114
1476
|
{
|
|
1115
1477
|
"path": "SKILL.md",
|
|
1116
|
-
"bytes":
|
|
1478
|
+
"bytes": 9243,
|
|
1479
|
+
"digest": "sha256:faf1b093ce6ed02bb58b5744729f2f9847709bda7be74d98eb780fa70f21fda9"
|
|
1117
1480
|
}
|
|
1118
1481
|
]
|
|
1119
1482
|
},
|
|
@@ -1121,22 +1484,39 @@
|
|
|
1121
1484
|
"id": "storefront-next/sfnext-extensions",
|
|
1122
1485
|
"collection": "storefront-next",
|
|
1123
1486
|
"title": "sfnext-extensions",
|
|
1124
|
-
"description": "
|
|
1487
|
+
"description": "Add or remove modular features in a Storefront Next project with the extension system: src/extensions/<name>/ folders, target-config.json (UITarget components, contextProviders, actionHooks), sfcc.-prefixed UITarget ids, extension routes, per-extension config.ts and locales, SFDC_EXT_ integration markers, the `sfnext extensions create|install|remove|list` commands, and the agent-driven instructions/*.mdc install flow. Use when inserting a component into a UITarget slot (for example sfcc.header.before.cart or sfcc.pdp.bnpl.message), adding a checkout action hook, installing or removing store locator, BOPIS, multiship or a demo extension, listing extension points with pnpm extensions:list, or deciding whether to extend, restyle, or edit the base at all. Do not use for styling or brand changes (use `storefront-next:sfnext-theming`), for new merchant-editable Page Designer blocks (use `storefront-next:sfnext-page-designer`), or for analytics/engagement adapters (use `storefront-next:sfnext-analytics-consent`).",
|
|
1125
1488
|
"entrypoint": "SKILL.md",
|
|
1489
|
+
"frontmatter": {
|
|
1490
|
+
"name": "sfnext-extensions",
|
|
1491
|
+
"description": "Add or remove modular features in a Storefront Next project with the extension system: src/extensions/<name>/ folders, target-config.json (UITarget components, contextProviders, actionHooks), sfcc.-prefixed UITarget ids, extension routes, per-extension config.ts and locales, SFDC_EXT_ integration markers, the `sfnext extensions create|install|remove|list` commands, and the agent-driven instructions/*.mdc install flow. Use when inserting a component into a UITarget slot (for example sfcc.header.before.cart or sfcc.pdp.bnpl.message), adding a checkout action hook, installing or removing store locator, BOPIS, multiship or a demo extension, listing extension points with pnpm extensions:list, or deciding whether to extend, restyle, or edit the base at all. Do not use for styling or brand changes (use `storefront-next:sfnext-theming`), for new merchant-editable Page Designer blocks (use `storefront-next:sfnext-page-designer`), or for analytics/engagement adapters (use `storefront-next:sfnext-analytics-consent`)."
|
|
1492
|
+
},
|
|
1126
1493
|
"source": "skills/storefront-next/skills/sfnext-extensions/SKILL.md",
|
|
1127
|
-
"headings": "
|
|
1494
|
+
"headings": "Action Hooks | Available hook ids | Register a handler | Semantics | Adding a new hook point | Base Audit: Extend, Restyle, or Edit | The gate | Worked examples (real slots) | Duplicate section (wrong) vs additive section (right) | Restyle, do not re-render | Finding slots and render points | CLI and Install | create | install and remove | Agent-driven install instructions | Markers | After install or remove | Extension Examples | Simplest: BNPL (one slot, one API module) | Several slots: Ratings and Reviews | Routes, provider, middleware: Store Locator | Wrapper slot | Server hook: fraud check | Checklist for a new extension | Storefront Next Extensions | Decision gate: should this be an extension? | Structure | target-config.json | Routes, translations, config | Integration markers | Removing or replacing a demo extension | Best practices | Related Skills",
|
|
1128
1495
|
"files": [
|
|
1496
|
+
{
|
|
1497
|
+
"path": "references/ACTION-HOOKS.md",
|
|
1498
|
+
"bytes": 3365,
|
|
1499
|
+
"digest": "sha256:7ddc7ea136ebb103abb101fc72aa319a0bb9088450c48f0a5842445007529abd"
|
|
1500
|
+
},
|
|
1129
1501
|
{
|
|
1130
1502
|
"path": "references/BASE-AUDIT.md",
|
|
1131
|
-
"bytes":
|
|
1503
|
+
"bytes": 4083,
|
|
1504
|
+
"digest": "sha256:425dc9770cb04074aa23fd3c3e3b5339c4519856be0772656f47d2def9c5bdb1"
|
|
1505
|
+
},
|
|
1506
|
+
{
|
|
1507
|
+
"path": "references/CLI-AND-INSTALL.md",
|
|
1508
|
+
"bytes": 4007,
|
|
1509
|
+
"digest": "sha256:40570f1e0bfc4e7286273ac5ee1ec2ebb251b1a6a56bf281304f7b20cf33a82e"
|
|
1132
1510
|
},
|
|
1133
1511
|
{
|
|
1134
1512
|
"path": "references/EXTENSION-EXAMPLES.md",
|
|
1135
|
-
"bytes":
|
|
1513
|
+
"bytes": 3572,
|
|
1514
|
+
"digest": "sha256:70d1b9008fbe52828482382c8ddf37aac4d04e7da60f621eb9c373616091136a"
|
|
1136
1515
|
},
|
|
1137
1516
|
{
|
|
1138
1517
|
"path": "SKILL.md",
|
|
1139
|
-
"bytes":
|
|
1518
|
+
"bytes": 9491,
|
|
1519
|
+
"digest": "sha256:4e4e7833c4222b457f9c0121c64ae491d493c166d93187f24e146fcab0047bb1"
|
|
1140
1520
|
}
|
|
1141
1521
|
]
|
|
1142
1522
|
},
|
|
@@ -1144,18 +1524,24 @@
|
|
|
1144
1524
|
"id": "storefront-next/sfnext-hybrid-storefronts",
|
|
1145
1525
|
"collection": "storefront-next",
|
|
1146
1526
|
"title": "sfnext-hybrid-storefronts",
|
|
1147
|
-
"description": "
|
|
1527
|
+
"description": "Run Storefront Next alongside an existing SFRA or SiteGenesis storefront for a gradual migration. Use for hybrid mode, PUBLIC__app__hybrid__enabled, legacyRoutes (exact, :param, * wildcard, { pattern, suffix }), HYBRID_PROXY_ENABLED, SFCC_ORIGIN, HYBRID_ROUTING_RULES, vite-plugins/hybrid-proxy.ts, the dwsid session bridge, sharing login/cart between SFRA and Storefront Next, eCDN routing rules, cookie domain for hybrid, \"[Hybrid Proxy] SFCC returned a redirect to 404\", blank proxied pages, or lost sessions when crossing storefronts. Do not use for the cookie-domain settings themselves beyond the hybrid checklist (use `storefront-next:sfnext-security`), auth code (use `storefront-next:sfnext-authentication`), or MRT deployment (use `storefront-next:sfnext-deployment`).",
|
|
1148
1528
|
"entrypoint": "SKILL.md",
|
|
1529
|
+
"frontmatter": {
|
|
1530
|
+
"name": "sfnext-hybrid-storefronts",
|
|
1531
|
+
"description": "Run Storefront Next alongside an existing SFRA or SiteGenesis storefront for a gradual migration. Use for hybrid mode, PUBLIC__app__hybrid__enabled, legacyRoutes (exact, :param, * wildcard, { pattern, suffix }), HYBRID_PROXY_ENABLED, SFCC_ORIGIN, HYBRID_ROUTING_RULES, vite-plugins/hybrid-proxy.ts, the dwsid session bridge, sharing login/cart between SFRA and Storefront Next, eCDN routing rules, cookie domain for hybrid, \"[Hybrid Proxy] SFCC returned a redirect to 404\", blank proxied pages, or lost sessions when crossing storefronts. Do not use for the cookie-domain settings themselves beyond the hybrid checklist (use `storefront-next:sfnext-security`), auth code (use `storefront-next:sfnext-authentication`), or MRT deployment (use `storefront-next:sfnext-deployment`)."
|
|
1532
|
+
},
|
|
1149
1533
|
"source": "skills/storefront-next/skills/sfnext-hybrid-storefronts/SKILL.md",
|
|
1150
|
-
"headings": "Hybrid Proxy Configuration Reference |
|
|
1534
|
+
"headings": "Hybrid Proxy Configuration Reference | Environment variables | Routing rule format | Path transformation | Cookie layers (local dev) | Custom matcher (last resort) | Gotchas | Hybrid Storefronts | Two sets of configuration | legacyRoutes patterns | Session bridge | Edit the proxy where customers edit it | Automatic behaviors | Troubleshooting | Related Skills",
|
|
1151
1535
|
"files": [
|
|
1152
1536
|
{
|
|
1153
1537
|
"path": "references/HYBRID-PROXY-CONFIG.md",
|
|
1154
|
-
"bytes":
|
|
1538
|
+
"bytes": 3836,
|
|
1539
|
+
"digest": "sha256:b26feabb1f3a45d78e78b5076e999ea897167d3ffd612daa5cbf84ca09a03f8a"
|
|
1155
1540
|
},
|
|
1156
1541
|
{
|
|
1157
1542
|
"path": "SKILL.md",
|
|
1158
|
-
"bytes":
|
|
1543
|
+
"bytes": 8327,
|
|
1544
|
+
"digest": "sha256:f718b89289b4a42ed1e1f61d23e61faeef9919ecf25ada1ae4f55c1ee1ba73f5"
|
|
1159
1545
|
}
|
|
1160
1546
|
]
|
|
1161
1547
|
},
|
|
@@ -1163,14 +1549,44 @@
|
|
|
1163
1549
|
"id": "storefront-next/sfnext-i18n",
|
|
1164
1550
|
"collection": "storefront-next",
|
|
1165
1551
|
"title": "sfnext-i18n",
|
|
1166
|
-
"description": "
|
|
1552
|
+
"description": "Translate and localize a Storefront Next storefront with i18next: useTranslation in components, getTranslation in loaders/actions/utilities, translations.json namespaces, pluralization and interpolation, Zod validation-message factories, adding a new language or locale, extension translations, and locale/currency switching. Use when adding or editing strings, \"add a Brazilian Portuguese locale\", supportedLngs / fallbackLng / supportedLocales, src/locales, locales:aggregate-extensions, LocaleSwitcher, mockI18nContext, hydration mismatch on translated text, or missing-key problems. Do not use for site/locale URL prefix routing (use `storefront-next:sfnext-routing`), site and currency configuration keys (use `storefront-next:sfnext-configuration`), or extension scaffolding (use `storefront-next:sfnext-extensions`).",
|
|
1167
1553
|
"entrypoint": "SKILL.md",
|
|
1554
|
+
"frontmatter": {
|
|
1555
|
+
"name": "sfnext-i18n",
|
|
1556
|
+
"description": "Translate and localize a Storefront Next storefront with i18next: useTranslation in components, getTranslation in loaders/actions/utilities, translations.json namespaces, pluralization and interpolation, Zod validation-message factories, adding a new language or locale, extension translations, and locale/currency switching. Use when adding or editing strings, \"add a Brazilian Portuguese locale\", supportedLngs / fallbackLng / supportedLocales, src/locales, locales:aggregate-extensions, LocaleSwitcher, mockI18nContext, hydration mismatch on translated text, or missing-key problems. Do not use for site/locale URL prefix routing (use `storefront-next:sfnext-routing`), site and currency configuration keys (use `storefront-next:sfnext-configuration`), or extension scaffolding (use `storefront-next:sfnext-extensions`)."
|
|
1557
|
+
},
|
|
1168
1558
|
"source": "skills/storefront-next/skills/sfnext-i18n/SKILL.md",
|
|
1169
|
-
"headings": "
|
|
1559
|
+
"headings": "Locale and currency configuration | Must stay in sync | Currency | Typing | Client loading | Using a different i18n library | Storefront Next Internationalization | Which API to use | File layout | Add a new locale (checklist) | How the active locale is chosen | Extension translations | Validation messages: Zod schema factories | Testing translations | Pitfalls | Finding more | Related Skills",
|
|
1560
|
+
"files": [
|
|
1561
|
+
{
|
|
1562
|
+
"path": "references/locale-config.md",
|
|
1563
|
+
"bytes": 2478,
|
|
1564
|
+
"digest": "sha256:f306a09448b136f5910f0b33288f83b85e5a29b7b26f707c279aa154142bc358"
|
|
1565
|
+
},
|
|
1566
|
+
{
|
|
1567
|
+
"path": "SKILL.md",
|
|
1568
|
+
"bytes": 9317,
|
|
1569
|
+
"digest": "sha256:f1fa2f89144350371126ae733b2978c07ca5543ff5464c715db550ba6864b0c9"
|
|
1570
|
+
}
|
|
1571
|
+
]
|
|
1572
|
+
},
|
|
1573
|
+
{
|
|
1574
|
+
"id": "storefront-next/sfnext-overview",
|
|
1575
|
+
"collection": "storefront-next",
|
|
1576
|
+
"title": "sfnext-overview",
|
|
1577
|
+
"description": "Start here for any Salesforce Commerce Storefront Next (sfnext) task: a router that maps what you want to do to the right storefront-next skill, says to read your project's AGENTS.md and docs/README-*.md first, and carries a cheat sheet for the sfnext CLI, the b2c CLI, the b2c-dx-mcp tools, and the docs search fallback. Use when starting work in a Storefront Next project, when unsure which skill applies, when asked \"how do I do X in Storefront Next\", \"what commands exist\", or \"where is the documentation\". Do not use once a specific area is clear; go straight to that skill (for example `storefront-next:sfnext-routing` or `storefront-next:sfnext-seo`).",
|
|
1578
|
+
"entrypoint": "SKILL.md",
|
|
1579
|
+
"frontmatter": {
|
|
1580
|
+
"name": "sfnext-overview",
|
|
1581
|
+
"description": "Start here for any Salesforce Commerce Storefront Next (sfnext) task: a router that maps what you want to do to the right storefront-next skill, says to read your project's AGENTS.md and docs/README-*.md first, and carries a cheat sheet for the sfnext CLI, the b2c CLI, the b2c-dx-mcp tools, and the docs search fallback. Use when starting work in a Storefront Next project, when unsure which skill applies, when asked \"how do I do X in Storefront Next\", \"what commands exist\", or \"where is the documentation\". Do not use once a specific area is clear; go straight to that skill (for example `storefront-next:sfnext-routing` or `storefront-next:sfnext-seo`)."
|
|
1582
|
+
},
|
|
1583
|
+
"source": "skills/storefront-next/skills/sfnext-overview/SKILL.md",
|
|
1584
|
+
"headings": "Storefront Next Overview and Router | Before anything else | Which skill for which task | sfnext CLI cheat sheet | b2c CLI cheat sheet | MCP tools (b2c-dx-mcp, STOREFRONTNEXT toolset) | Docs search fallback | Related Skills",
|
|
1170
1585
|
"files": [
|
|
1171
1586
|
{
|
|
1172
1587
|
"path": "SKILL.md",
|
|
1173
|
-
"bytes":
|
|
1588
|
+
"bytes": 6454,
|
|
1589
|
+
"digest": "sha256:08b59a319d1c1be26043154e3ca350af2463eb94de4635dedc178d2dca3fe715"
|
|
1174
1590
|
}
|
|
1175
1591
|
]
|
|
1176
1592
|
},
|
|
@@ -1178,22 +1594,44 @@
|
|
|
1178
1594
|
"id": "storefront-next/sfnext-page-designer",
|
|
1179
1595
|
"collection": "storefront-next",
|
|
1180
1596
|
"title": "sfnext-page-designer",
|
|
1181
|
-
"description": "
|
|
1597
|
+
"description": "Build merchant-editable Page Designer content in a Storefront Next project: components decorated with @Component/@AttributeDefinition/@RegionDefinition, page routes decorated with @PageType, <Region> rendering, fetchPageWithComponentData, component loaders and fallbacks, the generated static registry, and the pnpm cartridge:generate / cartridge:validate / cartridge:deploy workflow. Use when adding or editing a Page Designer component, exposing a region on a route (home, PDP, PLP, search), fetching a page by pageId or aspectType, marking a Region critical, debugging a component that does not appear in the Business Manager palette or renders empty, or reviewing Page Designer code. Do not use for classic ISML/SFRA Page Designer (use `b2c:b2c-page-designer`), for turning a Figma frame into blocks (use `figma-to-sfnext-pagedesigner:figma-to-sfnext-pagedesigner`), or for plain React components that merchants never edit (use `storefront-next:sfnext-components`).",
|
|
1182
1598
|
"entrypoint": "SKILL.md",
|
|
1599
|
+
"frontmatter": {
|
|
1600
|
+
"name": "sfnext-page-designer",
|
|
1601
|
+
"description": "Build merchant-editable Page Designer content in a Storefront Next project: components decorated with @Component/@AttributeDefinition/@RegionDefinition, page routes decorated with @PageType, <Region> rendering, fetchPageWithComponentData, component loaders and fallbacks, the generated static registry, and the pnpm cartridge:generate / cartridge:validate / cartridge:deploy workflow. Use when adding or editing a Page Designer component, exposing a region on a route (home, PDP, PLP, search), fetching a page by pageId or aspectType, marking a Region critical, debugging a component that does not appear in the Business Manager palette or renders empty, or reviewing Page Designer code. Do not use for classic ISML/SFRA Page Designer (use `b2c:b2c-page-designer`), for turning a Figma frame into blocks (use `figma-to-sfnext-pagedesigner:figma-to-sfnext-pagedesigner`), or for plain React components that merchants never edit (use `storefront-next:sfnext-components`)."
|
|
1602
|
+
},
|
|
1183
1603
|
"source": "skills/storefront-next/skills/sfnext-page-designer/SKILL.md",
|
|
1184
|
-
"headings": "
|
|
1604
|
+
"headings": "Business Manager Integration | What gets generated | `route` and `aspectTypeIds` | Merchant setup checklist | Design vs preview mode | Where to look next | Registry and Loading | The static registry | Entry wiring (do not break) | How a page renders | Fetching a page | Module contract | Critical regions | Error handling | Decorator Patterns | `@Component(typeId, options)` | `@AttributeDefinition(config)` | Attribute types | `searching` combinations | `@RegionDefinition(regions)` | `@PageType(config)` | Nested regions in a container | Images | Text that is not merchant content | Review Checklist | 1. Metadata | 2. Module contract (components) | 3. Rendering | 4. Anti-patterns | 5. Do not flag | Report format | Troubleshooting Page Designer | Debugging tips | Page Designer in Storefront Next | Pieces and where they live | Workflow | A component | A loader | A page route | Design and preview mode | Verify before you finish | Reference Documentation | Related Skills",
|
|
1185
1605
|
"files": [
|
|
1606
|
+
{
|
|
1607
|
+
"path": "references/BUSINESS-MANAGER.md",
|
|
1608
|
+
"bytes": 3752,
|
|
1609
|
+
"digest": "sha256:c39b71c138cb40bf0293a5760752bef35c5fff45af32f7a8f96f2256d259421d"
|
|
1610
|
+
},
|
|
1186
1611
|
{
|
|
1187
1612
|
"path": "references/COMPONENT-REGISTRY.md",
|
|
1188
|
-
"bytes":
|
|
1613
|
+
"bytes": 6853,
|
|
1614
|
+
"digest": "sha256:2c5e129999fba44f60f6c6e00d9cea8ca346df4d1f561e1e2567896a71c68109"
|
|
1189
1615
|
},
|
|
1190
1616
|
{
|
|
1191
1617
|
"path": "references/DECORATOR-PATTERNS.md",
|
|
1192
|
-
"bytes":
|
|
1618
|
+
"bytes": 7959,
|
|
1619
|
+
"digest": "sha256:c99d2ceb6f89866523c4aef5f26717558fd003a1e44420ae5a7e4a600d9963b2"
|
|
1620
|
+
},
|
|
1621
|
+
{
|
|
1622
|
+
"path": "references/REVIEW-CHECKLIST.md",
|
|
1623
|
+
"bytes": 5599,
|
|
1624
|
+
"digest": "sha256:07208266ce5156c8209eb5ae3defee4a75a397548987441d4701c12d35e9c0f3"
|
|
1625
|
+
},
|
|
1626
|
+
{
|
|
1627
|
+
"path": "references/TROUBLESHOOTING.md",
|
|
1628
|
+
"bytes": 4467,
|
|
1629
|
+
"digest": "sha256:ed65e8776f61558c5856938e100a389b8db8e1f27be049e2d71d0d9fffa8c117"
|
|
1193
1630
|
},
|
|
1194
1631
|
{
|
|
1195
1632
|
"path": "SKILL.md",
|
|
1196
|
-
"bytes":
|
|
1633
|
+
"bytes": 13747,
|
|
1634
|
+
"digest": "sha256:da2e9915fad540c2e9214616ed918c3c0b9ab37a2aa619b9da66b9b99addde9c"
|
|
1197
1635
|
}
|
|
1198
1636
|
]
|
|
1199
1637
|
},
|
|
@@ -1201,14 +1639,29 @@
|
|
|
1201
1639
|
"id": "storefront-next/sfnext-performance",
|
|
1202
1640
|
"collection": "storefront-next",
|
|
1203
1641
|
"title": "sfnext-performance",
|
|
1204
|
-
"description": "
|
|
1642
|
+
"description": "Keep a Storefront Next storefront fast and self-review changes for performance: LCP, CLS and TBT, Suspense placement and granularity, stable promise identity, lazy-loaded modals and drawers with useDeferredUnmount, useDeferredRender, Region critical, DynamicImage and image priority, font loading, resource hints (links.preconnect), bundle size checks (pnpm bundlesize, BUNDLES_SIZE_ANALYZE), Lighthouse CI, and the performance.metrics / Server-Timing flags. Use for \"page is slow\", \"LCP regression\", \"skeleton flashes\", \"bundle too big\", \"review my diff for performance\", \"hydration mismatch or extra re-renders\", \"waterfall of fetches\", or before merging feature work that adds loaders, fetchers, modals and drawers or images. Do not use for loader/action mechanics (use `storefront-next:sfnext-data-fetching`), revalidation policy (use `storefront-next:sfnext-revalidation`), or accessibility (use `storefront-next:sfnext-accessibility`).",
|
|
1205
1643
|
"entrypoint": "SKILL.md",
|
|
1644
|
+
"frontmatter": {
|
|
1645
|
+
"name": "sfnext-performance",
|
|
1646
|
+
"description": "Keep a Storefront Next storefront fast and self-review changes for performance: LCP, CLS and TBT, Suspense placement and granularity, stable promise identity, lazy-loaded modals and drawers with useDeferredUnmount, useDeferredRender, Region critical, DynamicImage and image priority, font loading, resource hints (links.preconnect), bundle size checks (pnpm bundlesize, BUNDLES_SIZE_ANALYZE), Lighthouse CI, and the performance.metrics / Server-Timing flags. Use for \"page is slow\", \"LCP regression\", \"skeleton flashes\", \"bundle too big\", \"review my diff for performance\", \"hydration mismatch or extra re-renders\", \"waterfall of fetches\", or before merging feature work that adds loaders, fetchers, modals and drawers or images. Do not use for loader/action mechanics (use `storefront-next:sfnext-data-fetching`), revalidation policy (use `storefront-next:sfnext-revalidation`), or accessibility (use `storefront-next:sfnext-accessibility`)."
|
|
1647
|
+
},
|
|
1206
1648
|
"source": "skills/storefront-next/skills/sfnext-performance/SKILL.md",
|
|
1207
|
-
"headings": "Performance
|
|
1649
|
+
"headings": "Performance self-review checklist | 1. Fetch efficiency | 2. Fetcher misuse | 3. Suspense placement | 4. Suspense granularity | 5. Promise stability | 6. Hydration and render stability | 7. Revalidation scope | 8. Client-side transforms | 9. Also check | Reporting | Suspense and streaming recipes | Placement | Granularity | Promise stability | Skeletons | Critical Page Designer regions | Errors in streamed data | Storefront Next Performance | Core rules | Lazy modals and drawers | Deferred rendering | Page Designer | Images, fonts, hints | Measure | Review workflow | References | Finding more | Related Skills",
|
|
1208
1650
|
"files": [
|
|
1651
|
+
{
|
|
1652
|
+
"path": "references/PERFORMANCE-REVIEW-CHECKLIST.md",
|
|
1653
|
+
"bytes": 6642,
|
|
1654
|
+
"digest": "sha256:6b2151b32c0692c4399fc17a5abc5fcc737f4625ed293feafb71f094c6784cae"
|
|
1655
|
+
},
|
|
1656
|
+
{
|
|
1657
|
+
"path": "references/SUSPENSE-AND-STREAMING.md",
|
|
1658
|
+
"bytes": 2629,
|
|
1659
|
+
"digest": "sha256:7f2c2a2e257e9d4da4b870381ff7499003f3473faed8c5fa08fa976b1ca4ece2"
|
|
1660
|
+
},
|
|
1209
1661
|
{
|
|
1210
1662
|
"path": "SKILL.md",
|
|
1211
|
-
"bytes":
|
|
1663
|
+
"bytes": 7576,
|
|
1664
|
+
"digest": "sha256:7ada212422080fdfc1ae1f0f5eaab5db2e6087cd9b67e7d6f4d4e3eac11c7bca"
|
|
1212
1665
|
}
|
|
1213
1666
|
]
|
|
1214
1667
|
},
|
|
@@ -1216,22 +1669,84 @@
|
|
|
1216
1669
|
"id": "storefront-next/sfnext-project-setup",
|
|
1217
1670
|
"collection": "storefront-next",
|
|
1218
1671
|
"title": "sfnext-project-setup",
|
|
1219
|
-
"description": "Create and
|
|
1672
|
+
"description": "Create and bootstrap a Storefront Next project, and learn its layout, npm scripts, and first-run workflow. Use when creating a new storefront, running `sfnext create-storefront` (`--vertical` starter theme, `--defaults`, `--template`, `--output-dir`), choosing between Business Manager Storefront Setup and the CLI, fixing `pnpm install` / Node 24 problems, copying `.env.default` to `.env`, asking \"what does this folder do\" or \"which pnpm script do I run\", or running `b2c sfnext` / `pnpm sfnext` commands for the first time. Do not use for config.server.ts or PUBLIC__ env var rules (use `storefront-next:sfnext-configuration`), building/pushing to Managed Runtime (use `storefront-next:sfnext-deployment`), or a conceptual tour of the architecture (use `storefront-next:sfnext-overview`).",
|
|
1220
1673
|
"entrypoint": "SKILL.md",
|
|
1674
|
+
"frontmatter": {
|
|
1675
|
+
"name": "sfnext-project-setup",
|
|
1676
|
+
"description": "Create and bootstrap a Storefront Next project, and learn its layout, npm scripts, and first-run workflow. Use when creating a new storefront, running `sfnext create-storefront` (`--vertical` starter theme, `--defaults`, `--template`, `--output-dir`), choosing between Business Manager Storefront Setup and the CLI, fixing `pnpm install` / Node 24 problems, copying `.env.default` to `.env`, asking \"what does this folder do\" or \"which pnpm script do I run\", or running `b2c sfnext` / `pnpm sfnext` commands for the first time. Do not use for config.server.ts or PUBLIC__ env var rules (use `storefront-next:sfnext-configuration`), building/pushing to Managed Runtime (use `storefront-next:sfnext-deployment`), or a conceptual tour of the architecture (use `storefront-next:sfnext-overview`)."
|
|
1677
|
+
},
|
|
1221
1678
|
"source": "skills/storefront-next/skills/sfnext-project-setup/SKILL.md",
|
|
1222
|
-
"headings": "
|
|
1679
|
+
"headings": "Project Structure | Top level | `src/` | Where to look for each concern | Page Designer metadata | Adding UI primitives | Project Scripts | Develop and run | Deploy and operate | Quality | `sfnext` CLI | Project lifecycle | Managed Runtime push | Cartridges (Page Designer metadata) | Configuration and extensions | SCAPI clients | Storefront Next Project Setup | Prerequisites | Choose how to start | Create a project with the CLI | First run | Project layout (short form) | Scripts and CLI | Conventions worth knowing up front | Troubleshooting | Finding more | Related Skills",
|
|
1223
1680
|
"files": [
|
|
1224
1681
|
{
|
|
1225
|
-
"path": "references/
|
|
1226
|
-
"bytes":
|
|
1682
|
+
"path": "references/PROJECT-STRUCTURE.md",
|
|
1683
|
+
"bytes": 5186,
|
|
1684
|
+
"digest": "sha256:a5a3a8cfc3f98566614781494ac21b2862642f9450abf57b32161a11d2e914bb"
|
|
1227
1685
|
},
|
|
1228
1686
|
{
|
|
1229
|
-
"path": "references/
|
|
1230
|
-
"bytes":
|
|
1687
|
+
"path": "references/SCRIPTS.md",
|
|
1688
|
+
"bytes": 3010,
|
|
1689
|
+
"digest": "sha256:39aed6194c14e34c50a24319e25c76ddd7c1d739904807900413ddda12b37054"
|
|
1690
|
+
},
|
|
1691
|
+
{
|
|
1692
|
+
"path": "references/SFNEXT-CLI.md",
|
|
1693
|
+
"bytes": 3817,
|
|
1694
|
+
"digest": "sha256:e572df79763594092e58f4f28a746661396a418ddd8eceb8646f986f594464af"
|
|
1231
1695
|
},
|
|
1232
1696
|
{
|
|
1233
1697
|
"path": "SKILL.md",
|
|
1234
|
-
"bytes":
|
|
1698
|
+
"bytes": 9419,
|
|
1699
|
+
"digest": "sha256:6e0282eef0605feb23ce76379ad170d1ad39aad900df0b379298da220f0a8be9"
|
|
1700
|
+
}
|
|
1701
|
+
]
|
|
1702
|
+
},
|
|
1703
|
+
{
|
|
1704
|
+
"id": "storefront-next/sfnext-quality-gates",
|
|
1705
|
+
"collection": "storefront-next",
|
|
1706
|
+
"title": "sfnext-quality-gates",
|
|
1707
|
+
"description": "Run and fix the Storefront Next quality gates before a PR or deploy: OxLint (type-aware, --max-warnings 0) plus Biome formatting, lint:a11y, lint:css, typecheck, the TypeScript-only check, bundle-size budgets, Lighthouse CI, and the pre-PR checklist. Use when pnpm lint, pnpm format:check, pnpm typecheck, pnpm bundlesize or pnpm lighthouse:ci fails, for custom/color-linter or custom/header-format errors, \"unused Tailwind class\" findings, oxlint-disable comments, \"what should I run before opening a PR\", or CI red on lint. Do not use for writing tests (use `storefront-next:sfnext-testing`), accessibility fixes themselves (use `storefront-next:sfnext-accessibility`), or runtime performance tuning (use `storefront-next:sfnext-performance`).",
|
|
1708
|
+
"entrypoint": "SKILL.md",
|
|
1709
|
+
"frontmatter": {
|
|
1710
|
+
"name": "sfnext-quality-gates",
|
|
1711
|
+
"description": "Run and fix the Storefront Next quality gates before a PR or deploy: OxLint (type-aware, --max-warnings 0) plus Biome formatting, lint:a11y, lint:css, typecheck, the TypeScript-only check, bundle-size budgets, Lighthouse CI, and the pre-PR checklist. Use when pnpm lint, pnpm format:check, pnpm typecheck, pnpm bundlesize or pnpm lighthouse:ci fails, for custom/color-linter or custom/header-format errors, \"unused Tailwind class\" findings, oxlint-disable comments, \"what should I run before opening a PR\", or CI red on lint. Do not use for writing tests (use `storefront-next:sfnext-testing`), accessibility fixes themselves (use `storefront-next:sfnext-accessibility`), or runtime performance tuning (use `storefront-next:sfnext-performance`)."
|
|
1712
|
+
},
|
|
1713
|
+
"source": "skills/storefront-next/skills/sfnext-quality-gates/SKILL.md",
|
|
1714
|
+
"headings": "Lint configuration and performance budgets | Configuration files in your project | Editor integration | Bundle size | Lighthouse CI | When a budget fails | Storefront Next Quality Gates | Pre-PR checklist | Commands | Custom rules you will hit | Typical failures | Related Skills",
|
|
1715
|
+
"files": [
|
|
1716
|
+
{
|
|
1717
|
+
"path": "references/lint-and-budgets.md",
|
|
1718
|
+
"bytes": 2597,
|
|
1719
|
+
"digest": "sha256:371c1c9b79be1380d096bba823cc959fc9f6db7ef35e6ce38a312888b976455b"
|
|
1720
|
+
},
|
|
1721
|
+
{
|
|
1722
|
+
"path": "SKILL.md",
|
|
1723
|
+
"bytes": 5271,
|
|
1724
|
+
"digest": "sha256:e6bcaaac4f1ffc3b21e3d19f538b65edc49f6dd1c7bdcafd570094a897f29ac9"
|
|
1725
|
+
}
|
|
1726
|
+
]
|
|
1727
|
+
},
|
|
1728
|
+
{
|
|
1729
|
+
"id": "storefront-next/sfnext-revalidation",
|
|
1730
|
+
"collection": "storefront-next",
|
|
1731
|
+
"title": "sfnext-revalidation",
|
|
1732
|
+
"description": "Control which Storefront Next loaders re-run after an action or navigation: shouldRevalidate exports, the policy modules in src/lib/revalidation/routes (root, cart, product, category, checkout, home, wishlist, api-client, shared), getActionPath and isAmbientMutation, and the tag primitives in src/lib/revalidation/tags (withRevalidateTags, shouldRevalidateForTags, tagGroup, tagImplications). Use for \"page re-fetches after add to cart\", \"loader runs too often\", \"stale data after a mutation\", \"flash of skeleton after changing a swatch\", \"add shouldRevalidate\", or when a new action or route changes which loaders fire. Do not use for writing loaders or actions (use `storefront-next:sfnext-data-fetching`), Suspense and LCP tuning (use `storefront-next:sfnext-performance`), or client-side state (use `storefront-next:sfnext-state-management`).",
|
|
1733
|
+
"entrypoint": "SKILL.md",
|
|
1734
|
+
"frontmatter": {
|
|
1735
|
+
"name": "sfnext-revalidation",
|
|
1736
|
+
"description": "Control which Storefront Next loaders re-run after an action or navigation: shouldRevalidate exports, the policy modules in src/lib/revalidation/routes (root, cart, product, category, checkout, home, wishlist, api-client, shared), getActionPath and isAmbientMutation, and the tag primitives in src/lib/revalidation/tags (withRevalidateTags, shouldRevalidateForTags, tagGroup, tagImplications). Use for \"page re-fetches after add to cart\", \"loader runs too often\", \"stale data after a mutation\", \"flash of skeleton after changing a swatch\", \"add shouldRevalidate\", or when a new action or route changes which loaders fire. Do not use for writing loaders or actions (use `storefront-next:sfnext-data-fetching`), Suspense and LCP tuning (use `storefront-next:sfnext-performance`), or client-side state (use `storefront-next:sfnext-state-management`)."
|
|
1737
|
+
},
|
|
1738
|
+
"source": "skills/storefront-next/skills/sfnext-revalidation/SKILL.md",
|
|
1739
|
+
"headings": "Policies and tags reference | Policy inputs | Decision table | Modals and drawers | Tags | Root policy | Storefront Next Revalidation | What revalidates | When a re-run is justified | Where the policy lives | Add a policy for a new route | Tags for cross-route contracts | Related levers | Finding more | Related Skills",
|
|
1740
|
+
"files": [
|
|
1741
|
+
{
|
|
1742
|
+
"path": "references/POLICIES-AND-TAGS.md",
|
|
1743
|
+
"bytes": 3253,
|
|
1744
|
+
"digest": "sha256:31a4b039b1162e294cafc48cd75efd4571c67abd91791165c2977ad7b42f3d85"
|
|
1745
|
+
},
|
|
1746
|
+
{
|
|
1747
|
+
"path": "SKILL.md",
|
|
1748
|
+
"bytes": 7924,
|
|
1749
|
+
"digest": "sha256:c9b093f490acc92bdee153578b0a54c1b914880f6760b18b39ca1d16736e2b49"
|
|
1235
1750
|
}
|
|
1236
1751
|
]
|
|
1237
1752
|
},
|
|
@@ -1239,37 +1754,114 @@
|
|
|
1239
1754
|
"id": "storefront-next/sfnext-routing",
|
|
1240
1755
|
"collection": "storefront-next",
|
|
1241
1756
|
"title": "sfnext-routing",
|
|
1242
|
-
"description": "
|
|
1757
|
+
"description": "Add and change pages in a Storefront Next project: flat-file routes in src/routes, layout routes (_app, _checkout, _empty), splat routes for product and category pages, action.* and resource.* routes, src/route-paths.ts (routes, resourceRoutes, routeHref), site-aware Link and useNavigate wrappers, SeoMeta and JsonLd head tags, multi-site /:siteId/:localeId URL prefixes, url.seoRoutes and excludeRoutes, extension routes, and the SLAS callback routes. Use for \"add a page\", \"new route\", \"why is my link missing the site prefix\", \"route file naming\", \"redirect to login\", or a 404 on a new URL. Do not use for loader/action/fetcher data code (use `storefront-next:sfnext-data-fetching`), shouldRevalidate (use `storefront-next:sfnext-revalidation`), SEO strategy such as sitemaps and canonical rules (use `storefront-next:sfnext-seo`), or Page Designer regions (use `storefront-next:sfnext-page-designer`).",
|
|
1243
1758
|
"entrypoint": "SKILL.md",
|
|
1759
|
+
"frontmatter": {
|
|
1760
|
+
"name": "sfnext-routing",
|
|
1761
|
+
"description": "Add and change pages in a Storefront Next project: flat-file routes in src/routes, layout routes (_app, _checkout, _empty), splat routes for product and category pages, action.* and resource.* routes, src/route-paths.ts (routes, resourceRoutes, routeHref), site-aware Link and useNavigate wrappers, SeoMeta and JsonLd head tags, multi-site /:siteId/:localeId URL prefixes, url.seoRoutes and excludeRoutes, extension routes, and the SLAS callback routes. Use for \"add a page\", \"new route\", \"why is my link missing the site prefix\", \"route file naming\", \"redirect to login\", or a 404 on a new URL. Do not use for loader/action/fetcher data code (use `storefront-next:sfnext-data-fetching`), shouldRevalidate (use `storefront-next:sfnext-revalidation`), SEO strategy such as sitemaps and canonical rules (use `storefront-next:sfnext-seo`), or Page Designer regions (use `storefront-next:sfnext-page-designer`)."
|
|
1762
|
+
},
|
|
1244
1763
|
"source": "skills/storefront-next/skills/sfnext-routing/SKILL.md",
|
|
1245
|
-
"headings": "Route
|
|
1764
|
+
"headings": "Route conventions | File name to URL | Route module exports | Typed route props | Layout notes | Head tags | Checklist when renaming or deleting a route | Site prefixes, excluded routes and SEO aliases | Rules | Callbacks that cannot carry a prefix | Storefront Next Routing | How routes are discovered | Route tree (what exists) | Add a page | Links and navigation: always use the project wrappers | URL configuration | Protecting routes | Rules to keep in mind | Finding more | Related Skills",
|
|
1246
1765
|
"files": [
|
|
1247
1766
|
{
|
|
1248
1767
|
"path": "references/ROUTE-CONVENTIONS.md",
|
|
1249
|
-
"bytes":
|
|
1768
|
+
"bytes": 3438,
|
|
1769
|
+
"digest": "sha256:e0e6b3c74227b233f1fa46d66a9b923f880d3325e44f4041dbf59221558507c1"
|
|
1770
|
+
},
|
|
1771
|
+
{
|
|
1772
|
+
"path": "references/URLS-AND-SEO-ROUTES.md",
|
|
1773
|
+
"bytes": 1801,
|
|
1774
|
+
"digest": "sha256:ae5c2b41f7de46fee78cbb0776c1995f67d4250602fde1ad84de7a6c22cc11df"
|
|
1775
|
+
},
|
|
1776
|
+
{
|
|
1777
|
+
"path": "SKILL.md",
|
|
1778
|
+
"bytes": 9276,
|
|
1779
|
+
"digest": "sha256:834e14427eec5e9addd1b1f1ee96fcdf082a49402327577f6a1f90e1583eaa83"
|
|
1780
|
+
}
|
|
1781
|
+
]
|
|
1782
|
+
},
|
|
1783
|
+
{
|
|
1784
|
+
"id": "storefront-next/sfnext-scapi",
|
|
1785
|
+
"collection": "storefront-next",
|
|
1786
|
+
"title": "sfnext-scapi",
|
|
1787
|
+
"description": "Use and extend SCAPI clients in a Storefront Next project: createApiClients, the `@/scapi` type barrel, typing `c_*` custom attributes by overriding a built-in client, and adding your own custom API end to end with `b2c sfnext scapi` (add, available, list, remove). Use for \"clients.shopperProducts\", \"c_ attribute is not typed\", \"sfnext scapi add\", \"add custom API to the storefront\", src/scapi/ generated files, custom-clients.ts, calling a loyalty/notify-style custom endpoint from a loader or action, useScapiFetcher, personalized=none for custom clients, or 404 from a custom endpoint. Do not use for writing the cartridge/schema.yaml itself (use `b2c:b2c-custom-api-development`), endpoint registration status (use `b2c-cli:b2c-scapi-custom`), loader/caching strategy (use `storefront-next:sfnext-data-fetching`), or login/session code (use `storefront-next:sfnext-authentication`).",
|
|
1788
|
+
"entrypoint": "SKILL.md",
|
|
1789
|
+
"frontmatter": {
|
|
1790
|
+
"name": "sfnext-scapi",
|
|
1791
|
+
"description": "Use and extend SCAPI clients in a Storefront Next project: createApiClients, the `@/scapi` type barrel, typing `c_*` custom attributes by overriding a built-in client, and adding your own custom API end to end with `b2c sfnext scapi` (add, available, list, remove). Use for \"clients.shopperProducts\", \"c_ attribute is not typed\", \"sfnext scapi add\", \"add custom API to the storefront\", src/scapi/ generated files, custom-clients.ts, calling a loyalty/notify-style custom endpoint from a loader or action, useScapiFetcher, personalized=none for custom clients, or 404 from a custom endpoint. Do not use for writing the cartridge/schema.yaml itself (use `b2c:b2c-custom-api-development`), endpoint registration status (use `b2c-cli:b2c-scapi-custom`), loader/caching strategy (use `storefront-next:sfnext-data-fetching`), or login/session code (use `storefront-next:sfnext-authentication`)."
|
|
1792
|
+
},
|
|
1793
|
+
"source": "skills/storefront-next/skills/sfnext-scapi/SKILL.md",
|
|
1794
|
+
"headings": "Worked Example: the shipped `sfnext-notify` custom API | Storefront Next SCAPI Clients and Custom APIs | The CLI surface | What gets generated | Import rule | Use clients in loaders and actions | End-to-end: a new custom API | Non-personalized caching | Pitfalls | Related Skills",
|
|
1795
|
+
"files": [
|
|
1796
|
+
{
|
|
1797
|
+
"path": "references/WORKED-EXAMPLE.md",
|
|
1798
|
+
"bytes": 2172,
|
|
1799
|
+
"digest": "sha256:f852a9c1f6e915def30d8b7ffdb337dff8e8bcb5062faf4cf6f8bf083749c97b"
|
|
1800
|
+
},
|
|
1801
|
+
{
|
|
1802
|
+
"path": "SKILL.md",
|
|
1803
|
+
"bytes": 9802,
|
|
1804
|
+
"digest": "sha256:19e3aca66aa64cb58c650b3c3e97c092e01f829832f30095a5dfcbfb803cf66a"
|
|
1805
|
+
}
|
|
1806
|
+
]
|
|
1807
|
+
},
|
|
1808
|
+
{
|
|
1809
|
+
"id": "storefront-next/sfnext-security",
|
|
1810
|
+
"collection": "storefront-next",
|
|
1811
|
+
"title": "sfnext-security",
|
|
1812
|
+
"description": "Configure Storefront Next security response headers, Content Security Policy (CSP), CSP contributors, Cloudflare Turnstile bot protection, and the shared cookie domain. Use for \"Refused to load the script/connect/image\" CSP violations, adding a third-party origin, app.security.headers, defaultCspDirectives, csp reportOnly rollout, writing a CSP contributor under src/middlewares/csp-contributors, HSTS or Permissions-Policy, Turnstile widget or enforceTurnstile, TURNSTILE_SECRET_KEYS, log-only rollout, or app.cookies.domain across subdomains. Do not use for auth tokens, cookie names or login flows (use `storefront-next:sfnext-authentication`), SFRA proxy routing (use `storefront-next:sfnext-hybrid-storefronts`), or consent banners and tracking (use `storefront-next:sfnext-analytics-consent`).",
|
|
1813
|
+
"entrypoint": "SKILL.md",
|
|
1814
|
+
"frontmatter": {
|
|
1815
|
+
"name": "sfnext-security",
|
|
1816
|
+
"description": "Configure Storefront Next security response headers, Content Security Policy (CSP), CSP contributors, Cloudflare Turnstile bot protection, and the shared cookie domain. Use for \"Refused to load the script/connect/image\" CSP violations, adding a third-party origin, app.security.headers, defaultCspDirectives, csp reportOnly rollout, writing a CSP contributor under src/middlewares/csp-contributors, HSTS or Permissions-Policy, Turnstile widget or enforceTurnstile, TURNSTILE_SECRET_KEYS, log-only rollout, or app.cookies.domain across subdomains. Do not use for auth tokens, cookie names or login flows (use `storefront-next:sfnext-authentication`), SFRA proxy routing (use `storefront-next:sfnext-hybrid-storefronts`), or consent banners and tracking (use `storefront-next:sfnext-analytics-consent`)."
|
|
1817
|
+
},
|
|
1818
|
+
"source": "skills/storefront-next/skills/sfnext-security/SKILL.md",
|
|
1819
|
+
"headings": "Cookie domain reference | Resolution order | Business Manager match | Verify | Rollout | Turnstile reference | Modules | Enforcement points | Fail-open vs fail-closed | Verification mode | Cloudflare test keys (local development) | Manual checks | Storefront Next Security | Default headers | Allow a new third-party origin | Roll out or relax safely | CSP contributors | Turnstile bot protection | Cookie domain | Pitfalls | Related Skills",
|
|
1820
|
+
"files": [
|
|
1821
|
+
{
|
|
1822
|
+
"path": "references/COOKIE-DOMAIN.md",
|
|
1823
|
+
"bytes": 1608,
|
|
1824
|
+
"digest": "sha256:5b1d3ee402eb904192d9fd1f3d5952c357369b3aa1477c63660c006ab896111e"
|
|
1825
|
+
},
|
|
1826
|
+
{
|
|
1827
|
+
"path": "references/TURNSTILE.md",
|
|
1828
|
+
"bytes": 2635,
|
|
1829
|
+
"digest": "sha256:cddcdd2111a579e565972bf1ce1679a0b0b4d7f2ac36cae1edc29fc1ee8b186b"
|
|
1250
1830
|
},
|
|
1251
1831
|
{
|
|
1252
1832
|
"path": "SKILL.md",
|
|
1253
|
-
"bytes":
|
|
1833
|
+
"bytes": 8964,
|
|
1834
|
+
"digest": "sha256:a18a725bc862f2169dc0010807c4356454033a72ced2710cbf344b4318760234"
|
|
1254
1835
|
}
|
|
1255
1836
|
]
|
|
1256
1837
|
},
|
|
1257
1838
|
{
|
|
1258
|
-
"id": "storefront-next/sfnext-
|
|
1839
|
+
"id": "storefront-next/sfnext-seo",
|
|
1259
1840
|
"collection": "storefront-next",
|
|
1260
|
-
"title": "sfnext-
|
|
1261
|
-
"description": "
|
|
1841
|
+
"title": "sfnext-seo",
|
|
1842
|
+
"description": "Storefront Next SEO and AEO/GEO: the SeoMeta component (title, description, noIndex, Open Graph, X cards), JsonLd structured data, canonical URLs and the query-parameter allowlist, hreflang, configurable product/category URLs via url.seoRoutes, semantic URL builders (createProductUrl, createCategoryUrl, useSeoUrlContext), redirectToCanonicalPath, crawler rendering and pagination, and how multi-domain and base path affect generated URLs. Use when adding meta tags or JSON-LD to a route, enabling or changing seoRoutes, fixing duplicate or wrong canonical or og:url URLs, or when a build fails for a missing site in seoRoutes. Do not use for route file naming (use `storefront-next:sfnext-routing`), site/locale config in general (use `storefront-next:sfnext-configuration`), or translations (use `storefront-next:sfnext-i18n`).",
|
|
1262
1843
|
"entrypoint": "SKILL.md",
|
|
1263
|
-
"
|
|
1264
|
-
|
|
1844
|
+
"frontmatter": {
|
|
1845
|
+
"name": "sfnext-seo",
|
|
1846
|
+
"description": "Storefront Next SEO and AEO/GEO: the SeoMeta component (title, description, noIndex, Open Graph, X cards), JsonLd structured data, canonical URLs and the query-parameter allowlist, hreflang, configurable product/category URLs via url.seoRoutes, semantic URL builders (createProductUrl, createCategoryUrl, useSeoUrlContext), redirectToCanonicalPath, crawler rendering and pagination, and how multi-domain and base path affect generated URLs. Use when adding meta tags or JSON-LD to a route, enabling or changing seoRoutes, fixing duplicate or wrong canonical or og:url URLs, or when a build fails for a missing site in seoRoutes. Do not use for route file naming (use `storefront-next:sfnext-routing`), site/locale config in general (use `storefront-next:sfnext-configuration`), or translations (use `storefront-next:sfnext-i18n`)."
|
|
1847
|
+
},
|
|
1848
|
+
"source": "skills/storefront-next/skills/sfnext-seo/SKILL.md",
|
|
1849
|
+
"headings": "Multi-domain and base path effects on URLs | Multiple domains, one environment | Base path | Adopting url.seoRoutes | What it changes | Checklist before enabling | Avoid breaking indexed URLs | Hybrid deployments | Verifying | Storefront Next SEO | Page metadata: SeoMeta | Structured data: JsonLd | One URL everywhere | Configurable URLs: url.seoRoutes | Multi-domain and base path | Crawlers | Related Skills",
|
|
1265
1850
|
"files": [
|
|
1266
1851
|
{
|
|
1267
|
-
"path": "references/
|
|
1268
|
-
"bytes":
|
|
1852
|
+
"path": "references/MULTI-DOMAIN-BASE-PATH.md",
|
|
1853
|
+
"bytes": 1237,
|
|
1854
|
+
"digest": "sha256:bc4109c782bd4db9b967e60121028c74bec866f75ea94b7ee2b3471f23508399"
|
|
1855
|
+
},
|
|
1856
|
+
{
|
|
1857
|
+
"path": "references/SEO-ROUTES.md",
|
|
1858
|
+
"bytes": 1971,
|
|
1859
|
+
"digest": "sha256:44284f0267d0c19b1679a680c2d2f3213b2aef6b6f96409b50bedb0985b1ad85"
|
|
1269
1860
|
},
|
|
1270
1861
|
{
|
|
1271
1862
|
"path": "SKILL.md",
|
|
1272
|
-
"bytes":
|
|
1863
|
+
"bytes": 5499,
|
|
1864
|
+
"digest": "sha256:c13d2d57d35fa8007772b8eb48ebb8e49ee52764609ba7e5b287fd1253a29c48"
|
|
1273
1865
|
}
|
|
1274
1866
|
]
|
|
1275
1867
|
},
|
|
@@ -1277,14 +1869,24 @@
|
|
|
1277
1869
|
"id": "storefront-next/sfnext-state-management",
|
|
1278
1870
|
"collection": "storefront-next",
|
|
1279
1871
|
"title": "sfnext-state-management",
|
|
1280
|
-
"description": "
|
|
1872
|
+
"description": "Choose the right state mechanism in a Storefront Next project: loader and action data, useRouteLoaderData, URL state with useSearchParams, cookies and sessions, optimistic UI (fetcher.formData, useNavigation, useOptimistic), React context providers (BasketProvider, AuthProvider, wishlist, product-context), and small useSyncExternalStore stores such as the mini-cart store. Use for \"where should this state live\", \"useBasket\", \"useAuth\", \"share state between components\", \"optimistic add to cart\", \"global client state\", \"hydration mismatch from a store\", or \"do I need Zustand\". Do not use for fetching or mutating data (use `storefront-next:sfnext-data-fetching`), controlling loader re-runs (use `storefront-next:sfnext-revalidation`), or login flows and sessions (use `storefront-next:sfnext-authentication`).",
|
|
1281
1873
|
"entrypoint": "SKILL.md",
|
|
1874
|
+
"frontmatter": {
|
|
1875
|
+
"name": "sfnext-state-management",
|
|
1876
|
+
"description": "Choose the right state mechanism in a Storefront Next project: loader and action data, useRouteLoaderData, URL state with useSearchParams, cookies and sessions, optimistic UI (fetcher.formData, useNavigation, useOptimistic), React context providers (BasketProvider, AuthProvider, wishlist, product-context), and small useSyncExternalStore stores such as the mini-cart store. Use for \"where should this state live\", \"useBasket\", \"useAuth\", \"share state between components\", \"optimistic add to cart\", \"global client state\", \"hydration mismatch from a store\", or \"do I need Zustand\". Do not use for fetching or mutating data (use `storefront-next:sfnext-data-fetching`), controlling loader re-runs (use `storefront-next:sfnext-revalidation`), or login flows and sessions (use `storefront-next:sfnext-authentication`)."
|
|
1877
|
+
},
|
|
1282
1878
|
"source": "skills/storefront-next/skills/sfnext-state-management/SKILL.md",
|
|
1283
|
-
"headings": "State
|
|
1879
|
+
"headings": "State patterns and anti-patterns | Render scope should not exceed data-change scope | Provider value stability | Manager components | Server versus client snapshots | URL state | Cookies | Derived state | Testing state | Storefront Next State Management | Decision table | Existing providers and stores | Optimistic UI | A small external store | Context providers | Common mistakes | Finding more | Related Skills",
|
|
1284
1880
|
"files": [
|
|
1881
|
+
{
|
|
1882
|
+
"path": "references/PATTERNS.md",
|
|
1883
|
+
"bytes": 2778,
|
|
1884
|
+
"digest": "sha256:1b87bdb3249f2c0a6541f311b454576559e299c8a461344df93793339d68595f"
|
|
1885
|
+
},
|
|
1285
1886
|
{
|
|
1286
1887
|
"path": "SKILL.md",
|
|
1287
|
-
"bytes":
|
|
1888
|
+
"bytes": 7077,
|
|
1889
|
+
"digest": "sha256:3d08526f70352815d3fbc9cca4562d000bdf9b916a73e81797a6bebd87dafb2d"
|
|
1288
1890
|
}
|
|
1289
1891
|
]
|
|
1290
1892
|
},
|
|
@@ -1292,133 +1894,208 @@
|
|
|
1292
1894
|
"id": "storefront-next/sfnext-testing",
|
|
1293
1895
|
"collection": "storefront-next",
|
|
1294
1896
|
"title": "sfnext-testing",
|
|
1295
|
-
"description": "Write tests for Storefront Next
|
|
1897
|
+
"description": "Write and run tests for a Storefront Next project: Vitest + React Testing Library unit tests, route loader/action tests (createLoaderArgs, createTestContext), Storybook stories with snapshot, interaction (play) and a11y runs, and a pointer to the CodeceptJS/Playwright e2e suite. Use for \"write a test for this component/loader\", \"add a story\", pnpm test, pnpm storybook:test --type=snapshot|interaction|a11y, coverage thresholds, routeLoaderData / scapiMock / mockRoutes story parameters, MSW mocking, fixtures in @/components/__mocks__, failing snapshot updates, or pnpm e2e. Do not use for lint, typecheck, format, bundle-size or Lighthouse gates (use `storefront-next:sfnext-quality-gates`), accessibility rules and fixes (use `storefront-next:sfnext-accessibility`), or translations (use `storefront-next:sfnext-i18n`).",
|
|
1296
1898
|
"entrypoint": "SKILL.md",
|
|
1899
|
+
"frontmatter": {
|
|
1900
|
+
"name": "sfnext-testing",
|
|
1901
|
+
"description": "Write and run tests for a Storefront Next project: Vitest + React Testing Library unit tests, route loader/action tests (createLoaderArgs, createTestContext), Storybook stories with snapshot, interaction (play) and a11y runs, and a pointer to the CodeceptJS/Playwright e2e suite. Use for \"write a test for this component/loader\", \"add a story\", pnpm test, pnpm storybook:test --type=snapshot|interaction|a11y, coverage thresholds, routeLoaderData / scapiMock / mockRoutes story parameters, MSW mocking, fixtures in @/components/__mocks__, failing snapshot updates, or pnpm e2e. Do not use for lint, typecheck, format, bundle-size or Lighthouse gates (use `storefront-next:sfnext-quality-gates`), accessibility rules and fixes (use `storefront-next:sfnext-accessibility`), or translations (use `storefront-next:sfnext-i18n`)."
|
|
1902
|
+
},
|
|
1297
1903
|
"source": "skills/storefront-next/skills/sfnext-testing/SKILL.md",
|
|
1298
|
-
"headings": "
|
|
1904
|
+
"headings": "End-to-end tests | Setup | Run | Keep in mind | Storybook patterns | Principles | Decorator stack | Story parameters | Titles and sidebar | Naming and layout | argTypes | play() functions | Accessibility in stories | Story coverage | Anti-patterns | Unit and route tests | Environment (`vitest.config.ts`, `vitest.setup.ts`) | Helper inventory | Loader/action pattern | MSW | Hooks and components | i18n in tests | Testing Storefront Next | Commands | Unit test | Route loader / action test | Stories | End to end | Pitfalls | Related Skills",
|
|
1299
1905
|
"files": [
|
|
1906
|
+
{
|
|
1907
|
+
"path": "references/E2E.md",
|
|
1908
|
+
"bytes": 1980,
|
|
1909
|
+
"digest": "sha256:b5c338fe32c6320b0ee3a247bc6247d85ff61d494d68fea16cbb6679ce6525b8"
|
|
1910
|
+
},
|
|
1300
1911
|
{
|
|
1301
1912
|
"path": "references/STORYBOOK-PATTERNS.md",
|
|
1302
|
-
"bytes":
|
|
1913
|
+
"bytes": 5694,
|
|
1914
|
+
"digest": "sha256:09538ab3d36dd2c1e60b116ff35087883a4a68cc3b1e4227bbf4f5a7d92bf222"
|
|
1915
|
+
},
|
|
1916
|
+
{
|
|
1917
|
+
"path": "references/UNIT-AND-ROUTE-TESTS.md",
|
|
1918
|
+
"bytes": 3916,
|
|
1919
|
+
"digest": "sha256:dfb980474bdc5572171c77738dd3384de534220db4b4c3f51365d2edd3028381"
|
|
1303
1920
|
},
|
|
1304
1921
|
{
|
|
1305
1922
|
"path": "SKILL.md",
|
|
1306
|
-
"bytes":
|
|
1923
|
+
"bytes": 8366,
|
|
1924
|
+
"digest": "sha256:d3fdbb661cdb48298f1fe97b8d988d3ad1bcc4d71d4b045318d05694d9303b56"
|
|
1307
1925
|
}
|
|
1308
1926
|
]
|
|
1309
1927
|
},
|
|
1310
1928
|
{
|
|
1311
|
-
"id": "
|
|
1312
|
-
"collection": "
|
|
1313
|
-
"title": "
|
|
1314
|
-
"description": "
|
|
1929
|
+
"id": "storefront-next/sfnext-theming",
|
|
1930
|
+
"collection": "storefront-next",
|
|
1931
|
+
"title": "sfnext-theming",
|
|
1932
|
+
"description": "Re-brand and re-skin a Storefront Next storefront: change the color palette, corner radius and shadows (shape tokens), header and footer colors, typography and web fonts, logo, favicon, hero scrims, and brand copy, with WCAG contrast checks. Use when asked to rebrand or restyle the storefront, change the primary color, swap the font, make the header dark, make cards rounded or flat, replace the logo, edit src/theme, core.css, header.css, brand.css, tailwind.css, base.css, or src/lib/fonts.ts, or verify a theme change in the Design System Storybook stories. Do not use for building or styling an individual component (use `storefront-next:sfnext-components`), Figma kit sync (use `storefront-next-figma:sfnext-create-figma-kit`), or site configuration (use `storefront-next:sfnext-configuration`).",
|
|
1315
1933
|
"entrypoint": "SKILL.md",
|
|
1316
|
-
"
|
|
1317
|
-
|
|
1934
|
+
"frontmatter": {
|
|
1935
|
+
"name": "sfnext-theming",
|
|
1936
|
+
"description": "Re-brand and re-skin a Storefront Next storefront: change the color palette, corner radius and shadows (shape tokens), header and footer colors, typography and web fonts, logo, favicon, hero scrims, and brand copy, with WCAG contrast checks. Use when asked to rebrand or restyle the storefront, change the primary color, swap the font, make the header dark, make cards rounded or flat, replace the logo, edit src/theme, core.css, header.css, brand.css, tailwind.css, base.css, or src/lib/fonts.ts, or verify a theme change in the Design System Storybook stories. Do not use for building or styling an individual component (use `storefront-next:sfnext-components`), Figma kit sync (use `storefront-next-figma:sfnext-create-figma-kit`), or site configuration (use `storefront-next:sfnext-configuration`)."
|
|
1937
|
+
},
|
|
1938
|
+
"source": "skills/storefront-next/skills/sfnext-theming/SKILL.md",
|
|
1939
|
+
"headings": "Rebrand Checklist | Common mistakes | Theming a Storefront Next Storefront | Where things live | Workflow | 1. Read the current theme | 2. Palette | 3. Header, footer, and newsletter chrome | 4. Shape | 5. Typography | 6. Assets and copy | 7. Dark mode | 8. Verify | Guardrails | Design handoff | Related Skills",
|
|
1318
1940
|
"files": [
|
|
1941
|
+
{
|
|
1942
|
+
"path": "references/REBRAND-CHECKLIST.md",
|
|
1943
|
+
"bytes": 2019,
|
|
1944
|
+
"digest": "sha256:42c9c65f6ee62b0e6cf5b5014d86f5972c262b14b0d0c1e08b20b75a68f98720"
|
|
1945
|
+
},
|
|
1319
1946
|
{
|
|
1320
1947
|
"path": "SKILL.md",
|
|
1321
|
-
"bytes":
|
|
1948
|
+
"bytes": 7981,
|
|
1949
|
+
"digest": "sha256:2e67b05dfe53c60a38bb10b2590c7c624fc6b9177c255d7bdc26d78e663e1dec"
|
|
1950
|
+
}
|
|
1951
|
+
]
|
|
1952
|
+
},
|
|
1953
|
+
{
|
|
1954
|
+
"id": "mcp/b2c-mcp-cip",
|
|
1955
|
+
"collection": "mcp",
|
|
1956
|
+
"title": "b2c-mcp-cip",
|
|
1957
|
+
"description": "Required before cip_query. Discover and run CIP reports or analytics SQL for sales, merchandising, and technical operations; resolve warehouse access, bound results, and interpret site/date scope.",
|
|
1958
|
+
"entrypoint": "SKILL.md",
|
|
1959
|
+
"frontmatter": {
|
|
1960
|
+
"name": "b2c-mcp-cip",
|
|
1961
|
+
"description": "Required before cip_query. Discover and run CIP reports or analytics SQL for sales, merchandising, and technical operations; resolve warehouse access, bound results, and interpret site/date scope."
|
|
1962
|
+
},
|
|
1963
|
+
"source": "packages/b2c-dx-mcp/skills/b2c-mcp-cip/SKILL.md",
|
|
1964
|
+
"headings": "CIP analytics | Choose and discover | Configuration and access | Query and interpret",
|
|
1965
|
+
"files": [
|
|
1966
|
+
{
|
|
1967
|
+
"path": "SKILL.md",
|
|
1968
|
+
"bytes": 5780,
|
|
1969
|
+
"digest": "sha256:d22e54166ca101e095b395c9f56ae8a17bccedb105e43a62c42eb4a115b401ce"
|
|
1322
1970
|
}
|
|
1323
1971
|
],
|
|
1324
1972
|
"featured": true
|
|
1325
1973
|
},
|
|
1326
1974
|
{
|
|
1327
|
-
"id": "mcp/
|
|
1975
|
+
"id": "mcp/b2c-mcp-config",
|
|
1328
1976
|
"collection": "mcp",
|
|
1329
|
-
"title": "
|
|
1330
|
-
"description": "
|
|
1331
|
-
"entrypoint": "SKILL.md",
|
|
1332
|
-
"
|
|
1333
|
-
|
|
1977
|
+
"title": "b2c-mcp-config",
|
|
1978
|
+
"description": "Resolve B2C MCP configuration, authentication, and external access grants with masked inspection. Use for setup, credential, or wrong-target issues; routine config_inspect needs no skill read.",
|
|
1979
|
+
"entrypoint": "SKILL.md",
|
|
1980
|
+
"frontmatter": {
|
|
1981
|
+
"name": "b2c-mcp-config",
|
|
1982
|
+
"description": "Resolve B2C MCP configuration, authentication, and external access grants with masked inspection. Use for setup, credential, or wrong-target issues; routine config_inspect needs no skill read."
|
|
1983
|
+
},
|
|
1984
|
+
"source": "packages/b2c-dx-mcp/skills/b2c-mcp-config/SKILL.md",
|
|
1985
|
+
"headings": "MCP Configuration | Inspect resolved values | Where configuration comes from | Setup and access | CLI, when requested | Further reading",
|
|
1334
1986
|
"files": [
|
|
1335
1987
|
{
|
|
1336
1988
|
"path": "SKILL.md",
|
|
1337
|
-
"bytes":
|
|
1989
|
+
"bytes": 5307,
|
|
1990
|
+
"digest": "sha256:637526b179ec1d284bb094df3d1537e1e415b3392260335479ed7052f99b170b"
|
|
1338
1991
|
}
|
|
1339
1992
|
],
|
|
1340
1993
|
"featured": true
|
|
1341
1994
|
},
|
|
1342
1995
|
{
|
|
1343
|
-
"id": "mcp/debugger",
|
|
1996
|
+
"id": "mcp/b2c-mcp-debugger",
|
|
1344
1997
|
"collection": "mcp",
|
|
1345
|
-
"title": "
|
|
1346
|
-
"description": "
|
|
1347
|
-
"entrypoint": "SKILL.md",
|
|
1348
|
-
"
|
|
1998
|
+
"title": "b2c-mcp-debugger",
|
|
1999
|
+
"description": "Debug B2C Commerce server-side scripts with the MCP debugger tools, using bounded breakpoint capture, request triggering, state inspection, and reliable session cleanup.",
|
|
2000
|
+
"entrypoint": "SKILL.md",
|
|
2001
|
+
"frontmatter": {
|
|
2002
|
+
"name": "b2c-mcp-debugger",
|
|
2003
|
+
"description": "Debug B2C Commerce server-side scripts with the MCP debugger tools, using bounded breakpoint capture, request triggering, state inspection, and reliable session cleanup."
|
|
2004
|
+
},
|
|
2005
|
+
"source": "packages/b2c-dx-mcp/skills/b2c-mcp-debugger/SKILL.md",
|
|
1349
2006
|
"headings": "MCP Debugger Usage | Prerequisites | Capture and cleanup | Stepping | Recovery | CLI or IDE, when requested",
|
|
1350
2007
|
"files": [
|
|
1351
2008
|
{
|
|
1352
2009
|
"path": "SKILL.md",
|
|
1353
|
-
"bytes":
|
|
2010
|
+
"bytes": 4280,
|
|
2011
|
+
"digest": "sha256:3e1abb826568b6fbc62a1ed391c0fc4f29d5064ea1a2f6bd1a434c2871313d22"
|
|
1354
2012
|
}
|
|
1355
2013
|
],
|
|
1356
2014
|
"featured": true
|
|
1357
2015
|
},
|
|
1358
2016
|
{
|
|
1359
|
-
"id": "mcp/scapi",
|
|
2017
|
+
"id": "mcp/b2c-mcp-scapi",
|
|
1360
2018
|
"collection": "mcp",
|
|
1361
|
-
"title": "
|
|
1362
|
-
"description": "Discover standard and live custom SCAPI contracts, compose Admin requests, and verify changes
|
|
2019
|
+
"title": "b2c-mcp-scapi",
|
|
2020
|
+
"description": "Required before scapi_search or scapi_execute. Discover standard and live custom SCAPI contracts, compose Admin and Shopper requests, and verify changes under configured authentication and Safety Mode.",
|
|
1363
2021
|
"entrypoint": "SKILL.md",
|
|
1364
|
-
"
|
|
1365
|
-
|
|
2022
|
+
"frontmatter": {
|
|
2023
|
+
"name": "b2c-mcp-scapi",
|
|
2024
|
+
"description": "Required before scapi_search or scapi_execute. Discover standard and live custom SCAPI contracts, compose Admin and Shopper requests, and verify changes under configured authentication and Safety Mode."
|
|
2025
|
+
},
|
|
2026
|
+
"source": "packages/b2c-dx-mcp/skills/b2c-mcp-scapi/SKILL.md",
|
|
2027
|
+
"headings": "Custom Admin APIs | Live custom property definitions | Job review and investigation | Basic product creation | Join campaign assignments to promotions | Save a reusable workflow | Built-in SCAPI snippets | builtin/create-product | builtin/campaign-promotions | builtin/failed-job-triage | builtin/job-execution-review | builtin/job-execution-inspect | builtin/code-version-inspect | builtin/site-cartridge-inspect | Token exports for external clients | Account Manager | SLAS | Output and failures | SCAPI Code Mode | Code objects | Discover | Task map | Tenant custom properties and APIs | Authentication | Compose and verify | Confirmation and cancellation | Reusable workflows",
|
|
1366
2028
|
"files": [
|
|
1367
2029
|
{
|
|
1368
2030
|
"path": "references/custom-apis.md",
|
|
1369
|
-
"bytes": 2734
|
|
2031
|
+
"bytes": 2734,
|
|
2032
|
+
"digest": "sha256:86b1e174c730639ecd8b0809038c735ad81616eeab4b52be5e1b3462c0f56363"
|
|
1370
2033
|
},
|
|
1371
2034
|
{
|
|
1372
2035
|
"path": "references/custom-properties.md",
|
|
1373
|
-
"bytes": 1845
|
|
2036
|
+
"bytes": 1845,
|
|
2037
|
+
"digest": "sha256:bc0093b33efd2f4a27167ad66164ae6b0fc9ef776fd51055256b22a153553bb8"
|
|
1374
2038
|
},
|
|
1375
2039
|
{
|
|
1376
2040
|
"path": "references/jobs.md",
|
|
1377
|
-
"bytes": 1873
|
|
2041
|
+
"bytes": 1873,
|
|
2042
|
+
"digest": "sha256:df64ba155b82470c6bc94160ba9f3f518c6393ec096740033046160a0f46d61b"
|
|
1378
2043
|
},
|
|
1379
2044
|
{
|
|
1380
2045
|
"path": "references/products.md",
|
|
1381
|
-
"bytes": 2355
|
|
2046
|
+
"bytes": 2355,
|
|
2047
|
+
"digest": "sha256:0520e9106ad3dc96ff20c8277ab54fc3ee2e95693cb8b21421734f130a36d5dd"
|
|
1382
2048
|
},
|
|
1383
2049
|
{
|
|
1384
2050
|
"path": "references/promotions.md",
|
|
1385
|
-
"bytes": 1065
|
|
2051
|
+
"bytes": 1065,
|
|
2052
|
+
"digest": "sha256:17b5ecb979f47c651511ad8c5f5ab20e19064da4cf54e676b0e4869e735ae293"
|
|
1386
2053
|
},
|
|
1387
2054
|
{
|
|
1388
2055
|
"path": "references/saving.md",
|
|
1389
|
-
"bytes": 739
|
|
2056
|
+
"bytes": 739,
|
|
2057
|
+
"digest": "sha256:2c8ce36956f1676a13137ca16d72c6d6f1eed3209bc44a9334987be45d4c8f9e"
|
|
1390
2058
|
},
|
|
1391
2059
|
{
|
|
1392
2060
|
"path": "references/snippets.md",
|
|
1393
|
-
"bytes": 3745
|
|
2061
|
+
"bytes": 3745,
|
|
2062
|
+
"digest": "sha256:86408606e6250a365e327fe43c8d577fc6dc1a48234c55adb0da9b288e5f07b2"
|
|
1394
2063
|
},
|
|
1395
2064
|
{
|
|
1396
2065
|
"path": "references/tokens.md",
|
|
1397
|
-
"bytes": 2764
|
|
2066
|
+
"bytes": 2764,
|
|
2067
|
+
"digest": "sha256:fc9f783193a9de6b4b5e00d3fd2ab92c08e94901eaf619ac2221876c3f379165"
|
|
1398
2068
|
},
|
|
1399
2069
|
{
|
|
1400
2070
|
"path": "SKILL.md",
|
|
1401
|
-
"bytes":
|
|
2071
|
+
"bytes": 16721,
|
|
2072
|
+
"digest": "sha256:511e0849a7471a179e00c1e69bf73c6575089246b61ef36aa805e236cbaa367f"
|
|
1402
2073
|
}
|
|
1403
2074
|
],
|
|
1404
2075
|
"featured": true
|
|
1405
2076
|
},
|
|
1406
2077
|
{
|
|
1407
|
-
"id": "mcp/server",
|
|
2078
|
+
"id": "mcp/b2c-mcp-server",
|
|
1408
2079
|
"collection": "mcp",
|
|
1409
|
-
"title": "server",
|
|
1410
|
-
"description": "B2C MCP
|
|
2080
|
+
"title": "b2c-mcp-server",
|
|
2081
|
+
"description": "Index and setup for the B2C Commerce MCP server, covering toolset selection, tool choice by task, and the skill catalog. Use to enable tools, pick the right tool, or find the skill that covers a B2C task.",
|
|
1411
2082
|
"entrypoint": "SKILL.md",
|
|
1412
|
-
"
|
|
1413
|
-
|
|
2083
|
+
"frontmatter": {
|
|
2084
|
+
"name": "b2c-mcp-server",
|
|
2085
|
+
"description": "Index and setup for the B2C Commerce MCP server, covering toolset selection, tool choice by task, and the skill catalog. Use to enable tools, pick the right tool, or find the skill that covers a B2C task."
|
|
2086
|
+
},
|
|
2087
|
+
"source": "packages/b2c-dx-mcp/skills/b2c-mcp-server/SKILL.md",
|
|
2088
|
+
"headings": "Instance files and cartridge uploads | B2C MCP Server | Skill index | Server configuration and tool availability | Tool choice and project configuration | Loading skills | Setup references",
|
|
1414
2089
|
"files": [
|
|
1415
2090
|
{
|
|
1416
2091
|
"path": "references/files.md",
|
|
1417
|
-
"bytes": 2373
|
|
2092
|
+
"bytes": 2373,
|
|
2093
|
+
"digest": "sha256:f519924a178eb39d255666923c88fa88730d0eb247f7b05d66eaa33500dab3a6"
|
|
1418
2094
|
},
|
|
1419
2095
|
{
|
|
1420
2096
|
"path": "SKILL.md",
|
|
1421
|
-
"bytes":
|
|
2097
|
+
"bytes": 7477,
|
|
2098
|
+
"digest": "sha256:ca3389e9cee9de2c90743ab06c7029ab680d5767ca208965f3ce94b43ab15ba0"
|
|
1422
2099
|
}
|
|
1423
2100
|
],
|
|
1424
2101
|
"featured": true
|