deneb-visuals
Deneb visual creation, Vega/Vega-Lite spec authoring, and Deneb best practices for PBIR reports. Automatically invoke whenever…
Format reference for Power BI Enhanced Report (PBIR) JSON schemas and patterns. Automatically invoke when the user asks about PBIR JSON structure, visual.json properties, PBIR expressions, objects vs visualContainerObjects, theme inheritance, conditional formatting patterns,
Claude Code
$ npx -y skills add data-goblin/power-bi-agentic-development --skill pbir-format --agent claude-code
Codex
$ npx skills add data-goblin/power-bi-agentic-development --skill pbir-format -a codex -y
Cursor
$ npx skills add data-goblin/power-bi-agentic-development --skill pbir-format -a cursor -y
Gemini CLI
$ npx skills add data-goblin/power-bi-agentic-development --skill pbir-format -a gemini-cli -y
GitHub Copilot
$ npx skills add data-goblin/power-bi-agentic-development --skill pbir-format -a github-copilot -y
OpenCode
$ npx skills add data-goblin/power-bi-agentic-development --skill pbir-format -a opencode -y
Windsurf
$ npx skills add data-goblin/power-bi-agentic-development --skill pbir-format -a windsurf -y
name: pbir-format description: Format reference for Power BI Enhanced Report (PBIR) JSON schemas and patterns. Automatically invoke when the user asks about PBIR JSON structure, visual.json properties, PBIR expressions, objects vs visualContainerObjects, theme inheritance, conditional formatting patterns, extension measures, bookmarks, field references, filter formatting, query roles, PBIR page structure, report wallpaper, or any PBIR metadata format question.
Skill that teaches Claude about the Power BI Enhanced Report (PBIR) JSON format to read and use it. Doesn't support legacy `report.json` or `layout` report metadata. To convert from legacy to PBIR format, users have to open and save their reports in Power BI Desktop.
Follow within reason the [mental model](./important/MENTAL-MODEL.md) when working with reports.
**Hard rule:** Treat PBIR JSON as an implementation detail. Read it when schema context is useful, but make every report, visual, page, bookmark, filter, mobile-layout, and theme change through `pbir`. Never hand-edit, text-replace, or script writes to report JSON. If `pbir` cannot express a requested mutation, stop and report the capability gap instead of inventing a raw-JSON fallback.
Desktop or `pbir report convert` for supported conversions; do not unzip, rezip, or patch PBIX internals. Do not work directly on PBIT files.
Report.Report/
+-- .pbi/localSettings.json # Local-only, gitignored
+-- .platform # Fabric Git integration
+-- definition.pbir # Semantic model connection (byPath or byConnection) can open this file in Power BI Desktop to open the report
+-- mobileState.json # PBIR-Legacy artifact only; current PBIR stores phone layout per-visual in mobile.json
+-- semanticModelDiagramLayout.json # Model diagrams
+-- CustomVisuals/ # Private custom visuals only
+-- definition/
| +-- version.json # REQUIRED -- PBIR version
| +-- report.json # REQUIRED -- report-level config, including theme, report filters, settings
| +-- reportExtensions.json # Extension measures and visual calculations (report- and visual-level DAX)
| +-- pages/
| | +-- pages.json # Page order, active page
| | +-- [PageName]/ # Power BI Desktop may generate names with spaces; recommend no spaces for human-authored names
| | +-- page.json # Page-level properties, including size, background, filters
| | +-- visuals/
| | +-- [VisualName]/
| | +-- visual.json # Visual config, formatting, and field data bindings <-- most important and complex file for report dev and formatting
| | +-- mobile.json # Mobile formatting of the visual (niche)
| +-- bookmarks/ # Bookmarks are a bad practice and should be avoided if possible!
| +-- bookmarks.json # Bookmark order and groups
| +-- [id].bookmark.json # Individual bookmark state containing a snapshot of the report basically
+-- StaticResources/
+-- RegisteredResources/ # Custom themes, images
+-- [ThemeName].json # Custom theme <-- second most important and complex file for formatting
+-- SharedResources/BaseThemes/ # Microsoft base themesFollow within reason the [mental model](./important/MENTAL-MODEL.md) when reviewing or providing feedback on reports.
1. Understand the user's request. Ask questions if necessary to clarify the business context -- focus on the business process, the users, and the model 2. Explore the report efficiently to locate relevant pages and visuals 3. Check the connected semantic model. For thin reports (`byConnection`), use `fab`, `pbir`, or `te` CLI tools to explore the model. For `byPath`, connect to the local model in Power BI Desktop. Understanding the model reveals available fields and calculation logic 4. Identify the appropriate visuals and pages to modify. Ask the user for clarification if needed 5. Plan modifications with the correct PBIR structure and property values
1. Same workflow as modifying, except the report is generated with `pbir new`. Do not scaffold
Power BI AI skills and Power BI agents for Claude Code and GitHub Copilot: a plugin marketplace of Power BI skills, subagents, and hooks for semantic models, DAX, TMDL, reports, and AI dashboards. Includes Microsoft Fabric skills and Fabric agents. Weekly updates.
Deneb visual creation, Vega/Vega-Lite spec authoring, and Deneb best practices for PBIR reports. Automatically invoke whenever…
Power BI custom visual (.pbiviz) development with the pbiviz toolchain and its MCP server. Automatically invoke when the user…
Python visual creation and matplotlib/seaborn patterns for PBIR reports. Automatically invoke when the user mentions "Python…
R visual creation and ggplot2 patterns for PBIR reports. Automatically invoke when the user mentions "R visual", "ggplot2",…
SVG generation via DAX measures and extension measures with ImageUrl data category for inline visualizations in PBIR reports,…
Design and revise Claude Dashboards that people trust and can read at a glance, and handle the comments people leave on them. Use…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.