omni-model-builder

Create and edit Omni Analytics semantic model YAML definitions through the Omni CLI.

Updated Aug 7, 2026
One-click install
npx skills add https://github.com/noiz354/oc-rebirth-rca --skill omni-model-builder-noiz354
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: omni-model-builder
Source: https://github.com/noiz354/oc-rebirth-rca/tree/main/planning-zip/omni-agent-skills/skills/omni-model-builder
Command: npx skills add https://github.com/noiz354/oc-rebirth-rca --skill omni-model-builder-noiz354

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Building and modifying Omni Analytics semantic models requires precise YAML definitions for views, topics, dimensions, measures, and relationships, and unsafe edits can break production dashboards. This Skill guides an AI agent through a safe branch-based workflow using the Omni CLI so model changes are validated and tested before they ship. ## Core Features & Use Cases - Semantic Model Authoring: Write and edit views, topics, dimensions, measures, relationships, and query views in Omni's YAML format via omni models yaml-create. - Safe Branch Workflow: Create branches, validate changes, run test queries, and only merge or open a PR after explicit user confirmation. - Schema Refresh & Impact Analysis: Sync the schema layer after database changes and run the content validator to identify broken dashboards and tiles. - Use Case: A user asks to add a filtered revenue measure to the order_items view. The agent creates a branch, writes the measure YAML with a filters block, validates the branch, runs a test query, and asks for confirmation before merging. ## Quick Start Ask the agent to add a new dimension or measure to an Omni view, set up a join between two views, or create a new topic, and it will prepare validated branch changes for your review.

Frequently Asked Questions about omni-model-builder

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

FAQPage Schema
How do I add a new measure or dimension to an Omni view?▼

Create a branch with omni models create-branch, then write the field YAML with omni models yaml-create using mode extension. Validate the branch with omni models validate and run a test query before asking for confirmation to merge.

How do I set up a join between two views in Omni?▼

Define a relationship with join_from_view, join_to_view, on_sql using ${view.field} references, and a relationship_type such as many_to_one. Use global relationships for reusable joins or topic-scoped relationships for one-off joins, then test with a query pulling fields from both views.

Does the Omni CLI support branch-based development for model changes?▼

Yes, omni models create-branch returns a branchId used in all subsequent writes and validations. For git-connected models, omni models commit pushes the branch as a pull request; otherwise omni models merge-branch merges directly in Omni.

Why does my Omni query show fanout errors or inflated counts after a join?▼

Fanout occurs when a joined view lacks a genuine primary_key: true dimension, breaking symmetric aggregates. Fix the grain by marking a row-unique dimension as primary key or define a composite key, rather than patching the measure.

What permissions are required to edit the Omni semantic model?▼

You need Modeler or Connection Admin permissions, verified with omni whoami. Schema refresh specifically requires Connection Admin, and profiles authenticate via API key or OAuth.

Can I hand-edit Omni model YAML directly in the git repository?▼

No, for git-connected models Omni regenerates the default branch from its authoritative model state and deletes git-only model files. Author all model YAML through the Omni APIs on a branch, then use omni models commit to sync it as a pull request.