Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/santoshkanthety/powerbi-agentnpx agentmods add skills/santoshkanthety/powerbi-agent/powerbi-reportWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/santoshkanthety/powerbi-agent/powerbi-report)<a href="https://agentmods.dev/skills/santoshkanthety/powerbi-agent/powerbi-report"><img src="https://agentmods.dev/badge/skills/santoshkanthety/powerbi-agent/powerbi-report/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/santoshkanthety/powerbi-agent/powerbi-report"><img src="https://agentmods.dev/badge/skills/santoshkanthety/powerbi-agent/powerbi-report.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00107 | $0.00749 |
| Opus 5 | $0.00053 | $0.00375 |
| Sonnet 5 | $0.00021 | $0.00150 |
| Haiku 4.5 | $0.00011 | $0.00075 |
Grade A, and why
powerbi-report scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 78 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Skill: Inspect and Modify Report Layout
Trigger
Activate when the user asks about report pages, report structure, visuals, bookmarks, or wants to add a new page. Works against unpacked PBIR folders (.Report/) — does not require a Power BI Desktop connection.
Commands
# Show the full report structure: pages, visuals, bookmarks
pbi-agent report info
# Explicitly point at a .pbip / .Report path (auto-detected from CWD if omitted)
pbi-agent report info path/to/MyReport.Report
# List pages only
pbi-agent report pages
# Add a new page
pbi-agent report add-page "Executive Summary"
pbi-agent report add-page "Regional Deep Dive" path/to/MyReport.Report
Guidance
- The
PBIX_PATHargument is optional. When omitted, powerbi-agent searches the current working directory for a.Reportfolder. - Page names become folder names on disk — avoid special characters (slashes, colons) that would break filesystem paths.
- After adding a page, reload it in Power BI Desktop via pbi-cli's
pbi report reload(if available) or reopen the project.
Schema Rules (Don't Break These)
These constraints are not obvious but will silently crash PBI Desktop on open:
.pbip artifacts — only report is allowed
The .pbip file's artifacts array must contain ONLY a report entry. Never add a dataset entry — the schema rejects it:
// CORRECT
"artifacts": [{ "report": { "path": "MyReport.Report" } }]
// WRONG — crashes on open with a schema validation error
"artifacts": [
{ "report": { "path": "MyReport.Report" } },
{ "dataset": { "path": "MyModel.SemanticModel" } }
]
The semantic model is linked via definition.pbir, not the .pbip artifacts.
definition.pbir path — must be a non-null string
datasetReference.byPath.path must always be a non-null string pointing to the SemanticModel folder. Setting it to null is a schema violation:
// CORRECT
"datasetReference": { "byPath": { "path": "../MyModel.SemanticModel" } }
// WRONG — null is not allowed by the schema
"datasetReference": { "byPath": { "path": null } }
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 11d ago First seen · 78 lines · 0 tokens per session scan A c7dbff4a2b4e
powerbi-report is a skill published in the GitHub repository santoshkanthety/powerbi-agent (2 stars, last pushed 12d ago), licensed MIT. It adds 107 tokens to every session and 749 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
seshat-bi
Route a BI project through Seshat BI's governed seven-stage readiness flow. Use when a user asks to inspect a retail source, initialize a Seshat project, find the truthful next action, validate readiness evidence, or stop at the correct human approval gate.
Data Retention Schedule Review
Use when reviewing a draft or existing data retention schedule to inventory data categories against stated purposes, collect retention-period facts, flag legal-hold interactions, and surface orphaned-data and vendor-coverage gaps for attorney review.
powerbi-workflows
Route guarded Power BI work -- design, native report authoring, semantic-model operations, published queries, QA, bounded formatting, and PBIP adoption -- to the correct Seshat or official Microsoft surface under Seshat BI's gates.
dbt-workflows
Route dbt intent to Seshat's governed shadow workflow or the official dbt Labs competence and execution owner, without bypassing readiness or evidence.
dagster-workflows
Route Dagster intent to Seshat's governed medallion workflow or the official Dagster competence owner without bypassing readiness, approvals, or evidence.
pbi-mcp-doctor
Use when a user asks whether or how to wire Microsoft's official Power BI MCP servers into a Seshat BI workspace: run the read-only environment doctor, map a task to the governed Power BI surface (including the official report-authoring skill), generate a safe read-only config template, or run the mocked read-only…