@wonderwhy-er/desktop-commander 0.2.37 → 0.2.39

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 (383) hide show
  1. package/README.md +290 -100
  2. package/dist/command-manager.js +6 -3
  3. package/dist/config-field-definitions.d.ts +41 -0
  4. package/dist/config-field-definitions.js +37 -0
  5. package/dist/config-manager.d.ts +2 -0
  6. package/dist/config-manager.js +22 -2
  7. package/dist/handlers/filesystem-handlers.d.ts +5 -0
  8. package/dist/handlers/filesystem-handlers.js +19 -12
  9. package/dist/remote-device/desktop-commander-integration.js +1 -1
  10. package/dist/remote-device/remote-channel.js +1 -1
  11. package/dist/search-manager.js +31 -38
  12. package/dist/server.js +11 -4
  13. package/dist/terminal-manager.js +4 -2
  14. package/dist/tools/config.d.ts +71 -0
  15. package/dist/tools/config.js +117 -2
  16. package/dist/tools/edit.js +34 -1
  17. package/dist/tools/filesystem.js +91 -3
  18. package/dist/tools/improved-process-tools.js +2 -1
  19. package/dist/tools/schemas.d.ts +3 -0
  20. package/dist/tools/schemas.js +1 -0
  21. package/dist/types.d.ts +0 -1
  22. package/dist/ui/config-editor/app.d.ts +43 -0
  23. package/dist/ui/config-editor/app.js +840 -0
  24. package/dist/ui/config-editor/array-modal.d.ts +19 -0
  25. package/dist/ui/config-editor/array-modal.js +185 -0
  26. package/dist/ui/config-editor/config-editor-runtime.js +150 -0
  27. package/dist/ui/config-editor/index.html +13 -0
  28. package/dist/ui/config-editor/main.js +2 -0
  29. package/dist/ui/config-editor/src/App.d.ts +43 -0
  30. package/dist/ui/config-editor/src/App.js +840 -0
  31. package/dist/ui/config-editor/src/array-modal.d.ts +19 -0
  32. package/dist/ui/config-editor/src/array-modal.js +185 -0
  33. package/dist/ui/config-editor/src/components/layout.d.ts +4 -0
  34. package/dist/ui/config-editor/src/components/layout.js +83 -0
  35. package/dist/ui/config-editor/src/components/toolbar.d.ts +1 -0
  36. package/dist/ui/config-editor/src/components/toolbar.js +21 -0
  37. package/dist/ui/config-editor/src/config-values.d.ts +6 -0
  38. package/dist/ui/config-editor/src/config-values.js +61 -0
  39. package/dist/ui/config-editor/src/contracts.d.ts +14 -0
  40. package/dist/ui/config-editor/src/contracts.js +3 -0
  41. package/dist/ui/config-editor/src/directory-browser.d.ts +6 -0
  42. package/dist/ui/config-editor/src/directory-browser.js +71 -0
  43. package/dist/ui/config-editor/src/layout.d.ts +5 -0
  44. package/dist/ui/config-editor/src/layout.js +90 -0
  45. package/dist/ui/config-editor/src/main.js +2 -0
  46. package/dist/ui/config-editor/src/parsing.d.ts +5 -0
  47. package/dist/ui/config-editor/src/parsing.js +50 -0
  48. package/dist/ui/config-editor/src/toolbar.d.ts +1 -0
  49. package/dist/ui/config-editor/src/toolbar.js +18 -0
  50. package/dist/ui/config-editor/src/types.d.ts +17 -0
  51. package/dist/ui/config-editor/src/types.js +3 -0
  52. package/dist/ui/config-editor/src/utils/config-values.d.ts +9 -0
  53. package/dist/ui/config-editor/src/utils/config-values.js +61 -0
  54. package/dist/ui/config-editor/src/utils/directory-browser.d.ts +31 -0
  55. package/dist/ui/config-editor/src/utils/directory-browser.js +201 -0
  56. package/dist/ui/config-editor/src/utils/parsing.d.ts +8 -0
  57. package/dist/ui/config-editor/src/utils/parsing.js +50 -0
  58. package/dist/ui/config-editor/styles.css +587 -0
  59. package/dist/ui/file-preview/app.d.ts +8 -0
  60. package/dist/ui/file-preview/app.js +2020 -0
  61. package/dist/ui/file-preview/components/code-viewer.d.ts +6 -0
  62. package/dist/ui/file-preview/components/code-viewer.js +73 -0
  63. package/dist/ui/file-preview/components/highlighting.d.ts +2 -0
  64. package/dist/ui/file-preview/components/highlighting.js +54 -0
  65. package/dist/ui/file-preview/components/html-renderer.d.ts +5 -0
  66. package/dist/ui/file-preview/components/html-renderer.js +47 -0
  67. package/dist/ui/file-preview/components/markdown-renderer.d.ts +1 -0
  68. package/dist/ui/file-preview/components/markdown-renderer.js +67 -0
  69. package/dist/ui/file-preview/components/toolbar.d.ts +6 -0
  70. package/dist/ui/file-preview/components/toolbar.js +75 -0
  71. package/dist/ui/file-preview/image-preview.d.ts +3 -0
  72. package/dist/ui/file-preview/image-preview.js +21 -0
  73. package/dist/ui/file-preview/main.js +5 -0
  74. package/dist/ui/file-preview/markdown/editor.d.ts +36 -0
  75. package/dist/ui/file-preview/markdown/editor.js +643 -0
  76. package/dist/ui/file-preview/markdown/linking.d.ts +9 -0
  77. package/dist/ui/file-preview/markdown/linking.js +210 -0
  78. package/dist/ui/file-preview/markdown/outline.d.ts +7 -0
  79. package/dist/ui/file-preview/markdown/outline.js +40 -0
  80. package/dist/ui/file-preview/markdown/preview.d.ts +8 -0
  81. package/dist/ui/file-preview/markdown/preview.js +33 -0
  82. package/dist/ui/file-preview/markdown/slugify.d.ts +3 -0
  83. package/dist/ui/file-preview/markdown/slugify.js +31 -0
  84. package/dist/ui/file-preview/markdown/toc.d.ts +11 -0
  85. package/dist/ui/file-preview/markdown/toc.js +75 -0
  86. package/dist/ui/file-preview/markdown/utils.d.ts +1 -0
  87. package/dist/ui/file-preview/markdown/utils.js +15 -0
  88. package/dist/ui/file-preview/markdown/workspace-controller.d.ts +25 -0
  89. package/dist/ui/file-preview/markdown/workspace-controller.js +40 -0
  90. package/dist/ui/file-preview/preview-runtime.js +399 -13969
  91. package/dist/ui/file-preview/shared/preview-file-types.d.ts +1 -1
  92. package/dist/ui/file-preview/shared/preview-file-types.js +3 -1
  93. package/dist/ui/file-preview/src/App.d.ts +4 -0
  94. package/dist/ui/file-preview/src/App.js +564 -0
  95. package/dist/ui/file-preview/src/components/CodeViewer.d.ts +6 -0
  96. package/dist/ui/file-preview/src/components/CodeViewer.js +60 -0
  97. package/dist/ui/file-preview/src/components/HtmlRenderer.d.ts +8 -0
  98. package/dist/ui/file-preview/src/components/HtmlRenderer.js +45 -0
  99. package/dist/ui/file-preview/src/components/MarkdownRenderer.d.ts +1 -0
  100. package/dist/ui/file-preview/src/components/MarkdownRenderer.js +15 -0
  101. package/dist/ui/file-preview/src/components/editor-toolbar.d.ts +15 -0
  102. package/dist/ui/file-preview/src/components/editor-toolbar.js +384 -0
  103. package/dist/ui/file-preview/src/components/html-renderer.d.ts +1 -5
  104. package/dist/ui/file-preview/src/components/html-renderer.js +11 -27
  105. package/dist/ui/file-preview/src/components/markdown-editor.d.ts +29 -0
  106. package/dist/ui/file-preview/src/components/markdown-editor.js +535 -0
  107. package/dist/ui/file-preview/src/components/markdown-renderer.js +47 -9
  108. package/dist/ui/file-preview/src/directory-controller.d.ts +8 -0
  109. package/dist/ui/file-preview/src/directory-controller.js +233 -0
  110. package/dist/ui/file-preview/src/document-layout.d.ts +20 -0
  111. package/dist/ui/file-preview/src/document-layout.js +109 -0
  112. package/dist/ui/file-preview/src/document-outline.d.ts +17 -0
  113. package/dist/ui/file-preview/src/document-outline.js +97 -0
  114. package/dist/ui/file-preview/src/document-workspace.d.ts +19 -0
  115. package/dist/ui/file-preview/src/document-workspace.js +33 -0
  116. package/dist/ui/file-preview/src/file-type-handlers.d.ts +10 -0
  117. package/dist/ui/file-preview/src/file-type-handlers.js +98 -0
  118. package/dist/ui/file-preview/src/host/external-actions.d.ts +19 -0
  119. package/dist/ui/file-preview/src/host/external-actions.js +94 -0
  120. package/dist/ui/file-preview/src/host/selection-context.d.ts +9 -0
  121. package/dist/ui/file-preview/src/host/selection-context.js +106 -0
  122. package/dist/ui/file-preview/src/markdown/block-merge.d.ts +25 -0
  123. package/dist/ui/file-preview/src/markdown/block-merge.js +86 -0
  124. package/dist/ui/file-preview/src/markdown/conflict-dialog.d.ts +40 -0
  125. package/dist/ui/file-preview/src/markdown/conflict-dialog.js +163 -0
  126. package/dist/ui/file-preview/src/markdown/controller.d.ts +38 -0
  127. package/dist/ui/file-preview/src/markdown/controller.js +921 -0
  128. package/dist/ui/file-preview/src/markdown/editor.d.ts +35 -0
  129. package/dist/ui/file-preview/src/markdown/editor.js +691 -0
  130. package/dist/ui/file-preview/src/markdown/link-modal.d.ts +13 -0
  131. package/dist/ui/file-preview/src/markdown/link-modal.js +213 -0
  132. package/dist/ui/file-preview/src/markdown/linking.d.ts +16 -0
  133. package/dist/ui/file-preview/src/markdown/linking.js +228 -0
  134. package/dist/ui/file-preview/src/markdown/outline.d.ts +2 -0
  135. package/dist/ui/file-preview/src/markdown/outline.js +16 -0
  136. package/dist/ui/file-preview/src/markdown/parser.d.ts +30 -0
  137. package/dist/ui/file-preview/src/markdown/parser.js +38 -0
  138. package/dist/ui/file-preview/src/markdown/preview.d.ts +1 -0
  139. package/dist/ui/file-preview/src/markdown/preview.js +20 -0
  140. package/dist/ui/file-preview/src/markdown/raw-editor.d.ts +8 -0
  141. package/dist/ui/file-preview/src/markdown/raw-editor.js +61 -0
  142. package/dist/ui/file-preview/src/markdown/selection-toolbar.d.ts +14 -0
  143. package/dist/ui/file-preview/src/markdown/selection-toolbar.js +128 -0
  144. package/dist/ui/file-preview/src/markdown/slugify.d.ts +3 -0
  145. package/dist/ui/file-preview/src/markdown/slugify.js +31 -0
  146. package/dist/ui/file-preview/src/markdown/toc.d.ts +11 -0
  147. package/dist/ui/file-preview/src/markdown/toc.js +75 -0
  148. package/dist/ui/file-preview/src/markdown/utils.d.ts +1 -0
  149. package/dist/ui/file-preview/src/markdown/utils.js +15 -0
  150. package/dist/ui/file-preview/src/markdown-workspace/editor.d.ts +36 -0
  151. package/dist/ui/file-preview/src/markdown-workspace/editor.js +643 -0
  152. package/dist/ui/file-preview/src/markdown-workspace/linking.d.ts +9 -0
  153. package/dist/ui/file-preview/src/markdown-workspace/linking.js +210 -0
  154. package/dist/ui/file-preview/src/markdown-workspace/outline.d.ts +7 -0
  155. package/dist/ui/file-preview/src/markdown-workspace/outline.js +40 -0
  156. package/dist/ui/file-preview/src/markdown-workspace/preview.d.ts +8 -0
  157. package/dist/ui/file-preview/src/markdown-workspace/preview.js +33 -0
  158. package/dist/ui/file-preview/src/markdown-workspace/slugify.d.ts +3 -0
  159. package/dist/ui/file-preview/src/markdown-workspace/slugify.js +31 -0
  160. package/dist/ui/file-preview/src/markdown-workspace/toc.d.ts +11 -0
  161. package/dist/ui/file-preview/src/markdown-workspace/toc.js +75 -0
  162. package/dist/ui/file-preview/src/markdown-workspace/utils.d.ts +1 -0
  163. package/dist/ui/file-preview/src/markdown-workspace/utils.js +15 -0
  164. package/dist/ui/file-preview/src/markdown-workspace/workspace-controller.d.ts +25 -0
  165. package/dist/ui/file-preview/src/markdown-workspace/workspace-controller.js +40 -0
  166. package/dist/ui/file-preview/src/model.d.ts +34 -0
  167. package/dist/ui/file-preview/src/panel-actions.d.ts +17 -0
  168. package/dist/ui/file-preview/src/panel-actions.js +182 -0
  169. package/dist/ui/file-preview/src/path-utils.d.ts +6 -0
  170. package/dist/ui/file-preview/src/path-utils.js +64 -0
  171. package/dist/ui/file-preview/src/payload-utils.d.ts +11 -0
  172. package/dist/ui/file-preview/src/payload-utils.js +94 -0
  173. package/dist/ui/file-preview/styles.css +1144 -277
  174. package/dist/ui/file-preview/types.d.ts +1 -0
  175. package/dist/ui/file-preview/types.js +1 -0
  176. package/dist/ui/resources.d.ts +7 -0
  177. package/dist/ui/resources.js +16 -2
  178. package/dist/ui/server-integration.d.ts +13 -0
  179. package/dist/ui/server-integration.js +31 -0
  180. package/dist/ui/shared/ToolHeader.d.ts +9 -0
  181. package/dist/ui/shared/ToolHeader.js +29 -0
  182. package/dist/ui/shared/app-bootstrap.d.ts +9 -0
  183. package/dist/ui/shared/app-bootstrap.js +15 -0
  184. package/dist/ui/shared/compact-row.d.ts +11 -0
  185. package/dist/ui/shared/compact-row.js +18 -0
  186. package/dist/ui/shared/guards.d.ts +1 -0
  187. package/dist/ui/shared/guards.js +3 -0
  188. package/dist/ui/shared/host-context.d.ts +15 -0
  189. package/dist/ui/shared/host-context.js +51 -0
  190. package/dist/ui/shared/host-lifecycle.d.ts +1 -0
  191. package/dist/ui/shared/host-lifecycle.js +8 -2
  192. package/dist/ui/shared/tool-bridge.d.ts +30 -0
  193. package/dist/ui/shared/tool-bridge.js +137 -0
  194. package/dist/ui/shared/tool-shell.d.ts +9 -0
  195. package/dist/ui/shared/tool-shell.js +46 -4
  196. package/dist/ui/shared/ui-event-tracker.d.ts +9 -0
  197. package/dist/ui/shared/ui-event-tracker.js +27 -0
  198. package/dist/ui/shared/widget-state.d.ts +6 -1
  199. package/dist/ui/shared/widget-state.js +102 -4
  200. package/dist/utils/capture.js +3 -3
  201. package/dist/utils/files/base.d.ts +2 -0
  202. package/dist/utils/open-browser.js +1 -1
  203. package/dist/utils/ui-call-context.d.ts +8 -0
  204. package/dist/utils/ui-call-context.js +72 -0
  205. package/dist/version.d.ts +1 -1
  206. package/dist/version.js +1 -1
  207. package/package.json +13 -4
  208. package/dist/data/spec-kit-prompts.json +0 -123
  209. package/dist/handlers/node-handlers.d.ts +0 -6
  210. package/dist/handlers/node-handlers.js +0 -73
  211. package/dist/handlers/test-crash-handler.d.ts +0 -11
  212. package/dist/handlers/test-crash-handler.js +0 -26
  213. package/dist/http-index.d.ts +0 -45
  214. package/dist/http-index.js +0 -51
  215. package/dist/http-server-auto-tunnel.js +0 -667
  216. package/dist/http-server-named-tunnel.d.ts +0 -2
  217. package/dist/http-server-named-tunnel.js +0 -167
  218. package/dist/http-server-tunnel.d.ts +0 -2
  219. package/dist/http-server-tunnel.js +0 -111
  220. package/dist/http-server.d.ts +0 -2
  221. package/dist/http-server.js +0 -270
  222. package/dist/index-oauth.d.ts +0 -2
  223. package/dist/index-oauth.js +0 -201
  224. package/dist/oauth/auth-middleware.d.ts +0 -20
  225. package/dist/oauth/auth-middleware.js +0 -62
  226. package/dist/oauth/index.d.ts +0 -3
  227. package/dist/oauth/index.js +0 -3
  228. package/dist/oauth/oauth-manager.d.ts +0 -80
  229. package/dist/oauth/oauth-manager.js +0 -179
  230. package/dist/oauth/oauth-routes.d.ts +0 -3
  231. package/dist/oauth/oauth-routes.js +0 -377
  232. package/dist/oauth/provider.d.ts +0 -22
  233. package/dist/oauth/provider.js +0 -124
  234. package/dist/oauth/server.d.ts +0 -18
  235. package/dist/oauth/server.js +0 -160
  236. package/dist/oauth/types.d.ts +0 -54
  237. package/dist/oauth/types.js +0 -2
  238. package/dist/remote-device/templates/auth-success.d.ts +0 -1
  239. package/dist/remote-device/templates/auth-success.js +0 -30
  240. package/dist/setup.log +0 -275
  241. package/dist/test-setup.js +0 -14
  242. package/dist/tools/docx/builders/html-builder.d.ts +0 -17
  243. package/dist/tools/docx/builders/html-builder.js +0 -92
  244. package/dist/tools/docx/builders/image.d.ts +0 -14
  245. package/dist/tools/docx/builders/image.js +0 -84
  246. package/dist/tools/docx/builders/index.d.ts +0 -11
  247. package/dist/tools/docx/builders/index.js +0 -11
  248. package/dist/tools/docx/builders/markdown-builder.d.ts +0 -2
  249. package/dist/tools/docx/builders/markdown-builder.js +0 -260
  250. package/dist/tools/docx/builders/paragraph.d.ts +0 -12
  251. package/dist/tools/docx/builders/paragraph.js +0 -29
  252. package/dist/tools/docx/builders/table.d.ts +0 -10
  253. package/dist/tools/docx/builders/table.js +0 -138
  254. package/dist/tools/docx/builders/utils.d.ts +0 -5
  255. package/dist/tools/docx/builders/utils.js +0 -18
  256. package/dist/tools/docx/constants.d.ts +0 -32
  257. package/dist/tools/docx/constants.js +0 -61
  258. package/dist/tools/docx/converters/markdown-to-html.d.ts +0 -17
  259. package/dist/tools/docx/converters/markdown-to-html.js +0 -111
  260. package/dist/tools/docx/create.d.ts +0 -21
  261. package/dist/tools/docx/create.js +0 -386
  262. package/dist/tools/docx/dom.d.ts +0 -139
  263. package/dist/tools/docx/dom.js +0 -448
  264. package/dist/tools/docx/errors.d.ts +0 -28
  265. package/dist/tools/docx/errors.js +0 -48
  266. package/dist/tools/docx/extractors/images.d.ts +0 -14
  267. package/dist/tools/docx/extractors/images.js +0 -40
  268. package/dist/tools/docx/extractors/metadata.d.ts +0 -14
  269. package/dist/tools/docx/extractors/metadata.js +0 -64
  270. package/dist/tools/docx/extractors/sections.d.ts +0 -14
  271. package/dist/tools/docx/extractors/sections.js +0 -61
  272. package/dist/tools/docx/html.d.ts +0 -17
  273. package/dist/tools/docx/html.js +0 -111
  274. package/dist/tools/docx/index.d.ts +0 -10
  275. package/dist/tools/docx/index.js +0 -10
  276. package/dist/tools/docx/markdown.d.ts +0 -84
  277. package/dist/tools/docx/markdown.js +0 -507
  278. package/dist/tools/docx/modify.d.ts +0 -28
  279. package/dist/tools/docx/modify.js +0 -271
  280. package/dist/tools/docx/operations/handlers/index.d.ts +0 -39
  281. package/dist/tools/docx/operations/handlers/index.js +0 -152
  282. package/dist/tools/docx/operations/html-manipulator.d.ts +0 -24
  283. package/dist/tools/docx/operations/html-manipulator.js +0 -352
  284. package/dist/tools/docx/operations/index.d.ts +0 -14
  285. package/dist/tools/docx/operations/index.js +0 -61
  286. package/dist/tools/docx/operations/operation-handlers.d.ts +0 -3
  287. package/dist/tools/docx/operations/operation-handlers.js +0 -67
  288. package/dist/tools/docx/operations/preprocessor.d.ts +0 -14
  289. package/dist/tools/docx/operations/preprocessor.js +0 -44
  290. package/dist/tools/docx/operations/xml-replacer.d.ts +0 -9
  291. package/dist/tools/docx/operations/xml-replacer.js +0 -35
  292. package/dist/tools/docx/operations.d.ts +0 -13
  293. package/dist/tools/docx/operations.js +0 -13
  294. package/dist/tools/docx/ops/delete-paragraph-at-body-index.d.ts +0 -11
  295. package/dist/tools/docx/ops/delete-paragraph-at-body-index.js +0 -23
  296. package/dist/tools/docx/ops/header-replace-text-exact.d.ts +0 -13
  297. package/dist/tools/docx/ops/header-replace-text-exact.js +0 -55
  298. package/dist/tools/docx/ops/index.d.ts +0 -17
  299. package/dist/tools/docx/ops/index.js +0 -70
  300. package/dist/tools/docx/ops/insert-image-after-text.d.ts +0 -24
  301. package/dist/tools/docx/ops/insert-image-after-text.js +0 -128
  302. package/dist/tools/docx/ops/insert-paragraph-after-text.d.ts +0 -12
  303. package/dist/tools/docx/ops/insert-paragraph-after-text.js +0 -74
  304. package/dist/tools/docx/ops/insert-table-after-text.d.ts +0 -19
  305. package/dist/tools/docx/ops/insert-table-after-text.js +0 -57
  306. package/dist/tools/docx/ops/replace-hyperlink-url.d.ts +0 -12
  307. package/dist/tools/docx/ops/replace-hyperlink-url.js +0 -37
  308. package/dist/tools/docx/ops/replace-paragraph-at-body-index.d.ts +0 -9
  309. package/dist/tools/docx/ops/replace-paragraph-at-body-index.js +0 -25
  310. package/dist/tools/docx/ops/replace-paragraph-text-exact.d.ts +0 -21
  311. package/dist/tools/docx/ops/replace-paragraph-text-exact.js +0 -36
  312. package/dist/tools/docx/ops/replace-table-cell-text.d.ts +0 -25
  313. package/dist/tools/docx/ops/replace-table-cell-text.js +0 -85
  314. package/dist/tools/docx/ops/set-color-for-paragraph-exact.d.ts +0 -9
  315. package/dist/tools/docx/ops/set-color-for-paragraph-exact.js +0 -24
  316. package/dist/tools/docx/ops/set-color-for-style.d.ts +0 -13
  317. package/dist/tools/docx/ops/set-color-for-style.js +0 -31
  318. package/dist/tools/docx/ops/set-paragraph-style-at-body-index.d.ts +0 -8
  319. package/dist/tools/docx/ops/set-paragraph-style-at-body-index.js +0 -57
  320. package/dist/tools/docx/ops/table-set-cell-text.d.ts +0 -9
  321. package/dist/tools/docx/ops/table-set-cell-text.js +0 -40
  322. package/dist/tools/docx/parsers/image-extractor.d.ts +0 -18
  323. package/dist/tools/docx/parsers/image-extractor.js +0 -61
  324. package/dist/tools/docx/parsers/index.d.ts +0 -9
  325. package/dist/tools/docx/parsers/index.js +0 -9
  326. package/dist/tools/docx/parsers/paragraph-parser.d.ts +0 -2
  327. package/dist/tools/docx/parsers/paragraph-parser.js +0 -88
  328. package/dist/tools/docx/parsers/table-parser.d.ts +0 -9
  329. package/dist/tools/docx/parsers/table-parser.js +0 -72
  330. package/dist/tools/docx/parsers/xml-parser.d.ts +0 -25
  331. package/dist/tools/docx/parsers/xml-parser.js +0 -71
  332. package/dist/tools/docx/parsers/zip-reader.d.ts +0 -23
  333. package/dist/tools/docx/parsers/zip-reader.js +0 -52
  334. package/dist/tools/docx/read.d.ts +0 -27
  335. package/dist/tools/docx/read.js +0 -308
  336. package/dist/tools/docx/relationships.d.ts +0 -22
  337. package/dist/tools/docx/relationships.js +0 -76
  338. package/dist/tools/docx/structure.d.ts +0 -25
  339. package/dist/tools/docx/structure.js +0 -102
  340. package/dist/tools/docx/styled-html-parser.d.ts +0 -23
  341. package/dist/tools/docx/styled-html-parser.js +0 -1262
  342. package/dist/tools/docx/types.d.ts +0 -213
  343. package/dist/tools/docx/types.js +0 -5
  344. package/dist/tools/docx/utils/escaping.d.ts +0 -13
  345. package/dist/tools/docx/utils/escaping.js +0 -26
  346. package/dist/tools/docx/utils/images.d.ts +0 -9
  347. package/dist/tools/docx/utils/images.js +0 -26
  348. package/dist/tools/docx/utils/index.d.ts +0 -12
  349. package/dist/tools/docx/utils/index.js +0 -17
  350. package/dist/tools/docx/utils/markdown.d.ts +0 -13
  351. package/dist/tools/docx/utils/markdown.js +0 -32
  352. package/dist/tools/docx/utils/paths.d.ts +0 -15
  353. package/dist/tools/docx/utils/paths.js +0 -27
  354. package/dist/tools/docx/utils/versioning.d.ts +0 -25
  355. package/dist/tools/docx/utils/versioning.js +0 -55
  356. package/dist/tools/docx/utils.d.ts +0 -101
  357. package/dist/tools/docx/utils.js +0 -299
  358. package/dist/tools/docx/validate.d.ts +0 -33
  359. package/dist/tools/docx/validate.js +0 -49
  360. package/dist/tools/docx/validators.d.ts +0 -13
  361. package/dist/tools/docx/validators.js +0 -40
  362. package/dist/tools/docx/write.d.ts +0 -17
  363. package/dist/tools/docx/write.js +0 -88
  364. package/dist/tools/docx/xml-view-test.js +0 -63
  365. package/dist/tools/docx/xml-view.d.ts +0 -56
  366. package/dist/tools/docx/xml-view.js +0 -169
  367. package/dist/tools/docx/zip.d.ts +0 -21
  368. package/dist/tools/docx/zip.js +0 -35
  369. package/dist/tools/pdf-processor.js +0 -3
  370. package/dist/tools/search.d.ts +0 -32
  371. package/dist/tools/search.js +0 -202
  372. package/dist/ui/file-preview/src/app.d.ts +0 -4
  373. package/dist/ui/file-preview/src/app.js +0 -800
  374. package/dist/utils/crash-logger.d.ts +0 -18
  375. package/dist/utils/crash-logger.js +0 -44
  376. package/dist/utils/dedent.d.ts +0 -8
  377. package/dist/utils/dedent.js +0 -38
  378. /package/dist/{http-server-auto-tunnel.d.ts → ui/config-editor/main.d.ts} +0 -0
  379. /package/dist/{test-docx.d.ts → ui/config-editor/src/main.d.ts} +0 -0
  380. /package/dist/{tools/docx/xml-view-test.d.ts → ui/file-preview/main.d.ts} +0 -0
  381. /package/dist/ui/file-preview/src/components/{toolbar.d.ts → Toolbar.d.ts} +0 -0
  382. /package/dist/ui/file-preview/src/components/{toolbar.js → Toolbar.js} +0 -0
  383. /package/dist/{tools/pdf-processor.d.ts → ui/file-preview/src/model.js} +0 -0
@@ -1,160 +0,0 @@
1
- import http from 'http';
2
- import { URL } from 'url';
3
- import { OAuthProvider } from './provider.js';
4
- export class OAuthHttpServer {
5
- constructor(config, mcpHandler) {
6
- this.oauthProvider = new OAuthProvider(config);
7
- this.mcpHandler = mcpHandler;
8
- this.server = http.createServer(this.handleRequest.bind(this));
9
- }
10
- async handleRequest(req, res) {
11
- const url = new URL(req.url, `http://${req.headers.host}`);
12
- // Enable CORS
13
- this.setCorsHeaders(res);
14
- if (req.method === 'OPTIONS') {
15
- res.writeHead(200);
16
- res.end();
17
- return;
18
- }
19
- try {
20
- // OAuth endpoints
21
- if (url.pathname === '/.well-known/oauth-authorization-server') {
22
- return this.handleAuthServerMetadata(res);
23
- }
24
- if (url.pathname === '/authorize') {
25
- return this.handleAuthorize(url, res);
26
- }
27
- if (url.pathname === '/token' && req.method === 'POST') {
28
- return this.handleToken(req, res);
29
- }
30
- if (url.pathname === '/callback') {
31
- return this.handleCallback(url, res);
32
- }
33
- // Protected MCP endpoints - require authentication
34
- if (url.pathname.startsWith('/mcp') || url.pathname === '/sse') {
35
- const authHeader = req.headers.authorization;
36
- if (!authHeader || !authHeader.startsWith('Bearer ')) {
37
- return this.sendUnauthorized(res);
38
- }
39
- const token = authHeader.substring(7);
40
- const tokenData = this.oauthProvider.validateAccessToken(token);
41
- if (!tokenData) {
42
- return this.sendUnauthorized(res);
43
- }
44
- // Add user info to request for MCP handler
45
- req.user = tokenData;
46
- }
47
- // Forward to MCP handler
48
- this.mcpHandler(req, res);
49
- }
50
- catch (error) {
51
- console.error('OAuth server error:', error);
52
- res.writeHead(500, { 'Content-Type': 'application/json' });
53
- res.end(JSON.stringify({ error: 'Internal server error' }));
54
- }
55
- }
56
- setCorsHeaders(res) {
57
- res.setHeader('Access-Control-Allow-Origin', '*');
58
- res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS');
59
- res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization');
60
- res.setHeader('Access-Control-Expose-Headers', 'WWW-Authenticate');
61
- }
62
- handleAuthServerMetadata(res) {
63
- const metadata = this.oauthProvider.getAuthorizationServerMetadata();
64
- res.writeHead(200, { 'Content-Type': 'application/json' });
65
- res.end(JSON.stringify(metadata, null, 2));
66
- }
67
- handleAuthorize(url, res) {
68
- const params = {
69
- response_type: url.searchParams.get('response_type'),
70
- client_id: url.searchParams.get('client_id'),
71
- redirect_uri: url.searchParams.get('redirect_uri'),
72
- scope: url.searchParams.get('scope') || undefined,
73
- state: url.searchParams.get('state') || undefined,
74
- code_challenge: url.searchParams.get('code_challenge'),
75
- code_challenge_method: url.searchParams.get('code_challenge_method')
76
- };
77
- const result = this.oauthProvider.handleAuthorizationRequest(params);
78
- if (result.error) {
79
- res.writeHead(400, { 'Content-Type': 'application/json' });
80
- res.end(JSON.stringify({ error: result.error }));
81
- return;
82
- }
83
- // Redirect to the callback URL with auth code
84
- res.writeHead(302, { 'Location': result.authUrl });
85
- res.end();
86
- }
87
- async handleToken(req, res) {
88
- const body = await this.getRequestBody(req);
89
- const params = new URLSearchParams(body);
90
- const tokenRequest = {
91
- grant_type: params.get('grant_type'),
92
- code: params.get('code'),
93
- redirect_uri: params.get('redirect_uri'),
94
- client_id: params.get('client_id'),
95
- code_verifier: params.get('code_verifier')
96
- };
97
- const result = await this.oauthProvider.handleTokenRequest(tokenRequest);
98
- if ('error' in result) {
99
- res.writeHead(400, { 'Content-Type': 'application/json' });
100
- res.end(JSON.stringify(result));
101
- return;
102
- }
103
- res.writeHead(200, { 'Content-Type': 'application/json' });
104
- res.end(JSON.stringify(result));
105
- }
106
- handleCallback(url, res) {
107
- const code = url.searchParams.get('code');
108
- const state = url.searchParams.get('state');
109
- // Simple success page
110
- const html = `
111
- <!DOCTYPE html>
112
- <html>
113
- <head><title>Authorization Successful</title></head>
114
- <body>
115
- <h1>Authorization Successful!</h1>
116
- <p>You can now close this window.</p>
117
- <script>
118
- // Try to close the window (works if opened by script)
119
- try { window.close(); } catch(e) {}
120
-
121
- // Post message to parent if in iframe
122
- if (window.opener) {
123
- window.opener.postMessage({
124
- type: 'oauth_success',
125
- code: '${code}',
126
- state: '${state}'
127
- }, '*');
128
- }
129
- </script>
130
- </body>
131
- </html>
132
- `;
133
- res.writeHead(200, { 'Content-Type': 'text/html' });
134
- res.end(html);
135
- }
136
- sendUnauthorized(res) {
137
- res.writeHead(401, {
138
- 'Content-Type': 'application/json',
139
- 'WWW-Authenticate': 'Bearer realm="mcp", error="invalid_token"'
140
- });
141
- res.end(JSON.stringify({
142
- error: 'unauthorized',
143
- message: 'Valid access token required'
144
- }));
145
- }
146
- async getRequestBody(req) {
147
- return new Promise((resolve, reject) => {
148
- let body = '';
149
- req.on('data', chunk => body += chunk.toString());
150
- req.on('end', () => resolve(body));
151
- req.on('error', reject);
152
- });
153
- }
154
- listen(port, callback) {
155
- this.server.listen(port, callback);
156
- }
157
- close(callback) {
158
- this.server.close(callback);
159
- }
160
- }
@@ -1,54 +0,0 @@
1
- export interface OAuthConfig {
2
- enabled: boolean;
3
- clientId: string;
4
- clientSecret: string;
5
- redirectUri: string;
6
- authorizationUrl: string;
7
- tokenUrl: string;
8
- scope: string;
9
- issuer: string;
10
- }
11
- export interface AuthorizationServerMetadata {
12
- issuer: string;
13
- authorization_endpoint: string;
14
- token_endpoint: string;
15
- registration_endpoint?: string;
16
- revocation_endpoint?: string;
17
- jwks_uri?: string;
18
- response_types_supported: string[];
19
- grant_types_supported: string[];
20
- token_endpoint_auth_methods_supported: string[];
21
- code_challenge_methods_supported: string[];
22
- scopes_supported?: string[];
23
- }
24
- export interface TokenResponse {
25
- access_token: string;
26
- token_type: string;
27
- expires_in?: number;
28
- refresh_token?: string;
29
- scope?: string;
30
- }
31
- export interface AccessToken {
32
- sub: string;
33
- aud: string | string[];
34
- iss: string;
35
- exp: number;
36
- iat: number;
37
- scope?: string;
38
- }
39
- export interface AuthorizationRequest {
40
- response_type: 'code';
41
- client_id: string;
42
- redirect_uri: string;
43
- scope?: string;
44
- state?: string;
45
- code_challenge: string;
46
- code_challenge_method: 'S256';
47
- }
48
- export interface TokenRequest {
49
- grant_type: 'authorization_code';
50
- code: string;
51
- redirect_uri: string;
52
- client_id: string;
53
- code_verifier: string;
54
- }
@@ -1,2 +0,0 @@
1
- // OAuth 2.1 types for MCP authorization
2
- export {};
@@ -1 +0,0 @@
1
- export declare const authSuccessHtml = "\n<!DOCTYPE html>\n<html lang=\"en\">\n\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Authentication Successful</title>\n</head>\n\n<body\n style=\"margin: 0; font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; line-height: 1.5; color: #F8FAFC; background-color: #101219; min-height: 100vh; display: flex; align-items: center; justify-content: center;\">\n <div\n style=\"background: rgba(30, 41, 59, 0.4); backdrop-filter: blur(12px); border: 1px solid #2B303B; border-radius: 12px; padding: 40px; width: 100%; max-width: 480px; margin: 20px; text-align: center; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);\">\n <h2 style=\"font-size: 24px; font-weight: 700; color: #F8FAFC; margin-top: 0; margin-bottom: 16px;\">\n Authentication Successful!</h2>\n <p style=\"color: #94A3B8; font-size: 15px; line-height: 1.6; margin: 0 0 8px 0;\">Your device is now connected.\n </p>\n <p style=\"color: #94A3B8; font-size: 15px; line-height: 1.6; margin: 0;\">You can close this window.</p>\n </div>\n <script>\n // Clean up URL parameters and hash\n if (window.history && window.history.replaceState) {\n window.history.replaceState(null, '', window.location.pathname);\n }\n </script>\n</body>\n\n</html>\n";
@@ -1,30 +0,0 @@
1
- export const authSuccessHtml = `
2
- <!DOCTYPE html>
3
- <html lang="en">
4
-
5
- <head>
6
- <meta charset="UTF-8">
7
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
8
- <title>Authentication Successful</title>
9
- </head>
10
-
11
- <body
12
- style="margin: 0; font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; line-height: 1.5; color: #F8FAFC; background-color: #101219; min-height: 100vh; display: flex; align-items: center; justify-content: center;">
13
- <div
14
- style="background: rgba(30, 41, 59, 0.4); backdrop-filter: blur(12px); border: 1px solid #2B303B; border-radius: 12px; padding: 40px; width: 100%; max-width: 480px; margin: 20px; text-align: center; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);">
15
- <h2 style="font-size: 24px; font-weight: 700; color: #F8FAFC; margin-top: 0; margin-bottom: 16px;">
16
- Authentication Successful!</h2>
17
- <p style="color: #94A3B8; font-size: 15px; line-height: 1.6; margin: 0 0 8px 0;">Your device is now connected.
18
- </p>
19
- <p style="color: #94A3B8; font-size: 15px; line-height: 1.6; margin: 0;">You can close this window.</p>
20
- </div>
21
- <script>
22
- // Clean up URL parameters and hash
23
- if (window.history && window.history.replaceState) {
24
- window.history.replaceState(null, '', window.location.pathname);
25
- }
26
- </script>
27
- </body>
28
-
29
- </html>
30
- `;
package/dist/setup.log DELETED
@@ -1,275 +0,0 @@
1
- 2025-08-21T08:55:05.547Z - ✅ Desktop Commander MCP v0.2.9 successfully added to Claude’s configuration.
2
- 2025-08-21T08:55:05.547Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
3
- 2025-08-21T08:55:08.757Z -
4
- ✅ Claude has been restarted automatically!
5
- 2025-08-21T08:55:08.778Z -
6
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
7
-
8
- 2025-08-21T08:55:08.779Z -
9
- The server is available as "desktop-commander" in Claude's MCP server list
10
- 2025-08-21T08:55:08.779Z - Future updates will install automatically — no need to run this setup again.
11
-
12
-
13
- 2025-08-21T08:55:08.779Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
14
-
15
-
16
- 2025-08-21T08:55:08.779Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
17
-
18
-
19
- 2025-08-21T08:55:08.779Z - or join our community: https://discord.com/invite/kQ27sNnZr7
20
-
21
-
22
- 2025-08-21T14:58:41.568Z - ✅ Desktop Commander MCP v0.2.9 successfully added to Claude’s configuration.
23
- 2025-08-21T14:58:41.568Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
24
- 2025-08-21T14:58:44.701Z -
25
- ✅ Claude has been restarted automatically!
26
- 2025-08-21T14:58:44.728Z -
27
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
28
-
29
- 2025-08-21T14:58:44.728Z -
30
- The server is available as "desktop-commander" in Claude's MCP server list
31
- 2025-08-21T14:58:44.728Z - Future updates will install automatically — no need to run this setup again.
32
-
33
-
34
- 2025-08-21T14:58:44.728Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
35
-
36
-
37
- 2025-08-21T14:58:44.728Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
38
-
39
-
40
- 2025-08-21T14:58:44.728Z - or join our community: https://discord.com/invite/kQ27sNnZr7
41
-
42
-
43
- 2025-08-21T15:01:40.796Z - ✅ Desktop Commander MCP v0.2.9 successfully added to Claude’s configuration.
44
- 2025-08-21T15:01:40.796Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
45
- 2025-08-21T15:01:43.911Z -
46
- ✅ Claude has been restarted automatically!
47
- 2025-08-21T15:01:43.932Z -
48
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
49
-
50
- 2025-08-21T15:01:43.932Z -
51
- The server is available as "desktop-commander" in Claude's MCP server list
52
- 2025-08-21T15:01:43.932Z - Future updates will install automatically — no need to run this setup again.
53
-
54
-
55
- 2025-08-21T15:01:43.932Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
56
-
57
-
58
- 2025-08-21T15:01:43.932Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
59
-
60
-
61
- 2025-08-21T15:01:43.932Z - or join our community: https://discord.com/invite/kQ27sNnZr7
62
-
63
-
64
- 2025-10-22T15:22:43.506Z - ✅ Desktop Commander MCP v0.2.18-alpha.6 successfully added to Claude’s configuration.
65
- 2025-10-22T15:22:43.507Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
66
- 2025-10-22T15:22:46.639Z -
67
- ✅ Claude has been restarted automatically!
68
- 2025-10-22T15:22:46.664Z -
69
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
70
-
71
- 2025-10-22T15:22:46.664Z -
72
- The server is available as "desktop-commander" in Claude's MCP server list
73
- 2025-10-22T15:22:46.665Z - Future updates will install automatically — no need to run this setup again.
74
-
75
-
76
- 2025-10-22T15:22:46.665Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
77
-
78
-
79
- 2025-10-22T15:22:46.665Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
80
-
81
-
82
- 2025-10-22T15:22:46.665Z - or join our community: https://discord.com/invite/kQ27sNnZr7
83
-
84
-
85
- 2025-10-23T10:10:37.029Z - ✅ Desktop Commander MCP v0.2.18-alpha.13 successfully added to Claude’s configuration.
86
- 2025-10-23T10:10:37.030Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
87
- 2025-10-23T10:10:40.163Z -
88
- ✅ Claude has been restarted automatically!
89
- 2025-10-23T10:10:40.184Z -
90
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
91
-
92
- 2025-10-23T10:10:40.184Z -
93
- The server is available as "desktop-commander" in Claude's MCP server list
94
- 2025-10-23T10:10:40.184Z - Future updates will install automatically — no need to run this setup again.
95
-
96
-
97
- 2025-10-23T10:10:40.184Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
98
-
99
-
100
- 2025-10-23T10:10:40.184Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
101
-
102
-
103
- 2025-10-23T10:10:40.184Z - or join our community: https://discord.com/invite/kQ27sNnZr7
104
-
105
-
106
- 2025-10-23T10:11:28.520Z - ✅ Desktop Commander MCP v0.2.18-alpha.13 successfully added to Claude’s configuration.
107
- 2025-10-23T10:11:28.520Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
108
- 2025-10-23T10:11:31.626Z -
109
- ✅ Claude has been restarted automatically!
110
- 2025-10-23T10:11:31.645Z -
111
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
112
-
113
- 2025-10-23T10:11:31.645Z -
114
- The server is available as "desktop-commander" in Claude's MCP server list
115
- 2025-10-23T10:11:31.645Z - Future updates will install automatically — no need to run this setup again.
116
-
117
-
118
- 2025-10-23T10:11:31.645Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
119
-
120
-
121
- 2025-10-23T10:11:31.645Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
122
-
123
-
124
- 2025-10-23T10:11:31.645Z - or join our community: https://discord.com/invite/kQ27sNnZr7
125
-
126
-
127
- 2025-10-23T10:19:51.580Z - ✅ Desktop Commander MCP v0.2.18-alpha.13 successfully added to Claude’s configuration.
128
- 2025-10-23T10:19:51.580Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
129
- 2025-10-23T10:19:54.733Z -
130
- ✅ Claude has been restarted automatically!
131
- 2025-10-23T10:19:54.755Z -
132
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
133
-
134
- 2025-10-23T10:19:54.755Z -
135
- The server is available as "desktop-commander" in Claude's MCP server list
136
- 2025-10-23T10:19:54.756Z - Future updates will install automatically — no need to run this setup again.
137
-
138
-
139
- 2025-10-23T10:19:54.756Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
140
-
141
-
142
- 2025-10-23T10:19:54.756Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
143
-
144
-
145
- 2025-10-23T10:19:54.756Z - or join our community: https://discord.com/invite/kQ27sNnZr7
146
-
147
-
148
- 2025-10-23T10:20:46.785Z - ✅ Desktop Commander MCP v0.2.18-alpha.13 successfully added to Claude’s configuration.
149
- 2025-10-23T10:20:46.785Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
150
- 2025-10-23T10:20:49.891Z -
151
- ✅ Claude has been restarted automatically!
152
- 2025-10-23T10:20:49.913Z -
153
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
154
-
155
- 2025-10-23T10:20:49.913Z -
156
- The server is available as "desktop-commander" in Claude's MCP server list
157
- 2025-10-23T10:20:49.913Z - Future updates will install automatically — no need to run this setup again.
158
-
159
-
160
- 2025-10-23T10:20:49.913Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
161
-
162
-
163
- 2025-10-23T10:20:49.913Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
164
-
165
-
166
- 2025-10-23T10:20:49.913Z - or join our community: https://discord.com/invite/kQ27sNnZr7
167
-
168
-
169
- 2025-10-23T10:23:37.739Z - ✅ Desktop Commander MCP v0.2.18-alpha.14 successfully added to Claude’s configuration.
170
- 2025-10-23T10:23:37.739Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
171
- 2025-10-23T10:23:40.846Z -
172
- ✅ Claude has been restarted automatically!
173
- 2025-10-23T10:23:40.867Z -
174
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
175
-
176
- 2025-10-23T10:23:40.867Z -
177
- The server is available as "desktop-commander" in Claude's MCP server list
178
- 2025-10-23T10:23:40.867Z - Future updates will install automatically — no need to run this setup again.
179
-
180
-
181
- 2025-10-23T10:23:40.867Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
182
-
183
-
184
- 2025-10-23T10:23:40.867Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
185
-
186
-
187
- 2025-10-23T10:23:40.867Z - or join our community: https://discord.com/invite/kQ27sNnZr7
188
-
189
-
190
- 2025-10-23T10:39:56.359Z - ✅ Desktop Commander MCP v0.2.18-alpha.15 successfully added to Claude’s configuration.
191
- 2025-10-23T10:39:56.360Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
192
- 2025-10-23T10:39:59.526Z -
193
- ✅ Claude has been restarted automatically!
194
- 2025-10-23T10:39:59.567Z -
195
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
196
-
197
- 2025-10-23T10:39:59.567Z -
198
- The server is available as "desktop-commander" in Claude's MCP server list
199
- 2025-10-23T10:39:59.567Z - Future updates will install automatically — no need to run this setup again.
200
-
201
-
202
- 2025-10-23T10:39:59.567Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
203
-
204
-
205
- 2025-10-23T10:39:59.567Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
206
-
207
-
208
- 2025-10-23T10:39:59.567Z - or join our community: https://discord.com/invite/kQ27sNnZr7
209
-
210
-
211
- 2025-10-23T10:57:55.850Z - ✅ Desktop Commander MCP v0.2.18-alpha.15 successfully added to Claude’s configuration.
212
- 2025-10-23T10:57:55.851Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
213
- 2025-10-23T10:57:59.008Z -
214
- ✅ Claude has been restarted automatically!
215
- 2025-10-23T10:57:59.051Z -
216
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
217
-
218
- 2025-10-23T10:57:59.052Z -
219
- The server is available as "desktop-commander" in Claude's MCP server list
220
- 2025-10-23T10:57:59.052Z - Future updates will install automatically — no need to run this setup again.
221
-
222
-
223
- 2025-10-23T10:57:59.052Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
224
-
225
-
226
- 2025-10-23T10:57:59.052Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
227
-
228
-
229
- 2025-10-23T10:57:59.052Z - or join our community: https://discord.com/invite/kQ27sNnZr7
230
-
231
-
232
- 2025-10-23T11:06:27.679Z - ERROR: Command args:
233
- 2025-10-23T11:06:32.852Z - ✅ Desktop Commander MCP v0.2.18-alpha.16 successfully added to Claude’s configuration.
234
- 2025-10-23T11:06:32.852Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
235
- 2025-10-23T11:06:36.008Z -
236
- ✅ Claude has been restarted automatically!
237
- 2025-10-23T11:06:36.050Z -
238
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
239
-
240
- 2025-10-23T11:06:36.050Z -
241
- The server is available as "desktop-commander" in Claude's MCP server list
242
- 2025-10-23T11:06:36.050Z - Future updates will install automatically — no need to run this setup again.
243
-
244
-
245
- 2025-10-23T11:06:36.050Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
246
-
247
-
248
- 2025-10-23T11:06:36.050Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
249
-
250
-
251
- 2025-10-23T11:06:36.050Z - or join our community: https://discord.com/invite/kQ27sNnZr7
252
-
253
-
254
- 2025-10-23T11:17:02.302Z - ERROR: Command args:
255
- 2025-10-23T11:17:02.385Z - ✅ Desktop Commander MCP v0.2.18-alpha.16 successfully added to Claude’s configuration.
256
- 2025-10-23T11:17:02.385Z - Configuration location: /Users/fiberta/Library/Application Support/Claude/claude_desktop_config.json
257
- 2025-10-23T11:17:05.568Z -
258
- ✅ Claude has been restarted automatically!
259
- 2025-10-23T11:17:05.612Z -
260
- ✅ Installation successfully completed! Thank you for using Desktop Commander!
261
-
262
- 2025-10-23T11:17:05.612Z -
263
- The server is available as "desktop-commander" in Claude's MCP server list
264
- 2025-10-23T11:17:05.612Z - Future updates will install automatically — no need to run this setup again.
265
-
266
-
267
- 2025-10-23T11:17:05.612Z - 🤔 Need help or have feedback? Happy to jump on a quick call:
268
-
269
-
270
- 2025-10-23T11:17:05.612Z - https://calendar.app.google/SHMNZN5MJznJWC5A7
271
-
272
-
273
- 2025-10-23T11:17:05.613Z - or join our community: https://discord.com/invite/kQ27sNnZr7
274
-
275
-
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- // Test what argv looks like when called as a bin script
4
- console.log('=== Test Script Argv ===');
5
- console.log('process.argv:');
6
- process.argv.forEach((arg, index) => {
7
- console.log(` ${index}: "${arg}"`);
8
- });
9
-
10
- const versionArg2 = process.argv[2];
11
- const versionArg3 = process.argv[3];
12
-
13
- console.log('\nUsing argv[2]:', versionArg2);
14
- console.log('Using argv[3]:', versionArg3);
@@ -1,17 +0,0 @@
1
- /**
2
- * HTML → DOCX Conversion (html-to-docx)
3
- *
4
- * Converts processed HTML content into a DOCX buffer, injecting the original
5
- * document's default font and font size so unstyled text keeps its appearance.
6
- *
7
- * @module docx/builders/html-builder
8
- */
9
- import type { DocxBuildOptions } from '../types.js';
10
- /**
11
- * Create a DOCX Buffer from HTML content.
12
- *
13
- * @param html - HTML content to convert
14
- * @param options - Build options (baseDir, documentDefaults, etc.)
15
- * @returns DOCX file as a Buffer
16
- */
17
- export declare function createDocxFromHtml(html: string, options?: DocxBuildOptions): Promise<Buffer>;
@@ -1,92 +0,0 @@
1
- /**
2
- * HTML → DOCX Conversion (html-to-docx)
3
- *
4
- * Converts processed HTML content into a DOCX buffer, injecting the original
5
- * document's default font and font size so unstyled text keeps its appearance.
6
- *
7
- * @module docx/builders/html-builder
8
- */
9
- import { createRequire } from 'module';
10
- import { DocxError, DocxErrorCode, withErrorContext } from '../errors.js';
11
- import { DEFAULT_BUILD_OPTIONS, HTML_WRAPPER_TEMPLATE } from '../constants.js';
12
- const require = createRequire(import.meta.url);
13
- const HTMLtoDOCX = require('html-to-docx');
14
- // ─── HTML Structure Helpers ──────────────────────────────────────────────────
15
- /** Build a `<style>` tag with the original document's default font/size as CSS `body` rules. */
16
- function buildDefaultStyleTag(defaults) {
17
- if (!defaults)
18
- return '';
19
- const rules = [];
20
- if (defaults.font)
21
- rules.push(`font-family: '${defaults.font}'`);
22
- if (defaults.fontSize)
23
- rules.push(`font-size: ${defaults.fontSize}pt`);
24
- if (rules.length === 0)
25
- return '';
26
- return `<style>body { ${rules.join('; ')}; }</style>`;
27
- }
28
- /**
29
- * Ensure the HTML has a proper structure (DOCTYPE, `<html>`, `<head>`, `<body>`).
30
- * Injects the document-default CSS into `<head>` when available.
31
- */
32
- function ensureHtmlStructure(html, defaults) {
33
- const trimmed = html.trim();
34
- const styleTag = buildDefaultStyleTag(defaults);
35
- if (!trimmed) {
36
- const wrapped = HTML_WRAPPER_TEMPLATE.split('{content}').join('');
37
- return styleTag ? wrapped.replace('</head>', `${styleTag}\n</head>`) : wrapped;
38
- }
39
- const lower = trimmed.toLowerCase();
40
- const hasDoctype = lower.startsWith('<!doctype');
41
- const hasHtml = lower.includes('<html');
42
- const hasBody = lower.includes('<body');
43
- // Already complete — inject styles only
44
- if (hasDoctype && hasHtml && hasBody) {
45
- if (styleTag && trimmed.includes('</head>')) {
46
- return trimmed.replace('</head>', `${styleTag}\n</head>`);
47
- }
48
- return trimmed;
49
- }
50
- // Partial structure — add DOCTYPE, inject styles
51
- if (hasHtml || hasBody) {
52
- const result = `<!DOCTYPE html>\n${trimmed}`;
53
- return styleTag && result.includes('</head>')
54
- ? result.replace('</head>', `${styleTag}\n</head>`)
55
- : result;
56
- }
57
- // Plain fragment — wrap fully
58
- // Use split/join instead of replace to avoid $-pattern interpretation in base64 data URLs
59
- const wrapped = HTML_WRAPPER_TEMPLATE.split('{content}').join(trimmed);
60
- return styleTag ? wrapped.replace('</head>', `${styleTag}\n</head>`) : wrapped;
61
- }
62
- // ─── Public API ──────────────────────────────────────────────────────────────
63
- /**
64
- * Create a DOCX Buffer from HTML content.
65
- *
66
- * @param html - HTML content to convert
67
- * @param options - Build options (baseDir, documentDefaults, etc.)
68
- * @returns DOCX file as a Buffer
69
- */
70
- export async function createDocxFromHtml(html, options = {}) {
71
- return withErrorContext(async () => {
72
- if (!html?.trim()) {
73
- throw new DocxError('HTML content cannot be empty', DocxErrorCode.DOCX_CREATE_FAILED, { htmlLength: 0 });
74
- }
75
- const defaults = options.documentDefaults;
76
- const processedHtml = ensureHtmlStructure(html, defaults);
77
- const docxOptions = {
78
- table: { row: { cantSplit: true } },
79
- footer: DEFAULT_BUILD_OPTIONS.footer,
80
- pageNumber: DEFAULT_BUILD_OPTIONS.pageNumber,
81
- font: defaults?.font || DEFAULT_BUILD_OPTIONS.font,
82
- fontSize: defaults?.fontSize || DEFAULT_BUILD_OPTIONS.fontSize,
83
- orientation: DEFAULT_BUILD_OPTIONS.orientation,
84
- margins: { ...DEFAULT_BUILD_OPTIONS.margins },
85
- };
86
- const docxBuffer = await HTMLtoDOCX(processedHtml, null, docxOptions);
87
- if (!docxBuffer || docxBuffer.length === 0) {
88
- throw new DocxError('Failed to generate DOCX: empty buffer', DocxErrorCode.DOCX_CREATE_FAILED, { htmlLength: html.length });
89
- }
90
- return Buffer.from(docxBuffer);
91
- }, DocxErrorCode.DOCX_CREATE_FAILED, { htmlLength: html.length });
92
- }
@@ -1,14 +0,0 @@
1
- /**
2
- * Image builder — creates w:drawing elements and manages image relationships.
3
- */
4
- import PizZip from 'pizzip';
5
- import type { DocxContentImage, InsertImageOp } from '../types.js';
6
- /**
7
- * Build an image element and add it to the ZIP archive.
8
- *
9
- * @param doc The XML document
10
- * @param zip The DOCX ZIP archive
11
- * @param spec The image specification (from content or operation)
12
- * @returns A w:p element containing the image drawing
13
- */
14
- export declare function buildImageElement(doc: Document, zip: PizZip, spec: DocxContentImage | InsertImageOp): Promise<Element>;