Get started

Install Fabric Desktop by KratosBI

A new name. The same foundation. KratosForge is the upcoming name for Fabric Desktop by KratosBI. These guides preserve the app’s current labels and paths.

This page takes you from nothing to a running app on one Windows PC. There is no app registration to set up: you sign in with your work account and that's it. If you look after Fabric for a whole organization, Configure Azure and Fabric lists the few tenant settings worth checking.

Before you start: Fabric Desktop by KratosBI is new. The parts that only talk to your own PC are tested on every build. Several features that talk to Fabric are marked Preview in the app because nobody has tried them on a live Fabric tenant yet. See What is tested and what isn't.

What you need#

You need Why
Windows 10 or 11 (64-bit) The desktop app is Windows only. The headless agent also runs on Linux.
Microsoft Edge WebView2 Runtime The app's window is WebView2. It is already on every up-to-date Windows 11 and most Windows 10 PCs. If the app opens a blank window, install it from Microsoft.
A work account with Microsoft Fabric You sign in with the same account you use at app.fabric.microsoft.com.
A Fabric capacity on your workspaces Only for creating lakehouses and for the features that run in Fabric. Work that runs on your PC starts no Fabric job; only its OneLake reads and writes use capacity.
Disk space The engine takes several hundred MB, plus local copies of the tables you work on.

You do not need Python, Spark, Java or admin rights on the PC. The app brings its own engine.

Download and start#

  1. Download fabric-desktop.exe (the Stable channel). It is also on the repository's Releases page.

  2. Put it anywhere you like, for example a Tools folder or your Desktop. It is a single file; there is no installer.

  3. Double-click it.

  4. Windows SmartScreen may say "Windows protected your PC" because the exe isn't code-signed yet. Choose More info > Run anyway. You only see this the first time.

  5. The first start installs the local engine. A Checking components window shows three lines:

    Line What happens
    Fabric Desktop by KratosBI Checks GitHub for a newer build on your channel and installs it straight away, then restarts.
    Python Comes with the engine. Nothing to install.
    Local engine Downloads fabric-desktop-engine.zip (Python plus every package) and unpacks it into %LOCALAPPDATA%\FabricDesktop\engine.

    This takes a minute or two the first time. Later starts go straight to Home unless something is updating.

  6. Sign in. Click Sign in on Home (or the ? circle at the top right). Windows asks which work account to use, or signs you in with the one you use on Windows. There is nothing to paste and no app ID to ask for; Fabric Desktop by KratosBI signs in through Microsoft's own Fabric sign-in, and only ever does what your own Fabric access allows (Permissions).

That's it. Home shows a Get started list until you set up a metadata project. Go on to the user guide.

If Windows blocks the engine#

On some PCs Windows refuses to load parts of the engine. The startup window then says Windows Smart App Control blocked it or An App Control policy on this PC blocked it, and names the blocked packages.

This isn't a broken install, so reinstalling won't help. The engine's Python packages (pyarrow, Polars, DuckDB and others) aren't code-signed by their makers, and these Windows features only let signed code load.

What blocked it What to do
Smart App Control (Windows 11 on a home or personal PC) It can't allow just one app. Either use a PC without it, or turn it off in Windows Security > App & browser control > Smart App Control settings and click Retry. Some Windows versions can't turn it back on without a reset, so decide that first.
An App Control policy (set by your organization) Ask IT to allow the Python packages in the folder the window names. They see each block in Event Viewer > Microsoft > Windows > CodeIntegrity > Operational. Then click Retry.

The lasting fix is code signing: CI signs every file when the repository has an Azure Trusted Signing account set up (README: Code signing). That isn't in place yet.

Updates#

Fabric Desktop by KratosBI updates itself. Each time it starts it asks GitHub whether a newer build is out on your channel. If one is, it downloads it, checks it is the right file, swaps the exe in place and restarts. Then What's new lists what changed. You never run an old build by accident.

Channel Who it's for What you get
Stable (default) Everyone Builds a maintainer has tried and promoted with the Promote to stable workflow.
Preview Testers Every build of main as soon as CI is green. Things may change or break.

Change it in Settings > Updates. The change takes effect the next time the app starts. An organization can fix the channel for everyone with a policy file, or turn self-updates off and roll out builds itself (Enterprise install).

The update check uses GitHub's public API, which allows 60 checks an hour from one internet address. In a large office behind one address you may see "Could not check for a newer build" now and then. The app keeps working on the build you have and checks again at the next start.

Check a download yourself#

Every build of main comes with proof of where it came from and a list of what is inside it. Security teams can check both before allowing the app.

  • Build provenance. GitHub signs a statement that fabric-desktop.exe and fabric-desktop-engine.zip were built by this repository's CI workflow from a named commit. With the GitHub CLI, check a file you downloaded:

    gh attestation verify fabric-desktop.exe -R KratosDataGod/fabric-desktop
    

    It prints the workflow and commit that built it, or fails if the file was changed. A file promoted to Stable is the same file, so the same check works.

  • Software bill of materials. The Preview (latest) release carries sbom-engine.cdx.json (every Python package in the engine, read from the engine itself) and sbom-app.cdx.json (every Rust crate in the exe), in CycloneDX format. Most vulnerability scanners and asset tools read it.

  • Vulnerability scanning. CI checks the engine's pinned Python packages (pip-audit) and the exe's Rust crates (cargo audit) on every pull request.

These prove where a file came from; they don't replace code signing, which is still being set up (If Windows blocks the engine).

Where things are kept on your PC#

Path What it is
The folder you put fabric-desktop.exe in The app. The update replaces this file in place.
%LOCALAPPDATA%\FabricDesktop\engine The local engine: Python and its packages.
%LOCALAPPDATA%\FabricDesktop\notebooks Your notebooks, as .ipynb files. Back them up with the rest of this folder (Back up and restore) or keep them in Git.
%LOCALAPPDATA%\FabricDesktop\msal_cache.bin Your sign-in token cache. Delete it to force a fresh sign-in.
%LOCALAPPDATA%\FabricDesktop\fabric-view-signin.bin The saved sign-in of the embedded Fabric pages, encrypted for your Windows account.
%LOCALAPPDATA%\FabricDesktop\app-settings.json What you chose in Settings.
%LOCALAPPDATA%\FabricDesktop\sidecar.log The engine's log. Attach it to a problem report if asked.
%LOCALAPPDATA%\FabricDesktop\local-data\ Local data projects (Preview): each project's settings, registered folders and database. See Local data projects.
%LOCALAPPDATA%\FabricDesktop\usage_imports\ Measured usage you imported from Capacity Metrics app and Azure Cost Management exports (Preview), one file per import. See Measured usage.
%LOCALAPPDATA%\FabricDesktop\audit\audit-YYYY-MM.jsonl The audit trail: one line for each thing you ran or changed. See Audit trail.
%LOCALAPPDATA%\FabricDesktop\files, staging, onelake-cache Local copies of lakehouse data: file previews, tables staged before a publish, files the metadata framework read. Deleted when unused for 30 days (your organization can change that), or any time with fabric-desktop clean-local.
%LOCALAPPDATA%\FabricDesktop\integrations\ External AI tools: connected tools and approvals (integrations.sqlite) and their audit trail (audit\audit-YYYY-MM.jsonl, one line per request a tool made). See Connect your AI tool.
%LOCALAPPDATA%\FabricDesktop\*.json, *.jsonl Run history, favorites, pinned workspaces, schedules on this PC, the Estate X-ray's last scan.
%ProgramData%\FabricDesktop\policy.json Settings your organization fixed, if any.
Documents\FabricDesktop\metadata The default folder for a new metadata project. You can pick another, and you should keep it in Git.

Uninstall#

  1. If you added schedules on this PC, remove them in Monitor > Schedules first. They live in Windows Task Scheduler under the FabricDesktop folder.
  2. Close the app and delete fabric-desktop.exe.
  3. Delete %LOCALAPPDATA%\FabricDesktop to remove the engine, your notebooks, settings and sign-in. Copy the notebooks folder somewhere first if you want to keep them.

Nothing in Fabric is removed. Lakehouses, tables and notebooks you published stay where they are.

For developers: run from source#

To work on Fabric Desktop by KratosBI itself, see CONTRIBUTING.md. In short:

cd sidecar
python -m pip install -e ".[dev]"
python -m pytest -q                                          # tests, no Fabric needed
$env:FABRIC_DESKTOP_PYTHON = (Get-Command python).Source    # the app uses this Python
cd ..\app\src-tauri
cargo run                                                    # needs Rust and the Tauri prerequisites

Builds you make yourself skip the update check.

Need a hand?

Find a fix in troubleshooting, or share a reproducible issue with the community.

Get support ↗Improve this guide on GitHub ↗

Search documentation

Start typing to search all 105 guides.

Search runs in your browser esc to close