omni-content-explorer

작성자: exploreomni

Omni Analytics에서 대시보드, 워크북, 폴더, 레이블 등 콘텐츠를 찾고, 탐색하고, 정리할 수 있습니다. Omni CLI를 사용하세요. 누군가 원할 때마다 이 스킬을 사용하세요…

npx skills add https://github.com/exploreomni/omni-agent-skills --skill omni-content-explorer

Omni Content Explorer

Find, browse, and organize Omni content — dashboards, workbooks, and folders — through the Omni CLI.

Prerequisites

# 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>

# Confirm the active profile is authenticated and inspect your permissions:
omni whoami whoami

Auth: a profile authenticates with an API key or OAuth. If whoami (or any call) returns 401, hand off — ask the user to run ! omni config login <profile> (OAuth 2.1 browser flow; it blocks ~2 min on the browser). Don't run config login yourself in a headless/CI session (no browser → timeout); on a local interactive machine you may. See the omni-api-conventions rule for profile setup (omni config init --auth oauth) and discovering request-body shapes with --schema.

Discovering Commands

omni content --help     # Content operations
omni documents --help   # Document operations
omni folders --help     # Folder operations

Tip: Use -o json to force structured output for programmatic parsing, or -o human for readable tables. The default is auto (human in a TTY, JSON when piped).

Known Issues & Safe Defaults

  • omni content list does not currently support a --labels filter. To find documents by label, use omni documents list --include labels -o json, paginate with --cursor, then filter records whose labels array contains the target label.
  • Some dashboard exports can fail before a job is created, for example with Cannot use 'in' operator to search for 'query_id' in .... If omni dashboards download returns an error and no job ID, do not call download-status or claim the export completed. Report the dashboard identifier, the exact API error, and that no downloadable job was created.

Browsing Content

List All Content

omni content list

With Counts and Labels

omni content list --include '_count,labels'

Filter and Sort

# By label: list documents with labels, then filter the JSON results client-side.
# Paginate with --cursor until pageInfo.hasNextPage is false.
omni documents list --include labels -o json

# By scope
omni content list --scope organization

# Sort by popularity or recency
omni content list --sortfield favorites

omni content list --sortfield updatedAt

Pagination

Responses include pageInfo with cursor-based pagination. Fetch next page:

omni content list --cursor <nextCursor>

Working with Documents

List Documents

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 identifier field for API calls, not id. The id field is null for workbook-type documents and will cause silent failures.

Get Document Queries

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.

Folders

# List
omni folders list

# Create
omni folders create "Q1 Reports" --scope organization

Labels

# List labels
omni labels list

# Find documents with a label
omni documents list --include labels -o json

# Add label to document
omni documents add-label <identifier> <labelName>

# Remove label
omni documents remove-label <identifier> <labelName>

Favorites

# Favorite
omni documents add-favorite <identifier>

# Unfavorite
omni documents remove-favorite <identifier>

Dashboard Downloads

# Start download (async)
omni dashboards download <identifier> --body '{ "format": "pdf" }'

# Poll job status only after the start command returns a job ID
omni dashboards download-status <identifier> <jobId>

Formats: pdf, png

URL Patterns

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.

Search Patterns

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.

Docs Reference

Related Skills

  • omni-query — run queries behind dashboards you've found
  • omni-content-builder — create or update dashboards
  • omni-embed — embed dashboards you've found in external apps
  • omni-admin — manage permissions on documents and folders

exploreomni의 다른 스킬

omni-admin
exploreomni
Omni Analytics 인스턴스를 관리합니다 — Omni CLI를 통해 연결, 사용자, 그룹, 사용자 속성, 권한, 일정 및 스키마 새로고침을 관리합니다. 사용…
official
omni-ai-eval
exploreomni
Omni AI 쿼리 생성 정확도를 평가하려면 Omni CLI를 통해 테스트 프롬프트를 실행하고, 생성된 쿼리 JSON을 예상 결과와 비교한 후 점수를 매깁니다…
official
omni-ai-optimizer
exploreomni
Omni Analytics 모델을 Blobby, Omni Agent에 맞게 최적화하세요 — ai_context, ai_fields, sample_queries를 구성하고 AI 전용 주제 확장을 생성하세요. 사용…
official
omni-content-builder
exploreomni
Omni Analytics 문서와 대시보드를 프로그래밍 방식으로 생성, 업데이트 및 관리합니다 — 문서 수명 주기, 타일, 시각화, 필터, 레이아웃 — 다음을 사용하여…
official
omni-embed
exploreomni
Omni Analytics 대시보드를 외부 애플리케이션에 임베드 — URL 서명, 사용자 정의 테마, iframe 이벤트, 엔터티 워크스페이스 및 권한 인식 콘텐츠 — 사용…
official
omni-model-builder
exploreomni
Omni Analytics 시맨틱 모델 정의(뷰, 토픽, 차원, 측정값, 관계 및 쿼리 뷰)를 YAML을 통해 생성 및 편집합니다.
official
omni-model-explorer
exploreomni
Omni CLI를 사용하여 Omni Analytics 모델, 토픽, 뷰, 필드, 차원, 측정값 및 관계를 검색하고 검사합니다. 누군가가...할 때마다 이 스킬을 사용하세요.
official
omni-query
exploreomni
Omni Analytics의 시맨틱 레이어에 대해 Omni CLI를 사용하여 쿼리를 실행하고, 결과를 해석하며, 다단계 분석을 위해 쿼리를 연결합니다. 이 스킬은 다음 상황에서 사용하세요…
official