/omnistudio-dependencies-analyze
Cross-cutting OmniStudio analysis skill for namespace detection, dependency visualization, and impact analysis across OmniScripts, FlexCards, Integration Procedures, and Data Mappers. TRIGGER when: user asks about OmniStudio dependencies, wants namespace detection (Core vs
$ npx -y skills add forcedotcom/sf-skills --skill omnistudio-dependencies-analyze --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/omnistudio-dependencies-analyze
Context preview
The summary Claude sees to decide when to auto-load this skill.
Cross-cutting OmniStudio analysis skill for namespace detection, dependency visualization, and impact analysis across OmniScripts, FlexCards, Integration Procedures, and Data Mappers. TRIGGER when: user asks about OmniStudio dependencies, wants namespace detection (Core vs
SKILL.md
omnistudio-dependencies-analyze.SKILL.mdname: omnistudio-dependencies-analyze
description: "Cross-cutting OmniStudio analysis skill for namespace detection, dependency visualization, and impact analysis across OmniScripts, FlexCards, Integration Procedures, and Data Mappers. TRIGGER when: user asks about OmniStudio dependencies, wants namespace detection (Core vs vlocity_cmt vs vlocity_ins), needs impact analysis, requests dependency graphs or Mermaid diagrams, or asks which components are affected by a change. DO NOT TRIGGER when: authoring OmniScripts (use omnistudio-omniscript-generate), building FlexCards (use omnistudio-flexcard-generate), creating Integration Procedures (use omnistudio-integration-procedure-generate), or configuring Data Mappers (use omnistudio-datamapper-generate)."
metadata:
cliTools:
- tool: ["sf"]
semver: ">=2.0.0"
relatedSkills:
- "external-diagram-mermaid-generate"
- "omnistudio-datamapper-generate"
- "omnistudio-flexcard-generate"
- "omnistudio-integration-procedure-generate"
- "omnistudio-omniscript-generate"
- "platform-custom-field-generate"
- "platform-custom-object-generate"
- "platform-metadata-deploy"
version: "1.0"omnistudio-dependencies-analyze: OmniStudio Cross-Component Analysis
Expert OmniStudio analyst specializing in namespace detection, dependency mapping, and impact analysis across the full OmniStudio component suite. Performs org-wide inventory of OmniScripts, FlexCards, Integration Procedures, and Data Mappers with automated dependency graph construction and Mermaid visualization.
---
Scope
- **In scope**: Namespace detection (Core / vlocity_cmt / vlocity_ins), org-wide component inventory, dependency graph construction, impact analysis, Mermaid diagram generation
- **Out of scope**: Authoring or modifying OmniScripts (use `omnistudio-omniscript-generate`), building FlexCards (use `omnistudio-flexcard-generate`), creating Integration Procedures (use `omnistudio-integration-procedure-generate`), configuring Data Mappers (use `omnistudio-datamapper-generate`)
---
Required Inputs
Ask for or infer before starting:
| Input | Default if not provided | |-------|------------------------| | Target org alias | Ask the user | | Analysis scope | Full org (all OmniStudio component types) | | Specific component to impact-analyze | None (produce full inventory first) | | Output format preference | All three: Mermaid diagram + JSON summary + human-readable report |
---
Output Expectations
Each analysis run produces one or more of:
1. **Namespace detection result** — which namespace is active (Core / vlocity_cmt / vlocity_ins / not installed) 2. **Component inventory** — counts of OmniScripts, Integration Procedures, FlexCards, Data Mappers (active vs draft) 3. **Dependency graph** — directed edges between all OmniStudio components with edge type labels 4. **Mermaid diagram** — copy-pasteable Mermaid `graph LR` block for documentation 5. **JSON summary** — machine-readable namespace + components + dependencies + impact analysis 6. **Human-readable report** — plain-text summary with component counts, edge count, circular references, and most-depended components 7. **Circular reference warnings** — cycle path and risk statement for each detected cycle
---
Core Responsibilities
1. **Namespace Detection**: Identify whether an org uses Core (Industries), vlocity_cmt (Communications, Media & Energy), or vlocity_ins (Insurance & Health) namespace 2. **Dependency Analysis**: Build directed graphs of cross-component dependencies using BFS traversal with circular reference detection 3. **Impact Analysis**: Determine which components are affected when a given OmniScript, IP, FlexCard, or Data Mapper changes 4. **Mermaid Visualization**: Generate dependency diagrams in Mermaid syntax for documentation and review 5. **Org-Wide Inventory**: Catalog all OmniStudio components by type, status, language, and version
---
> **CRITICAL: Orchestration Order** > > When multiple OmniStudio skills are involved, follow this dependency chain: > > `omnistudio-dependencies-analyze` → `omnistudio-datamapper-generate` → `omnistudio-integration-procedure-generate` → `omnistudio-omniscript-generate` → `omnistudio-flexcard-generate` > > This skill runs first to establish namespace context and dependency maps that downstream skills consume.
---
Key Insights
| Insight | Detail | |---------|--------| | Three namespaces coexist | Core (OmniProcess), vlocity_cmt (vlocity_cmt__OmniScript__c), vlocity_ins (vlocity_ins__OmniScript__c) | | Dependencies are stored in JSON | PropertySetConfig (elements), Definition (FlexCards), InputObjectName/OutputObjectName (Data Mappers) | | Circular references are possible | OmniScript A → IP B → OmniScript A via embedded call | | FlexCard data sources are typed | `dataSource.type === 'IntegrationProcedures'` (plural) in DataSourceConfig JSON | | Active vs Draft matters | Only active components participate in runtime dependency chains |
---
Workflow (4-Phase Pattern)
Phase 1: Namespace Detection
**Purpose**: Determine which OmniStudio namespace the org uses before querying any component metadata.
**Detection Algorithm** — Probe objects in order until a successful COUNT() returns:
1. **Core (Industries namespace)**:
SELECT COUNT() FROM OmniProcess
If this succeeds, the org uses the Core namespace (API 234.0+ / Spring '22+).
2. **vlocity_cmt (Communications, Media & Energy)**:
SELECT COUNT() FROM vlocity_cmt__OmniScript__c
3. **vlocity_ins (Insurance & Health)**:
SELECT COUNT() FROM vlocity_ins__OmniScript__c
If none succeed, OmniStudio is not installed in the org.
**CLI Commands for namespace detection**:
# Core namespace probe
sf data query --query "SELECT COUNT() FROM OmniProcess" --target-org myorg --json 2>/dev/null
# vlocity_cmt namespace probe
sf data query --query "SELECT COUNT() FROM vlocity_cmt__OmniScript__c"
Read more
name: omnistudio-dependencies-analyze
description: "Cross-cutting OmniStudio analysis skill for namespace detection, dependency visualization, and impact analysis across OmniScripts, FlexCards, Integration Procedures, and Data Mappers. TRIGGER when: user asks about OmniStudio dependencies, wants namespace detection (Core vs vlocity_cmt vs vlocity_ins), needs impact analysis, requests dependency graphs or Mermaid diagrams, or asks which components are affected by a change. DO NOT TRIGGER when: authoring OmniScripts (use omnistudio-omniscript-generate), building FlexCards (use omnistudio-flexcard-generate), creating Integration Procedures (use omnistudio-integration-procedure-generate), or configuring Data Mappers (use omnistudio-datamapper-generate)."
metadata:
cliTools:
- tool: ["sf"]
semver: ">=2.0.0"
relatedSkills:
- "external-diagram-mermaid-generate"
- "omnistudio-datamapper-generate"
- "omnistudio-flexcard-generate"
- "omnistudio-integration-procedure-generate"
- "omnistudio-omniscript-generate"
- "platform-custom-field-generate"
- "platform-custom-object-generate"
- "platform-metadata-deploy"
version: "1.0"omnistudio-dependencies-analyze: OmniStudio Cross-Component Analysis
Expert OmniStudio analyst specializing in namespace detection, dependency mapping, and impact analysis across the full OmniStudio component suite. Performs org-wide inventory of OmniScripts, FlexCards, Integration Procedures, and Data Mappers with automated dependency graph construction and Mermaid visualization.
---
Scope
- **In scope**: Namespace detection (Core / vlocity_cmt / vlocity_ins), org-wide component inventory, dependency graph construction, impact analysis, Mermaid diagram generation
- **Out of scope**: Authoring or modifying OmniScripts (use `omnistudio-omniscript-generate`), building FlexCards (use `omnistudio-flexcard-generate`), creating Integration Procedures (use `omnistudio-integration-procedure-generate`), configuring Data Mappers (use `omnistudio-datamapper-generate`)
---
Required Inputs
Ask for or infer before starting:
| Input | Default if not provided | |-------|------------------------| | Target org alias | Ask the user | | Analysis scope | Full org (all OmniStudio component types) | | Specific component to impact-analyze | None (produce full inventory first) | | Output format preference | All three: Mermaid diagram + JSON summary + human-readable report |
---
Output Expectations
Each analysis run produces one or more of:
1. **Namespace detection result** — which namespace is active (Core / vlocity_cmt / vlocity_ins / not installed) 2. **Component inventory** — counts of OmniScripts, Integration Procedures, FlexCards, Data Mappers (active vs draft) 3. **Dependency graph** — directed edges between all OmniStudio components with edge type labels 4. **Mermaid diagram** — copy-pasteable Mermaid `graph LR` block for documentation 5. **JSON summary** — machine-readable namespace + components + dependencies + impact analysis 6. **Human-readable report** — plain-text summary with component counts, edge count, circular references, and most-depended components 7. **Circular reference warnings** — cycle path and risk statement for each detected cycle
---
Core Responsibilities
1. **Namespace Detection**: Identify whether an org uses Core (Industries), vlocity_cmt (Communications, Media & Energy), or vlocity_ins (Insurance & Health) namespace 2. **Dependency Analysis**: Build directed graphs of cross-component dependencies using BFS traversal with circular reference detection 3. **Impact Analysis**: Determine which components are affected when a given OmniScript, IP, FlexCard, or Data Mapper changes 4. **Mermaid Visualization**: Generate dependency diagrams in Mermaid syntax for documentation and review 5. **Org-Wide Inventory**: Catalog all OmniStudio components by type, status, language, and version
---
> **CRITICAL: Orchestration Order** > > When multiple OmniStudio skills are involved, follow this dependency chain: > > `omnistudio-dependencies-analyze` → `omnistudio-datamapper-generate` → `omnistudio-integration-procedure-generate` → `omnistudio-omniscript-generate` → `omnistudio-flexcard-generate` > > This skill runs first to establish namespace context and dependency maps that downstream skills consume.
---
Key Insights
| Insight | Detail | |---------|--------| | Three namespaces coexist | Core (OmniProcess), vlocity_cmt (vlocity_cmt__OmniScript__c), vlocity_ins (vlocity_ins__OmniScript__c) | | Dependencies are stored in JSON | PropertySetConfig (elements), Definition (FlexCards), InputObjectName/OutputObjectName (Data Mappers) | | Circular references are possible | OmniScript A → IP B → OmniScript A via embedded call | | FlexCard data sources are typed | `dataSource.type === 'IntegrationProcedures'` (plural) in DataSourceConfig JSON | | Active vs Draft matters | Only active components participate in runtime dependency chains |
---
Workflow (4-Phase Pattern)
Phase 1: Namespace Detection
**Purpose**: Determine which OmniStudio namespace the org uses before querying any component metadata.
**Detection Algorithm** — Probe objects in order until a successful COUNT() returns:
1. **Core (Industries namespace)**:
SELECT COUNT() FROM OmniProcess
If this succeeds, the org uses the Core namespace (API 234.0+ / Spring '22+).
2. **vlocity_cmt (Communications, Media & Energy)**:
SELECT COUNT() FROM vlocity_cmt__OmniScript__c
3. **vlocity_ins (Insurance & Health)**:
SELECT COUNT() FROM vlocity_ins__OmniScript__c
If none succeed, OmniStudio is not installed in the org.
**CLI Commands for namespace detection**:
# Core namespace probe sf data query --query "SELECT COUNT() FROM OmniProcess" --target-org myorg --json 2>/dev/null # vlocity_cmt namespace probe sf data query --query "SELECT COUNT() FROM vlocity_cmt__OmniScript__c"
This repository provides a curated collection of Salesforce agent skills for building applications.
Repo: forcedotcom/sf-skills
Other skills on sf-skills.
- /agentforce-generate
Build, modify, optimize, debug, and deploy agents with Agentforce Agent Script. TRIGGER when: user creates, modifies, optimizes, or asks about .agent files or aiAuthoringBundle metadata; changes agent behavior, responses, or conversation logic; designs agent actions, tools,
Open skill - /agentforce-observe
Analyze production Agentforce agent behavior using session traces and Data Cloud. TRIGGER when: user queries STDM session data or Data Cloud trace records; investigates production agent failures, regressions, or performance issues; asks about session traces, conversation logs,
Open skill - /agentforce-test
Write, run, and analyze structured test suites for Agentforce agents — functional AND security. TRIGGER when: user writes or modifies test spec YAML (AiEvaluationDefinition); runs sf agent test create, run, run-eval, or results commands; asks about test coverage strategy, metric
Open skill - /automation-flow-generate
Generate Salesforce Flows using the MCP tool execute_metadata_action. Use when the user asks to create, build, or generate a flow — including Screen, Autolaunched, Record-Triggered (before/after-save), Scheduled. Also trigger for flow-like requests such as \"when a record is
Open skill - /dx-code-analyzer-configure
Set up, configure, and troubleshoot Salesforce Code Analyzer for any project. Handles installation, prerequisite checks, diagnosing broken setups, creating and editing code-analyzer.yml overrides, engine-specific settings, ignore patterns, severity overrides, and CI/CD pipeline
Open skill - /dx-code-analyzer-custom-rule-create
Create custom Code Analyzer rules for Regex (pattern matching), PMD (XPath/AST for Apex and metadata XML), and ESLint (LWC/JavaScript/TypeScript). Use when users want to enforce coding standards, ban patterns, detect hardcoded values, govern metadata, or add rules not in the
Open skill

