@sxl-studio/bridge 1.4.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,9 +5,25 @@
5
5
  export const SXL_BRIDGE_MCP_INSTRUCTIONS = `
6
6
  You are assisting with Figma through the SXL Studio plugin and this Bridge. Follow these rules precisely.
7
7
 
8
+ ## Decision tree — read this first
9
+ 1. The user is asking for something inside Figma. Open \`sxl://agent/recipes/index\` and pick the recipe that matches the user's phrase. Recipes there are intent-routed (RU + EN phrases included).
10
+ 2. Documentation / palette / scenarios → use **this Bridge**, never \`use_figma\` with a hand-written script. Doc Builder tools cover all four core flows:
11
+ - Token table → \`apply_doc_spec\` / \`build_token_documentation\` / \`apply_token_doc_spec\`.
12
+ - Variable cards (e.g. "цвета коллекции Projects") → \`bind_variable_palette\` (or \`apply_doc_spec\` with \`palette\` section).
13
+ - Component (title + variants + props + measure) → \`build_component_doc\` (or \`apply_doc_spec\`).
14
+ - Multi-page flow → \`build_doc_flow\`.
15
+ 3. If no recipe fits, prefer composing \`apply_doc_spec\` from explicit sections (read \`sxl://agent/recipes/doc-spec-v2\`) before falling back to direct canvas tools.
16
+ 4. Always pass JSON arguments to Bridge tools directly. Never write payloads to \`/tmp\`, never base64-encode loaders into \`use_figma\`, never glue shell + node -e to invoke MCP.
17
+
8
18
  ## Two MCP servers you may see in Cursor
9
19
  - **Official Figma MCP** (often remote): reads design context from selection / links, opens files, native Figma ops (e.g. \`use_figma\`). Parse \`node-id\` from figma.com URLs by replacing "-" with ":".
10
- - **SXL Studio Bridge** (this server): plugin-only commands — composition / token files, variables, styles, Git in the plugin, Dev Mode codegen parity, orchestration helpers, and canvas helpers.
20
+ - **SXL Studio Bridge** (this server): plugin-only commands — composition / token files, variables, styles, Git in the plugin, Dev Mode codegen parity, orchestration helpers, canvas helpers, and Doc Builder.
21
+
22
+ **Critical split:** If the user’s task is doable with SXL Studio (token files, **local Figma variables**, compositions, documentation templates in the open file) — you **MUST** use **this Bridge**, not \`use_figma\` with a hand-written Figma Plugin API script. The plugin does not run arbitrary JS from the Figma MCP; variable enumeration and card fills belong to \`get_variables\`, \`bind_variable_palette\`, \`set_node_fill_variable\`, etc. Live anti-patterns from past incidents — never repeat:
23
+ - Writing \`/tmp/projects_loader_payload.json\` and trying to feed it into \`use_figma\` via a base64 loader.
24
+ - Composing \`figma.variables.getLocalVariablesAsync()\` scripts in the chat instead of calling \`get_variables\`.
25
+ - Hand-cloning frames + setting fills via \`use_figma\` instead of \`bind_variable_palette\`.
26
+ - Adding throwaway \`.js\` doc scripts to repo roots.
11
27
 
12
28
  ## Prerequisites for every session
13
29
  1. Bridge is running locally (HTTP + WebSocket + MCP on BRIDGE_PORT, default 37830).
@@ -25,10 +41,14 @@ You are assisting with Figma through the SXL Studio plugin and this Bridge. Foll
25
41
  - \`sxl://tokens/files\` — token file index.
26
42
  - \`sxl://tokens/files/{fileId}\` — raw token file body.
27
43
  - \`sxl://compositions/index\` — composition JSON index.
28
- - \`sxl://agent/recipes/doc-tokens\` — **machine-readable** steps for token documentation (Doc Spec v1).
29
- - \`sxl://agent/recipes/doc-component\` — component documentation recipe (codegen + template).
30
- - \`sxl://agent/recipes/doc-composition\` — materialise from composition, do not hand-write JSON.
31
- - \`sxl://agent/recipes/doc-flow\` — multi-page / flow orientation.
44
+ - \`sxl://agent/recipes/index\` — **always start here**: intent router that maps user phrases to specific Doc Builder recipes.
45
+ - \`sxl://agent/recipes/template-discovery\` — how to locate \`templateNodeId\` and swatch / label layer names inside a content frame.
46
+ - \`sxl://agent/recipes/doc-spec-v2\` — section vocabulary for the canonical \`apply_doc_spec\` endpoint.
47
+ - \`sxl://agent/recipes/doc-tokens\` — Doc Spec v1 / v2 \`tokenTable\` for DTCG-driven docs.
48
+ - \`sxl://agent/recipes/doc-component\` — component documentation recipe (\`build_component_doc\`).
49
+ - \`sxl://agent/recipes/doc-composition\` — materialise from composition; do not hand-write JSON.
50
+ - \`sxl://agent/recipes/doc-flow\` — multi-page / scenario flow (\`build_doc_flow\`).
51
+ - \`sxl://agent/recipes/variable-palette\` — color cards from a Figma variable collection (\`bind_variable_palette\`). Read before any script.
32
52
 
33
53
  ## CRITICAL — never hand-craft composition / token JSON
34
54
  If the user asks for "JSON", "composition", "get code", or "same output as Dev Mode → Get Code":
@@ -54,30 +74,56 @@ If the user asks for "JSON", "composition", "get code", or "same output as Dev M
54
74
  \`generate_composition\` and materialize the component in Figma.
55
75
  - \`document_component\` — \`get_codegen\` on a component + \`apply_documentation_payload\`
56
76
  to fill a documentation template with real context.
57
- - \`build_token_documentation\` — **Doc Spec v1**: resolve DTCG \`tokenPath\` values in the
58
- plugin workspace and fill TEXT layers by \`layerName\` under \`targetRootId\`. Preferred
59
- entry point for token doc pages; equivalent plugin command: \`apply_token_doc_spec\`. Read
60
- \`sxl://agent/recipes/doc-tokens\` first. Use \`dryRun: true\` to preview without canvas writes.
61
- **Do not** hand-roll token JSON or paste raw plugin scripts — stay on whitelist commands.
77
+ - \`build_token_documentation\` — **Doc Spec v1 / tokenTable section**: resolve DTCG \`tokenPath\` values in the
78
+ plugin workspace and fill TEXT layers by \`layerName\` under \`targetRootId\`. Equivalent to a
79
+ single \`tokenTable\` section in \`apply_doc_spec\`; equivalent plugin command:
80
+ \`apply_token_doc_spec\`. Read \`sxl://agent/recipes/doc-tokens\` first. \`dryRun: true\`
81
+ previews without canvas writes.
82
+ - \`apply_doc_spec\` — **Doc Spec v2**, generic pipeline. Accepts an array of sections
83
+ (\`title\`, \`description\`, \`variants\`, \`props\`, \`tokenTable\`, \`palette\`, \`measure\`) and
84
+ applies them in order under \`frame.targetParentId\`. Preferred when you need more than
85
+ one section in a single doc page.
86
+ - \`bind_variable_palette\` — generates per-variable cards from a Figma variable collection.
87
+ Pass \`{ collectionName | collectionId, parentNodeId, templateNodeId, swatchLayerName,
88
+ labelLayerName?, valueLayerName?, type? }\`. Replaces ad-hoc \`use_figma\` scripts that
89
+ cloned templates and called \`figma.variables.*\` directly.
90
+ - \`build_component_doc\` — title + variants + props (+ optional \`measure\`) for a component
91
+ or component set in a single call.
92
+ - \`build_doc_flow\` — multi-page scenario layout (\`pages[]\` of node URLs / IDs / composition
93
+ files). Use this instead of orchestrating multiple \`compose_from_url\` calls by hand.
62
94
 
63
95
  ## Documentation recipes (do not improvise the pipeline)
64
- 1. **Token table / palette (Doc Spec v1)** — attach \`sxl://agent/recipes/doc-tokens\`. Steps:
65
- \`list_token_files\` / resources build \`spec\` (\`version: "1"\`, \`groups[].rows\` with
66
- \`layerName\` + \`tokenPath\`) \`build_token_documentation\` or \`apply_token_doc_spec\`
67
- with \`targetRootId\` (clone template with \`duplicate_subtree\` first). Figma must be in
68
- **Design** mode for writes.
69
- 2. **Component doc** — \`sxl://agent/recipes/doc-component\`: rely on \`get_codegen\` /
70
- \`export_composition_json\`, then \`apply_documentation_payload\` with
71
- \`{ targetRootId, entries: [{ layerName, text }] }\`.
96
+ 0. **Pick the recipe via the index** — read \`sxl://agent/recipes/index\` first. It contains
97
+ user-phrase routing (RU + EN) and \`decideBetween\` rules so you don't have to guess.
98
+ 1. **Token table (Doc Spec v1 / v2 tokenTable)** attach \`sxl://agent/recipes/doc-tokens\`.
99
+ Either pass a single \`tokenTable\` section into \`apply_doc_spec\`, or use
100
+ \`build_token_documentation\` / \`apply_token_doc_spec\` with \`groups[].rows\` (legacy v1).
101
+ 2. **Component doc** — \`sxl://agent/recipes/doc-component\`: prefer \`build_component_doc\`
102
+ for title + variants + props; combine with \`apply_doc_spec\` if you need extra
103
+ \`description\` / \`measure\` sections.
72
104
  3. **From composition** — \`sxl://agent/recipes/doc-composition\`: \`compose_from_url\` or
73
105
  \`export_composition_json\` → file → \`generate_composition\`; never fabricate composition
74
106
  JSON from \`get_node_tree\`.
75
- 4. **Multi-page flow** — \`sxl://agent/recipes/doc-flow\`: chain high-level tools; avoid ad-hoc
76
- Figma API scripts in the repository for production doc (see \`Plugin/sxl/docs/23-doc-agent-phased-roadmap.md\`).
77
-
78
- **Forbidden for agents (documentation flows):** synthesising composition JSON; one-off
79
- \`use_figma\` / raw Plugin API scripts when a Bridge+plugin path exists; creating throwaway
80
- \`.js\` doc scripts in repo roots use Bridge commands or tracked \`tools/\` with an owner.
107
+ 4. **Multi-page flow** — \`sxl://agent/recipes/doc-flow\`: use \`build_doc_flow\`. Don't chain
108
+ \`compose_from_url\` by hand for the simple "place pages with captions" case.
109
+ 5. **Variable palette (color cards from a Figma collection, not JSON)** — attach
110
+ \`sxl://agent/recipes/variable-palette\` first. Use \`bind_variable_palette\` with
111
+ \`{ collectionName, parentNodeId, templateNodeId, swatchLayerName }\`. The plugin enumerates
112
+ variables, clones the template, binds fills, writes labels all in one call. Pass
113
+ \`type: "COLOR"\` if you need to filter. **Do not** call \`use_figma\` with a script that
114
+ does the same thing.
115
+ 6. **Generic Doc Spec v2** — \`sxl://agent/recipes/doc-spec-v2\` describes the section
116
+ vocabulary. Compose your own \`apply_doc_spec\` payload from \`title\`, \`description\`,
117
+ \`variants\`, \`props\`, \`tokenTable\`, \`palette\`, \`measure\`.
118
+
119
+ **Forbidden for agents (documentation flows):**
120
+ - Synthesising composition JSON or token JSON by hand.
121
+ - Calling \`use_figma\` (or any other generic JS-in-Figma tool) when a Bridge command exists.
122
+ - Creating throwaway \`.js\` doc scripts in repo roots.
123
+ - Shell pipes writing MCP payloads to \`/tmp/*.json\`, base64-encoded loaders, hidden files
124
+ under \`tokens/system\`. The chat-side incident "Use Node.js to read /tmp/projects_loader_payload.json
125
+ and feed it as base64 into use_figma" is the exact pattern to avoid: instead, call
126
+ \`bind_variable_palette\` with the JSON arguments inline.
81
127
 
82
128
  ## Canonical workflow — component from a Figma layout (manual)
83
129
  1. \`export_composition_json\` with \`payload.nodeId\` (or rely on current selection). Receive
@@ -1 +1 @@
1
- {"version":3,"file":"sxl-mcp-instructions.js","sourceRoot":"","sources":["../src/sxl-mcp-instructions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgK1C,CAAC,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"sxl-mcp-instructions.js","sourceRoot":"","sources":["../src/sxl-mcp-instructions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8M1C,CAAC,IAAI,EAAE,CAAC"}
@@ -164,6 +164,10 @@ export function bootstrapBridgeToolCatalogue() {
164
164
  { name: "compose_from_url", category: "orchestration", summary: "Parse Figma URL → export_composition_json → save as composition file → optional generate.", requiresComposition: true },
165
165
  { name: "document_component", category: "orchestration", summary: "Generate SXL documentation payload for a component and apply it.", requiresDesignMode: true, requiresComposition: true },
166
166
  { name: "build_token_documentation", category: "orchestration", summary: "Doc Spec v1: resolve token paths and fill doc template TEXT by layer name.", requiresDesignMode: true },
167
+ { name: "apply_doc_spec", category: "orchestration", summary: "Doc Spec v2 (canonical): apply a list of documentation sections to a Figma frame.", requiresDesignMode: true },
168
+ { name: "bind_variable_palette", category: "orchestration", summary: "Doc Builder: render Figma variable collection as cards by cloning a swatch template.", requiresDesignMode: true },
169
+ { name: "build_component_doc", category: "orchestration", summary: "Doc Builder: title + variants matrix + props table for a component / component set.", requiresDesignMode: true },
170
+ { name: "build_doc_flow", category: "orchestration", summary: "Doc Builder: render multi-page flow / scenario in an auto-layout container.", requiresDesignMode: true },
167
171
  { name: "list_tools", category: "orchestration", summary: "List all Bridge MCP tools with metadata." },
168
172
  ]);
169
173
  }
@@ -1 +1 @@
1
- {"version":3,"file":"catalogue-bootstrap.js","sourceRoot":"","sources":["../../src/tools/catalogue-bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalogue-bootstrap.js","sourceRoot":"","sources":["../../src/tools/catalogue-bootstrap.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@
7
7
  * single-source-of-truth generators (export_composition_json / get_codegen).
8
8
  */
9
9
  import { z } from "zod";
10
- import { tokenDocSpecV1Zod } from "./tokens.js";
10
+ import { annotationItemZod, docSpecV2Zod, tokenDocSpecV1Zod, } from "./tokens.js";
11
11
  import { parseFigmaUrl } from "./figma-url.js";
12
12
  import { callPluginCommand, ok } from "./shared.js";
13
13
  async function executeOrThrow(queue, commandType, payload = {}) {
@@ -109,7 +109,7 @@ export function registerOrchestrationTools(server, queue) {
109
109
  };
110
110
  return callPluginCommand(queue, "apply_documentation_payload", { payload });
111
111
  });
112
- server.tool("build_token_documentation", "Product-level: fill a token documentation template in Figma using Doc Spec v1 (resolve token paths from the plugin workspace, bind TEXT layers by name). Same plugin command as apply_token_doc_spec use this entry point when following sxl://agent/recipes/doc-tokens. Clone your template first (duplicate_subtree) to obtain targetRootId.", {
112
+ server.tool("build_token_documentation", "Product-level: alias of apply_doc_spec.tokenTable section. Fills a token documentation template using Doc Spec v1 (resolve token paths from the plugin workspace, bind TEXT layers by name). For richer documents (title, variants, props, palette, measure), use apply_doc_spec / build_component_doc / bind_variable_palette directly. Read sxl://agent/recipes/doc-tokens.", {
113
113
  spec: tokenDocSpecV1Zod.describe("Doc Spec v1 (version 1, groups with layerName + tokenPath)"),
114
114
  targetRootId: z
115
115
  .string()
@@ -124,5 +124,113 @@ export function registerOrchestrationTools(server, queue) {
124
124
  payload.dryRun = true;
125
125
  return callPluginCommand(queue, "apply_token_doc_spec", payload);
126
126
  });
127
+ server.tool("apply_doc_spec", "Doc Spec v2 (canonical): apply a list of documentation sections to a Figma frame. Sections supported: title, description (markdown→formatted runs), variants (matrix from ComponentSet), props (componentPropertyDefinitions table), tokenTable (DTCG path bind), palette (Figma Variables → cards), measure (annotations, experimental). Always read sxl://agent/recipes/index BEFORE composing the spec — it routes you to the right sub-recipe (doc-tokens / variable-palette / doc-component / doc-flow / doc-spec-v2).", {
128
+ spec: docSpecV2Zod.describe("Doc Spec v2 (version 2, sections list)"),
129
+ targetRootId: z
130
+ .string()
131
+ .optional()
132
+ .describe("Figma id of the documentation frame to fill. Overrides spec.frame.targetRootId. Omit with dryRun to preview only."),
133
+ dryRun: z.boolean().optional().describe("Preview reports without mutating the canvas"),
134
+ }, async ({ spec, targetRootId, dryRun }) => {
135
+ const payload = { spec };
136
+ if (targetRootId)
137
+ payload.targetRootId = targetRootId;
138
+ if (dryRun === true)
139
+ payload.dryRun = true;
140
+ return callPluginCommand(queue, "apply_doc_spec", payload);
141
+ });
142
+ server.tool("bind_variable_palette", "Documentation: clone a swatch template once per Figma variable from a local collection and bind each clone's swatch fill to the variable. Use this whenever the user wants to render an existing variable collection (e.g. 'Projects', 'Core/Color') as cards. Never write a use_figma script for this — read sxl://agent/recipes/variable-palette and call this tool. templateNodeId must be a clonable scene node already in the file (often the first card inside content frame).", {
143
+ templateNodeId: z
144
+ .string()
145
+ .describe("Figma id of the card / swatch template to clone for each variable. The template is cloned into the same parent."),
146
+ collectionName: z.string().optional().describe("Local variable collection name (e.g. 'Projects', 'Core/Color')"),
147
+ collectionId: z.string().optional().describe("Local variable collection id (preferred when known)"),
148
+ variableType: z
149
+ .enum(["COLOR", "FLOAT", "STRING", "BOOLEAN"])
150
+ .optional()
151
+ .describe("Filter by variable type (default: all). Use COLOR for paint palettes."),
152
+ swatchLayerName: z
153
+ .string()
154
+ .optional()
155
+ .describe("Layer name inside the template that should receive the variable-bound fill (typically 'swatch' / 'fill')."),
156
+ labelLayerName: z
157
+ .string()
158
+ .optional()
159
+ .describe("TEXT layer name to write the variable name (last segment) into."),
160
+ valueLayerName: z
161
+ .string()
162
+ .optional()
163
+ .describe("TEXT layer name to write a value preview (e.g. hex). Optional."),
164
+ namePrefix: z.string().optional().describe("Only include variables whose name starts with this prefix"),
165
+ limit: z.number().int().positive().optional().describe("Cap the number of variables (debugging / sampling)"),
166
+ targetRootId: z
167
+ .string()
168
+ .optional()
169
+ .describe("Existing doc frame id (the cards are appended next to the template; use this when template lives outside the frame and you want to scope reports)"),
170
+ targetParentId: z
171
+ .string()
172
+ .optional()
173
+ .describe("Parent frame for any auxiliary container (rarely needed: cards are appended next to the template)."),
174
+ dryRun: z.boolean().optional().describe("Preview without writing to the canvas"),
175
+ }, async (args) => callPluginCommand(queue, "bind_variable_palette", { ...args }));
176
+ server.tool("build_component_doc", "Documentation: build a component documentation frame from a Figma component / component set. Always emits title + props; emits variants when a component set is supplied; description markdown is optional; measure annotations are opt-in (experimental). Read sxl://agent/recipes/doc-component before calling.", {
177
+ componentNodeId: z
178
+ .string()
179
+ .describe("Figma id of the COMPONENT or COMPONENT_SET to document"),
180
+ title: z.string().optional().describe("Title text. Defaults to the node name."),
181
+ description: z.string().optional().describe("Optional markdown description (subset: # heading, **bold**, *italic*, `code`)."),
182
+ variantsLayout: z.enum(["matrix", "grid", "list"]).optional().describe("Layout for the variants section (default: matrix)"),
183
+ variantsGroupBy: z.string().optional().describe("Variant property to group rows by (matrix layout)"),
184
+ variantsLabelLayerName: z
185
+ .string()
186
+ .optional()
187
+ .describe("Optional TEXT layer name inside variant instances to receive variant key=value labels"),
188
+ propsInclude: z
189
+ .array(z.enum(["VARIANT", "BOOLEAN", "TEXT", "INSTANCE_SWAP"]))
190
+ .optional()
191
+ .describe("Subset of property kinds to include in the props table. Default: all."),
192
+ includeMeasure: z.boolean().optional().describe("Add measure annotations section (experimental)"),
193
+ annotations: z
194
+ .array(annotationItemZod)
195
+ .optional()
196
+ .describe("Annotations payload when includeMeasure=true"),
197
+ targetParentId: z
198
+ .string()
199
+ .optional()
200
+ .describe("Frame id to create the doc frame under (createIfMissing). Provide either this or targetRootId."),
201
+ targetRootId: z
202
+ .string()
203
+ .optional()
204
+ .describe("Existing frame id to fill instead of creating a new one"),
205
+ dryRun: z.boolean().optional().describe("Preview without mutating the canvas"),
206
+ }, async (args) => callPluginCommand(queue, "build_component_doc", { ...args }));
207
+ server.tool("build_doc_flow", "Documentation: render a multi-page flow / scenario inside a single auto-layout frame. Each page is either an existing scene node (cloned) or — when integrated — the result of compose_from_url. Use this when the user provides a list of Figma URLs / node ids that should appear as a story.", {
208
+ title: z.string().optional().describe("Flow title (used as container name)"),
209
+ pages: z
210
+ .array(z
211
+ .object({
212
+ nodeId: z.string().optional().describe("Existing scene node id to clone into the flow"),
213
+ compositionFileId: z
214
+ .string()
215
+ .optional()
216
+ .describe("Plugin token-file id pointing to a composition (future integration; currently reported as unsupported)"),
217
+ title: z.string().optional().describe("Caption above the page"),
218
+ description: z.string().optional().describe("Markdown caption"),
219
+ })
220
+ .refine((p) => Boolean(p.nodeId) || Boolean(p.compositionFileId), {
221
+ message: "page must have either nodeId or compositionFileId",
222
+ }))
223
+ .min(1)
224
+ .describe("Ordered list of pages to render"),
225
+ targetParentId: z
226
+ .string()
227
+ .optional()
228
+ .describe("Parent frame id where the flow container is created (createIfMissing). Provide either this or targetRootId."),
229
+ targetRootId: z
230
+ .string()
231
+ .optional()
232
+ .describe("Existing flow container id (FRAME) — content is appended into it"),
233
+ dryRun: z.boolean().optional().describe("Preview without mutating the canvas"),
234
+ }, async (args) => callPluginCommand(queue, "build_doc_flow", { ...args }));
127
235
  }
128
236
  //# sourceMappingURL=orchestration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"orchestration.js","sourceRoot":"","sources":["../../src/tools/orchestration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestration.js","sourceRoot":"","sources":["../../src/tools/orchestration.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEpD,KAAK,UAAU,cAAc,CAC3B,KAAmB,EACnB,WAAmB,EACnB,UAAmC,EAAE;IAErC,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,YAAY,WAAW,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,CAAC,CAAC,MAAW,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,MAAiB,EAAE,KAAmB;IAC/E,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,2SAA2S,EAC3S;QACE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;QAC/E,QAAQ,EAAE,CAAC;aACR,IAAI,CAAC,CAAC,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;aACpD,QAAQ,EAAE;aACV,QAAQ,CAAC,8CAA8C,CAAC;QAC3D,QAAQ,EAAE,CAAC;aACR,IAAI,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;aACrC,QAAQ,EAAE;aACV,QAAQ,CAAC,oCAAoC,CAAC;KAClD,EACD,KAAK,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;QACpC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,OAAO,GAA4B,EAAE,CAAC;QAC5C,IAAI,MAAM,CAAC,MAAM;YAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAClD,IAAI,QAAQ;YAAE,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC1C,IAAI,QAAQ;YAAE,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC1C,OAAO,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,sQAAsQ,EACtQ;QACE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;QACnG,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,2EAA2E,CAC5E;QACH,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,EAAE;aACV,QAAQ,CAAC,4DAA4D,CAAC;QACzE,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;QAC1G,QAAQ,EAAE,CAAC;aACR,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CACP,6FAA6F,CAC9F;KACJ,EACD,KAAK,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;QACvD,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CACb,8FAA8F,CAC/F,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,cAAc,CAKtC,KAAK,EAAE,yBAAyB,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAEhE,MAAM,QAAQ,GACZ,CAAC,YAAY,CAAC,QAAQ,IAAI,WAAW,CAAC;aACnC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;aACpB,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QACrC,MAAM,gBAAgB,GAAG,QAAQ,IAAI,GAAG,QAAQ,YAAY,CAAC;QAC7D,MAAM,cAAc,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC;QAEtE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAEvE,MAAM,YAAY,GAAG,MAAM,cAAc,CAKtC,KAAK,EAAE,mBAAmB,EAAE;YAC7B,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,cAAc;YACtB,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,SAAS,KAAK,IAAI;SAC9B,CAAC,CAAC;QAEH,IAAI,cAAc,GAAY,IAAI,CAAC;QACnC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,cAAc,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,sBAAsB,EAAE;gBACnE,MAAM,EAAE,YAAY,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,EAAE,CAAC;YACR,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,YAAY,CAAC,QAAQ;YAC/B,QAAQ,EAAE,YAAY,CAAC,QAAQ;YAC/B,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,QAAQ,EAAE,YAAY,CAAC,IAAI;YAC3B,MAAM,EAAE,cAAc;YACtB,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,KAAK,EAAE,QAAQ,CAAC,MAAM;YACtB,QAAQ,EAAE,QAAQ,KAAK,IAAI;YAC3B,cAAc;SACf,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,oBAAoB,EACpB,qNAAqN,EACrN;QACE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;QACxG,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;KAC7F,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;QAC1B,MAAM,OAAO,GAAG,MAAM,cAAc,CAGjC,KAAK,EAAE,aAAa,EAAE;YACvB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,QAAQ,EAAE,eAAe;SAC1B,CAAC,CAAC;QACH,MAAM,OAAO,GAAG;YACd,KAAK,EAAE,KAAK,IAAI,OAAO,CAAC,QAAQ;YAChC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;YACtC,MAAM,EAAE,OAAO;SAChB,CAAC;QACF,OAAO,iBAAiB,CAAC,KAAK,EAAE,6BAA6B,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9E,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,2BAA2B,EAC3B,+WAA+W,EAC/W;QACE,IAAI,EAAE,iBAAiB,CAAC,QAAQ,CAAC,4DAA4D,CAAC;QAC9F,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,+EAA+E,CAAC;QAC5F,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;KAC5G,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE;QACvC,MAAM,OAAO,GAA4B,EAAE,IAAI,EAAE,CAAC;QAClD,IAAI,YAAY;YAAE,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC;QACtD,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QAC3C,OAAO,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,gBAAgB,EAChB,6fAA6f,EAC7f;QACE,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,wCAAwC,CAAC;QACrE,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,mHAAmH,CACpH;QACH,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;KACvF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE;QACvC,MAAM,OAAO,GAA4B,EAAE,IAAI,EAAE,CAAC;QAClD,IAAI,YAAY;YAAE,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC;QACtD,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QAC3C,OAAO,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,uBAAuB,EACvB,sdAAsd,EACtd;QACE,cAAc,EAAE,CAAC;aACd,MAAM,EAAE;aACR,QAAQ,CAAC,iHAAiH,CAAC;QAC9H,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;QAChH,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;QACnG,YAAY,EAAE,CAAC;aACZ,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;aAC7C,QAAQ,EAAE;aACV,QAAQ,CAAC,uEAAuE,CAAC;QACpF,eAAe,EAAE,CAAC;aACf,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,2GAA2G,CAAC;QACxH,cAAc,EAAE,CAAC;aACd,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,iEAAiE,CAAC;QAC9E,cAAc,EAAE,CAAC;aACd,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,gEAAgE,CAAC;QAC7E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2DAA2D,CAAC;QACvG,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;QAC5G,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,mJAAmJ,CAAC;QAChK,cAAc,EAAE,CAAC;aACd,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,oGAAoG,CAAC;QACjH,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;KACjF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,uBAAuB,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAC/E,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB,mTAAmT,EACnT;QACE,eAAe,EAAE,CAAC;aACf,MAAM,EAAE;aACR,QAAQ,CAAC,wDAAwD,CAAC;QACrE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;QAC/E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gFAAgF,CAAC;QAC7H,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;QAC3H,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;QACpG,sBAAsB,EAAE,CAAC;aACtB,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,uFAAuF,CAAC;QACpG,YAAY,EAAE,CAAC;aACZ,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;aAC9D,QAAQ,EAAE;aACV,QAAQ,CAAC,uEAAuE,CAAC;QACpF,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;QACjG,WAAW,EAAE,CAAC;aACX,KAAK,CAAC,iBAAiB,CAAC;aACxB,QAAQ,EAAE;aACV,QAAQ,CAAC,8CAA8C,CAAC;QAC3D,cAAc,EAAE,CAAC;aACd,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,gGAAgG,CAAC;QAC7G,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,yDAAyD,CAAC;QACtE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;KAC/E,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,qBAAqB,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAC7E,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,gBAAgB,EAChB,iSAAiS,EACjS;QACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QAC5E,KAAK,EAAE,CAAC;aACL,KAAK,CACJ,CAAC;aACE,MAAM,CAAC;YACN,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;YACvF,iBAAiB,EAAE,CAAC;iBACjB,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wGAAwG,CAAC;YACrH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YAC/D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;SAChE,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,EAAE;YAChE,OAAO,EAAE,mDAAmD;SAC7D,CAAC,CACL;aACA,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CAAC,iCAAiC,CAAC;QAC9C,cAAc,EAAE,CAAC;aACd,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,6GAA6G,CAAC;QAC1H,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,kEAAkE,CAAC;QAC/E,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;KAC/E,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CACxE,CAAC;AACJ,CAAC"}
@@ -6,7 +6,10 @@
6
6
  * - sxl://tokens/files → listing of token files (JSON)
7
7
  * - sxl://tokens/files/{fileId} → full content of one token file
8
8
  * - sxl://compositions/index → composition index (list_compositions)
9
- * - sxl://agent/recipes/{id}machine-readable doc-agent recipes (static)
9
+ * - sxl://agent/recipes/indexintent router (always read first)
10
+ * - sxl://agent/recipes/template-discovery → how to find templateNodeId / swatchLayerName
11
+ * - sxl://agent/recipes/doc-spec-v2 → Doc Spec v2 sections vocabulary
12
+ * - sxl://agent/recipes/{id} → machine-readable doc-agent recipes (doc-tokens / doc-component / doc-composition / doc-flow / variable-palette)
10
13
  * - sxl://figma/selection → current Figma selection summary
11
14
  * - sxl://figma/status → plugin status (editor type, mode, ...)
12
15
  *
@@ -6,7 +6,10 @@
6
6
  * - sxl://tokens/files → listing of token files (JSON)
7
7
  * - sxl://tokens/files/{fileId} → full content of one token file
8
8
  * - sxl://compositions/index → composition index (list_compositions)
9
- * - sxl://agent/recipes/{id}machine-readable doc-agent recipes (static)
9
+ * - sxl://agent/recipes/indexintent router (always read first)
10
+ * - sxl://agent/recipes/template-discovery → how to find templateNodeId / swatchLayerName
11
+ * - sxl://agent/recipes/doc-spec-v2 → Doc Spec v2 sections vocabulary
12
+ * - sxl://agent/recipes/{id} → machine-readable doc-agent recipes (doc-tokens / doc-component / doc-composition / doc-flow / variable-palette)
10
13
  * - sxl://figma/selection → current Figma selection summary
11
14
  * - sxl://figma/status → plugin status (editor type, mode, ...)
12
15
  *
@@ -14,7 +17,7 @@
14
17
  * attach them as context without requiring agents to explicitly call tools.
15
18
  */
16
19
  import { ResourceTemplate, } from "../../node_modules/@modelcontextprotocol/sdk/dist/cjs/server/mcp.js";
17
- import { RECIPE_DOC_COMPONENT, RECIPE_DOC_COMPOSITION, RECIPE_DOC_FLOW, RECIPE_DOC_TOKENS, } from "../agent-recipes.js";
20
+ import { RECIPE_DOC_COMPONENT, RECIPE_DOC_COMPOSITION, RECIPE_DOC_FLOW, RECIPE_DOC_SPEC_V2, RECIPE_DOC_TOKENS, RECIPE_INDEX, RECIPE_TEMPLATE_DISCOVERY, RECIPE_VARIABLE_PALETTE, } from "../agent-recipes.js";
18
21
  async function execRaw(queue, commandType, payload = {}) {
19
22
  const r = await queue.execute(commandType, payload);
20
23
  if (r.status !== "completed") {
@@ -82,6 +85,21 @@ export function registerBridgeResources(server, queue) {
82
85
  const data = await execRaw(queue, "get_selection_summary");
83
86
  return asJson(uri.href, data);
84
87
  });
88
+ server.registerResource("sxl-agent-recipe-index", "sxl://agent/recipes/index", {
89
+ title: "SXL — agent recipe: documentation intent router",
90
+ description: "Always read this first. Maps user phrases (RU/EN) to specific Doc Builder recipes (doc-tokens / variable-palette / doc-component / doc-flow / doc-spec-v2 / template-discovery) and lists global anti-patterns (no use_figma scripts, no /tmp payloads).",
91
+ mimeType: "application/json",
92
+ }, async (uri) => asJson(uri.href, RECIPE_INDEX));
93
+ server.registerResource("sxl-agent-recipe-template-discovery", "sxl://agent/recipes/template-discovery", {
94
+ title: "SXL — agent recipe: locate template node",
95
+ description: "How to find templateNodeId and swatch / label layer names inside a content frame using get_node_tree / find_nodes. Used by variable-palette and palette section.",
96
+ mimeType: "application/json",
97
+ }, async (uri) => asJson(uri.href, RECIPE_TEMPLATE_DISCOVERY));
98
+ server.registerResource("sxl-agent-recipe-doc-spec-v2", "sxl://agent/recipes/doc-spec-v2", {
99
+ title: "SXL — agent recipe: Doc Spec v2 sections",
100
+ description: "Section vocabulary for apply_doc_spec (title, description, variants, props, tokenTable, palette, measure). Use this when composing custom mixed-section docs.",
101
+ mimeType: "application/json",
102
+ }, async (uri) => asJson(uri.href, RECIPE_DOC_SPEC_V2));
85
103
  server.registerResource("sxl-agent-recipe-doc-tokens", "sxl://agent/recipes/doc-tokens", {
86
104
  title: "SXL — agent recipe: token documentation",
87
105
  description: "Step-by-step recipe and preferred Bridge tools for Doc Spec v1 / build_token_documentation. Static JSON.",
@@ -110,6 +128,13 @@ export function registerBridgeResources(server, queue) {
110
128
  }, async (uri) => {
111
129
  return asJson(uri.href, RECIPE_DOC_FLOW);
112
130
  });
131
+ server.registerResource("sxl-agent-recipe-variable-palette", "sxl://agent/recipes/variable-palette", {
132
+ title: "SXL — agent recipe: palette from Figma variable collection",
133
+ description: "Fill doc cards with COLOR variables (e.g. Projects collection) via get_variables + duplicate_subtree + set_node_fill_variable. Forbids use_figma script hacks. Static JSON.",
134
+ mimeType: "application/json",
135
+ }, async (uri) => {
136
+ return asJson(uri.href, RECIPE_VARIABLE_PALETTE);
137
+ });
113
138
  server.registerResource("sxl-plugin-status", "sxl://figma/status", {
114
139
  title: "SXL — plugin status",
115
140
  description: "Plugin status snapshot: editorType, mode, isDevMode, writesAllowed, currentPage, selection, session state.",
@@ -1 +1 @@
1
- {"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/tools/resources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/tools/resources.ts"],"names":[],"mappings":"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"}