Skip to content
Development
Skill

/te2-cli

CLI syntax reference for Tabular Editor 2 (TabularEditor.exe); deployment, scripting, BPA analysis, and CI/CD integration. Automatically invoke when the user mentions "TabularEditor.exe", TE2 CLI flags (-D, -S, -A, -B, -TMDL, -O, -C), or asks to "deploy a model via CLI", "set up

From plugin
power-bi-agentic-development
84232 skills8 agents2 commands3 MCP
Install
$ npx -y skills add data-goblin/power-bi-agentic-development --skill te2-cli --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/te2-cli

Context preview

The summary Claude sees to decide when to auto-load this skill.

CLI syntax reference for Tabular Editor 2 (TabularEditor.exe); deployment, scripting, BPA analysis, and CI/CD integration. Automatically invoke when the user mentions "TabularEditor.exe", TE2 CLI flags (-D, -S, -A, -B, -TMDL, -O, -C), or asks to "deploy a model via CLI", "set up

SKILL.md

te2-cli.SKILL.md
name: te2-cli
description: CLI syntax reference for Tabular Editor 2 (TabularEditor.exe); deployment, scripting, BPA analysis, and CI/CD integration. Automatically invoke when the user mentions "TabularEditor.exe", TE2 CLI flags (-D, -S, -A, -B, -TMDL, -O, -C), or asks to "deploy a model via CLI", "set up CI/CD for Power BI", "automate model deployment", "run BPA from command line", "save model as TMDL".

Tabular Editor 2 CLI

Command-line interface for Tabular Editor 2 (TE2). This skill covers the `TabularEditor.exe` executable; TE3 has its own CLI and is a separate product.

> [!NOTE] > The TE2 CLI (`TabularEditor.exe`) is still supported and stable, and remains a solid choice for existing Windows CI/CD pipelines. It is now considered outdated against the newer cross-platform Tabular Editor CLI (`te`), which is built on TE3 and is in preview until Q4 2026. For the `te` command set and a flag-by-flag migration, see the `te-cli` skill. Download `te` preview binaries from the [Tabular Editor CLI downloads page](https://tabulareditor.com/download-tabular-editor-cli).

Installation

Tabular Editor 2 (Free)

  • Download: https://github.com/TabularEditor/TabularEditor/releases
  • Extract to preferred location or use Chocolatey: `choco install tabulareditor2`

Executable

`TabularEditor.exe` -- free, Windows-only. For Mac/Linux, run via a Windows VM or container.

Connection Sources

Local Files

# model.bim (JSON format)
TabularEditor.exe Model.bim

# TMDL folder
TabularEditor.exe definition/

# PBIP project
TabularEditor.exe MyReport.pbip

Remote XMLA Endpoints

# Analysis Services
TabularEditor.exe "localhost\tabular" "AdventureWorks"

# Power BI Premium/Fabric
TabularEditor.exe "powerbi://api.powerbi.com/v1.0/myorg/WorkspaceName" "ModelName"

Power BI Desktop

# Auto-detect running instance
TabularEditor.exe localhost:PORT DatabaseName

Note: Find the port in PBIDesktop diagnostic files or use tools like DAX Studio.

Command-Line Reference

Basic Syntax

TabularEditor.exe <source> [options]

Script Execution

# Inline C# script
TabularEditor.exe Model.bim -S "Info(Model.Name);"

# Script file
TabularEditor.exe Model.bim -S script.csx

# Multiple scripts (executed in order)
TabularEditor.exe Model.bim -S script1.csx -S script2.csx

Deployment

# Deploy to XMLA endpoint
TabularEditor.exe Model.bim -D "server" "database"

# Deploy with options
TabularEditor.exe Model.bim -D "server" "database" -O -C -P -R -M -E -V -W

Deployment Options

| Flag | Long Form | Description | |------|-----------|-------------| | `-O` | `-OVERWRITE` | Overwrite existing database | | `-C` | `-CONNECTIONS` | Deploy/overwrite data sources (supports connection string placeholder substitution) | | `-P` | `-PARTITIONS` | Deploy/overwrite existing table partitions | | `-R` | `-ROLES` | Deploy roles | | `-M` | `-MEMBERS` | Deploy role members | | `-S` | `-SHARED` | Deploy shared expressions (within `-D` context; note: `-S` also means script outside `-D`) | | `-E` | `-ERR` | Return non-zero exit code if AS returns error messages after deployment | | `-V` | `-VSTS` | Output Azure DevOps logging commands | | `-W` | `-WARN` | Output warnings for unprocessed objects | | `-F` | `-FULL` | Full deployment (equivalent to `-O -C -P -S -R -M`) | | `-X` | `-XMLA` | Generate XMLA/TMSL script instead of deploying | | `-L` | `-LOGIN` | Disable integrated security for deployment | | `-Y` | `-SKIPPOLICY` | Skip incremental refresh policy partitions |

Save Output

# Save to model.bim
TabularEditor.exe Model.bim -S script.csx -B Output.bim

# Save to TMDL folder
TabularEditor.exe Model.bim -S script.csx -TMDL output/

# Save to legacy folder structure
TabularEditor.exe Model.bim -S script.csx -F output/

Best Practice Analyzer

# Run BPA rules
TabularEditor.exe Model.bim -A rules.json

# Run BPA with Azure DevOps logging output
TabularEditor.exe Model.bim -A rules.json -V

# Run BPA with GitHub Actions logging output
TabularEditor.exe Model.bim -A rules.json -G

# Analyze excluding rules embedded in model annotations
TabularEditor.exe Model.bim -AX rules.json

Schema Check

# Validate data source schemas against the model
TabularEditor.exe Model.bim -SC

Common Operations

1. Deploy Local Model to Service

TabularEditor.exe Model.bim ^
    -D "powerbi://api.powerbi.com/v1.0/myorg/Workspace" "SemanticModel" ^
    -O -C

2. Run Script and Save

TabularEditor.exe Model.bim -S format-dax.csx -B Model.bim

3. Run BPA Analysis

TabularEditor.exe Model.bim ^
    -A https://raw.githubusercontent.com/microsoft/Analysis-Services/master/BestPracticeRules/BPARules.json ^
    -V

4. Refresh Model Data

TabularEditor.exe "server" "database" ^
    -S "Model.RequestRefresh(RefreshType.Full);" ^
    -D "server" "database"

5. Export Model from Service

TabularEditor.exe "powerbi://api.powerbi.com/v1.0/myorg/Workspace" "Model" ^
    -TMDL output/definition

Authentication

For authentication methods (Windows, Service Principal, Interactive) and CI/CD integration (Azure DevOps, GitHub Actions), see **`references/auth-and-cicd.md`**.

Exit Codes

| Code | Description | |------|-------------| | 0 | Success | | 1 | Any error-level output (script error, deployment failure, BPA violations at severity >= 3) |

File Formats

Input Formats

  • `model.bim` - Tabular JSON (legacy)
  • `definition/` - TMDL folder (modern)
  • `*.pbip` - Power BI Project (TE3)

Output Formats

| Flag | Format | Description | |------|--------|-------------| | `-B` | `.bim` | Tabular JSON | | `-TMDL` | folder | TMDL | | `-F` | folder | Legacy folder structure |

Troubleshooting

For common errors (database not found, authentication failed, script execution failed), see **`references/auth-and-cicd.md`**.

Quick Reference Card

``

Read more
Ships withpower-bi-agentic-development

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, and AI dashboards. Includes Microsoft Fabric skills and Fabric agents. Weekly updates.

Get the whole plugin