Fabric Cli Core
Use Microsoft Fabric CLI (fab) to manage workspaces, semantic models, reports, notebooks, and Fabric resources. Activate when users mention fab, Fabric CLI, or…
Install
Quick install
npx skills add https://github.com/microsoft/fabric-cli/tree/HEAD/.ai-assets/skills/fabric-cli-corenpx skills add microsoft/fabric-cli --skill fabric-cli-core --agent claude-codenpx skills add microsoft/fabric-cli --skill fabric-cli-core --agent cursornpx skills add microsoft/fabric-cli --skill fabric-cli-core --agent codexnpx skills add microsoft/fabric-cli --skill fabric-cli-core --agent opencodenpx skills add microsoft/fabric-cli --skill fabric-cli-core --agent github-copilotnpx skills add microsoft/fabric-cli --skill fabric-cli-core --agent windsurfMore install options
Shorthand — useful for multi-skill repos:
npx skills add microsoft/fabric-cli --skill fabric-cli-coreManual — clone the repo and drop the folder into your agent's skills directory:
git clone https://github.com/microsoft/fabric-cli.gitcp -r fabric-cli/.ai-assets/skills/fabric-cli-core ~/.claude/skills/fabric-cli-core
Use Microsoft Fabric CLI (fab) to manage workspaces, semantic models, reports, notebooks, and Fabric resources. Activate when users mention fab, Fabric CLI, or…
fabric-cli-coreby microsoft
Use Microsoft Fabric CLI (fab) to manage workspaces, semantic models, reports, notebooks, and Fabric resources. Activate when users mention fab, Fabric CLI, or…npx skills add https://github.com/microsoft/fabric-cli --skill fabric-cli-coreDownload ZIPGitHub
Fabric CLI Core
This skill defines safe, consistent defaults for an AI agent helping users operate Microsoft Fabric via the Fabric CLI (fab).
1 - Fabric CLI mental model (paths and entities)
Automation Scripts
Ready-to-use Python scripts for core CLI tasks. Run any script with --help for full options.
ScriptPurposeUsagehealth_check.pyVerify CLI installation, auth status, and connectivitypython scripts/health_check.py [--workspace WS]
Scripts are located in the scripts/ folder of this skill.
Paths and Entities
- Treat Fabric as a filesystem-like hierarchy with consistent dot (.) entity suffixes in paths (e.g.,
.Workspace,.Folder,.SemanticModel).
- The hierarchy structure is:
- Tenant: The top-level container for everything.
- Workspace: Personal or team workspace holding folders, items, and workspace-level elements.
- Folder: Container for organizing items within a workspace (supports ~10 levels of nesting).
- Item: Individual resource within a workspace or folder (e.g., Notebook, SemanticModel, Lakehouse).
- OneLakeItem: OneLake storage item residing within a Lakehouse (tables, files, etc.).
- Prefer and generate paths like:
/Workspace1.Workspace/Notebook1.Notebook
/Workspace1.Workspace/FolderA.Folder/SemanticModel1.SemanticModel
/Workspace1.Workspace/FolderA.Folder/lh1.Lakehouse/Tables(OneLakeItem)
- When a user provides an ambiguous identifier, ask for the full path (or infer with stated assumptions).
2 - Modes (interactive vs command line)
- Be explicit about which mode a user is in:
- Interactive mode behaves like a REPL and runs commands without the
fabprefix.
- Command line mode runs one command per invocation and is best for scripts/automation.
- The selected mode is preserved between sessions. If a user exits and logs back in, the CLI resumes in the same mode last used.
- When you provide instructions, show commands in command line mode unless the user says they're in interactive mode.
3 - Authentication (public-safe guidance)
- Prefer these auth patterns and do not invent new flows:
- Interactive user:
fab auth login(browser/WAM where supported).
- Service principal (secret/cert): use environment variables / secure mechanisms; avoid embedding secrets in files.
- Service principal (federated credential): use the federated token environment variable (
FAB_SPN_FEDERATED_TOKEN) and do not persist the raw token.
- Managed identity: supported for Azure-hosted workloads; no credentials required.
- Never ask users to paste secrets into chat or print them back.
4 - Sensitive data handling (strict)
- Never log or output tokens, passwords, client secrets, or raw federated tokens.
- Validate all user inputs that could affect security:
- Paths: Sanitize file paths and API parameters.
- GUIDs: Validate resource identifiers before use.
- JSON: Validate JSON inputs for proper format.
- If a user shares sensitive strings, advise rotating/regenerating them and moving to secure storage.
5 - Hidden entities and discovery
- Hidden entities are special resources not normally visible, following a dot-prefixed naming convention (similar to UNIX hidden files).
- Tenant-level hidden entities (accessed from root):
.capacities—fab ls .capacities/fab get .capacities/<name>.Capacity
.gateways—fab ls .gateways/fab get .gateways/<name>.Gateway
.connections—fab ls .connections/fab get .connections/<name>.Connection
.domains—fab ls .domains/fab get .domains/<name>.Domain
- Workspace-level hidden entities (accessed within a workspace):
.managedidentities—fab ls ws1.Workspace/.managedidentities
.managedprivateendpoints—fab ls ws1.Workspace/.managedprivateendpoints
.externaldatashares—fab ls ws1.Workspace/.externaldatashares
.sparkpools—fab ls ws1.Workspace/.sparkpools
- To show hidden resources, recommend
ls -a/ls --all.
6 - Errors and troubleshooting guidance
- When describing failures, include:
- What the command was trying to do
- The likely cause
- The next actionable step
- If the CLI surfaces an error code/message, keep it intact and do not paraphrase away the key identifiers. (Fabric CLI emphasizes stable error codes/messages.)
- Include request IDs for API errors to aid debugging when available.
7 - Output conventions for the agent
- Default to concise, runnable steps.
- When recommending commands, include:
- Preconditions (auth, correct workspace/path)
- Expected result
- How to verify (e.g., follow-up
fab ls/fab get)
8 - Safety defaults
- Ask before suggesting commands that delete, overwrite, or change access/permissions.
- If the user explicitly confirms, proceed with a clear rollback note when possible.
9 - Platform and troubleshooting reference
- Supported platforms: Windows, Linux, macOS.
- Supported shells: zsh, bash, PowerShell, cmd (Windows command prompt).
- Python versions: 3.10, 3.11, 3.12, 3.13.
- CLI file storage (useful for troubleshooting):
- Config files are stored in
~/.config/fab/:
cache.bin— encrypted auth token cache
config.json— non-sensitive CLI settings
auth.json— non-sensitive auth info
context-<session_id>— path context for command-line mode sessions
- Debug logs are written to:
- Windows:
%AppData%/fabcli_debug.log
- macOS:
~/Library/Logs/fabcli_debug.log
- Linux:
~/.local/state/fabcli_debug.log
10 - Critical operational rules
- First run: Always run
fab auth statusto verify authentication before executing commands. If not authenticated, ask the user to runfab auth login.
- Learn before executing: Always use
fab --helpandfab <command> --helpthe first time you use a command to understand its syntax.
- Start simple: Try the basic
fabcommand alone first before piping or chaining.
- Non-interactive mode: Use
fabin command-line mode when working with coding agents. Interactive mode doesn't work with automation.
- Force flag: Use
-fwhen executing commands if the flag is available to run non-interactively (skips confirmation prompts).
- Verify before acting: If workspace or item name is unclear, ask the user first, then verify with
fab lsorfab existsbefore proceeding.
- Permission errors: If a command is blocked by permissions, stop and ask the user for clarification; never try to circumvent it.
11 - Common item types
ExtensionDescription.WorkspaceWorkspace container.FolderFolder within workspace.SemanticModelPower BI dataset/semantic model.ReportPower BI report.DashboardPower BI dashboard.NotebookFabric notebook.LakehouseLakehouse.WarehouseData warehouse.DataPipelineData pipeline.SparkJobDefinitionSpark job definition.EventstreamReal-time event stream.KQLDatabaseKQL database.MLModelML model.MLExperimentML experiment.CapacityFabric capacity (hidden).GatewayData gateway (hidden).ConnectionConnection (hidden)
Use fab desc .<ItemType> to explore any item type.
12 - Command references
For detailed command syntax and working examples, see:
- Quick Start Guide — Copy-paste examples for common tasks
- Full Command Reference — All commands with flags and patterns
- Semantic Models — TMDL, DAX queries, refresh, storage modes
- Notebooks — Job execution, parameters, scheduling
- Reports — Export, import, rebind to models
- Workspaces — Create, manage, permissions
- Querying Data — DAX and lakehouse table queries
- API Reference — Direct REST API access patterns
- Create Workspaces — Workspace creation workflows
More skills from microsoft
oss-growthby microsoftOSS growth hacker personapr-description-skillby microsoftTrigger this skill on any of the following intents:python-architectureby microsoftPython architect personasupply-chain-securityby microsoftSupply chain security expert personaskill-nameby microsoftDescription of what the skill does and when to use itwork-iterationsby microsoftList, create, and assign iterations for Azure DevOps projects and teams.djangoby microsoftBest practices for Django web development including models, views, templates, and testing.flaskby microsoftBest practices for Flask web development including routing, blueprints, and testing.---
Source: https://github.com/microsoft/fabric-cli/tree/HEAD/.ai-assets/skills/fabric-cli-core
Author: microsoft
Discovered via: mcpservers.org
SKILL.md source
--- name: fabric-cli-core description: Use Microsoft Fabric CLI (fab) to manage workspaces, semantic models, reports, notebooks, and Fabric resources. Activate when users mention fab, Fabric CLI, or… --- # fabric-cli-core Use Microsoft Fabric CLI (fab) to manage workspaces, semantic models, reports, notebooks, and Fabric resources. Activate when users mention fab, Fabric CLI, or… # fabric-cli-coreby microsoft Use Microsoft Fabric CLI (fab) to manage workspaces, semantic models, reports, notebooks, and Fabric resources. Activate when users mention fab, Fabric CLI, or… `npx skills add https://github.com/microsoft/fabric-cli --skill fabric-cli-core`Download ZIPGitHub ## Fabric CLI Core This skill defines safe, consistent defaults for an AI agent helping users operate Microsoft Fabric via the Fabric CLI (`fab`). ## 1 - Fabric CLI mental model (paths and entities) ### Automation Scripts Ready-to-use Python scripts for core CLI tasks. Run any script with `--help` for full options. ScriptPurposeUsage`health_check.py`Verify CLI installation, auth status, and connectivity`python scripts/health_check.py [--workspace WS]` Scripts are located in the `scripts/` folder of this skill. ### Paths and Entities * Treat Fabric as a filesystem-like hierarchy with consistent dot (.) entity suffixes in paths (e.g., `.Workspace`, `.Folder`, `.SemanticModel`). * The hierarchy structure is: * Tenant: The top-level container for everything. * Workspace: Personal or team workspace holding folders, items, and workspace-level elements. * Folder: Container for organizing items within a workspace (supports ~10 levels of nesting). * Item: Individual resource within a workspace or folder (e.g., Notebook, SemanticModel, Lakehouse). * OneLakeItem: OneLake storage item residing within a Lakehouse (tables, files, etc.). * Prefer and generate paths like: * `/Workspace1.Workspace/Notebook1.Notebook` * `/Workspace1.Workspace/FolderA.Folder/SemanticModel1.SemanticModel` * `/Workspace1.Workspace/FolderA.Folder/lh1.Lakehouse/Tables` (OneLakeItem) * When a user provides an ambiguous identifier, ask for the full path (or infer with stated assumptions). ## 2 - Modes (interactive vs command line) * Be explicit about which mode a user is in: * Interactive mode behaves like a REPL and runs commands without the `fab` prefix. * Command line mode runs one command per invocation and is best for scripts/automation. * The selected mode is preserved between sessions. If a user exits and logs back in, the CLI resumes in the same mode last used. * When you provide instructions, show commands in command line mode unless the user says they're in interactive mode. ## 3 - Authentication (public-safe guidance) * Prefer these auth patterns and do not invent new flows: * Interactive user: `fab auth login` (browser/WAM where supported). * Service principal (secret/cert): use environment variables / secure mechanisms; avoid embedding secrets in files. * Service principal (federated credential): use the federated token environment variable (`FAB_SPN_FEDERATED_TOKEN`) and do not persist the raw token. * Managed identity: supported for Azure-hosted workloads; no credentials required. * Never ask users to paste secrets into chat or print them back. ## 4 - Sensitive data handling (strict) * Never log or output tokens, passwords, client secrets, or raw federated tokens. * Validate all user inputs that could affect security: * Paths: Sanitize file paths and API parameters. * GUIDs: Validate resource identifiers before use. * JSON: Validate JSON inputs for proper format. * If a user shares sensitive strings, advise rotating/regenerating them and moving to secure storage. ## 5 - Hidden entities and discovery * Hidden entities are special resources not normally visible, following a dot-prefixed naming convention (similar to UNIX hidden files). * Tenant-level hidden entities (accessed from root): * `.capacities` — `fab ls .capacities` / `fab get .capacities/<name>.Capacity` * `.gateways` — `fab ls .gateways` / `fab get .gateways/<name>.Gateway` * `.connections` — `fab ls .connections` / `fab get .connections/<name>.Connection` * `.domains` — `fab ls .domains` / `fab get .domains/<name>.Domain` * Workspace-level hidden entities (accessed within a workspace): * `.managedidentities` — `fab ls ws1.Workspace/.managedidentities` * `.managedprivateendpoints` — `fab ls ws1.Workspace/.managedprivateendpoints` * `.externaldatashares` — `fab ls ws1.Workspace/.externaldatashares` * `.sparkpools` — `fab ls ws1.Workspace/.sparkpools` * To show hidden resources, recommend `ls -a` / `ls --all`. ## 6 - Errors and troubleshooting guidance * When describing failures, include: * What the command was trying to do * The likely cause * The next actionable step * If the CLI surfaces an error code/message, keep it intact and do not paraphrase away the key identifiers. (Fabric CLI emphasizes stable error codes/messages.) * Include request IDs for API errors to aid debugging when available. ## 7 - Output conventions for the agent * Default to concise, runnable steps. * When recommending commands, include: * Preconditions (auth, correct workspace/path) * Expected result * How to verify (e.g., follow-up `fab ls` / `fab get`) ## 8 - Safety defaults * Ask before suggesting commands that delete, overwrite, or change access/permissions. * If the user explicitly confirms, proceed with a clear rollback note when possible. ## 9 - Platform and troubleshooting reference * Supported platforms: Windows, Linux, macOS. * Supported shells: zsh, bash, PowerShell, cmd (Windows command prompt). * Python versions: 3.10, 3.11, 3.12, 3.13. * CLI file storage (useful for troubleshooting): * Config files are stored in `~/.config/fab/`: * `cache.bin` — encrypted auth token cache * `config.json` — non-sensitive CLI settings * `auth.json` — non-sensitive auth info * `context-<session_id>` — path context for command-line mode sessions * Debug logs are written to: * Windows: `%AppData%/fabcli_debug.log` * macOS: `~/Library/Logs/fabcli_debug.log` * Linux: `~/.local/state/fabcli_debug.log` ## 10 - Critical operational rules * First run: Always run `fab auth status` to verify authentication before executing commands. If not authenticated, ask the user to run `fab auth login`. * Learn before executing: Always use `fab --help` and `fab <command> --help` the first time you use a command to understand its syntax. * Start simple: Try the basic `fab` command alone first before piping or chaining. * Non-interactive mode: Use `fab` in command-line mode when working with coding agents. Interactive mode doesn't work with automation. * Force flag: Use `-f` when executing commands if the flag is available to run non-interactively (skips confirmation prompts). * Verify before acting: If workspace or item name is unclear, ask the user first, then verify with `fab ls` or `fab exists` before proceeding. * Permission errors: If a command is blocked by permissions, stop and ask the user for clarification; never try to circumvent it. ## 11 - Common item types ExtensionDescription`.Workspace`Workspace container`.Folder`Folder within workspace`.SemanticModel`Power BI dataset/semantic model`.Report`Power BI report`.Dashboard`Power BI dashboard`.Notebook`Fabric notebook`.Lakehouse`Lakehouse`.Warehouse`Data warehouse`.DataPipeline`Data pipeline`.SparkJobDefinition`Spark job definition`.Eventstream`Real-time event stream`.KQLDatabase`KQL database`.MLModel`ML model`.MLExperiment`ML experiment`.Capacity`Fabric capacity (hidden)`.Gateway`Data gateway (hidden)`.Connection`Connection (hidden) Use `fab desc .<ItemType>` to explore any item type. ## 12 - Command references For detailed command syntax and working examples, see: * Quick Start Guide — Copy-paste examples for common tasks * Full Command Reference — All commands with flags and patterns * Semantic Models — TMDL, DAX queries, refresh, storage modes * Notebooks — Job execution, parameters, scheduling * Reports — Export, import, rebind to models * Workspaces — Create, manage, permissions * Querying Data — DAX and lakehouse table queries * API Reference — Direct REST API access patterns * Create Workspaces — Workspace creation workflows ## More skills from microsoft oss-growthby microsoftOSS growth hacker personapr-description-skillby microsoftTrigger this skill on any of the following intents:python-architectureby microsoftPython architect personasupply-chain-securityby microsoftSupply chain security expert personaskill-nameby microsoftDescription of what the skill does and when to use itwork-iterationsby microsoftList, create, and assign iterations for Azure DevOps projects and teams.djangoby microsoftBest practices for Django web development including models, views, templates, and testing.flaskby microsoftBest practices for Flask web development including routing, blueprints, and testing. --- **Source**: https://github.com/microsoft/fabric-cli/tree/HEAD/.ai-assets/skills/fabric-cli-core **Author**: microsoft **Discovered via**: mcpservers.org
Related skills 6
caveman
Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.
secure-linux-web-hosting
Use when setting up, hardening, or reviewing a cloud server for self-hosting, including DNS, SSH, firewalls, Nginx, static-site hosting, reverse-proxying an app, HTTPS with Let's Encrypt or ACME clients, safe HTTP-to-HTTPS redirects, or optional post-launch network tuning such as BBR.
readme-i18n
Use when the user wants to translate a repository README, make a repo multilingual, localize docs, add a language switcher, internationalize the README, or update localized README variants in a GitHub-style repository.
lark-shared
Use when first setting up lark-cli, running auth login, switching user/bot identity (--as), handling permission denied or scope errors, needing to update lark-cli, or seeing _notice in JSON output.
improve-codebase-architecture
Find deepening opportunities in a codebase, informed by the domain language in CONTEXT.md and the decisions in docs/adr/. Use when the user wants to improve architecture, find refactoring opportunities, consolidate tightly-coupled modules, or make a codebase more testable and AI-navigable.
paper-context-resolver
Optional RigorPilot helper for README-first deep learning repo reproduction. Use only when the README and repository files leave a narrow reproduction-critical gap and the task is to resolve a specific paper detail such as dataset split, preprocessing, evaluation protocol, checkpoint mapping, or runtime assumption from primary paper sources while recording conflicts. Do not use for general paper summary, repo scanning, environment setup, command execution, title-only paper lookup, or replacin...