omnistudio-dependencies-analyze

Detects OmniStudio namespaces and maps cross-component dependencies with Mermaid diagrams.

Updated Jul 2, 2026
One-click install
npx skills add https://github.com/padjei/SF_Build --skill omnistudio-dependencies-analyze-padjei
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: omnistudio-dependencies-analyze
Source: https://github.com/padjei/SF_Build/tree/main/.claude/skills/omnistudio-dependencies-analyze
Command: npx skills add https://github.com/padjei/SF_Build --skill omnistudio-dependencies-analyze-padjei

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Understanding how OmniScripts, FlexCards, Integration Procedures, and Data Mappers depend on each other is difficult because dependencies are buried in JSON configuration fields rather than lookup relationships, and the correct object names vary across three possible namespaces. This Skill automates namespace detection, org-wide inventory, dependency graph construction, and impact analysis so you can safely assess what breaks when a component changes. ## Core Features & Use Cases - Namespace Detection: Probes Core, vlocity_cmt, and vlocity_ins namespaces via SOQL to determine which OmniStudio package is installed, including mixed-namespace migration states. - Dependency Graph & Impact Analysis: Parses PropertySetConfig and DataSourceConfig JSON to build directed dependency graphs with BFS traversal, circular reference detection, and reverse impact lookup. - Mermaid Visualization & Reporting: Generates copy-pasteable Mermaid diagrams, JSON summaries, and human-readable reports with component counts and most-depended components. - Use Case: Before modifying a Data Mapper used across your org, run this Skill to discover that it feeds an Integration Procedure, which in turn serves two OmniScripts and a FlexCard, so you know exactly what to regression-test. ## Quick Start Ask the assistant to analyze OmniStudio dependencies in your org and generate a dependency graph with impact analysis for a specific component.

Frequently Asked Questions about omnistudio-dependencies-analyze

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find dependencies between OmniScripts and Integration Procedures?▼

Dependencies are stored in the PropertySetConfig JSON field on OmniProcessElement records, not in lookup fields. Parse each element's JSON for keys like integrationProcedureKey, bundle, or remoteClass to identify references to Integration Procedures, Data Mappers, and Apex classes.

How to detect which OmniStudio namespace an org uses?▼

Run SOQL COUNT() queries in order: first SELECT COUNT() FROM OmniProcess for Core, then vlocity_cmt__OmniScript__c, then vlocity_ins__OmniScript__c. The first query that succeeds identifies the active namespace; if all fail, OmniStudio is not installed.

Does OmniStudio dependency analysis work with Vlocity managed packages?▼

Yes, the analysis supports vlocity_cmt and vlocity_ins namespaces with their own object names like vlocity_cmt__OmniScript__c and vlocity_cmt__DRBundle__c. It also detects mixed-namespace states during Core migration and reports components under both namespaces.

Why does my FlexCard dependency query fail on the Definition field?▼

The OmniUiCard object in the Core namespace does not have a Definition field. Use DataSourceConfig for data source bindings and PropertySetConfig for card layout and states configuration instead.

What happens when a circular dependency is detected in OmniStudio components?▼

The analysis logs the full cycle path such as OmniScript A to IP B back to OmniScript A, marks all participating edges, and continues traversing remaining branches. The report includes a risk statement warning about potential runtime infinite loops.

What are the limitations of OmniStudio dependency analysis in large orgs?▼

Orgs with 1000+ components require SOQL pagination with LIMIT and OFFSET in batches of 200. Very large PropertySetConfig values may need the Tooling API, and sf data create cannot write JSON config fields, requiring REST API calls instead.