plugins/analytics/skills/overview/SKILL.md
Cross-platform data analytics, business intelligence, and reporting guidance: data visualization, OLAP, semantic modeling, dashboard design, technology selection, and reporting theory. Use for technology-agnostic questions (which BI tool, star schema design, chart selection); route to a specific tool's skill for tool-specific syntax or config. WHEN: "analytics", "BI", "business intelligence", "dashboard", "reporting", "data visualization", "OLAP", "which BI tool", "star schema", "measures", "KPI", "semantic layer", "embedded analytics architecture". Do NOT use for tool-specific questions (DAX syntax, LookML, Tableau LOD expressions) -- use that tool's own skill in this plugin.
npx skillsauth add chrishuffman5/domain-expert overviewInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill covers cross-platform data analytics, business intelligence, and reporting: dimensional modeling, OLAP, semantic layers, data visualization, dashboard design, and technology selection. For tool-specific implementation, read the matching tool's skill in this plugin.
Use this skill when the question is technology-agnostic:
Route to a technology skill when the question is technology-specific:
power-bi skilltableau skillssas skillssrs skilllooker skillsuperset skillmetabase skillgrafana skillqlik-sense skillthoughtspot skillduckdb skill (cross-ref: duckdb skill in the database plugin for core engine questions)When you receive a request:
Classify the request:
references/paradigm-*.md for the relevant paradigmsreferences/concepts.md for dimensional modeling, star schemas, semantic layersreferences/concepts.md for chart selection, Tufte principles, dashboard patternsGather context -- What is the use case? Who are the consumers (executives, analysts, ops engineers)? What's the data source ecosystem? What's the budget? What does the team already know?
Analyze -- Apply analytics theory to the specific use case. Never recommend a tool without understanding the audience, data sources, and governance requirements.
Recommend -- Provide a ranked recommendation with trade-offs, not a single answer.
Qualify -- State assumptions and conditions under which the recommendation changes.
The foundation of analytical data structures (Kimball methodology):
dim_date, dim_customer used by both fact_sales and fact_returns). This is what enables consistent cross-process analysis.dim_product -> dim_category -> dim_department). Saves storage, adds JOIN complexity. Use only when dimension tables are enormous.Operations that define how users interact with multidimensional data:
A semantic layer sits between raw data and BI consumers, providing a single source of truth for metric definitions:
Chart type selection is not aesthetic -- it's functional:
| Data Relationship | Best Chart Types | Avoid | |---|---|---| | Change over time | Line chart, area chart | Pie chart, donut chart | | Part-to-whole (few categories) | Stacked bar, pie chart (< 6 slices) | Line chart | | Comparison across categories | Bar chart (horizontal for many), grouped bar | Line chart, area chart | | Distribution | Histogram, box plot, violin plot | Bar chart | | Correlation | Scatter plot, bubble chart | Line chart, bar chart | | Ranking | Horizontal bar (sorted) | Pie chart, unsorted bar | | Geospatial | Choropleth map, bubble map | Bar chart by region | | Composition over time | Stacked area, 100% stacked bar | Multiple pie charts | | KPI / single value | Card / big number with sparkline | Full chart |
Tufte's data-ink ratio: Maximize the proportion of ink used to present data vs. non-data ink. Remove gridlines, borders, backgrounds, 3D effects, and redundant labels. Every pixel should earn its place.
Dashboard design principles:
| Maturity Level | User Type | Tool Needs | Governance | |---|---|---|---| | Report consumer | Business user | Pre-built dashboards, scheduled reports | High -- IT controls everything | | Explorer | Power user | Drag-and-drop, filter/drill, basic calculated fields | Medium -- curated datasets, governed metrics | | Analyst | Data analyst | Custom queries, blended data sources, advanced calculations | Low -- trusted users with guardrails | | Data scientist | Technical | SQL/Python/R, raw data access, notebooks | Minimal -- sandbox environments |
The right balance: governed metrics layer (semantic layer) + self-service exploration on top. Users can explore freely but always start from blessed metrics.
| Pattern | Description | Best For | |---|---|---| | iFrame embed | Embed BI tool's dashboard URL in an application | Quick integration, existing dashboards | | SDK / JavaScript API | Native integration with filtering, events, theming | Custom UX, interactive applications | | White-label | Remove BI vendor branding, full visual customization | SaaS products, customer-facing analytics | | Headless / API | Query the semantic layer via API, render with custom charts | Full control, D3.js/custom visualizations | | Static export | Scheduled PDF/image generation | Email reports, regulatory filings |
| Technology | Paradigm | Best For | Licensing | Trade-offs |
|---|---|---|---|---|
| Power BI | Enterprise BI | Microsoft ecosystem, DAX/M, self-service | Commercial (Pro/Premium/Fabric) | Microsoft lock-in, row limits in free tier, DAX complexity |
| Tableau | Enterprise BI | Visual exploration, VizQL, storytelling | Commercial (Creator/Explorer/Viewer) | Expensive at scale, server infrastructure, Prep Builder separate |
| SSAS | Enterprise BI / OLAP | Tabular/multidimensional models, DAX, MDX | Tied to SQL Server licensing | SQL Server dependency, legacy multidimensional declining |
| SSRS | Reporting | Paginated reports, subscriptions, print-ready | Tied to SQL Server licensing | Legacy feel, limited interactivity, Power BI replacing |
| Looker | Reporting / Governed | LookML semantic layer, embedded, Google Cloud | Google Cloud managed | LookML learning curve, Google Cloud dependency, developer-oriented |
| Apache Superset | SQL Analytics | Open-source BI, SQL Lab, dashboards | Apache 2.0 | Operational overhead, visualization limitations, no semantic layer |
| Metabase | SQL Analytics | Simple BI, question-based, embedding | AGPL / Commercial | Limited for complex analytics, weaker governance |
| Grafana | Operational | Time-series dashboards, alerting, observability | AGPL / Commercial | Not for business BI, limited data modeling, query-heavy |
| Qlik Sense | Enterprise BI | Associative engine, in-memory, explore-based | Commercial | Expensive, niche skills market, associative model unfamiliar |
| ThoughtSpot | Operational / AI | AI-driven search analytics, SpotIQ, natural language | Commercial | Expensive, search paradigm not for all use cases |
| DuckDB | SQL Analytics | In-process analytics, file-based, embedded | MIT | Not a BI tool -- query engine; see the duckdb skill (this plugin's BI-integration angle) or the database plugin's duckdb skill (core engine) |
| Analytics Type | Description | Strong Candidates | |---|---|---| | Self-service BI | Business users explore data, build own visualizations | Power BI, Tableau, Qlik Sense | | Paginated reporting | Pixel-perfect, print-ready, regulatory reports | SSRS, Looker, Power BI paginated | | Operational dashboards | Real-time monitoring, alerting, time-series | Grafana, ThoughtSpot | | Embedded analytics | Analytics inside a SaaS product or internal app | Metabase, Looker, Power BI Embedded, Superset | | Ad-hoc SQL | Data team querying warehouses directly | DuckDB, Superset, Metabase |
| Data Source Ecosystem | Natural Fit | Rationale | |---|---|---| | SQL Server / Azure | SSAS + SSRS + Power BI | Native integration, DirectQuery, shared licensing | | Google Cloud / BigQuery | Looker | Built-in BigQuery optimization, LookML on top of BigQuery | | AWS / Redshift / Athena | Superset, Metabase, QuickSight | Open-source tools connect via JDBC/ODBC; QuickSight is AWS-native | | Any JDBC/ODBC source | Tableau, Superset | Broadest connector libraries | | Parquet / CSV / local files | DuckDB | In-process, no server needed, zero-copy reads |
| User Persona | Best Tools | Why | |---|---|---| | Business executives | Power BI, Tableau | Polished dashboards, storytelling, mobile apps | | Business analysts | Power BI, Tableau, Qlik Sense | Self-service with governed datasets | | Data engineers / analysts | Superset, Metabase, DuckDB | SQL-native, lightweight, open-source | | Operations / SRE | Grafana | Time-series native, alerting, integrates with Prometheus/Loki | | Non-technical explorers | ThoughtSpot | Natural-language search, AI-driven insights |
| Budget Tier | Options | |---|---| | Zero / open-source only | Superset, Metabase (AGPL), Grafana (AGPL), DuckDB | | Per-user commercial | Power BI Pro ($10/user/mo), Tableau Explorer | | Enterprise capacity | Power BI Premium/Fabric, Tableau Server/Cloud, Qlik, ThoughtSpot | | Tied to existing licenses | SSAS/SSRS (SQL Server license), Looker (Google Cloud) |
This matters most. A team fluent in DAX will deliver faster with Power BI than a team learning Tableau from scratch, regardless of which tool benchmarks better. Factor in:
Route to these technology skills for deep implementation guidance:
| Request Pattern | Route To |
|---|---|
| Enterprise BI | |
| Power BI questions (DAX, M/Power Query, dataflows, Fabric, DirectQuery) | power-bi skill |
| Tableau questions (VizQL, LOD expressions, Prep Builder, Tableau Server/Cloud) | tableau skill (version nuance in its references/versions/) |
| Qlik Sense questions (set analysis, associative engine, Qlik Cloud, NPrinting) | qlik-sense skill |
| SSAS questions (tabular models, DAX, MDX, multidimensional, processing) | ssas skill (version nuance in its references/versions/) |
| Reporting | |
| SSRS questions (RDL, subscriptions, parameters, report builder) | ssrs skill (version nuance in its references/versions/) |
| Looker questions (LookML, Explores, derived tables, embedding, Looker Studio) | looker skill |
| SQL Analytics | |
| Apache Superset questions (SQL Lab, charts, dashboards, Jinja templating) | superset skill |
| Metabase questions (questions, collections, embedding, permissions) | metabase skill |
| DuckDB analytics questions (Parquet analysis, in-process OLAP, file queries) | duckdb skill |
| Operational | |
| Grafana questions (dashboards, alerting, data sources, Loki, Tempo) | grafana skill |
| ThoughtSpot questions (search analytics, SpotIQ, Liveboards, ThoughtSpot Everywhere) | thoughtspot skill |
| Scenario | Route To | Rationale |
|---|---|---|
| DuckDB as a database engine (not analytics) | duckdb skill, database plugin | Core DuckDB expertise lives in the database plugin |
| SQL Server platform context for SSAS/SSRS | sql-server skill, database plugin | Licensing, installation, platform-level config |
| Grafana for infrastructure monitoring | grafana skill, monitoring plugin | Monitoring use cases beyond dashboarding |
| Power BI connecting to specific databases | database plugin | Database-specific connection, optimization, DirectQuery tuning |
| Data pipeline feeding analytics | etl plugin | ETL/ELT, data warehouse loading, transformation |
| Technology | Where | Notes |
|---|---|---|
| Tableau | tableau skill's references/versions/2025.x.md, 2026.1.md | Major UI and Prep changes between versions |
| SSAS | ssas skill's references/versions/2019.md, 2022.md, 2025.md | Tied to SQL Server release cycle |
| SSRS | ssrs skill's references/versions/2019.md, 2022.md, 2025.md | Tied to SQL Server release cycle |
| Power BI | Managed service -- no version references | Rolling monthly updates |
| Grafana | Single skill, rolling 12.x | Continuous release model |
| Metabase, Superset, Looker, Qlik, ThoughtSpot | Managed / rolling -- no version references | Cloud-managed or continuous release |
"Grafana for business BI." Grafana is purpose-built for operational monitoring and time-series data (Prometheus, InfluxDB, Loki). It lacks a semantic layer, dimensional modeling support, and the self-service features business users expect. Use Grafana for ops dashboards; use Power BI, Tableau, or Superset for business analytics.
"Raw database access instead of a semantic layer." Without a governed metrics layer, every team writes their own SQL for "revenue." Marketing counts revenue at booking. Finance counts at invoice. Support counts at payment. The CEO sees three different numbers. Define metrics once in a semantic layer (Power BI dataset, SSAS model, LookML, dbt metrics).
"One dashboard to rule them all." A dashboard designed for the CEO, the regional manager, and the warehouse supervisor simultaneously serves none of them well. Different audiences need different levels of detail, different KPIs, and different interaction patterns. Design per-persona dashboards with shared underlying metrics.
"Reporting on transactional tables." Running BI queries against OLTP tables degrades application performance and produces slow reports. Build a data warehouse or mart with dimensional models. Even a simple nightly ETL into a star schema will outperform direct OLTP queries by 10-100x.
"No data governance." Self-service analytics without governance produces conflicting numbers, sensitive data exposure, and dashboard sprawl. Implement data certification, row-level security, and a content management strategy (archive stale dashboards, promote certified ones).
"Choosing tools before defining requirements." "We need Tableau" is not a requirement. "Our 200 regional managers need weekly sales performance dashboards with drill-to-store detail, accessible on tablets, refreshed by 6 AM" is a requirement. Start with the question, the audience, and the data -- then pick the platform.
Load these for deep foundational knowledge:
references/concepts.md -- Dimensional modeling, OLAP theory, semantic layers, visualization theory, dashboard design. Read for "how does X work" or "what's the right approach for Y" questions.references/paradigm-enterprise-bi.md -- Enterprise BI platforms (Power BI, Tableau, Qlik, SSAS). Read when evaluating full-featured BI suites for large organizations.references/paradigm-sql-analytics.md -- SQL-native analytics (DuckDB, Superset, Metabase). Read when evaluating lightweight, SQL-first tools for data teams.references/paradigm-reporting.md -- Reporting platforms (SSRS, Looker). Read when evaluating paginated reporting, embedded analytics, or governed semantic layers.references/paradigm-operational.md -- Operational analytics (Grafana, ThoughtSpot). Read when evaluating real-time dashboards, alerting, or AI-driven analytics.tools
kubectl command-line usage and scripting: kubeconfig and context management, output formats (jsonpath, custom-columns, go-template), all major verbs (get, describe, apply, delete, exec, logs, port-forward, rollout, scale, drain), workload resources, config/storage, networking, RBAC, node management, debugging (CrashLoopBackOff, ImagePullBackOff, OOMKilled), and scripting patterns (dry-run, diff, wait, jq, kustomize). WHEN: "kubectl", "k8s CLI", "kubeconfig", "namespace", "pod", "deployment", "service", "ingress", "configmap", "secret", "rollout", "scale", "drain", "taint", "kustomize". Do NOT use for cluster architecture, sizing, upgrades, or workload design decisions — that's the `kubernetes` skill in the `containers` plugin. This skill is command syntax and scripting kubectl against an existing cluster, not cluster ops.
tools
Bash 5.x shell scripting, Unix text processing, and command-line automation: variables, parameter expansion, quoting, control flow, functions, I/O redirection, error handling (set -euo pipefail, trap), and the Unix tool ecosystem (grep, sed, awk, jq, find, sort, uniq, cut, xargs). Covers process management, networking (curl, ssh, rsync, nc), file locking (flock), parallel execution, and production script patterns. WHEN: "Bash", "bash", "shell", "sh", ".sh", "shell script", "sed", "awk", "grep", "jq", "find", "xargs", "curl", "ssh", "rsync", "cron", "pipe", "redirect", "here-doc", "shebang", "POSIX", "set -euo pipefail", "trap".
tools
Azure CLI (az) command syntax and scripting: authentication (interactive, service principal, managed identity, SSO), output formats and JMESPath queries, resource groups, VMs, storage accounts/blobs, networking (VNets, NSGs, load balancers, DNS), Entra ID, AKS, App Service, Functions, databases (SQL, Cosmos DB, MySQL, PostgreSQL), Key Vault, Monitor/alerting, and infrastructure scripting patterns. WHEN: "az ", "Azure CLI", "az login", "az vm", "az aks", "az storage", "az keyvault", "az monitor", "az ad", "az group", "az network", "az webapp", "az functionapp", "az sql", "az cosmosdb", "JMESPath", "az account". Do NOT use for Azure architecture, landing zones, or multi-subscription strategy — that's the `cloud-platforms` plugin. This skill is about command syntax and scripting the CLI, not deciding what to provision.
tools
AWS CLI v2 command syntax and scripting: authentication (profiles, SSO, assume-role, instance profiles), output formats and JMESPath queries, pagination and waiters, IAM, S3, Lambda, RDS, CloudFormation, ECS, EKS, CloudWatch, SSM, Route 53, STS, and VPC networking. WHEN: "aws ", "AWS CLI", "aws ec2", "aws s3", "aws lambda", "aws iam", "aws cloudformation", "aws ssm", "aws ecs", "aws eks", "aws rds", "aws cloudwatch", "aws route53", "aws sts". Do NOT use for AWS architecture, service selection, multi-account strategy, or FinOps — that's the `cloud-platforms` plugin. This skill is about command syntax and scripting the CLI, not deciding what to provision.