Agent skill · Design & Presentation

pbir-format

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.

data-goblingithub.com/data-goblinGitHub ↗
claude-codecopilotGPL-3.0
Install
npx skills add data-goblin/power-bi-agentic-development --skill pbir-format --agent claude-code

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

Facts
Files in the skill folder: 124
SKILL.md size: 17 KB
Bundled scripts: none
Path: plugins/pbip/skills/pbir-format/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 833
Language: C#

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

From the SKILL.md

# PBIR Format Reference 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. ## General, critical guidance - **Check examples:** Check [examples](./examples/) for a valid report - **Take a backup:** Make a copy of the report before modifying it - **PBIX vs PBIP vs PBIR:** Work on a local `.Report` folder in PBIR format. Use Power BI Desktop or `pbir report convert` for supported conversions; do not unzip, rezip, or patch PBIX internals. Do not work directly on PBIT files. - **Valid JSON vs. Ren

What's inside
Steps it walks through
  1. General, critical guidance
  2. Report Structure
  3. Rules
  4. Modifying a report
  5. Creating a report
  6. Additional validation
  7. What to Read for Common Tasks
  8. definition.pbir
  9. Related Skills
  10. References
Ships with 24 files
  • examples/K201-MonthSlicer.Report/.platform
  • examples/K201-MonthSlicer.Report/StaticResources/RegisteredResources/SqlbiDataGoblinTheme.json
  • examples/K201-MonthSlicer.Report/StaticResources/SharedResources/BaseThemes/CY24SU10.json
  • examples/K201-MonthSlicer.Report/definition.pbir
  • examples/K201-MonthSlicer.Report/definition/bookmarks/54698b9cd0a0c57906b7.bookmark.json
  • examples/K201-MonthSlicer.Report/definition/bookmarks/71abeb475381792b035d.bookmark.json
  • examples/K201-MonthSlicer.Report/definition/bookmarks/82ce9a7f49847d03190a.bookmark.json
  • examples/K201-MonthSlicer.Report/definition/bookmarks/8f5a4883bde0d3bd075d.bookmark.json
  • examples/K201-MonthSlicer.Report/definition/bookmarks/958f29ad733c047ee0b8.bookmark.json
  • examples/K201-MonthSlicer.Report/definition/bookmarks/bookmarks.json
  • examples/K201-MonthSlicer.Report/definition/bookmarks/e5b8aa0b8e0565be9ce0.bookmark.json
  • examples/K201-MonthSlicer.Report/definition/pages/AfterReport.Page/page.json
  • examples/K201-MonthSlicer.Report/definition/pages/AfterReport.Page/visuals/ButtonSlicer_TopCenter.Visual/visual.json
  • examples/K201-MonthSlicer.Report/definition/pages/AfterReport.Page/visuals/ButtonSlicer_TopCenter_2.Visual/visual.json
  • examples/K201-MonthSlicer.Report/definition/pages/AfterReport.Page/visuals/KPI_TopLeft.Visual/visual.json
  • examples/K201-MonthSlicer.Report/definition/pages/AfterReport.Page/visuals/LineChart_TopLeft.Visual/visual.json
  • examples/K201-MonthSlicer.Report/definition/pages/AfterReport.Page/visuals/ScatterChart_MiddleLeft.Visual/visual.json
  • examples/K201-MonthSlicer.Report/definition/pages/AfterReport.Page/visuals/Table_TopCenter.Visual/visual.json
  • examples/K201-MonthSlicer.Report/definition/pages/AfterReport.Page/visuals/Textbox_TopLeft.Visual/visual.json
  • examples/K201-MonthSlicer.Report/definition/pages/Before Report.Page/page.json
  • examples/K201-MonthSlicer.Report/definition/pages/Before Report.Page/visuals/KPI_TopLeft.Visual/visual.json
  • examples/K201-MonthSlicer.Report/definition/pages/Before Report.Page/visuals/Line Chart_TopLeft.Visual/visual.json
  • examples/K201-MonthSlicer.Report/definition/pages/Before Report.Page/visuals/Scatter Chart_MiddleLeft.Visual/visual.json
  • examples/K201-MonthSlicer.Report/definition/pages/Before Report.Page/visuals/Slicer_TopCenter.Visual/visual.json
first 24 of 124
More from power-bi-agentic-development
All skills →
About this skill
What does the pbir-format skill do?

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.

How do I install it?

Run `npx skills add data-goblin/power-bi-agentic-development --skill pbir-format --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 data-goblin/power-bi-agentic-development, a repository with 833 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