[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M70HM19RYPJAT602WNF3EY7E":3,"skill-same:01M70HM19RYPJAT602WNF3EY7E":66},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":46,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":49,"ownerDescription":50,"updatedAt":51,"install":52,"resources":65},"01M70HM19RYPJAT602WNF3EY7E","fabric-cli",null,"How to use fabric-app-data CLI to manage Fabric data source connections. Maintain workspace\u002Fitem IDs in a fabric.yaml file with profiles, add connections by ID or Fabric portal URL, and generate TypeScript config for use with @microsoft\u002Ffabric-app-data.","microsoft\u002Fawesome-rayfin","microsoft","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F6154722?v=4","01M698VYDXZ6JW5WH3CRV650R8","Microsoft","01M69BFJTNT39H6W8XT2H1BZDN",111,"MIT","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fawesome-rayfin\u002Fblob\u002Fmain\u002Ftemplates\u002Fcaldova-reorder\u002F.agents\u002Fskills\u002Ffabric-cli\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,9],"fabric cli","fabric","cli","manage","for","profiles","URL","with","how to","id","app","connections","maintain","use","how","ids","file","fabric data","generate","2026-11-10 10:12:30",false,"---\nname: fabric-cli\ndescription: >\n  How to use fabric-app-data CLI to manage Fabric data source connections.\n  Maintain workspace\u002Fitem IDs in a fabric.yaml file with profiles,\n  add connections by ID or Fabric portal URL, and generate TypeScript\n  config for use with @microsoft\u002Ffabric-app-data.\n---\n\n# Fabric CLI — Connection Management\n\n## Overview\n\nThe `fabric-app-data` CLI manages Fabric data source connections in a\n`fabric.yaml` file. It supports multiple profiles (dev, staging,\nproduction) and generates TypeScript config that the `@microsoft\u002Ffabric-app-data`\nconsumes at runtime.\n\n## Workflow\n\n```sh\nnpx fabric-app-data init                     # 1. Create fabric.yaml\nnpx fabric-app-data add sales --from-url \"https:\u002F\u002Fapp.fabric.microsoft.com\u002F...\"\n                                     # 2. Add connections\nnpx fabric-app-data generate -o src\u002Ffabric.generated.ts\n                                     # 3. Generate TypeScript config\n```\n\nThen in your app:\n```typescript\nimport { FabricClient } from \"@microsoft\u002Ffabric-app-data\";\nimport { fabricConfig } from \".\u002Ffabric.generated.js\";\n\nconst client = new FabricClient({ proxy, ...fabricConfig });\n```\n\n## Config discovery\n\nAll commands except `init` walk **up** the directory tree from the\ncurrent working directory until they find a `fabric.yaml`. This means\nyou can run the CLI from any subdirectory of your project (e.g. from\n`src\u002Fqueries\u002F` or a nested package) and it will pick up the project's\nroot `fabric.yaml` automatically.\n\n`init` is the exception — it always writes `fabric.yaml` to the\ncurrent working directory, so run it from the project root.\n\n## Commands\n\n### `npx fabric-app-data init`\n\nCreate a new `fabric.yaml` in the current directory.\n\n```sh\nnpx fabric-app-data init                    # default \"dev\" profile\nnpx fabric-app-data init -p production      # custom profile name\nnpx fabric-app-data init --force            # overwrite existing\n```\n\n### `npx fabric-app-data add`\n\nAdd a connection to a profile. Two modes:\n\n**From Fabric portal URL (preferred when the user pastes a URL):**\n```sh\nnpx fabric-app-data add \u003Calias> --from-url \"\u003CFabric portal URL>\"\n```\n\n**Explicit IDs (use this after `search` to register a chosen result):**\n```sh\nnpx fabric-app-data add semanticModel \u003Calias> -w \u003CworkspaceId> -i \u003CitemId>\n```\n\nTo register a model the user named (rather than linked), run `search` first,\npick the right row, then call `add` with that row's `-w`\u002F`-i`. `add` never\nsearches — discovery and registration are separate steps.\n\n**Important:** Prefer the short flags `-w` and `-i` (long forms `--workspace` and `--item`). Use one consistent style per command.\n\nThe URL parser extracts workspace ID, item ID, and type automatically.\nSupported URL segments: `semanticmodels`, `modeling`, `lakehouses`,\n`warehouses`. `\"me\"` is accepted as workspace ID for My Workspace items.\n\nOptions:\n- `-p, --profile \u003Cname>` — target profile (defaults to active)\n\n### `npx fabric-app-data search`\n\nFind a semantic model by display name via the Fabric Catalog Search endpoint.\nUseful when the user knows the model name but not the workspace + item ids.\n`search` only **returns results** — it never registers a connection; follow it\nwith `add -w \u003CworkspaceId> -i \u003CitemId>`.\n\n```sh\nnpx fabric-app-data search \"\u003Cname>\"\nnpx fabric-app-data search \"\u003Cname>\" --json              # machine-readable output (preferred for agents)\nnpx fabric-app-data search \"\u003Cname>\" -w \"\u003Cworkspace>\"    # restrict to one workspace (name or GUID)\nnpx fabric-app-data search \"\u003Cname>\" --max-results 5\n```\n\nOptions:\n- `--type \u003Ctype>` — scope the search to a Fabric item type (default `semanticModel`). The type is forwarded to Catalog Search, which returns whatever item types it supports.\n- `-w, --workspace \u003CnameOrId>` — restrict results to a single workspace (display name or GUID)\n- `--max-results \u003Cn>` — cap on hits returned (default 10, hard cap 50)\n- `--json` — emit machine-readable JSON\n\n**Caveats — read before using:**\n- Catalog Search is fuzzy and tokenized. It **never returns empty** for any\n  query — even nonsense strings produce ranked hits. A non-empty response does\n  **not** imply a confident match. Always reason over the `displayName` values\n  before adding a connection.\n- Exit code is `0` when at least one hit is returned, `1` when none are. Use\n  this to branch in scripts.\n- Items in your personal **My workspace** come back with `workspaceId` set to\n  the `me` sentinel — pass `-w me` to `add` (and to `query`), since My Workspace\n  has no separate workspace GUID in the Fabric APIs.\n- JSON output (`--json`) is the preferred format for agents: it includes\n  `source` (`catalog` \u002F `none`), `workspaceFilter`, `truncated`,\n  and a normalized `results[]` shape (`itemId`, `itemType`, `displayName`,\n  `description`, `workspaceId`, `workspaceName`) — enough metadata to\n  disambiguate same-named models in different workspaces.\n\n### `npx fabric-app-data remove \u003Calias>`\n\nRemove a connection by alias.\n\n```sh\nnpx fabric-app-data remove sales\nnpx fabric-app-data remove sales -p staging\n```\n\n### `npx fabric-app-data list`\n\nList all connections in a profile.\n\n```sh\nnpx fabric-app-data list\nnpx fabric-app-data list -p production\n```\n\n### `npx fabric-app-data use \u003Cprofile>`\n\nSwitch the active profile and auto-regenerate the config file.\n\n```sh\nnpx fabric-app-data use production\nnpx fabric-app-data use staging -o src\u002Fconfig\u002Ffabric.generated.ts\n```\n\n### `npx fabric-app-data generate`\n\nGenerate `fabric.generated.ts` from the active profile.\n\n```sh\nnpx fabric-app-data generate\nnpx fabric-app-data generate -o src\u002Ffabric.generated.ts\nnpx fabric-app-data generate -p production\n```\n\n### `npx fabric-app-data query`\n\nExecute a DAX query against a semantic model using the same SDK pipeline as the running app. Aliases: `execute`, `exec`.\n\n```sh\nnpx fabric-app-data query \u003Calias> --query '\u003CDAX>'\nnpx fabric-app-data query \u003Calias> --file src\u002Fqueries\u002Frevenue.dax\nnpx fabric-app-data query semanticModel \u003Calias> --query '\u003CDAX>'  # explicit source type\nnpx fabric-app-data query \u003Calias> --query '\u003CDAX>' --limit 50     # return at most 50 rows\nnpx fabric-app-data query \u003Calias> --query '\u003CDAX>' --profile staging\n```\n\nOptions:\n- `-q, --query \u003Cquery>` — inline DAX query text\n- `-f, --file \u003Cpath>` — path to a `.dax` file (alternative to `--query`)\n- `-l, --limit \u003Crows>` — maximum rows to return (default: 1000, max: 1000)\n- `-p, --profile \u003Cname>` — profile name (defaults to activeProfile)\n\n**Result trimming:** By default, results are capped at 1000 rows to keep output manageable. When the result is trimmed, the JSON output includes a `_cliWarning` field indicating how many rows were returned out of the total. This is a CLI-only limitation — the full dataset is available in the running app. If more rows are needed, refine the DAX query with filters or aggregations instead.\n\n## fabric.yaml Structure\n\n```yaml\nactiveProfile: dev\nprofiles:\n  dev:\n    semanticModels:\n      sales:\n        workspaceId: \"00c98f7c-...\"\n        itemId: \"03f2dc11-...\"\n      myModel:\n        workspaceId: \"me\"\n        itemId: \"c078a68d-...\"\n  production:\n    semanticModels:\n      sales:\n        workspaceId: \"aabbccdd-...\"\n        itemId: \"11223344-...\"\n```\n\n## Generated Output\n\n`fabric.generated.ts` exports a plain config object:\n\n```typescript\n\u002F\u002F fabric.generated.ts — AUTO-GENERATED from fabric.yaml (profile: dev). Do not edit.\n\nexport const fabricConfig = {\n  semanticModels: {\n    sales: {\n      workspaceId: '00c98f7c-...',\n      itemId: '03f2dc11-...',\n    },\n  },\n} as const;\n```\n\nAdd `fabric.generated.ts` to `.gitignore` — regenerate from `fabric.yaml`\nas needed.\n","# Fabric CLI — Connection Management\n\n## Overview\n\nThe `fabric-app-data` CLI manages Fabric data source connections in a\n`fabric.yaml` file. It supports multiple profiles (dev, staging,\nproduction) and generates TypeScript config that the `@microsoft\u002Ffabric-app-data`\nconsumes at runtime.\n\n## Workflow\n\n```sh\nnpx fabric-app-data init                     # 1. Create fabric.yaml\nnpx fabric-app-data add sales --from-url \"https:\u002F\u002Fapp.fabric.microsoft.com\u002F...\"\n                                     # 2. Add connections\nnpx fabric-app-data generate -o src\u002Ffabric.generated.ts\n                                     # 3. Generate TypeScript config\n```\n\nThen in your app:\n```typescript\nimport { FabricClient } from \"@microsoft\u002Ffabric-app-data\";\nimport { fabricConfig } from \".\u002Ffabric.generated.js\";\n\nconst client = new FabricClient({ proxy, ...fabricConfig });\n```\n\n## Config discovery\n\nAll commands except `init` walk **up** the directory tree from the\ncurrent working directory until they find a `fabric.yaml`. This means\nyou can run the CLI from any subdirectory of your project (e.g. from\n`src\u002Fqueries\u002F` or a nested package) and it will pick up the project's\nroot `fabric.yaml` automatically.\n\n`init` is the exception — it always writes `fabric.yaml` to the\ncurrent working directory, so run it from the project root.\n\n## Commands\n\n### `npx fabric-app-data init`\n\nCreate a new `fabric.yaml` in the current directory.\n\n```sh\nnpx fabric-app-data init                    # default \"dev\" profile\nnpx fabric-app-data init -p production      # custom profile name\nnpx fabric-app-data init --force            # overwrite existing\n```\n\n### `npx fabric-app-data add`\n\nAdd a connection to a profile. Two modes:\n\n**From Fabric portal URL (preferred when the user pastes a URL):**\n```sh\nnpx fabric-app-data add \u003Calias> --from-url \"\u003CFabric portal URL>\"\n```\n\n**Explicit IDs (use this after `search` to register a chosen result):**\n```sh\nnpx fabric-app-data add semanticModel \u003Calias> -w \u003CworkspaceId> -i \u003CitemId>\n```\n\nTo register a model the user named (rather than linked), run `search` first,\npick the right row, then call `add` with that row's `-w`\u002F`-i`. `add` never\nsearches — discovery and registration are separate steps.\n\n**Important:** Prefer the short flags `-w` and `-i` (long forms `--workspace` and `--item`). Use one consistent style per command.\n\nThe URL parser extracts workspace ID, item ID, and type automatically.\nSupported URL segments: `semanticmodels`, `modeling`, `lakehouses`,\n`warehouses`. `\"me\"` is accepted as workspace ID for My Workspace items.\n\nOptions:\n- `-p, --profile \u003Cname>` — target profile (defaults to active)\n\n### `npx fabric-app-data search`\n\nFind a semantic model by display name via the Fabric Catalog Search endpoint.\nUseful when the user knows the model name but not the workspace + item ids.\n`search` only **returns results** — it never registers a connection; follow it\nwith `add -w \u003CworkspaceId> -i \u003CitemId>`.\n\n```sh\nnpx fabric-app-data search \"\u003Cname>\"\nnpx fabric-app-data search \"\u003Cname>\" --json              # machine-readable output (preferred for agents)\nnpx fabric-app-data search \"\u003Cname>\" -w \"\u003Cworkspace>\"    # restrict to one workspace (name or GUID)\nnpx fabric-app-data search \"\u003Cname>\" --max-results 5\n```\n\nOptions:\n- `--type \u003Ctype>` — scope the search to a Fabric item type (default `semanticModel`). The type is forwarded to Catalog Search, which returns whatever item types it supports.\n- `-w, --workspace \u003CnameOrId>` — restrict results to a single workspace (display name or GUID)\n- `--max-results \u003Cn>` — cap on hits returned (default 10, hard cap 50)\n- `--json` — emit machine-readable JSON\n\n**Caveats — read before using:**\n- Catalog Search is fuzzy and tokenized. It **never returns empty** for any\n  query — even nonsense strings produce ranked hits. A non-empty response does\n  **not** imply a confident match. Always reason over the `displayName` values\n  before adding a connection.\n- Exit code is `0` when at least one hit is returned, `1` when none are. Use\n  this to branch in scripts.\n- Items in your personal **My workspace** come back with `workspaceId` set to\n  the `me` sentinel — pass `-w me` to `add` (and to `query`), since My Workspace\n  has no separate workspace GUID in the Fabric APIs.\n- JSON output (`--json`) is the preferred format for agents: it includes\n  `source` (`catalog` \u002F `none`), `workspaceFilter`, `truncated`,\n  and a normalized `results[]` shape (`itemId`, `itemType`, `displayName`,\n  `description`, `workspaceId`, `workspaceName`) — enough metadata to\n  disambiguate same-named models in different workspaces.\n\n### `npx fabric-app-data remove \u003Calias>`\n\nRemove a connection by alias.\n\n```sh\nnpx fabric-app-data remove sales\nnpx fabric-app-data remove sales -p staging\n```\n\n### `npx fabric-app-data list`\n\nList all connections in a profile.\n\n```sh\nnpx fabric-app-data list\nnpx fabric-app-data list -p production\n```\n\n### `npx fabric-app-data use \u003Cprofile>`\n\nSwitch the active profile and auto-regenerate the config file.\n\n```sh\nnpx fabric-app-data use production\nnpx fabric-app-data use staging -o src\u002Fconfig\u002Ffabric.generated.ts\n```\n\n### `npx fabric-app-data generate`\n\nGenerate `fabric.generated.ts` from the active profile.\n\n```sh\nnpx fabric-app-data generate\nnpx fabric-app-data generate -o src\u002Ffabric.generated.ts\nnpx fabric-app-data generate -p production\n```\n\n### `npx fabric-app-data query`\n\nExecute a DAX query against a semantic model using the same SDK pipeline as the running app. Aliases: `execute`, `exec`.\n\n```sh\nnpx fabric-app-data query \u003Calias> --query '\u003CDAX>'\nnpx fabric-app-data query \u003Calias> --file src\u002Fqueries\u002Frevenue.dax\nnpx fabric-app-data query semanticModel \u003Calias> --query '\u003CDAX>'  # explicit source type\nnpx fabric-app-data query \u003Calias> --query '\u003CDAX>' --limit 50     # return at most 50 rows\nnpx fabric-app-data query \u003Calias> --query '\u003CDAX>' --profile staging\n```\n\nOptions:\n- `-q, --query \u003Cquery>` — inline DAX query text\n- `-f, --file \u003Cpath>` — path to a `.dax` file (alternative to `--query`)\n- `-l, --limit \u003Crows>` — maximum rows to return (default: 1000, max: 1000)\n- `-p, --profile \u003Cname>` — profile name (defaults to activeProfile)\n\n**Result trimming:** By default, results are capped at 1000 rows to keep output manageable. When the result is trimmed, the JSON output includes a `_cliWarning` field indicating how many rows were returned out of the total. This is a CLI-only limitation — the full dataset is available in the running app. If more rows are needed, refine the DAX query with filters or aggregations instead.\n\n## fabric.yaml Structure\n\n```yaml\nactiveProfile: dev\nprofiles:\n  dev:\n    semanticModels:\n      sales:\n        workspaceId: \"00c98f7c-...\"\n        itemId: \"03f2dc11-...\"\n      myModel:\n        workspaceId: \"me\"\n        itemId: \"c078a68d-...\"\n  production:\n    semanticModels:\n      sales:\n        workspaceId: \"aabbccdd-...\"\n        itemId: \"11223344-...\"\n```\n\n## Generated Output\n\n`fabric.generated.ts` exports a plain config object:\n\n```typescript\n\u002F\u002F fabric.generated.ts — AUTO-GENERATED from fabric.yaml (profile: dev). Do not edit.\n\nexport const fabricConfig = {\n  semanticModels: {\n    sales: {\n      workspaceId: '00c98f7c-...',\n      itemId: '03f2dc11-...',\n    },\n  },\n} as const;\n```\n\nAdd `fabric.generated.ts` to `.gitignore` — regenerate from `fabric.yaml`\nas needed.\n",{"name":5,"description":7},"main","d1892a8ab351080f1736d97d8d5fe7fc9e438ed7","templates\u002Fcaldova-reorder\u002F.agents\u002Fskills\u002Ffabric-cli",70,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fawesome-rayfin","https:\u002F\u002Fgithub.com\u002Fmicrosoft","https:\u002F\u002Fopensource.microsoft.com","Open source projects and samples from Microsoft","2026-11-09 23:42:43",{"source":8,"skillName":5,"commands":53,"prompt":63,"zipAvailable":64},[54,57,60],{"tool":55,"command":56},"npx","npx skills add microsoft\u002Fawesome-rayfin --skill fabric-cli",{"tool":58,"command":59},"bunx","bunx skills add microsoft\u002Fawesome-rayfin --skill fabric-cli",{"tool":61,"command":62},"pnpm","pnpm dlx skills add microsoft\u002Fawesome-rayfin --skill fabric-cli","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fawesome-rayfin\u002Fblob\u002Fmain\u002Ftemplates\u002Fcaldova-reorder\u002F.agents\u002Fskills\u002Ffabric-cli\u002FSKILL.md",true,[],[67,91,117,141,174,205],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":38},"01M70HMXK23DA6CE0T9R4DNDA9","visuals","Use when user wants to incorporate charts, graphs, data grid,  or other visual representations of data into their project. Use VegaVisual and DataGrid components to create these visuals,  utilizing the shared DataTable input, formatting, theme, and interactivity. Covers the onInteraction selection\u002Fclick events host apps consume, named multi-table data input for layered overlays and reference lines, and Vega-Lite native selections.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fawesome-rayfin\u002Fblob\u002Fmain\u002Ftemplates\u002Fcaldova-reorder\u002F.agents\u002Fskills\u002Fvisuals\u002FSKILL.md",[],[69,74,75,76,77,23,78,79,80,81,32,82,83,84,85,86,87,88,89,90],"shared","click","theme","Charts","overlays","project","selection","host","apps","when","visual","components","grid","multi","create","layered","native",{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":38},"01M70HMVE4BANY7VVP0JR2GQ92","schema-discovery","Explore Power BI semantic model schemas using DAX INFO functions. Progressive metadata discovery strategy, scope estimation, and narrowing techniques for tables, columns, measures, and relationships.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fawesome-rayfin\u002Fblob\u002Fmain\u002Ftemplates\u002Fcaldova-reorder\u002F.agents\u002Fskills\u002Fschema-discovery\u002FSKILL.md",[],[98,99,100,101,102,103,23,104,105,106,107,108,109,110,111,112,113,114,115,116],"discovery","schema discovery","schema","power","scope","model","explore","techniques","strategy","estimation","power bi","functions","info","bi","relationships","columns","dax","tables","semantic",{"skillNo":118,"name":119,"nameZh":6,"description":120,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":121,"categories":122,"keywords":123,"publishedAt":38},"01M70HMQD0PKCKWCY2NQ8VCCYH","rayfin","Use when doing ANY task involving Rayfin — scaffolding, data models, decorators, auth, deployment, CLI commands, or client setup. Triggers: rayfin, rayfin init, rayfin up, rayfin login, RayfinClient, @entity, @role, @anonymous, @authenticated, @text, @uuid, @int, @decimal, @boolean, @date, @email, @set, @one, @many, DAB, Data API Builder, rayfin.yml, publishableKey, signUp, signIn, signOut, sendMagicLink, handleMagicLinkCallback, ensureSignedInWithFabric, Fabric SSO, Entra ID, rayfin up db apply, rayfin up staticapp deploy, schema.ts, OpaqueSession, onSessionChange, GraphQL select, GraphQL create, GraphQL update, GraphQL delete, findById, executePaginated, RLS policy, row-level security, claims.sub, claims.email, TC39 decorators, config generation, dialect, mssql, postgresql","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fawesome-rayfin\u002Fblob\u002Fmain\u002Ftemplates\u002Fcaldova-reorder\u002F.agents\u002Fskills\u002Frayfin\u002FSKILL.md",[],[119,124,125,126,127,128,129,130,131,132,133,134,135,83,136,137,138,139,140,88],"builder","SET","decorators","anonymous","auth","db","scaffolding","select","up","init","entra id","api builder","rls","api","text","mssql","postgresql",{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":157,"publishedAt":38},"01M70HMFPA9WXWY5X7C14XB11D","rayfin-connectors","Use for Rayfin connectors that wire existing Fabric SQL data sources (Lakehouse, Warehouse, SQL Database) into an app as GraphQL-backed entities. Triggers: rayfin connector, rayfin up connector apply, connectors:, fabric-sqlanalytics, fabric-warehouse, fabric-sqldatabase, kusto, kql, eventhouse, workspaceId, itemId, operations:, AppConnectorsSchema, ConnectorsSchema, rayfin\u002Fconnectors\u002F, metadata.json, connector @role policy, connector claims.sub filter, connector claims.email filter, ConnectorsRayfinClient, rayfin-client.ts, client.connectors, connectorConfig, GraphQLBackedConnector, RestrictedDataApi, schema.ts aggregate, generate entities from metadata, add a use case on specific entities, wire connector into client, call a connector from the SDK, rayfin connector inspect, inspect connector data, sample connector rows, fabric-semanticmodel, --entity, --query, DAX EVALUATE, read-only sample query, rayfin connector search, discover connectable sources, find fabric sources to add, --all-workspaces, --workspace-id, connector search interactive picker, rayfin connector invoke, invoke a connector operation, run executeQuery, --input, --file, RAYFIN_FEATURE_FLAGS, resultSetRowCountLimit, limit rows, row limit, cap rows, too many rows, overflow","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fawesome-rayfin\u002Fblob\u002Fmain\u002Ftemplates\u002Fcaldova-reorder\u002F.agents\u002Fskills\u002Frayfin-connectors\u002FSKILL.md",[147,152],{"categoryNo":148,"categoryName":149,"taxonomyType":150,"taxonomyTypeDesc":151},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":153,"categoryName":154,"taxonomyType":155,"taxonomyTypeDesc":156},"01JBSEEDCAT000000000000033","数据分析师","PROFESSION","适用职业",[158,119,159,29,160,161,162,163,164,165,37,166,167,168,169,170,171,172,173,23],"rayfin connectors","connectors","inspect","workspaces","search","invoke","filter","cap","data sources","run","read","input","as","kql","limit","email",{"skillNo":175,"name":176,"nameZh":6,"description":177,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":178,"categories":179,"keywords":189,"publishedAt":38},"01M70HMD71TMHM9NEZV0870V9B","query-design","Separates DAX data-fetching from TypeScript presentation. Guides when to use  DAX vs. TypeScript vs. Vega-Lite for aggregation, total rows, FORMAT(), SELECTCOLUMNS,  BLANK handling, filtering, multi-grain queries, cross-filtering and cross-highlight subset\u002Foverlay queries, and format strings.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fawesome-rayfin\u002Fblob\u002Fmain\u002Ftemplates\u002Fcaldova-reorder\u002F.agents\u002Fskills\u002Fquery-design\u002FSKILL.md",[180,183,186],{"categoryNo":181,"categoryName":182,"taxonomyType":150,"taxonomyTypeDesc":151},"01JBSEEDCAT000000000000003","演示文稿",{"categoryNo":184,"categoryName":185,"taxonomyType":150,"taxonomyTypeDesc":151},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":187,"categoryName":188,"taxonomyType":155,"taxonomyTypeDesc":156},"01JBSEEDCAT000000000000032","设计师",[190,191,192,193,23,194,195,32,83,196,87,197,198,199,200,201,202,203,204,114],"query design","design","query","overlay","strings","filtering","guides","queries","grain","aggregation","format","typescript","data-fetching","data","when to use",{"skillNo":206,"name":207,"nameZh":6,"description":208,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":209,"categories":210,"keywords":214,"publishedAt":38},"01M70HMAX3MRJWF62P8PAYF1R3","playwright-cli","Automate browser interactions, test web pages and work with Playwright tests.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fawesome-rayfin\u002Fblob\u002Fmain\u002Ftemplates\u002Fcaldova-reorder\u002F.agents\u002Fskills\u002Fplaywright-cli\u002FSKILL.md",[211],{"categoryNo":212,"categoryName":213,"taxonomyType":150,"taxonomyTypeDesc":151},"01JBSEEDCAT000000000000008","测试与质量",[215,216,21,207,217,218,55,219,220,26,221,222,223,224,225,226],"playwright cli","playwright","pages","tests","Bash","browser","test","work","web","test web","npm","automate"]