This summary is produced by the author, and not by AI.
VS Code is a familiar place for many people working in Power BI. Whether you're writing code, working with agents, or just using it for source control management, VS Code has grown more common and popular over time. In running those workflows, we’ve found that we were missing Tabular Editor's capabilities, so earlier this year, we built an extension that brings some of them into VS Code: Tabular Editor Lite:
VS Code runs on all operating systems, and so does our extension. In addition to many of the features you already know from Tabular Editor 2 and 3, it includes many features that help you collaborate and work with agents.
Here’s a video that walks through the features of Tabular Editor Lite:
Tabular Editor Lite has many features that you’d expect from Tabular Editor in VS Code:
It also has some new extras:
There are also a few features that are specific to working with agents:
In this article, we go through some more details, introducing the extension and explain how you can get started using it. We'll continue improving it with your feedback; please let us know what you think.
Here is how Tabular Editor Lite compares to the other Tabular Editor tools:
We offer Tabular Editor Lite for free via our research arm, Tabular Editor Forge. Please see our End User License Agreement, and feel free to reach out to us if you have questions, comments, feedback, or requests.
You can connect to your model wherever it lives: on disk (TMDL folder, model.bim or database.json or .pip project), live in Power BI Desktop (Windows only) or any XMLA endpoint (SSAS, Azure AS or Power BI / Fabric). Once connected, you'll see the familiar tree structure in the Model Explorer. Just like in Tabular Editor, you can select objects and the Properties Pane will show the detailed properties of those objects and let you edit them, multiple objects at a time.
It's not just editing though; the full create-read-update-delete is supported by TE Lite. When you delete an object, a confirmation dialog first lists dependents that would be deleted along with it, like the relationships on a column you intend to delete. You can then confirm or back out. There is interoperability between TE2, TE3 and the extension; you can copy/cut/paste objects across their sessions.
Selecting an object that has an expression (a measure, calculated column, calculation item, M partition, etc.) opens that expression in a new tab; the same linked-editor behavior as in Tabular Editor. Coding support is there in the form of code assistance, code formatting, per-function links to documentation (dax.guide for DAX and PQM.guide for M). SQL and TMDL editors are also bundled in, where you can leverage the default features of VS Code or other supporting extensions:
This is the core loop of model development, in a new graphical user interface, with search and per-object unsaved change markers so it's easier to keep track of what changed since the last save. You can filter the Model Explorer to only show changed objects, or objects that have a comment thread (more on comments below).
In the Diagram View, you can see and edit the relationships between the tables in your model, laid out on a canvas. The table positions can be re-arranged by dragging or auto-arranged with a button. Many-to-many relationships deserve your attention, so these are highlighted by default, and we also show the data types of related columns. You can color tables to mark them. The color is stored on the model itself and shows in the Model Explorer too. The diagram layout (the table positions) can be saved as .te3diag files, the same format TE3 uses. Note, however that TE3 doesn’t support the same interface or coloring of tables:
Best Practice Analyzer (BPA) is here too, running on demand or automatically as you edit. In the Model Explorer, objects with violations can be marked as such. The BPA report lists all violating objects by rule and lets you load rule sets from file or URL with the option to edit the JSON directly. Existing TE2 and TE3 rule collections work as-is and model-scoped rules are supported.
The BPA comes with a set of basic rules, but you can also add your own like you do in TE2 or TE3:
Maybe you've been using AI coding agents such as Claude Code, Codex and GitHub Copilot. The speed with which they can move makes them hard to follow or understand, and that's exactly what you want to avoid when building semantic models; you need to understand the model's current state, its previous state, and desired future state. If you don't understand the model, you can't trust it, and neither can anyone consuming data from it.
Tabular Editor Lite gives you transparency in what is happening through different means:
aiContext option is enabled, an MCP server gives your agent context so it can see what you have selected, down to the highlighted part of a DAX or M expression, and reveal things for you. It can also reload the editor, save changes (connect, disconnect and save ask you first) and rearrange the diagram, and it sets itself up for the agents it detects in your workspace. An example use case could be to highlight the part of a DAX expression you don’t understand and ask your agent “what does this do?”. Or select a few tables and ask to “merge these and move their measures to the measures table”. The connected agent will have full context of what you’re looking at without you having to name or copy+paste anything.These features work together: you leave comments as prioritized instructions so the agent can edit through TE Lite or the TE CLI. If you edit the model externally, then watch mode auto-reloads the editor, and the agent answers back on the comment thread.
Tabular Editor Lite brings the core semantic model development loop to VS Code, with native agent support, for free. You can try it out by installing it from the marketplace and connecting to a model (or just use the built-in sample model). This is the v1 release we'll continue to improve with your feedback.
Take your semantic models further with Tabular Editor.
Give Tabular Editor a spin