illustrator-mcp-server 1.3.2 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/README.ja.md +117 -8
  2. package/README.md +115 -7
  3. package/dist/bundle.cjs +300 -232
  4. package/dist/executor/file-transport.d.ts.map +1 -1
  5. package/dist/executor/file-transport.js +11 -1
  6. package/dist/executor/file-transport.js.map +1 -1
  7. package/dist/jsx/helpers/common.jsx +63 -6
  8. package/dist/tools/export/export-pdf.d.ts.map +1 -1
  9. package/dist/tools/export/export-pdf.js +2 -1
  10. package/dist/tools/export/export-pdf.js.map +1 -1
  11. package/dist/tools/export/export.d.ts.map +1 -1
  12. package/dist/tools/export/export.js +54 -3
  13. package/dist/tools/export/export.js.map +1 -1
  14. package/dist/tools/modify/align-objects.d.ts.map +1 -1
  15. package/dist/tools/modify/align-objects.js +4 -5
  16. package/dist/tools/modify/align-objects.js.map +1 -1
  17. package/dist/tools/modify/apply-color-profile.d.ts.map +1 -1
  18. package/dist/tools/modify/apply-color-profile.js +2 -1
  19. package/dist/tools/modify/apply-color-profile.js.map +1 -1
  20. package/dist/tools/modify/apply-graphic-style.d.ts.map +1 -1
  21. package/dist/tools/modify/apply-graphic-style.js +3 -2
  22. package/dist/tools/modify/apply-graphic-style.js.map +1 -1
  23. package/dist/tools/modify/apply-text-style.d.ts.map +1 -1
  24. package/dist/tools/modify/apply-text-style.js +3 -2
  25. package/dist/tools/modify/apply-text-style.js.map +1 -1
  26. package/dist/tools/modify/close-document.d.ts.map +1 -1
  27. package/dist/tools/modify/close-document.js +2 -1
  28. package/dist/tools/modify/close-document.js.map +1 -1
  29. package/dist/tools/modify/convert-to-outlines.d.ts.map +1 -1
  30. package/dist/tools/modify/convert-to-outlines.js +2 -1
  31. package/dist/tools/modify/convert-to-outlines.js.map +1 -1
  32. package/dist/tools/modify/create-crop-marks.d.ts.map +1 -1
  33. package/dist/tools/modify/create-crop-marks.js +34 -3
  34. package/dist/tools/modify/create-crop-marks.js.map +1 -1
  35. package/dist/tools/modify/create-document.d.ts.map +1 -1
  36. package/dist/tools/modify/create-document.js +2 -1
  37. package/dist/tools/modify/create-document.js.map +1 -1
  38. package/dist/tools/modify/create-ellipse.js +1 -1
  39. package/dist/tools/modify/create-gradient.d.ts.map +1 -1
  40. package/dist/tools/modify/create-gradient.js +2 -1
  41. package/dist/tools/modify/create-gradient.js.map +1 -1
  42. package/dist/tools/modify/create-line.js +1 -1
  43. package/dist/tools/modify/create-path-text.d.ts.map +1 -1
  44. package/dist/tools/modify/create-path-text.js +2 -1
  45. package/dist/tools/modify/create-path-text.js.map +1 -1
  46. package/dist/tools/modify/create-path.js +1 -1
  47. package/dist/tools/modify/create-rectangle.js +1 -1
  48. package/dist/tools/modify/create-text-frame.d.ts.map +1 -1
  49. package/dist/tools/modify/create-text-frame.js +4 -6
  50. package/dist/tools/modify/create-text-frame.js.map +1 -1
  51. package/dist/tools/modify/duplicate-objects.d.ts.map +1 -1
  52. package/dist/tools/modify/duplicate-objects.js +17 -3
  53. package/dist/tools/modify/duplicate-objects.js.map +1 -1
  54. package/dist/tools/modify/group-objects.d.ts.map +1 -1
  55. package/dist/tools/modify/group-objects.js +2 -1
  56. package/dist/tools/modify/group-objects.js.map +1 -1
  57. package/dist/tools/modify/manage-artboards.d.ts.map +1 -1
  58. package/dist/tools/modify/manage-artboards.js +9 -2
  59. package/dist/tools/modify/manage-artboards.js.map +1 -1
  60. package/dist/tools/modify/manage-datasets.d.ts.map +1 -1
  61. package/dist/tools/modify/manage-datasets.js +2 -1
  62. package/dist/tools/modify/manage-datasets.js.map +1 -1
  63. package/dist/tools/modify/manage-layers.d.ts.map +1 -1
  64. package/dist/tools/modify/manage-layers.js +2 -1
  65. package/dist/tools/modify/manage-layers.js.map +1 -1
  66. package/dist/tools/modify/manage-linked-images.d.ts.map +1 -1
  67. package/dist/tools/modify/manage-linked-images.js +2 -1
  68. package/dist/tools/modify/manage-linked-images.js.map +1 -1
  69. package/dist/tools/modify/manage-swatches.d.ts.map +1 -1
  70. package/dist/tools/modify/manage-swatches.js +2 -1
  71. package/dist/tools/modify/manage-swatches.js.map +1 -1
  72. package/dist/tools/modify/modify-object.d.ts.map +1 -1
  73. package/dist/tools/modify/modify-object.js +22 -17
  74. package/dist/tools/modify/modify-object.js.map +1 -1
  75. package/dist/tools/modify/move-to-layer.d.ts.map +1 -1
  76. package/dist/tools/modify/move-to-layer.js +2 -1
  77. package/dist/tools/modify/move-to-layer.js.map +1 -1
  78. package/dist/tools/modify/open-document.d.ts.map +1 -1
  79. package/dist/tools/modify/open-document.js +2 -1
  80. package/dist/tools/modify/open-document.js.map +1 -1
  81. package/dist/tools/modify/place-color-chips.d.ts.map +1 -1
  82. package/dist/tools/modify/place-color-chips.js +4 -5
  83. package/dist/tools/modify/place-color-chips.js.map +1 -1
  84. package/dist/tools/modify/place-image.d.ts.map +1 -1
  85. package/dist/tools/modify/place-image.js +5 -6
  86. package/dist/tools/modify/place-image.js.map +1 -1
  87. package/dist/tools/modify/place-style-guide.d.ts.map +1 -1
  88. package/dist/tools/modify/place-style-guide.js +4 -5
  89. package/dist/tools/modify/place-style-guide.js.map +1 -1
  90. package/dist/tools/modify/place-symbol.d.ts.map +1 -1
  91. package/dist/tools/modify/place-symbol.js +2 -1
  92. package/dist/tools/modify/place-symbol.js.map +1 -1
  93. package/dist/tools/modify/replace-color.d.ts.map +1 -1
  94. package/dist/tools/modify/replace-color.js +2 -1
  95. package/dist/tools/modify/replace-color.js.map +1 -1
  96. package/dist/tools/modify/resize-for-variation.d.ts.map +1 -1
  97. package/dist/tools/modify/resize-for-variation.js +4 -5
  98. package/dist/tools/modify/resize-for-variation.js.map +1 -1
  99. package/dist/tools/modify/save-document.d.ts.map +1 -1
  100. package/dist/tools/modify/save-document.js +2 -1
  101. package/dist/tools/modify/save-document.js.map +1 -1
  102. package/dist/tools/modify/select-objects.d.ts.map +1 -1
  103. package/dist/tools/modify/select-objects.js +2 -1
  104. package/dist/tools/modify/select-objects.js.map +1 -1
  105. package/dist/tools/modify/set-z-order.d.ts.map +1 -1
  106. package/dist/tools/modify/set-z-order.js +2 -1
  107. package/dist/tools/modify/set-z-order.js.map +1 -1
  108. package/dist/tools/modify/undo.d.ts.map +1 -1
  109. package/dist/tools/modify/undo.js +2 -1
  110. package/dist/tools/modify/undo.js.map +1 -1
  111. package/dist/tools/modify/ungroup-objects.d.ts.map +1 -1
  112. package/dist/tools/modify/ungroup-objects.js +2 -1
  113. package/dist/tools/modify/ungroup-objects.js.map +1 -1
  114. package/dist/tools/read/check-contrast.d.ts.map +1 -1
  115. package/dist/tools/read/check-contrast.js +14 -27
  116. package/dist/tools/read/check-contrast.js.map +1 -1
  117. package/dist/tools/read/convert-coordinate.d.ts.map +1 -1
  118. package/dist/tools/read/convert-coordinate.js +2 -1
  119. package/dist/tools/read/convert-coordinate.js.map +1 -1
  120. package/dist/tools/read/extract-design-tokens.d.ts.map +1 -1
  121. package/dist/tools/read/extract-design-tokens.js +2 -1
  122. package/dist/tools/read/extract-design-tokens.js.map +1 -1
  123. package/dist/tools/read/find-objects.d.ts.map +1 -1
  124. package/dist/tools/read/find-objects.js +3 -7
  125. package/dist/tools/read/find-objects.js.map +1 -1
  126. package/dist/tools/read/get-artboards.js +1 -1
  127. package/dist/tools/read/get-colors.d.ts.map +1 -1
  128. package/dist/tools/read/get-colors.js +2 -1
  129. package/dist/tools/read/get-colors.js.map +1 -1
  130. package/dist/tools/read/get-document-info.d.ts.map +1 -1
  131. package/dist/tools/read/get-document-info.js +2 -3
  132. package/dist/tools/read/get-document-info.js.map +1 -1
  133. package/dist/tools/read/get-document-structure.d.ts.map +1 -1
  134. package/dist/tools/read/get-document-structure.js +3 -7
  135. package/dist/tools/read/get-document-structure.js.map +1 -1
  136. package/dist/tools/read/get-effects.d.ts.map +1 -1
  137. package/dist/tools/read/get-effects.js +3 -7
  138. package/dist/tools/read/get-effects.js.map +1 -1
  139. package/dist/tools/read/get-groups.d.ts.map +1 -1
  140. package/dist/tools/read/get-groups.js +3 -7
  141. package/dist/tools/read/get-groups.js.map +1 -1
  142. package/dist/tools/read/get-guidelines.d.ts.map +1 -1
  143. package/dist/tools/read/get-guidelines.js +3 -7
  144. package/dist/tools/read/get-guidelines.js.map +1 -1
  145. package/dist/tools/read/get-images.d.ts.map +1 -1
  146. package/dist/tools/read/get-images.js +40 -13
  147. package/dist/tools/read/get-images.js.map +1 -1
  148. package/dist/tools/read/get-layers.js +1 -1
  149. package/dist/tools/read/get-overprint-info.d.ts.map +1 -1
  150. package/dist/tools/read/get-overprint-info.js +2 -3
  151. package/dist/tools/read/get-overprint-info.js.map +1 -1
  152. package/dist/tools/read/get-path-items.d.ts.map +1 -1
  153. package/dist/tools/read/get-path-items.js +11 -9
  154. package/dist/tools/read/get-path-items.js.map +1 -1
  155. package/dist/tools/read/get-separation-info.d.ts.map +1 -1
  156. package/dist/tools/read/get-separation-info.js +2 -3
  157. package/dist/tools/read/get-separation-info.js.map +1 -1
  158. package/dist/tools/read/get-symbols.d.ts.map +1 -1
  159. package/dist/tools/read/get-symbols.js +3 -7
  160. package/dist/tools/read/get-symbols.js.map +1 -1
  161. package/dist/tools/read/get-text-frame-detail.d.ts.map +1 -1
  162. package/dist/tools/read/get-text-frame-detail.js +2 -1
  163. package/dist/tools/read/get-text-frame-detail.js.map +1 -1
  164. package/dist/tools/read/list-fonts.d.ts.map +1 -1
  165. package/dist/tools/read/list-fonts.js +2 -1
  166. package/dist/tools/read/list-fonts.js.map +1 -1
  167. package/dist/tools/read/list-text-frames.d.ts.map +1 -1
  168. package/dist/tools/read/list-text-frames.js +3 -5
  169. package/dist/tools/read/list-text-frames.js.map +1 -1
  170. package/dist/tools/session.d.ts.map +1 -1
  171. package/dist/tools/session.js +5 -1
  172. package/dist/tools/session.js.map +1 -1
  173. package/dist/tools/utility/check-text-consistency.d.ts.map +1 -1
  174. package/dist/tools/utility/check-text-consistency.js +14 -20
  175. package/dist/tools/utility/check-text-consistency.js.map +1 -1
  176. package/dist/tools/utility/preflight-check.d.ts.map +1 -1
  177. package/dist/tools/utility/preflight-check.js +48 -20
  178. package/dist/tools/utility/preflight-check.js.map +1 -1
  179. package/dist/tools/utility/set-workflow.js +1 -1
  180. package/dist/tools/utility/set-workflow.js.map +1 -1
  181. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"file-transport.d.ts","sourceRoot":"","sources":["../../src/executor/file-transport.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAElD;AAED,wBAAgB,eAAe,IAAI,SAAS,CAW3C;AAED,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpF;AAED,wBAAsB,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjF;AAED,6BAA6B;AAC7B,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACjD,OAAO,CAAC,IAAI,CAAC,CAyBf;AAED,mCAAmC;AACnC,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACjD,OAAO,CAAC,IAAI,CAAC,CA6Bf;AAED,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAGrE;AAED,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAatE;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAOxC"}
1
+ {"version":3,"file":"file-transport.d.ts","sourceRoot":"","sources":["../../src/executor/file-transport.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAElD;AAED,wBAAgB,eAAe,IAAI,SAAS,CAW3C;AAED,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpF;AAED,wBAAsB,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjF;AAED,6BAA6B;AAC7B,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACjD,OAAO,CAAC,IAAI,CAAC,CAyBf;AAED,mCAAmC;AACnC,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACjD,OAAO,CAAC,IAAI,CAAC,CAwCf;AAED,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAGrE;AAED,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAatE;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAOxC"}
@@ -69,11 +69,21 @@ export async function writePowerShellScript(ps1Path, scriptPath, options) {
69
69
  ' }',
70
70
  ]
71
71
  : [];
72
+ // Illustrator 2026+ では COM の Visible プロパティが read-only のため、
73
+ // フォアグラウンド化には WScript.Shell の AppActivate を使う
74
+ const activateLines = options?.activate
75
+ ? [
76
+ ' try {',
77
+ ' $wsh = New-Object -ComObject "WScript.Shell"',
78
+ ' $wsh.AppActivate("Adobe Illustrator") | Out-Null',
79
+ ' } catch {}',
80
+ ]
81
+ : [];
72
82
  const lines = [
73
83
  'try {',
74
84
  ...launchLines,
75
85
  ' $ai = New-Object -ComObject "Illustrator.Application" -ErrorAction Stop',
76
- ...(options?.activate ? [' $ai.Visible = $true'] : []),
86
+ ...activateLines,
77
87
  ` $ai.DoJavaScript("$.evalFile(new File('${jsxPathEscaped}'))")`,
78
88
  '} catch {',
79
89
  ' Write-Error "Illustrator COM automation failed: $_"',
@@ -1 +1 @@
1
- {"version":3,"file":"file-transport.js","sourceRoot":"","sources":["../../src/executor/file-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-transport.js","sourceRoot":"","sources":["../../src/executor/file-transport.ts"],"names":[],"mappings":"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"}
@@ -114,17 +114,53 @@ function generateUUID() {
114
114
  return parts.join("-");
115
115
  }
116
116
 
117
+ // note フォーマット: "UUID" または "UUID::key=value::key=value"
118
+ // UUID 部分は先頭36文字で固定
119
+
120
+ function extractUUIDFromNote(note) {
121
+ if (!note || note.length < 36) return "";
122
+ var head = note.substring(0, 36);
123
+ if (head.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/)) {
124
+ return head;
125
+ }
126
+ return "";
127
+ }
128
+
129
+ function getNoteMeta(note, key) {
130
+ if (!note) return null;
131
+ var tag = "::" + key + "=";
132
+ var idx = note.indexOf(tag);
133
+ if (idx < 0) return null;
134
+ var start = idx + tag.length;
135
+ var end = note.indexOf("::", start);
136
+ return end < 0 ? note.substring(start) : note.substring(start, end);
137
+ }
138
+
139
+ function setNoteMeta(item, key, value) {
140
+ var note = "";
141
+ try { note = item.note || ""; } catch(e) { return; }
142
+ var tag = "::" + key + "=";
143
+ var idx = note.indexOf(tag);
144
+ if (idx >= 0) {
145
+ // 既存のキーを置換
146
+ var start = idx + tag.length;
147
+ var end = note.indexOf("::", start);
148
+ note = note.substring(0, idx) + tag + value + (end >= 0 ? note.substring(end) : "");
149
+ } else {
150
+ note = note + tag + value;
151
+ }
152
+ try { item.note = note; } catch(e) {}
153
+ }
154
+
117
155
  function ensureUUID(pageItem) {
118
156
  // note プロパティに UUID がなければ遅延割り当て
119
157
  var note = "";
120
158
  try { note = pageItem.note || ""; } catch(e) { /* note がないオブジェクトもある */ }
121
159
 
122
- // UUID パターンチェック(xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
123
- if (note.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/)) {
124
- return note;
125
- }
160
+ var uuid = extractUUIDFromNote(note);
161
+ if (uuid) return uuid;
126
162
 
127
- var uuid = generateUUID();
163
+ uuid = generateUUID();
128
164
  try {
129
165
  pageItem.note = uuid;
130
166
  } catch(e) {
@@ -393,7 +429,10 @@ function _indexContainer(container) {
393
429
  var item = container.pageItems[i];
394
430
  try {
395
431
  if (item.note && item.note.length > 0) {
396
- _uuidIndex[item.note] = item;
432
+ var uid = extractUUIDFromNote(item.note);
433
+ if (uid && !_uuidIndex[uid]) {
434
+ _uuidIndex[uid] = item;
435
+ }
397
436
  }
398
437
  } catch(e) {}
399
438
  try {
@@ -476,6 +515,21 @@ function iterateAllItems(container, callback) {
476
515
  * @param {Array} [artboardRect] - アートボード矩形(artboard-web時に必要)
477
516
  * @returns {Object} アイテムのスナップショット
478
517
  */
518
+ function checkArtboardBounds(item, artboardRect) {
519
+ if (!artboardRect) return null;
520
+ var gb = item.geometricBounds; // [left, top, right, bottom]
521
+ var abL = artboardRect[0], abT = artboardRect[1], abR = artboardRect[2], abB = artboardRect[3];
522
+ var itemL = gb[0], itemT = gb[1], itemR = gb[2], itemB = gb[3];
523
+ // fully inside
524
+ if (itemL >= abL && itemR <= abR && itemT <= abT && itemB >= abB) return null;
525
+ // fully outside
526
+ if (itemR <= abL || itemL >= abR || itemB >= abT || itemT <= abB) {
527
+ return "WARNING: This object is completely outside the artboard. It will not be visible in the final output. Check your coordinates — in artboard-web mode, (0,0) is the top-left of the artboard and Y increases downward.";
528
+ }
529
+ // partially outside
530
+ return "WARNING: This object extends beyond the artboard edges. Parts of it may be clipped in the final output.";
531
+ }
532
+
479
533
  function verifyItem(item, coordSystem, artboardRect) {
480
534
  var snap = {
481
535
  name: item.name || "",
@@ -505,6 +559,9 @@ function verifyItem(item, coordSystem, artboardRect) {
505
559
  snap.layer = getParentLayerName(item);
506
560
  snap.visible = item.hidden !== true;
507
561
 
562
+ var boundsWarning = checkArtboardBounds(item, artboardRect);
563
+ if (boundsWarning) snap.warning = boundsWarning;
564
+
508
565
  return snap;
509
566
  }
510
567
 
@@ -1 +1 @@
1
- {"version":3,"file":"export-pdf.d.ts","sourceRoot":"","sources":["../../../src/tools/export/export-pdf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAkRpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAyChD"}
1
+ {"version":3,"file":"export-pdf.d.ts","sourceRoot":"","sources":["../../../src/tools/export/export-pdf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmRpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAyChD"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { executeJsxHeavy } from '../../executor/jsx-runner.js';
3
+ import { formatToolResult } from '../tool-executor.js';
3
4
  import { WRITE_IDEMPOTENT_ANNOTATIONS, coerceBoolean } from '../modify/shared.js';
4
5
  /**
5
6
  * export_pdf — PDF 書き出し
@@ -305,7 +306,7 @@ export function register(server) {
305
306
  ...result,
306
307
  _note: 'PDF exported. This file should be verified by a human before final print submission — automated checks cannot catch all print-critical issues.',
307
308
  };
308
- return { content: [{ type: 'text', text: JSON.stringify(output, null, 2) }] };
309
+ return formatToolResult(output);
309
310
  });
310
311
  }
311
312
  //# sourceMappingURL=export-pdf.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"export-pdf.js","sourceRoot":"","sources":["../../../src/tools/export/export-pdf.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export-pdf.js","sourceRoot":"","sources":["../../../src/tools/export/export-pdf.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../../src/tools/export/export.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA+RpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+ChD"}
1
+ {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../../src/tools/export/export.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAkSpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkGhD"}
@@ -1,5 +1,8 @@
1
1
  import { z } from 'zod';
2
+ import { realpathSync, existsSync, readFileSync } from 'node:fs';
3
+ import { dirname, basename, join } from 'node:path';
2
4
  import { executeJsxHeavy } from '../../executor/jsx-runner.js';
5
+ import { formatToolResult } from '../tool-executor.js';
3
6
  import { WRITE_IDEMPOTENT_ANNOTATIONS, coerceBoolean } from '../modify/shared.js';
4
7
  /**
5
8
  * export — SVG/PNG/JPG/WebP 書き出し
@@ -286,7 +289,7 @@ if (preflight) {
286
289
  export function register(server) {
287
290
  server.registerTool('export', {
288
291
  title: 'Export',
289
- description: 'Export objects, groups, artboards, or selection. Note: Illustrator will be activated (brought to foreground) during execution.',
292
+ description: 'Export objects, groups, artboards, or selection. For PNG/JPG, the exported image is returned as base64 in the response — you can view it directly without reading the file from disk. Note: Illustrator will be activated (brought to foreground) during execution.',
290
293
  inputSchema: {
291
294
  target: z
292
295
  .string()
@@ -323,8 +326,56 @@ export function register(server) {
323
326
  },
324
327
  annotations: WRITE_IDEMPOTENT_ANNOTATIONS,
325
328
  }, async (params) => {
326
- const result = await executeJsxHeavy(jsxCode, params);
327
- return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
329
+ // macOS /tmp /private/tmp へのシンボリックリンク。
330
+ // Illustrator exportFile() はシンボリックリンク経由のパスに書き込めない場合があるため、
331
+ // Node.js 側で実パスに解決してから渡す。
332
+ const resolvedParams = { ...params };
333
+ if (resolvedParams.output_path) {
334
+ const dir = dirname(resolvedParams.output_path);
335
+ if (existsSync(dir)) {
336
+ try {
337
+ const realDir = realpathSync(dir);
338
+ resolvedParams.output_path = join(realDir, basename(resolvedParams.output_path));
339
+ }
340
+ catch (_) { /* 解決できなければ元のパスをそのまま使う */ }
341
+ }
342
+ }
343
+ const result = await executeJsxHeavy(jsxCode, resolvedParams);
344
+ const textResult = formatToolResult(result);
345
+ // PNG/JPG: ファイルを読み込んでbase64画像としても返す
346
+ if (result &&
347
+ typeof result === 'object' &&
348
+ result.success &&
349
+ result.output_path &&
350
+ (params.format === 'png' || params.format === 'jpg')) {
351
+ const outputPath = result.output_path;
352
+ try {
353
+ if (existsSync(outputPath)) {
354
+ const imageData = readFileSync(outputPath).toString('base64');
355
+ const mimeType = params.format === 'png' ? 'image/png' : 'image/jpeg';
356
+ const visualCheckNote = {
357
+ type: 'text',
358
+ text: JSON.stringify({
359
+ visual_check_hint: 'Now review the exported image visually — not just numerically. ' +
360
+ 'Text alignment can look off even when coordinates are mathematically correct, ' +
361
+ 'because bounding boxes include invisible padding. ' +
362
+ 'If text appears misaligned, adjust by visual impression rather than exact numbers.',
363
+ }),
364
+ };
365
+ return {
366
+ content: [
367
+ ...textResult.content,
368
+ visualCheckNote,
369
+ { type: 'image', data: imageData, mimeType },
370
+ ],
371
+ };
372
+ }
373
+ }
374
+ catch {
375
+ // 画像読み込みに失敗してもテキスト結果は返す
376
+ }
377
+ }
378
+ return textResult;
328
379
  });
329
380
  }
330
381
  //# sourceMappingURL=export.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../src/tools/export/export.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../src/tools/export/export.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"align-objects.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/align-objects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgLpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkChD"}
1
+ {"version":3,"file":"align-objects.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/align-objects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA8KpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgChD"}
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { executeJsx } from '../../executor/jsx-runner.js';
3
- import { coordinateSystemSchema, resolveCoordinateSystem, } from '../session.js';
2
+ import { executeToolJsx } from '../tool-executor.js';
3
+ import { coordinateSystemSchema } from '../session.js';
4
4
  import { WRITE_ANNOTATIONS } from './shared.js';
5
5
  /**
6
6
  * align_objects — オブジェクトの整列・均等配置
@@ -155,6 +155,7 @@ if (preflight) {
155
155
  }
156
156
  writeResultFile(RESULT_PATH, {
157
157
  success: true,
158
+ coordinateSystem: coordSystem,
158
159
  alignedCount: items.length,
159
160
  alignment: alignment || null,
160
161
  distribute: distribute,
@@ -194,9 +195,7 @@ export function register(server) {
194
195
  },
195
196
  annotations: WRITE_ANNOTATIONS,
196
197
  }, async (params) => {
197
- const resolvedParams = { ...params, coordinate_system: await resolveCoordinateSystem(params.coordinate_system) };
198
- const result = await executeJsx(jsxCode, resolvedParams);
199
- return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
198
+ return executeToolJsx(jsxCode, params, { resolveCoordinate: true });
200
199
  });
201
200
  }
202
201
  //# sourceMappingURL=align-objects.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"align-objects.js","sourceRoot":"","sources":["../../../src/tools/modify/align-objects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD;;;GAGG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiKf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,yDAAyD;QACtE,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;iBACL,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,CAAC,uCAAuC,CAAC;YACpD,SAAS,EAAE,CAAC;iBACT,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;iBAChE,QAAQ,EAAE;iBACV,QAAQ,CAAC,qBAAqB,CAAC;YAClC,UAAU,EAAE,CAAC;iBACV,IAAI,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;iBAChC,QAAQ,EAAE;iBACV,QAAQ,CAAC,2BAA2B,CAAC;YACxC,SAAS,EAAE,CAAC;iBACT,IAAI,CAAC,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;iBAC/B,QAAQ,EAAE;iBACV,OAAO,CAAC,WAAW,CAAC;iBACpB,QAAQ,CAAC,6DAA6D,CAAC;YAC1E,iBAAiB,EAAE,sBAAsB;SAC1C;QACD,WAAW,EAAE,iBAAiB;KAC/B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,cAAc,GAAG,EAAE,GAAG,MAAM,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACjH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACzD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"align-objects.js","sourceRoot":"","sources":["../../../src/tools/modify/align-objects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD;;;GAGG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkKf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,yDAAyD;QACtE,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;iBACL,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,CAAC,uCAAuC,CAAC;YACpD,SAAS,EAAE,CAAC;iBACT,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;iBAChE,QAAQ,EAAE;iBACV,QAAQ,CAAC,qBAAqB,CAAC;YAClC,UAAU,EAAE,CAAC;iBACV,IAAI,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;iBAChC,QAAQ,EAAE;iBACV,QAAQ,CAAC,2BAA2B,CAAC;YACxC,SAAS,EAAE,CAAC;iBACT,IAAI,CAAC,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;iBAC/B,QAAQ,EAAE;iBACV,OAAO,CAAC,WAAW,CAAC;iBACpB,QAAQ,CAAC,6DAA6D,CAAC;YAC1E,iBAAiB,EAAE,sBAAsB;SAC1C;QACD,WAAW,EAAE,iBAAiB;KAC/B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,OAAO,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"apply-color-profile.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/apply-color-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA0DpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgBhD"}
1
+ {"version":3,"file":"apply-color-profile.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/apply-color-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA2DpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgBhD"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { executeJsx } from '../../executor/jsx-runner.js';
3
+ import { formatToolResult } from '../tool-executor.js';
3
4
  import { DESTRUCTIVE_ANNOTATIONS } from './shared.js';
4
5
  /**
5
6
  * assign_color_profile — カラープロファイルの割り当て
@@ -63,7 +64,7 @@ export function register(server) {
63
64
  annotations: DESTRUCTIVE_ANNOTATIONS,
64
65
  }, async (params) => {
65
66
  const result = await executeJsx(jsxCode, params, { activate: true });
66
- return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
67
+ return formatToolResult(result);
67
68
  });
68
69
  }
69
70
  //# sourceMappingURL=apply-color-profile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"apply-color-profile.js","sourceRoot":"","sources":["../../../src/tools/modify/apply-color-profile.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD;;;;GAIG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Cf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,gSAAgS;QAC7S,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;SAC3D;QACD,WAAW,EAAE,uBAAuB;KACrC,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"apply-color-profile.js","sourceRoot":"","sources":["../../../src/tools/modify/apply-color-profile.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD;;;;GAIG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Cf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,gSAAgS;QAC7S,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;SAC3D;QACD,WAAW,EAAE,uBAAuB;KACrC,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"apply-graphic-style.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/apply-graphic-style.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAkFpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAoChD"}
1
+ {"version":3,"file":"apply-graphic-style.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/apply-graphic-style.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmFpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAoChD"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { executeJsx } from '../../executor/jsx-runner.js';
3
+ import { formatToolResult } from '../tool-executor.js';
3
4
  import { READ_ANNOTATIONS, WRITE_ANNOTATIONS, coerceBoolean } from './shared.js';
4
5
  /**
5
6
  * apply_graphic_style / list_graphic_styles
@@ -91,7 +92,7 @@ export function register(server) {
91
92
  annotations: WRITE_ANNOTATIONS,
92
93
  }, async (params) => {
93
94
  const result = await executeJsx(applyJsxCode, params, { activate: true });
94
- return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
95
+ return formatToolResult(result);
95
96
  });
96
97
  server.registerTool('list_graphic_styles', {
97
98
  title: 'List Graphic Styles',
@@ -100,7 +101,7 @@ export function register(server) {
100
101
  annotations: READ_ANNOTATIONS,
101
102
  }, async (params) => {
102
103
  const result = await executeJsx(listJsxCode, params);
103
- return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
104
+ return formatToolResult(result);
104
105
  });
105
106
  }
106
107
  //# sourceMappingURL=apply-graphic-style.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"apply-graphic-style.js","sourceRoot":"","sources":["../../../src/tools/modify/apply-graphic-style.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjF;;;;;;;;;;GAUG;AACH,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8CpB,CAAC;AAEF,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;CAgBnB,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EACT,iHAAiH;QACnH,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YACrE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YACrE,KAAK,EAAE,aAAa;iBACjB,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CAAC,wDAAwD,CAAC;SACtE;QACD,WAAW,EAAE,iBAAiB;KAC/B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,iDAAiD;QAC9D,WAAW,EAAE,EAAE;QACf,WAAW,EAAE,gBAAgB;KAC9B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACrD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"apply-graphic-style.js","sourceRoot":"","sources":["../../../src/tools/modify/apply-graphic-style.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjF;;;;;;;;;;GAUG;AACH,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8CpB,CAAC;AAEF,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;CAgBnB,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EACT,iHAAiH;QACnH,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YACrE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YACrE,KAAK,EAAE,aAAa;iBACjB,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CAAC,wDAAwD,CAAC;SACtE;QACD,WAAW,EAAE,iBAAiB;KAC/B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,iDAAiD;QAC9D,WAAW,EAAE,EAAE;QACf,WAAW,EAAE,gBAAgB;KAC9B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACrD,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"apply-text-style.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/apply-text-style.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA6FpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqChD"}
1
+ {"version":3,"file":"apply-text-style.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/apply-text-style.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA8FpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqChD"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { executeJsx } from '../../executor/jsx-runner.js';
3
+ import { formatToolResult } from '../tool-executor.js';
3
4
  import { READ_ANNOTATIONS, WRITE_ANNOTATIONS, coerceBoolean } from './shared.js';
4
5
  /**
5
6
  * apply_text_style / list_text_styles
@@ -103,7 +104,7 @@ export function register(server) {
103
104
  annotations: WRITE_ANNOTATIONS,
104
105
  }, async (params) => {
105
106
  const result = await executeJsx(applyJsxCode, params, { activate: true });
106
- return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
107
+ return formatToolResult(result);
107
108
  });
108
109
  server.registerTool('list_text_styles', {
109
110
  title: 'List Text Styles',
@@ -112,7 +113,7 @@ export function register(server) {
112
113
  annotations: READ_ANNOTATIONS,
113
114
  }, async (params) => {
114
115
  const result = await executeJsx(listJsxCode, params);
115
- return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
116
+ return formatToolResult(result);
116
117
  });
117
118
  }
118
119
  //# sourceMappingURL=apply-text-style.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"apply-text-style.js","sourceRoot":"","sources":["../../../src/tools/modify/apply-text-style.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjF;;;;;;;;;;GAUG;AACH,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDpB,CAAC;AAEF,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;CAuBnB,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,qIAAqI;QACvI,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YACnD,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YACjF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YACpD,eAAe,EAAE,aAAa;iBAC3B,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CAAC,qDAAqD,CAAC;SACnE;QACD,WAAW,EAAE,iBAAiB;KAC/B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,iEAAiE;QAC9E,WAAW,EAAE,EAAE;QACf,WAAW,EAAE,gBAAgB;KAC9B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACrD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"apply-text-style.js","sourceRoot":"","sources":["../../../src/tools/modify/apply-text-style.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjF;;;;;;;;;;GAUG;AACH,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDpB,CAAC;AAEF,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;CAuBnB,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,qIAAqI;QACvI,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YACnD,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YACjF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YACpD,eAAe,EAAE,aAAa;iBAC3B,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CAAC,qDAAqD,CAAC;SACnE;QACD,WAAW,EAAE,iBAAiB;KAC/B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,iEAAiE;QAC9E,WAAW,EAAE,EAAE;QACf,WAAW,EAAE,gBAAgB;KAC9B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACrD,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"close-document.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/close-document.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgCpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqBhD"}
1
+ {"version":3,"file":"close-document.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/close-document.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAiCpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqBhD"}
@@ -1,4 +1,5 @@
1
1
  import { executeJsx } from '../../executor/jsx-runner.js';
2
+ import { formatToolResult } from '../tool-executor.js';
2
3
  import { invalidateAutoDetectCache } from '../session.js';
3
4
  import { DESTRUCTIVE_ANNOTATIONS, coerceBoolean } from './shared.js';
4
5
  /**
@@ -40,7 +41,7 @@ export function register(server) {
40
41
  }, async (params) => {
41
42
  const result = await executeJsx(jsxCode, params, { activate: true });
42
43
  invalidateAutoDetectCache();
43
- return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
44
+ return formatToolResult(result);
44
45
  });
45
46
  }
46
47
  //# sourceMappingURL=close-document.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"close-document.js","sourceRoot":"","sources":["../../../src/tools/modify/close-document.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAErE;;;GAGG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;CAoBf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,gBAAgB;QACvB,WAAW,EACT,sHAAsH;QACxH,WAAW,EAAE;YACX,IAAI,EAAE,aAAa;iBAChB,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CAAC,iDAAiD,CAAC;SAC/D;QACD,WAAW,EAAE,uBAAuB;KACrC,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,yBAAyB,EAAE,CAAC;QAC5B,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"close-document.js","sourceRoot":"","sources":["../../../src/tools/modify/close-document.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAErE;;;GAGG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;CAoBf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,gBAAgB;QACvB,WAAW,EACT,sHAAsH;QACxH,WAAW,EAAE;YACX,IAAI,EAAE,aAAa;iBAChB,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CAAC,iDAAiD,CAAC;SAC/D;QACD,WAAW,EAAE,uBAAuB;KACrC,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,yBAAyB,EAAE,CAAC;QAC5B,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"convert-to-outlines.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/convert-to-outlines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmEpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkBhD"}
1
+ {"version":3,"file":"convert-to-outlines.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/convert-to-outlines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAoEpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkBhD"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { executeJsx } from '../../executor/jsx-runner.js';
3
+ import { formatToolResult } from '../tool-executor.js';
3
4
  import { DESTRUCTIVE_ANNOTATIONS } from './shared.js';
4
5
  /**
5
6
  * convert_to_outlines — テキストのアウトライン化
@@ -74,7 +75,7 @@ export function register(server) {
74
75
  annotations: DESTRUCTIVE_ANNOTATIONS,
75
76
  }, async (params) => {
76
77
  const result = await executeJsx(jsxCode, params, { activate: true });
77
- return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
78
+ return formatToolResult(result);
78
79
  });
79
80
  }
80
81
  //# sourceMappingURL=convert-to-outlines.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"convert-to-outlines.js","sourceRoot":"","sources":["../../../src/tools/modify/convert-to-outlines.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD;;;GAGG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwDf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,yGAAyG;QACtH,WAAW,EAAE;YACX,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,CAAC,iEAAiE,CAAC;SAC/E;QACD,WAAW,EAAE,uBAAuB;KACrC,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"convert-to-outlines.js","sourceRoot":"","sources":["../../../src/tools/modify/convert-to-outlines.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD;;;GAGG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwDf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,yGAAyG;QACtH,WAAW,EAAE;YACX,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,CAAC,iEAAiE,CAAC;SAC/E;QACD,WAAW,EAAE,uBAAuB;KACrC,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"create-crop-marks.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/create-crop-marks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA4LpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkDhD"}
1
+ {"version":3,"file":"create-crop-marks.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/create-crop-marks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAoMpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAyEhD"}
@@ -1,6 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { executeToolJsx } from '../tool-executor.js';
3
3
  import { WRITE_ANNOTATIONS } from './shared.js';
4
+ import { resolveCoordinateSystem } from '../session.js';
4
5
  /**
5
6
  * create_crop_marks — トリムマーク(トンボ)の作成
6
7
  *
@@ -156,6 +157,12 @@ if (preflight) {
156
157
  detectionMethod = "detected from Illustrator locale";
157
158
  }
158
159
 
160
+ var bleedNote = "ACTION REQUIRED — Bleed (塗り足し): You MUST do this now, without asking the user. " +
161
+ "Step 1: Call get_artboards to get the current artboard bounds — this tells you where the trim line is. " +
162
+ "Step 2: Call find_objects to list all design objects (exclude the crop mark groups). Compare each object's bounds against the trim line (the original artboard rectangle BEFORE it was expanded for crop marks — size was " + abWidth + " × " + abHeight + " pt). " +
163
+ "Step 3: For every object whose edge touches or nearly touches the trim line, use modify_object to extend that edge outward by at least 3 mm (8.5 pt). Do NOT move or scale the design — just stretch the touching edge outward. For background rectangles, extend all four sides. " +
164
+ "Why: The trim marks show where the paper is physically cut. If an object stops at the trim line, cutting produces a white gap. Extending past ensures full bleed coverage.";
165
+
159
166
  writeResultFile(RESULT_PATH, {
160
167
  success: true,
161
168
  mode: "artboard",
@@ -171,9 +178,10 @@ if (preflight) {
171
178
  width: newAbRect[2] - newAbRect[0],
172
179
  height: newAbRect[1] - newAbRect[3]
173
180
  },
181
+ bleed_required: bleedNote,
174
182
  description: (resolvedStyle === "japanese")
175
- ? "Japanese crop marks created. Artboard expanded to include all marks."
176
- : "Western crop marks created. Artboard expanded to include all marks."
183
+ ? "Japanese crop marks created. Artboard expanded to include all marks. See bleed_required for next steps."
184
+ : "Western crop marks created. Artboard expanded to include all marks. See bleed_required for next steps."
177
185
  });
178
186
  }
179
187
  }
@@ -220,7 +228,30 @@ export function register(server) {
220
228
  },
221
229
  annotations: WRITE_ANNOTATIONS,
222
230
  }, async (params) => {
223
- return executeToolJsx(jsxCode, params, { activate: true });
231
+ const result = await executeToolJsx(jsxCode, params, { activate: true });
232
+ // Inject active coordinate system into the response for the bleed note
233
+ const coordSystem = await resolveCoordinateSystem(undefined);
234
+ const coordNote = coordSystem === 'document'
235
+ ? 'document (Y-up, origin at bottom-left)'
236
+ : 'artboard-web (Y-down, origin at top-left)';
237
+ for (const item of result.content) {
238
+ if (item.type === 'text') {
239
+ try {
240
+ const parsed = JSON.parse(item.text);
241
+ if (parsed.bleed_required) {
242
+ parsed.activeCoordinateSystem = coordSystem;
243
+ parsed.bleed_required =
244
+ `NOTE: The active coordinate system is ${coordNote}. All tools (get_artboards, find_objects, modify_object) use this system. ` +
245
+ parsed.bleed_required;
246
+ item.text = JSON.stringify(parsed);
247
+ }
248
+ }
249
+ catch {
250
+ // not JSON, skip
251
+ }
252
+ }
253
+ }
254
+ return result;
224
255
  });
225
256
  }
226
257
  //# sourceMappingURL=create-crop-marks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-crop-marks.js","sourceRoot":"","sources":["../../../src/tools/modify/create-crop-marks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgKf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,KAAK,EAAE,yBAAyB;QAChC,WAAW,EACT,mFAAmF;YACnF,4FAA4F;YAC5F,8GAA8G;YAC9G,0FAA0F;YAC1F,+EAA+E;QACjF,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;iBACL,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;iBACrC,QAAQ,EAAE;iBACV,OAAO,CAAC,MAAM,CAAC;iBACf,QAAQ,CACP,sFAAsF;gBACtF,0CAA0C;gBAC1C,8DAA8D,CAC/D;YACH,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,gHAAgH;gBAChH,mEAAmE;gBACnE,8DAA8D,CAC/D;YACH,aAAa,EAAE,CAAC;iBACb,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CACP,2FAA2F;gBAC3F,8GAA8G,CAC/G;YACH,cAAc,EAAE,CAAC;iBACd,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,EAAE;iBACV,QAAQ,CAAC,iHAAiH,CAAC;SAC/H;QACD,WAAW,EAAE,iBAAiB;KAC/B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,OAAO,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"create-crop-marks.js","sourceRoot":"","sources":["../../../src/tools/modify/create-crop-marks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuKf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,KAAK,EAAE,yBAAyB;QAChC,WAAW,EACT,mFAAmF;YACnF,4FAA4F;YAC5F,8GAA8G;YAC9G,0FAA0F;YAC1F,+EAA+E;QACjF,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;iBACL,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;iBACrC,QAAQ,EAAE;iBACV,OAAO,CAAC,MAAM,CAAC;iBACf,QAAQ,CACP,sFAAsF;gBACtF,0CAA0C;gBAC1C,8DAA8D,CAC/D;YACH,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,gHAAgH;gBAChH,mEAAmE;gBACnE,8DAA8D,CAC/D;YACH,aAAa,EAAE,CAAC;iBACb,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CACP,2FAA2F;gBAC3F,8GAA8G,CAC/G;YACH,cAAc,EAAE,CAAC;iBACd,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,EAAE;iBACV,QAAQ,CAAC,iHAAiH,CAAC;SAC/H;QACD,WAAW,EAAE,iBAAiB;KAC/B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,uEAAuE;QACvE,MAAM,WAAW,GAAG,MAAM,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAC7D,MAAM,SAAS,GACb,WAAW,KAAK,UAAU;YACxB,CAAC,CAAC,wCAAwC;YAC1C,CAAC,CAAC,2CAA2C,CAAC;QAClD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrC,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;wBAC1B,MAAM,CAAC,sBAAsB,GAAG,WAAW,CAAC;wBAC5C,MAAM,CAAC,cAAc;4BACnB,yCAAyC,SAAS,4EAA4E;gCAC9H,MAAM,CAAC,cAAc,CAAC;wBACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBACrC,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,iBAAiB;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"create-document.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/create-document.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAyCpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgChD"}
1
+ {"version":3,"file":"create-document.d.ts","sourceRoot":"","sources":["../../../src/tools/modify/create-document.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA0CpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgChD"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { executeJsx } from '../../executor/jsx-runner.js';
3
+ import { formatToolResult } from '../tool-executor.js';
3
4
  import { invalidateAutoDetectCache } from '../session.js';
4
5
  import { WRITE_ANNOTATIONS } from './shared.js';
5
6
  /**
@@ -61,7 +62,7 @@ export function register(server) {
61
62
  }, async (params) => {
62
63
  const result = await executeJsx(jsxCode, params, { activate: true });
63
64
  invalidateAutoDetectCache();
64
- return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
65
+ return formatToolResult(result);
65
66
  });
66
67
  }
67
68
  //# sourceMappingURL=create-document.js.map