agentic-mermaid 0.3.2 → 0.4.1

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 (59) hide show
  1. package/CHANGELOG.md +105 -0
  2. package/README.md +2 -0
  3. package/dist/agent-core.d.ts +2 -2
  4. package/dist/agent-core.js +2 -2
  5. package/dist/agent.d.ts +2 -2
  6. package/dist/agent.js +4 -4
  7. package/dist/agentic-mermaid-mcp.js +5 -5
  8. package/dist/am.js +6 -6
  9. package/dist/browser-lazy/chunks/{architecture-WMSX5L4P.js → architecture-KTHE2HX3.js} +1 -1
  10. package/dist/browser-lazy/chunks/{chunk-EX6TP7QM.js → chunk-2XCPFAD5.js} +2 -2
  11. package/dist/browser-lazy/chunks/{chunk-TDGTBGV3.js → chunk-3H4F7RBT.js} +1 -1
  12. package/dist/browser-lazy/chunks/{chunk-RLS545DI.js → chunk-4EVLW2NJ.js} +1 -1
  13. package/dist/browser-lazy/chunks/{chunk-TEH2PRKN.js → chunk-6OAPWSDO.js} +1 -1
  14. package/dist/browser-lazy/chunks/{chunk-AOCFMYYH.js → chunk-C7FJO2I3.js} +1 -1
  15. package/dist/browser-lazy/chunks/{chunk-ZZECLXC3.js → chunk-D3XXDKIO.js} +1 -1
  16. package/dist/browser-lazy/chunks/{chunk-CCTZFX43.js → chunk-DXA5WL7H.js} +1 -1
  17. package/dist/browser-lazy/chunks/{chunk-TBZAU7KC.js → chunk-G6OLSHRG.js} +1 -1
  18. package/dist/browser-lazy/chunks/{chunk-QYJMRNS3.js → chunk-L227EPFP.js} +1 -1
  19. package/dist/browser-lazy/chunks/{chunk-QMZ4Y6I7.js → chunk-LNIHDJSF.js} +1 -1
  20. package/dist/browser-lazy/chunks/{chunk-EBPTM2RP.js → chunk-NZRUMODH.js} +1 -1
  21. package/dist/browser-lazy/chunks/{chunk-ANTNEVJC.js → chunk-PXKL3O6H.js} +1 -1
  22. package/dist/browser-lazy/chunks/{chunk-WN7SFUCZ.js → chunk-SUFMSWTX.js} +1 -1
  23. package/dist/browser-lazy/chunks/{chunk-32FWKUUV.js → chunk-UAEZO5VL.js} +1 -1
  24. package/dist/browser-lazy/chunks/{chunk-W6Q4PHPC.js → chunk-X64T74C5.js} +1 -1
  25. package/dist/browser-lazy/chunks/{class-7JRALQIM.js → class-F7R6TJ73.js} +1 -1
  26. package/dist/browser-lazy/chunks/{er-UDCGHKBX.js → er-BDK7CM5L.js} +1 -1
  27. package/dist/browser-lazy/chunks/{flowchart-5FP7RRIK.js → flowchart-KFU6XV7S.js} +1 -1
  28. package/dist/browser-lazy/chunks/{gantt-NTOIC5CW.js → gantt-I64VVDSP.js} +1 -1
  29. package/dist/browser-lazy/chunks/{gitgraph-JYAPXUIJ.js → gitgraph-EDUVJ5IJ.js} +1 -1
  30. package/dist/browser-lazy/chunks/{journey-646EFIB6.js → journey-TLO2RNM3.js} +1 -1
  31. package/dist/browser-lazy/chunks/{mindmap-2SBTQHQO.js → mindmap-OJCNDYPM.js} +1 -1
  32. package/dist/browser-lazy/chunks/{pie-7FDXZ24K.js → pie-HVG6XO7K.js} +1 -1
  33. package/dist/browser-lazy/chunks/{quadrant-72UT4XAW.js → quadrant-U6S2L4MJ.js} +1 -1
  34. package/dist/browser-lazy/chunks/{radar-SU7BO56J.js → radar-ZDLOBTVG.js} +1 -1
  35. package/dist/browser-lazy/chunks/{render-core-Q2JWXDDL.js → render-core-Y2DFNMQG.js} +1 -1
  36. package/dist/browser-lazy/chunks/{sequence-5O5ET264.js → sequence-Z4WFS3VB.js} +1 -1
  37. package/dist/browser-lazy/chunks/{state-IWPLFQ6R.js → state-2HV2YGN3.js} +1 -1
  38. package/dist/browser-lazy/chunks/{timeline-WJWYHH5Y.js → timeline-XM4UFPOC.js} +1 -1
  39. package/dist/browser-lazy/chunks/{xychart-HHQVQA5O.js → xychart-7JDHWTQY.js} +1 -1
  40. package/dist/browser-lazy/index.js +1 -1
  41. package/dist/browser.global.js +5 -5
  42. package/dist/{chunk-NE6JBHSE.js → chunk-GGXCNCNA.js} +39 -44
  43. package/dist/{chunk-YWKCUBQN.js → chunk-IVD4NXNE.js} +2 -2
  44. package/dist/{chunk-IVN6KP3W.js → chunk-JDMRPUAG.js} +2 -2
  45. package/dist/{chunk-R5U67OIW.js → chunk-JWAAW3FH.js} +4 -4
  46. package/dist/{chunk-3D4EHVQ4.js → chunk-LCGBT32P.js} +7 -7
  47. package/dist/{chunk-GX7UT56Q.js → chunk-RWMZRUIC.js} +2 -2
  48. package/dist/{index-BFg_LoZS.d.ts → index-BGA_-6LV.d.ts} +1 -1
  49. package/dist/index.d.ts +1 -1
  50. package/dist/index.js +1 -1
  51. package/dist/mcp-cli-4MLKC3ZH.js +17 -0
  52. package/docs/MCP-DIRECTORY-LISTINGS.md +72 -0
  53. package/docs/MCP-PRIVACY.md +52 -0
  54. package/docs/style-authoring.md +1 -1
  55. package/package.json +12 -1
  56. package/server.json +2 -2
  57. package/skills/agentic-mermaid-diagram-workflow/SKILL.md +64 -1
  58. package/skills/agentic-mermaid-diagram-workflow/references/hosted-mcp.md +110 -0
  59. package/dist/mcp-cli-XGZP6CMW.js +0 -17
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  projectKnownRenderErrorDiagnostic,
3
3
  projectRenderErrorDiagnostic
4
- } from "./chunk-IVN6KP3W.js";
4
+ } from "./chunk-JDMRPUAG.js";
5
5
  import {
6
6
  renderMermaidPNG,
7
7
  renderMermaidPNGWithReceipt
8
- } from "./chunk-YWKCUBQN.js";
8
+ } from "./chunk-IVD4NXNE.js";
9
9
  import {
10
10
  analyzeMermaid,
11
11
  analyzeMermaidSource,
@@ -31,7 +31,7 @@ import {
31
31
  renderMermaidSVGWithReceipt,
32
32
  verifyMermaid,
33
33
  verifySummary
34
- } from "./chunk-GX7UT56Q.js";
34
+ } from "./chunk-RWMZRUIC.js";
35
35
  import {
36
36
  BUILTIN_FAMILY_METADATA,
37
37
  PACKAGE_VERSION,
@@ -71,7 +71,7 @@ import {
71
71
  styleSpecTypeScriptDeclaration,
72
72
  validateJsonConfigAdmission,
73
73
  validateSerializableRenderOptions
74
- } from "./chunk-3D4EHVQ4.js";
74
+ } from "./chunk-LCGBT32P.js";
75
75
 
76
76
  // src/mcp/server.ts
77
77
  import { randomUUID as randomUUID2 } from "crypto";
@@ -1407,19 +1407,6 @@ function modernRequestMetaProblems(req) {
1407
1407
 
1408
1408
  // src/mcp/admission.ts
1409
1409
  var admittedMcpMessage = /* @__PURE__ */ Symbol("AdmittedMcpMessage");
1410
- function admitMcpHeaderVersion(headerVersion, supportedVersions) {
1411
- if (headerVersion === null || supportedVersions.includes(headerVersion)) return null;
1412
- return {
1413
- ok: false,
1414
- kind: "unsupported-version",
1415
- response: rpcError(
1416
- null,
1417
- UNSUPPORTED_PROTOCOL_VERSION,
1418
- `Unsupported protocol version: ${headerVersion}`,
1419
- { supported: [...supportedVersions], requested: headerVersion }
1420
- )
1421
- };
1422
- }
1423
1410
  function responseId(raw, validId) {
1424
1411
  const value = raw.id;
1425
1412
  return validId && value !== void 0 ? value : null;
@@ -1455,10 +1442,6 @@ function admitMcpMessage(rawMessage, options) {
1455
1442
  const supportedVersions = options.protocolEra === "legacy" ? options.supportedVersions.filter(isLegacyProtocolVersion) : options.protocolEra === "modern" ? options.supportedVersions.filter(isModernProtocolVersion) : [...options.supportedVersions];
1456
1443
  const effectiveTransportVersion = options.negotiatedVersion ?? options.headerVersion ?? void 0;
1457
1444
  const provisionalProtocol = isModernProtocolVersion(declaredVersion) ? { era: "modern", version: declaredVersion, supportedVersions } : { era: "legacy", version: declaredVersion ?? effectiveTransportVersion, supportedVersions };
1458
- const headerAdmission = admitMcpHeaderVersion(options.headerVersion ?? null, supportedVersions);
1459
- if (headerAdmission) {
1460
- return { ...headerAdmission, protocol: provisionalProtocol, requestedEra };
1461
- }
1462
1445
  if (versionClaim.present && typeof versionClaim.value !== "string") {
1463
1446
  return rejection(
1464
1447
  "invalid-modern-metadata",
@@ -1468,6 +1451,20 @@ function admitMcpMessage(rawMessage, options) {
1468
1451
  "modern"
1469
1452
  );
1470
1453
  }
1454
+ if (options.headerVersion != null && !supportedVersions.includes(options.headerVersion)) {
1455
+ return rejection(
1456
+ "unsupported-version",
1457
+ notification,
1458
+ rpcError(
1459
+ id,
1460
+ UNSUPPORTED_PROTOCOL_VERSION,
1461
+ `Unsupported protocol version: ${options.headerVersion}`,
1462
+ { supported: [...supportedVersions], requested: options.headerVersion }
1463
+ ),
1464
+ provisionalProtocol,
1465
+ requestedEra
1466
+ );
1467
+ }
1471
1468
  if (options.negotiatedVersion != null && !supportedVersions.includes(options.negotiatedVersion)) {
1472
1469
  return rejection(
1473
1470
  "unsupported-version",
@@ -1544,14 +1541,24 @@ function admitMcpMessage(rawMessage, options) {
1544
1541
  if (!isModernProtocolVersion(declaredVersion)) {
1545
1542
  const problem = `params._meta.${META_PROTOCOL_VERSION} is required and must match the MCP-Protocol-Version header (${options.headerVersion})`;
1546
1543
  return rejection(
1547
- "header-mismatch",
1544
+ "invalid-modern-metadata",
1548
1545
  notification,
1549
- rpcError(id, HEADER_MISMATCH, `Header mismatch: ${problem}`),
1546
+ rpcError(id, -32602, `Invalid params: ${problem}`),
1550
1547
  provisionalProtocol,
1551
1548
  requestedEra
1552
1549
  );
1553
1550
  }
1554
1551
  const protocol2 = { era: "modern", version: declaredVersion, supportedVersions };
1552
+ const metaProblems = modernRequestMetaProblems(request);
1553
+ if (metaProblems.length > 0) {
1554
+ return rejection(
1555
+ "invalid-modern-metadata",
1556
+ notification,
1557
+ rpcError(id, -32602, `Invalid params: ${metaProblems.join("; ")}`),
1558
+ protocol2,
1559
+ requestedEra
1560
+ );
1561
+ }
1555
1562
  if (options.requireModernVersionHeader && options.headerVersion == null) {
1556
1563
  return rejection(
1557
1564
  "header-mismatch",
@@ -1575,16 +1582,6 @@ function admitMcpMessage(rawMessage, options) {
1575
1582
  requestedEra
1576
1583
  );
1577
1584
  }
1578
- const metaProblems = modernRequestMetaProblems(request);
1579
- if (metaProblems.length > 0) {
1580
- return rejection(
1581
- "invalid-modern-metadata",
1582
- notification,
1583
- rpcError(id, -32602, `Invalid params: ${metaProblems.join("; ")}`),
1584
- protocol2,
1585
- requestedEra
1586
- );
1587
- }
1588
1585
  return acceptance(request, id, notification, protocol2);
1589
1586
  }
1590
1587
  const protocol = {
@@ -1601,7 +1598,7 @@ function withClosedMcpInputSchema(tool) {
1601
1598
  }
1602
1599
  var MCP_SERVER_NAME = "agentic-mermaid-mcp";
1603
1600
  var MCP_SERVER_VERSION = PACKAGE_VERSION;
1604
- var SERVER_CAPABILITIES = { tools: {}, prompts: {}, resources: {} };
1601
+ var SERVER_CAPABILITIES = { tools: {} };
1605
1602
  var PURE_COMPUTE_ANNOTATIONS = {
1606
1603
  readOnlyHint: true,
1607
1604
  destructiveHint: false,
@@ -1816,7 +1813,7 @@ function surfaceSupportedVersions(surface, options = {}) {
1816
1813
  }
1817
1814
  function discoverResult(surface, supportedVersions) {
1818
1815
  return {
1819
- supportedVersions: supportedVersions.filter(isModernProtocolVersion),
1816
+ supportedVersions: [...supportedVersions],
1820
1817
  capabilities: SERVER_CAPABILITIES,
1821
1818
  instructions: surface.instructions
1822
1819
  };
@@ -1898,19 +1895,13 @@ async function dispatchAdmittedMcpRequest(message, context, surface) {
1898
1895
  response = await surface.handleToolCall(id, { ...req.params, arguments: args }, context);
1899
1896
  break;
1900
1897
  }
1901
- case "prompts/list":
1902
- response = reply(id, { prompts: [] });
1903
- break;
1904
- case "resources/list":
1905
- response = reply(id, { resources: [] });
1906
- break;
1907
1898
  default:
1908
1899
  response = unknownMethod(id, req.method);
1909
1900
  }
1910
1901
  return notification ? null : decorateMcpResult(response, req.method, era, surface.serverName ?? MCP_SERVER_NAME);
1911
1902
  }
1912
1903
  var LIST_RESULT_TTL_MS = 3e5;
1913
- var CACHEABLE_METHODS = /* @__PURE__ */ new Set(["server/discover", "tools/list", "prompts/list", "resources/list"]);
1904
+ var CACHEABLE_METHODS = /* @__PURE__ */ new Set(["server/discover", "tools/list"]);
1914
1905
  function decorateMcpResult(response, method, era, serverName) {
1915
1906
  if (era !== "modern" || !response || !plainJsonObject(response.result)) return response;
1916
1907
  const existingMeta = plainJsonObject(response.result._meta) ? response.result._meta : {};
@@ -1945,6 +1936,7 @@ embedFontImport:false; caller code cannot weaken that host policy.
1945
1936
  const runtime = options.hosted ? "an isolated sandbox" : "a sandboxed node:vm context";
1946
1937
  return {
1947
1938
  name: "execute",
1939
+ title: "Execute Mermaid SDK code",
1948
1940
  description: `Run JavaScript in ${runtime}; return a value.
1949
1941
  One call composes edits. Submit JavaScript; declaration types are guidance.
1950
1942
  No promises, async/await, dynamic import, or type annotations.
@@ -1968,6 +1960,7 @@ function createRenderPngTool(mode) {
1968
1960
  const pngProperties = pngSchema.properties;
1969
1961
  return {
1970
1962
  name: "render_png",
1963
+ title: "Render Mermaid as PNG",
1971
1964
  description: hosted ? `Rasterize a Mermaid source string to PNG. Returns { ok, png_base64 }.
1972
1965
  Hosted rendering uses resvg-wasm with bundled fonts; bytes may differ from the
1973
1966
  local napi renderer, so hosted PNG is a convenience surface, not part of the
@@ -1996,6 +1989,7 @@ Agentic Mermaid outputs SVG, PNG, ASCII, Unicode, and JSON layout. For non-PNG o
1996
1989
  function createDescribeTool() {
1997
1990
  return {
1998
1991
  name: "describe",
1992
+ title: "Describe Mermaid diagram",
1999
1993
  description: `Describe a Mermaid diagram. format=text returns { ok, text } with
2000
1994
  one or two summary sentences; format=json returns { ok, tree } with the AX tree;
2001
1995
  format=facts returns { ok, facts } with deterministic semantic fact lines for
@@ -2944,6 +2938,7 @@ ${NARROWERS}
2944
2938
  function createDescribeSdkTool() {
2945
2939
  return {
2946
2940
  name: "describe_sdk",
2941
+ title: "Describe Mermaid SDK operations",
2947
2942
  description: `Return version-matched mutation operations for one diagram family.
2948
2943
  Use detail=signatures for the compact op menu or detail=fields (default) for exact
2949
2944
  field types, required flags, enum values, defaults, and constraints. Call this
@@ -3488,7 +3483,7 @@ function safePath(root, name) {
3488
3483
 
3489
3484
  // src/mcp/server.ts
3490
3485
  var PROTOCOL_VERSION = "2024-11-05";
3491
- var STDIO_PROTOCOL_VERSIONS = ["2024-11-05", "2025-03-26", "2025-06-18", "2025-11-25", "2026-07-28"];
3486
+ var STDIO_PROTOCOL_VERSIONS = ["2024-11-05", "2025-06-18", "2025-11-25", "2026-07-28"];
3492
3487
  var HTTP_SSE_PROTOCOL_VERSIONS = ["2024-11-05"];
3493
3488
  var HTTP_SSE_DISPATCH = { supportedVersions: HTTP_SSE_PROTOCOL_VERSIONS };
3494
3489
  var MAX_RPC_BODY_BYTES = 1024 * 1024;
@@ -4120,4 +4115,4 @@ export {
4120
4115
  parseMcpCliOptions,
4121
4116
  runMcpCli
4122
4117
  };
4123
- //# sourceMappingURL=chunk-NE6JBHSE.js.map
4118
+ //# sourceMappingURL=chunk-GGXCNCNA.js.map
@@ -13,7 +13,7 @@ import {
13
13
  renderPngGraphicalProjection,
14
14
  snapshotHostBackendPolicy,
15
15
  snapshotResourceManifest
16
- } from "./chunk-3D4EHVQ4.js";
16
+ } from "./chunk-LCGBT32P.js";
17
17
 
18
18
  // src/agent/png.ts
19
19
  import { fileURLToPath } from "url";
@@ -612,4 +612,4 @@ export {
612
612
  renderMermaidPNGWithReceipt,
613
613
  createMermaidPNGRenderer
614
614
  };
615
- //# sourceMappingURL=chunk-YWKCUBQN.js.map
615
+ //# sourceMappingURL=chunk-IVD4NXNE.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  AsciiWidthError,
3
3
  MermaidFamilyDetectionError
4
- } from "./chunk-3D4EHVQ4.js";
4
+ } from "./chunk-LCGBT32P.js";
5
5
 
6
6
  // src/render-error-diagnostic.ts
7
7
  function projectKnownRenderErrorDiagnostic(error) {
@@ -34,4 +34,4 @@ export {
34
34
  projectKnownRenderErrorDiagnostic,
35
35
  projectRenderErrorDiagnostic
36
36
  };
37
- //# sourceMappingURL=chunk-IVN6KP3W.js.map
37
+ //# sourceMappingURL=chunk-JDMRPUAG.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  renderMermaidPNG
3
- } from "./chunk-YWKCUBQN.js";
3
+ } from "./chunk-IVD4NXNE.js";
4
4
  import {
5
5
  collectActionRecords,
6
6
  layoutMermaid,
7
7
  renderMermaidASCIIWithMeta,
8
8
  renderMermaidSVG
9
- } from "./chunk-GX7UT56Q.js";
9
+ } from "./chunk-RWMZRUIC.js";
10
10
  import {
11
11
  SHARED_RENDER_OPTION_FIELDS,
12
12
  decodedSvgAttributeValue,
@@ -15,7 +15,7 @@ import {
15
15
  prepareRenderInput,
16
16
  scanSvgStartTags,
17
17
  toFinite
18
- } from "./chunk-3D4EHVQ4.js";
18
+ } from "./chunk-LCGBT32P.js";
19
19
 
20
20
  // src/agent/index.ts
21
21
  function sharedRenderOptions(options) {
@@ -146,4 +146,4 @@ function renderMermaidWithActions(input, request) {
146
146
  export {
147
147
  renderMermaidWithActions
148
148
  };
149
- //# sourceMappingURL=chunk-R5U67OIW.js.map
149
+ //# sourceMappingURL=chunk-JWAAW3FH.js.map
@@ -174,7 +174,7 @@ function negotiateRenderCapabilityTuple(output, tuple) {
174
174
  }
175
175
 
176
176
  // src/version.ts
177
- var PACKAGE_VERSION = "0.3.2";
177
+ var PACKAGE_VERSION = "0.4.1";
178
178
 
179
179
  // src/shared/extension-identity.ts
180
180
  function sameExtensionIdentity(left, right2) {
@@ -524,7 +524,7 @@ var SCENE_ROLE_DESCRIPTORS = Object.freeze(
524
524
  id: `role:${role}`,
525
525
  kind: "role",
526
526
  version: "1.0.0",
527
- compatibility: { core: "^0.3.0", scene: "^2.0.0" },
527
+ compatibility: { core: "^0.4.0", scene: "^2.0.0" },
528
528
  provenance: { owner: "agentic-mermaid", source: "built-in", reference: "src/scene/roles.ts" }
529
529
  }),
530
530
  role,
@@ -28659,7 +28659,7 @@ ${pageRect}` : sceneNodeSerialization(part)).join("\n");
28659
28659
  }
28660
28660
  };
28661
28661
  var CORE_BACKEND_VERSION = "1.0.0";
28662
- var CORE_BACKEND_COMPATIBILITY = Object.freeze({ core: "^0.3.0", scene: "^2.0.0" });
28662
+ var CORE_BACKEND_COMPATIBILITY = Object.freeze({ core: "^0.4.0", scene: "^2.0.0" });
28663
28663
  var CORE_BACKEND_PROVENANCE = Object.freeze({
28664
28664
  owner: "agentic-mermaid",
28665
28665
  source: "built-in",
@@ -30628,7 +30628,7 @@ var INTERNAL_STYLE_FACE_PROJECTION = Object.freeze({
30628
30628
  group: Object.freeze({ sourceRole: "group", fields: Object.freeze([...INTERNAL_TEXT_FACE_FIELDS, ...INTERNAL_BOX_FACE_FIELDS, "fontFamily", "headerFillColor"]) })
30629
30629
  });
30630
30630
  var CORE_STYLE_VERSION = "1.0.0";
30631
- var CORE_STYLE_COMPATIBILITY = Object.freeze({ core: "^0.3.0" });
30631
+ var CORE_STYLE_COMPATIBILITY = Object.freeze({ core: "^0.4.0" });
30632
30632
  var CORE_STYLE_PROVENANCE = Object.freeze({
30633
30633
  owner: "agentic-mermaid",
30634
30634
  source: "built-in",
@@ -56179,7 +56179,7 @@ function completeBuiltinDescriptor(seed) {
56179
56179
  id: `family:${seed.id}`,
56180
56180
  kind: "family",
56181
56181
  version: "1.0.0",
56182
- compatibility: { core: "^0.3.0" },
56182
+ compatibility: { core: "^0.4.0" },
56183
56183
  provenance: { owner: "agentic-mermaid", source: "built-in" }
56184
56184
  }),
56185
56185
  collisionPriority: 100,
@@ -60928,7 +60928,7 @@ var HOSTED_FONT_RESOURCES = Object.freeze(
60928
60928
  id: `resource:${fontResourceLocalId(face)}`,
60929
60929
  kind: "resource",
60930
60930
  version: "1.0.0",
60931
- compatibility: { core: "^0.3.0" },
60931
+ compatibility: { core: "^0.4.0" },
60932
60932
  provenance: { owner: "agentic-mermaid", source: "bundled", reference: `assets/fonts/${face.file}` }
60933
60933
  })
60934
60934
  }))
@@ -62033,4 +62033,4 @@ export {
62033
62033
  renderMermaidSVGWithReceipt,
62034
62034
  renderMermaidSVGAsync
62035
62035
  };
62036
- //# sourceMappingURL=chunk-3D4EHVQ4.js.map
62036
+ //# sourceMappingURL=chunk-LCGBT32P.js.map
@@ -93,7 +93,7 @@ import {
93
93
  visualWidth,
94
94
  wcagCssContrastRatio,
95
95
  wrapperPrefix
96
- } from "./chunk-3D4EHVQ4.js";
96
+ } from "./chunk-LCGBT32P.js";
97
97
 
98
98
  // src/agent/trace-log.ts
99
99
  var appendFn;
@@ -4712,4 +4712,4 @@ export {
4712
4712
  layoutMermaidWithReceipt,
4713
4713
  layoutMermaid
4714
4714
  };
4715
- //# sourceMappingURL=chunk-GX7UT56Q.js.map
4715
+ //# sourceMappingURL=chunk-RWMZRUIC.js.map
@@ -31,7 +31,7 @@ interface ExtensionIdentity<Kind extends string = string> {
31
31
  /** Host contract versions understood by this runtime. Requirements for other
32
32
  * namespaced contracts are retained but deliberately deferred to their owner. */
33
33
  declare const KNOWN_EXTENSION_CONTRACT_VERSIONS: Readonly<{
34
- readonly core: "0.3.2";
34
+ readonly core: "0.4.1";
35
35
  readonly scene: "2.0.0";
36
36
  }>;
37
37
  interface ExtensionCompatibilityResolution {
package/dist/index.d.ts CHANGED
@@ -1 +1 @@
1
- export { g0 as ARCHITECTURE_ICON_LIMITS, g as AnyPort, r as ArchitectureVisualOverrides, s as AsciiRenderColorMode, A as AsciiRenderOptions, t as AsciiWidthError, u as AsciiWidthErrorReason, B as BACKEND_CONFORMANCE_CHECK_IDS, v as BACKEND_CONFORMANCE_FIXTURE_ID, w as BACKEND_CONFORMANCE_VERSION, x as BINDABLE_ROLE_STYLE_PROPERTIES, y as BINDABLE_SCENE_ROLES, z as BRAND_CONSTRAINT_DESCRIPTORS, C as BRAND_CONSTRAINT_KINDS, g1 as BROWSER_CANVAS_RUNTIME, G as BUILTIN_SCENE_ROLE_TRAITS, I as BackendCapabilityConformanceResult, J as BackendCapabilityConformanceStatus, K as BackendConformanceCheck, L as BackendConformanceCheckId, M as BackendConformanceReport, N as BackendDescriptor, O as BackendRegistrationOptions, Q as BindableSceneRole, S as BrandConstraint, T as BrandConstraintAction, U as BrandConstraintKind, g2 as BrowserPngDiagnostic, g3 as BrowserPngFontSource, g4 as BrowserPngRasterContext, g5 as BrowserPngRasterResult, g6 as BrowserPngRasterizer, g7 as BrowserPngRuntimeProvenance, g8 as BuiltinSceneRole, X as CAPABILITY_NEGOTIATION_VERSION, Y as CORE_CAPABILITY_OFFERS, Z as CORE_SCENE_FEATURES, _ as CORE_SCENE_OPERATIONS, $ as CORE_SCENE_PRIMITIVES, a0 as CapabilityDecision, a1 as CapabilityId, a2 as CapabilityOffer, a3 as CapabilityRequirement, a4 as CapabilityRequirementLevel, a5 as CapabilityResolution, g9 as CapabilityValidationResult, ad as CliRenderTransport, ae as CodeModeRenderTransport, ga as ConfigDiagnostic, af as ConnectorContourSemantics, gb as ConnectorDash, gc as ConnectorDirection, gd as ConnectorEndpointAnchor, ag as ConnectorEndpoints, ah as ConnectorGeometry, ai as ConnectorHitGeometry, aj as ConnectorLabelDescriptor, ak as ConnectorMark, al as ConnectorRelationship, am as ConnectorRoute, an as ConnectorStroke, ao as ConnectorSubpath, ap as ConnectorTerminalLabelProjection, aq as ConnectorTerminalMarkerPlacement, ar as ConnectorTerminalMarkerProjection, as as ConnectorTerminalProjection, at as ConnectorTerminalStrokeLoss, ge as CoreSceneFeature, gf as CoreSceneOperation, gg as CoreScenePrimitive, gh as CoreSceneRole, gi as DEFAULTS, av as DefaultBackend, gj as DiagramColors, aB as DiamondFacet, gk as DocumentMark, gl as ESSENTIAL_SCENE_PRIMITIVE_CAPABILITIES, gm as ESSENTIAL_SCENE_PRIMITIVE_OPERATIONS, aC as EXACT_ROLE_STYLE_CONTRACT, aD as EXACT_STYLE_SCENE_ROLES, aE as EXTERNAL_SCENE_API_VERSION, aG as EdgeRouteCertificate, gn as EssentialScenePrimitiveCapability, go as EssentialScenePrimitiveOperation, aO as ExactStyleSceneRole, gp as ExtensionCollisionError, gq as ExtensionCompatibility, gr as ExtensionCompatibilityDecision, gs as ExtensionCompatibilityResolution, aP as ExtensionDiagramBody, aQ as ExtensionIdentity, gt as ExtensionProvenance, gu as ExtensionRegistration, aR as ExtensionValidDiagram, aT as ExternalSceneConnector, aU as ExternalSceneConnectorGeometry, aV as ExternalSceneConnectorLabel, aW as ExternalSceneContainer, aX as ExternalSceneDataMark, aY as ExternalSceneDocument, aZ as ExternalSceneGeometry, a_ as ExternalSceneInput, a$ as ExternalSceneMarker, b0 as ExternalSceneNode, b1 as ExternalSceneNodeBase, b2 as ExternalSceneShape, b3 as ExternalSceneText, bg as FamilyDetectionDiagnostic, bh as FamilyEdgeRouteCertificate, bo as FamilyRouteCertificate, gv as Geometry, gw as GitGraphBranch, gx as GitGraphCommit, gy as GitGraphCommitType, gz as GitGraphDiagram, gA as GitGraphDuplicateCommitError, gB as GitGraphParseError, gC as GitGraphRuntimeConfig, gD as GroupMark, bJ as HOSTED_FONT_RESOURCES, H as HostBackendPolicy, gE as HostBackendSelection, gF as HostedFontFace, gG as HostedFontResource, gH as JourneyRuntimeConfig, gI as KNOWN_EXTENSION_CONTRACT_VERSIONS, bQ as LayoutRouteCertificate, bR as LayoutRouteClass, bT as LibraryRenderTransport, bU as MAX_HOSTED_PNG_BYTES, bV as MAX_HOSTED_PNG_PIXELS, bW as MAX_PNG_FONT_DIRECTORIES, bX as MAX_PNG_FONT_DIRECTORY_LENGTH, bY as MAX_PNG_PIXELS, bZ as MAX_PNG_RASTER_DIMENSION, gJ as MarkPaint, b_ as MarkerDescriptor, gK as MarkerSerializationOptions, gL as MarkerShape, gM as MermaidBrowserPNGRenderer, gN as MermaidBrowserPNGRendererHostOptions, b$ as MermaidFamilyClassification, c0 as MermaidFamilyDetectionError, gO as MermaidGraph, gP as MermaidRenderer, gQ as MermaidRendererHostOptions, gR as MermaidRuntimeConfig, gS as MermaidThemeVariables, gT as MindmapDiagram, gU as MindmapDuplicateIdError, gV as MindmapNode, gW as MindmapParseError, gX as MindmapRuntimeConfig, gY as MindmapShape, c6 as NATIVE_PNG_HOST_ONLY_OPTION_FIELDS, c7 as NATIVE_PNG_OUTPUT_POLICY_FIELDS, gZ as NamespacedSceneRole, c8 as NativePngHostOnlyOptionField, c9 as NativePngOutputPolicyField, g_ as OUTPUT_COLOR_PROFILE, g$ as OUTPUT_SECURITY_POLICY_VERSION, h0 as OutputSecurityDiagnostic, h1 as OutputSecurityMode, h2 as OutputSecurityResult, cb as PNG_DEFAULT_FONT_FAMILY, cc as PNG_DEFAULT_SCALE, cd as PNG_FONT_SOURCES, ce as PNG_NAPI_RUNTIME, cf as PNG_OUTPUT_OPTION_FIELDS, cg as PNG_OUTPUT_OPTION_FIELD_DESCRIPTORS, ch as PNG_OUTPUT_POLICY_VERSION, ci as PNG_WASM_RUNTIME, cj as PORTABLE_PNG_OUTPUT_OPTION_FIELDS, ck as PRIMITIVE_REALIZATIONS, P as ParsedDiagram, h3 as ParsedDiagramFamilyMismatchError, h4 as PieRuntimeConfig, h5 as PngColorProfileReceipt, h6 as PngDimensions, cr as PngFitTo, cs as PngFontSource, ct as PngOutputOptionField, cu as PngOutputOptionFieldDescriptor, cv as PngOutputOptionInputKind, cw as PngOutputOptionPolicyState, cx as PngOutputOptionReceiptState, cy as PngOutputOptionScope, a as PngOutputPolicyInput, cz as PngRasterDimensions, c as PngRuntimeProvenance, cA as PortSemanticRole, cB as PortSide, cC as PortablePngOutputOptionField, cD as PortablePngOutputOptions, fX as PositionedDiagram, h7 as PositionedGitGraphDiagram, h8 as PositionedGraph, h9 as PositionedMindmapDiagram, cE as PreservedDiagramBody, cF as PreservedSourceSpans, cG as PreservedValidDiagram, ha as PrimitiveCapabilityClaim, hb as PrimitiveRealization, hc as QuadrantRuntimeConfig, cM as RENDER_CONTRACT_VERSION, cN as RENDER_OUTPUTS, cO as RENDER_OUTPUT_DESCRIPTORS, cP as RESOURCE_MANIFEST, cQ as RESOURCE_MANIFEST_VERSION, cR as ROLE_STYLE_PROPERTY_DESCRIPTORS, hd as RadarRuntimeConfig, cX as RegionContainmentCertificate, cY as RenderCapabilityError, he as RenderContext, R as RenderOptions, hf as RenderOutput, cZ as RenderOutputDescriptor, c_ as RenderOutputTransports, b as RenderRequestReceipt, hg as RenderableMarkerDescriptor, c$ as RenderedAscii, hh as RenderedBrowserPng, f$ as RenderedSvg, hi as ResolvedArchitectureIcon, hj as ResolvedColors, d5 as ResolvedPngOutputPolicy, hk as ResolvedSceneRoleTraits, d6 as ResolvedTerminalOutputPolicy, hl as ResolvedTerminalStyle, hm as ResourceLicense, hn as ResourceManifest, ho as ResourceManifestEntry, d8 as RoleStyleFor, d9 as RoleStyleSpec, da as RoleStyles, db as RouteBlocker, dc as RouteCertificate, dd as RouteClass, de as RoutePortAssignment, df as SCENE_CONTRACT_VERSION, dg as SCENE_ROLE_DESCRIPTORS, dh as SCENE_VALIDATION_LIMITS, di as SCENE_VALIDATION_VERSION, dj as SEMANTIC_BINDING_CHANNELS, dk as SHARED_RENDER_OPTION_FIELDS, dl as STYLE_COLOR_TOKEN_DESCRIPTORS, dm as STYLE_SPEC_FIELD_DESCRIPTORS, dn as STYLE_SPEC_FORMAT_VERSION, hp as SceneBox, hq as SceneConnectorHit, dp as SceneDoc, hr as SceneFeature, hs as SceneMarkKind, dq as SceneNode, ht as SceneNodeBase, hu as SceneOperation, hv as ScenePoint, hw as ScenePrimitive, dr as SceneRole, hx as SceneRoleDescriptor, hy as SceneRoleTraits, hz as SceneSketchPolicy, ds as SceneValidationDiagnostic, dt as SceneValidationDiagnosticCode, du as SceneValidationError, dv as SceneValidationOptions, dw as SceneValidationResult, dx as SemanticBinding, dy as SemanticBindingChannel, dz as SemanticChannels, dA as SemanticSlots, hA as ShapeMark, dM as SourceSpan, dN as SourceSpanPoint, hB as StateRuntimeConfig, dT as StyleBackend, dU as StyleBackendContext, dV as StyleColors, dW as StyleDescriptor, dX as StyleInput, dY as StyleReferenceResolution, dZ as StyleRegistrationOptions, hC as StyleRegistryKind, d_ as StyleSpec, hD as SvgRelationSemantics, hE as SvgSemanticAccessibility, hF as SvgSemanticIdentity, d$ as TERMINAL_BOUNDED_PADDING_X, e0 as TERMINAL_DEFAULT_BOX_BORDER_PADDING, e1 as TERMINAL_DEFAULT_PADDING_X, e2 as TERMINAL_DEFAULT_PADDING_Y, e3 as TERMINAL_OUTPUT_POLICY_VERSION, hG as TERMINAL_STYLE_VERSION, e4 as TEXT_MEASUREMENT_CONTRACT, hH as TerminalConnectorProjection, hI as TerminalConnectorProjectionReceipt, e5 as TerminalOutputPolicyError, e6 as TerminalOutputPolicyInput, hJ as TerminalProjectionDiagnostic, fY as TerminalProjectionDiagnosticCode, hK as TerminalProjectionSecurityContext, hL as TextMark, e7 as TextMeasurementContract, e8 as TextMeasurementInput, e9 as TextMeasurementResult, hM as TimelineRuntimeConfig, hN as XyChartRuntimeConfig, hO as applyOutputSecurityPolicy, hP as applyPngColorProfile, hQ as architectureIconManifest, hR as architectureToMermaidGraph, eV as assertHostedPngRasterBudget, eW as assertPngRasterBudget, hS as assertRenderableMarker, eX as assertValidSceneDoc, eY as buildExternalScene, hT as canonicalExtensionId, e_ as classifyMermaidFamilyFromFirstLine, hU as connectorHitDistance, e$ as createExtensionIdentity, hV as createMermaidBrowserPNGRenderer, hW as createMermaidRenderer, hX as essentialScenePrimitiveOperation, hY as evaluateExtensionCompatibility, hZ as fromShikiTheme, f5 as getBackend, f8 as getStyle, h_ as hitTestConnector, h$ as hitTestSceneConnectors, f9 as hostedFontResource, fa as inferBackend, i0 as inlineResolvedColors, i1 as inspectPngColorProfile, i2 as inspectPngDimensions, fd as knownBackendDescriptors, fg as knownStyleDescriptors, fh as knownStyles, fi as measureText, fj as measureTextWidth, fk as negotiateCapabilities, fl as negotiateRenderCapabilities, fm as normalizePortablePngBackground, fo as omitPngOutputOptions, i3 as parseArchitectureDiagram, i4 as parseExtensionId, i5 as parseGitGraph, i6 as parseMindmap, fp as parseRegisteredMermaid, fq as parseSemVer, fr as pngNapiRuntimeProvenance, fs as pngOutputOptionsJsonSchema, ft as pngRasterDimensions, fu as prepareSvgForPngRasterization, fv as projectNativePngOutputPolicyInput, fw as projectPortablePngOutputOptions, fx as registerBackend, i7 as registerExtension, fy as registerStyle, i8 as renderContractDigest, fZ as renderMermaidASCII, i9 as renderMermaidASCIIWithReceipt, ia as renderMermaidPNGInBrowserWithReceipt, f_ as renderMermaidSVG, ib as renderMermaidSVGAsync, ic as renderMermaidSVGWithReceipt, id as resolveArchitectureIcon, ie as resolveColors, ig as resolveDiagramColors, fz as resolvePngOutputPolicy, fA as resolvePortablePngOutputPolicy, fB as resolveSceneRoleTraits, fC as resolveStyleReference, fD as resolveStyleStack, fE as resolveTerminalOutputPolicy, fF as runBackendConformance, fG as sceneRoleTraits, fH as semVerSatisfies, ih as serializeGitGraph, ii as serializeMarkerResource, ij as serializeMarkerResources, ik as serializeMindmap, fI as sharedRenderOptionsJsonSchema, il as snapshotResourceManifest, fJ as styleInputJsonSchema, fK as styleSpecJsonSchema, fL as svgIntrinsicDimensions, fM as terminalConnectorCapabilityClaims, fO as validatePrimitiveCapabilities, fP as validateResourceManifest, fQ as validateSceneDoc, fR as validateSerializableRenderOptions, fS as validateStyleSpec, fT as verifyNoExternalRefs, fU as verifyResourceBytes, im as verifySvgDocumentEnvelope } from './index-BFg_LoZS.js';
1
+ export { g0 as ARCHITECTURE_ICON_LIMITS, g as AnyPort, r as ArchitectureVisualOverrides, s as AsciiRenderColorMode, A as AsciiRenderOptions, t as AsciiWidthError, u as AsciiWidthErrorReason, B as BACKEND_CONFORMANCE_CHECK_IDS, v as BACKEND_CONFORMANCE_FIXTURE_ID, w as BACKEND_CONFORMANCE_VERSION, x as BINDABLE_ROLE_STYLE_PROPERTIES, y as BINDABLE_SCENE_ROLES, z as BRAND_CONSTRAINT_DESCRIPTORS, C as BRAND_CONSTRAINT_KINDS, g1 as BROWSER_CANVAS_RUNTIME, G as BUILTIN_SCENE_ROLE_TRAITS, I as BackendCapabilityConformanceResult, J as BackendCapabilityConformanceStatus, K as BackendConformanceCheck, L as BackendConformanceCheckId, M as BackendConformanceReport, N as BackendDescriptor, O as BackendRegistrationOptions, Q as BindableSceneRole, S as BrandConstraint, T as BrandConstraintAction, U as BrandConstraintKind, g2 as BrowserPngDiagnostic, g3 as BrowserPngFontSource, g4 as BrowserPngRasterContext, g5 as BrowserPngRasterResult, g6 as BrowserPngRasterizer, g7 as BrowserPngRuntimeProvenance, g8 as BuiltinSceneRole, X as CAPABILITY_NEGOTIATION_VERSION, Y as CORE_CAPABILITY_OFFERS, Z as CORE_SCENE_FEATURES, _ as CORE_SCENE_OPERATIONS, $ as CORE_SCENE_PRIMITIVES, a0 as CapabilityDecision, a1 as CapabilityId, a2 as CapabilityOffer, a3 as CapabilityRequirement, a4 as CapabilityRequirementLevel, a5 as CapabilityResolution, g9 as CapabilityValidationResult, ad as CliRenderTransport, ae as CodeModeRenderTransport, ga as ConfigDiagnostic, af as ConnectorContourSemantics, gb as ConnectorDash, gc as ConnectorDirection, gd as ConnectorEndpointAnchor, ag as ConnectorEndpoints, ah as ConnectorGeometry, ai as ConnectorHitGeometry, aj as ConnectorLabelDescriptor, ak as ConnectorMark, al as ConnectorRelationship, am as ConnectorRoute, an as ConnectorStroke, ao as ConnectorSubpath, ap as ConnectorTerminalLabelProjection, aq as ConnectorTerminalMarkerPlacement, ar as ConnectorTerminalMarkerProjection, as as ConnectorTerminalProjection, at as ConnectorTerminalStrokeLoss, ge as CoreSceneFeature, gf as CoreSceneOperation, gg as CoreScenePrimitive, gh as CoreSceneRole, gi as DEFAULTS, av as DefaultBackend, gj as DiagramColors, aB as DiamondFacet, gk as DocumentMark, gl as ESSENTIAL_SCENE_PRIMITIVE_CAPABILITIES, gm as ESSENTIAL_SCENE_PRIMITIVE_OPERATIONS, aC as EXACT_ROLE_STYLE_CONTRACT, aD as EXACT_STYLE_SCENE_ROLES, aE as EXTERNAL_SCENE_API_VERSION, aG as EdgeRouteCertificate, gn as EssentialScenePrimitiveCapability, go as EssentialScenePrimitiveOperation, aO as ExactStyleSceneRole, gp as ExtensionCollisionError, gq as ExtensionCompatibility, gr as ExtensionCompatibilityDecision, gs as ExtensionCompatibilityResolution, aP as ExtensionDiagramBody, aQ as ExtensionIdentity, gt as ExtensionProvenance, gu as ExtensionRegistration, aR as ExtensionValidDiagram, aT as ExternalSceneConnector, aU as ExternalSceneConnectorGeometry, aV as ExternalSceneConnectorLabel, aW as ExternalSceneContainer, aX as ExternalSceneDataMark, aY as ExternalSceneDocument, aZ as ExternalSceneGeometry, a_ as ExternalSceneInput, a$ as ExternalSceneMarker, b0 as ExternalSceneNode, b1 as ExternalSceneNodeBase, b2 as ExternalSceneShape, b3 as ExternalSceneText, bg as FamilyDetectionDiagnostic, bh as FamilyEdgeRouteCertificate, bo as FamilyRouteCertificate, gv as Geometry, gw as GitGraphBranch, gx as GitGraphCommit, gy as GitGraphCommitType, gz as GitGraphDiagram, gA as GitGraphDuplicateCommitError, gB as GitGraphParseError, gC as GitGraphRuntimeConfig, gD as GroupMark, bJ as HOSTED_FONT_RESOURCES, H as HostBackendPolicy, gE as HostBackendSelection, gF as HostedFontFace, gG as HostedFontResource, gH as JourneyRuntimeConfig, gI as KNOWN_EXTENSION_CONTRACT_VERSIONS, bQ as LayoutRouteCertificate, bR as LayoutRouteClass, bT as LibraryRenderTransport, bU as MAX_HOSTED_PNG_BYTES, bV as MAX_HOSTED_PNG_PIXELS, bW as MAX_PNG_FONT_DIRECTORIES, bX as MAX_PNG_FONT_DIRECTORY_LENGTH, bY as MAX_PNG_PIXELS, bZ as MAX_PNG_RASTER_DIMENSION, gJ as MarkPaint, b_ as MarkerDescriptor, gK as MarkerSerializationOptions, gL as MarkerShape, gM as MermaidBrowserPNGRenderer, gN as MermaidBrowserPNGRendererHostOptions, b$ as MermaidFamilyClassification, c0 as MermaidFamilyDetectionError, gO as MermaidGraph, gP as MermaidRenderer, gQ as MermaidRendererHostOptions, gR as MermaidRuntimeConfig, gS as MermaidThemeVariables, gT as MindmapDiagram, gU as MindmapDuplicateIdError, gV as MindmapNode, gW as MindmapParseError, gX as MindmapRuntimeConfig, gY as MindmapShape, c6 as NATIVE_PNG_HOST_ONLY_OPTION_FIELDS, c7 as NATIVE_PNG_OUTPUT_POLICY_FIELDS, gZ as NamespacedSceneRole, c8 as NativePngHostOnlyOptionField, c9 as NativePngOutputPolicyField, g_ as OUTPUT_COLOR_PROFILE, g$ as OUTPUT_SECURITY_POLICY_VERSION, h0 as OutputSecurityDiagnostic, h1 as OutputSecurityMode, h2 as OutputSecurityResult, cb as PNG_DEFAULT_FONT_FAMILY, cc as PNG_DEFAULT_SCALE, cd as PNG_FONT_SOURCES, ce as PNG_NAPI_RUNTIME, cf as PNG_OUTPUT_OPTION_FIELDS, cg as PNG_OUTPUT_OPTION_FIELD_DESCRIPTORS, ch as PNG_OUTPUT_POLICY_VERSION, ci as PNG_WASM_RUNTIME, cj as PORTABLE_PNG_OUTPUT_OPTION_FIELDS, ck as PRIMITIVE_REALIZATIONS, P as ParsedDiagram, h3 as ParsedDiagramFamilyMismatchError, h4 as PieRuntimeConfig, h5 as PngColorProfileReceipt, h6 as PngDimensions, cr as PngFitTo, cs as PngFontSource, ct as PngOutputOptionField, cu as PngOutputOptionFieldDescriptor, cv as PngOutputOptionInputKind, cw as PngOutputOptionPolicyState, cx as PngOutputOptionReceiptState, cy as PngOutputOptionScope, a as PngOutputPolicyInput, cz as PngRasterDimensions, c as PngRuntimeProvenance, cA as PortSemanticRole, cB as PortSide, cC as PortablePngOutputOptionField, cD as PortablePngOutputOptions, fX as PositionedDiagram, h7 as PositionedGitGraphDiagram, h8 as PositionedGraph, h9 as PositionedMindmapDiagram, cE as PreservedDiagramBody, cF as PreservedSourceSpans, cG as PreservedValidDiagram, ha as PrimitiveCapabilityClaim, hb as PrimitiveRealization, hc as QuadrantRuntimeConfig, cM as RENDER_CONTRACT_VERSION, cN as RENDER_OUTPUTS, cO as RENDER_OUTPUT_DESCRIPTORS, cP as RESOURCE_MANIFEST, cQ as RESOURCE_MANIFEST_VERSION, cR as ROLE_STYLE_PROPERTY_DESCRIPTORS, hd as RadarRuntimeConfig, cX as RegionContainmentCertificate, cY as RenderCapabilityError, he as RenderContext, R as RenderOptions, hf as RenderOutput, cZ as RenderOutputDescriptor, c_ as RenderOutputTransports, b as RenderRequestReceipt, hg as RenderableMarkerDescriptor, c$ as RenderedAscii, hh as RenderedBrowserPng, f$ as RenderedSvg, hi as ResolvedArchitectureIcon, hj as ResolvedColors, d5 as ResolvedPngOutputPolicy, hk as ResolvedSceneRoleTraits, d6 as ResolvedTerminalOutputPolicy, hl as ResolvedTerminalStyle, hm as ResourceLicense, hn as ResourceManifest, ho as ResourceManifestEntry, d8 as RoleStyleFor, d9 as RoleStyleSpec, da as RoleStyles, db as RouteBlocker, dc as RouteCertificate, dd as RouteClass, de as RoutePortAssignment, df as SCENE_CONTRACT_VERSION, dg as SCENE_ROLE_DESCRIPTORS, dh as SCENE_VALIDATION_LIMITS, di as SCENE_VALIDATION_VERSION, dj as SEMANTIC_BINDING_CHANNELS, dk as SHARED_RENDER_OPTION_FIELDS, dl as STYLE_COLOR_TOKEN_DESCRIPTORS, dm as STYLE_SPEC_FIELD_DESCRIPTORS, dn as STYLE_SPEC_FORMAT_VERSION, hp as SceneBox, hq as SceneConnectorHit, dp as SceneDoc, hr as SceneFeature, hs as SceneMarkKind, dq as SceneNode, ht as SceneNodeBase, hu as SceneOperation, hv as ScenePoint, hw as ScenePrimitive, dr as SceneRole, hx as SceneRoleDescriptor, hy as SceneRoleTraits, hz as SceneSketchPolicy, ds as SceneValidationDiagnostic, dt as SceneValidationDiagnosticCode, du as SceneValidationError, dv as SceneValidationOptions, dw as SceneValidationResult, dx as SemanticBinding, dy as SemanticBindingChannel, dz as SemanticChannels, dA as SemanticSlots, hA as ShapeMark, dM as SourceSpan, dN as SourceSpanPoint, hB as StateRuntimeConfig, dT as StyleBackend, dU as StyleBackendContext, dV as StyleColors, dW as StyleDescriptor, dX as StyleInput, dY as StyleReferenceResolution, dZ as StyleRegistrationOptions, hC as StyleRegistryKind, d_ as StyleSpec, hD as SvgRelationSemantics, hE as SvgSemanticAccessibility, hF as SvgSemanticIdentity, d$ as TERMINAL_BOUNDED_PADDING_X, e0 as TERMINAL_DEFAULT_BOX_BORDER_PADDING, e1 as TERMINAL_DEFAULT_PADDING_X, e2 as TERMINAL_DEFAULT_PADDING_Y, e3 as TERMINAL_OUTPUT_POLICY_VERSION, hG as TERMINAL_STYLE_VERSION, e4 as TEXT_MEASUREMENT_CONTRACT, hH as TerminalConnectorProjection, hI as TerminalConnectorProjectionReceipt, e5 as TerminalOutputPolicyError, e6 as TerminalOutputPolicyInput, hJ as TerminalProjectionDiagnostic, fY as TerminalProjectionDiagnosticCode, hK as TerminalProjectionSecurityContext, hL as TextMark, e7 as TextMeasurementContract, e8 as TextMeasurementInput, e9 as TextMeasurementResult, hM as TimelineRuntimeConfig, hN as XyChartRuntimeConfig, hO as applyOutputSecurityPolicy, hP as applyPngColorProfile, hQ as architectureIconManifest, hR as architectureToMermaidGraph, eV as assertHostedPngRasterBudget, eW as assertPngRasterBudget, hS as assertRenderableMarker, eX as assertValidSceneDoc, eY as buildExternalScene, hT as canonicalExtensionId, e_ as classifyMermaidFamilyFromFirstLine, hU as connectorHitDistance, e$ as createExtensionIdentity, hV as createMermaidBrowserPNGRenderer, hW as createMermaidRenderer, hX as essentialScenePrimitiveOperation, hY as evaluateExtensionCompatibility, hZ as fromShikiTheme, f5 as getBackend, f8 as getStyle, h_ as hitTestConnector, h$ as hitTestSceneConnectors, f9 as hostedFontResource, fa as inferBackend, i0 as inlineResolvedColors, i1 as inspectPngColorProfile, i2 as inspectPngDimensions, fd as knownBackendDescriptors, fg as knownStyleDescriptors, fh as knownStyles, fi as measureText, fj as measureTextWidth, fk as negotiateCapabilities, fl as negotiateRenderCapabilities, fm as normalizePortablePngBackground, fo as omitPngOutputOptions, i3 as parseArchitectureDiagram, i4 as parseExtensionId, i5 as parseGitGraph, i6 as parseMindmap, fp as parseRegisteredMermaid, fq as parseSemVer, fr as pngNapiRuntimeProvenance, fs as pngOutputOptionsJsonSchema, ft as pngRasterDimensions, fu as prepareSvgForPngRasterization, fv as projectNativePngOutputPolicyInput, fw as projectPortablePngOutputOptions, fx as registerBackend, i7 as registerExtension, fy as registerStyle, i8 as renderContractDigest, fZ as renderMermaidASCII, i9 as renderMermaidASCIIWithReceipt, ia as renderMermaidPNGInBrowserWithReceipt, f_ as renderMermaidSVG, ib as renderMermaidSVGAsync, ic as renderMermaidSVGWithReceipt, id as resolveArchitectureIcon, ie as resolveColors, ig as resolveDiagramColors, fz as resolvePngOutputPolicy, fA as resolvePortablePngOutputPolicy, fB as resolveSceneRoleTraits, fC as resolveStyleReference, fD as resolveStyleStack, fE as resolveTerminalOutputPolicy, fF as runBackendConformance, fG as sceneRoleTraits, fH as semVerSatisfies, ih as serializeGitGraph, ii as serializeMarkerResource, ij as serializeMarkerResources, ik as serializeMindmap, fI as sharedRenderOptionsJsonSchema, il as snapshotResourceManifest, fJ as styleInputJsonSchema, fK as styleSpecJsonSchema, fL as svgIntrinsicDimensions, fM as terminalConnectorCapabilityClaims, fO as validatePrimitiveCapabilities, fP as validateResourceManifest, fQ as validateSceneDoc, fR as validateSerializableRenderOptions, fS as validateStyleSpec, fT as verifyNoExternalRefs, fU as verifyResourceBytes, im as verifySvgDocumentEnvelope } from './index-BGA_-6LV.js';
package/dist/index.js CHANGED
@@ -164,7 +164,7 @@ import {
164
164
  verifyNoExternalRefs,
165
165
  verifyResourceBytes,
166
166
  verifySvgDocumentEnvelope
167
- } from "./chunk-3D4EHVQ4.js";
167
+ } from "./chunk-LCGBT32P.js";
168
168
  export {
169
169
  ARCHITECTURE_ICON_LIMITS,
170
170
  AsciiWidthError,
@@ -0,0 +1,17 @@
1
+ import {
2
+ MCP_CLI_HELP,
3
+ MCP_FLAG_SPECS,
4
+ parseMcpCliOptions,
5
+ runMcpCli
6
+ } from "./chunk-GGXCNCNA.js";
7
+ import "./chunk-JDMRPUAG.js";
8
+ import "./chunk-IVD4NXNE.js";
9
+ import "./chunk-RWMZRUIC.js";
10
+ import "./chunk-LCGBT32P.js";
11
+ export {
12
+ MCP_CLI_HELP,
13
+ MCP_FLAG_SPECS,
14
+ parseMcpCliOptions,
15
+ runMcpCli
16
+ };
17
+ //# sourceMappingURL=mcp-cli-4MLKC3ZH.js.map
@@ -0,0 +1,72 @@
1
+ # MCP directory listings
2
+
3
+ This file is the canonical, copy-ready registration record for Agentic
4
+ Mermaid's hosted MCP server. Update it whenever the endpoint, tool surface,
5
+ version, support contact, or directory status changes.
6
+
7
+ The root [`server.json`](../server.json) is the single official MCP Registry
8
+ authority. It covers both the npm package and hosted endpoint; do not publish a
9
+ second domain-namespaced record for the same server.
10
+
11
+ ## Canonical listing
12
+
13
+ | Field | Value |
14
+ |---|---|
15
+ | Name | Agentic Mermaid |
16
+ | Registry name | `io.github.adewale/agentic-mermaid` |
17
+ | Tagline | Render and safely edit Mermaid diagrams |
18
+ | Short description | Render, verify, describe, and safely edit Mermaid diagrams through MCP. |
19
+ | Endpoint | `https://agentic-mermaid.dev/mcp` |
20
+ | Transport | Streamable HTTP |
21
+ | Authentication | None |
22
+ | Website | `https://agentic-mermaid.dev/` |
23
+ | Repository | `https://github.com/adewale/agentic-mermaid` |
24
+ | Documentation | `https://agentic-mermaid.dev/docs/mcp/` |
25
+ | Privacy notice | `https://github.com/adewale/agentic-mermaid/blob/main/docs/MCP-PRIVACY.md` |
26
+ | Support | `adewale+mcp@gmail.com` |
27
+ | Icon | `https://agentic-mermaid.dev/favicon.svg` |
28
+ | Suggested categories | Design, Developer Tools, Productivity |
29
+
30
+ Long description:
31
+
32
+ > Agentic Mermaid gives agents a safe, structured way to create and work with
33
+ > Mermaid diagrams. Its hosted MCP server renders SVG, PNG, ASCII, and Unicode;
34
+ > verifies and describes diagrams; builds new diagrams; and applies typed,
35
+ > all-or-nothing edits that are verified before source is returned. Layout is
36
+ > deterministic, the public endpoint is stateless and unauthenticated, and a
37
+ > local CLI, library, and stdio MCP are available for sensitive or larger work.
38
+
39
+ ## Review prompts
40
+
41
+ 1. `Verify this diagram and report its detected family and warnings: flowchart TD\n API --> DB`
42
+ 2. `Render flowchart TD\n Start --> Done as SVG.`
43
+ 3. `Add a Failed node and an error edge from API to Failed, then return verified Mermaid source: flowchart TD\n Client --> API\n API --> DB`
44
+
45
+ Expected behavior: the first prompt uses `verify`, the second uses
46
+ `render_svg`, and the third uses `mutate` after discovering the flowchart
47
+ operation schema when necessary. The server must not claim semantic correctness
48
+ from `verify.ok` alone.
49
+
50
+ ## Directory record
51
+
52
+ | Directory | Registration input | Recorded status on 2026-07-30 |
53
+ |---|---|---|
54
+ | Official MCP Registry | Root [`server.json`](../server.json) | Active at version `0.4.0` |
55
+ | OpenAI Plugins | Endpoint plus canonical fields above | Account-gated submission; tool titles and privacy notice captured in this repository |
56
+ | Claude Connectors Directory | Endpoint plus canonical fields above | Account-gated Team/Enterprise submission; tool titles and privacy notice captured in this repository |
57
+ | Cursor Directory | Repository and endpoint | Not found in directory; account-gated submission remains |
58
+ | MCPServers.org | Name, short description, repository, category `Design`, support email | Submitted on 2026-07-30; review pending |
59
+ | PulseMCP | Official Registry ingestion | Listed as Agentic Mermaid |
60
+ | Smithery | Endpoint | Not found; account-gated submission remains |
61
+ | Glama | Repository or Official Registry entry | Listed and healthy; ownership claim remains optional |
62
+
63
+ ## Publication checks
64
+
65
+ - `tools/list` exposes a non-empty human-readable `title` and accurate safety
66
+ annotations for every tool.
67
+ - The hosted endpoint returns a successful MCP initialization and tool list.
68
+ - The privacy and support links are public.
69
+ - The root Registry manifest version matches the released package and hosted
70
+ server.
71
+ - Any directory-specific test prompts are run against the production endpoint
72
+ before publication.
@@ -0,0 +1,52 @@
1
+ # Agentic Mermaid hosted MCP privacy notice
2
+
3
+ Last updated: 2026-07-30
4
+
5
+ This notice covers the public Agentic Mermaid MCP endpoint at
6
+ `https://agentic-mermaid.dev/mcp`. It does not cover a local library, CLI, or
7
+ stdio MCP installation, where processing stays in the environment that runs
8
+ Agentic Mermaid.
9
+
10
+ ## Data the hosted endpoint processes
11
+
12
+ The endpoint processes the MCP request body that a client sends. Depending on
13
+ the selected tool, that can include Mermaid source, render options, structured
14
+ edit operations, or JavaScript submitted to the isolated `execute` tool.
15
+
16
+ No Agentic Mermaid account is required. The hosted service does not ask for a
17
+ name, email address, or payment information.
18
+
19
+ The hosting platform also processes ordinary connection and operational data,
20
+ such as an IP address, request timing, response status, and error information,
21
+ to deliver, protect, and troubleshoot the service.
22
+
23
+ ## How data is used
24
+
25
+ Request data is used only to perform the requested render, verification,
26
+ description, edit, build, or isolated execution and to operate and secure the
27
+ service. The `execute` sandbox has no network access.
28
+
29
+ Successful results from deterministic pure-compute tools may be reused in a
30
+ private server-side compute cache for up to 24 hours. `execute`, `mutate`, and
31
+ `build` bypass that cache. HTTP responses from `/mcp` carry `Cache-Control:
32
+ no-store`.
33
+
34
+ Do not submit secrets, personal data, confidential diagrams, or other sensitive
35
+ material to the public endpoint. Use the local library, CLI, or stdio MCP when
36
+ data must remain in your own environment.
37
+
38
+ ## Sharing and retention
39
+
40
+ Agentic Mermaid does not make submitted diagrams public. Infrastructure
41
+ providers may process request and operational data on behalf of the service.
42
+ Private compute-cache entries expire within 24 hours. Operational records are
43
+ retained only as needed to run, protect, and troubleshoot the service.
44
+
45
+ ## Your choices
46
+
47
+ You may avoid hosted processing entirely by installing `agentic-mermaid` and
48
+ using its library, CLI, or stdio MCP server locally. To ask a privacy question
49
+ or request help concerning hosted data, email
50
+ [adewale+mcp@gmail.com](mailto:adewale+mcp@gmail.com).
51
+
52
+ This notice may be updated when the hosted service or its data handling changes.
@@ -260,7 +260,7 @@ contract explicitly; no built-in compatibility default is borrowed by
260
260
  ```ts
261
261
  registerBackend(backend, {
262
262
  version: '1.0.0',
263
- compatibility: { core: '^0.3.0', scene: '^2.0.0' },
263
+ compatibility: { core: '^0.4.0', scene: '^2.0.0' },
264
264
  provenance: { owner: 'acme-diagrams', source: 'application-startup' },
265
265
  })
266
266
  ```
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "agentic-mermaid",
3
3
  "mcpName": "io.github.adewale/agentic-mermaid",
4
- "version": "0.3.2",
4
+ "version": "0.4.1",
5
5
  "license": "MIT",
6
6
  "description": "Agentic Mermaid: render, verify, and safely edit Mermaid diagrams as ASCII, PNG, SVG, or structured agent workflows — with composable styles (hand-drawn, excalidraw, watercolor, or your own as JSON).",
7
7
  "type": "module",
@@ -168,6 +168,17 @@
168
168
  "lint:contracts": "bun test src/__tests__/agent-substrate-lint.test.ts src/__tests__/test-quality-lint.test.ts",
169
169
  "eval:agent-live": "bun run eval/agent-usage/live.ts",
170
170
  "eval:agent-subagent": "bun run eval/agent-usage/capture-subagent-prompt-eval.ts",
171
+ "eval:mcp-conformance": "bun run scripts/ci/mcp-conformance.ts",
172
+ "eval:skill:hydrate": "bun run scripts/eval/hydrate-private-skill-evals.ts",
173
+ "eval:skill:runner-manifest": "bun run scripts/eval/materialize-skill-runner-manifest.ts",
174
+ "eval:skill:prepare-evidence": "bun run scripts/eval/prepare-skill-evidence.ts",
175
+ "eval:skill:run-codex-evidence": "bun run scripts/eval/run-codex-evidence.ts",
176
+ "eval:skill:bundle-evidence": "bun run scripts/eval/bundle-skill-evidence.ts",
177
+ "eval:skill:materialize-codex-output": "bun run scripts/eval/materialize-codex-output.ts",
178
+ "eval:skill:summarize-evidence": "bun run scripts/eval/summarize-skill-evidence.ts",
179
+ "eval:skill:sabotage": "bun run scripts/ci/skill-eval-sabotage.ts",
180
+ "eval:family-portfolio": "bun run eval/mermaid-family-portfolio/build.ts",
181
+ "eval:family-portfolio:check": "bun run eval/mermaid-family-portfolio/build.ts --check",
171
182
  "eval:degenerate-routes": "bun run eval/degenerate-etn/enumerate.ts",
172
183
  "rubric:visual": "bun run eval/visual-rubric/run.ts",
173
184
  "contact:sheet": "bun run eval/visual-rubric/contact-sheet.ts",
package/server.json CHANGED
@@ -7,13 +7,13 @@
7
7
  "url": "https://github.com/adewale/agentic-mermaid",
8
8
  "source": "github"
9
9
  },
10
- "version": "0.3.2",
10
+ "version": "0.4.1",
11
11
  "websiteUrl": "https://agentic-mermaid.dev/",
12
12
  "packages": [
13
13
  {
14
14
  "registryType": "npm",
15
15
  "identifier": "agentic-mermaid",
16
- "version": "0.3.2",
16
+ "version": "0.4.1",
17
17
  "runtimeHint": "npx",
18
18
  "runtimeArguments": [
19
19
  {