Agent skill · Data & Analytics

officecli-data-dashboard

Use this skill to build a multi-element Excel dashboard — Dashboard sheet on open, multiple formula-driven KPI cards, multiple charts, sparklines, and conditional formatting — from CSV or tabular input. Trigger on: 'dashboard', 'KPI dashboard', 'analytics dashboard', 'executive dashboard', 'metrics dashboard', 'CSV to dashboard', 'data visualization'. Output is a single .xlsx. Scene-layer on officecli-xlsx: inherits every xlsx hard rule. DO NOT invoke for: a single budget tracker / one-sheet CSV-with-formatting (use xlsx), a 3-statement / DCF / LBO financial model (use financial-model), a week

iOfficeAIgithub.com/iOfficeAIGitHub ↗
claude-codecodexApache-2.0
Install
npx skills add iOfficeAI/OfficeCLI --skill officecli-data-dashboard --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 1
SKILL.md size: 29 KB
Bundled scripts: none
Path: skills/officecli-data-dashboard/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 25,311
Language: C#
Read our review of the source →

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

Review
written from the skill's own SKILL.md · Aug 5, 2026

What it does

Instructs an agent to construct a dashboard-focused Excel workbook starting with a Dashboard sheet opened first, containing multiple formula-driven KPI cards, charts linked to visible data ranges, sparklines, and semantic conditional formatting. The data and visuals are derived from CSV or tabular input, and the final deliverable is a single .xlsx. It avoids exposing raw data or aggregations on the Dashboard by keeping them upstream on Data/Summary sheets. The skill relies on the officecli-xlsx engine for all cell-level behavior, quoting, and validation, and inherits its hard rules.

How it works

  • It operates under a dashboard-first architecture: all KPI labels/values, charts, and sparklines reside on the Dashboard sheet; raw data lives upstream.
  • It specifies that the Dashboard sheet should be the active tab on open and requires full recalculation on load via calc.fullCalcOnLoad=true.
  • It enforces explicit chart data references (e.g., series1.values referencing visible cells) and ensures every KPI value cell uses a formula.
  • It provides a phased workflow example: create workbook, import data into a Data sheet, configure KPI cards on Dashboard, add a sparkline and a chart, then set fullCalcOnLoad and activate the Dashboard tab.
  • It includes explicit shell commands and options (officecli add/import/set) and cautions about long chart add commands being split across lines, and using query to determine multi-instance counts.
  • It outlines design constraints such as 0-based Dashboard index verification before filling activeTab, and a series of requirements for dashboards (title, names, visible data sources, CF rules, and print-ready steps).

When to use it

Use this skill when the user asks for a multi-element Excel dashboard with a Dashboard sheet opened first, KPI cards, multiple charts, sparklines, and conditional formatting, derived from CSV or tabular input. It should trigger on keywords like dashboard, KPI dashboard, analytics dashboard, executive dashboard, metrics dashboard, CSV to dashboard, or data visualization. Do not invoke for single-budget trackers, simple one-sheet CSV-with-formatting, 3-statement/DCF/LBO financial models, or a weekly report with minimal content, per its exclusions.

What it can touch

  • The skill relies on the officecli-xlsx tooling for sheet creation, data import, and property settings.
  • It references commands such as officecli create, officecli import, officecli add, officecli set, officecli query, and specific XPath/JSON handling to adjust workbook state and view.
  • It requires visible data ranges for charts (e.g., series1.values pointing to Sheet1 ranges) and ensures KPI cells contain formulas.

Caveats

  • Inherits all hard rules from officecli-xlsx; must honor shell quoting, batch JSON shapes, and validation discipline.
  • Long chart add commands must be split across lines with a trailing backslash to avoid shell-escape issues.
  • Multi-instance counts must be computed via officecli query "$FILE" chart --json | jq '.data.results | length' rather than other methods.
  • The dashboard must be the active tab on open, and final delivery should have a 0-based Dashboard index verified before setting activeTab.
  • Printing deliverables require specific steps to restrict to the Dashboard sheet and hide others; misconfiguration may produce multi-page outputs.
From the SKILL.md

# Data Dashboard (scene-layer on officecli-xlsx) A dashboard is not "a spreadsheet with charts". It is a composition: **one Dashboard sheet the user lands on** with formula-driven KPI cards, cell-range-linked charts, sparklines, and semantic conditional formatting. Everything else (raw data, aggregations) is upstream infrastructure the user should never need to open. This skill teaches the composition pattern. Everything about the xlsx engine — cells, formulas, batch JSON, shell quoting, validate, HTML preview — comes from `officecli-xlsx` and is not re-taught here. ## Setup If `officecli` is missing: - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash` - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex` Verify with `officecli --version` (open a new terminal if PATH hasn't picked up). If install fails, download a binary from https://github.com/iOfficeAI/OfficeCLI/releases. ## ⚠️ Help-First Rule **When a prop name, enum value, or alias is uncertain, consult help before guessing.** ```bash officecli help xlsx # element list officecli help xlsx chart # full schema for charts officecli help xlsx sparkline # sparklines officecli help xlsx con

What's inside
Steps it walks through
  1. Setup
  2. ⚠️ Help-First Rule
  3. Mental Model & Inheritance
  4. Shell & Execution Discipline
  5. Core Principles
  6. Requirements
  7. Quick Start
  8. Design Ideas
  9. Layout patterns (pick one, stay consistent)
  10. Complexity scaling by data size
  11. Chart type selection
  12. Preset options
  13. Conditional formatting — semantic colors
  14. KPI card anatomy
Commands it runs
officecli help xlsx                          # element list
officecli help xlsx chart                    # full schema for charts
officecli help xlsx sparkline                # sparklines
officecli help xlsx conditionalformatting    # all CF rule types
officecli create "$FILE"
officecli import "$FILE" /Sheet1 --file sales.csv --header
officecli set "$FILE" '/Sheet1/col[A]' --prop width=12
officecli set "$FILE" '/Sheet1/col[B]' --prop width=15
officecli set "$FILE" '/Sheet1/B2:B13' --prop numFmt='$#,##0'
officecli set "$FILE" '/Sheet1/A1:B1' --prop fill=1F3864 --prop font.color=FFFFFF --prop font.bold=true
More from OfficeCLI
All skills →
About this skill
What does the officecli-data-dashboard skill do?

Use this skill to build a multi-element Excel dashboard — Dashboard sheet on open, multiple formula-driven KPI cards, multiple charts, sparklines, and conditional formatting — from CSV or tabular input. Trigger on: 'dashboard', 'KPI dashboard', 'analytics dashboard', 'executive dashboard', 'metrics dashboard', 'CSV to dashboard', 'data visualization'. Output is a single .xlsx. Scene-layer on officecli-xlsx: inherits every xlsx hard rule. DO NOT invoke for: a single budget tracker / one-sheet CSV-with-formatting (use xlsx), a 3-statement / DCF / LBO financial model (use financial-model), a week

How do I install it?

Run `npx skills add iOfficeAI/OfficeCLI --skill officecli-data-dashboard --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From iOfficeAI/OfficeCLI, a repository with 25,311 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going