@zythum02/fello-server 0.1.52 → 0.1.53

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 (377) hide show
  1. package/out/renderer/assets/{_baseUniq-C0L-SxO8.js → _baseUniq-CJr3HkLS.js} +1 -1
  2. package/out/renderer/assets/_baseUniq-CJr3HkLS.js.br +0 -0
  3. package/out/renderer/assets/_baseUniq-CJr3HkLS.js.gz +0 -0
  4. package/out/renderer/assets/{arc-bnlMIyYF.js → arc-POsBroTF.js} +1 -1
  5. package/out/renderer/assets/arc-POsBroTF.js.br +0 -0
  6. package/out/renderer/assets/arc-POsBroTF.js.gz +0 -0
  7. package/out/renderer/assets/{architectureDiagram-Q4EWVU46-Cr0249Lu.js → architectureDiagram-Q4EWVU46-CmToUhDb.js} +6 -6
  8. package/out/renderer/assets/architectureDiagram-Q4EWVU46-CmToUhDb.js.br +0 -0
  9. package/out/renderer/assets/architectureDiagram-Q4EWVU46-CmToUhDb.js.gz +0 -0
  10. package/out/renderer/assets/{arrow-left-D589pHHA.js → arrow-left-CxS1t3f7.js} +1 -1
  11. package/out/renderer/assets/{automation-CvjrkE9z.js → automation-Cyz3eLWp.js} +7 -8
  12. package/out/renderer/assets/automation-Cyz3eLWp.js.br +0 -0
  13. package/out/renderer/assets/automation-Cyz3eLWp.js.gz +0 -0
  14. package/out/renderer/assets/{blockDiagram-DXYQGD6D-Cw6vh5dx.js → blockDiagram-DXYQGD6D-M2nnTg9f.js} +7 -7
  15. package/out/renderer/assets/blockDiagram-DXYQGD6D-M2nnTg9f.js.br +0 -0
  16. package/out/renderer/assets/blockDiagram-DXYQGD6D-M2nnTg9f.js.gz +0 -0
  17. package/out/renderer/assets/{c4Diagram-AHTNJAMY-BUrvcyv2.js → c4Diagram-AHTNJAMY-CwLtsy_0.js} +3 -3
  18. package/out/renderer/assets/c4Diagram-AHTNJAMY-CwLtsy_0.js.br +0 -0
  19. package/out/renderer/assets/c4Diagram-AHTNJAMY-CwLtsy_0.js.gz +0 -0
  20. package/out/renderer/assets/{channel-DQr36qW5.js → channel-BUNDMqpH.js} +1 -1
  21. package/out/renderer/assets/{chunk-4BX2VUAB-DOsXCDD7.js → chunk-4BX2VUAB-B2qXmkDT.js} +1 -1
  22. package/out/renderer/assets/{chunk-4TB4RGXK-D_fBnf0p.js → chunk-4TB4RGXK-DXLZpPY5.js} +5 -5
  23. package/out/renderer/assets/chunk-4TB4RGXK-DXLZpPY5.js.br +0 -0
  24. package/out/renderer/assets/chunk-4TB4RGXK-DXLZpPY5.js.gz +0 -0
  25. package/out/renderer/assets/{chunk-55IACEB6-3ETNuedT.js → chunk-55IACEB6-CJeyefxI.js} +1 -1
  26. package/out/renderer/assets/{chunk-EDXVE4YY-BJLqHaER.js → chunk-EDXVE4YY-CNjJEQfY.js} +1 -1
  27. package/out/renderer/assets/chunk-EDXVE4YY-CNjJEQfY.js.br +0 -0
  28. package/out/renderer/assets/chunk-EDXVE4YY-CNjJEQfY.js.gz +0 -0
  29. package/out/renderer/assets/{chunk-FMBD7UC4-DP-WGTNG.js → chunk-FMBD7UC4-DOAOsjRu.js} +1 -1
  30. package/out/renderer/assets/{chunk-OYMX7WX6-CrS7loi7.js → chunk-OYMX7WX6-BG4B1VQ7.js} +3 -3
  31. package/out/renderer/assets/chunk-OYMX7WX6-BG4B1VQ7.js.br +0 -0
  32. package/out/renderer/assets/chunk-OYMX7WX6-BG4B1VQ7.js.gz +0 -0
  33. package/out/renderer/assets/{chunk-QZHKN3VN-C53USs5W.js → chunk-QZHKN3VN-B9zfXYIQ.js} +1 -1
  34. package/out/renderer/assets/{chunk-YZCP3GAM-CMgdytZR.js → chunk-YZCP3GAM-jeoI2tsD.js} +1 -1
  35. package/out/renderer/assets/chunk-YZCP3GAM-jeoI2tsD.js.br +0 -0
  36. package/out/renderer/assets/chunk-YZCP3GAM-jeoI2tsD.js.gz +0 -0
  37. package/out/renderer/assets/{circle-x-OvXymUrf.js → circle-x-B1kBsMlS.js} +1 -1
  38. package/out/renderer/assets/{classDiagram-v2-HSJHXN6E-DIYtEiO5.js → classDiagram-6PBFFD2Q-DWPFF3Yt.js} +7 -7
  39. package/out/renderer/assets/{classDiagram-6PBFFD2Q-DIYtEiO5.js → classDiagram-v2-HSJHXN6E-DWPFF3Yt.js} +7 -7
  40. package/out/renderer/assets/{clone-D45P7Iqc.js → clone-Dcvr9oKv.js} +1 -1
  41. package/out/renderer/assets/{code-editor-SuOcN-5B.js → code-editor-CEXlC4aV.js} +2 -2
  42. package/out/renderer/assets/code-editor-CEXlC4aV.js.br +0 -0
  43. package/out/renderer/assets/code-editor-CEXlC4aV.js.gz +0 -0
  44. package/out/renderer/assets/{collapsible-Bd85ZCyx.js → collapsible-CMuCJUWG.js} +1 -1
  45. package/out/renderer/assets/collapsible-CMuCJUWG.js.br +0 -0
  46. package/out/renderer/assets/collapsible-CMuCJUWG.js.gz +0 -0
  47. package/out/renderer/assets/{cose-bilkent-S5V4N54A-Dq8VllNT.js → cose-bilkent-S5V4N54A-B3bgImVS.js} +2 -2
  48. package/out/renderer/assets/cose-bilkent-S5V4N54A-B3bgImVS.js.br +0 -0
  49. package/out/renderer/assets/cose-bilkent-S5V4N54A-B3bgImVS.js.gz +0 -0
  50. package/out/renderer/assets/{dagre-KV5264BT-Dec8q4UT.js → dagre-KV5264BT-DTbumBA_.js} +7 -7
  51. package/out/renderer/assets/dagre-KV5264BT-DTbumBA_.js.br +0 -0
  52. package/out/renderer/assets/dagre-KV5264BT-DTbumBA_.js.gz +0 -0
  53. package/out/renderer/assets/{diagram-5BDNPKRD-CzA2u_EN.js → diagram-5BDNPKRD-B34Y6e8q.js} +7 -7
  54. package/out/renderer/assets/diagram-5BDNPKRD-B34Y6e8q.js.br +0 -0
  55. package/out/renderer/assets/diagram-5BDNPKRD-B34Y6e8q.js.gz +0 -0
  56. package/out/renderer/assets/{diagram-G4DWMVQ6-C8h3R7jD.js → diagram-G4DWMVQ6-BBiBmFR4.js} +7 -7
  57. package/out/renderer/assets/diagram-G4DWMVQ6-BBiBmFR4.js.br +0 -0
  58. package/out/renderer/assets/diagram-G4DWMVQ6-BBiBmFR4.js.gz +0 -0
  59. package/out/renderer/assets/{diagram-MMDJMWI5-9tiXSF90.js → diagram-MMDJMWI5-P-YslDjG.js} +6 -6
  60. package/out/renderer/assets/diagram-MMDJMWI5-P-YslDjG.js.br +0 -0
  61. package/out/renderer/assets/diagram-MMDJMWI5-P-YslDjG.js.gz +0 -0
  62. package/out/renderer/assets/{diagram-TYMM5635-BrarGJNf.js → diagram-TYMM5635-D_cLard_.js} +6 -6
  63. package/out/renderer/assets/diagram-TYMM5635-D_cLard_.js.br +0 -0
  64. package/out/renderer/assets/diagram-TYMM5635-D_cLard_.js.gz +0 -0
  65. package/out/renderer/assets/{ellipsis-BafkhboM.js → ellipsis-D1agTYu1.js} +1 -1
  66. package/out/renderer/assets/{erDiagram-SMLLAGMA-1Q9StK7L.js → erDiagram-SMLLAGMA-C1MHqKvC.js} +5 -5
  67. package/out/renderer/assets/erDiagram-SMLLAGMA-C1MHqKvC.js.br +0 -0
  68. package/out/renderer/assets/erDiagram-SMLLAGMA-C1MHqKvC.js.gz +0 -0
  69. package/out/renderer/assets/{field-ohYLdnJa.js → field-DR3J0r9e.js} +1 -1
  70. package/out/renderer/assets/field-DR3J0r9e.js.br +0 -0
  71. package/out/renderer/assets/field-DR3J0r9e.js.gz +0 -0
  72. package/out/renderer/assets/{file-text-CshHuHgW.js → file-text-nGCW6zu1.js} +1 -1
  73. package/out/renderer/assets/{flowDiagram-DWJPFMVM-CpcXVOmj.js → flowDiagram-DWJPFMVM-DprlEc3Z.js} +7 -7
  74. package/out/renderer/assets/flowDiagram-DWJPFMVM-DprlEc3Z.js.br +0 -0
  75. package/out/renderer/assets/flowDiagram-DWJPFMVM-DprlEc3Z.js.gz +0 -0
  76. package/out/renderer/assets/{ganttDiagram-T4ZO3ILL-C7Da4JBG.js → ganttDiagram-T4ZO3ILL-CbTdumBm.js} +3 -3
  77. package/out/renderer/assets/ganttDiagram-T4ZO3ILL-CbTdumBm.js.br +0 -0
  78. package/out/renderer/assets/ganttDiagram-T4ZO3ILL-CbTdumBm.js.gz +0 -0
  79. package/out/renderer/assets/{gitGraphDiagram-UUTBAWPF-COBL52q_.js → gitGraphDiagram-UUTBAWPF-06bme-w8.js} +7 -7
  80. package/out/renderer/assets/gitGraphDiagram-UUTBAWPF-06bme-w8.js.br +0 -0
  81. package/out/renderer/assets/gitGraphDiagram-UUTBAWPF-06bme-w8.js.gz +0 -0
  82. package/out/renderer/assets/{graph-vKaAs6sc.js → graph-BZhxluo9.js} +2 -2
  83. package/out/renderer/assets/graph-BZhxluo9.js.br +0 -0
  84. package/out/renderer/assets/graph-BZhxluo9.js.gz +0 -0
  85. package/out/renderer/assets/{highlighted-body-OFNGDK62-BGNnB1Ll.js → highlighted-body-OFNGDK62-CvDMJtXf.js} +2 -2
  86. package/out/renderer/assets/{index-BJPggXxf.js → index-LmYTNvdF.js} +906 -457
  87. package/out/renderer/assets/index-LmYTNvdF.js.br +0 -0
  88. package/out/renderer/assets/index-LmYTNvdF.js.gz +0 -0
  89. package/out/renderer/assets/index-aGJ_yZib.css +382 -0
  90. package/out/renderer/assets/index-aGJ_yZib.css.br +0 -0
  91. package/out/renderer/assets/index-aGJ_yZib.css.gz +0 -0
  92. package/out/renderer/assets/{infoDiagram-42DDH7IO-z37e1cYq.js → infoDiagram-42DDH7IO-DqivEzWL.js} +5 -5
  93. package/out/renderer/assets/infoDiagram-42DDH7IO-DqivEzWL.js.br +0 -0
  94. package/out/renderer/assets/infoDiagram-42DDH7IO-DqivEzWL.js.gz +0 -0
  95. package/out/renderer/assets/{ishikawaDiagram-UXIWVN3A-D0QTo3NZ.js → ishikawaDiagram-UXIWVN3A-BKcg_z4w.js} +2 -2
  96. package/out/renderer/assets/ishikawaDiagram-UXIWVN3A-BKcg_z4w.js.br +0 -0
  97. package/out/renderer/assets/ishikawaDiagram-UXIWVN3A-BKcg_z4w.js.gz +0 -0
  98. package/out/renderer/assets/{item-Cv-tnX8b.js → item-BHEUMM9H.js} +1 -1
  99. package/out/renderer/assets/item-BHEUMM9H.js.br +0 -0
  100. package/out/renderer/assets/item-BHEUMM9H.js.gz +0 -0
  101. package/out/renderer/assets/{journeyDiagram-VCZTEJTY-CQV0gdjM.js → journeyDiagram-VCZTEJTY-Bvv8xuxQ.js} +5 -5
  102. package/out/renderer/assets/journeyDiagram-VCZTEJTY-Bvv8xuxQ.js.br +0 -0
  103. package/out/renderer/assets/journeyDiagram-VCZTEJTY-Bvv8xuxQ.js.gz +0 -0
  104. package/out/renderer/assets/{kanban-definition-6JOO6SKY-DouRT6vc.js → kanban-definition-6JOO6SKY-C-gRMpeM.js} +3 -3
  105. package/out/renderer/assets/kanban-definition-6JOO6SKY-C-gRMpeM.js.br +0 -0
  106. package/out/renderer/assets/kanban-definition-6JOO6SKY-C-gRMpeM.js.gz +0 -0
  107. package/out/renderer/assets/{layout-BhbUjpvY.js → layout-B4dSyItA.js} +4 -4
  108. package/out/renderer/assets/layout-B4dSyItA.js.br +0 -0
  109. package/out/renderer/assets/layout-B4dSyItA.js.gz +0 -0
  110. package/out/renderer/assets/{linear-D1WO10JK.js → linear-CoVhuer7.js} +1 -1
  111. package/out/renderer/assets/linear-CoVhuer7.js.br +0 -0
  112. package/out/renderer/assets/linear-CoVhuer7.js.gz +0 -0
  113. package/out/renderer/assets/{link-2-C5KPDK2L.js → link-2-DHUPzNSt.js} +1 -1
  114. package/out/renderer/assets/{mermaid-GHXKKRXX-KwA2c0l5.js → mermaid-GHXKKRXX-CZqkhGx7.js} +54 -54
  115. package/out/renderer/assets/mermaid-GHXKKRXX-CZqkhGx7.js.br +0 -0
  116. package/out/renderer/assets/mermaid-GHXKKRXX-CZqkhGx7.js.gz +0 -0
  117. package/out/renderer/assets/mic-BgSvicCB.js +22 -0
  118. package/out/renderer/assets/{min-BP2C7bzG.js → min-emzuJjmk.js} +2 -2
  119. package/out/renderer/assets/min-emzuJjmk.js.br +0 -0
  120. package/out/renderer/assets/min-emzuJjmk.js.gz +0 -0
  121. package/out/renderer/assets/{mindmap-definition-QFDTVHPH-CxLYrjVp.js → mindmap-definition-QFDTVHPH-DQ4JNECm.js} +4 -4
  122. package/out/renderer/assets/mindmap-definition-QFDTVHPH-DQ4JNECm.js.br +0 -0
  123. package/out/renderer/assets/mindmap-definition-QFDTVHPH-DQ4JNECm.js.gz +0 -0
  124. package/out/renderer/assets/{open-guide-UhaRhiI6.js → open-guide-CfLO-Sdk.js} +1 -1
  125. package/out/renderer/assets/{package-search-DpyeQ5Lx.js → package-search-CrF2Iegl.js} +1 -1
  126. package/out/renderer/assets/{pieDiagram-DEJITSTG-D1LBRn_k.js → pieDiagram-DEJITSTG-0H6CGQQt.js} +7 -7
  127. package/out/renderer/assets/pieDiagram-DEJITSTG-0H6CGQQt.js.br +0 -0
  128. package/out/renderer/assets/pieDiagram-DEJITSTG-0H6CGQQt.js.gz +0 -0
  129. package/out/renderer/assets/{plus-CsV_3veW.js → plus-YNCXW-GD.js} +1 -1
  130. package/out/renderer/assets/{quadrantDiagram-34T5L4WZ-89cdKeKP.js → quadrantDiagram-34T5L4WZ-D0aPKp5z.js} +3 -3
  131. package/out/renderer/assets/quadrantDiagram-34T5L4WZ-D0aPKp5z.js.br +0 -0
  132. package/out/renderer/assets/quadrantDiagram-34T5L4WZ-D0aPKp5z.js.gz +0 -0
  133. package/out/renderer/assets/{refresh-cw-CYW3HR-E.js → refresh-cw-Bvm578nW.js} +1 -1
  134. package/out/renderer/assets/{requirementDiagram-MS252O5E-BPmX5cbr.js → requirementDiagram-MS252O5E-BkzwapW_.js} +4 -4
  135. package/out/renderer/assets/requirementDiagram-MS252O5E-BkzwapW_.js.br +0 -0
  136. package/out/renderer/assets/requirementDiagram-MS252O5E-BkzwapW_.js.gz +0 -0
  137. package/out/renderer/assets/{resizable-C_plViAK.js → resizable-cStzNJ8V.js} +1 -1
  138. package/out/renderer/assets/resizable-cStzNJ8V.js.br +0 -0
  139. package/out/renderer/assets/resizable-cStzNJ8V.js.gz +0 -0
  140. package/out/renderer/assets/{sankeyDiagram-XADWPNL6-Cy6CP9QU.js → sankeyDiagram-XADWPNL6-Dbde7usj.js} +2 -2
  141. package/out/renderer/assets/sankeyDiagram-XADWPNL6-Dbde7usj.js.br +0 -0
  142. package/out/renderer/assets/sankeyDiagram-XADWPNL6-Dbde7usj.js.gz +0 -0
  143. package/out/renderer/assets/{schedule-BRGzJU8Q.js → schedule-DNMCsk-G.js} +9 -10
  144. package/out/renderer/assets/schedule-DNMCsk-G.js.br +0 -0
  145. package/out/renderer/assets/schedule-DNMCsk-G.js.gz +0 -0
  146. package/out/renderer/assets/{search-BHyqy--Q.js → search-BEY9yGF_.js} +1 -1
  147. package/out/renderer/assets/{sequenceDiagram-FGHM5R23-B3c7Za1w.js → sequenceDiagram-FGHM5R23-DI8l1pSL.js} +4 -4
  148. package/out/renderer/assets/sequenceDiagram-FGHM5R23-DI8l1pSL.js.br +0 -0
  149. package/out/renderer/assets/sequenceDiagram-FGHM5R23-DI8l1pSL.js.gz +0 -0
  150. package/out/renderer/assets/{session-DAyi31xW.js → session-Bn5k9ScR.js} +616 -55
  151. package/out/renderer/assets/session-Bn5k9ScR.js.br +0 -0
  152. package/out/renderer/assets/session-Bn5k9ScR.js.gz +0 -0
  153. package/out/renderer/assets/{setting-dialog-B9QpnCSy.js → setting-dialog-sqfPfGsy.js} +3 -3
  154. package/out/renderer/assets/setting-dialog-sqfPfGsy.js.br +0 -0
  155. package/out/renderer/assets/setting-dialog-sqfPfGsy.js.gz +0 -0
  156. package/out/renderer/assets/{settings-2-DTnwbGMG.js → settings-2-DRhoXOO8.js} +1 -1
  157. package/out/renderer/assets/{settings-agents-BrAPSjkm.js → settings-agents-Bntc31Nn.js} +10 -11
  158. package/out/renderer/assets/settings-agents-Bntc31Nn.js.br +0 -0
  159. package/out/renderer/assets/settings-agents-Bntc31Nn.js.gz +0 -0
  160. package/out/renderer/assets/{settings-general-Ck2OiZjy.js → settings-general-DhbLb9cP.js} +2 -2
  161. package/out/renderer/assets/settings-general-DhbLb9cP.js.br +0 -0
  162. package/out/renderer/assets/settings-general-DhbLb9cP.js.gz +0 -0
  163. package/out/renderer/assets/{settings-ilink-D0Br74W_.js → settings-ilink-C7nGGjwT.js} +3 -3
  164. package/out/renderer/assets/settings-ilink-C7nGGjwT.js.br +0 -0
  165. package/out/renderer/assets/settings-ilink-C7nGGjwT.js.gz +0 -0
  166. package/out/renderer/assets/{settings-image-generation-BdyKoUUZ.js → settings-image-generation-H2dgqG7Y.js} +6 -7
  167. package/out/renderer/assets/settings-image-generation-H2dgqG7Y.js.br +0 -0
  168. package/out/renderer/assets/settings-image-generation-H2dgqG7Y.js.gz +0 -0
  169. package/out/renderer/assets/{settings-layout-B7d1oQnz.js → settings-layout-ATto1xpJ.js} +9 -3
  170. package/out/renderer/assets/settings-layout-ATto1xpJ.js.br +0 -0
  171. package/out/renderer/assets/settings-layout-ATto1xpJ.js.gz +0 -0
  172. package/out/renderer/assets/{settings-mcp-DtnVGpCh.js → settings-mcp-DUdMuoJ-.js} +7 -8
  173. package/out/renderer/assets/settings-mcp-DUdMuoJ-.js.br +0 -0
  174. package/out/renderer/assets/settings-mcp-DUdMuoJ-.js.gz +0 -0
  175. package/out/renderer/assets/{settings-memory-Bff_D3Id.js → settings-memory-CJLG4aHW.js} +3 -3
  176. package/out/renderer/assets/settings-memory-CJLG4aHW.js.br +0 -0
  177. package/out/renderer/assets/settings-memory-CJLG4aHW.js.gz +0 -0
  178. package/out/renderer/assets/{settings-snippets-CuwNZ684.js → settings-snippets-B4VcnD5Z.js} +6 -7
  179. package/out/renderer/assets/settings-snippets-B4VcnD5Z.js.br +0 -0
  180. package/out/renderer/assets/settings-snippets-B4VcnD5Z.js.gz +0 -0
  181. package/out/renderer/assets/settings-speech-to-text-DQ7lfkTu.js +1054 -0
  182. package/out/renderer/assets/settings-speech-to-text-DQ7lfkTu.js.br +0 -0
  183. package/out/renderer/assets/settings-speech-to-text-DQ7lfkTu.js.gz +0 -0
  184. package/out/renderer/assets/{settings-webui-CcjZQw6G.js → settings-webui-DZf9O-6j.js} +2 -2
  185. package/out/renderer/assets/settings-webui-DZf9O-6j.js.br +0 -0
  186. package/out/renderer/assets/settings-webui-DZf9O-6j.js.gz +0 -0
  187. package/out/renderer/assets/{skills-installed-BR3EmTKD.js → skills-installed-Dp0r_4I-.js} +4 -4
  188. package/out/renderer/assets/skills-installed-Dp0r_4I-.js.br +0 -0
  189. package/out/renderer/assets/skills-installed-Dp0r_4I-.js.gz +0 -0
  190. package/out/renderer/assets/{skills-layout-Cgy95TdD.js → skills-layout-D-5rlY38.js} +2 -2
  191. package/out/renderer/assets/skills-layout-D-5rlY38.js.br +0 -0
  192. package/out/renderer/assets/skills-layout-D-5rlY38.js.gz +0 -0
  193. package/out/renderer/assets/{skills-skills-sh-7eO0Llg2.js → skills-skills-sh-CcLoIrSw.js} +4 -4
  194. package/out/renderer/assets/skills-skills-sh-CcLoIrSw.js.br +0 -0
  195. package/out/renderer/assets/skills-skills-sh-CcLoIrSw.js.gz +0 -0
  196. package/out/renderer/assets/{sortable.esm-BTWJnVbf.js → sortable.esm-knFxDx0Y.js} +1 -1
  197. package/out/renderer/assets/sortable.esm-knFxDx0Y.js.br +0 -0
  198. package/out/renderer/assets/sortable.esm-knFxDx0Y.js.gz +0 -0
  199. package/out/renderer/assets/{standard-schema-Dk273X__.js → standard-schema-dKXoCekr.js} +1 -1
  200. package/out/renderer/assets/standard-schema-dKXoCekr.js.br +0 -0
  201. package/out/renderer/assets/standard-schema-dKXoCekr.js.gz +0 -0
  202. package/out/renderer/assets/{stateDiagram-FHFEXIEX-C-7WuE0a.js → stateDiagram-FHFEXIEX-DWWz4PMv.js} +9 -9
  203. package/out/renderer/assets/stateDiagram-FHFEXIEX-DWWz4PMv.js.br +0 -0
  204. package/out/renderer/assets/stateDiagram-FHFEXIEX-DWWz4PMv.js.gz +0 -0
  205. package/out/renderer/assets/{stateDiagram-v2-QKLJ7IA2-IZRTgRo8.js → stateDiagram-v2-QKLJ7IA2-Dm2qD5bg.js} +5 -5
  206. package/out/renderer/assets/{task-Bd1x6VfK.js → task-C5dyYbfn.js} +11 -12
  207. package/out/renderer/assets/task-C5dyYbfn.js.br +0 -0
  208. package/out/renderer/assets/task-C5dyYbfn.js.gz +0 -0
  209. package/out/renderer/assets/{textarea-CcqU8Ki7.js → textarea-DTqKlQbL.js} +1 -1
  210. package/out/renderer/assets/{timeline-definition-GMOUNBTQ-DVUMAatS.js → timeline-definition-GMOUNBTQ-A1tEoL9d.js} +3 -3
  211. package/out/renderer/assets/timeline-definition-GMOUNBTQ-A1tEoL9d.js.br +0 -0
  212. package/out/renderer/assets/timeline-definition-GMOUNBTQ-A1tEoL9d.js.gz +0 -0
  213. package/out/renderer/assets/{vennDiagram-DHZGUBPP-BtKdpgmE.js → vennDiagram-DHZGUBPP-tNdYrJi_.js} +2 -2
  214. package/out/renderer/assets/vennDiagram-DHZGUBPP-tNdYrJi_.js.br +0 -0
  215. package/out/renderer/assets/vennDiagram-DHZGUBPP-tNdYrJi_.js.gz +0 -0
  216. package/out/renderer/assets/{wardley-RL74JXVD-DRlpukah.js → wardley-RL74JXVD-BxN5_Sp6.js} +4 -4
  217. package/out/renderer/assets/wardley-RL74JXVD-BxN5_Sp6.js.br +0 -0
  218. package/out/renderer/assets/wardley-RL74JXVD-BxN5_Sp6.js.gz +0 -0
  219. package/out/renderer/assets/{wardleyDiagram-NUSXRM2D-c_iDOO-3.js → wardleyDiagram-NUSXRM2D-B_3jA8zU.js} +6 -6
  220. package/out/renderer/assets/wardleyDiagram-NUSXRM2D-B_3jA8zU.js.br +0 -0
  221. package/out/renderer/assets/wardleyDiagram-NUSXRM2D-B_3jA8zU.js.gz +0 -0
  222. package/out/renderer/assets/{wrench-C-pOIUrz.js → wrench-7r-g9MUq.js} +1 -1
  223. package/out/renderer/assets/wrench-7r-g9MUq.js.br +0 -0
  224. package/out/renderer/assets/wrench-7r-g9MUq.js.gz +0 -0
  225. package/out/renderer/assets/{xlsx-view-Ca3bToM7.js → xlsx-view-Bv0YhA5m.js} +9 -9
  226. package/out/renderer/assets/xlsx-view-Bv0YhA5m.js.br +0 -0
  227. package/out/renderer/assets/xlsx-view-Bv0YhA5m.js.gz +0 -0
  228. package/out/renderer/assets/{xychartDiagram-5P7HB3ND-D65drBbj.js → xychartDiagram-5P7HB3ND-NNVuzC4j.js} +3 -3
  229. package/out/renderer/assets/xychartDiagram-5P7HB3ND-NNVuzC4j.js.br +0 -0
  230. package/out/renderer/assets/xychartDiagram-5P7HB3ND-NNVuzC4j.js.gz +0 -0
  231. package/out/renderer/index.html +2 -2
  232. package/out/renderer/index.html.br +0 -0
  233. package/out/renderer/index.html.gz +0 -0
  234. package/out/server/main.js +247 -11
  235. package/package.json +2 -1
  236. package/resources/tree-sitter-wasm/tree-sitter-dart.wasm +0 -0
  237. package/out/renderer/assets/_baseUniq-C0L-SxO8.js.br +0 -0
  238. package/out/renderer/assets/_baseUniq-C0L-SxO8.js.gz +0 -0
  239. package/out/renderer/assets/arc-bnlMIyYF.js.br +0 -0
  240. package/out/renderer/assets/arc-bnlMIyYF.js.gz +0 -0
  241. package/out/renderer/assets/architectureDiagram-Q4EWVU46-Cr0249Lu.js.br +0 -0
  242. package/out/renderer/assets/architectureDiagram-Q4EWVU46-Cr0249Lu.js.gz +0 -0
  243. package/out/renderer/assets/automation-CvjrkE9z.js.br +0 -0
  244. package/out/renderer/assets/automation-CvjrkE9z.js.gz +0 -0
  245. package/out/renderer/assets/blockDiagram-DXYQGD6D-Cw6vh5dx.js.br +0 -0
  246. package/out/renderer/assets/blockDiagram-DXYQGD6D-Cw6vh5dx.js.gz +0 -0
  247. package/out/renderer/assets/c4Diagram-AHTNJAMY-BUrvcyv2.js.br +0 -0
  248. package/out/renderer/assets/c4Diagram-AHTNJAMY-BUrvcyv2.js.gz +0 -0
  249. package/out/renderer/assets/chunk-4TB4RGXK-D_fBnf0p.js.br +0 -0
  250. package/out/renderer/assets/chunk-4TB4RGXK-D_fBnf0p.js.gz +0 -0
  251. package/out/renderer/assets/chunk-EDXVE4YY-BJLqHaER.js.br +0 -0
  252. package/out/renderer/assets/chunk-EDXVE4YY-BJLqHaER.js.gz +0 -0
  253. package/out/renderer/assets/chunk-OYMX7WX6-CrS7loi7.js.br +0 -0
  254. package/out/renderer/assets/chunk-OYMX7WX6-CrS7loi7.js.gz +0 -0
  255. package/out/renderer/assets/chunk-YZCP3GAM-CMgdytZR.js.br +0 -0
  256. package/out/renderer/assets/chunk-YZCP3GAM-CMgdytZR.js.gz +0 -0
  257. package/out/renderer/assets/clipboard-xI9lExaB.js +0 -15
  258. package/out/renderer/assets/code-editor-SuOcN-5B.js.br +0 -0
  259. package/out/renderer/assets/code-editor-SuOcN-5B.js.gz +0 -0
  260. package/out/renderer/assets/collapsible-Bd85ZCyx.js.br +0 -0
  261. package/out/renderer/assets/collapsible-Bd85ZCyx.js.gz +0 -0
  262. package/out/renderer/assets/context-menu-BO9-4FYd.js +0 -282
  263. package/out/renderer/assets/context-menu-BO9-4FYd.js.br +0 -0
  264. package/out/renderer/assets/context-menu-BO9-4FYd.js.gz +0 -0
  265. package/out/renderer/assets/cose-bilkent-S5V4N54A-Dq8VllNT.js.br +0 -0
  266. package/out/renderer/assets/cose-bilkent-S5V4N54A-Dq8VllNT.js.gz +0 -0
  267. package/out/renderer/assets/dagre-KV5264BT-Dec8q4UT.js.br +0 -0
  268. package/out/renderer/assets/dagre-KV5264BT-Dec8q4UT.js.gz +0 -0
  269. package/out/renderer/assets/diagram-5BDNPKRD-CzA2u_EN.js.br +0 -0
  270. package/out/renderer/assets/diagram-5BDNPKRD-CzA2u_EN.js.gz +0 -0
  271. package/out/renderer/assets/diagram-G4DWMVQ6-C8h3R7jD.js.br +0 -0
  272. package/out/renderer/assets/diagram-G4DWMVQ6-C8h3R7jD.js.gz +0 -0
  273. package/out/renderer/assets/diagram-MMDJMWI5-9tiXSF90.js.br +0 -0
  274. package/out/renderer/assets/diagram-MMDJMWI5-9tiXSF90.js.gz +0 -0
  275. package/out/renderer/assets/diagram-TYMM5635-BrarGJNf.js.br +0 -0
  276. package/out/renderer/assets/diagram-TYMM5635-BrarGJNf.js.gz +0 -0
  277. package/out/renderer/assets/erDiagram-SMLLAGMA-1Q9StK7L.js.br +0 -0
  278. package/out/renderer/assets/erDiagram-SMLLAGMA-1Q9StK7L.js.gz +0 -0
  279. package/out/renderer/assets/field-ohYLdnJa.js.br +0 -0
  280. package/out/renderer/assets/field-ohYLdnJa.js.gz +0 -0
  281. package/out/renderer/assets/flowDiagram-DWJPFMVM-CpcXVOmj.js.br +0 -0
  282. package/out/renderer/assets/flowDiagram-DWJPFMVM-CpcXVOmj.js.gz +0 -0
  283. package/out/renderer/assets/ganttDiagram-T4ZO3ILL-C7Da4JBG.js.br +0 -0
  284. package/out/renderer/assets/ganttDiagram-T4ZO3ILL-C7Da4JBG.js.gz +0 -0
  285. package/out/renderer/assets/gitGraphDiagram-UUTBAWPF-COBL52q_.js.br +0 -0
  286. package/out/renderer/assets/gitGraphDiagram-UUTBAWPF-COBL52q_.js.gz +0 -0
  287. package/out/renderer/assets/graph-vKaAs6sc.js.br +0 -0
  288. package/out/renderer/assets/graph-vKaAs6sc.js.gz +0 -0
  289. package/out/renderer/assets/index-BJPggXxf.js.br +0 -0
  290. package/out/renderer/assets/index-BJPggXxf.js.gz +0 -0
  291. package/out/renderer/assets/index-DGML4zYf.css +0 -382
  292. package/out/renderer/assets/index-DGML4zYf.css.br +0 -0
  293. package/out/renderer/assets/index-DGML4zYf.css.gz +0 -0
  294. package/out/renderer/assets/infoDiagram-42DDH7IO-z37e1cYq.js.br +0 -0
  295. package/out/renderer/assets/infoDiagram-42DDH7IO-z37e1cYq.js.gz +0 -0
  296. package/out/renderer/assets/ishikawaDiagram-UXIWVN3A-D0QTo3NZ.js.br +0 -0
  297. package/out/renderer/assets/ishikawaDiagram-UXIWVN3A-D0QTo3NZ.js.gz +0 -0
  298. package/out/renderer/assets/item-Cv-tnX8b.js.br +0 -0
  299. package/out/renderer/assets/item-Cv-tnX8b.js.gz +0 -0
  300. package/out/renderer/assets/journeyDiagram-VCZTEJTY-CQV0gdjM.js.br +0 -0
  301. package/out/renderer/assets/journeyDiagram-VCZTEJTY-CQV0gdjM.js.gz +0 -0
  302. package/out/renderer/assets/kanban-definition-6JOO6SKY-DouRT6vc.js.br +0 -0
  303. package/out/renderer/assets/kanban-definition-6JOO6SKY-DouRT6vc.js.gz +0 -0
  304. package/out/renderer/assets/layout-BhbUjpvY.js.br +0 -0
  305. package/out/renderer/assets/layout-BhbUjpvY.js.gz +0 -0
  306. package/out/renderer/assets/linear-D1WO10JK.js.br +0 -0
  307. package/out/renderer/assets/linear-D1WO10JK.js.gz +0 -0
  308. package/out/renderer/assets/mermaid-GHXKKRXX-KwA2c0l5.js.br +0 -0
  309. package/out/renderer/assets/mermaid-GHXKKRXX-KwA2c0l5.js.gz +0 -0
  310. package/out/renderer/assets/min-BP2C7bzG.js.br +0 -0
  311. package/out/renderer/assets/min-BP2C7bzG.js.gz +0 -0
  312. package/out/renderer/assets/mindmap-definition-QFDTVHPH-CxLYrjVp.js.br +0 -0
  313. package/out/renderer/assets/mindmap-definition-QFDTVHPH-CxLYrjVp.js.gz +0 -0
  314. package/out/renderer/assets/pieDiagram-DEJITSTG-D1LBRn_k.js.br +0 -0
  315. package/out/renderer/assets/pieDiagram-DEJITSTG-D1LBRn_k.js.gz +0 -0
  316. package/out/renderer/assets/quadrantDiagram-34T5L4WZ-89cdKeKP.js.br +0 -0
  317. package/out/renderer/assets/quadrantDiagram-34T5L4WZ-89cdKeKP.js.gz +0 -0
  318. package/out/renderer/assets/requirementDiagram-MS252O5E-BPmX5cbr.js.br +0 -0
  319. package/out/renderer/assets/requirementDiagram-MS252O5E-BPmX5cbr.js.gz +0 -0
  320. package/out/renderer/assets/resizable-C_plViAK.js.br +0 -0
  321. package/out/renderer/assets/resizable-C_plViAK.js.gz +0 -0
  322. package/out/renderer/assets/sankeyDiagram-XADWPNL6-Cy6CP9QU.js.br +0 -0
  323. package/out/renderer/assets/sankeyDiagram-XADWPNL6-Cy6CP9QU.js.gz +0 -0
  324. package/out/renderer/assets/schedule-BRGzJU8Q.js.br +0 -0
  325. package/out/renderer/assets/schedule-BRGzJU8Q.js.gz +0 -0
  326. package/out/renderer/assets/sequenceDiagram-FGHM5R23-B3c7Za1w.js.br +0 -0
  327. package/out/renderer/assets/sequenceDiagram-FGHM5R23-B3c7Za1w.js.gz +0 -0
  328. package/out/renderer/assets/session-DAyi31xW.js.br +0 -0
  329. package/out/renderer/assets/session-DAyi31xW.js.gz +0 -0
  330. package/out/renderer/assets/setting-dialog-B9QpnCSy.js.br +0 -0
  331. package/out/renderer/assets/setting-dialog-B9QpnCSy.js.gz +0 -0
  332. package/out/renderer/assets/settings-agents-BrAPSjkm.js.br +0 -0
  333. package/out/renderer/assets/settings-agents-BrAPSjkm.js.gz +0 -0
  334. package/out/renderer/assets/settings-general-Ck2OiZjy.js.br +0 -0
  335. package/out/renderer/assets/settings-general-Ck2OiZjy.js.gz +0 -0
  336. package/out/renderer/assets/settings-ilink-D0Br74W_.js.br +0 -0
  337. package/out/renderer/assets/settings-ilink-D0Br74W_.js.gz +0 -0
  338. package/out/renderer/assets/settings-image-generation-BdyKoUUZ.js.br +0 -0
  339. package/out/renderer/assets/settings-image-generation-BdyKoUUZ.js.gz +0 -0
  340. package/out/renderer/assets/settings-layout-B7d1oQnz.js.br +0 -0
  341. package/out/renderer/assets/settings-layout-B7d1oQnz.js.gz +0 -0
  342. package/out/renderer/assets/settings-mcp-DtnVGpCh.js.br +0 -0
  343. package/out/renderer/assets/settings-mcp-DtnVGpCh.js.gz +0 -0
  344. package/out/renderer/assets/settings-memory-Bff_D3Id.js.br +0 -0
  345. package/out/renderer/assets/settings-memory-Bff_D3Id.js.gz +0 -0
  346. package/out/renderer/assets/settings-snippets-CuwNZ684.js.br +0 -0
  347. package/out/renderer/assets/settings-snippets-CuwNZ684.js.gz +0 -0
  348. package/out/renderer/assets/settings-webui-CcjZQw6G.js.br +0 -0
  349. package/out/renderer/assets/settings-webui-CcjZQw6G.js.gz +0 -0
  350. package/out/renderer/assets/skills-installed-BR3EmTKD.js.br +0 -0
  351. package/out/renderer/assets/skills-installed-BR3EmTKD.js.gz +0 -0
  352. package/out/renderer/assets/skills-layout-Cgy95TdD.js.br +0 -0
  353. package/out/renderer/assets/skills-layout-Cgy95TdD.js.gz +0 -0
  354. package/out/renderer/assets/skills-skills-sh-7eO0Llg2.js.br +0 -0
  355. package/out/renderer/assets/skills-skills-sh-7eO0Llg2.js.gz +0 -0
  356. package/out/renderer/assets/sortable.esm-BTWJnVbf.js.br +0 -0
  357. package/out/renderer/assets/sortable.esm-BTWJnVbf.js.gz +0 -0
  358. package/out/renderer/assets/standard-schema-Dk273X__.js.br +0 -0
  359. package/out/renderer/assets/standard-schema-Dk273X__.js.gz +0 -0
  360. package/out/renderer/assets/stateDiagram-FHFEXIEX-C-7WuE0a.js.br +0 -0
  361. package/out/renderer/assets/stateDiagram-FHFEXIEX-C-7WuE0a.js.gz +0 -0
  362. package/out/renderer/assets/task-Bd1x6VfK.js.br +0 -0
  363. package/out/renderer/assets/task-Bd1x6VfK.js.gz +0 -0
  364. package/out/renderer/assets/timeline-definition-GMOUNBTQ-DVUMAatS.js.br +0 -0
  365. package/out/renderer/assets/timeline-definition-GMOUNBTQ-DVUMAatS.js.gz +0 -0
  366. package/out/renderer/assets/vennDiagram-DHZGUBPP-BtKdpgmE.js.br +0 -0
  367. package/out/renderer/assets/vennDiagram-DHZGUBPP-BtKdpgmE.js.gz +0 -0
  368. package/out/renderer/assets/wardley-RL74JXVD-DRlpukah.js.br +0 -0
  369. package/out/renderer/assets/wardley-RL74JXVD-DRlpukah.js.gz +0 -0
  370. package/out/renderer/assets/wardleyDiagram-NUSXRM2D-c_iDOO-3.js.br +0 -0
  371. package/out/renderer/assets/wardleyDiagram-NUSXRM2D-c_iDOO-3.js.gz +0 -0
  372. package/out/renderer/assets/wrench-C-pOIUrz.js.br +0 -0
  373. package/out/renderer/assets/wrench-C-pOIUrz.js.gz +0 -0
  374. package/out/renderer/assets/xlsx-view-Ca3bToM7.js.br +0 -0
  375. package/out/renderer/assets/xlsx-view-Ca3bToM7.js.gz +0 -0
  376. package/out/renderer/assets/xychartDiagram-5P7HB3ND-D65drBbj.js.br +0 -0
  377. package/out/renderer/assets/xychartDiagram-5P7HB3ND-D65drBbj.js.gz +0 -0
@@ -231,6 +231,25 @@ function readSettings() {
231
231
  model: p.model,
232
232
  active: typeof p.active === "boolean" ? p.active : false
233
233
  })) : [];
234
+ const speechToText = Array.isArray(rawObj?.speechToText) ? rawObj.speechToText.filter((value) => isObject(value)).filter((value) => {
235
+ const provider = value.provider;
236
+ return typeof value.id === "string" && typeof value.name === "string" && typeof value.apiKey === "string" && (provider === "volcengine" || provider === "dashscope" || provider === "openai" || provider === "iflytek");
237
+ }).map((value) => ({
238
+ id: value.id,
239
+ name: value.name,
240
+ provider: value.provider,
241
+ apiKey: value.apiKey,
242
+ appId: typeof value.appId === "string" ? value.appId : void 0,
243
+ apiSecret: typeof value.apiSecret === "string" ? value.apiSecret : void 0,
244
+ resourceId: typeof value.resourceId === "string" ? value.resourceId : void 0,
245
+ model: typeof value.model === "string" ? value.model : void 0,
246
+ baseUrl: typeof value.baseUrl === "string" ? value.baseUrl : void 0,
247
+ workspaceId: typeof value.workspaceId === "string" ? value.workspaceId : void 0,
248
+ region: value.region === "cn-beijing" || value.region === "ap-southeast-1" ? value.region : void 0,
249
+ workspace: typeof value.workspace === "string" ? value.workspace : void 0,
250
+ language: typeof value.language === "string" ? value.language : void 0,
251
+ active: typeof value.active === "boolean" ? value.active : false
252
+ })) : [];
234
253
  const editor = (() => {
235
254
  const raw2 = rawObj && isObject(rawObj.editor) ? rawObj.editor : null;
236
255
  if (raw2 && typeof raw2.name === "string" && raw2.name.trim()) {
@@ -249,7 +268,8 @@ function readSettings() {
249
268
  sound,
250
269
  proxy,
251
270
  snippets,
252
- imageGeneration
271
+ imageGeneration,
272
+ speechToText
253
273
  };
254
274
  } catch {
255
275
  return DEFAULT_SETTINGS;
@@ -351,6 +371,22 @@ function getSettings() {
351
371
  extraBody: p.extraBody ?? void 0,
352
372
  model: p.model,
353
373
  active: p.active
374
+ })),
375
+ speechToText: (meta.speechToText ?? []).map((p) => ({
376
+ id: p.id,
377
+ name: p.name,
378
+ provider: p.provider,
379
+ apiKey: p.apiKey,
380
+ appId: p.appId,
381
+ apiSecret: p.apiSecret,
382
+ resourceId: p.resourceId,
383
+ model: p.model,
384
+ baseUrl: p.baseUrl,
385
+ workspaceId: p.workspaceId,
386
+ region: p.region,
387
+ workspace: p.workspace,
388
+ language: p.language,
389
+ active: p.active
354
390
  }))
355
391
  };
356
392
  }
@@ -506,7 +542,23 @@ function updateSettings(settings) {
506
542
  extraBody: p.extraBody ?? void 0,
507
543
  model: p.model,
508
544
  active: p.active
509
- })) : prevMeta.imageGeneration
545
+ })) : prevMeta.imageGeneration,
546
+ speechToText: settings.speechToText ? settings.speechToText.map((p) => ({
547
+ id: p.id,
548
+ name: p.name,
549
+ provider: p.provider,
550
+ apiKey: p.apiKey,
551
+ appId: p.appId?.trim() || void 0,
552
+ apiSecret: p.apiSecret?.trim() || void 0,
553
+ resourceId: p.resourceId?.trim() || void 0,
554
+ model: p.model?.trim() || void 0,
555
+ baseUrl: p.baseUrl?.trim() || void 0,
556
+ workspaceId: p.workspaceId?.trim() || void 0,
557
+ region: p.region,
558
+ workspace: p.workspace?.trim() || void 0,
559
+ language: p.language?.trim() || void 0,
560
+ active: p.active
561
+ })) : prevMeta.speechToText
510
562
  };
511
563
  writeSettings(meta);
512
564
  }
@@ -4949,7 +5001,7 @@ async function executeSubagent(params, subSessionId, taskName, taskPrompt, signa
4949
5001
  }
4950
5002
  return accumulatedText || "[No output produced]";
4951
5003
  } catch (error) {
4952
- const errorMessage = error instanceof Error ? error.message : String(error);
5004
+ const errorMessage2 = error instanceof Error ? error.message : String(error);
4953
5005
  const conn3 = params.getConnection();
4954
5006
  if (conn3) {
4955
5007
  await sendSubagentStatusUpdate(
@@ -4967,7 +5019,7 @@ async function executeSubagent(params, subSessionId, taskName, taskPrompt, signa
4967
5019
  sessionUpdate: "agent_message_chunk",
4968
5020
  content: { type: "text", text: `
4969
5021
 
4970
- **Error:** ${errorMessage}` }
5022
+ **Error:** ${errorMessage2}` }
4971
5023
  }
4972
5024
  });
4973
5025
  }
@@ -4975,7 +5027,7 @@ async function executeSubagent(params, subSessionId, taskName, taskPrompt, signa
4975
5027
  if (signal.aborted) {
4976
5028
  return accumulatedText || "[Cancelled]";
4977
5029
  }
4978
- return accumulatedText || `[Error: ${errorMessage}]`;
5030
+ return accumulatedText || `[Error: ${errorMessage2}]`;
4979
5031
  } finally {
4980
5032
  await closeACPClientTools(subAcp);
4981
5033
  }
@@ -10716,13 +10768,13 @@ function createAutomationModule(ctx, deps) {
10716
10768
  sendEvent("task-update", { scheduleId, task });
10717
10769
  return task;
10718
10770
  } catch (err) {
10719
- const errorMessage = err instanceof Error ? err.message : String(err);
10771
+ const errorMessage2 = err instanceof Error ? err.message : String(err);
10720
10772
  task.completedAt = Date.now();
10721
10773
  task.status = "error";
10722
- task.error = errorMessage;
10774
+ task.error = errorMessage2;
10723
10775
  store.saveTask(scheduleId, task);
10724
10776
  sendEvent("task-update", { scheduleId, task });
10725
- console.error(`[Automation] Task failed:`, errorMessage);
10777
+ console.error(`[Automation] Task failed:`, errorMessage2);
10726
10778
  return task;
10727
10779
  } finally {
10728
10780
  runningTasks.delete(scheduleId);
@@ -11369,7 +11421,7 @@ async function callOpenAICompatibleApi(provider, request) {
11369
11421
  }
11370
11422
  function createImageGenerationModule(ctx, deps) {
11371
11423
  const { storage } = ctx;
11372
- function getActiveProvider() {
11424
+ function getActiveProvider2() {
11373
11425
  const settings = storage.getSettings();
11374
11426
  const provider = settings.imageGeneration?.find((p) => p.active);
11375
11427
  if (!provider) {
@@ -11380,7 +11432,7 @@ function createImageGenerationModule(ctx, deps) {
11380
11432
  return provider;
11381
11433
  }
11382
11434
  async function generateImage(sessionId, request) {
11383
- const provider = getActiveProvider();
11435
+ const provider = getActiveProvider2();
11384
11436
  const apiResult = await callOpenAICompatibleApi(provider, request);
11385
11437
  const shareDir = storage.sessionShareDir(sessionId);
11386
11438
  if (!shareDir) throw new Error(`Session not found: ${sessionId}`);
@@ -11778,6 +11830,178 @@ function createToolboxModule(_ctx) {
11778
11830
  };
11779
11831
  }
11780
11832
 
11833
+ // src/backend/speech/manager.ts
11834
+ import { Buffer as Buffer2 } from "node:buffer";
11835
+ import {
11836
+ createASRClient
11837
+ } from "unified-realtime-asr";
11838
+ var DEFAULT_DASHSCOPE_MODEL = "fun-asr-flash-8k-realtime";
11839
+ var DEFAULT_OPENAI_MODEL = "gpt-4o-transcribe";
11840
+ function optionalString(value) {
11841
+ const trimmed = value?.trim();
11842
+ return trimmed || void 0;
11843
+ }
11844
+ function required(value, name) {
11845
+ const result = optionalString(value);
11846
+ if (!result) throw new Error(`\u5B9E\u65F6\u8BED\u97F3\u8BC6\u522B\u914D\u7F6E\u7F3A\u5C11 ${name}\u3002`);
11847
+ return result;
11848
+ }
11849
+ function buildOptions(provider) {
11850
+ return {
11851
+ language: optionalString(provider.language) ?? "zh-CN",
11852
+ sampleRate: 16e3,
11853
+ channels: 1,
11854
+ format: "pcm",
11855
+ interimResults: true,
11856
+ punctuation: true,
11857
+ autoReconnect: false,
11858
+ transcriptionModel: provider.provider === "openai" ? optionalString(provider.model) ?? DEFAULT_OPENAI_MODEL : void 0
11859
+ };
11860
+ }
11861
+ function buildConfig(provider) {
11862
+ const options = buildOptions(provider);
11863
+ const url = optionalString(provider.baseUrl);
11864
+ switch (provider.provider) {
11865
+ case "volcengine":
11866
+ return {
11867
+ provider: "volcengine",
11868
+ apiKey: required(provider.apiKey, "API Key"),
11869
+ resourceId: optionalString(provider.resourceId),
11870
+ appId: optionalString(provider.appId),
11871
+ url,
11872
+ options
11873
+ };
11874
+ case "dashscope":
11875
+ return {
11876
+ provider: "dashscope",
11877
+ apiKey: required(provider.apiKey, "API Key"),
11878
+ model: optionalString(provider.model) ?? DEFAULT_DASHSCOPE_MODEL,
11879
+ workspaceId: optionalString(provider.workspaceId),
11880
+ region: provider.region,
11881
+ workspace: optionalString(provider.workspace),
11882
+ url,
11883
+ options
11884
+ };
11885
+ case "openai":
11886
+ return {
11887
+ provider: "openai",
11888
+ apiKey: required(provider.apiKey, "API Key"),
11889
+ url,
11890
+ options
11891
+ };
11892
+ case "iflytek":
11893
+ return {
11894
+ provider: "iflytek",
11895
+ appId: required(provider.appId, "App ID"),
11896
+ apiKey: required(provider.apiKey, "API Key"),
11897
+ apiSecret: required(provider.apiSecret, "API Secret"),
11898
+ url,
11899
+ options
11900
+ };
11901
+ }
11902
+ }
11903
+ function getActiveProvider(ctx) {
11904
+ const provider = ctx.storage.getSettings().speechToText.find((item) => item.active);
11905
+ if (!provider) {
11906
+ throw new Error("\u8BF7\u5148\u5728\u8BBE\u7F6E \u2192 \u8BED\u97F3\u8BC6\u522B\u4E2D\u914D\u7F6E\u5E76\u542F\u7528\u4E00\u4E2A Provider\u3002");
11907
+ }
11908
+ return provider;
11909
+ }
11910
+ function errorMessage(error) {
11911
+ return error instanceof Error ? error.message : String(error);
11912
+ }
11913
+ function createAsrManager(ctx) {
11914
+ const sessions = /* @__PURE__ */ new Map();
11915
+ const keyOf2 = (clientId, asrSessionId) => `${clientId}:${asrSessionId}`;
11916
+ const emitError = (session, error) => {
11917
+ ctx.sendEvent("asr-error", {
11918
+ clientId: session.clientId,
11919
+ asrSessionId: session.asrSessionId,
11920
+ message: errorMessage(error)
11921
+ });
11922
+ };
11923
+ const emitTranscript = (session, transcript) => {
11924
+ ctx.sendEvent("asr-transcript", {
11925
+ clientId: session.clientId,
11926
+ asrSessionId: session.asrSessionId,
11927
+ text: transcript.text,
11928
+ isFinal: transcript.isFinal,
11929
+ id: transcript.id,
11930
+ index: transcript.index,
11931
+ speaker: transcript.speaker
11932
+ });
11933
+ };
11934
+ return {
11935
+ async start(clientId, asrSessionId) {
11936
+ const key = keyOf2(clientId, asrSessionId);
11937
+ if (sessions.has(key)) return { ok: true };
11938
+ const provider = getActiveProvider(ctx);
11939
+ const client2 = createASRClient(buildConfig(provider));
11940
+ const active = { clientId, asrSessionId, client: client2 };
11941
+ sessions.set(key, active);
11942
+ client2.on("transcript", (transcript) => {
11943
+ if (sessions.get(key) === active) emitTranscript(active, transcript);
11944
+ });
11945
+ client2.on("error", (error) => {
11946
+ if (sessions.get(key) === active) emitError(active, error);
11947
+ });
11948
+ client2.on("close", (info) => {
11949
+ if (sessions.get(key) !== active) return;
11950
+ sessions.delete(key);
11951
+ ctx.sendEvent("asr-closed", {
11952
+ clientId,
11953
+ asrSessionId,
11954
+ code: info?.code,
11955
+ reason: info?.reason
11956
+ });
11957
+ });
11958
+ try {
11959
+ await client2.connect();
11960
+ return { ok: true };
11961
+ } catch (error) {
11962
+ sessions.delete(key);
11963
+ client2.removeAllListeners();
11964
+ throw new Error(errorMessage(error));
11965
+ }
11966
+ },
11967
+ frame(clientId, asrSessionId, audioB64) {
11968
+ const active = sessions.get(keyOf2(clientId, asrSessionId));
11969
+ if (!active) return;
11970
+ try {
11971
+ active.client.sendAudio(Buffer2.from(audioB64, "base64"));
11972
+ } catch (error) {
11973
+ emitError(active, error);
11974
+ }
11975
+ },
11976
+ async stop(clientId, asrSessionId) {
11977
+ const key = keyOf2(clientId, asrSessionId);
11978
+ const active = sessions.get(key);
11979
+ if (!active) return;
11980
+ try {
11981
+ await active.client.close();
11982
+ } catch (error) {
11983
+ emitError(active, error);
11984
+ } finally {
11985
+ if (sessions.get(key) === active) sessions.delete(key);
11986
+ active.client.removeAllListeners();
11987
+ }
11988
+ },
11989
+ async closeAll() {
11990
+ await Promise.all(
11991
+ Array.from(sessions.values(), async (active) => {
11992
+ try {
11993
+ await active.client.close();
11994
+ } catch {
11995
+ } finally {
11996
+ active.client.removeAllListeners();
11997
+ }
11998
+ })
11999
+ );
12000
+ sessions.clear();
12001
+ }
12002
+ };
12003
+ }
12004
+
11781
12005
  // src/backend/backend.ts
11782
12006
  function initBackend(emitter) {
11783
12007
  const listeners = [];
@@ -11803,6 +12027,7 @@ function initBackend(emitter) {
11803
12027
  const _inference = createInferenceModule(ctx, { skills, search, toolbox });
11804
12028
  const memory = createMemoryModule(ctx, { inference: _inference });
11805
12029
  const imageGeneration = createImageGenerationModule(ctx, { ilink: ilink.state });
12030
+ const asr = createAsrManager(ctx);
11806
12031
  const session = createSessionModule(ctx, {
11807
12032
  bridgeConnect,
11808
12033
  askUser,
@@ -12190,11 +12415,22 @@ function initBackend(emitter) {
12190
12415
  },
12191
12416
  async getMemorySystemFilePath({ projectId }) {
12192
12417
  return memory.getFilePath(projectId);
12418
+ },
12419
+ // Realtime ASR
12420
+ async startRealtimeAsr({ clientId, asrSessionId }) {
12421
+ return asr.start(clientId, asrSessionId);
12422
+ },
12423
+ async sendRealtimeAsrFrame({ clientId, asrSessionId, audioB64 }) {
12424
+ asr.frame(clientId, asrSessionId, audioB64);
12425
+ },
12426
+ async stopRealtimeAsr({ clientId, asrSessionId }) {
12427
+ await asr.stop(clientId, asrSessionId);
12193
12428
  }
12194
12429
  };
12195
12430
  webui.setHandlers(backendHandlers2);
12196
12431
  async function closeBackend2() {
12197
12432
  automation.stopAllCrons();
12433
+ await asr.closeAll();
12198
12434
  webui.stop();
12199
12435
  await ilink.stopIlink({ logout: false });
12200
12436
  session.clearSession();
@@ -12210,7 +12446,7 @@ function initBackend(emitter) {
12210
12446
  }
12211
12447
 
12212
12448
  // package.json
12213
- var version = "0.1.52";
12449
+ var version = "0.1.53";
12214
12450
 
12215
12451
  // src/server/main.ts
12216
12452
  var port;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zythum02/fello-server",
3
- "version": "0.1.52",
3
+ "version": "0.1.53",
4
4
  "description": "Fello Server — standalone headless AI agent server",
5
5
  "type": "module",
6
6
  "bin": {
@@ -36,6 +36,7 @@
36
36
  "ripgrep": "^0.3.1",
37
37
  "sharp": "^0.35.3",
38
38
  "undici": "^6.28.0",
39
+ "unified-realtime-asr": "0.2.1",
39
40
  "web-tree-sitter": "^0.26.11",
40
41
  "ws": "^8.21.2",
41
42
  "yaml": "^2.9.0",
@@ -1,15 +0,0 @@
1
- import { c as createLucideIcon } from "./index-BJPggXxf.js";
2
- const __iconNode = [
3
- ["rect", { width: "8", height: "4", x: "8", y: "2", rx: "1", ry: "1", key: "tgr4d6" }],
4
- [
5
- "path",
6
- {
7
- d: "M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",
8
- key: "116196"
9
- }
10
- ]
11
- ];
12
- const Clipboard = createLucideIcon("clipboard", __iconNode);
13
- export {
14
- Clipboard as C
15
- };