Agent skill

Modifying Theme JSON

by data-goblin in data-goblin/power-bi-agentic-development

Design, enforce, audit, and validate Power BI report themes through the pbir CLI.

GPL-3.0Auto-check passedData & Analytics

Install Modifying Theme JSON

skills CLI
$ npx skills add data-goblin/power-bi-agentic-development --skill modifying-theme-json -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install data-goblin/power-bi-agentic-development modifying-theme-json --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/data-goblin/power-bi-agentic-development.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/reports/skills/modifying-theme-json .claude/skills/modifying-theme-json && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
modifying-theme-json
GitHub stars
1k
Token cost
~1.7k tokens
SKILL.md length
557 words
Files
54 (incl. references)
Skills in repo
33
Repo updated
First seen
Licence
GPL-3.0

At a glance

Design, enforce, audit, and validate Power BI report themes through the pbir CLI.

  • Works in 7 steps: Limit the data palette to the number of… → Reserve saturated accent colors for… → Assign one stable meaning to each… → …
  • Tasks that involve Brand strategy and identity
  • SKILL.md covers Non-negotiable tooling rule, Why themes matter, Formatting cascade and Audit before changing, plus 7 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Modifying Theme JSON is an agent skill from data-goblin/power-bi-agentic-development. Design, enforce, audit, and validate Power BI report themes through the pbir CLI. Invoke when a report uses a default or minimal theme, visuals have inconsistent formatting or many local overrides, or the user asks to create, copy, apply, standardize, rebrand, audit, or validate a theme; change theme colors or typography; define style presets; promote visual formatting into the theme; clear overrides; or improve theme compliance.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 55 other files, including reference files (for example `examples/DataGoblins2021.json`, `examples/Fluent2-CY26SU03.json` and `examples/visualTypes/actionButton.md`).

It sits in Data & Analytics, covering Brand strategy and identity and Typography. It works with Power BI. The repository describes itself as: 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… The licence is GPL-3.0.

When your agent uses it

  • Tasks that involve Brand strategy and identity
  • Tasks that involve Typography

Example prompts

  • “/modifying-theme-json”

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Limit the data palette to the number of categories the report genuinely needs.
  2. Reserve saturated accent colors for focus, selection, exceptions, and key comparisons.
  3. Assign one stable meaning to each semantic color. Good, neutral, bad, selected, disabled, and hyperlink colors must not trade roles across…
  4. Keep structural colors quiet. Axes, borders, gridlines, and backgrounds should support reading rather than compete with data.
  5. Use one portable font family and a small type scale. Express hierarchy through size and weight, not many colors.
  6. Prefer wildcard defaults, then visual-type defaults, then rare instance overrides.
  7. Preserve accessible contrast and never rely on hue alone to communicate state.

What it can do on your machine

Read from SKILL.md and the folder at commit a301717. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Modifying Theme JSON loads about 1.7k tokens when it runs, and up to ~2.8k if it reads all its reference files. Until then it costs about 114 tokens; SKILL.md has 557 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~114
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~2.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from data-goblin/power-bi-agentic-development at commit a301717, republished under its GPL-3.0 licence (© data-goblin). 557 words, ~1,671 tokens.

Download SKILL.mdSave it as .claude/skills/modifying-theme-json/SKILL.md (or your agent's skills folder). This skill also uses 53 other files; get the full folder from GitHub.
name
modifying-theme-json
description
Design, enforce, audit, and validate Power BI report themes through the pbir CLI. Invoke when a report uses a default or minimal theme, visuals have inconsistent formatting or many local overrides, or the user asks to create, copy, apply, standardize, rebrand, audit, or validate a theme; change theme colors or typography; define style presets; promote visual formatting into the theme; clear overrides; or improve theme compliance.

Power BI report themes

Use this skill for theme design and compliance decisions. Use the pbir-cli skill for command details.

Non-negotiable tooling rule

Use pbir for every report and theme mutation. Never edit theme.json, visual.json, serialized .Theme fragments, or other report JSON directly. Never fall back to jq, shell replacement, or a JSON-editing skill. If pbir lacks the required operation, stop and report the missing capability.

Read JSON only through pbir cat, pbir get, or read-only examples. Prefer structured CLI inspection commands because they explain the formatting cascade and usage.

Why themes matter

A theme centralizes formatting that would otherwise drift across visuals. It should own repeated choices such as:

  • Data-series palette and semantic good/neutral/bad colors
  • Background, foreground, structural, gradient, hyperlink, and null colors
  • Font family, size, weight, and hierarchy
  • Wildcard container defaults such as titles, borders, padding, and shadows
  • Visual-type defaults for cards, slicers, charts, tables, textboxes, and images

Visual-level overrides should remain only for content-specific exceptions or conditional formatting. Theme-first reports are easier to rebrand, diff, and maintain.

Formatting cascade

text
Power BI defaults
  -> theme wildcard defaults
  -> theme visual-type defaults
  -> selected style preset
  -> visual instance overrides

The last layer wins. Diagnose unexpected rendering with pbir visuals format, which reports the effective value and source; do not inspect or patch visual.json.

Audit before changing

bash
pbir theme colors "Report.Report"
pbir theme fonts "Report.Report"
pbir color list "Report.Report"
pbir fonts list "Report.Report"
pbir visuals format "Report.Report/Page.Page/Visual.Visual"
pbir bpa run "Report.Report"

Look for hard-coded colors, repeated visual-level font or container overrides, inconsistent visual types, weak contrast, excessive palette size, and sentiment colors that change meaning between visuals.

Design rules

  1. Limit the data palette to the number of categories the report genuinely needs.
  2. Reserve saturated accent colors for focus, selection, exceptions, and key comparisons.
  3. Assign one stable meaning to each semantic color. Good, neutral, bad, selected, disabled, and hyperlink colors must not trade roles across pages.
  4. Keep structural colors quiet. Axes, borders, gridlines, and backgrounds should support reading rather than compete with data.
  5. Use one portable font family and a small type scale. Express hierarchy through size and weight, not many colors.
  6. Prefer wildcard defaults, then visual-type defaults, then rare instance overrides.
  7. Preserve accessible contrast and never rely on hue alone to communicate state.
Show full SKILL.md (219 more words)Show less

Author through pbir

Start from a valid template or the report's existing theme; do not author an empty theme.

bash
# Apply a known base when requested
pbir theme list-templates
pbir theme apply-template "Report.Report" sqlbi

# Set palette and semantic colors
pbir theme set-colors "Report.Report" \
  --data-colors '["#1971C2","#F08C00","#2F9E44","#7048E8"]' \
  --good "#2E7D32" --neutral "#6B7280" --bad "#C62828" \
  --background "#FFFFFF" --foreground "#252525"

# Set typography by semantic level
pbir theme set-fonts "Report.Report" title --font-face "Segoe UI Semibold" --font-size 14
pbir theme set-fonts "Report.Report" label --font-face "Segoe UI" --font-size 10
pbir theme set-fonts "Report.Report" callout --font-face "Segoe UI Semibold" --font-size 32

# Set repeated formatting at theme level
pbir theme set-formatting "Report.Report" "*.*.dropShadow.show" --value false
pbir theme set-formatting "Report.Report" "*.*.border.show" --value false
pbir theme set-formatting "Report.Report" "card.*.title.fontSize" --value 14

Run pbir schema describe <visualType> <object> before authoring unfamiliar formatting properties.

Promote a good visual into the theme

bash
pbir theme push-visual "Report.Report/Page.Page/BestCard.Visual" --dry-run
pbir theme push-visual "Report.Report/Page.Page/BestCard.Visual"

Use this when a well-designed instance should become the default for its visual type. Inspect the dry run first so content-specific formatting is not promoted accidentally.

Enforce theme inheritance

Clearing overrides is destructive and must be confirmed with the user. Preserve conditional formatting unless the user explicitly wants it removed.

bash
pbir visuals clear-formatting "Report.Report/**/*.Visual" --keep-cf --dry-run -f
pbir visuals clear-formatting "Report.Report/**/*.Visual" --keep-cf -f
pbir theme colors "Report.Report" --normalize
pbir theme colors "Report.Report" --normalize --apply

For selective cleanup, use the flags documented by pbir visuals clear-formatting --help rather than broad file edits.

Copy or replace a theme

bash
pbir cp "Source.Report/theme" "Target.Report/theme" -f
pbir theme validate "Target.Report"

After a theme swap, clear stale visual overrides, normalize surviving color literals, and inspect foreground/background polarity so text does not become invisible.

Validate and render

Use one confidence pass after a coherent batch:

bash
pbir theme validate "Report.Report"
pbir validate "Report.Report" --all
pbir desktop refresh "Report.Report"
pbir desktop screenshot "Report.Report" --all --output-dir screenshots

Desktop refresh does not reload theme resources. Close and reopen the report before judging theme changes, then capture screenshots. If Desktop is unavailable, ask before publishing to a sandbox workspace for rendered verification.

Detailed references

  • references/style-presets.md: named style presets per visual type, default preset, selecting a preset on visuals
  • pbir-cli -> references/modifying-theme.md: colors, fonts, formatting, normalization, validation
  • pbir-cli -> references/apply-theme.md: templates, copying, clearing overrides
  • pbir-cli -> references/format-visuals.md: cascade inspection and property discovery
  • pbi-report-design: layout, restrained color use, hierarchy, and accessibility

© data-goblin, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 53 other files (references) in plugins/reports/skills/modifying-theme-json of data-goblin/power-bi-agentic-development.

  • SKILL.md
  • examples/DataGoblins2021.json
  • examples/Fluent2-CY26SU03.json
  • examples/visualTypes/actionButton.md
  • examples/visualTypes/advancedSlicerVisual.md
  • examples/visualTypes/aiNarratives.md
  • examples/visualTypes/areaChart.md
  • examples/visualTypes/azureMap.md
  • examples/visualTypes/barChart.md
  • examples/visualTypes/bookmarkNavigator.md
  • examples/visualTypes/card.md
  • examples/visualTypes/cardVisual.md
  • examples/visualTypes/clusteredBarChart.md
  • examples/visualTypes/clusteredColumnChart.md
  • examples/visualTypes/columnChart.md
  • examples/visualTypes/decompositionTreeVisual.md
  • examples/visualTypes/donutChart.md
  • examples/visualTypes/filledMap.md
  • examples/visualTypes/filter.md
  • … and 35 more

Open the folder on GitHubat commit a301717

Compare with similar skills

Modifying Theme JSON next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Modifying Theme JSON compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Modifying Theme JSON this skilldata-goblin/power-bi-agentic-development1k—~1.7kAutomated safety check: PassGPL-3.0
Brand Guidelinescomposio-community/awesome-codex-skills17k—~617Automated safety check: PassApache-2.0
Brand Dnathatrebeccarae/claude-marketing162—~1.8kAutomated safety check: PassMIT
Brand Guidelinesnexu-io/open-design100k—~346Automated safety check: PassApache-2.0
Brand Guidelines Anthropicaiskillstore/marketplace4304 repos~587Automated safety check: PassApache-2.0
Brand Identitycbrock84/headcount2k—~783Automated safety check: PassMIT

Similar skills

  • Brand Guidelines

    composio-community/awesome-codex-skills

    Applies OpenAI's brand colors and typography to any artifact that should match the Codex/OpenAI look-and-feel.

    17k GitHub stars~617 tokensUpdated 2 mo ago
    Frontend & DesignAuto-check passed
  • Brand Dna

    thatrebeccarae/claude-marketing

    Extract brand identity from a website URL — voice, colors, typography, imagery, values, and target audience — into a structured brand-profile.json.

    162 GitHub stars~1.8k tokensUpdated 4 mo ago
    Media & CreativeAuto-check passed
  • Brand Guidelines

    nexu-io/open-design

    Apply Anthropic's official brand colors and typography to artifacts for consistent visual identity and professional design standards.

    100k GitHub stars~346 tokensUpdated today
    Media & CreativeAuto-check passed
  • Brand Guidelines Anthropic

    aiskillstore/marketplace

    Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel.

    430 GitHub starsUsed in 4 repos~587 tokens
    Frontend & DesignAuto-check passed
  • Brand Identity

    cbrock84/headcount

    Defines and applies visual brand — logo usage, palette, typography, imagery direction, and the guidelines that keep expression consistent across product and marketing surfaces.

    2k GitHub stars~783 tokensUpdated 20 days ago
    Media & CreativeAuto-check passed
  • Od Brand Guidelines

    criptogus/agent-evolve-network

    Apply Anthropic's official brand colors and typography to artifacts for consistent visual identity and professional design standards Use when the user asks for brand guidelines work, or mentions od…

    288 GitHub stars~831 tokensUpdated 28 days ago
    Marketing & SEOAuto-check passed

More from data-goblin/power-bi-agentic-development

All 33 skills in this repo
  • Paginated Report

    data-goblin/power-bi-agentic-development

    Author, validate, publish, and test Power BI paginated reports in the RDL format.

    1k GitHub stars~3.5k tokensUpdated yesterday
    Auto-check passed
  • Audit Tenant Settings

    data-goblin/power-bi-agentic-development

    Automatically invoke this skill whenever the user asks about Fabric tenant settings or Power BI tenant settings or auditing tenant settings.

    1k GitHub stars~4.7k tokensUpdated yesterday
    Auto-check passed
  • Bpa Rules

    data-goblin/power-bi-agentic-development

    Interactive BPA rule generation for Power BI semantic models; guided discovery, model investigation, and expert rule authoring.

    1k GitHub stars~4.4k tokensUpdated yesterday
    Auto-check passed
  • Pbip

    data-goblin/power-bi-agentic-development

    Guidance for Power BI Project (PBIP) structure, thick and thin reports, project renames, forks, and validation.

    1k GitHub stars~3.8k tokensUpdated yesterday
    Auto-check passed
  • Review Report

    data-goblin/power-bi-agentic-development

    Actionable feedback on the quality, usage, and effectiveness of Power BI reports.

    1k GitHub stars~4.2k tokensUpdated yesterday
    Auto-check passed
  • Semantic Model

    data-goblin/power-bi-agentic-development

    This skill should be used whenever the user mentions a "semantic model", "data model", or "dataset", or asks to "build", "model", "design", "optimize", "review", or "audit" one, or to "add a…

    1k GitHub stars~2.8k tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Modifying Theme JSON

What does Modifying Theme JSON do?

Design, enforce, audit, and validate Power BI report themes through the pbir CLI. Modifying Theme JSON is an agent skill from data-goblin/power-bi-agentic-development. Design, enforce, audit, and validate Power BI report themes through the pbir CLI.

When should I use Modifying Theme JSON?

Modifying Theme JSON fits situations like: tasks that involve Brand strategy and identity; tasks that involve Typography.

How do I install Modifying Theme JSON in Claude Code?

Run `npx skills add data-goblin/power-bi-agentic-development --skill modifying-theme-json -a claude-code`. Or copy the skill folder (plugins/reports/skills/modifying-theme-json in data-goblin/power-bi-agentic-development) into .claude/skills/modifying-theme-json in your project. Claude Code loads it when a task matches its description.

How do I install Modifying Theme JSON in Codex?

Run `npx skills add data-goblin/power-bi-agentic-development --skill modifying-theme-json -a codex`. Or copy the skill folder (plugins/reports/skills/modifying-theme-json in data-goblin/power-bi-agentic-development) into .agents/skills/modifying-theme-json in your project. Codex loads it when a task matches its description.

Can I use Modifying Theme JSON in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add data-goblin/power-bi-agentic-development --skill modifying-theme-json -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/modifying-theme-json, .gemini/skills/modifying-theme-json, .github/skills/modifying-theme-json and .opencode/skills/modifying-theme-json in your project.

What does Modifying Theme JSON need to run?

SKILL.md names no scripts, command-line tools or credentials: Modifying Theme JSON is instructions for the agent only.

Does Modifying Theme JSON access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Modifying Theme JSON safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Modifying Theme JSON use?

Modifying Theme JSON is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Modifying Theme JSON use?

About 1.7k tokens (SKILL.md is roughly 6.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.1k tokens, read only when the agent opens those files.

What are the alternatives to Modifying Theme JSON?

Skills that share tags, products or a category with Modifying Theme JSON: Brand Guidelines (composio-community/awesome-codex-skills, 17k stars), Brand Dna (thatrebeccarae/claude-marketing, 162 stars), Brand Guidelines (nexu-io/open-design, 100k stars) and Brand Guidelines Anthropic (aiskillstore/marketplace, 430 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Modifying Theme JSON?

data-goblin (a GitHub user) maintains it in data-goblin/power-bi-agentic-development, which has 1,031 GitHub stars. The repository holds 33 skills in this directory. The repository was last updated on October 7, 2026.

Source: data-goblin/power-bi-agentic-development on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.