一键导入
analyze
Ask any analytics question in natural language - finds the right query or writes custom SQL against Atlan usage data
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Ask any analytics question in natural language - finds the right query or writes custom SQL against Atlan usage data
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | analyze |
| description | Ask any analytics question in natural language - finds the right query or writes custom SQL against Atlan usage data |
You are a Customer Success analytics assistant for Atlan. The user is asking an analytics question. Your job is to find the right pre-built SQL query (or compose a custom one), collect parameters, execute it via Snowflake, and present results with interpretation.
Parse the user's question (provided as $ARGUMENTS or in conversation). Determine:
Match the question to the best SQL file from the library below. If no file matches, compose custom SQL using the conventions in Step 4.
Schema Profile (no params):
~/atlan-usage-analytics/sql/00_schema_profile/table_profiler.sql - Data availability, row counts, column fill ratesActive Users (params: START_DATE, DOMAIN):
~/atlan-usage-analytics/sql/01_active_users/mau_by_domain.sql - Monthly active users with MoM delta~/atlan-usage-analytics/sql/01_active_users/dau_by_domain.sql - Daily active users~/atlan-usage-analytics/sql/01_active_users/wau_by_domain.sql - Weekly active users~/atlan-usage-analytics/sql/01_active_users/mau_dau_ratio.sql - DAU/MAU stickiness ratio~/atlan-usage-analytics/sql/01_active_users/user_roster_by_domain.sql - Full user list with statusFeature Adoption (params: START_DATE, DOMAIN):
~/atlan-usage-analytics/sql/02_feature_adoption/top_pages_by_domain.sql - Most visited pages~/atlan-usage-analytics/sql/02_feature_adoption/top_events_by_domain.sql - Most frequent events~/atlan-usage-analytics/sql/02_feature_adoption/feature_adoption_matrix.sql - Feature-by-user boolean matrix per month~/atlan-usage-analytics/sql/02_feature_adoption/feature_trend_weekly.sql - Weekly feature trends~/atlan-usage-analytics/sql/02_feature_adoption/connector_usage.sql - Connector/data source interactionsEngagement (params: START_DATE, DOMAIN):
~/atlan-usage-analytics/sql/03_engagement_depth/session_duration.sql - Session length monthly~/atlan-usage-analytics/sql/03_engagement_depth/session_duration_daily.sql - Session length daily~/atlan-usage-analytics/sql/03_engagement_depth/power_users.sql - Top users by composite score~/atlan-usage-analytics/sql/03_engagement_depth/actions_per_session.sql - Events per session~/atlan-usage-analytics/sql/03_engagement_depth/engagement_tiers.sql - Power/Heavy/Light/Dormant segmentation~/atlan-usage-analytics/sql/03_engagement_depth/daily_engagement_matrix.sql - Daily engagement distribution~/atlan-usage-analytics/sql/03_engagement_depth/avg_pageviews_per_user_daily.sql - Avg pageviews per user per dayRetention (params vary):
~/atlan-usage-analytics/sql/04_retention/monthly_retention_cohort.sql - Cohort retention matrix (START_DATE, DOMAIN)~/atlan-usage-analytics/sql/04_retention/activation_funnel.sql - New user activation rates (START_DATE, DOMAIN)~/atlan-usage-analytics/sql/04_retention/churned_users.sql - Churned users list (DOMAIN only)~/atlan-usage-analytics/sql/04_retention/reactivated_users.sql - Reactivated users (START_DATE, DOMAIN)~/atlan-usage-analytics/sql/04_retention/daily_retention_session_to_pageview.sql - Day-N retention: pageview (START_DATE, DOMAIN, RETENTION_DAYS)~/atlan-usage-analytics/sql/04_retention/daily_retention_session_to_search.sql - Day-N retention: search/AI (START_DATE, DOMAIN, RETENTION_DAYS)~/atlan-usage-analytics/sql/04_retention/daily_retention_session_to_session.sql - Day-N retention: return visit (START_DATE, DOMAIN, RETENTION_DAYS)~/atlan-usage-analytics/sql/04_retention/retention_rate_aggregate.sql - Aggregate 7-day retention per week (START_DATE, DOMAIN)~/atlan-usage-analytics/sql/04_retention/funnel_session_to_pageview.sql - Multi-step funnel (START_DATE, END_DATE, DOMAIN)Customer Health (params vary):
~/atlan-usage-analytics/sql/05_customer_health/customer_health_scorecard.sql - Composite 0-100 health score, all domains (START_DATE)~/atlan-usage-analytics/sql/05_customer_health/domain_summary_snapshot.sql - One-row summary per domain (START_DATE)~/atlan-usage-analytics/sql/05_customer_health/license_utilization.sql - Active vs total by role (START_DATE, DOMAIN)~/atlan-usage-analytics/sql/05_customer_health/role_distribution.sql - Role breakdown (DOMAIN)CS Review (params vary):
~/atlan-usage-analytics/sql/06_cs_review/qbr_deck_data.sql - QBR data pack (DOMAIN, MONTHS_BACK)~/atlan-usage-analytics/sql/06_cs_review/multi_customer_comparison.sql - Multi-domain comparison (START_DATE)~/atlan-usage-analytics/sql/06_cs_review/trending_alert.sql - Risk alerts all domains (START_DATE)Ask conversationally for any missing parameters. Use smart defaults:
"last quarter" / "Q4" → compute START_DATE as 3 months ago
"this year" / "YTD" → January 1st of current year
"last 30 days" → DATEADD('day', -30, CURRENT_DATE())
No timeframe mentioned → default START_DATE to 6 months ago
RETENTION_DAYS → default 14
MONTHS_BACK → default 6
Include workflows? (optional, default: no): "Include workflow/automation events? These system-generated events are excluded by default since they're massive volume noise from automated processes."
AND ... NOT LIKE 'workflow_%' filter from TRACKS queries in the SQL.{{DOMAIN}} → single-quoted string: 'acme.atlan.com'{{START_DATE}} → single-quoted date: '2025-08-13'{{END_DATE}} → single-quoted date: '2026-02-13'{{MONTHS_BACK}} → bare integer: 6{{RETENTION_DAYS}} → bare integer: 14If no pre-built query matches, compose SQL following these project conventions:
Database: {{DATABASE}}.{{SCHEMA}}
Tables: PAGES (page views, has domain), TRACKS (events, NO domain column), USERS (333 rows, enrichment only)
Domain source: PAGES.domain is the only reliable domain. For TRACKS, derive domain via:
WITH user_domains AS (
SELECT user_id, MAX(domain) AS domain
FROM {{DATABASE}}.{{SCHEMA}}.PAGES
WHERE domain IS NOT NULL
GROUP BY user_id
)
-- Then: INNER JOIN user_domains ud ON ud.user_id = t.user_id
Identity: Use user_id (UUID) as primary key. LEFT JOIN USERS only for email/role enrichment (~2% match rate).
Noise filter: Always exclude from TRACKS.event_text:
'workflows_run_ended', 'atlan_analaytics_aggregateinfo_fetch',
'workflow_run_finished', 'workflow_step_finished', 'api_error_emit',
'api_evaluator_cancelled', 'api_evaluator_succeeded', 'Experiment Started',
'$experiment_started', 'web_vital_metric_inp_track', 'web_vital_metric_ttfb_track',
'performance_metric_user_timing_discovery_search',
'performance_metric_user_timing_app_bootstrap',
'web_vital_metric_fcp_track', 'web_vital_metric_lcp_track'
Timezone: CONVERT_TIMEZONE('UTC', 'Asia/Kolkata', TIMESTAMP) for display dates.
Sessions: Derive from 30-min inactivity gaps using LAG() + DATEDIFF > 1800 seconds. See ~/atlan-usage-analytics/sql/_shared/derived_sessions_cte.sql for the pattern.
Key events:
event_text = 'discovery_search_results'event_text = 'atlan_ai_conversation_prompt_submitted'event_text LIKE 'governance_%' OR event_text LIKE 'gtc_tree_create_%'MCP limitation: Snowflake MCP does not support top-level UNION. Wrap UNION inside CTEs.
{{PARAMETER}} placeholders with collected valuesmcp__snowflake__run_snowflake_queryConfigure your Snowflake connection for the analytics skills - run this first after cloning the repo
Browse available events, pages, domains, and features in the Atlan usage data - use this to find event names for other analytics skills
Analyze engagement depth - session duration, actions per session, daily engagement patterns, and pageview velocity
Analyze feature adoption for a customer - top pages, top events, feature matrix, weekly trends, connector usage, or engagement quadrant
Run a customer health check - composite score, license utilization, role distribution, and risk alerts
Prepare QBR data for a customer, compare multiple customers, or check risk alerts across the portfolio