MinaSaad1/pbi-cli

Power BI CLI - semantic models (.NET TOM) and PBIR reports for token-efficient AI agent usage, built for Claude Code

何を解決するか

pbi-cli は Power BI 用のコマンドラインインターフェースを提供し、ユーザーがセマンティックモデルとレポートの作成および管理を自動化できるようにします。Power BI Desktop GUI を手動で繰り返し操作する作業(たとえば、一括でメジャーを作成したり、手動でビジュアルを構築したりする作業)を排除し、Power BI の内部構造にプログラムによるアクセスを可能にします。

仕組み

このプロジェクトは、Power BI と対話するための二層構造を採用しています。

  • セマンティックモデル層: Python からの直接 .NET インターポレーションを使用して、TOM/ADOMD を介して Power BI Desktop と通信し、DAX クエリやモデル変更をサブ秒で実行可能にします。
  • レポート層: .pbip プロジェクトに Power BI Desktop アプリケーションが起動している必要なく、PBIR(拡張レポート形式)JSON ファイルを直接読み書きします。

また、Claude Code と連携するための「スキル」システムを備えており、DAX、モデリング、ビジュアルなど 13 の特定の Power BI 機能を登録しています。これにより、AI エージェントがこれらのタスクを自律的に実行できるようになります。

対象ユーザー

ワークフローの自動化、レポートのバージョン管理、Claude Code などの AI エージェントを使ってデータモデルやレポートを構築・管理したい Power BI 開発者およびデータアナリスト。

主な特徴

  • AI エージェント統合: Claude Code が DAX を記述し、テーブルを作成し、レポートを構築できるように特別に設計されています。
  • 一括操作: メジャーとビジュアルを一括で作成でき、DAX のデバッグやモデルの健全性の監査が可能。
  • カスタムビジュアル作成: TypeScript プロジェクトをスケルトン化する専用ループを備え、.pbiviz ファイルをパッケージ化し、レポートにインポートします。
  • 包括的なツールキット: セキュリティロールやパーティションからブックマーク、条件付き書式まで、27 のコマンドグループをカバー。
  • JSON 出力: --json オプションをサポートし、機械可読な出力を提供。スクリプトや他の AI エージェントとの統合が容易です。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト