@sxl-studio/bridge 1.7.1 → 1.7.3

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.
Files changed (197) hide show
  1. package/README.md +342 -16
  2. package/dist/agent-recipes.d.ts +781 -11
  3. package/dist/agent-recipes.js +886 -13
  4. package/dist/agent-recipes.js.map +1 -1
  5. package/dist/agent-runbook.d.ts +50 -0
  6. package/dist/agent-runbook.js +243 -0
  7. package/dist/agent-runbook.js.map +1 -0
  8. package/dist/asset-upload.d.ts +63 -0
  9. package/dist/asset-upload.js +225 -0
  10. package/dist/asset-upload.js.map +1 -0
  11. package/dist/audit-store.d.ts +15 -0
  12. package/dist/audit-store.js +100 -0
  13. package/dist/audit-store.js.map +1 -0
  14. package/dist/audit.d.ts +4 -3
  15. package/dist/audit.js +37 -4
  16. package/dist/audit.js.map +1 -1
  17. package/dist/auth.d.ts +8 -1
  18. package/dist/auth.js +41 -1
  19. package/dist/auth.js.map +1 -1
  20. package/dist/bridge-agent-workflow-validation-cli.d.ts +2 -0
  21. package/dist/bridge-agent-workflow-validation-cli.js +68 -0
  22. package/dist/bridge-agent-workflow-validation-cli.js.map +1 -0
  23. package/dist/bridge-agent-workflow-validation.d.ts +42 -0
  24. package/dist/bridge-agent-workflow-validation.js +170 -0
  25. package/dist/bridge-agent-workflow-validation.js.map +1 -0
  26. package/dist/bridge-contract-audit.d.ts +45 -0
  27. package/dist/bridge-contract-audit.js +345 -0
  28. package/dist/bridge-contract-audit.js.map +1 -0
  29. package/dist/bridge-health-cli.d.ts +2 -0
  30. package/dist/bridge-health-cli.js +115 -0
  31. package/dist/bridge-health-cli.js.map +1 -0
  32. package/dist/bridge-health.d.ts +33 -0
  33. package/dist/bridge-health.js +594 -0
  34. package/dist/bridge-health.js.map +1 -0
  35. package/dist/bridge-live-validation-cli.d.ts +2 -0
  36. package/dist/bridge-live-validation-cli.js +114 -0
  37. package/dist/bridge-live-validation-cli.js.map +1 -0
  38. package/dist/bridge-live-validation.d.ts +39 -0
  39. package/dist/bridge-live-validation.js +1141 -0
  40. package/dist/bridge-live-validation.js.map +1 -0
  41. package/dist/bridge-performance-profile.d.ts +81 -0
  42. package/dist/bridge-performance-profile.js +227 -0
  43. package/dist/bridge-performance-profile.js.map +1 -0
  44. package/dist/bridge-readiness-cli.d.ts +30 -0
  45. package/dist/bridge-readiness-cli.js +242 -0
  46. package/dist/bridge-readiness-cli.js.map +1 -0
  47. package/dist/bridge-runtime-summary.d.ts +50 -0
  48. package/dist/bridge-runtime-summary.js +112 -0
  49. package/dist/bridge-runtime-summary.js.map +1 -0
  50. package/dist/bridge-workflow-smoke-cli.d.ts +2 -0
  51. package/dist/bridge-workflow-smoke-cli.js +126 -0
  52. package/dist/bridge-workflow-smoke-cli.js.map +1 -0
  53. package/dist/bridge-workflow-smoke.d.ts +39 -0
  54. package/dist/bridge-workflow-smoke.js +431 -0
  55. package/dist/bridge-workflow-smoke.js.map +1 -0
  56. package/dist/codeconnect-suggestions.d.ts +74 -0
  57. package/dist/codeconnect-suggestions.js +398 -0
  58. package/dist/codeconnect-suggestions.js.map +1 -0
  59. package/dist/codeconnect-template.d.ts +98 -0
  60. package/dist/codeconnect-template.js +280 -0
  61. package/dist/codeconnect-template.js.map +1 -0
  62. package/dist/command-queue.d.ts +24 -2
  63. package/dist/command-queue.js +295 -25
  64. package/dist/command-queue.js.map +1 -1
  65. package/dist/command-safety.d.ts +13 -0
  66. package/dist/command-safety.js +59 -0
  67. package/dist/command-safety.js.map +1 -0
  68. package/dist/enabled-library-search.d.ts +49 -0
  69. package/dist/enabled-library-search.js +151 -0
  70. package/dist/enabled-library-search.js.map +1 -0
  71. package/dist/figma-mcp-parity.d.ts +49 -0
  72. package/dist/figma-mcp-parity.js +368 -0
  73. package/dist/figma-mcp-parity.js.map +1 -0
  74. package/dist/figma-mcp-skills-parity.d.ts +61 -0
  75. package/dist/figma-mcp-skills-parity.js +434 -0
  76. package/dist/figma-mcp-skills-parity.js.map +1 -0
  77. package/dist/figma-rest-diagnostics.d.ts +50 -0
  78. package/dist/figma-rest-diagnostics.js +314 -0
  79. package/dist/figma-rest-diagnostics.js.map +1 -0
  80. package/dist/figma-rest.d.ts +27 -0
  81. package/dist/figma-rest.js +116 -0
  82. package/dist/figma-rest.js.map +1 -0
  83. package/dist/http-api.d.ts +14 -2
  84. package/dist/http-api.js +323 -17
  85. package/dist/http-api.js.map +1 -1
  86. package/dist/index.js +25 -1
  87. package/dist/index.js.map +1 -1
  88. package/dist/mcp-factory.d.ts +6 -1
  89. package/dist/mcp-factory.js +23 -4
  90. package/dist/mcp-factory.js.map +1 -1
  91. package/dist/mcp-runtime-probe.d.ts +22 -0
  92. package/dist/mcp-runtime-probe.js +777 -0
  93. package/dist/mcp-runtime-probe.js.map +1 -0
  94. package/dist/mcp-server.d.ts +2 -1
  95. package/dist/mcp-server.js +2 -2
  96. package/dist/mcp-server.js.map +1 -1
  97. package/dist/sxl-mcp-instructions.js +97 -25
  98. package/dist/sxl-mcp-instructions.js.map +1 -1
  99. package/dist/tools/audit.d.ts +22 -6
  100. package/dist/tools/audit.js +49 -7
  101. package/dist/tools/audit.js.map +1 -1
  102. package/dist/tools/capability-matrix.d.ts +22 -0
  103. package/dist/tools/capability-matrix.js +38 -0
  104. package/dist/tools/capability-matrix.js.map +1 -0
  105. package/dist/tools/catalogue-bootstrap.d.ts +1 -0
  106. package/dist/tools/catalogue-bootstrap.js +665 -30
  107. package/dist/tools/catalogue-bootstrap.js.map +1 -1
  108. package/dist/tools/code-connect-context.d.ts +3 -0
  109. package/dist/tools/code-connect-context.js +319 -0
  110. package/dist/tools/code-connect-context.js.map +1 -0
  111. package/dist/tools/code-connect-template.d.ts +3 -0
  112. package/dist/tools/code-connect-template.js +111 -0
  113. package/dist/tools/code-connect-template.js.map +1 -0
  114. package/dist/tools/composition.js +13 -28
  115. package/dist/tools/composition.js.map +1 -1
  116. package/dist/tools/compositions-orchestration.d.ts +14 -14
  117. package/dist/tools/compositions-orchestration.js +2 -2
  118. package/dist/tools/compositions-orchestration.js.map +1 -1
  119. package/dist/tools/data.js +839 -27
  120. package/dist/tools/data.js.map +1 -1
  121. package/dist/tools/design-context.d.ts +3 -0
  122. package/dist/tools/design-context.js +197 -0
  123. package/dist/tools/design-context.js.map +1 -0
  124. package/dist/tools/destructive-confirmation.d.ts +10 -0
  125. package/dist/tools/destructive-confirmation.js +22 -0
  126. package/dist/tools/destructive-confirmation.js.map +1 -0
  127. package/dist/tools/diagnostics.js +76 -51
  128. package/dist/tools/diagnostics.js.map +1 -1
  129. package/dist/tools/figma-mcp-design.d.ts +3 -0
  130. package/dist/tools/figma-mcp-design.js +377 -0
  131. package/dist/tools/figma-mcp-design.js.map +1 -0
  132. package/dist/tools/figma-nodes.js +57 -43
  133. package/dist/tools/figma-nodes.js.map +1 -1
  134. package/dist/tools/figma-rc-extended.js +23 -6
  135. package/dist/tools/figma-rc-extended.js.map +1 -1
  136. package/dist/tools/figma-rest.d.ts +39 -0
  137. package/dist/tools/figma-rest.js +279 -0
  138. package/dist/tools/figma-rest.js.map +1 -0
  139. package/dist/tools/git.js +11 -7
  140. package/dist/tools/git.js.map +1 -1
  141. package/dist/tools/large-data.d.ts +14 -0
  142. package/dist/tools/large-data.js +189 -0
  143. package/dist/tools/large-data.js.map +1 -0
  144. package/dist/tools/meta.d.ts +6 -1
  145. package/dist/tools/meta.js +89 -11
  146. package/dist/tools/meta.js.map +1 -1
  147. package/dist/tools/metadata.d.ts +3 -0
  148. package/dist/tools/metadata.js +140 -0
  149. package/dist/tools/metadata.js.map +1 -0
  150. package/dist/tools/mockup.d.ts +15 -156
  151. package/dist/tools/mockup.js +54 -121
  152. package/dist/tools/mockup.js.map +1 -1
  153. package/dist/tools/orchestration.js +73 -45
  154. package/dist/tools/orchestration.js.map +1 -1
  155. package/dist/tools/prompts.d.ts +3 -0
  156. package/dist/tools/prompts.js +219 -0
  157. package/dist/tools/prompts.js.map +1 -0
  158. package/dist/tools/registry.d.ts +19 -1
  159. package/dist/tools/registry.js +4 -4
  160. package/dist/tools/registry.js.map +1 -1
  161. package/dist/tools/resources.d.ts +19 -2
  162. package/dist/tools/resources.js +149 -5
  163. package/dist/tools/resources.js.map +1 -1
  164. package/dist/tools/schema-contracts.d.ts +4763 -0
  165. package/dist/tools/schema-contracts.js +814 -0
  166. package/dist/tools/schema-contracts.js.map +1 -0
  167. package/dist/tools/screenshot.d.ts +3 -0
  168. package/dist/tools/screenshot.js +144 -0
  169. package/dist/tools/screenshot.js.map +1 -0
  170. package/dist/tools/shared.d.ts +11 -1
  171. package/dist/tools/shared.js +55 -2
  172. package/dist/tools/shared.js.map +1 -1
  173. package/dist/tools/styles-orchestration.d.ts +2 -2
  174. package/dist/tools/styles-orchestration.js +13 -5
  175. package/dist/tools/styles-orchestration.js.map +1 -1
  176. package/dist/tools/styles.js +22 -8
  177. package/dist/tools/styles.js.map +1 -1
  178. package/dist/tools/tokens.d.ts +31 -692
  179. package/dist/tools/tokens.js +175 -135
  180. package/dist/tools/tokens.js.map +1 -1
  181. package/dist/tools/variable-defs.d.ts +3 -0
  182. package/dist/tools/variable-defs.js +338 -0
  183. package/dist/tools/variable-defs.js.map +1 -0
  184. package/dist/tools/variables-orchestration.js +13 -5
  185. package/dist/tools/variables-orchestration.js.map +1 -1
  186. package/dist/tools/variables.js +18 -15
  187. package/dist/tools/variables.js.map +1 -1
  188. package/dist/types.d.ts +53 -0
  189. package/dist/ultimate-readiness-audit.d.ts +37 -0
  190. package/dist/ultimate-readiness-audit.js +431 -0
  191. package/dist/ultimate-readiness-audit.js.map +1 -0
  192. package/dist/workflow-planner.d.ts +57 -0
  193. package/dist/workflow-planner.js +464 -0
  194. package/dist/workflow-planner.js.map +1 -0
  195. package/dist/ws-server.js +16 -3
  196. package/dist/ws-server.js.map +1 -1
  197. package/package.json +19 -3
@@ -9,7 +9,7 @@
9
9
  import { z } from "zod";
10
10
  import { annotationItemZod, docSpecV2Zod, tokenDocSpecV1Zod, } from "./tokens.js";
11
11
  import { parseFigmaUrl } from "./figma-url.js";
12
- import { callPluginCommand, ok } from "./shared.js";
12
+ import { callPluginCommand, callPluginWriteCommand, err, isPluginFailureResult, ok, pluginFailureMessage, } from "./shared.js";
13
13
  // ─── Markdown scenario parser ─────────────────────────────────────────────────
14
14
  /**
15
15
  * Parse a markdown scenario spec into a title + ordered pages list.
@@ -70,6 +70,9 @@ async function executeOrThrow(queue, commandType, payload = {}) {
70
70
  if (r.status !== "completed") {
71
71
  throw new Error(r.error ?? `Command "${commandType}" failed (${r.status})`);
72
72
  }
73
+ if (isPluginFailureResult(r.result)) {
74
+ throw new Error(pluginFailureMessage(commandType, r.result));
75
+ }
73
76
  return r.result;
74
77
  }
75
78
  function parseVariantProperties(name) {
@@ -220,43 +223,52 @@ export function registerOrchestrationTools(server, queue) {
220
223
  .optional()
221
224
  .describe("If true, call generate_composition after saving (produces the Figma component/variant set)."),
222
225
  }, async ({ url, fileName, folder, overwrite, generate }) => {
223
- const parsed = parseFigmaUrl(url);
224
- if (!parsed.nodeId) {
225
- throw new Error("compose_from_url: the URL must include ?node-id=... so the plugin knows which node to export");
226
- }
227
- const exportResult = await executeOrThrow(queue, "export_composition_json", { nodeId: parsed.nodeId });
228
- const safeName = (exportResult.nodeName || "component")
229
- .replace(/\s+/g, "-")
230
- .replace(/[^a-zA-Z0-9_.-]/g, "");
231
- const resolvedFileName = fileName ?? `${safeName}.comp.json`;
232
- const resolvedFolder = folder === undefined ? "compositions" : folder;
233
- const jsonBody = JSON.stringify(exportResult.compositionJson, null, 2);
234
- const createResult = await executeOrThrow(queue, "create_token_file", {
235
- name: resolvedFileName,
236
- folder: resolvedFolder,
237
- content: jsonBody,
238
- overwrite: overwrite === true,
239
- });
240
- let generateReport = null;
241
- if (generate === true) {
242
- generateReport = await executeOrThrow(queue, "generate_composition", {
226
+ try {
227
+ const parsed = parseFigmaUrl(url);
228
+ if (!parsed.nodeId) {
229
+ return err("compose_from_url: the URL must include ?node-id=... so the plugin knows which node to export", { code: "COMPOSE_FROM_URL_NODE_ID_REQUIRED", retryable: false });
230
+ }
231
+ const exportResult = await executeOrThrow(queue, "export_composition_json", { nodeId: parsed.nodeId });
232
+ const safeName = (exportResult.nodeName || "component")
233
+ .replace(/\s+/g, "-")
234
+ .replace(/[^a-zA-Z0-9_.-]/g, "");
235
+ const resolvedFileName = fileName ?? `${safeName}.comp.json`;
236
+ const resolvedFolder = folder === undefined ? "compositions" : folder;
237
+ const jsonBody = JSON.stringify(exportResult.compositionJson, null, 2);
238
+ const createResult = await executeOrThrow(queue, "create_token_file", {
239
+ name: resolvedFileName,
240
+ folder: resolvedFolder,
241
+ content: jsonBody,
242
+ overwrite: overwrite === true,
243
+ });
244
+ let generateReport = null;
245
+ if (generate === true) {
246
+ generateReport = await executeOrThrow(queue, "generate_composition", {
247
+ fileId: createResult.fileId,
248
+ });
249
+ }
250
+ return ok({
251
+ ok: true,
252
+ fileKey: parsed.fileKey,
253
+ nodeId: parsed.nodeId,
254
+ nodeName: exportResult.nodeName,
255
+ nodeType: exportResult.nodeType,
243
256
  fileId: createResult.fileId,
257
+ fileName: createResult.name,
258
+ folder: resolvedFolder,
259
+ created: createResult.created,
260
+ bytes: jsonBody.length,
261
+ generate: generate === true,
262
+ generateReport,
263
+ });
264
+ }
265
+ catch (error) {
266
+ const message = error instanceof Error ? error.message : String(error);
267
+ return err(message, {
268
+ code: "COMPOSE_FROM_URL_FAILED",
269
+ retryable: /No plugin connected|Session disconnected|timeout/i.test(message),
244
270
  });
245
271
  }
246
- return ok({
247
- ok: true,
248
- fileKey: parsed.fileKey,
249
- nodeId: parsed.nodeId,
250
- nodeName: exportResult.nodeName,
251
- nodeType: exportResult.nodeType,
252
- fileId: createResult.fileId,
253
- fileName: createResult.name,
254
- folder: resolvedFolder,
255
- created: createResult.created,
256
- bytes: jsonBody.length,
257
- generate: generate === true,
258
- generateReport,
259
- });
260
272
  });
261
273
  server.tool("document_component", "Generate an SXL documentation payload for the currently selected component (or a node passed by id) and apply it to the Figma page using apply_documentation_payload. Returns the resulting documentation frame id.", {
262
274
  nodeId: z.string().optional().describe("Component/ComponentSet node id. Omit to use current selection."),
@@ -271,7 +283,9 @@ export function registerOrchestrationTools(server, queue) {
271
283
  nodeIds: nodeId ? [nodeId] : undefined,
272
284
  source: codegen,
273
285
  };
274
- return callPluginCommand(queue, "apply_documentation_payload", { payload });
286
+ return callPluginWriteCommand(queue, "apply_documentation_payload", { payload }, {
287
+ okFalseErrorCode: "SXL_DOC_WRITE_FAILED",
288
+ });
275
289
  });
276
290
  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.", {
277
291
  spec: tokenDocSpecV1Zod.describe("Doc Spec v1 (version 1, groups with layerName + tokenPath)"),
@@ -286,7 +300,9 @@ export function registerOrchestrationTools(server, queue) {
286
300
  payload.targetRootId = targetRootId;
287
301
  if (dryRun === true)
288
302
  payload.dryRun = true;
289
- return callPluginCommand(queue, "apply_token_doc_spec", payload);
303
+ return callPluginWriteCommand(queue, "apply_token_doc_spec", payload, {
304
+ okFalseErrorCode: "SXL_DOC_WRITE_FAILED",
305
+ });
290
306
  });
291
307
  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).", {
292
308
  spec: docSpecV2Zod.describe("Doc Spec v2 (version 2, sections list)"),
@@ -301,7 +317,9 @@ export function registerOrchestrationTools(server, queue) {
301
317
  payload.targetRootId = targetRootId;
302
318
  if (dryRun === true)
303
319
  payload.dryRun = true;
304
- return callPluginCommand(queue, "apply_doc_spec", payload);
320
+ return callPluginWriteCommand(queue, "apply_doc_spec", payload, {
321
+ okFalseErrorCode: "SXL_DOC_WRITE_FAILED",
322
+ });
305
323
  });
306
324
  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).", {
307
325
  templateNodeId: z
@@ -336,7 +354,9 @@ export function registerOrchestrationTools(server, queue) {
336
354
  .optional()
337
355
  .describe("Parent frame for any auxiliary container (rarely needed: cards are appended next to the template)."),
338
356
  dryRun: z.boolean().optional().describe("Preview without writing to the canvas"),
339
- }, async (args) => callPluginCommand(queue, "bind_variable_palette", { ...args }));
357
+ }, async (args) => callPluginWriteCommand(queue, "bind_variable_palette", { ...args }, {
358
+ okFalseErrorCode: "SXL_DOC_WRITE_FAILED",
359
+ }));
340
360
  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.", {
341
361
  componentNodeId: z
342
362
  .string()
@@ -367,8 +387,10 @@ export function registerOrchestrationTools(server, queue) {
367
387
  .optional()
368
388
  .describe("Existing frame id to fill instead of creating a new one"),
369
389
  dryRun: z.boolean().optional().describe("Preview without mutating the canvas"),
370
- }, async (args) => callPluginCommand(queue, "build_component_doc", { ...args }));
371
- 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.", {
390
+ }, async (args) => callPluginWriteCommand(queue, "build_component_doc", { ...args }, {
391
+ okFalseErrorCode: "SXL_DOC_WRITE_FAILED",
392
+ }));
393
+ 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 a workspace composition file rendered through the composition pipeline. Use this when the user provides a list of Figma URLs, node ids, or composition file ids that should appear as a story.", {
372
394
  title: z.string().optional().describe("Flow title (used as container name)"),
373
395
  pages: z
374
396
  .array(z
@@ -377,7 +399,11 @@ export function registerOrchestrationTools(server, queue) {
377
399
  compositionFileId: z
378
400
  .string()
379
401
  .optional()
380
- .describe("Plugin token-file id pointing to a composition (future integration; currently reported as unsupported)"),
402
+ .describe("Plugin token-file id pointing to a composition. The plugin generates/applies the composition and renders an instance/clone in the flow."),
403
+ compositionName: z
404
+ .string()
405
+ .optional()
406
+ .describe("Optional composition name override when the file id cannot be previewed by name alone"),
381
407
  title: z.string().optional().describe("Caption above the page"),
382
408
  description: z.string().optional().describe("Markdown caption"),
383
409
  })
@@ -395,7 +421,9 @@ export function registerOrchestrationTools(server, queue) {
395
421
  .optional()
396
422
  .describe("Existing flow container id (FRAME) — content is appended into it"),
397
423
  dryRun: z.boolean().optional().describe("Preview without mutating the canvas"),
398
- }, async (args) => callPluginCommand(queue, "build_doc_flow", { ...args }));
424
+ }, async (args) => callPluginWriteCommand(queue, "build_doc_flow", { ...args }, {
425
+ okFalseErrorCode: "SXL_DOC_WRITE_FAILED",
426
+ }));
399
427
  server.tool("build_scenario_from_md", "Parse a markdown scenario spec and render it as a multi-page flow in Figma. H1 heading → flow container title. H2 sections → pages. Figma URL in each section → nodeId (cloned into the flow). Paragraph text → page caption/description. Always run with dryRun: true first to preview the parsed pages before writing to canvas.", {
400
428
  markdown: z
401
429
  .string()
@@ -425,12 +453,12 @@ export function registerOrchestrationTools(server, queue) {
425
453
  if (dryRun === true) {
426
454
  return ok({ dryRun: true, title, pageCount: pages.length, pages });
427
455
  }
428
- return callPluginCommand(queue, "build_doc_flow", {
456
+ return callPluginWriteCommand(queue, "build_doc_flow", {
429
457
  ...(title ? { title } : {}),
430
458
  pages,
431
459
  ...(targetParentId ? { targetParentId } : {}),
432
460
  ...(targetRootId ? { targetRootId } : {}),
433
- });
461
+ }, { okFalseErrorCode: "SXL_DOC_WRITE_FAILED" });
434
462
  });
435
463
  server.tool("index_icons_for_export", "Read-only icon index for export pipelines. Traverses selected pages and returns only COMPONENT and COMPONENT_SET variants with variantProperties, page, and section metadata.", {
436
464
  pageId: z.string().optional(),
@@ -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":"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"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from "../../node_modules/@modelcontextprotocol/sdk/dist/cjs/server/mcp.js";
2
+ export declare const SXL_PROMPT_NAMES: readonly ["sxl-operator", "sxl-router", "sxl-use", "sxl-implement-design", "sxl-generate-design", "sxl-generate-library", "sxl-code-connect", "sxl-audit", "sxl-doc-builder", "figma-mcp-companion"];
3
+ export declare function registerBridgePrompts(server: McpServer): void;
@@ -0,0 +1,219 @@
1
+ import { z } from "zod";
2
+ import { ALL_AGENT_RECIPES, RECIPE_FIGMA_MCP_COMPANION, RECIPE_INDEX, RECIPE_SXL_AUDIT, RECIPE_SXL_CODE_CONNECT, RECIPE_SXL_DOC_BUILDER, RECIPE_SXL_GENERATE_DESIGN, RECIPE_SXL_GENERATE_LIBRARY, RECIPE_SXL_IMPLEMENT_DESIGN, RECIPE_SXL_USE, } from "../agent-recipes.js";
3
+ import { SXL_OPERATOR_RUNBOOK } from "../agent-runbook.js";
4
+ const promptArgs = {
5
+ request: z.string().optional().describe("Optional user request to route through this SXL skill prompt."),
6
+ focus: z.string().optional().describe("Optional extra focus, such as node id, component name, or workflow target."),
7
+ };
8
+ export const SXL_PROMPT_NAMES = [
9
+ "sxl-operator",
10
+ "sxl-router",
11
+ "sxl-use",
12
+ "sxl-implement-design",
13
+ "sxl-generate-design",
14
+ "sxl-generate-library",
15
+ "sxl-code-connect",
16
+ "sxl-audit",
17
+ "sxl-doc-builder",
18
+ "figma-mcp-companion",
19
+ ];
20
+ const SXL_PROMPTS = [
21
+ {
22
+ name: "sxl-use",
23
+ title: "SXL Use",
24
+ description: "Use SXL Bridge for Figma reads/writes, variables, styles, components, REST companion reads, and status checks.",
25
+ recipe: RECIPE_SXL_USE,
26
+ resourceUri: "sxl://agent/recipes/sxl-use",
27
+ },
28
+ {
29
+ name: "sxl-implement-design",
30
+ title: "SXL Implement Design",
31
+ description: "Gather read-only Figma/SXL context for implementing a selected design in repository code.",
32
+ recipe: RECIPE_SXL_IMPLEMENT_DESIGN,
33
+ resourceUri: "sxl://agent/recipes/sxl-implement-design",
34
+ },
35
+ {
36
+ name: "sxl-generate-design",
37
+ title: "SXL Generate Design",
38
+ description: "Build or update editable Figma Design screens from SXL Design DSL and design-system components.",
39
+ recipe: RECIPE_SXL_GENERATE_DESIGN,
40
+ resourceUri: "sxl://agent/recipes/sxl-generate-design",
41
+ },
42
+ {
43
+ name: "sxl-generate-library",
44
+ title: "SXL Generate Library",
45
+ description: "Generate or update SXL variables, styles, compositions, library docs, and design-system foundations.",
46
+ recipe: RECIPE_SXL_GENERATE_LIBRARY,
47
+ resourceUri: "sxl://agent/recipes/sxl-generate-library",
48
+ },
49
+ {
50
+ name: "sxl-code-connect",
51
+ title: "SXL Code Connect",
52
+ description: "Manage Code Connect context, dry-run templates, bindings, registry, Storybook, docs URLs, and files.",
53
+ recipe: RECIPE_SXL_CODE_CONNECT,
54
+ resourceUri: "sxl://agent/recipes/sxl-code-connect",
55
+ },
56
+ {
57
+ name: "sxl-audit",
58
+ title: "SXL Audit",
59
+ description: "Audit variables, styles, component usage, component props, drift, unused entries, and dry-run fixes.",
60
+ recipe: RECIPE_SXL_AUDIT,
61
+ resourceUri: "sxl://agent/recipes/sxl-audit",
62
+ },
63
+ {
64
+ name: "sxl-doc-builder",
65
+ title: "SXL Doc Builder",
66
+ description: "Render token, variable, component, flow, and markdown-scenario documentation in Figma.",
67
+ recipe: RECIPE_SXL_DOC_BUILDER,
68
+ resourceUri: "sxl://agent/recipes/sxl-doc-builder",
69
+ },
70
+ {
71
+ name: "figma-mcp-companion",
72
+ title: "Official Figma MCP Companion",
73
+ description: "Route new-file creation, FigJam/Slides, diagrams, and other non-Design remote-only scopes to official Figma MCP.",
74
+ recipe: RECIPE_FIGMA_MCP_COMPANION,
75
+ resourceUri: "sxl://agent/recipes/figma-mcp-companion",
76
+ },
77
+ ];
78
+ function listText(values, fallback = "None.") {
79
+ if (!values || values.length === 0)
80
+ return fallback;
81
+ return values.map((value) => `- ${value}`).join("\n");
82
+ }
83
+ function promptMessage(definition, args) {
84
+ const { recipe } = definition;
85
+ const relatedResources = [
86
+ definition.resourceUri,
87
+ "sxl://agent/recipes/index",
88
+ ...(recipe.schemaResources ?? []),
89
+ "sxl://agent/runtime-summary",
90
+ "sxl://agent/performance-profile",
91
+ ];
92
+ return [
93
+ `You are using the ${definition.title} prompt for SXL Studio Bridge.`,
94
+ "",
95
+ args.request ? `User request: ${args.request}` : "User request: <not provided>",
96
+ args.focus ? `Focus: ${args.focus}` : "Focus: <not provided>",
97
+ "",
98
+ `Recipe: ${recipe.id} — ${recipe.title}`,
99
+ recipe.context ? `Context: ${recipe.context}` : null,
100
+ "",
101
+ "Read these MCP resources before executing broad work:",
102
+ listText(relatedResources),
103
+ "",
104
+ "Preferred Bridge tools, in useful order:",
105
+ listText(recipe.preferredTools),
106
+ "",
107
+ "Forbidden anti-patterns:",
108
+ listText(recipe.forbidden),
109
+ "",
110
+ "Execution steps:",
111
+ listText(recipe.steps),
112
+ "",
113
+ recipe.doneCriteria ? `Done criteria: ${recipe.doneCriteria}` : null,
114
+ "",
115
+ "Operational rules:",
116
+ "- Start with get_bridge_runtime_summary or /api/runtime-summary for live work.",
117
+ "- Use route_intent and plan_workflow when the user request is broad or ambiguous.",
118
+ "- Use dryRun first for write, destructive, bulk, screen-build, documentation, and Code Connect template workflows.",
119
+ "- Prefer thick SXL tools over arbitrary use_figma JavaScript when Bridge has a matching tool.",
120
+ "- Keep official Figma MCP as a companion only for remote-only scope called out by get_figma_mcp_parity.",
121
+ ]
122
+ .filter((line) => line !== null)
123
+ .join("\n");
124
+ }
125
+ function routerPrompt(args) {
126
+ const promptNames = SXL_PROMPTS.map((prompt) => prompt.name).join(", ");
127
+ const recipeIds = ALL_AGENT_RECIPES.map((recipe) => recipe.id).join(", ");
128
+ return [
129
+ "You are routing a user request through SXL Studio Bridge.",
130
+ "",
131
+ args.request ? `User request: ${args.request}` : "User request: <not provided>",
132
+ args.focus ? `Focus: ${args.focus}` : "Focus: <not provided>",
133
+ "",
134
+ "First call get_operator_runbook or read sxl://agent/operator-runbook when starting a new workflow.",
135
+ "Then read sxl://agent/recipes/index and call route_intent for broad or ambiguous requests.",
136
+ `Available SXL skill prompts: ${promptNames}.`,
137
+ `Known recipe ids: ${recipeIds}.`,
138
+ "",
139
+ "Router intent examples:",
140
+ listText(RECIPE_INDEX.userIntents.flatMap((intent) => intent.userPhrases.slice(0, 2))),
141
+ "",
142
+ "Always prefer Bridge-local discovery before plugin writes:",
143
+ "- get_bridge_runtime_summary",
144
+ "- get_capability_matrix",
145
+ "- get_figma_mcp_parity",
146
+ "- plan_workflow",
147
+ "- preview_workflow",
148
+ "",
149
+ "Use dryRun/preview first for any write path and require explicit confirmation for destructive operations.",
150
+ ].join("\n");
151
+ }
152
+ function operatorPrompt(args) {
153
+ return [
154
+ "You are operating SXL Studio Bridge as the primary Figma Design + SXL Studio automation layer.",
155
+ "",
156
+ args.request ? `User request: ${args.request}` : "User request: <not provided>",
157
+ args.focus ? `Focus: ${args.focus}` : "Focus: <not provided>",
158
+ "",
159
+ "Start-here tools/resources:",
160
+ "- get_operator_runbook",
161
+ "- sxl://agent/operator-runbook",
162
+ "- sxl://agent/runtime-summary",
163
+ "- sxl://agent/recipes/index",
164
+ "- sxl://agent/figma-mcp-parity",
165
+ "- sxl://agent/figma-mcp-skills-parity",
166
+ "",
167
+ "Required first moves:",
168
+ listText(SXL_OPERATOR_RUNBOOK.startHere),
169
+ "",
170
+ "Global safety rules:",
171
+ listText(SXL_OPERATOR_RUNBOOK.globalSafetyRules),
172
+ "",
173
+ "Common workflow routes:",
174
+ ...SXL_OPERATOR_RUNBOOK.workflows.flatMap((workflow) => [
175
+ `- ${workflow.id}: ${workflow.title}`,
176
+ ` recipe=${workflow.primaryRecipe}; prompt=${workflow.prompt}; dryRunFirst=${workflow.dryRunFirst ? "yes" : "no"}`,
177
+ ` tools=${workflow.preferredTools.join(" -> ")}`,
178
+ ]),
179
+ "",
180
+ "Release and live-readiness gates:",
181
+ listText(SXL_OPERATOR_RUNBOOK.releaseGates),
182
+ "",
183
+ "Use official Figma MCP only for companion scope listed in the runbook/parity resources.",
184
+ ].join("\n");
185
+ }
186
+ export function registerBridgePrompts(server) {
187
+ server.registerPrompt("sxl-operator", {
188
+ title: "SXL Operator",
189
+ description: "Start-here operational prompt for choosing safe SXL Bridge workflows, resources, dry-run gates, and Figma MCP companion handoff.",
190
+ argsSchema: promptArgs,
191
+ }, async (args) => ({
192
+ description: "SXL Bridge operator runbook prompt.",
193
+ messages: [{ role: "user", content: { type: "text", text: operatorPrompt(args) } }],
194
+ }));
195
+ server.registerPrompt("sxl-router", {
196
+ title: "SXL Router",
197
+ description: "Route natural-language Figma/SXL requests to SXL recipes, resources, dry-run gates, and preferred tools.",
198
+ argsSchema: promptArgs,
199
+ }, async (args) => ({
200
+ description: "SXL Bridge routing prompt.",
201
+ messages: [{ role: "user", content: { type: "text", text: routerPrompt(args) } }],
202
+ }));
203
+ for (const definition of SXL_PROMPTS) {
204
+ server.registerPrompt(definition.name, {
205
+ title: definition.title,
206
+ description: definition.description,
207
+ argsSchema: promptArgs,
208
+ }, async (args) => ({
209
+ description: definition.description,
210
+ messages: [
211
+ {
212
+ role: "user",
213
+ content: { type: "text", text: promptMessage(definition, args) },
214
+ },
215
+ ],
216
+ }));
217
+ }
218
+ }
219
+ //# sourceMappingURL=prompts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/tools/prompts.ts"],"names":[],"mappings":"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"}
@@ -9,13 +9,31 @@
9
9
  * Each registered category calls `catalogueTool` as it registers its tool, so
10
10
  * there's one source of truth and no drift between docs/registration.
11
11
  */
12
- export type BridgeToolCategory = "diagnostics" | "tokens" | "compositions" | "compositions-orchestration" | "variables" | "variables-orchestration" | "styles" | "styles-orchestration" | "canvas" | "data" | "git" | "orchestration" | "audit" | "mockup";
12
+ export type BridgeToolCategory = "diagnostics" | "tokens" | "compositions" | "compositions-orchestration" | "variables" | "variables-orchestration" | "styles" | "styles-orchestration" | "canvas" | "figma-rest" | "data" | "git" | "orchestration" | "audit" | "mockup";
13
+ export type BridgeToolExecution = "plugin" | "bridge-orchestration" | "bridge-local";
13
14
  export type BridgeToolEntry = {
14
15
  name: string;
15
16
  category: BridgeToolCategory;
16
17
  summary: string;
17
18
  requiresDesignMode: boolean;
18
19
  requiresComposition: boolean;
20
+ /**
21
+ * Primary command key for routing and timeout lookup. For direct plugin
22
+ * tools this is the Remote Connect command type sent to the plugin.
23
+ */
24
+ commandType?: string;
25
+ /** Where this MCP tool is executed. */
26
+ execution?: BridgeToolExecution;
27
+ /** Remote Connect command types this tool may send to the plugin. */
28
+ pluginCommandTypes?: string[];
29
+ /** Effective Bridge command timeout in milliseconds. */
30
+ timeoutMs?: number;
31
+ aliases?: string[];
32
+ naturalLanguageIntents?: string[];
33
+ dryRunSupported?: boolean;
34
+ returnsLargeData?: boolean;
35
+ preferredBefore?: string[];
36
+ preferredAfter?: string[];
19
37
  };
20
38
  export declare function catalogueTool(entry: BridgeToolEntry): void;
21
39
  export declare function getBridgeToolCatalogue(): ReadonlyArray<BridgeToolEntry>;
@@ -9,18 +9,18 @@
9
9
  * Each registered category calls `catalogueTool` as it registers its tool, so
10
10
  * there's one source of truth and no drift between docs/registration.
11
11
  */
12
- const catalogue = [];
12
+ const catalogue = new Map();
13
13
  export function catalogueTool(entry) {
14
- catalogue.push(entry);
14
+ catalogue.set(entry.name, entry);
15
15
  }
16
16
  export function getBridgeToolCatalogue() {
17
- return catalogue.slice().sort((a, b) => {
17
+ return Array.from(catalogue.values()).sort((a, b) => {
18
18
  if (a.category !== b.category)
19
19
  return a.category.localeCompare(b.category);
20
20
  return a.name.localeCompare(b.name);
21
21
  });
22
22
  }
23
23
  export function findCategory(name) {
24
- return catalogue.find((t) => t.name === name);
24
+ return catalogue.get(name);
25
25
  }
26
26
  //# sourceMappingURL=registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA0BH,MAAM,SAAS,GAAsB,EAAE,CAAC;AAExC,MAAM,UAAU,aAAa,CAAC,KAAsB;IAClD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,SAAS,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACrC,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ;YAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC3E,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA8CH,MAAM,SAAS,GAAG,IAAI,GAAG,EAA2B,CAAC;AAErD,MAAM,UAAU,aAAa,CAAC,KAAsB;IAClD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAClD,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ;YAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC3E,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC"}
@@ -9,7 +9,19 @@
9
9
  * - sxl://agent/recipes/index → intent router (always read first)
10
10
  * - sxl://agent/recipes/template-discovery → how to find templateNodeId / swatchLayerName
11
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 / variable-usage / audit-coverage / find-unused / bulk-variables / auto-bind-from-audit / bulk-styles / style-drift / mockup-builder / bulk-compositions / composition-drift)
12
+ * - sxl://agent/recipes/{id} → machine-readable agent recipes (sxl-use / sxl-implement-design / sxl-generate-design / sxl-generate-library / sxl-code-connect / sxl-audit / sxl-doc-builder / sxl-data-* / sxl-database-transfer / doc-tokens / doc-component / doc-composition / doc-flow / variable-palette / variable-usage / audit-coverage / find-unused / bulk-variables / auto-bind-from-audit / bulk-styles / style-drift / mockup-builder / bulk-compositions / composition-drift)
13
+ * - sxl://agent/operator-runbook → operational workflow chooser for agents/operators
14
+ * - sxl://agent/schemas/index → public Bridge schema index
15
+ * - sxl://agent/schemas/design-dsl-v1 → JSON-schema-like contract for build_screen / update_screen
16
+ * - sxl://agent/schemas/doc-spec-v2 → JSON-schema-like contract for apply_doc_spec
17
+ * - sxl://agent/schemas/token-doc-v1 → JSON-schema-like contract for apply_token_doc_spec
18
+ * - sxl://agent/schemas/code-connect-context-v1 → response contract for get_context_for_code_connect
19
+ * - sxl://agent/schemas/code-connect-template-v1 → response contract for generate_code_connect_template
20
+ * - sxl://agent/figma-mcp-parity → official Figma MCP ↔ Bridge/SXL parity map
21
+ * - sxl://agent/figma-mcp-skills-parity → official Figma MCP skills ↔ Bridge/SXL recipes/resources map
22
+ * - sxl://agent/performance-profile → Bridge command budgets, large-data/dry-run policy, recent timings
23
+ * - sxl://agent/runtime-summary → plugin connection, queue pressure, recent failures, recommendations
24
+ * - sxl://agent/ultimate-readiness → requirement-by-requirement Ultimate Bridge readiness audit
13
25
  * - sxl://figma/selection → current Figma selection summary
14
26
  * - sxl://figma/status → plugin status (editor type, mode, ...)
15
27
  *
@@ -18,4 +30,9 @@
18
30
  */
19
31
  import { McpServer } from "../../node_modules/@modelcontextprotocol/sdk/dist/cjs/server/mcp.js";
20
32
  import type { CommandQueue } from "../command-queue.js";
21
- export declare function registerBridgeResources(server: McpServer, queue: CommandQueue): void;
33
+ import type { SessionInfo } from "../types.js";
34
+ export type BridgeResourceRuntimeContext = {
35
+ bridgePort?: number;
36
+ getSessionInfo?: () => SessionInfo;
37
+ };
38
+ export declare function registerBridgeResources(server: McpServer, queue: CommandQueue, runtimeContext?: BridgeResourceRuntimeContext): void;