mulmoclaude 0.9.0 → 0.9.2

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 (458) hide show
  1. package/README.md +95 -38
  2. package/bin/mulmoclaude.js +1 -2
  3. package/client/assets/JsonEditor-CPJfn76E.css +1 -0
  4. package/client/assets/JsonEditor-CoWGJG3Y.js +10 -0
  5. package/client/assets/abnfDiagram-VRR7QNED-6nNByj6v-By7GJ3xW.js +1 -0
  6. package/client/assets/abnfDiagram-VRR7QNED-BrQlVixL.js +1 -0
  7. package/client/assets/arc-BXutyUAX.js +1 -0
  8. package/client/assets/arc-zT0wd74V-DulGJNnb.js +1 -0
  9. package/client/assets/architecture-TIHT7OUA-CYMWc3UT-C7HoFzWN.js +1 -0
  10. package/client/assets/architecture-TIHT7OUA-aml8u-G9.js +1 -0
  11. package/client/assets/architectureDiagram-ZJ3FMSHR-Bgnyaj_i-CCpEsCHN.js +36 -0
  12. package/client/assets/architectureDiagram-ZJ3FMSHR-DJTFpPjB.js +36 -0
  13. package/client/assets/array-BifhSqXX.js +1 -0
  14. package/client/assets/array-CApNbSU9-BifhSqXX.js +1 -0
  15. package/client/assets/blockDiagram-677ZJIJ3-DQ35o5E4-BXS11D3J.js +132 -0
  16. package/client/assets/blockDiagram-677ZJIJ3-aYvCODxv.js +132 -0
  17. package/client/assets/c4Diagram-LMCZKHZV-Bau6RMBb.js +10 -0
  18. package/client/assets/c4Diagram-LMCZKHZV-ClWZeiWo-DXGnOOUf.js +10 -0
  19. package/client/assets/channel-D9VSi_QV.js +1 -0
  20. package/client/assets/channel-Di5rtkx0-C3gZcytF.js +1 -0
  21. package/client/assets/chunk-2Q5K7J3B-C1jixKkw.js +1 -0
  22. package/client/assets/chunk-2Q5K7J3B-DfKpwyl9-DTxwf5E9.js +1 -0
  23. package/client/assets/chunk-32BRIVSS-CCt9wtYd-Cwa_IP35.js +1 -0
  24. package/client/assets/chunk-32BRIVSS-CxzHeys5.js +1 -0
  25. package/client/assets/chunk-52WLFC77-BtNjbTdw.js +10 -0
  26. package/client/assets/chunk-52WLFC77-FbBbR4uI-wsNC5d-f.js +10 -0
  27. package/client/assets/chunk-5VM5RSS4-BYnnUiN6-C4rOnu9A.js +15 -0
  28. package/client/assets/chunk-5VM5RSS4-ZNzvKenW.js +15 -0
  29. package/client/assets/chunk-7BUUIJ7U-Bb538aSH.js +1 -0
  30. package/client/assets/chunk-7BUUIJ7U-hh8aCuGX-mGEpPzQy.js +1 -0
  31. package/client/assets/chunk-C7G6YPKG-BE8ehsnc.js +1 -0
  32. package/client/assets/chunk-C7G6YPKG-C87hlS9c-BitbJpTa.js +1 -0
  33. package/client/assets/{chunk-D8eiyYIV-BY16KEZc.js → chunk-D8eiyYIV-BeeEsA1B.js} +1 -1
  34. package/client/assets/chunk-EX3LRPZG-Bhgskzyy.js +231 -0
  35. package/client/assets/chunk-EX3LRPZG-BqGqMXLN-Cl2Eo1_u.js +231 -0
  36. package/client/assets/chunk-FWX5IMBZ-BkbSAAuW-C2r4AuAO.js +2 -0
  37. package/client/assets/chunk-FWX5IMBZ-D9sskZb_.js +2 -0
  38. package/client/assets/chunk-HOUHSVGY-CBCXk7rb.js +1 -0
  39. package/client/assets/chunk-HOUHSVGY-Cxu0eDlh-owg_DcY0.js +1 -0
  40. package/client/assets/chunk-ICXQ74PX-DTqPpDQ9.js +2 -0
  41. package/client/assets/chunk-ICXQ74PX-hiraF_Xj-CdaEwVin.js +2 -0
  42. package/client/assets/chunk-JWPE2WC7-BQ3zXr2k-DSd3Ct95.js +1 -0
  43. package/client/assets/chunk-JWPE2WC7-DVXcaiue.js +1 -0
  44. package/client/assets/chunk-KEIR6QF5-DNzq6p3w.js +161 -0
  45. package/client/assets/chunk-MOJQB5TN-CqxshQHA-Cn_EpDyZ.js +88 -0
  46. package/client/assets/chunk-MOJQB5TN-D1s_zUGz.js +88 -0
  47. package/client/assets/chunk-OGEWGWER-CjCr7ceX-Dfk5-70y.js +1 -0
  48. package/client/assets/chunk-OGEWGWER-DzfhxoQd.js +1 -0
  49. package/client/assets/chunk-PUDLZKDR-BZlebNhn.js +156 -0
  50. package/client/assets/chunk-PUDLZKDR-Dx6M-vz1-CLyVurOz.js +156 -0
  51. package/client/assets/chunk-Q4XR5HBZ-BcJb7mwA.js +70 -0
  52. package/client/assets/chunk-Q4XR5HBZ-CZd-9lTB-qPEYoRNc.js +11 -0
  53. package/client/assets/chunk-RYQCIY6F-B_IgMG7T.js +1 -0
  54. package/client/assets/chunk-RYQCIY6F-YkbemkCt-CX4fncTQ.js +1 -0
  55. package/client/assets/chunk-V7JOEXUC-Buce04o6.js +206 -0
  56. package/client/assets/chunk-V7JOEXUC-rI0xlC_O-C607vJXy.js +206 -0
  57. package/client/assets/chunk-VAUOI2AC-CxhkzXN0.js +1 -0
  58. package/client/assets/chunk-VAUOI2AC-DrcykVNK-CSROJWdE.js +1 -0
  59. package/client/assets/chunk-VR4S4FIN-D5afNrsS.js +1 -0
  60. package/client/assets/chunk-VR4S4FIN-O6iF8Yvf-CLIwrgqU.js +1 -0
  61. package/client/assets/chunk-WYO6CB5R-B83L_z6I-Cs8mg9If.js +127 -0
  62. package/client/assets/chunk-WYO6CB5R-BXTIdTMw.js +125 -0
  63. package/client/assets/chunk-XXDRQBXY-DFXH_lWn-B5HjCp2c.js +1 -0
  64. package/client/assets/chunk-XXDRQBXY-DXMD6ofA.js +1 -0
  65. package/client/assets/chunk-Y2CYZVJY-Bdt8pFDJ-DsF7k-Jl.js +1 -0
  66. package/client/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +1 -0
  67. package/client/assets/chunk-ZGVPDNZ5-BpFv9JSP-CHYySMjV.js +62 -0
  68. package/client/assets/chunk-ZGVPDNZ5-CYusI0J_.js +62 -0
  69. package/client/assets/chunk-ZIRB5QZD-Biy6ZNFG-D1maAiXb.js +32 -0
  70. package/client/assets/chunk-ZIRB5QZD-C6fEPe3t.js +32 -0
  71. package/client/assets/classDiagram-OUVF2IWQ-BgAZMSbT-BgxEE1D3.js +1 -0
  72. package/client/assets/classDiagram-OUVF2IWQ-CBD3Eidl.js +1 -0
  73. package/client/assets/classDiagram-v2-EOCWNBFH-CBD3Eidl.js +1 -0
  74. package/client/assets/classDiagram-v2-EOCWNBFH-DxHTyui1-BgxEE1D3.js +1 -0
  75. package/client/assets/cose-bilkent-JH36ORCC-CuSL2tA8-aMIqISfj.js +1 -0
  76. package/client/assets/cose-bilkent-JH36ORCC-WAJDBXv1.js +1 -0
  77. package/client/assets/cynefin-VYW2F7L2-DH2qkJKw.js +1 -0
  78. package/client/assets/cynefin-VYW2F7L2-DqA3n9nY-BNWhIK_n.js +1 -0
  79. package/client/assets/cynefinDiagram-TSTJHNR4-CUvPV9MV.js +62 -0
  80. package/client/assets/cynefinDiagram-TSTJHNR4-x0-0sQ15-Cq1gFcFu.js +62 -0
  81. package/client/assets/cytoscape.esm-CzdwbRaj-Djp6vQyU.js +321 -0
  82. package/client/assets/cytoscape.esm-Djp6vQyU.js +321 -0
  83. package/client/assets/dagre-CXRCoUWR.js +1 -0
  84. package/client/assets/dagre-VKFMJZFB-CQdfl-bx-CzZZuace.js +4 -0
  85. package/client/assets/dagre-VKFMJZFB-C_9IS7mB.js +4 -0
  86. package/client/assets/dagre-wczQIDso-CfevN9RO.js +1 -0
  87. package/client/assets/defaultLocale-C8Fc0cco.js +1 -0
  88. package/client/assets/defaultLocale-DUNguUWs-BbDo_yJX.js +1 -0
  89. package/client/assets/diagram-FQU43EPY-BOSB6VUb-isPdQ8WX.js +3 -0
  90. package/client/assets/diagram-FQU43EPY-BP8N00-b.js +3 -0
  91. package/client/assets/diagram-G47NLZAW-DLXrcXsN-BIqj7RKy.js +24 -0
  92. package/client/assets/diagram-G47NLZAW-ulE1JlWG.js +24 -0
  93. package/client/assets/diagram-NH7WQ7WH-BMQp1rkF-D6-fOq_v.js +24 -0
  94. package/client/assets/diagram-NH7WQ7WH-D_IXrL3i.js +24 -0
  95. package/client/assets/diagram-OA4YK3LP-C-pC6Eyu.js +30 -0
  96. package/client/assets/diagram-OA4YK3LP-D1wQ0vUj-BNi6QLCK.js +30 -0
  97. package/client/assets/diagram-WEI45ONY-Di9m35i-.js +41 -0
  98. package/client/assets/diagram-WEI45ONY-RR0DpF8R-BS3nrb3w.js +41 -0
  99. package/client/assets/dist-BQBs5pjy-BmtZ7Oc2.js +1 -0
  100. package/client/assets/dist-CQ3HaWOk.js +1 -0
  101. package/client/assets/ebnfDiagram-CCIWWBDH-Cbwnim2x.js +1 -0
  102. package/client/assets/ebnfDiagram-CCIWWBDH-M123uVJ8-9-dq55nQ.js +1 -0
  103. package/client/assets/erDiagram-Q63AITRT-BWx_-PXG-CWGfG4z5.js +85 -0
  104. package/client/assets/erDiagram-Q63AITRT-CMbtO3Sm.js +85 -0
  105. package/client/assets/eventmodeling-45OFAUF4--32SIpkL.js +1 -0
  106. package/client/assets/eventmodeling-45OFAUF4-_BVSjAXf-DQdL0Icr.js +1 -0
  107. package/client/assets/flowDiagram-23GEKE2U-BeOc_anm-CuVzKmmU.js +1 -0
  108. package/client/assets/flowDiagram-23GEKE2U-Dofa_qxG.js +1 -0
  109. package/client/assets/ganttDiagram-NO4QXBWP-BOoJ1eTw-TWoNmSvq.js +292 -0
  110. package/client/assets/ganttDiagram-NO4QXBWP-BgoAVKuc.js +292 -0
  111. package/client/assets/gitGraph-TEB2WS4Q-CH12KLTN-Bz4frAhV.js +1 -0
  112. package/client/assets/gitGraph-TEB2WS4Q-DIMvNvqt.js +1 -0
  113. package/client/assets/gitGraphDiagram-IHSO6WYX-B2CJhk_G-ClOKkjxw.js +106 -0
  114. package/client/assets/gitGraphDiagram-IHSO6WYX-Dmb6KnPz.js +106 -0
  115. package/client/assets/graphlib-B8gBHxth.js +1 -0
  116. package/client/assets/graphlib-hY-1btwe-DQjxxcnr.js +1 -0
  117. package/client/assets/{html2canvas-CDGcmOD3-CKJ6vKPo.js → html2canvas-CDGcmOD3-DRL9pFVl.js} +2 -2
  118. package/client/assets/{index-9lmYSaus.js → index-Dc0R-HW5.js} +129 -190
  119. package/client/assets/index-Dxo1Zdd-.css +2 -0
  120. package/client/assets/{index.es-DqtpmBm8-DFXjJgCa.js → index.es-DqtpmBm8-EQk3NgR8.js} +1 -1
  121. package/client/assets/info-DKCQHKI2-Cbw3mbiK-GsDZz9IO.js +1 -0
  122. package/client/assets/info-DKCQHKI2-ViCqobGo.js +1 -0
  123. package/client/assets/infoDiagram-FWYZ7A6U-HKV7LIG-.js +2 -0
  124. package/client/assets/infoDiagram-FWYZ7A6U-Mp1X3pBP-ATJv87Ur.js +2 -0
  125. package/client/assets/init-D6jRqBbL.js +1 -0
  126. package/client/assets/init-DEsX3bhM-D6jRqBbL.js +1 -0
  127. package/client/assets/ishikawaDiagram-FXEZZL3T-BNG7tkJu-CGCeOIlJ.js +70 -0
  128. package/client/assets/ishikawaDiagram-FXEZZL3T-CVDUj46f.js +70 -0
  129. package/client/assets/journeyDiagram-5HDEW3XC-BA-ESGLP.js +139 -0
  130. package/client/assets/journeyDiagram-5HDEW3XC-Dbp_hY9X-Bx-IoCe9.js +139 -0
  131. package/client/assets/kanban-definition-HUTT4EX6-Bqaet01L.js +89 -0
  132. package/client/assets/kanban-definition-HUTT4EX6-DSTc5u3q-C0JGckt1.js +89 -0
  133. package/client/assets/katex-CddkPoXu.js +257 -0
  134. package/client/assets/katex-M0IxphGf-CddkPoXu.js +257 -0
  135. package/client/assets/lib-4Tgx7rAy.js +114 -0
  136. package/client/assets/line-B1wBwzrY-f5wxpqoF.js +1 -0
  137. package/client/assets/line-CkyHfW7d.js +1 -0
  138. package/client/assets/linear-B9fuEF4c.js +1 -0
  139. package/client/assets/linear-lrGinF5_-CqNBync7.js +1 -0
  140. package/client/assets/map-CgrwEyH7-DWQFomlZ.js +1 -0
  141. package/client/assets/map-DsCK-0Cs.js +1 -0
  142. package/client/assets/marked.esm-CIU5FDdN.js +64 -0
  143. package/client/assets/marp-CSq0PPfK.js +3448 -0
  144. package/client/assets/material-symbols-outlined-DdRFxZLh.woff2 +0 -0
  145. package/client/assets/mermaid-parser.core-DC7NPJ_M-Ca6XzwfM.js +166 -0
  146. package/client/assets/mermaid-parser.core-SAwSf4_o.js +7 -0
  147. package/client/assets/mermaid.core-BBEQfkdJ.js +11 -0
  148. package/client/assets/mermaid.core-DZM3Ha-E-BxOo-RYG.js +11 -0
  149. package/client/assets/mindmap-definition-LN4V7U3C-B4BN0efL.js +96 -0
  150. package/client/assets/mindmap-definition-LN4V7U3C-DYtgcMsY-DynyLTNv.js +96 -0
  151. package/client/assets/ordinal-B9_Llu10-CU85fhaB.js +1 -0
  152. package/client/assets/ordinal-CopWnP7w.js +1 -0
  153. package/client/assets/packet-7NZHBO7P-CY4XRk9N.js +1 -0
  154. package/client/assets/packet-7NZHBO7P-lwb58iYx--vqSg65J.js +1 -0
  155. package/client/assets/path-BWPyau1x.js +1 -0
  156. package/client/assets/path-COivZ1Gw-C5riojK2.js +1 -0
  157. package/client/assets/pegDiagram-2B236MQR-BOKErjUu.js +1 -0
  158. package/client/assets/pegDiagram-2B236MQR-C43eIpKM-Bi_5Sxjt.js +1 -0
  159. package/client/assets/pie-RZYD4A2V-6BHB7bAx.js +1 -0
  160. package/client/assets/pie-RZYD4A2V-B1UWb4Gu-Dmn2hLWH.js +1 -0
  161. package/client/assets/pieDiagram-ENE6RG2P-BkTqgJyR-Bcdm19kR.js +39 -0
  162. package/client/assets/pieDiagram-ENE6RG2P-DtNjvz-U.js +39 -0
  163. package/client/assets/preload-helper-CZgWQFsJ.js +1 -0
  164. package/client/assets/purify.es-DY32g7DN.js +3 -0
  165. package/client/assets/quadrantDiagram-ABIIQ3AL-BQmAJL2v.js +7 -0
  166. package/client/assets/quadrantDiagram-ABIIQ3AL-Bm1Zjm45-B3orqx_f.js +7 -0
  167. package/client/assets/radar-I7S5WNFK-7CKcb_l--CqKdnR0v.js +1 -0
  168. package/client/assets/radar-I7S5WNFK-R7Jhjfdt.js +1 -0
  169. package/client/assets/railroad-3IZDKUUU-BepSPyHI.js +1 -0
  170. package/client/assets/railroad-3IZDKUUU-gCySKdnW-CKU26HTP.js +1 -0
  171. package/client/assets/railroad-abnf-AHOZXSZD-BlsHsp3c.js +1 -0
  172. package/client/assets/railroad-abnf-AHOZXSZD-BophH4r--CGkGHq54.js +1 -0
  173. package/client/assets/railroad-ebnf-EBAXGLYW-AZNjl_Zu-B7bn_PF3.js +1 -0
  174. package/client/assets/railroad-ebnf-EBAXGLYW-B4fMcGEH.js +1 -0
  175. package/client/assets/railroad-peg-LSFZ7HO6-B1ZrjJIu.js +1 -0
  176. package/client/assets/railroad-peg-LSFZ7HO6-BSiEEyeb-CP_B-N5g.js +1 -0
  177. package/client/assets/railroadDiagram-RFXS5EU6-8cz0Iby3.js +1 -0
  178. package/client/assets/railroadDiagram-RFXS5EU6-BkfbdeAs-Di6jH5I6.js +1 -0
  179. package/client/assets/requirementDiagram-TGXJPOKE-CrGTTjYg-DmIC7Shp.js +84 -0
  180. package/client/assets/requirementDiagram-TGXJPOKE-Dlqoe9TY.js +84 -0
  181. package/client/assets/rough.esm-CSKSodPl.js +1 -0
  182. package/client/assets/rough.esm-wVmwlXu7-CSKSodPl.js +1 -0
  183. package/client/assets/runtime-protocol-vue-WG3JLsjz.js +1 -0
  184. package/client/assets/runtime-vue-lHsY5zMj.js +1 -0
  185. package/client/assets/sankeyDiagram-HTMAVEWB-BkTKgu8Q.js +40 -0
  186. package/client/assets/sankeyDiagram-HTMAVEWB-rWXPf03Z-CjV9pCSJ.js +40 -0
  187. package/client/assets/{schemas-D_RbFtuQ.js → schemas-DGvl73AE.js} +3 -3
  188. package/client/assets/sequenceDiagram-DBY2YBRQ-BpuXUcFy.js +162 -0
  189. package/client/assets/sequenceDiagram-DBY2YBRQ-nkJYWO2m-BqS_sTCH.js +162 -0
  190. package/client/assets/sizeCapture-X5ZJPWSS-B0uUizjq.js +1 -0
  191. package/client/assets/sizeCapture-X5ZJPWSS-F5SadAuT-VHIb4_NU.js +1 -0
  192. package/client/assets/src-Brzfja-q-DNc4Or4z.js +1 -0
  193. package/client/assets/src-Cqa3Jy1j.js +1 -0
  194. package/client/assets/stateDiagram-2N3HPSRC-CdlGXuo7.js +1 -0
  195. package/client/assets/stateDiagram-2N3HPSRC-T4-clK8b-DQRiB4va.js +1 -0
  196. package/client/assets/stateDiagram-v2-6OUMAXLB-BN8Jr3ZM.js +1 -0
  197. package/client/assets/stateDiagram-v2-6OUMAXLB-DIp7nhRd-DbrOhUn_.js +1 -0
  198. package/client/assets/swimlanes-5IMT3BWC-HmQNEntu-CNBgZdur.js +2 -0
  199. package/client/assets/swimlanes-5IMT3BWC-iEJg5gki.js +2 -0
  200. package/client/assets/swimlanesDiagram-G3AALYLV-BeoZhwg7-DpqgeNRA.js +8 -0
  201. package/client/assets/swimlanesDiagram-G3AALYLV-o-sS6aEP.js +8 -0
  202. package/client/assets/timeline-definition-FHXFAJF6-Bjh-7QmL.js +120 -0
  203. package/client/assets/timeline-definition-FHXFAJF6-CNc9jSTP-BKNSymgY.js +120 -0
  204. package/client/assets/treeView-QDETBFTQ-D3cqRl6k.js +1 -0
  205. package/client/assets/treeView-QDETBFTQ-nIQcG1h9-O_ri9HxD.js +1 -0
  206. package/client/assets/treemap-6X3UGDF4-BnsvC8yL-Cfsty1e3.js +1 -0
  207. package/client/assets/treemap-6X3UGDF4-DGkZcvDG.js +1 -0
  208. package/client/assets/v4-B29ayslu.js +1 -0
  209. package/client/assets/vennDiagram-L72KCM5P-Cz3dbe7b.js +34 -0
  210. package/client/assets/vennDiagram-L72KCM5P-Dr3pTJ_0-C38xwcVo.js +34 -0
  211. package/client/assets/vue-C6d2VveO.js +1 -0
  212. package/client/assets/vue-i18n-CL-ejuNu.js +3 -0
  213. package/client/assets/vue.runtime.esm-bundler-BeoTfMNc.js +4 -0
  214. package/client/assets/wardley-OPB4EBWU-8Odxkx6V-CCDIVuBs.js +1 -0
  215. package/client/assets/wardley-OPB4EBWU-CZsCDvKk.js +1 -0
  216. package/client/assets/wardleyDiagram-EHGQE667-DSFc7ZZa-mlWXRiWx.js +78 -0
  217. package/client/assets/wardleyDiagram-EHGQE667-DiyoyO_X.js +78 -0
  218. package/client/assets/xychartDiagram-FW5EYKEG-BP0Nn4Pp-DRRiStGZ.js +7 -0
  219. package/client/assets/xychartDiagram-FW5EYKEG-DhY1_UGM.js +7 -0
  220. package/client/index.html +16 -12
  221. package/package.json +17 -19
  222. package/server/agent/backend/types.ts +1 -1
  223. package/server/agent/backgroundSessions.ts +43 -0
  224. package/server/agent/config.ts +3 -2
  225. package/server/agent/mcp-tools/manageCollection.ts +4 -4
  226. package/server/agent/sandboxMounts.ts +1 -1
  227. package/server/agent/stream.ts +1 -3
  228. package/server/api/auth/viewToken.ts +1 -1
  229. package/server/api/bridge/sessionRole.ts +47 -0
  230. package/server/api/routes/agent.ts +79 -2
  231. package/server/api/routes/collections.ts +60 -7
  232. package/server/api/routes/collectionsRegistry.ts +113 -0
  233. package/server/api/routes/dashboard.ts +47 -0
  234. package/server/api/routes/feeds.ts +2 -2
  235. package/server/api/routes/files.ts +1 -2
  236. package/server/api/routes/pdf.ts +48 -9
  237. package/server/api/routes/plugins.ts +2 -2
  238. package/server/api/routes/remoteHost.ts +55 -0
  239. package/server/api/routes/sessions.ts +20 -11
  240. package/server/api/routes/share.ts +105 -0
  241. package/server/api/routes/transcribe.ts +1 -1
  242. package/server/api/routes/wiki/history.ts +2 -2
  243. package/server/api/routes/wiki.ts +29 -177
  244. package/server/api/sandboxStatus.ts +1 -1
  245. package/server/build/dispatcher.mjs +25 -14928
  246. package/server/events/collection-change.ts +4 -4
  247. package/server/events/file-change.ts +2 -2
  248. package/server/events/scheduler-adapter.ts +3 -3
  249. package/server/events/task-manager/index.ts +3 -3
  250. package/server/index.ts +53 -17
  251. package/server/notifier/engine.ts +3 -3
  252. package/server/notifier/types.ts +2 -2
  253. package/server/plugins/html-builtin.ts +15 -1
  254. package/server/prompts/system/system.md +4 -0
  255. package/server/remoteHost/auth.ts +29 -0
  256. package/server/remoteHost/commandChannel.ts +56 -0
  257. package/server/remoteHost/firebase.ts +16 -0
  258. package/server/remoteHost/handlers/collectionPage.ts +29 -0
  259. package/server/remoteHost/handlers/getCollection.ts +32 -0
  260. package/server/remoteHost/handlers/getFeed.ts +35 -0
  261. package/server/remoteHost/handlers/index.ts +19 -0
  262. package/server/remoteHost/handlers/listCollections.ts +29 -0
  263. package/server/remoteHost/handlers/listFeeds.ts +37 -0
  264. package/server/remoteHost/handlers/listShortcuts.ts +24 -0
  265. package/server/remoteHost/handlers/startChat.ts +78 -0
  266. package/server/remoteHost/hostRunner.ts +122 -0
  267. package/server/remoteHost/index.ts +117 -0
  268. package/server/system/config.ts +1 -1
  269. package/server/system/credentials.ts +2 -3
  270. package/server/system/docker.ts +9 -8
  271. package/server/system/env.ts +8 -0
  272. package/server/system/whisper/index.ts +4 -4
  273. package/server/utils/claudeConfigPath.ts +57 -0
  274. package/server/utils/files/dashboard-io.ts +87 -0
  275. package/server/utils/files/session-io.ts +11 -0
  276. package/server/utils/markdown/frontmatter.ts +8 -4
  277. package/server/utils/regex.ts +4 -3
  278. package/server/utils/share/packHtml.ts +108 -0
  279. package/server/utils/share/rewriteAssets.ts +178 -0
  280. package/server/workspace/chat-index/paths.ts +8 -2
  281. package/server/workspace/chat-index/summarizer.ts +23 -15
  282. package/server/workspace/collections/configure.ts +5 -3
  283. package/server/workspace/collections/index.ts +8 -6
  284. package/server/workspace/collections/notifications.ts +3 -3
  285. package/server/workspace/collections/types.ts +2 -2
  286. package/server/workspace/collections/watcher.ts +2 -2
  287. package/server/workspace/feeds/configure.ts +24 -0
  288. package/server/workspace/hooks/handlers/skillBridge.ts +2 -2
  289. package/server/workspace/hooks/handlers/wikiSnapshot.ts +1 -1
  290. package/server/workspace/paths.ts +8 -1
  291. package/server/workspace/skills/catalog.ts +1 -3
  292. package/server/workspace/skills/external/catalog.ts +1 -3
  293. package/server/workspace/skills/paths.ts +4 -3
  294. package/server/workspace/skills/writer.ts +1 -4
  295. package/server/workspace/skills-preset.ts +3 -3
  296. package/server/workspace/wiki-pages/io.ts +2 -2
  297. package/server/workspace/workspace.ts +2 -2
  298. package/src/App.vue +41 -18
  299. package/src/components/ChatInput.vue +1 -1
  300. package/src/components/DashboardView.vue +372 -0
  301. package/src/components/FileContentRenderer.vue +32 -7
  302. package/src/components/JsonEditor.vue +1 -1
  303. package/src/components/PluginLauncher.vue +122 -79
  304. package/src/components/RemoteHostControl.vue +159 -0
  305. package/src/components/SessionCountBadges.vue +32 -0
  306. package/src/components/SessionHeaderControls.vue +1 -8
  307. package/src/components/SessionHistoryPanel.vue +2 -0
  308. package/src/components/SessionHistoryToggleButton.vue +1 -15
  309. package/src/components/SidebarHeader.vue +2 -0
  310. package/src/components/collectionTypes.ts +2 -2
  311. package/src/composables/accountingHost.ts +24 -0
  312. package/src/composables/collections/uiHost.ts +17 -2
  313. package/src/composables/useDashboard.ts +191 -0
  314. package/src/composables/useMarkdownZip.ts +51 -0
  315. package/src/composables/useNotifications.ts +1 -4
  316. package/src/composables/useSharePack.ts +60 -0
  317. package/src/composables/useTranslatedQueries.ts +15 -95
  318. package/src/composables/useTranslatedStrings.ts +68 -0
  319. package/src/composables/useVoiceInput.ts +3 -3
  320. package/src/config/apiRoutes.ts +57 -9
  321. package/src/config/createFilePolicy.ts +1 -1
  322. package/src/config/firebase.ts +12 -0
  323. package/src/config/firebaseConfig.ts +18 -0
  324. package/src/config/historyFilters.ts +7 -0
  325. package/src/config/pubsubChannels.ts +7 -27
  326. package/src/config/roles.ts +12 -10
  327. package/src/config/workspacePaths.ts +10 -0
  328. package/src/index.css +1 -1
  329. package/src/lang/de.ts +39 -220
  330. package/src/lang/en.ts +39 -191
  331. package/src/lang/es.ts +39 -218
  332. package/src/lang/fr.ts +39 -220
  333. package/src/lang/ja.ts +39 -216
  334. package/src/lang/ko.ts +39 -216
  335. package/src/lang/pt-BR.ts +39 -217
  336. package/src/lang/zh.ts +39 -215
  337. package/src/main.ts +3 -0
  338. package/src/plugins/accounting/definition.ts +12 -8
  339. package/src/plugins/accounting/index.ts +7 -4
  340. package/src/plugins/accounting/meta.ts +23 -60
  341. package/src/plugins/manageSkills/View.vue +9 -1
  342. package/src/plugins/photoLocations/View.vue +2 -2
  343. package/src/plugins/presentCollection/definition.ts +2 -2
  344. package/src/plugins/presentCollection/plugin.ts +2 -2
  345. package/src/plugins/presentCollection/types.ts +2 -2
  346. package/src/plugins/presentHtml/definition.ts +1 -1
  347. package/src/plugins/presentMulmoScript/View.vue +2 -2
  348. package/src/plugins/presentMulmoScript/helpers.ts +1 -1
  349. package/src/plugins/presentSVG/View.vue +2 -2
  350. package/src/plugins/scheduler/TasksTab.vue +1 -2
  351. package/src/plugins/skill/View.vue +7 -3
  352. package/src/plugins/spreadsheet/View.vue +3 -3
  353. package/src/plugins/spreadsheet/engine/functions/logical.ts +8 -1
  354. package/src/plugins/textResponse/View.vue +43 -16
  355. package/src/plugins/wiki/View.vue +29 -2
  356. package/src/plugins/wiki/components/WikiGraphView.vue +1 -1
  357. package/src/plugins/wiki/components/WikiPageBody.vue +4 -1
  358. package/src/plugins/wiki/helpers.ts +13 -81
  359. package/src/plugins/wiki/index.ts +1 -1
  360. package/src/router/guards.ts +1 -1
  361. package/src/router/index.ts +12 -0
  362. package/src/router/pageRoutes.ts +2 -0
  363. package/src/types/dashboard.ts +40 -0
  364. package/src/types/session.ts +3 -0
  365. package/src/utils/blobDownload.ts +19 -0
  366. package/src/utils/collections/presentSeed.ts +1 -1
  367. package/src/utils/html/customViewSrcdoc.ts +31 -3
  368. package/src/utils/html/previewCsp.ts +1 -1
  369. package/src/utils/id.ts +1 -1
  370. package/src/utils/image/htmlSrcAttrs.ts +1 -1
  371. package/src/utils/markdown/frontmatter.ts +12 -7
  372. package/src/utils/markdown/highlight.ts +22 -0
  373. package/src/utils/markdown/marpCustomSize.ts +2 -2
  374. package/src/utils/markdown/mermaidExtension.ts +56 -0
  375. package/src/utils/markdown/mermaidRender.ts +147 -0
  376. package/src/utils/markdown/setup.ts +17 -4
  377. package/src/utils/markdown/useMermaid.ts +33 -0
  378. package/src/utils/session/longRunning.ts +33 -0
  379. package/src/utils/session/mergeSessions.ts +1 -1
  380. package/client/assets/JsonEditor-Di5xGeZY.css +0 -1
  381. package/client/assets/JsonEditor-o5--tPQH.js +0 -10
  382. package/client/assets/index-tOu5ArRZ.css +0 -2
  383. package/client/assets/lib-D6Xy0IFc.js +0 -114
  384. package/client/assets/marp-D6GXA-EB.js +0 -3452
  385. package/client/assets/material-symbols-outlined-DtIK7AQn.woff2 +0 -0
  386. package/client/assets/runtime-protocol-vue-pU0Mw7Zm.js +0 -1
  387. package/client/assets/runtime-vue-fFYhnNg3.js +0 -1
  388. package/client/assets/vue-UDIWDtr8.js +0 -1
  389. package/client/assets/vue-i18n-CQbxVmNs.js +0 -3
  390. package/client/assets/vue.runtime.esm-bundler-BTyIdNAI.js +0 -4
  391. package/server/accounting/accountNormalize.ts +0 -32
  392. package/server/accounting/defaultAccounts.ts +0 -87
  393. package/server/accounting/eventPublisher.ts +0 -52
  394. package/server/accounting/journal.ts +0 -252
  395. package/server/accounting/openingBalances.ts +0 -114
  396. package/server/accounting/report.ts +0 -237
  397. package/server/accounting/service.ts +0 -718
  398. package/server/accounting/snapshotCache.ts +0 -334
  399. package/server/accounting/timeSeries.ts +0 -265
  400. package/server/accounting/types.ts +0 -148
  401. package/server/api/routes/accounting.ts +0 -373
  402. package/server/api/routes/wiki/frontmatter.ts +0 -34
  403. package/server/api/routes/wiki/pageIndex.ts +0 -53
  404. package/server/system/logs/aaa +0 -737
  405. package/server/system/logs/bb +0 -446
  406. package/server/utils/files/accounting-io.ts +0 -294
  407. package/server/workspace/feeds/engine.ts +0 -143
  408. package/server/workspace/feeds/fetch/httpClient.ts +0 -127
  409. package/server/workspace/feeds/fetch/rssParser.ts +0 -117
  410. package/server/workspace/feeds/index.ts +0 -8
  411. package/server/workspace/feeds/ingestTypes.ts +0 -62
  412. package/server/workspace/feeds/pathResolver.ts +0 -74
  413. package/server/workspace/feeds/paths.ts +0 -30
  414. package/server/workspace/feeds/projectItem.ts +0 -92
  415. package/server/workspace/feeds/registry.ts +0 -43
  416. package/server/workspace/feeds/retrievers/httpJson.ts +0 -19
  417. package/server/workspace/feeds/retrievers/index.ts +0 -27
  418. package/server/workspace/feeds/retrievers/registerAll.ts +0 -5
  419. package/server/workspace/feeds/retrievers/rss.ts +0 -24
  420. package/server/workspace/feeds/state.ts +0 -55
  421. package/src/composables/useAccountingChannel.ts +0 -58
  422. package/src/lib/wiki-page/graph.ts +0 -108
  423. package/src/lib/wiki-page/index-parse.ts +0 -221
  424. package/src/lib/wiki-page/link.ts +0 -62
  425. package/src/lib/wiki-page/lint.ts +0 -105
  426. package/src/lib/wiki-page/paths.ts +0 -35
  427. package/src/lib/wiki-page/slug.ts +0 -54
  428. package/src/plugins/accounting/Preview.vue +0 -103
  429. package/src/plugins/accounting/View.vue +0 -633
  430. package/src/plugins/accounting/actions.ts +0 -34
  431. package/src/plugins/accounting/api.ts +0 -301
  432. package/src/plugins/accounting/components/AccountEditor.vue +0 -250
  433. package/src/plugins/accounting/components/AccountRow.vue +0 -50
  434. package/src/plugins/accounting/components/AccountsList.vue +0 -102
  435. package/src/plugins/accounting/components/AccountsModal.vue +0 -301
  436. package/src/plugins/accounting/components/BalanceSheet.vue +0 -186
  437. package/src/plugins/accounting/components/BookSettings.vue +0 -284
  438. package/src/plugins/accounting/components/BookSwitcher.vue +0 -78
  439. package/src/plugins/accounting/components/DateRangePicker.vue +0 -140
  440. package/src/plugins/accounting/components/JournalEntryForm.vue +0 -505
  441. package/src/plugins/accounting/components/JournalList.vue +0 -554
  442. package/src/plugins/accounting/components/Ledger.vue +0 -206
  443. package/src/plugins/accounting/components/NewBookForm.vue +0 -211
  444. package/src/plugins/accounting/components/OpeningBalancesForm.vue +0 -272
  445. package/src/plugins/accounting/components/ProfitLoss.vue +0 -160
  446. package/src/plugins/accounting/components/accountDraft.ts +0 -13
  447. package/src/plugins/accounting/components/accountNumbering.ts +0 -103
  448. package/src/plugins/accounting/components/accountValidation.ts +0 -75
  449. package/src/plugins/accounting/components/useLatestRequest.ts +0 -44
  450. package/src/plugins/accounting/countries.ts +0 -158
  451. package/src/plugins/accounting/currencies.ts +0 -77
  452. package/src/plugins/accounting/dates.ts +0 -51
  453. package/src/plugins/accounting/fiscalYear.ts +0 -136
  454. package/src/plugins/accounting/timeSeriesEnums.ts +0 -16
  455. package/src/plugins/wiki/route.ts +0 -137
  456. /package/client/assets/{_plugin-vue_export-helper-B67ILkmu.js → _plugin-vue_export-helper-BDNMzG2s.js} +0 -0
  457. /package/client/assets/{purify.es-B27wDFIb-51iYcXuK.js → purify.es-B27wDFIb-Bu4Grnl0.js} +0 -0
  458. /package/client/assets/{typeof-DBp4T-Ny-z2wCIsir.js → typeof-DBp4T-Ny-B5XbjTb1.js} +0 -0
package/src/lang/ko.ts CHANGED
@@ -8,6 +8,8 @@
8
8
 
9
9
  const koMessages = {
10
10
  common: {
11
+ downloadZip: "ZIP",
12
+ downloadFailed: "다운로드 실패",
11
13
  save: "저장",
12
14
  cancel: "취소",
13
15
  loading: "불러오는 중...",
@@ -59,6 +61,7 @@ const koMessages = {
59
61
  all: "전체",
60
62
  unread: "읽지 않음",
61
63
  bookmarked: "북마크",
64
+ longRunning: "장기 (24h+)",
62
65
  human: "사람",
63
66
  scheduler: "스케줄러",
64
67
  skill: "스킬",
@@ -124,6 +127,21 @@ const koMessages = {
124
127
  hideDetails: "세부 정보 숨기기",
125
128
  retry: "다시 시도",
126
129
  },
130
+ remoteHost: {
131
+ title: "원격 호스트",
132
+ online: "원격 호스트 온라인",
133
+ offline: "원격 호스트 오프라인",
134
+ uid: "uid {uid}",
135
+ signIn: "Google로 로그인",
136
+ connecting: "연결 중…",
137
+ disconnect: "연결 해제",
138
+ disconnecting: "연결 해제 중…",
139
+ noToken: "Google 로그인에서 idToken을 반환하지 않았습니다",
140
+ connectFailed: "연결 실패",
141
+ disconnectFailed: "연결 해제 실패",
142
+ signInFailed: "Google 로그인 실패",
143
+ statusFailed: "상태를 불러오지 못했습니다",
144
+ },
127
145
  sidebarHeader: {
128
146
  home: "최신 채팅으로 이동",
129
147
  toolCallHistory: "도구 호출 기록",
@@ -334,11 +352,25 @@ const koMessages = {
334
352
  errAlreadyExists: "이미 존재합니다",
335
353
  errLabelConflict: '라벨 "{label}" 은(는) 이미 사용 중입니다',
336
354
  },
355
+ dashboard: {
356
+ empty: "즐겨찾는 컬렉션이 아직 없습니다.",
357
+ emptyHint: "컬렉션을 고정(★)하면 여기에 표시됩니다.",
358
+ viewTable: "테이블",
359
+ viewCalendar: "캘린더",
360
+ viewKanban: "칸반",
361
+ viewPickerLabel: "보기 선택",
362
+ openFull: "더블클릭하여 전체 보기 열기",
363
+ dragHint: "드래그하여 순서 변경",
364
+ resizeHint: "드래그하여 높이 조절",
365
+ },
337
366
  pluginLauncher: {
367
+ chat: { label: "채팅" },
368
+ dashboard: { label: "대시보드" },
338
369
  automations: { label: "자동화" },
339
370
  wiki: { label: "위키" },
340
371
  collections: { label: "컬렉션" },
341
372
  feeds: { label: "피드" },
373
+ accounting: { label: "회계" },
342
374
  files: { label: "파일" },
343
375
  },
344
376
  shortcuts: {
@@ -354,6 +386,9 @@ const koMessages = {
354
386
  closeFile: "파일 닫기",
355
387
  },
356
388
  fileContentRenderer: {
389
+ download: "ZIP",
390
+ downloadZip: "자체 포함 zip으로 다운로드(에셋 포함)",
391
+ downloadError: "다운로드 실패",
357
392
  selectFile: "파일을 선택하세요",
358
393
  htmlPreview: "HTML 미리보기",
359
394
  pdfPreview: "PDF 미리보기",
@@ -645,222 +680,6 @@ const koMessages = {
645
680
  stylePromptWithPath: "`{path}`의 이미지를 {style} 스타일 이미지로 변환해 주세요.",
646
681
  stylePromptNoPath: "캔버스에 그린 그림을 {style} 스타일 이미지로 변환해 주세요.",
647
682
  },
648
- pluginAccounting: {
649
- title: "회계",
650
- noBook: '장부가 없습니다 — 위의 "+ 새 장부"를 눌러 첫 장부를 만드세요.',
651
- common: {
652
- cancel: "취소",
653
- loading: "불러오는 중…",
654
- error: "오류: {error}",
655
- empty: "아직 항목이 없습니다.",
656
- },
657
- tabs: {
658
- journal: "분개장",
659
- newEntry: "새 분개",
660
- opening: "기초잔액",
661
- accounts: "계정",
662
- ledger: "원장",
663
- balanceSheet: "재무상태표",
664
- profitLoss: "손익",
665
- settings: "설정",
666
- },
667
- bookSwitcher: {
668
- label: "장부",
669
- newBook: "새 장부…",
670
- create: "생성",
671
- nameLabel: "이름",
672
- currencyLabel: "통화",
673
- countryLabel: "국가",
674
- countryPlaceholder: "국가 선택…",
675
- countryHint: "국가를 설정하면 세무 관할이 결정되어 어시스턴트가 국가별 안내(일본 T-번호, EU VAT ID 등)를 제공할 수 있습니다.",
676
- fiscalYearEndLabel: "회계연도 종료일",
677
- fiscalYearEndQ1: "3월 31일 (Q1)",
678
- fiscalYearEndQ2: "6월 30일 (Q2)",
679
- fiscalYearEndQ3: "9월 30일 (Q3)",
680
- fiscalYearEndQ4: "12월 31일 (Q4)",
681
- fiscalYearEndHint: "이 장부의 날짜 범위 단축 메뉴에 사용되는 회계연도 경계를 결정합니다. 기본값은 12월 31일(Q4 — 달력 연도)입니다.",
682
- placeholder: "장부 선택…",
683
- firstRunHint: "첫 장부의 이름, 통화, 국가, 회계연도 종료일을 선택하세요. 통화는 장부별로 설정되며 분개를 시작한 뒤에는 변경이 어렵습니다.",
684
- },
685
- deletedNotice: {
686
- title: "“{bookName}” 장부가 삭제되었습니다.",
687
- body: "위 드롭다운에서 다른 장부를 선택하거나 새 장부를 만드세요.",
688
- },
689
- journalList: {
690
- fromLabel: "시작",
691
- toLabel: "종료",
692
- accountLabel: "계정",
693
- allAccounts: "모든 계정",
694
- void: "취소",
695
- edit: "편집",
696
- voidConfirm: "이 분개를 취소하시겠습니까? 원 분개는 분개장에 남고 반대 분개가 추가됩니다.",
697
- voidReason: "사유(선택):",
698
- columns: {
699
- date: "날짜",
700
- kind: "종류",
701
- memo: "메모",
702
- lines: "라인",
703
- },
704
- kind: {
705
- normal: "—",
706
- opening: "기초",
707
- void: "반대",
708
- voidMarker: "취소 마커",
709
- },
710
- },
711
- entryForm: {
712
- title: "새 분개",
713
- editTitle: "분개 편집",
714
- editBanner: "제출하면 원본 분개가 무효 처리되고 이 내용으로 대체됩니다.",
715
- dateLabel: "날짜",
716
- memoLabel: "메모",
717
- accountLabel: "계정",
718
- debitLabel: "차변",
719
- creditLabel: "대변",
720
- taxRegistrationIdLabel: "세무 등록번호",
721
- taxRegistrationIdPlaceholder: "T-number / VAT ID / GSTIN…",
722
- taxRegistrationIdMissingWarning: "필수",
723
- addLine: "라인 추가",
724
- removeLine: "삭제",
725
- submit: "등록",
726
- submitting: "등록 중…",
727
- update: "업데이트",
728
- updating: "업데이트 중…",
729
- cancelEdit: "취소",
730
- success: "분개를 등록했습니다.",
731
- editSuccess: "분개가 업데이트되었습니다.",
732
- editVoidReason: "편집됨",
733
- imbalance: "차액: {amount}",
734
- balanced: "균형 ✓",
735
- },
736
- openingForm: {
737
- title: "기초잔액",
738
- asOfLabel: "기준일",
739
- explainer: "재무상태표 계정(자산/부채/자본)만 입력 가능. Σ차변=Σ대변이 되어야 하며 차액은 Retained Earnings에 흡수됩니다.",
740
- emptyHint:
741
- "모두 비워둔 채 저장해도 괜찮습니다 — 기초잔액은 나중에 업데이트할 수 있습니다. 다른 탭을 사용하려면 일단 기초잔액 항목이 등록되어 있어야 합니다.",
742
- explainer2: "재무상태표 계정만.",
743
- submit: "기초잔액 저장",
744
- replaceWarning: "저장 시 기존 기초잔액은 분개장에서 취소됩니다.",
745
- none: "기초잔액이 설정되지 않았습니다.",
746
- setBy: "{date} 기준 설정됨",
747
- success: "기초잔액을 저장했습니다.",
748
- },
749
- ledger: {
750
- selectAccount: "계정 선택",
751
- closingBalance: "기말 잔액",
752
- columns: {
753
- date: "날짜",
754
- memo: "메모",
755
- debit: "차변",
756
- credit: "대변",
757
- balance: "잔액",
758
- taxRegistrationId: "세무 등록번호",
759
- },
760
- },
761
- dateRange: {
762
- shortcutLabel: "범위",
763
- currentQuarter: "이번 분기",
764
- previousQuarter: "지난 분기",
765
- currentYear: "이번 연도",
766
- previousYear: "지난 연도",
767
- lifetime: "개설 이후",
768
- all: "전체",
769
- fromLabel: "시작",
770
- toLabel: "종료",
771
- },
772
- balanceSheet: {
773
- asOfLabel: "기간",
774
- sections: {
775
- asset: "자산",
776
- liability: "부채",
777
- equity: "자본",
778
- },
779
- total: "합계",
780
- imbalance: "차액: {amount}",
781
- currentEarnings: "당기 순손익",
782
- shortcutLabel: "바로가기",
783
- thisMonth: "이번 달",
784
- lastMonth: "지난달",
785
- lastQuarter: "지난 분기",
786
- lastYear: "지난 연도",
787
- },
788
- profitLoss: {
789
- fromLabel: "시작",
790
- toLabel: "종료",
791
- income: "수익",
792
- expense: "비용",
793
- netIncome: "당기순이익:",
794
- },
795
- accounts: {
796
- listEmpty: "이 카테고리에는 아직 계정이 없습니다.",
797
- openLedgerAria: "{code} {name} 원장 열기",
798
- manageButton: "계정 관리",
799
- modalTitle: "계정 관리",
800
- addAccount: "계정 추가",
801
- sectionTitle: {
802
- asset: "자산",
803
- liability: "부채",
804
- equity: "자본",
805
- income: "수익",
806
- expense: "비용",
807
- },
808
- columnCode: "코드",
809
- columnName: "이름",
810
- columnType: "유형",
811
- columnNote: "메모",
812
- typeOption: {
813
- asset: "자산",
814
- liability: "부채",
815
- equity: "자본",
816
- income: "수익",
817
- expense: "비용",
818
- },
819
- edit: "편집",
820
- save: "저장",
821
- cancel: "취소",
822
- saving: "저장 중…",
823
- addToCategory: "{type} 추가",
824
- deactivate: "비활성화",
825
- reactivate: "활성화",
826
- deactivateConfirm: "‘{name}’을(를) 분개/원장 드롭다운에서 숨기시겠습니까? 기존 분개 항목에는 영향이 없습니다.",
827
- errorEmptyCode: "코드는 필수입니다.",
828
- errorReservedCode: "“_”로 시작하는 코드는 시스템 행에 예약되어 있습니다.",
829
- errorInvalidCodeFormat: "계정 코드는 정확히 4자리 숫자여야 합니다.",
830
- errorCodeTypeMismatch: "코드의 첫 자리는 계정 유형과 일치해야 합니다: 1xxx 자산, 2xxx 부채, 3xxx 자본, 4xxx 수익, 5xxx 비용.",
831
- errorEmptyName: "이름은 필수입니다.",
832
- errorDuplicateCode: "이 코드의 계정이 이미 존재합니다.",
833
- errorDuplicateName: "이 이름의 계정이 이미 존재합니다.",
834
- success: "계정을 저장했습니다.",
835
- codeReadOnlyHint: "계정을 만든 후에는 코드를 변경할 수 없습니다.",
836
- noteOptional: "(선택)",
837
- },
838
- settings: {
839
- bookInfo: "장부 정보",
840
- bookInfoExplain: "국가를 변경하면 세무 관할 기반 안내가 갱신됩니다. 분개를 시작한 뒤에는 통화를 변경할 수 없습니다.",
841
- countryUnset: "(미설정)",
842
- fiscalYearEndExplain: "이후 날짜 범위 단축 메뉴의 해석 방식만 변경됩니다. 기존 분개 항목은 이동되지 않습니다.",
843
- saveChanges: "변경 저장",
844
- updateOk: "장부를 업데이트했습니다.",
845
- rebuild: "스냅샷 재구축",
846
- rebuildExplain: "모든 월별 스냅샷 캐시를 지우고 분개장에서 재계산합니다. 분개 파일을 직접 편집한 뒤 복구할 때 유용합니다.",
847
- rebuildOk: "{count}개 기간을 재구축했습니다.",
848
- advanced: "고급…",
849
- deleteBook: "장부 삭제",
850
- deleteBookExplain: "이 장부의 디렉터리를 영구히 삭제합니다. 되돌릴 수 없습니다.",
851
- deleteBookConfirm: '확인을 위해 "{bookName}"을 입력하세요:',
852
- deleteBookButton: "영구 삭제",
853
- },
854
- preview: {
855
- entry: "{date} 분개를 등록",
856
- pl: "P&L {from} → {to}: 순이익 {net}",
857
- bs: "{date} 재무상태표 · 자산 {assets}",
858
- bookCreated: '장부 "{name}" ({id})를 생성했습니다',
859
- },
860
- previewSummary: "회계 · {bookId}",
861
- previewError: "회계: {error}",
862
- previewGeneric: "회계 결과",
863
- },
864
683
  pluginWiki: {
865
684
  backToIndex: "목차로 돌아가기",
866
685
  pdf: "PDF",
@@ -1102,6 +921,10 @@ const koMessages = {
1102
921
  marpSplitExit: "소스 편집기 닫기",
1103
922
  marpSplitEditorLabel: "소스",
1104
923
  },
924
+ markdownMermaid: {
925
+ loadFailed: "⚠ Mermaid 로드 실패: {error}",
926
+ renderFailed: "⚠ Mermaid 렌더링 실패: {error}",
927
+ },
1105
928
  pluginTextResponse: {
1106
929
  pdf: "PDF",
1107
930
  pdfFailed: "⚠ PDF 실패",
package/src/lang/pt-BR.ts CHANGED
@@ -3,6 +3,8 @@
3
3
 
4
4
  const ptBRMessages = {
5
5
  common: {
6
+ downloadZip: "ZIP",
7
+ downloadFailed: "Falha no download",
6
8
  save: "Salvar",
7
9
  cancel: "Cancelar",
8
10
  loading: "Carregando...",
@@ -52,6 +54,7 @@ const ptBRMessages = {
52
54
  all: "Todas",
53
55
  unread: "Não lidas",
54
56
  bookmarked: "Favoritas",
57
+ longRunning: "De longa duração (24h+)",
55
58
  human: "Pessoa",
56
59
  scheduler: "Agendador",
57
60
  skill: "Skill",
@@ -117,6 +120,21 @@ const ptBRMessages = {
117
120
  hideDetails: "Ocultar detalhes",
118
121
  retry: "Tentar novamente",
119
122
  },
123
+ remoteHost: {
124
+ title: "Host remoto",
125
+ online: "Host remoto on-line",
126
+ offline: "Host remoto off-line",
127
+ uid: "uid {uid}",
128
+ signIn: "Entrar com o Google",
129
+ connecting: "Conectando…",
130
+ disconnect: "Desconectar",
131
+ disconnecting: "Desconectando…",
132
+ noToken: "O login do Google não retornou idToken",
133
+ connectFailed: "Falha ao conectar",
134
+ disconnectFailed: "Falha ao desconectar",
135
+ signInFailed: "Falha ao entrar com o Google",
136
+ statusFailed: "Falha ao carregar o status",
137
+ },
120
138
  sidebarHeader: {
121
139
  home: "Ir para o chat mais recente",
122
140
  toolCallHistory: "Histórico de chamadas de ferramentas",
@@ -330,11 +348,25 @@ const ptBRMessages = {
330
348
  errAlreadyExists: "Já existe",
331
349
  errLabelConflict: 'Rótulo "{label}" já existe',
332
350
  },
351
+ dashboard: {
352
+ empty: "Ainda não há coleções favoritas.",
353
+ emptyHint: "Fixe uma coleção (★) para vê-la aqui.",
354
+ viewTable: "Tabela",
355
+ viewCalendar: "Calendário",
356
+ viewKanban: "Kanban",
357
+ viewPickerLabel: "Escolher visualização",
358
+ openFull: "Clique duplo para abrir a visualização completa",
359
+ dragHint: "Arraste para reordenar",
360
+ resizeHint: "Arraste para redimensionar a altura",
361
+ },
333
362
  pluginLauncher: {
363
+ chat: { label: "Chat" },
364
+ dashboard: { label: "Painel" },
334
365
  automations: { label: "Ações" },
335
366
  wiki: { label: "Wiki" },
336
367
  collections: { label: "Coleções" },
337
368
  feeds: { label: "Feeds" },
369
+ accounting: { label: "Contabilidade" },
338
370
  files: { label: "Arquivos" },
339
371
  },
340
372
  shortcuts: {
@@ -350,6 +382,9 @@ const ptBRMessages = {
350
382
  closeFile: "Fechar arquivo",
351
383
  },
352
384
  fileContentRenderer: {
385
+ download: "ZIP",
386
+ downloadZip: "Baixar como zip autônomo (recursos incluídos)",
387
+ downloadError: "Falha no download",
353
388
  selectFile: "Selecione um arquivo",
354
389
  htmlPreview: "Pré-visualização HTML",
355
390
  pdfPreview: "Pré-visualização PDF",
@@ -648,223 +683,6 @@ const ptBRMessages = {
648
683
  stylePromptWithPath: "Transforme a imagem em `{path}` em uma imagem no estilo {style}.",
649
684
  stylePromptNoPath: "Transforme meu desenho na tela em uma imagem no estilo {style}.",
650
685
  },
651
- pluginAccounting: {
652
- title: "Contabilidade",
653
- noBook: 'Ainda não há livros — clique em "+ Novo livro" acima para criar o primeiro.',
654
- common: {
655
- cancel: "Cancelar",
656
- loading: "Carregando…",
657
- error: "Erro: {error}",
658
- empty: "Ainda não há lançamentos.",
659
- },
660
- tabs: {
661
- journal: "Diário",
662
- newEntry: "Novo lançamento",
663
- opening: "Abertura",
664
- accounts: "Contas",
665
- ledger: "Razão",
666
- balanceSheet: "Balanço",
667
- profitLoss: "DRE",
668
- settings: "Configurações",
669
- },
670
- bookSwitcher: {
671
- label: "Livro",
672
- newBook: "Novo livro…",
673
- create: "Criar",
674
- nameLabel: "Nome",
675
- currencyLabel: "Moeda",
676
- countryLabel: "País",
677
- countryPlaceholder: "Selecione um país…",
678
- countryHint: "O país define a jurisdição fiscal para que o assistente possa dar conselhos específicos (T-number no Japão, ID de IVA na UE, etc.).",
679
- fiscalYearEndLabel: "Encerramento do exercício",
680
- fiscalYearEndQ1: "31 de março (Q1)",
681
- fiscalYearEndQ2: "30 de junho (Q2)",
682
- fiscalYearEndQ3: "30 de setembro (Q3)",
683
- fiscalYearEndQ4: "31 de dezembro (Q4)",
684
- fiscalYearEndHint: "Define o limite do exercício social usado pelos atalhos de período deste livro. Padrão: 31 de dezembro (Q4 — ano civil).",
685
- placeholder: "Selecione um livro…",
686
- firstRunHint:
687
- "Escolha o nome, a moeda, o país e o encerramento do exercício do seu primeiro livro. A moeda é definida por livro e fica difícil alterar depois de começar a lançar.",
688
- },
689
- deletedNotice: {
690
- title: "“{bookName}” foi excluído.",
691
- body: "Selecione outro livro no menu acima ou crie um novo.",
692
- },
693
- journalList: {
694
- fromLabel: "De",
695
- toLabel: "Até",
696
- accountLabel: "Conta",
697
- allAccounts: "Todas as contas",
698
- void: "Estornar",
699
- edit: "Editar",
700
- voidConfirm: "Estornar este lançamento? O original permanece no diário e um par de reversão é anexado.",
701
- voidReason: "Motivo (opcional):",
702
- columns: {
703
- date: "Data",
704
- kind: "Tipo",
705
- memo: "Memo",
706
- lines: "Linhas",
707
- },
708
- kind: {
709
- normal: "—",
710
- opening: "Abertura",
711
- void: "Reverso",
712
- voidMarker: "Marcador de estorno",
713
- },
714
- },
715
- entryForm: {
716
- title: "Novo lançamento",
717
- editTitle: "Editar lançamento",
718
- editBanner: "Ao enviar, o lançamento original será estornado e substituído por este.",
719
- dateLabel: "Data",
720
- memoLabel: "Memo",
721
- accountLabel: "Conta",
722
- debitLabel: "Débito",
723
- creditLabel: "Crédito",
724
- taxRegistrationIdLabel: "Inscrição fiscal",
725
- taxRegistrationIdPlaceholder: "CNPJ / VAT ID / GSTIN…",
726
- taxRegistrationIdMissingWarning: "Obrigatório",
727
- addLine: "Adicionar linha",
728
- removeLine: "Remover",
729
- submit: "Lançar",
730
- submitting: "Lançando…",
731
- update: "Atualizar",
732
- updating: "Atualizando…",
733
- cancelEdit: "Cancelar",
734
- success: "Lançamento registrado.",
735
- editSuccess: "Lançamento atualizado.",
736
- editVoidReason: "editado",
737
- imbalance: "Diferença: {amount}",
738
- balanced: "Equilibrado ✓",
739
- },
740
- openingForm: {
741
- title: "Saldos iniciais",
742
- asOfLabel: "Em",
743
- explainer: "Apenas contas de balanço (ativo/passivo/patrimônio). Σ débito = Σ crédito; a diferença entra em Retained Earnings.",
744
- emptyHint:
745
- "Você pode salvar tudo em branco — os saldos iniciais podem ser atualizados depois. Basta ter uma abertura registrada para que as outras abas sejam liberadas.",
746
- explainer2: "Apenas contas de balanço.",
747
- submit: "Salvar saldos iniciais",
748
- replaceWarning: "Salvar substitui a abertura existente (a anterior é estornada no diário).",
749
- none: "Ainda não há saldo inicial.",
750
- setBy: "Definido em {date}",
751
- success: "Saldos iniciais salvos.",
752
- },
753
- ledger: {
754
- selectAccount: "Selecionar conta",
755
- closingBalance: "Saldo final",
756
- columns: {
757
- date: "Data",
758
- memo: "Memo",
759
- debit: "Débito",
760
- credit: "Crédito",
761
- balance: "Saldo",
762
- taxRegistrationId: "Inscrição fiscal",
763
- },
764
- },
765
- dateRange: {
766
- shortcutLabel: "Período",
767
- currentQuarter: "Trimestre atual",
768
- previousQuarter: "Último trimestre",
769
- currentYear: "Ano atual",
770
- previousYear: "Ano anterior",
771
- lifetime: "Desde a abertura",
772
- all: "Tudo",
773
- fromLabel: "De",
774
- toLabel: "Até",
775
- },
776
- balanceSheet: {
777
- asOfLabel: "Período",
778
- sections: {
779
- asset: "Ativo",
780
- liability: "Passivo",
781
- equity: "Patrimônio",
782
- },
783
- total: "Total",
784
- imbalance: "Diferença: {amount}",
785
- currentEarnings: "Resultado do período",
786
- shortcutLabel: "Atalho",
787
- thisMonth: "Este mês",
788
- lastMonth: "Mês anterior",
789
- lastQuarter: "Último trimestre",
790
- lastYear: "Ano anterior",
791
- },
792
- profitLoss: {
793
- fromLabel: "De",
794
- toLabel: "Até",
795
- income: "Receita",
796
- expense: "Despesa",
797
- netIncome: "Resultado líquido:",
798
- },
799
- accounts: {
800
- listEmpty: "Ainda não há contas nesta categoria.",
801
- openLedgerAria: "Abrir razão de {code} {name}",
802
- manageButton: "Gerenciar contas",
803
- modalTitle: "Gerenciar contas",
804
- addAccount: "Adicionar conta",
805
- sectionTitle: {
806
- asset: "Ativos",
807
- liability: "Passivos",
808
- equity: "Patrimônio",
809
- income: "Receitas",
810
- expense: "Despesas",
811
- },
812
- columnCode: "Código",
813
- columnName: "Nome",
814
- columnType: "Tipo",
815
- columnNote: "Observação",
816
- typeOption: {
817
- asset: "Ativo",
818
- liability: "Passivo",
819
- equity: "Patrimônio",
820
- income: "Receita",
821
- expense: "Despesa",
822
- },
823
- edit: "Editar",
824
- save: "Salvar",
825
- cancel: "Cancelar",
826
- saving: "Salvando…",
827
- addToCategory: "Adicionar conta de {type}",
828
- deactivate: "Desativar",
829
- reactivate: "Ativar",
830
- deactivateConfirm: "Ocultar “{name}” dos menus de lançamentos / razão? Os lançamentos existentes não são afetados.",
831
- errorEmptyCode: "O código é obrigatório.",
832
- errorReservedCode: "Códigos iniciados por “_” são reservados para linhas do sistema.",
833
- errorInvalidCodeFormat: "O código da conta deve ter exatamente 4 dígitos.",
834
- errorCodeTypeMismatch: "O código deve corresponder ao tipo de conta: 1xxx ativo, 2xxx passivo, 3xxx patrimônio, 4xxx receita, 5xxx despesa.",
835
- errorEmptyName: "O nome é obrigatório.",
836
- errorDuplicateCode: "Já existe uma conta com este código.",
837
- errorDuplicateName: "Já existe uma conta com este nome.",
838
- success: "Conta salva.",
839
- codeReadOnlyHint: "O código não pode ser alterado depois que a conta é criada.",
840
- noteOptional: "(opcional)",
841
- },
842
- settings: {
843
- bookInfo: "Informações do livro",
844
- bookInfoExplain: "Edite o país para atualizar as recomendações conforme a jurisdição fiscal. A moeda não pode ser alterada após registrar lançamentos.",
845
- countryUnset: "(não definido)",
846
- fiscalYearEndExplain: "Apenas altera como os atalhos de período são resolvidos a partir de agora; lançamentos existentes não são movidos.",
847
- saveChanges: "Salvar alterações",
848
- updateOk: "Livro atualizado.",
849
- rebuild: "Reconstruir snapshots",
850
- rebuildExplain: "Apaga todos os snapshots mensais e recalcula a partir do diário. Útil após editar o diário manualmente.",
851
- rebuildOk: "Reconstruído(s) {count} período(s).",
852
- advanced: "Avançado…",
853
- deleteBook: "Excluir livro",
854
- deleteBookExplain: "Exclui permanentemente o diretório do livro. Não pode ser desfeito.",
855
- deleteBookConfirm: 'Digite "{bookName}" para confirmar:',
856
- deleteBookButton: "Excluir para sempre",
857
- },
858
- preview: {
859
- entry: "Lançamento em {date}",
860
- pl: "P&L {from} → {to}: líquido {net}",
861
- bs: "Balanço em {date} · ativos {assets}",
862
- bookCreated: 'Livro "{name}" ({id}) criado',
863
- },
864
- previewSummary: "Contabilidade · {bookId}",
865
- previewError: "Contabilidade: {error}",
866
- previewGeneric: "Resultado da contabilidade",
867
- },
868
686
  pluginWiki: {
869
687
  backToIndex: "Voltar ao índice",
870
688
  pdf: "PDF",
@@ -1104,6 +922,10 @@ const ptBRMessages = {
1104
922
  marpSplitExit: "Fechar o editor de código",
1105
923
  marpSplitEditorLabel: "Código",
1106
924
  },
925
+ markdownMermaid: {
926
+ loadFailed: "⚠ Falha ao carregar o Mermaid: {error}",
927
+ renderFailed: "⚠ Falha ao renderizar o Mermaid: {error}",
928
+ },
1107
929
  pluginTextResponse: {
1108
930
  pdf: "PDF",
1109
931
  pdfFailed: "⚠ Falha no PDF",