From omni-analytics
Find, browse, and organize content in Omni Analytics — dashboards, workbooks, folders, and labels — using the Omni CLI. Use this skill whenever someone wants to find an existing dashboard, search for content, list workbooks, browse folders, see what dashboards exist, find popular reports, download a dashboard as PDF or PNG, favorite content, manage labels on documents, or any variant of "find the dashboard about", "what reports do we have", "show me our dashboards", "where is the sales report", or "download this dashboard".
npx claudepluginhub exploreomni/omni-agent-skills --plugin omni-analyticsThis skill uses the workspace's default tool permissions.
Find, browse, and organize Omni content — dashboards, workbooks, and folders — through the Omni CLI.
Finds, browses, and organizes Omni Analytics content—dashboards, workbooks, folders, labels—via REST API. Supports searches, listings, filtering, pagination, PDF/PNG downloads, favorites, and label management.
Review existing analytics — find all dashboards and reports, check who uses them, whether metrics are defined, and whether they drive decisions. Recommend what to keep, kill, or add. Use when asked "are our dashboards useful", "analytics review", or "metrics audit".
Automates Looker dashboards by adding elements, tiles, and filters via Node.js scripts. Useful for data discovery and business intelligence workflows.
Share bugs, ideas, or general feedback.
Find, browse, and organize Omni content — dashboards, workbooks, and folders — through the Omni CLI.
# Verify the Omni CLI is installed — if not, ask the user to install it
# See: https://github.com/exploreomni/cli#readme
command -v omni >/dev/null || echo "ERROR: Omni CLI is not installed."
# Show available profiles and select the appropriate one
omni config show
# If multiple profiles exist, ask the user which to use, then switch:
omni config use <profile-name>
omni content --help # Content operations
omni documents --help # Document operations
omni folders --help # Folder operations
Tip: Use
-o jsonto force structured output for programmatic parsing, or-o humanfor readable tables. The default isauto(human in a TTY, JSON when piped).
omni content list
omni content list --include '_count,labels'
# By label
omni content list --labels finance,marketing
# By scope
omni content list --scope organization
# Sort by popularity or recency
omni content list --sortfield favorites
omni content list --sortfield updatedAt
Responses include pageInfo with cursor-based pagination. Fetch next page:
omni content list --cursor <nextCursor>
omni documents list
# Filter by creator
omni documents list --creatorid <userId>
Each document includes: identifier, name, type, scope, owner, folder, labels, updatedAt, hasDashboard.
Important: Always use the
identifierfield for API calls, notid. Theidfield is null for workbook-type documents and will cause silent failures.
Retrieve query definitions powering a dashboard's tiles:
omni documents get-queries <identifier>
Useful for understanding what a dashboard computes and re-running queries via omni-query.
# List
omni folders list
# Create
omni folders create "Q1 Reports" --scope organization
# List labels
omni labels list
# Add label to document
omni documents add-label <identifier> <labelName>
# Remove label
omni documents remove-label <identifier> <labelName>
# Favorite
omni documents add-favorite <identifier>
# Unfavorite
omni documents remove-favorite <identifier>
# Start download (async)
omni dashboards download <dashboardId> --body '{ "format": "pdf" }'
# Poll job status
omni dashboards download-status <dashboardId> <jobId>
Formats: pdf, png
Construct direct links to content:
Dashboard: {OMNI_BASE_URL}/dashboards/{identifier}
Workbook: {OMNI_BASE_URL}/w/{identifier}
The identifier comes from the document's identifier field in API responses. Always provide the user a clickable link after finding content.
When scanning all documents for field references (e.g., for impact analysis), paginate with cursor and call omni documents get-queries <identifier> for each document. Launch multiple query-fetch calls in parallel for efficiency. For field impact analysis, prefer the content-validator approach in omni-model-explorer.