sf-industry-cme-epc-model
Salesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use sf-industry-commoncore-* skills), implementing Apex business logic (use sf-apex), or troubleshooting deployment pipelines (use sf-deploy).
What this skill does
# sf-industry-cme-epc-model: CME EPC Product and Offer Modeling Expert Salesforce Industries CME EPC modeler for creating Product2-based catalog entries, assigning configurable attributes, and building offer bundles through Product Child Item relationships. This skill is optimized for DataPack-style metadata authoring. Use the canonical template set in `assets/`: - `assets/product2-offer-template.json` - `assets/attribute-assignment-template.json` - `assets/product-child-item-template.json` - `assets/pricebook-entries-template.json` - `assets/price-list-entries-template.json` - `assets/object-field-attributes-template.json` - `assets/orchestration-scenarios-template.json` - `assets/decomposition-relationships-template.json` - `assets/compiled-attribute-overrides-template.json` - `assets/override-definitions-template.json` - `assets/parent-keys-template.json` Additional packaged examples are available under `assets/examples/` with one folder per bundle/simple-offer sample. The root `assets/` folder contains the canonical baseline template set for bundle authoring. --- ## Quick Reference - **Primary object**: `Product2` (EPC product and offer records) - **Attribute data**: `%vlocity_namespace%__AttributeMetadata__c`, `%vlocity_namespace%__AttributeDefaultValues__c`, and `%vlocity_namespace%__AttributeAssignment__c` - **Offer bundle composition**: `%vlocity_namespace%__ProductChildItem__c` - **Offer marker**: `%vlocity_namespace%__SpecificationType__c = "Offer"` and `%vlocity_namespace%__SpecificationSubType__c = "Bundle"` - **Companion bundle artifacts**: pricebook entries, price list entries, object field attributes, orchestration scenarios, decomposition relationships, compiled attribute overrides, override definitions, and parent keys **Scoring**: 120 points across 6 categories. **Thresholds**: `>= 95` Deploy-ready | `70-94` Needs review | `< 70` Block and fix. --- ## Asset Template Set Use the root `assets/` templates when creating a bundle payload: - `product2-offer-template.json` - `attribute-assignment-template.json` - `product-child-item-template.json` - `pricebook-entries-template.json` - `price-list-entries-template.json` - `object-field-attributes-template.json` - `orchestration-scenarios-template.json` - `decomposition-relationships-template.json` - `compiled-attribute-overrides-template.json` - `override-definitions-template.json` - `parent-keys-template.json` For additional real-world variants, use the per-example folders under `assets/examples/`. --- ## Core Responsibilities 1. **Product Creation**: Create EPC Product2 records with consistent naming, lifecycle dates, status, and classification fields. 2. **Attribute Modeling**: Define category-based attributes, defaults, valid value sets, display sequences, and required flags. 3. **Offer Bundle Modeling**: Compose offers with child products using `%vlocity_namespace%__ProductChildItem__c` records and clear quantity rules. 4. **Companion Metadata Generation**: Generate and align all related bundle files (pricing, object field attributes, orchestration/decomposition, overrides, parent keys) from the same offer baseline. 5. **DataPack Consistency**: Keep record source keys, global keys, lookup objects, and namespace fields internally consistent for deployment. --- ## Invocation Rules (Mandatory) Route to this skill whenever the prompt intent matches either of these: 1. **Create a product bundle**: - User asks to create/build/generate/model an EPC offer bundle. - User asks for Product2 offer setup with Product Child Items. - User asks to generate bundle DataPack JSON artifacts from templates/examples. 2. **Score or review an existing product bundle**: - User asks to score/assess/validate/audit an existing EPC bundle. - User asks to apply the 120-point rubric to existing Product2/PCI/attribute payloads. - User asks for risk findings, quality gaps, or fix recommendations on bundle metadata. **Instruction priority**: treat these two intents as direct triggers for `sf-industry-cme-epc-model`, even if the prompt is brief and does not mention EPC by name. --- ## Workflow (Create/Review) ### Phase 1: Identify Catalog Intent Ask for: - Product type: **spec product** or **offer bundle** - Domain taxonomy: Family, Type/SubType, category path, and channel - Attribute requirements: required/optional, picklist values, default values - Bundle composition: child products, quantity constraints, optional vs required - Target org namespace model: `%vlocity_namespace%`, `vlocity_cmt`, or Core ### Phase 1A: Clarifying Questions for Complete Bundle (Mandatory) Before generating a new offer bundle payload, ask clarifying questions until all required inputs are known. Required clarification checklist: 1. **Offer identity** - What is the offer name and `ProductCode`? - Is this net-new or an update to an existing Product2 offer? 2. **Catalog classification** - What are Family, Type/SubType, and channel/sales context values? - Should `SpecificationType=Offer` and `SpecificationSubType=Bundle` be set now? 3. **Lifecycle and availability** - What are `EffectiveDate` and `SellingStartDate`? - Should `IsActive` and `%vlocity_namespace%__IsOrderable__c` be true at creation time? 4. **Child product composition** - Which child products are included (name/code for each)? - For each child, what are required/optional semantics and sequence order? 5. **Quantity behavior per child** - What are `MinQuantity`, `MaxQuantity`, and default `Quantity`? - Should `%vlocity_namespace%__MinMaxDefaultQty__c` be enforced for each line? 6. **Attribute model** - Which attributes are required vs optional? - What are valid values, defaults, display types, and display sequences? 7. **Pricing and companion artifacts** - Should pricebook and price list entries be generated now? - Should orchestration/decomposition/override/parent-key files be included in the same request? 8. **Namespace and keying** - Which namespace convention should be used (`%vlocity_namespace%`, `vlocity_cmt`, or Core)? - Are there existing global keys/source keys to preserve? If any required checklist item is unanswered, do not generate final bundle files yet; ask focused follow-up questions first. ### Phase 2: Build Product2 Backbone For every new EPC record, define: - `Name` - `ProductCode` (unique, stable, environment-agnostic) - `%vlocity_namespace%__GlobalKey__c` (stable UUID-style key) - `%vlocity_namespace%__SpecificationType__c` and `%vlocity_namespace%__SpecificationSubType__c` - `%vlocity_namespace%__Status__c` and date fields (`EffectiveDate`, `SellingStartDate`) - `IsActive` and `%vlocity_namespace%__IsOrderable__c` Use `assets/product2-offer-template.json` as baseline structure. ### Phase 3: Add Attributes When attributes are required: 1. Populate `%vlocity_namespace%__AttributeMetadata__c` category and `productAttributes` records. 2. Populate `%vlocity_namespace%__AttributeDefaultValues__c` with attribute code to default value mapping. 3. Create `%vlocity_namespace%__AttributeAssignment__c` records with: - category linkage - attribute linkage - UI display type (dropdown, etc.) - valid values and default marker Use `assets/attribute-assignment-template.json` as the assignment baseline. ### Phase 4: Build Offer Bundles For offers: 1. Keep parent `Product2` record as offer (`SpecificationType=Offer`, `SpecificationSubType=Bundle`). 2. Create root `%vlocity_namespace%__ProductChildItem__c` row (`IsRootProductChildItem=true`). 3. Add child rows per component with: - parent and child references - sequence and line number - min/max/default quantity behavior (`MinMaxDefaultQty`, `MinQuantity`, `MaxQuantity`, `Quantity`) 4. Use override rows only when behavior differs from inherited/default behavior. Use `assets/product-child-item-template.json` for child relationship structure. For complete bundle payloads, also align and include: - `
Related in Cloud & DevOps
appbuilder-action-scaffolder
IncludedCreate, implement, deploy, and debug Adobe Runtime actions with consistent layout, validation, and error handling. Use this skill whenever the user needs to add actions to an App Builder project, understand action structure (params, response format, web/raw actions), configure actions in the manifest, use App Builder SDKs (State, Files, Events, database), deploy and invoke actions via CLI, debug action issues, or implement patterns such as webhook receivers, custom event providers, journaling consumers, large payload redirects, action sequence pipelines, and Asset Compute workers. Also trigger when users mention serverless functions in Adobe context, action logging, IMS authentication for actions, or cron-style scheduled actions.
orchestrating-datacloud
IncludedSalesforce Data Cloud product orchestrator for connect→prepare→harmonize→segment→act workflows. Use this skill when the user needs a multi-step Data Cloud pipeline, cross-phase troubleshooting, or data space and data kit management. TRIGGER when: user needs a multi-step Data Cloud pipeline, asks to set up or troubleshoot Data Cloud across phases, manages data spaces or data kits, or wants a cross-phase sf data360 workflow. DO NOT TRIGGER when: work is isolated to a single phase (use the matching phase-specific skill), the task is STDM/session tracing/parquet telemetry (use observing-agentforce), standard CRM SOQL (use querying-soql), or Apex implementation (use generating-apex).
github-project-automation
IncludedAutomate GitHub repository setup with CI/CD workflows, issue templates, Dependabot, and CodeQL security scanning. Includes 12 production-tested workflows and prevents 18 errors: YAML syntax, action pinning, and configuration. Use when: setting up GitHub Actions CI/CD, creating issue/PR templates, enabling Dependabot or CodeQL scanning, deploying to Cloudflare Workers, implementing matrix testing, or troubleshooting YAML indentation, action version pinning, secrets syntax, runner versions, or CodeQL configuration. Keywords: github actions, github workflow, ci/cd, issue templates, pull request templates, dependabot, codeql, security scanning, yaml syntax, github automation, repository setup, workflow templates, github actions matrix, secrets management, branch protection, codeowners, github projects, continuous integration, continuous deployment, workflow syntax error, action version pinning, runner version, github context, yaml indentation error
sf-datacloud
IncludedSalesforce Data Cloud product orchestrator for connect→prepare→harmonize→segment→act workflows. TRIGGER when: user needs a multi-step Data Cloud pipeline, asks to set up or troubleshoot Data Cloud across phases, manages data spaces or data kits, or wants a cross-phase `sf data360` workflow. DO NOT TRIGGER when: work is isolated to a single phase (use the matching sf-datacloud-* skill), the task is STDM/session tracing/parquet telemetry (use sf-ai-agentforce-observability), standard CRM SOQL (use sf-soql), or Apex implementation (use sf-apex).
fabric-cli
IncludedUse this skill for Fabric.so CLI workflows with the `fabric` terminal command: diagnose/install/login, search or browse a Fabric library, save notes/links/files, create folders, ask the Fabric AI assistant, manage tasks/workspaces, generate shell completion, check subscription usage, produce JSON output, and use Fabric as persistent agent memory. Do not use for Microsoft Fabric/Azure/Power BI `fab`, Daniel Miessler's Fabric framework, Python Fabric SSH, Fabric.js, or textile/fashion fabric.
lark
IncludedLark/Feishu CLI skills: lark-cli operations for docs, markdown, sheets, base, calendar, im, mail, task, okr, drive, wiki, slides, whiteboard, apps, approval, attendance, contact, vc, minutes, event. Use when the user needs to operate Lark/Feishu resources via lark-cli, send messages, manage documents, spreadsheets, calendars, tasks, OKRs, deploy web pages, or any Feishu/Lark workspace operations.