By bcastelino
Agent Skills toolkit that turns natural-language requests into fully-formed, branded Power BI Desktop Projects (PBIP). Ships nine composable skills: nlq-dashboard-orchestrator, data-source-connector, query-to-pbip, semantic-mapper, visual-selector, visual-generator, project-packager, theme-branding, and bi-dash-creator.
Composes a multi-visual Power BI dashboard from already generated reports in the generated-reports folder. This skill should be used only when the user explicitly requests a dashboard combining visuals from previously generated reports. It copies visual.json files, validates semantic model consistency, excludes card/slicer/kpi visuals, arranges up to 4 visuals per page in a 2x2 grid, and saves the output to the generated-dashboards folder with a "Dash" suffix in the project name.
Source-agnostic adapter that introspects any data storage (SQL databases, cloud warehouses, Excel/CSV files, OData/REST APIs, SharePoint lists) and emits a normalized data-model.json describing tables, columns, types, and relationships. Use this skill at the start of the dashboard pipeline whenever the user has not provided a structured data model. It also emits a clarification question list when schema cannot be auto-discovered, and produces the source-specific M-Code / import block consumed by semantic-mapper.
Top-level entry point that turns a natural-language dashboard request into a complete Power BI Desktop Project (PBIP). This skill should be used whenever a user asks in plain English for a dashboard, report, or set of visuals without providing structured input. It introspects the data source, runs two explicit user-confirmation gates (data-model readiness and scaffold readiness), then orchestrates data-source-connector, query-to-pbip, theme-branding, and bi-dash-creator to produce the final dashboard.
Scaffolds a complete Power BI Desktop Project (PBIP) directory structure, assembles TMDL and report artifacts, validates the project integrity, and creates a distributable zip archive. Use this skill when all semantic model and report files are ready and need to be packaged into a valid PBIP. This is Stage 4 of the query-to-pbip pipeline.
Orchestrates the end-to-end conversion of a Databricks Genie Query into a Power BI Desktop Project (PBIP) with visuals. Use this skill when transforming a Genie SQL query or YAML metric view into a complete, openable Power BI project containing a semantic model (TMDL) and report visuals (PBIR). It coordinates four sub-skills in sequence — semantic-mapper, visual-selector, visual-generator, and project-packager — to produce a zipped PBIP artifact.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
A modular Agent Skills toolkit that turns plain-English requests into fully-formed, branded Power BI Desktop Projects (PBIP).
Overview · Quick Start · Architecture · Skills · Examples · Learning Path
Power BI Dashboard Generator is an open, educational reference implementation of an agent-driven BI authoring pipeline. It demonstrates how a Large Language Model (LLM) agent - equipped with a set of well-scoped, file-based skills - can take a natural-language request such as "Build me a sales performance dashboard from sales.xlsx" and emit a complete, openable Power BI Desktop Project (PBIP) without manual modeling, DAX, or visual configuration.
The project is intentionally structured for learning:
skills/ with a Markdown SKILL.md contract, reference docs, and runnable Python scripts.data-model.json, TMDL files, PBIR visual.json) are plain text and human-readable.Use this repo to learn: prompt-engineering for code-generation agents, the PBIP/TMDL/PBIR file formats, source-agnostic semantic modeling, SQL → DAX translation, and visual-bucket selection heuristics.
git clone https://github.com/bcastelino/powerbi-dashboard-generator.git
cd powerbi-dashboard-generator
pip install -r requirements.txt
Drop or symlink the skills/ folder into your agent runtime. The agent will discover each SKILL.md automatically - no further configuration required. See the Installation Guide below for runtime-specific instructions.
User > Build me a sales performance dashboard from sales.xlsx
Agent > [invokes nlq-dashboard-orchestrator]
[invokes data-source-connector → introspects sales.xlsx]
[Gate A] Confirms data model with user
[NLQ loop] Clarifies visuals, filters, layout
[Gate B] "Ready to scaffold? (yes/no)"
[pipeline] Generates PBIP → applies theme → assembles dashboard
✓ Dashboard ready: generated-dashboards/SalesPerformanceDash/
Open the resulting .pbip file in Power BI Desktop - the semantic model loads, the report renders, and visuals connect to live data.
The system is a staged pipeline orchestrated by a top-level NLQ skill, with two human-in-the-loop confirmation gates and file-based handoffs between every skill.
---
config:
layout: elk
look: classic
---
flowchart TD
User([User NLQ])
Orchestrator[nlq-dashboard-orchestrator]
Connector[data-source-connector]
GateA{{Gate A<br/>data model OK?}}
NLQ[NLQ Q&A loop<br/>visuals · filters · time]
GateB{{Gate B<br/>ready to scaffold?}}
subgraph Pipeline[query-to-pbip pipeline]
direction LR
Semantic[semantic-mapper]
Selector[visual-selector]
Generator[visual-generator]
Packager[project-packager]
Semantic --> Selector --> Generator --> Packager
end
Theme[theme-branding]
Dash[bi-dash-creator]
Output[(.pbip<br/>TMDL · PBIR · theme)]
User --> Orchestrator --> Connector --> GateA
GateA -->|confirmed| NLQ --> GateB
GateB -->|yes| Pipeline --> Theme --> Dash --> Output
classDef gate fill:#fff4ce,stroke:#d4a72c,color:#5c4a06;
classDef skill fill:#dbeafe,stroke:#2b6cb0,color:#1e3a5f;
classDef output fill:#dcfce7,stroke:#16a34a,color:#14532d;
class GateA,GateB gate;
class Orchestrator,Connector,NLQ,Semantic,Selector,Generator,Packager,Theme,Dash skill;
class Output output;
The orchestrator never generates files silently. It pauses at two explicit checkpoints:
npx claudepluginhub bcastelino/powerbi-dashboard-generator --plugin powerbi-dashboard-generatorComprehensive skill pack with 66 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.
A growing collection of Claude-compatible academic workflow bundles. Covers scientific figures, manuscript writing and polishing, reviewer assessment, citation retrieval, data availability, paper reading, literature search, response letters, paper-to-PPTX conversion, and evidence-grounded Chinese invention patent drafting. Rules are organized as reusable skill folders with explicit workflows and quality checks.
Intelligent draw.io diagramming plugin with AI-powered diagram generation, multi-platform embedding (GitHub, Confluence, Azure DevOps, Notion, Teams, Harness), conditional formatting, live data binding, and MCP server integration for programmatic diagram creation and management.
Persistent file-based planning for AI coding agents. Crash-proof markdown plans (task_plan.md, findings.md, progress.md) that survive context loss and /clear, with an opt-in completion gate and multi-agent shared state. Manus-style. Works with Claude Code, Codex CLI, Cursor, Kiro, OpenCode and 60+ agents via the SKILL.md standard. Includes Arabic, German, Spanish, and Chinese (Simplified and Traditional).
Complete creative writing suite with 10 specialized agents covering the full writing process: research gathering, character development, story architecture, world-building, dialogue coaching, editing/review, outlining, content strategy, believability auditing, and prose style/voice analysis. Includes genre-specific guides, templates, and quality checklists.
Payload Development plugin - covers collections, fields, hooks, access control, plugins, and database adapters.