Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Powerbi Report Structure

ASecurity

Programmatic Power BI report structure automation via pbir.tools - add/delete/reorder pages, create/position/bind visuals, manage filters, bookmarks, and visual field bindings without opening Power BI Desktop. Use when the user mentions: add page, add visual, add filter, add bookmark, delete page, delete visual, remove visual, reorder pages, hide page, bind field, field binding, visual field, filter pane, lock filter, hide filter, bookmark, align visuals, z-order, report automation, PBIR, pbi...

3 stars
0 votes
0 copies
0 views
Added 10/6/2026
datagobashci/cd

Works with

claude codecli

Security Analysis

A96/100
mediumInstalls packages at runtime which could introduce malicious dependencies

Pro shows the line behind each finding and how to fix it

Scanned 10/6/2026

$npx -y skills add santoshkanthety/powerbi-agent --skill powerbi-report-structure --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Powerbi Report Structure?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Powerbi Report Structure
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/santoshkanthety-powerbi-report-structure/badge)](https://www.skillsdirectory.com/skills/santoshkanthety-powerbi-report-structure)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: powerbi-report-structure
description: Programmatic Power BI report structure automation via pbir.tools - add/delete/reorder pages, create/position/bind visuals, manage filters, bookmarks, and visual field bindings without opening Power BI Desktop. Use when the user mentions: add page, add visual, add filter, add bookmark, delete page, delete visual, remove visual, reorder pages, hide page, bind field, field binding, visual field, filter pane, lock filter, hide filter, bookmark, align visuals, z-order, report automation, PBIR, pbir.tools.
license: MIT
---

# Report Structure Automation with pbir.tools

`pbir.tools` enables complete programmatic control over Power BI report structure — pages, visuals, filters, and bookmarks — without opening Power BI Desktop GUI. It works on PBIR format (folder-based reports).

## Installation

```bash
# Install pbir.tools
uv tool install pbir-cli

# Or via npm
npm install -g pbir-tools

# Install agent skills (registers with Claude Code automatically)
pbir setup
```

## Exploring Report Structure

```bash
# Tree view of entire report
pbir tree report.Report

# List all pages with visual counts
pbir ls report.Report --pages

# List visuals on a specific page
pbir ls report.Report/definition/pages/RevenueOverview --visuals --verbose

# Find visuals using a specific field
pbir find report.Report --field "Orders[Revenue]"

# Output raw JSON for any element
pbir cat report.Report/definition/pages/RevenueOverview

# Get a specific property using dot notation
pbir get report.Report "pages.RevenueOverview.displayName"
```

## Page Management

```bash
# Add a new page
pbir add page report.Report "Executive Summary"

# Rename a page
pbir pages rename report.Report "RevenueOverview" "Revenue Overview"

# Set page size (preset dimensions)
pbir pages resize report.Report "Executive Summary" --type "16:9"
pbir pages resize report.Report "Mobile View" --type "mobile"

# Reorder pages (move to index)
pbir pages reorder report.Report "Executive Summary" --index 0

# Hide/show a page (tooltip pages, drillthrough)
pbir pages hide report.Report "Drillthrough - Customer"
pbir pages unhide report.Report "Drillthrough - Customer"

# Set active page (default landing page)
pbir pages set-active report.Report "Executive Summary"

# Add background color or wallpaper
pbir pages background report.Report "Executive Summary" --color "#1a1a2e"

# Delete a page (requires --force)
pbir rm report.Report/definition/pages/OldPage --force
```

## Visual Management

```bash
# Add a card visual
pbir add visual report.Report/definition/pages/Overview card \
  --title "Total Revenue" \
  --x 20 --y 20 --width 240 --height 120

# Add a line chart
pbir add visual report.Report/definition/pages/Overview lineChart \
  --title "Revenue Trend" \
  --x 280 --y 20 --width 600 --height 300

# Add a table
pbir add visual report.Report/definition/pages/Overview tableEx \
  --title "Order Details" \
  --x 20 --y 160 --width 840 --height 400

# Position and resize an existing visual
pbir visuals report.Report/definition/pages/Overview/visuals/Card001 \
  position --x 40 --y 40

pbir visuals report.Report/definition/pages/Overview/visuals/Card001 \
  resize --width 300 --height 150

# Align multiple visuals
pbir visuals report.Report/definition/pages/Overview align --top \
  --visuals Card001,Card002,Card003

# Z-order (bring forward / send back)
pbir visuals report.Report/definition/pages/Overview/visuals/ChartBg \
  z-order send-to-back

# Hide/show visual
pbir visuals report.Report/definition/pages/Overview/visuals/Watermark hide

# Delete a visual (requires --force)
pbir rm report.Report/definition/pages/Overview/visuals/OldChart --force
```

## Field Binding (Data Connections)

```bash
# Bind a field to a visual role
pbir visuals report.Report/definition/pages/Overview/visuals/RevenueCard \
  fields add "Orders[Revenue]" --role "Values"

pbir visuals report.Report/definition/pages/TrendChart/visuals/LineChart \
  fields add "Calendar[Date]" --role "Axis"

pbir visuals report.Report/definition/pages/TrendChart/visuals/LineChart \
  fields add "Orders[Revenue]" --role "Values"

# List all fields bound to a visual
pbir visuals report.Report/definition/pages/Overview/visuals/RevenueCard \
  fields list

# Replace a field across all visuals (rename/model change)
pbir fields replace report.Report \
  --from "OldTable[OldColumn]" \
  --to "NewTable[NewColumn]"

# Find all visuals using a specific field
pbir fields find report.Report --field "Customers[Email]"

# Remove all field bindings from a visual
pbir visuals report.Report/definition/pages/Overview/visuals/OldCard \
  fields clear
```

## Filter Management

```bash
# List all report-level filters
pbir filters list report.Report

# List page-level filters
pbir filters list report.Report/definition/pages/Overview

# Add a filter to a page
pbir add filter report.Report/definition/pages/Overview "Calendar[Year]"

# Lock a filter (prevent users changing it)
pbir filters lock report.Report "Calendar[Year]"

# Hide a filter from the filter pane
pbir filters hide report.Report "Internal[DebugFlag]"

# Collapse the filter pane by default
pbir filters pane-collapse report.Report

# Clear filter values (reset to "All")
pbir filters clear report.Report/definition/pages/Overview "Calendar[Year]"

# Rename a filter display name
pbir filters rename report.Report "Calendar[FiscalYear]" "Fiscal Year"
```

## Bookmark Automation

```bash
# List all bookmarks
pbir bookmarks list report.Report

# Add a bookmark capturing current state
pbir add bookmark report.Report "YTD View" \
  --page "Revenue Overview" \
  --capture-filters \
  --capture-visuals

# Configure what a bookmark captures
pbir bookmarks report.Report "YTD View" \
  current-page true \
  visuals "RevenueCard,TrendLine"

# Rename a bookmark
pbir bookmarks rename report.Report "YTD View" "Year-to-Date Overview"
```

## Validation and Safety

```bash
# Validate report structure before publishing
pbir validate report.Report

# Full QA check (field connectivity, broken references, etc.)
pbir validate report.Report --qa --strict

# Create backup before making changes
pbir backup report.Report --description "Before field replacement"

# List backups
pbir backup list report.Report

# Restore if something goes wrong
pbir restore report.Report --latest
```

## Batch Automation

Automate bulk operations via spec files — ideal for CI/CD:

```yaml
# batch-spec.yaml
operations:
  - type: add_visual
    page: "Executive Summary"
    visual_type: card
    title: "Total Revenue"
    field: "Orders[Revenue]"
    position: {x: 20, y: 20, width: 240, height: 120}

  - type: add_filter
    page: "Executive Summary"
    field: "Calendar[Year]"
    locked: true

  - type: set_active_page
    page: "Executive Summary"
```

```bash
# Preview batch plan
pbir batch batch-spec.yaml --plan

# Execute batch operations
pbir batch batch-spec.yaml --run
```

## CLI Reference

```bash
pbir tree report.Report                              # View full report structure
pbir ls report.Report --pages                        # List pages
pbir add page report.Report "New Page"               # Add page
pbir add visual report.Report/pages/P1 card          # Add visual
pbir visuals .../V1 fields add "T[Col]" --role Values # Bind field
pbir filters lock report.Report "T[Col]"             # Lock filter
pbir bookmarks list report.Report                    # List bookmarks
pbir validate report.Report --qa                     # Validate
pbir backup report.Report                            # Backup before changes
pbir restore report.Report --latest                  # Restore backup
```

Attribution

santoshkanthetysantoshkanthety
View sourceSee grades on GitHubMore from santoshkanthety →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Rank Tracker

This skill helps you track, analyze, and report on keyword ranking positions over time. It monitors both traditional SERP rankings and AI/GEO visibility to provide comprehensive search performance insights.

1821 votes

Youtube Competitor Analyzer

Find and analyze YouTube competitor channels using YouTube Data API v3. Discover competitors through keyword search, category matching, content similarity, and related channel discovery. Compare metrics, content strategies, and market positioning. Use when users want to (1) Find competitors for their YouTube channel, (2) Analyze competitor performance metrics, (3) Compare their channel against competitors, (4) Identify content gaps and opportunities, (5) Benchmark against similar creators, (6...

31 votes

Xlsx

Use this skill any time a spreadsheet file is the primary input or output. This means any task where the user wants to: open, read, edit, or fix an existing .xlsx, .xlsm, .xltx, .csv, or .tsv file (e.g., adding columns, computing formulas, formatting, charting, cleaning messy data); create a new spreadsheet from scratch or from other data sources; or convert between tabular file formats. Trigger especially when the user references a spreadsheet file by name or path — even casually (like \"the...

1798860 votes

Weather Fetcher

Instructions for fetching current weather temperature data for Karachi, Pakistan from wttr.in API

671710 votes

Weather

Get current weather and forecasts (no API key required).

486960 votes
View all in data →