@aiderdesk/aiderdesk 0.61.0 → 0.62.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 (382) hide show
  1. package/out/renderer/assets/{_baseUniq-BPF2Herp.js → _baseUniq-B7TxjYgy.js} +1 -1
  2. package/out/renderer/assets/abap-B7h4dtBh.js +7 -0
  3. package/out/renderer/assets/actionscript-3-DtnkuHN2.js +7 -0
  4. package/out/renderer/assets/ada-BZS802Se.js +7 -0
  5. package/out/renderer/assets/andromeeda-C847lm7Z.js +4 -0
  6. package/out/renderer/assets/angular-html-BYG42TJr.js +42 -0
  7. package/out/renderer/assets/angular-ts-BftcHvZ6.js +29 -0
  8. package/out/renderer/assets/apache-D4roVlsU.js +7 -0
  9. package/out/renderer/assets/apex-B-mI3Md2.js +7 -0
  10. package/out/renderer/assets/apl-CGZawg-A.js +18 -0
  11. package/out/renderer/assets/applescript-C43Knf0G.js +7 -0
  12. package/out/renderer/assets/ara-DRBH84ND.js +7 -0
  13. package/out/renderer/assets/{arc-DfPLteHF.js → arc-TuVjX2tH.js} +1 -1
  14. package/out/renderer/assets/{architectureDiagram-Q4EWVU46-Bw0u-sSH.js → architectureDiagram-Q4EWVU46-CnAcyRvO.js} +5 -5
  15. package/out/renderer/assets/asciidoc-CT8_dLUs.js +7 -0
  16. package/out/renderer/assets/asm-3tg4MVib.js +7 -0
  17. package/out/renderer/assets/astro-BxdWOZvM.js +19 -0
  18. package/out/renderer/assets/aurora-x-wJ4-eM2h.js +4 -0
  19. package/out/renderer/assets/awk-ChreaG-G.js +7 -0
  20. package/out/renderer/assets/ayu-dark-rtpbXCNg.js +4 -0
  21. package/out/renderer/assets/ayu-light-BCZDSyV8.js +4 -0
  22. package/out/renderer/assets/ayu-mirage-BVoH71sA.js +4 -0
  23. package/out/renderer/assets/ballerina-B0yt0TYU.js +7 -0
  24. package/out/renderer/assets/bat-BzNgQIA7.js +7 -0
  25. package/out/renderer/assets/beancount-aZWrE5WV.js +7 -0
  26. package/out/renderer/assets/berry--Qc8OslH.js +7 -0
  27. package/out/renderer/assets/bibtex-BLeFwAes.js +7 -0
  28. package/out/renderer/assets/bicep-DbBeGdXQ.js +7 -0
  29. package/out/renderer/assets/bird2-aXhIUHPg.js +7 -0
  30. package/out/renderer/assets/blade-BbH7YAUi.js +22 -0
  31. package/out/renderer/assets/{blockDiagram-DXYQGD6D-CkfB9if8.js → blockDiagram-DXYQGD6D-DBoJhGAM.js} +6 -6
  32. package/out/renderer/assets/bsl-DwPS0BId.js +9 -0
  33. package/out/renderer/assets/c-C4VtT7JA.js +7 -0
  34. package/out/renderer/assets/c3-CWHczQMq.js +7 -0
  35. package/out/renderer/assets/{c4Diagram-AHTNJAMY-DweK9Liz.js → c4Diagram-AHTNJAMY-BzW0gKwX.js} +2 -2
  36. package/out/renderer/assets/cadence-S_NtR5Dy.js +7 -0
  37. package/out/renderer/assets/cairo-BtYx2aM5.js +9 -0
  38. package/out/renderer/assets/catppuccin-frappe-C21OPQfC.js +4 -0
  39. package/out/renderer/assets/catppuccin-latte-0ZtXlsrX.js +4 -0
  40. package/out/renderer/assets/catppuccin-macchiato-BD_FR4sl.js +4 -0
  41. package/out/renderer/assets/catppuccin-mocha-C653csR5.js +4 -0
  42. package/out/renderer/assets/{channel-C5wwrRof.js → channel-CqR4FAVX.js} +1 -1
  43. package/out/renderer/assets/{chunk-4BX2VUAB-0KM14cFd.js → chunk-4BX2VUAB-DQjg_Naa.js} +1 -1
  44. package/out/renderer/assets/{chunk-4TB4RGXK-CmVtCVL4.js → chunk-4TB4RGXK-DkcI1yaW.js} +5 -5
  45. package/out/renderer/assets/{chunk-55IACEB6-BzVYZvBM.js → chunk-55IACEB6-pFPEMTmI.js} +1 -1
  46. package/out/renderer/assets/{chunk-EDXVE4YY-BryQl5Kv.js → chunk-EDXVE4YY-DRk838hn.js} +1 -1
  47. package/out/renderer/assets/{chunk-FMBD7UC4-CRiLea_e.js → chunk-FMBD7UC4-BagQdd5u.js} +1 -1
  48. package/out/renderer/assets/{chunk-OYMX7WX6-Cpi4N3NO.js → chunk-OYMX7WX6-DOGJ-XHp.js} +3 -3
  49. package/out/renderer/assets/{chunk-QZHKN3VN-BT8kABWC.js → chunk-QZHKN3VN-CdzjbbBk.js} +1 -1
  50. package/out/renderer/assets/{chunk-YZCP3GAM-OLZV_Sef.js → chunk-YZCP3GAM-BKZRTlUj.js} +1 -1
  51. package/out/renderer/assets/clarity-D2ViJC0i.js +7 -0
  52. package/out/renderer/assets/{classDiagram-6PBFFD2Q-VdE6G90i.js → classDiagram-6PBFFD2Q-CjVhmlxb.js} +6 -6
  53. package/out/renderer/assets/{classDiagram-v2-HSJHXN6E-VdE6G90i.js → classDiagram-v2-HSJHXN6E-CjVhmlxb.js} +6 -6
  54. package/out/renderer/assets/clojure-C_G4_w5x.js +7 -0
  55. package/out/renderer/assets/{clone-DwQZ86nS.js → clone-B-kqpcr4.js} +1 -1
  56. package/out/renderer/assets/cmake-CDfQILeU.js +7 -0
  57. package/out/renderer/assets/cobol-B8r1pfPr.js +13 -0
  58. package/out/renderer/assets/codeowners-awy7PWCD.js +7 -0
  59. package/out/renderer/assets/codeql-lfK8ppuq.js +7 -0
  60. package/out/renderer/assets/coffee-XLjtuEYs.js +9 -0
  61. package/out/renderer/assets/common-lisp-DAq1kaby.js +7 -0
  62. package/out/renderer/assets/coq-l_JvzFJl.js +7 -0
  63. package/out/renderer/assets/{cose-bilkent-S5V4N54A-BEcAKM9H.js → cose-bilkent-S5V4N54A-CZLRecVB.js} +1 -1
  64. package/out/renderer/assets/cpp-zh2ePAE_.js +22 -0
  65. package/out/renderer/assets/crystal-BqBRy7Ec.js +19 -0
  66. package/out/renderer/assets/csharp-DxX_6tHh.js +7 -0
  67. package/out/renderer/assets/css-BtVcDqlU.js +7 -0
  68. package/out/renderer/assets/csv-Ba84L8e5.js +7 -0
  69. package/out/renderer/assets/cue-BFSVLV6N.js +7 -0
  70. package/out/renderer/assets/cypher-DbUmWIxC.js +7 -0
  71. package/out/renderer/assets/d-9qSZPw74.js +7 -0
  72. package/out/renderer/assets/{dagre-KV5264BT-BcFQYL1M.js → dagre-KV5264BT-BUAzC7Um.js} +6 -6
  73. package/out/renderer/assets/dark-plus-DmZ1Dzd4.js +4 -0
  74. package/out/renderer/assets/dart-CCSsOg9l.js +7 -0
  75. package/out/renderer/assets/dax-CvsmLV-B.js +7 -0
  76. package/out/renderer/assets/desktop-_xiGZ9X1.js +7 -0
  77. package/out/renderer/assets/{diagram-5BDNPKRD-GrUNdC1u.js → diagram-5BDNPKRD-DNQEDszc.js} +6 -6
  78. package/out/renderer/assets/{diagram-G4DWMVQ6-CG4S-ov5.js → diagram-G4DWMVQ6-D9YY6W2O.js} +6 -6
  79. package/out/renderer/assets/{diagram-MMDJMWI5-9ogY3MRC.js → diagram-MMDJMWI5-B5H49OVD.js} +5 -5
  80. package/out/renderer/assets/{diagram-TYMM5635-Ck7mI1bS.js → diagram-TYMM5635-Bw7r467p.js} +5 -5
  81. package/out/renderer/assets/diff-BEdzuHlE.js +7 -0
  82. package/out/renderer/assets/docker-CUaLOm2I.js +7 -0
  83. package/out/renderer/assets/dotenv-Bb4iNxXK.js +7 -0
  84. package/out/renderer/assets/dracula-B8-AVrwI.js +4 -0
  85. package/out/renderer/assets/dracula-soft-BHeefow7.js +4 -0
  86. package/out/renderer/assets/dream-maker-CNLQpoF-.js +7 -0
  87. package/out/renderer/assets/edge-CnHxQ_FD.js +15 -0
  88. package/out/renderer/assets/elixir-B_LIBv5J.js +11 -0
  89. package/out/renderer/assets/elm-BlO7pcFp.js +10 -0
  90. package/out/renderer/assets/emacs-lisp-4gdXY_g3.js +7 -0
  91. package/out/renderer/assets/{erDiagram-SMLLAGMA-Dvf_c-7M.js → erDiagram-SMLLAGMA-Bz4ALNLp.js} +4 -4
  92. package/out/renderer/assets/erb-Bzn22wO6.js +28 -0
  93. package/out/renderer/assets/erlang-Ch5kuXHm.js +9 -0
  94. package/out/renderer/assets/everforest-dark-Cg1xdODP.js +4 -0
  95. package/out/renderer/assets/everforest-light-BmTD3bxe.js +4 -0
  96. package/out/renderer/assets/fennel-BTELNkeT.js +7 -0
  97. package/out/renderer/assets/fish-kGF2-4SL.js +7 -0
  98. package/out/renderer/assets/{flowDiagram-DWJPFMVM-CPDjOXYp.js → flowDiagram-DWJPFMVM-Uqg1ZeN2.js} +6 -6
  99. package/out/renderer/assets/fluent-YyC28MRr.js +7 -0
  100. package/out/renderer/assets/fortran-fixed-form-CpmOyvS5.js +9 -0
  101. package/out/renderer/assets/fortran-free-form-5X94ETMi.js +7 -0
  102. package/out/renderer/assets/fsharp-5vtGqRR9.js +9 -0
  103. package/out/renderer/assets/{ganttDiagram-T4ZO3ILL-B4dJrK-3.js → ganttDiagram-T4ZO3ILL-Dm0tRLCH.js} +1 -1
  104. package/out/renderer/assets/gdresource-B5TLWiFO.js +11 -0
  105. package/out/renderer/assets/gdscript-CNW3Aj-d.js +7 -0
  106. package/out/renderer/assets/gdshader-BEzE4j_3.js +7 -0
  107. package/out/renderer/assets/genie-BvhtM5Ga.js +7 -0
  108. package/out/renderer/assets/gherkin-xCNF9gh8.js +7 -0
  109. package/out/renderer/assets/git-commit-PP9xCApN.js +9 -0
  110. package/out/renderer/assets/git-rebase-D-XQSvDj.js +9 -0
  111. package/out/renderer/assets/{gitGraphDiagram-UUTBAWPF-De2eCfMN.js → gitGraphDiagram-UUTBAWPF-R8imfIrj.js} +6 -6
  112. package/out/renderer/assets/github-dark-O22yVQaY.js +4 -0
  113. package/out/renderer/assets/github-dark-default-DB2Hkvqn.js +4 -0
  114. package/out/renderer/assets/github-dark-dimmed-CMZ_OfqC.js +4 -0
  115. package/out/renderer/assets/github-dark-high-contrast-DmxWVmCU.js +4 -0
  116. package/out/renderer/assets/github-light-BTbR9xVK.js +4 -0
  117. package/out/renderer/assets/github-light-default-DWEonwFe.js +4 -0
  118. package/out/renderer/assets/github-light-high-contrast-WJ_cPDts.js +4 -0
  119. package/out/renderer/assets/gleam-LmNxrMsN.js +7 -0
  120. package/out/renderer/assets/glimmer-js-h2QNNiD7.js +15 -0
  121. package/out/renderer/assets/glimmer-ts-Bk3uX6Ae.js +15 -0
  122. package/out/renderer/assets/glsl-CGsiYPcu.js +9 -0
  123. package/out/renderer/assets/gn-OUMx7fqt.js +7 -0
  124. package/out/renderer/assets/gnuplot-tV8vezdE.js +7 -0
  125. package/out/renderer/assets/go-DRMr3iML.js +7 -0
  126. package/out/renderer/assets/{graph-BFn23kR_.js → graph-B5YWEnt0.js} +2 -2
  127. package/out/renderer/assets/graphql-CwmtR1ib.js +15 -0
  128. package/out/renderer/assets/groovy-Bn4MhXgW.js +7 -0
  129. package/out/renderer/assets/gruvbox-dark-hard-DVsRsETr.js +4 -0
  130. package/out/renderer/assets/gruvbox-dark-medium-B5JBrQdg.js +4 -0
  131. package/out/renderer/assets/gruvbox-dark-soft-Db-YOqRx.js +4 -0
  132. package/out/renderer/assets/gruvbox-light-hard-CXzJt7DI.js +4 -0
  133. package/out/renderer/assets/gruvbox-light-medium-B89RAI1Y.js +4 -0
  134. package/out/renderer/assets/gruvbox-light-soft-Cs0hTZYv.js +4 -0
  135. package/out/renderer/assets/hack-BTX3ICIE.js +13 -0
  136. package/out/renderer/assets/haml-DrIklt7F.js +11 -0
  137. package/out/renderer/assets/handlebars-yWFGGD2R.js +15 -0
  138. package/out/renderer/assets/haskell-CzPS7wjM.js +7 -0
  139. package/out/renderer/assets/haxe-BpobLYM9.js +7 -0
  140. package/out/renderer/assets/hcl-axoq0Ycu.js +7 -0
  141. package/out/renderer/assets/hjson-I7LcauIB.js +7 -0
  142. package/out/renderer/assets/hlsl-TRzjajlb.js +7 -0
  143. package/out/renderer/assets/horizon-DWzh3z5C.js +4 -0
  144. package/out/renderer/assets/horizon-bright-C1AFkPsv.js +4 -0
  145. package/out/renderer/assets/houston-CF_ws8Cq.js +4 -0
  146. package/out/renderer/assets/html-GC16tDh9.js +11 -0
  147. package/out/renderer/assets/html-derivative-HU9p64q4.js +11 -0
  148. package/out/renderer/assets/http-DjsOm9E4.js +20 -0
  149. package/out/renderer/assets/hurl-Am2cDU4f.js +18 -0
  150. package/out/renderer/assets/hxml-Jle7oGdm.js +9 -0
  151. package/out/renderer/assets/hy-B1k9U6S8.js +7 -0
  152. package/out/renderer/assets/imba-C4923lSV.js +7 -0
  153. package/out/renderer/assets/{index-BkntVzTm.css → index-B6Zj03wk.css} +82 -24
  154. package/out/renderer/assets/{index-BL-57WPa.js → index-D7Xi0GX5.js} +30034 -9238
  155. package/out/renderer/assets/{infoDiagram-42DDH7IO-BIt9B6mQ.js → infoDiagram-42DDH7IO-CWPYNP1k.js} +4 -4
  156. package/out/renderer/assets/ini-B84Ha1bx.js +7 -0
  157. package/out/renderer/assets/{ishikawaDiagram-UXIWVN3A-CXZs0KGV.js → ishikawaDiagram-UXIWVN3A-CFTrc-S6.js} +1 -1
  158. package/out/renderer/assets/java-BfXh-0uJ.js +7 -0
  159. package/out/renderer/assets/javascript-BsAkV7mL.js +7 -0
  160. package/out/renderer/assets/jinja-FkIlHBgj.js +16 -0
  161. package/out/renderer/assets/jison-BkdOIOd4.js +9 -0
  162. package/out/renderer/assets/{journeyDiagram-VCZTEJTY-B-EXuj5b.js → journeyDiagram-VCZTEJTY-Dfd-piIf.js} +4 -4
  163. package/out/renderer/assets/json-TjWBGEk1.js +7 -0
  164. package/out/renderer/assets/json5-DCGCKrmX.js +7 -0
  165. package/out/renderer/assets/jsonc-DLVLp8id.js +7 -0
  166. package/out/renderer/assets/jsonl-B-R_pDGg.js +7 -0
  167. package/out/renderer/assets/jsonnet-Cs8BnnC6.js +7 -0
  168. package/out/renderer/assets/jssm-DDuANZ2u.js +7 -0
  169. package/out/renderer/assets/jsx-BPmvoin2.js +7 -0
  170. package/out/renderer/assets/julia-CU_UwNb8.js +20 -0
  171. package/out/renderer/assets/just-tGFryTtU.js +34 -0
  172. package/out/renderer/assets/kanagawa-dragon-DU8n2NNT.js +4 -0
  173. package/out/renderer/assets/kanagawa-lotus-Byd0CDet.js +4 -0
  174. package/out/renderer/assets/kanagawa-wave-DExoagcR.js +4 -0
  175. package/out/renderer/assets/{kanban-definition-6JOO6SKY-ByvN0qaD.js → kanban-definition-6JOO6SKY-BocrfAtb.js} +2 -2
  176. package/out/renderer/assets/kdl-DzNQTDs7.js +7 -0
  177. package/out/renderer/assets/kotlin-BM2ZNTMh.js +7 -0
  178. package/out/renderer/assets/kusto-dtpuxMFE.js +7 -0
  179. package/out/renderer/assets/laserwave-DF03wMlf.js +4 -0
  180. package/out/renderer/assets/latex-B0gTO9uZ.js +10 -0
  181. package/out/renderer/assets/{layout-BpybWUv6.js → layout-DHzrXVin.js} +4 -4
  182. package/out/renderer/assets/lean-CTow-IzD.js +7 -0
  183. package/out/renderer/assets/less-BAzLMJNR.js +7 -0
  184. package/out/renderer/assets/light-plus-DS08Xg5J.js +4 -0
  185. package/out/renderer/assets/liquid-QmJ_LYTW.js +15 -0
  186. package/out/renderer/assets/llvm-CTKcAHbb.js +7 -0
  187. package/out/renderer/assets/log-BF22rfM9.js +7 -0
  188. package/out/renderer/assets/logo-D9l7oEJ8.js +7 -0
  189. package/out/renderer/assets/lua-BVbbqwZC.js +9 -0
  190. package/out/renderer/assets/luau-CdZ6BoEa.js +7 -0
  191. package/out/renderer/assets/make-DLtqaK4D.js +7 -0
  192. package/out/renderer/assets/markdown-F_EULe_G.js +7 -0
  193. package/out/renderer/assets/marko-BAWrmNIa.js +15 -0
  194. package/out/renderer/assets/material-theme-B8B2U48Q.js +4 -0
  195. package/out/renderer/assets/material-theme-darker-BV0iY_T3.js +4 -0
  196. package/out/renderer/assets/material-theme-lighter-DrzybSTF.js +4 -0
  197. package/out/renderer/assets/material-theme-ocean-BRPLVReX.js +4 -0
  198. package/out/renderer/assets/material-theme-palenight-DSJwsR_D.js +4 -0
  199. package/out/renderer/assets/matlab-7XHduepk.js +7 -0
  200. package/out/renderer/assets/mdc-Ca0ft0PS.js +16 -0
  201. package/out/renderer/assets/mdx-D5wExp-O.js +7 -0
  202. package/out/renderer/assets/mermaid-z_1ejSlp.js +7 -0
  203. package/out/renderer/assets/{min-DB8ixvoT.js → min-D6g96v7R.js} +2 -2
  204. package/out/renderer/assets/min-dark-BNaN9fWk.js +4 -0
  205. package/out/renderer/assets/min-light-CMrjentn.js +4 -0
  206. package/out/renderer/assets/{mindmap-definition-QFDTVHPH-Do-I-At8.js → mindmap-definition-QFDTVHPH-D9cyK1Gb.js} +3 -3
  207. package/out/renderer/assets/mipsasm-BQyyUrpa.js +7 -0
  208. package/out/renderer/assets/mojo-ByCRDvCf.js +7 -0
  209. package/out/renderer/assets/monokai-DelygWXa.js +4 -0
  210. package/out/renderer/assets/moonbit-CqjK87KZ.js +7 -0
  211. package/out/renderer/assets/move-DhTNmxqC.js +7 -0
  212. package/out/renderer/assets/narrat-CLjGcbCy.js +7 -0
  213. package/out/renderer/assets/nextflow-B166B-y1.js +9 -0
  214. package/out/renderer/assets/nextflow-groovy-BOO9s0iq.js +7 -0
  215. package/out/renderer/assets/nginx-BFAkI5_-.js +10 -0
  216. package/out/renderer/assets/night-owl-DSS199ra.js +4 -0
  217. package/out/renderer/assets/night-owl-light-gC6E-Eh2.js +4 -0
  218. package/out/renderer/assets/nim-B3PAIZ4D.js +22 -0
  219. package/out/renderer/assets/nix-ByWcmvXF.js +12 -0
  220. package/out/renderer/assets/nord-CvDbBq5M.js +4 -0
  221. package/out/renderer/assets/nushell-DB8ZUEbK.js +7 -0
  222. package/out/renderer/assets/objective-c-BRoNQF42.js +7 -0
  223. package/out/renderer/assets/objective-cpp-DEoN9Fe5.js +7 -0
  224. package/out/renderer/assets/ocaml-B1kfGk9Y.js +7 -0
  225. package/out/renderer/assets/odin-CNQ56Ay2.js +7 -0
  226. package/out/renderer/assets/one-dark-pro-CsMf0BoJ.js +4 -0
  227. package/out/renderer/assets/one-light-B0cTzZyr.js +4 -0
  228. package/out/renderer/assets/openscad-C_m7ehZF.js +7 -0
  229. package/out/renderer/assets/pascal-CU8Kjkr_.js +7 -0
  230. package/out/renderer/assets/perl-HITCDkgu.js +18 -0
  231. package/out/renderer/assets/php-C2HieitX.js +20 -0
  232. package/out/renderer/assets/{pieDiagram-DEJITSTG-Cnpf6Gt6.js → pieDiagram-DEJITSTG-LUWwVJA5.js} +6 -6
  233. package/out/renderer/assets/pierre-dark-DADY5eR0.js +4 -0
  234. package/out/renderer/assets/pierre-light-DUjirxKp.js +4 -0
  235. package/out/renderer/assets/pkl-BsByaYax.js +7 -0
  236. package/out/renderer/assets/plastic-BjwMpBc0.js +4 -0
  237. package/out/renderer/assets/plsql-B3Na24V4.js +7 -0
  238. package/out/renderer/assets/po-BajfNjc5.js +7 -0
  239. package/out/renderer/assets/poimandres-ChWyhPrn.js +4 -0
  240. package/out/renderer/assets/polar-BB-dlxnO.js +7 -0
  241. package/out/renderer/assets/postcss-kj1IbjVd.js +7 -0
  242. package/out/renderer/assets/powerquery-B-e1fO-k.js +7 -0
  243. package/out/renderer/assets/powershell-BcMVbGpk.js +7 -0
  244. package/out/renderer/assets/prisma-bmxcSDxq.js +7 -0
  245. package/out/renderer/assets/prolog-BT9GCzqD.js +7 -0
  246. package/out/renderer/assets/proto-Ds-m32NR.js +7 -0
  247. package/out/renderer/assets/pug-BwQB43qN.js +13 -0
  248. package/out/renderer/assets/puppet-N15G4Usj.js +7 -0
  249. package/out/renderer/assets/purescript-DrwsEYNH.js +7 -0
  250. package/out/renderer/assets/python-CrdIx4PZ.js +7 -0
  251. package/out/renderer/assets/qml-jtL8okyu.js +9 -0
  252. package/out/renderer/assets/qmldir-DuMSk0Oz.js +7 -0
  253. package/out/renderer/assets/qss-BFrB6p4y.js +7 -0
  254. package/out/renderer/assets/{quadrantDiagram-34T5L4WZ-VcOb1qLd.js → quadrantDiagram-34T5L4WZ-DdWTi9yW.js} +1 -1
  255. package/out/renderer/assets/r-Dpdc-Kyk.js +7 -0
  256. package/out/renderer/assets/racket-DbA06HL7.js +7 -0
  257. package/out/renderer/assets/raku-6v-Y17bs.js +7 -0
  258. package/out/renderer/assets/razor-gBXW6YBJ.js +13 -0
  259. package/out/renderer/assets/red-DByOl5N0.js +4 -0
  260. package/out/renderer/assets/reg-CULnG2WX.js +7 -0
  261. package/out/renderer/assets/regexp-BxWeO75u.js +7 -0
  262. package/out/renderer/assets/rel-CHRwzjd4.js +7 -0
  263. package/out/renderer/assets/{requirementDiagram-MS252O5E-VJs9Hpaw.js → requirementDiagram-MS252O5E-BoLT3tay.js} +3 -3
  264. package/out/renderer/assets/riscv-BNQ9cVpw.js +7 -0
  265. package/out/renderer/assets/ron-CUEPaFZU.js +7 -0
  266. package/out/renderer/assets/rose-pine-B-kZ4Z9q.js +4 -0
  267. package/out/renderer/assets/rose-pine-dawn-efeVGdSI.js +4 -0
  268. package/out/renderer/assets/rose-pine-moon-DmodZNzl.js +4 -0
  269. package/out/renderer/assets/rosmsg-Bfahr6vb.js +7 -0
  270. package/out/renderer/assets/rst-by6KAwTb.js +37 -0
  271. package/out/renderer/assets/ruby-C13Bjepi.js +37 -0
  272. package/out/renderer/assets/rust-CMNYZh5a.js +7 -0
  273. package/out/renderer/assets/{sankeyDiagram-XADWPNL6-BoXxgLvi.js → sankeyDiagram-XADWPNL6-B4gY_QI-.js} +1 -1
  274. package/out/renderer/assets/sas-BLBgC3TA.js +9 -0
  275. package/out/renderer/assets/sass-BheygBdF.js +7 -0
  276. package/out/renderer/assets/scala-B-_7vFVn.js +7 -0
  277. package/out/renderer/assets/scheme-BSHdPinv.js +7 -0
  278. package/out/renderer/assets/scss-Dq-LbI_c.js +9 -0
  279. package/out/renderer/assets/sdbl-BBUhycGU.js +7 -0
  280. package/out/renderer/assets/{sequenceDiagram-FGHM5R23-b69hQjSp.js → sequenceDiagram-FGHM5R23-B-JJvxQW.js} +3 -3
  281. package/out/renderer/assets/shaderlab-C07uO3dL.js +9 -0
  282. package/out/renderer/assets/shellscript-CQ8MXh-D.js +7 -0
  283. package/out/renderer/assets/shellsession-CkeTp4M1.js +9 -0
  284. package/out/renderer/assets/slack-dark-BEe10hxO.js +4 -0
  285. package/out/renderer/assets/slack-ochin-BKmu9pBc.js +4 -0
  286. package/out/renderer/assets/smalltalk-qxcGy4fT.js +7 -0
  287. package/out/renderer/assets/snazzy-light-Dcvd-ZyI.js +4 -0
  288. package/out/renderer/assets/solarized-dark-BBl5y5sR.js +4 -0
  289. package/out/renderer/assets/solarized-light-DW9b_AY8.js +4 -0
  290. package/out/renderer/assets/solidity-CSTQ0FCC.js +7 -0
  291. package/out/renderer/assets/soy-BHaHgMUy.js +11 -0
  292. package/out/renderer/assets/sparql-DswowMAp.js +9 -0
  293. package/out/renderer/assets/splunk-DcGJXIDa.js +7 -0
  294. package/out/renderer/assets/sql-DzUuSofg.js +7 -0
  295. package/out/renderer/assets/ssh-config-Bk_I5wDR.js +7 -0
  296. package/out/renderer/assets/stata-Dl7wDdBE.js +9 -0
  297. package/out/renderer/assets/{stateDiagram-FHFEXIEX-BK7E-REm.js → stateDiagram-FHFEXIEX-BntwOBUs.js} +8 -8
  298. package/out/renderer/assets/{stateDiagram-v2-QKLJ7IA2-Cd2wfCQu.js → stateDiagram-v2-QKLJ7IA2-C__eWVIe.js} +4 -4
  299. package/out/renderer/assets/stylus-DXFa_2Jl.js +7 -0
  300. package/out/renderer/assets/surrealql-Bs3vUeKA.js +9 -0
  301. package/out/renderer/assets/svelte-fC0HkEkx.js +15 -0
  302. package/out/renderer/assets/swift-Cohr-WZC.js +7 -0
  303. package/out/renderer/assets/synthwave-84-CoUef9sh.js +4 -0
  304. package/out/renderer/assets/system-verilog-BcESSvRn.js +7 -0
  305. package/out/renderer/assets/systemd-DJPFjU02.js +7 -0
  306. package/out/renderer/assets/talonscript-CEEMXJTH.js +7 -0
  307. package/out/renderer/assets/tasl-DfOr2qHi.js +7 -0
  308. package/out/renderer/assets/tcl-CTsc4-t7.js +7 -0
  309. package/out/renderer/assets/templ-CSEiQwNm.js +13 -0
  310. package/out/renderer/assets/terraform-CeztUfUr.js +7 -0
  311. package/out/renderer/assets/tex-CGVqF8nD.js +9 -0
  312. package/out/renderer/assets/{timeline-definition-GMOUNBTQ-Bl-MTfK5.js → timeline-definition-GMOUNBTQ-C7ch2INk.js} +2 -2
  313. package/out/renderer/assets/tokyo-night-DjtLpAEY.js +4 -0
  314. package/out/renderer/assets/toml-vHPzWDj6.js +7 -0
  315. package/out/renderer/assets/ts-tags-cG2hZuda.js +54 -0
  316. package/out/renderer/assets/tsv-ChRVFvMy.js +7 -0
  317. package/out/renderer/assets/tsx-CmGGo4Hm.js +7 -0
  318. package/out/renderer/assets/turtle-BnC7StHY.js +7 -0
  319. package/out/renderer/assets/twig-CwEEYIBf.js +36 -0
  320. package/out/renderer/assets/typescript-CP6ECzON.js +7 -0
  321. package/out/renderer/assets/typespec-CkDVVIcK.js +7 -0
  322. package/out/renderer/assets/typst-XYLFxYau.js +7 -0
  323. package/out/renderer/assets/v-BSYXvR4g.js +7 -0
  324. package/out/renderer/assets/vala-qJa5rry9.js +7 -0
  325. package/out/renderer/assets/vb-Bzg9rspf.js +7 -0
  326. package/out/renderer/assets/{vennDiagram-DHZGUBPP-DNmr1k2L.js → vennDiagram-DHZGUBPP-CQ__NSue.js} +1 -1
  327. package/out/renderer/assets/verilog-CCb_iTfF.js +7 -0
  328. package/out/renderer/assets/vesper-4Q1cEwPL.js +4 -0
  329. package/out/renderer/assets/vhdl-DMqk4T2s.js +7 -0
  330. package/out/renderer/assets/viml--FINbfoq.js +7 -0
  331. package/out/renderer/assets/vitesse-black-BqNLki8b.js +4 -0
  332. package/out/renderer/assets/vitesse-dark-jJ32WhwH.js +4 -0
  333. package/out/renderer/assets/vitesse-light-476zM4e6.js +4 -0
  334. package/out/renderer/assets/vue-K-7Ga-y8.js +40 -0
  335. package/out/renderer/assets/vue-html-DhreShjd.js +9 -0
  336. package/out/renderer/assets/vue-vine-rMIwOpFf.js +19 -0
  337. package/out/renderer/assets/vyper-DP4whl13.js +7 -0
  338. package/out/renderer/assets/{wardley-RL74JXVD-DTbxPMj9.js → wardley-RL74JXVD-Kh6mNiRV.js} +3 -3
  339. package/out/renderer/assets/{wardleyDiagram-NUSXRM2D-BWw08wtD.js → wardleyDiagram-NUSXRM2D-CfRYzJMU.js} +5 -5
  340. package/out/renderer/assets/wasm-BBh6f151.js +7 -0
  341. package/out/renderer/assets/wasm-DDgzZJey.js +10 -0
  342. package/out/renderer/assets/wenyan-BdqozpMZ.js +7 -0
  343. package/out/renderer/assets/wgsl-Vo-hHVWH.js +7 -0
  344. package/out/renderer/assets/wikitext-BDjE6pmL.js +7 -0
  345. package/out/renderer/assets/wit-C_nQzOkY.js +7 -0
  346. package/out/renderer/assets/wolfram-CRmjUoI4.js +7 -0
  347. package/out/renderer/assets/xml-BMzZeaqs.js +9 -0
  348. package/out/renderer/assets/xsl-CnwVr_6q.js +10 -0
  349. package/out/renderer/assets/{xychartDiagram-5P7HB3ND-EEYPnLDT.js → xychartDiagram-5P7HB3ND-BFq2zIne.js} +1 -1
  350. package/out/renderer/assets/yaml-B_vW5iTY.js +7 -0
  351. package/out/renderer/assets/zenscript-DFINJL6j.js +7 -0
  352. package/out/renderer/assets/zig-CS4FMAZp.js +7 -0
  353. package/out/renderer/index.html +2 -2
  354. package/out/resources/linux/probe +0 -0
  355. package/out/resources/linux-x64/probe +0 -0
  356. package/out/resources/mcp-server/aider-desk-mcp-server.js +16 -1
  357. package/out/resources/prompts/code-change-requests.hbs +21 -0
  358. package/out/resources/skills/extension-creator/SKILL.md +345 -0
  359. package/out/resources/skills/extension-creator/assets/templates/Component.jsx.template +76 -0
  360. package/out/resources/skills/extension-creator/assets/templates/ConfigComponent.jsx.template +38 -0
  361. package/out/resources/skills/extension-creator/assets/templates/folder-extension/config.ts.template +29 -0
  362. package/out/resources/skills/extension-creator/assets/templates/folder-extension/index.ts.template +42 -0
  363. package/out/resources/skills/extension-creator/assets/templates/folder-extension/package.json +12 -0
  364. package/out/resources/skills/extension-creator/assets/templates/folder-extension/tsconfig.json +23 -0
  365. package/out/resources/skills/extension-creator/assets/templates/folder-extension-with-config/index.ts.template +80 -0
  366. package/out/resources/skills/extension-creator/assets/templates/single-file.ts.template +30 -0
  367. package/out/resources/skills/extension-creator/assets/templates/ui-component-external.ts.template +91 -0
  368. package/out/resources/skills/extension-creator/assets/templates/ui-component.ts.template +79 -0
  369. package/out/resources/skills/extension-creator/references/command-definition.md +170 -0
  370. package/out/resources/skills/extension-creator/references/config-components.md +427 -0
  371. package/out/resources/skills/extension-creator/references/event-types.md +156 -0
  372. package/out/resources/skills/extension-creator/references/examples-gallery.md +583 -0
  373. package/out/resources/skills/extension-creator/references/extension-interface.md +306 -0
  374. package/out/resources/skills/extension-creator/references/extension-types.md +186 -0
  375. package/out/resources/skills/extension-creator/references/in-repo-flow.md +132 -0
  376. package/out/resources/skills/extension-creator/references/install-targets.md +96 -0
  377. package/out/resources/skills/extension-creator/references/project-global-flow.md +76 -0
  378. package/out/resources/skills/extension-creator/references/ui-components.md +663 -0
  379. package/out/runner.js +509 -164
  380. package/package.json +11 -9
  381. package/out/resources/prompts/code-inline-request.hbs +0 -16
  382. /package/patches/{ai+5.0.167.patch → ai+5.0.172.patch} +0 -0
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Config Component for {{EXTENSION_NAME}}
3
+ *
4
+ * Renders a settings UI in the ExtensionSettingsDialog.
5
+ *
6
+ * Available props:
7
+ * - config: Current config data from getConfigData()
8
+ * - updateConfig: Callback to mutate in-memory config (does NOT persist)
9
+ * - ui: UI components (Button, Checkbox, Input, Select, TextArea, etc.) — prefer these over raw HTML
10
+ * - icons: React Icons organized by set (Fi, Hi, Cg, etc.)
11
+ * - models: Available models
12
+ * - providers: Available providers
13
+ * - projectDir: Project directory path
14
+ * - task: Current TaskData
15
+ * - mode: Current mode string
16
+ * - api: ApplicationAPI reference
17
+ *
18
+ * Note: React is globally available (use React.useState, React.useEffect, etc.)
19
+ * Note: Prefer ui.* components over raw HTML elements for consistent styling
20
+ */
21
+
22
+ ({ config, updateConfig, ui }) => {
23
+ const { Input } = ui;
24
+
25
+ return (
26
+ <div className="flex flex-col gap-4">
27
+ <Input
28
+ label="My Setting Label"
29
+ value={config?.mySetting || ''}
30
+ onChange={(value) => updateConfig({ ...config, mySetting: value })}
31
+ placeholder="Enter a value..."
32
+ />
33
+ <p className="text-xs text-text-secondary -mt-2">
34
+ Description of what this setting controls and how it affects the extension behavior.
35
+ </p>
36
+ </div>
37
+ );
38
+ };
@@ -0,0 +1,29 @@
1
+ import fs from 'fs/promises';
2
+ import path from 'path';
3
+ import { fileURLToPath } from 'url';
4
+
5
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
6
+
7
+ export interface {EXTENSION_NAME}Config {
8
+ // Add config properties
9
+ }
10
+
11
+ const DEFAULT_CONFIG: {EXTENSION_NAME}Config = {
12
+ // Add default values
13
+ };
14
+
15
+ const CONFIG_FILE = path.join(__dirname, 'config.json');
16
+
17
+ export const loadConfig = async (): Promise<{EXTENSION_NAME}Config> => {
18
+ try {
19
+ const data = await fs.readFile(CONFIG_FILE, 'utf-8');
20
+ const config = JSON.parse(data);
21
+ return { ...DEFAULT_CONFIG, ...config };
22
+ } catch {
23
+ return { ...DEFAULT_CONFIG };
24
+ }
25
+ };
26
+
27
+ export const saveConfig = async (config: {EXTENSION_NAME}Config): Promise<void> => {
28
+ await fs.writeFile(CONFIG_FILE, JSON.stringify(config, null, 2), 'utf-8');
29
+ };
@@ -0,0 +1,42 @@
1
+ /**
2
+ * {EXTENSION_NAME} Extension
3
+ *
4
+ * {DESCRIPTION}
5
+ */
6
+
7
+ import type { Extension, ExtensionContext, AgentStartedEvent, CommandDefinition } from '@aiderdesk/extensions';
8
+
9
+ import { loadConfig, saveConfig } from './config';
10
+ import type { {EXTENSION_NAME}Config } from './config';
11
+
12
+ const DEFAULT_CONFIG: {EXTENSION_NAME}Config = {
13
+ // Add default config values
14
+ };
15
+
16
+ export default class {CLASS_NAME} implements Extension {
17
+ static metadata = {
18
+ name: '{EXTENSION_NAME}',
19
+ version: '1.0.0',
20
+ description: '{DESCRIPTION}',
21
+ author: '{AUTHOR}',
22
+ capabilities: ['events', 'commands'],
23
+ };
24
+
25
+ private config: {EXTENSION_NAME}Config = DEFAULT_CONFIG;
26
+
27
+ async onLoad(context: ExtensionContext): Promise<void> {
28
+ context.log('{EXTENSION_NAME} Extension loaded', 'info');
29
+ this.config = await loadConfig();
30
+ }
31
+
32
+ getCommands(_context: ExtensionContext): CommandDefinition[] {
33
+ return [
34
+ // Add commands here
35
+ ];
36
+ }
37
+
38
+ async onAgentStarted(event: AgentStartedEvent, context: ExtensionContext): Promise<void | Partial<AgentStartedEvent>> {
39
+ // Handle event
40
+ return undefined;
41
+ }
42
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "{extension-name}",
3
+ "version": "1.0.0",
4
+ "description": "{DESCRIPTION}",
5
+ "main": "index.ts",
6
+ "keywords": ["aiderdesk", "extension"],
7
+ "author": "{AUTHOR}",
8
+ "license": "MIT",
9
+ "dependencies": {
10
+ // Add npm dependencies here
11
+ }
12
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2020",
4
+ "module": "ES2020",
5
+ "lib": ["ES2020"],
6
+ "moduleResolution": "node",
7
+ "esModuleInterop": true,
8
+ "skipLibCheck": true,
9
+ "strict": true,
10
+ "resolveJsonModule": true,
11
+ "declaration": true,
12
+ "declarationMap": true,
13
+ "sourceMap": true,
14
+ "outDir": "./dist",
15
+ "rootDir": ".",
16
+ "forceConsistentCasingInFileNames": true,
17
+ "noUnusedLocals": true,
18
+ "noUnusedParameters": true,
19
+ "noFallthroughCasesInSwitch": true
20
+ },
21
+ "include": ["*.ts"],
22
+ "exclude": ["node_modules", "dist", "__tests__"]
23
+ }
@@ -0,0 +1,80 @@
1
+ /**
2
+ * {EXTENSION_NAME} Extension
3
+ *
4
+ * {DESCRIPTION}
5
+ */
6
+
7
+ import { existsSync, readFileSync, writeFileSync } from 'node:fs';
8
+ import { join } from 'node:path';
9
+
10
+ import type { Extension, ExtensionContext } from '@aiderdesk/extensions';
11
+
12
+ // Load config JSX at module level (read once, reused on every getConfigComponent call)
13
+ const configComponentJsx = readFileSync(join(__dirname, './ConfigComponent.jsx'), 'utf-8');
14
+
15
+ interface {EXTENSION_NAME}Config {
16
+ // Add your config properties here
17
+ mySetting: string;
18
+ enabled: boolean;
19
+ }
20
+
21
+ const DEFAULT_CONFIG: {EXTENSION_NAME}Config = {
22
+ mySetting: '',
23
+ enabled: true,
24
+ };
25
+
26
+ export default class {CLASS_NAME} implements Extension {
27
+ static metadata = {
28
+ name: '{EXTENSION_NAME}',
29
+ version: '1.0.0',
30
+ description: '{DESCRIPTION}',
31
+ author: '{AUTHOR}',
32
+ capabilities: ['context'],
33
+ // iconUrl: 'https://...',
34
+ };
35
+
36
+ private configPath: string;
37
+
38
+ constructor() {
39
+ this.configPath = join(__dirname, 'config.json');
40
+ }
41
+
42
+ async onLoad(context: ExtensionContext): Promise<void> {
43
+ context.log('{EXTENSION_NAME} Extension loaded', 'info');
44
+ }
45
+
46
+ // --- Config Component API ---
47
+
48
+ getConfigComponent(_context: ExtensionContext): string {
49
+ return configComponentJsx;
50
+ }
51
+
52
+ async getConfigData(_context: ExtensionContext): Promise<{EXTENSION_NAME}Config> {
53
+ try {
54
+ if (existsSync(this.configPath)) {
55
+ const data = readFileSync(this.configPath, 'utf-8');
56
+ const parsed = JSON.parse(data);
57
+ return { ...DEFAULT_CONFIG, ...parsed };
58
+ }
59
+ } catch {
60
+ // Ignore errors, fall back to defaults
61
+ }
62
+ return { ...DEFAULT_CONFIG };
63
+ }
64
+
65
+ async saveConfigData(configData: unknown, _context: ExtensionContext): Promise<unknown> {
66
+ const merged: {EXTENSION_NAME}Config = {
67
+ ...DEFAULT_CONFIG,
68
+ ...configData as Partial<{EXTENSION_NAME}Config>,
69
+ };
70
+ writeFileSync(this.configPath, JSON.stringify(merged, null, 2), 'utf-8');
71
+ return merged;
72
+ }
73
+
74
+ // --- Event Handlers / Other Methods ---
75
+
76
+ // async onRuleFilesRetrieved(event: RuleFilesRetrievedEvent, context: ExtensionContext) {
77
+ // const config = await this.getConfigData(context);
78
+ // Use config values in your logic...
79
+ // }
80
+ }
@@ -0,0 +1,30 @@
1
+ /**
2
+ * {EXTENSION_NAME} Extension
3
+ *
4
+ * {DESCRIPTION}
5
+ */
6
+
7
+ import type { Extension, ExtensionContext } from '@aiderdesk/extensions';
8
+
9
+ export default class {CLASS_NAME} implements Extension {
10
+ static metadata = {
11
+ name: '{EXTENSION_NAME}',
12
+ version: '1.0.0',
13
+ description: '{DESCRIPTION}',
14
+ author: '{AUTHOR}',
15
+ capabilities: ['{CAPABILITY}'],
16
+ };
17
+
18
+ async onLoad(context: ExtensionContext): Promise<void> {
19
+ context.log('{EXTENSION_NAME} Extension loaded', 'info');
20
+ }
21
+
22
+ // Add methods as needed:
23
+ // - getCommands()
24
+ // - getTools()
25
+ // - getAgents()
26
+ // - getModes()
27
+ // - onAgentStarted()
28
+ // - onToolCalled()
29
+ // etc.
30
+ }
@@ -0,0 +1,91 @@
1
+ /**
2
+ * {{EXTENSION_NAME}} Extension
3
+ *
4
+ * {{DESCRIPTION}}
5
+ *
6
+ * This extension uses external JSX files for UI components.
7
+ */
8
+
9
+ import { readFileSync } from 'fs';
10
+ import { join } from 'path';
11
+ import type {
12
+ Extension,
13
+ ExtensionContext,
14
+ UIComponentDefinition
15
+ } from '@aiderdesk/extensions';
16
+
17
+ interface ComponentData {
18
+ // Define data structure passed to component
19
+ message: string;
20
+ count: number;
21
+ }
22
+
23
+ export default class {{CLASS_NAME}}Extension implements Extension {
24
+ static metadata = {
25
+ name: '{{EXTENSION_NAME}}',
26
+ version: '1.0.0',
27
+ description: '{{DESCRIPTION}}',
28
+ author: '{{AUTHOR}}',
29
+ capabilities: ['ui'],
30
+ };
31
+
32
+ private state = {
33
+ count: 0,
34
+ message: 'Hello!',
35
+ };
36
+
37
+ async onLoad(context: ExtensionContext): Promise<void> {
38
+ context.log('{{EXTENSION_NAME}} extension loaded', 'info');
39
+ }
40
+
41
+ getUIComponents(_context: ExtensionContext): UIComponentDefinition[] {
42
+ // Load JSX from external file
43
+ const jsx = readFileSync(join(__dirname, './Component.jsx'), 'utf-8');
44
+
45
+ return [
46
+ {
47
+ id: '{{COMPONENT_ID}}',
48
+ placement: '{{PLACEMENT}}',
49
+ jsx,
50
+ loadData: true,
51
+ noDataCache: false, // Set to true if data should always be fresh
52
+ },
53
+ ];
54
+ }
55
+
56
+ async getUIExtensionData(
57
+ componentId: string,
58
+ _context: ExtensionContext
59
+ ): Promise<ComponentData | undefined> {
60
+ if (componentId === '{{COMPONENT_ID}}') {
61
+ return {
62
+ message: this.state.message,
63
+ count: this.state.count,
64
+ };
65
+ }
66
+ return undefined;
67
+ }
68
+
69
+ async executeUIExtensionAction(
70
+ componentId: string,
71
+ action: string,
72
+ args: unknown[],
73
+ context: ExtensionContext
74
+ ): Promise<unknown> {
75
+ if (componentId !== '{{COMPONENT_ID}}') return;
76
+
77
+ if (action === 'increment') {
78
+ this.state.count++;
79
+ context.triggerUIDataRefresh('{{COMPONENT_ID}}');
80
+ return { success: true, count: this.state.count };
81
+ }
82
+
83
+ if (action === 'set-message') {
84
+ this.state.message = args[0] as string;
85
+ context.triggerUIDataRefresh('{{COMPONENT_ID}}');
86
+ return { success: true };
87
+ }
88
+
89
+ return undefined;
90
+ }
91
+ }
@@ -0,0 +1,79 @@
1
+ /**
2
+ * {{EXTENSION_NAME}} Extension
3
+ *
4
+ * {{DESCRIPTION}}
5
+ */
6
+
7
+ import type {
8
+ Extension,
9
+ ExtensionContext,
10
+ UIComponentDefinition
11
+ } from '@aiderdesk/extensions';
12
+
13
+ export default class {{CLASS_NAME}}Extension implements Extension {
14
+ static metadata = {
15
+ name: '{{EXTENSION_NAME}}',
16
+ version: '1.0.0',
17
+ description: '{{DESCRIPTION}}',
18
+ author: '{{AUTHOR}}',
19
+ capabilities: ['ui'],
20
+ };
21
+
22
+ async onLoad(context: ExtensionContext): Promise<void> {
23
+ context.log('{{EXTENSION_NAME}} extension loaded', 'info');
24
+ }
25
+
26
+ getUIComponents(_context: ExtensionContext): UIComponentDefinition[] {
27
+ return [
28
+ {
29
+ id: '{{COMPONENT_ID}}',
30
+ placement: '{{PLACEMENT}}', // e.g., 'task-status-bar-right'
31
+ jsx: `
32
+ ({ data, task, ui }) => {
33
+ // Component implementation
34
+ return (
35
+ <div className="flex items-center gap-2 text-sm">
36
+ <span>Hello from {{EXTENSION_NAME}}</span>
37
+ </div>
38
+ );
39
+ }
40
+ `,
41
+ loadData: false, // Set to true if component needs data
42
+ },
43
+ ];
44
+ }
45
+
46
+ // Optional: Provide data to components
47
+ async getUIExtensionData(
48
+ componentId: string,
49
+ _context: ExtensionContext
50
+ ): Promise<unknown> {
51
+ if (componentId === '{{COMPONENT_ID}}') {
52
+ return {
53
+ // Data to pass to component
54
+ message: 'Hello from extension!',
55
+ };
56
+ }
57
+ return undefined;
58
+ }
59
+
60
+ // Optional: Handle actions from components
61
+ async executeUIExtensionAction(
62
+ componentId: string,
63
+ action: string,
64
+ args: unknown[],
65
+ context: ExtensionContext
66
+ ): Promise<unknown> {
67
+ if (componentId === '{{COMPONENT_ID}}') {
68
+ if (action === 'my-action') {
69
+ context.log('Action executed with args: ' + JSON.stringify(args), 'info');
70
+
71
+ // Trigger UI refresh if needed
72
+ context.triggerUIDataRefresh('{{COMPONENT_ID}}');
73
+
74
+ return { success: true };
75
+ }
76
+ }
77
+ return undefined;
78
+ }
79
+ }
@@ -0,0 +1,170 @@
1
+ # Command Definition
2
+
3
+ Structure for defining slash commands in extensions.
4
+
5
+ ## CommandDefinition Interface
6
+
7
+ ```typescript
8
+ interface CommandDefinition {
9
+ name: string; // Command name (without /)
10
+ description: string; // Shown in command palette
11
+ arguments?: CommandArgument[];
12
+ execute(args: string[], context: ExtensionContext): Promise<void>;
13
+ }
14
+
15
+ interface CommandArgument {
16
+ description: string;
17
+ required: boolean;
18
+ options?: string[]; // Predefined options for autocomplete
19
+ }
20
+ ```
21
+
22
+ ## Simple Command Example
23
+
24
+ ```typescript
25
+ const HELLO_COMMAND: CommandDefinition = {
26
+ name: 'hello',
27
+ description: 'Say hello',
28
+ arguments: [
29
+ { description: 'Name to greet', required: true }
30
+ ],
31
+ async execute(args: string[], context: ExtensionContext): Promise<void> {
32
+ const taskContext = context.getTaskContext();
33
+ if (!taskContext) {
34
+ context.log('No task context', 'error');
35
+ return;
36
+ }
37
+
38
+ const name = args[0] || 'World';
39
+ taskContext.addLogMessage('info', `Hello, ${name}!`);
40
+ }
41
+ };
42
+ ```
43
+
44
+ ## Command with Options
45
+
46
+ ```typescript
47
+ const THEME_COMMAND: CommandDefinition = {
48
+ name: 'theme',
49
+ description: 'Switch the AiderDesk theme',
50
+ arguments: [
51
+ {
52
+ description: 'Name of the theme to apply',
53
+ required: true,
54
+ options: ['dark', 'light', 'ocean', 'forest']
55
+ }
56
+ ],
57
+ async execute(args: string[], context: ExtensionContext): Promise<void> {
58
+ const taskContext = context.getTaskContext();
59
+ const themeName = args[0];
60
+
61
+ if (!themeName) {
62
+ taskContext?.addLogMessage('warning', 'Usage: /theme <theme-name>');
63
+ return;
64
+ }
65
+
66
+ await context.updateSettings({ theme: themeName });
67
+ taskContext?.addLogMessage('info', `Theme changed to: ${themeName}`);
68
+ }
69
+ };
70
+ ```
71
+
72
+ ## Command with Config
73
+
74
+ ```typescript
75
+ // In extension class
76
+ private config: MyConfig;
77
+
78
+ async onLoad(context: ExtensionContext): Promise<void> {
79
+ this.config = await loadConfig();
80
+ }
81
+
82
+ getCommands(_context: ExtensionContext): CommandDefinition[] {
83
+ return [{
84
+ name: 'my-setting',
85
+ description: 'Get or set a value',
86
+ arguments: [
87
+ { description: 'Value to set (optional)', required: false }
88
+ ],
89
+ execute: async (args: string[], context: ExtensionContext) => {
90
+ const taskContext = context.getTaskContext();
91
+ const [value] = args;
92
+
93
+ if (!value) {
94
+ // Show current value
95
+ taskContext?.addLogMessage('info', `Current: ${this.config.mySetting}`);
96
+ } else {
97
+ // Update value
98
+ this.config.mySetting = value;
99
+ await saveConfig(this.config);
100
+ taskContext?.addLogMessage('info', `Updated to: ${value}`);
101
+ }
102
+ }
103
+ }];
104
+ }
105
+ ```
106
+
107
+ ## Multi-Argument Commands
108
+
109
+ ```typescript
110
+ const CONFIG_COMMAND: CommandDefinition = {
111
+ name: 'config',
112
+ description: 'Manage extension settings',
113
+ arguments: [
114
+ { description: 'Setting name', required: true },
115
+ { description: 'Setting value', required: false }
116
+ ],
117
+ async execute(args: string[], context: ExtensionContext): Promise<void> {
118
+ const taskContext = context.getTaskContext();
119
+ const [setting, value] = args;
120
+
121
+ if (!setting) {
122
+ // Show all settings
123
+ const config = await loadConfig();
124
+ taskContext?.addLogMessage('info', `Settings:\n${JSON.stringify(config, null, 2)}`);
125
+ return;
126
+ }
127
+
128
+ if (!value) {
129
+ // Show specific setting
130
+ const config = await loadConfig();
131
+ taskContext?.addLogMessage('info', `${setting}: ${config[setting]}`);
132
+ return;
133
+ }
134
+
135
+ // Update setting
136
+ const config = await loadConfig();
137
+ config[setting] = value;
138
+ await saveConfig(config);
139
+ taskContext?.addLogMessage('info', `${setting} updated to: ${value}`);
140
+ }
141
+ };
142
+ ```
143
+
144
+ ## Error Handling
145
+
146
+ ```typescript
147
+ execute: async (args: string[], context: ExtensionContext) => {
148
+ const taskContext = context.getTaskContext();
149
+ if (!taskContext) {
150
+ context.log('No active task context', 'error');
151
+ return;
152
+ }
153
+
154
+ try {
155
+ // Command logic
156
+ } catch (error) {
157
+ taskContext.addLogMessage('error', `Command failed: ${error}`);
158
+ }
159
+ }
160
+ ```
161
+
162
+ ## Registering Commands
163
+
164
+ ```typescript
165
+ class MyExtension implements Extension {
166
+ getCommands(_context: ExtensionContext): CommandDefinition[] {
167
+ return [COMMAND_1, COMMAND_2];
168
+ }
169
+ }
170
+ ```