dominds 1.8.3 → 1.8.5

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 (411) hide show
  1. package/dist/access-control.d.ts +46 -0
  2. package/dist/apps/app-id.d.ts +6 -0
  3. package/dist/apps/app-json.d.ts +127 -0
  4. package/dist/apps/app-lock-file.d.ts +45 -0
  5. package/dist/apps/assigned-port.d.ts +28 -0
  6. package/dist/apps/configuration-file.d.ts +51 -0
  7. package/dist/apps/dialog-run-controls.d.ts +16 -0
  8. package/dist/apps/enabled-apps.d.ts +35 -0
  9. package/dist/apps/enabled-apps.js +13 -3
  10. package/dist/apps/local-package-root.d.ts +7 -0
  11. package/dist/apps/manifest.d.ts +101 -0
  12. package/dist/apps/npx-resolve.d.ts +11 -0
  13. package/dist/apps/override-paths.d.ts +25 -0
  14. package/dist/apps/package-info.d.ts +8 -0
  15. package/dist/apps/problems.d.ts +4 -0
  16. package/dist/apps/resolution-file.d.ts +60 -0
  17. package/dist/apps/rtws-seed.d.ts +7 -0
  18. package/dist/apps/run-app-json.d.ts +8 -0
  19. package/dist/apps/run-control.d.ts +6 -0
  20. package/dist/apps/run-control.js +21 -4
  21. package/dist/apps/runtime.d.ts +19 -0
  22. package/dist/apps/runtime.js +66 -24
  23. package/dist/apps/teammates.d.ts +7 -0
  24. package/dist/apps/workspace-app-state.d.ts +4 -0
  25. package/dist/apps/workspace-app-state.js +1 -1
  26. package/dist/apps-host/app-host-contract.d.ts +87 -0
  27. package/dist/apps-host/client.d.ts +41 -0
  28. package/dist/apps-host/host.d.ts +2 -0
  29. package/dist/apps-host/ipc-types.d.ts +194 -0
  30. package/dist/cli/apps-cli-hints.d.ts +11 -0
  31. package/dist/cli/apps-cli-hints.js +24 -0
  32. package/dist/cli/create.d.ts +14 -0
  33. package/dist/cli/disable.d.ts +3 -0
  34. package/dist/cli/disable.js +16 -1
  35. package/dist/cli/doctor.d.ts +45 -0
  36. package/dist/cli/doctor.js +276 -0
  37. package/dist/cli/enable.d.ts +3 -0
  38. package/dist/cli/enable.js +16 -1
  39. package/dist/cli/install.d.ts +9 -0
  40. package/dist/cli/install.js +17 -1
  41. package/dist/cli/manual.d.ts +14 -0
  42. package/dist/cli/read.d.ts +18 -0
  43. package/dist/cli/tui.d.ts +18 -0
  44. package/dist/cli/uninstall.d.ts +3 -0
  45. package/dist/cli/uninstall.js +19 -2
  46. package/dist/cli/update.d.ts +3 -0
  47. package/dist/cli/update.js +21 -3
  48. package/dist/cli/webui.d.ts +15 -0
  49. package/dist/cli.d.ts +29 -0
  50. package/dist/cli.js +20 -4
  51. package/dist/course-transition.d.ts +4 -0
  52. package/dist/dialog-display-state.d.ts +51 -0
  53. package/dist/{dialog-run-state.js → dialog-display-state.js} +137 -53
  54. package/dist/dialog-factory.d.ts +36 -0
  55. package/dist/dialog-fork.d.ts +25 -0
  56. package/dist/dialog-fork.js +4 -4
  57. package/dist/dialog-global-registry.d.ts +37 -0
  58. package/dist/dialog-instance-registry.d.ts +4 -0
  59. package/dist/dialog.d.ts +619 -0
  60. package/dist/dialog.js +161 -31
  61. package/dist/docs/app-constitution.md +35 -6
  62. package/dist/docs/app-constitution.zh.md +35 -6
  63. package/dist/docs/dialog-persistence.md +5 -5
  64. package/dist/docs/dialog-persistence.zh.md +5 -5
  65. package/dist/docs/dialog-system.md +13 -1
  66. package/dist/docs/dialog-system.zh.md +13 -1
  67. package/dist/docs/dominds-terminology.md +3 -0
  68. package/dist/evt-registry.d.ts +68 -0
  69. package/dist/llm/client.d.ts +160 -0
  70. package/dist/llm/gen/anthropic.d.ts +33 -0
  71. package/dist/llm/gen/artifacts.d.ts +25 -0
  72. package/dist/llm/gen/codex.d.ts +9 -0
  73. package/dist/llm/gen/mock.d.ts +75 -0
  74. package/dist/llm/gen/openai-compatible.d.ts +24 -0
  75. package/dist/llm/gen/openai.d.ts +16 -0
  76. package/dist/llm/gen/registry.d.ts +10 -0
  77. package/dist/llm/gen/tool-output-limit.d.ts +9 -0
  78. package/dist/llm/gen.d.ts +52 -0
  79. package/dist/llm/kernel-driver/context-health.d.ts +24 -0
  80. package/dist/llm/kernel-driver/context.d.ts +22 -0
  81. package/dist/llm/kernel-driver/drive.d.ts +3 -0
  82. package/dist/llm/kernel-driver/drive.js +59 -38
  83. package/dist/llm/kernel-driver/engine.d.ts +10 -0
  84. package/dist/llm/kernel-driver/engine.js +2 -2
  85. package/dist/llm/kernel-driver/events.d.ts +4 -0
  86. package/dist/llm/kernel-driver/flow.d.ts +8 -0
  87. package/dist/llm/kernel-driver/flow.js +39 -24
  88. package/dist/llm/kernel-driver/guardrails.d.ts +35 -0
  89. package/dist/llm/kernel-driver/index.d.ts +4 -0
  90. package/dist/llm/kernel-driver/loop.d.ts +2 -0
  91. package/dist/llm/kernel-driver/loop.js +10 -3
  92. package/dist/llm/kernel-driver/restore.d.ts +13 -0
  93. package/dist/llm/kernel-driver/runtime.d.ts +46 -0
  94. package/dist/llm/kernel-driver/subdialog-txn.d.ts +8 -0
  95. package/dist/llm/kernel-driver/subdialog-txn.js +16 -0
  96. package/dist/llm/kernel-driver/subdialog.d.ts +31 -0
  97. package/dist/llm/kernel-driver/subdialog.js +83 -1
  98. package/dist/llm/kernel-driver/tellask-special.d.ts +61 -0
  99. package/dist/llm/kernel-driver/tellask-special.js +274 -115
  100. package/dist/llm/kernel-driver/types.d.ts +99 -0
  101. package/dist/llm/kernel-driver.d.ts +1 -0
  102. package/dist/llm/tools-projection.d.ts +13 -0
  103. package/dist/log.d.ts +30 -0
  104. package/dist/mcp/config.d.ts +64 -0
  105. package/dist/mcp/sdk-client.d.ts +31 -0
  106. package/dist/mcp/server-runtime.d.ts +23 -0
  107. package/dist/mcp/stdio-client.d.ts +27 -0
  108. package/dist/mcp/supervisor.d.ts +22 -0
  109. package/dist/mcp/tool-names.d.ts +29 -0
  110. package/dist/minds/load.d.ts +13 -0
  111. package/dist/minds/minds-i18n.d.ts +30 -0
  112. package/dist/minds/system-prompt-parts.d.ts +20 -0
  113. package/dist/minds/system-prompt.d.ts +21 -0
  114. package/dist/minds/system-prompt.js +2 -2
  115. package/dist/persistence.d.ts +602 -0
  116. package/dist/persistence.js +70 -18
  117. package/dist/priming.d.ts +83 -0
  118. package/dist/priming.js +4 -0
  119. package/dist/problems.d.ts +13 -0
  120. package/dist/server/api-routes.d.ts +11 -0
  121. package/dist/server/api-routes.js +7 -7
  122. package/dist/server/auth.d.ts +43 -0
  123. package/dist/server/create-dialog-contract.d.ts +12 -0
  124. package/dist/server/mime-types.d.ts +8 -0
  125. package/dist/server/server-core.d.ts +80 -0
  126. package/dist/server/setup-routes.d.ts +45 -0
  127. package/dist/server/snippets-routes.d.ts +60 -0
  128. package/dist/server/static-server.d.ts +14 -0
  129. package/dist/server/static-server.js +1 -1
  130. package/dist/server/websocket-handler.d.ts +22 -0
  131. package/dist/server/websocket-handler.js +45 -41
  132. package/dist/server.d.ts +17 -0
  133. package/dist/server.js +10 -5
  134. package/dist/shared/async-fifo-mutex.d.ts +12 -0
  135. package/dist/shared/diligence.d.ts +3 -0
  136. package/dist/shared/diligence.js +2 -2
  137. package/dist/shared/dotenv.d.ts +13 -0
  138. package/dist/shared/evt.d.ts +85 -0
  139. package/dist/shared/i18n/driver-messages.d.ts +38 -0
  140. package/dist/shared/i18n/driver-messages.js +32 -0
  141. package/dist/shared/i18n/text.d.ts +6 -0
  142. package/dist/shared/i18n/tool-result-messages.d.ts +5 -0
  143. package/dist/shared/markdown-frontmatter.d.ts +7 -0
  144. package/dist/shared/rtws-cli.d.ts +8 -0
  145. package/dist/shared/runtime-language.d.ts +11 -0
  146. package/dist/shared/team_mgmt-manual.d.ts +31 -0
  147. package/dist/shared/types/context-health.d.ts +33 -0
  148. package/dist/shared/types/dialog.d.ts +403 -0
  149. package/dist/shared/types/display-state.d.ts +56 -0
  150. package/dist/shared/types/display-state.js +15 -0
  151. package/dist/shared/types/drive-intent.d.ts +36 -0
  152. package/dist/shared/types/i18n.d.ts +2 -0
  153. package/dist/shared/types/index.d.ts +109 -0
  154. package/dist/shared/types/index.js +1 -1
  155. package/dist/shared/types/language.d.ts +10 -0
  156. package/dist/shared/types/priming.d.ts +55 -0
  157. package/dist/shared/types/problems.d.ts +128 -0
  158. package/dist/shared/types/q4h.d.ts +14 -0
  159. package/dist/shared/types/setup.d.ts +170 -0
  160. package/dist/shared/types/snippets.d.ts +68 -0
  161. package/dist/shared/types/storage.d.ts +677 -0
  162. package/dist/shared/types/tools-registry.d.ts +19 -0
  163. package/dist/shared/types/wire.d.ts +227 -0
  164. package/dist/shared/utils/fbr.d.ts +10 -0
  165. package/dist/shared/utils/fmt.d.ts +1 -0
  166. package/dist/shared/utils/html.d.ts +2 -0
  167. package/dist/shared/utils/id.d.ts +12 -0
  168. package/dist/shared/utils/inter-dialog-format.d.ts +73 -0
  169. package/dist/shared/utils/inter-dialog-format.js +13 -0
  170. package/dist/shared/utils/time.d.ts +1 -0
  171. package/dist/skills/load.d.ts +24 -0
  172. package/dist/team-config-updates.d.ts +21 -0
  173. package/dist/team.d.ts +156 -0
  174. package/dist/tool.d.ts +65 -0
  175. package/dist/tools/app-reminders.d.ts +16 -0
  176. package/dist/tools/apply-patch.d.ts +2 -0
  177. package/dist/tools/builtins.d.ts +1 -0
  178. package/dist/tools/ctrl.d.ts +34 -0
  179. package/dist/tools/env.d.ts +12 -0
  180. package/dist/tools/fs.d.ts +7 -0
  181. package/dist/tools/manual/render.d.ts +16 -0
  182. package/dist/tools/manual/schema.d.ts +3 -0
  183. package/dist/tools/manual/spec.d.ts +23 -0
  184. package/dist/tools/mcp.d.ts +9 -0
  185. package/dist/tools/mem.d.ts +9 -0
  186. package/dist/tools/os.d.ts +12 -0
  187. package/dist/tools/pending-tellask-reminder.d.ts +4 -0
  188. package/dist/tools/pending-tellask-reminder.js +2 -2
  189. package/dist/tools/plan.d.ts +2 -0
  190. package/dist/tools/prompts/team_mgmt/en/errors.md +6 -0
  191. package/dist/tools/prompts/team_mgmt/zh/errors.md +6 -0
  192. package/dist/tools/registry-snapshot.d.ts +4 -0
  193. package/dist/tools/registry.d.ts +43 -0
  194. package/dist/tools/ripgrep.d.ts +6 -0
  195. package/dist/tools/ripgrep.js +135 -34
  196. package/dist/tools/shell-tools.d.ts +5 -0
  197. package/dist/tools/team_mgmt.d.ts +40 -0
  198. package/dist/tools/team_mgmt.js +29 -0
  199. package/dist/tools/toolset-manual.d.ts +12 -0
  200. package/dist/tools/txt.d.ts +43 -0
  201. package/dist/utils/id.d.ts +20 -0
  202. package/dist/utils/task-package.d.ts +140 -0
  203. package/dist/utils/taskdoc-search.d.ts +19 -0
  204. package/dist/utils/taskdoc.d.ts +7 -0
  205. package/package.json +26 -13
  206. package/{dist/static/assets/_basePickBy-BlBhj3XJ.js → webapp/dist/assets/_basePickBy-BCETjyvF.js} +3 -3
  207. package/{dist/static/assets/_basePickBy-BlBhj3XJ.js.map → webapp/dist/assets/_basePickBy-BCETjyvF.js.map} +1 -1
  208. package/{dist/static/assets/_baseUniq-fHvi1qfT.js → webapp/dist/assets/_baseUniq-fLqPJO5i.js} +2 -2
  209. package/{dist/static/assets/_baseUniq-fHvi1qfT.js.map → webapp/dist/assets/_baseUniq-fLqPJO5i.js.map} +1 -1
  210. package/{dist/static/assets/arc-DT59AXiy.js → webapp/dist/assets/arc-BzFkK7IZ.js} +2 -2
  211. package/{dist/static/assets/arc-DT59AXiy.js.map → webapp/dist/assets/arc-BzFkK7IZ.js.map} +1 -1
  212. package/{dist/static/assets/architectureDiagram-VXUJARFQ-DHqQ2bIc.js → webapp/dist/assets/architectureDiagram-VXUJARFQ-D_hKK43_.js} +7 -7
  213. package/{dist/static/assets/architectureDiagram-VXUJARFQ-DHqQ2bIc.js.map → webapp/dist/assets/architectureDiagram-VXUJARFQ-D_hKK43_.js.map} +1 -1
  214. package/{dist/static/assets/blockDiagram-VD42YOAC-DiN-P6e6.js → webapp/dist/assets/blockDiagram-VD42YOAC-CgWXic7v.js} +7 -7
  215. package/{dist/static/assets/blockDiagram-VD42YOAC-DiN-P6e6.js.map → webapp/dist/assets/blockDiagram-VD42YOAC-CgWXic7v.js.map} +1 -1
  216. package/{dist/static/assets/c4Diagram-YG6GDRKO-L_BnHsyc.js → webapp/dist/assets/c4Diagram-YG6GDRKO-COqGeM2S.js} +3 -3
  217. package/{dist/static/assets/c4Diagram-YG6GDRKO-L_BnHsyc.js.map → webapp/dist/assets/c4Diagram-YG6GDRKO-COqGeM2S.js.map} +1 -1
  218. package/{dist/static/assets/channel-BR4XoWwP.js → webapp/dist/assets/channel-8XkSzwJl.js} +2 -2
  219. package/{dist/static/assets/channel-BR4XoWwP.js.map → webapp/dist/assets/channel-8XkSzwJl.js.map} +1 -1
  220. package/{dist/static/assets/chunk-4BX2VUAB-RcDNBCC8.js → webapp/dist/assets/chunk-4BX2VUAB-B_R1ldB5.js} +2 -2
  221. package/{dist/static/assets/chunk-4BX2VUAB-RcDNBCC8.js.map → webapp/dist/assets/chunk-4BX2VUAB-B_R1ldB5.js.map} +1 -1
  222. package/{dist/static/assets/chunk-55IACEB6-DFujAN3X.js → webapp/dist/assets/chunk-55IACEB6-DosUiRle.js} +2 -2
  223. package/{dist/static/assets/chunk-55IACEB6-DFujAN3X.js.map → webapp/dist/assets/chunk-55IACEB6-DosUiRle.js.map} +1 -1
  224. package/{dist/static/assets/chunk-B4BG7PRW-OwGp4Aeh.js → webapp/dist/assets/chunk-B4BG7PRW-CPvx_wxK.js} +5 -5
  225. package/{dist/static/assets/chunk-B4BG7PRW-OwGp4Aeh.js.map → webapp/dist/assets/chunk-B4BG7PRW-CPvx_wxK.js.map} +1 -1
  226. package/{dist/static/assets/chunk-DI55MBZ5-BtvUha4f.js → webapp/dist/assets/chunk-DI55MBZ5-CtfFQBra.js} +4 -4
  227. package/{dist/static/assets/chunk-DI55MBZ5-BtvUha4f.js.map → webapp/dist/assets/chunk-DI55MBZ5-CtfFQBra.js.map} +1 -1
  228. package/{dist/static/assets/chunk-FMBD7UC4-BY9Zij3P.js → webapp/dist/assets/chunk-FMBD7UC4-BZJDYQUQ.js} +2 -2
  229. package/{dist/static/assets/chunk-FMBD7UC4-BY9Zij3P.js.map → webapp/dist/assets/chunk-FMBD7UC4-BZJDYQUQ.js.map} +1 -1
  230. package/{dist/static/assets/chunk-QN33PNHL-D6yEuXI4.js → webapp/dist/assets/chunk-QN33PNHL-CazyQzCZ.js} +2 -2
  231. package/{dist/static/assets/chunk-QN33PNHL-D6yEuXI4.js.map → webapp/dist/assets/chunk-QN33PNHL-CazyQzCZ.js.map} +1 -1
  232. package/{dist/static/assets/chunk-QZHKN3VN-D8jUie4l.js → webapp/dist/assets/chunk-QZHKN3VN-H39jWkGz.js} +2 -2
  233. package/{dist/static/assets/chunk-QZHKN3VN-D8jUie4l.js.map → webapp/dist/assets/chunk-QZHKN3VN-H39jWkGz.js.map} +1 -1
  234. package/{dist/static/assets/chunk-TZMSLE5B-CWidilhV.js → webapp/dist/assets/chunk-TZMSLE5B-T3mACKEk.js} +2 -2
  235. package/{dist/static/assets/chunk-TZMSLE5B-CWidilhV.js.map → webapp/dist/assets/chunk-TZMSLE5B-T3mACKEk.js.map} +1 -1
  236. package/{dist/static/assets/classDiagram-2ON5EDUG-Ci0WR0Qt.js → webapp/dist/assets/classDiagram-2ON5EDUG-BzJbZNmh.js} +6 -6
  237. package/{dist/static/assets/classDiagram-2ON5EDUG-Ci0WR0Qt.js.map → webapp/dist/assets/classDiagram-2ON5EDUG-BzJbZNmh.js.map} +1 -1
  238. package/{dist/static/assets/classDiagram-v2-WZHVMYZB-Ci0WR0Qt.js → webapp/dist/assets/classDiagram-v2-WZHVMYZB-BzJbZNmh.js} +6 -6
  239. package/{dist/static/assets/classDiagram-v2-WZHVMYZB-Ci0WR0Qt.js.map → webapp/dist/assets/classDiagram-v2-WZHVMYZB-BzJbZNmh.js.map} +1 -1
  240. package/{dist/static/assets/clone-D1wg1GLT.js → webapp/dist/assets/clone-Big4mBmE.js} +2 -2
  241. package/{dist/static/assets/clone-D1wg1GLT.js.map → webapp/dist/assets/clone-Big4mBmE.js.map} +1 -1
  242. package/{dist/static/assets/cose-bilkent-S5V4N54A-CZyMFpp7.js → webapp/dist/assets/cose-bilkent-S5V4N54A-jAw41QnJ.js} +2 -2
  243. package/{dist/static/assets/cose-bilkent-S5V4N54A-CZyMFpp7.js.map → webapp/dist/assets/cose-bilkent-S5V4N54A-jAw41QnJ.js.map} +1 -1
  244. package/{dist/static/assets/dagre-6UL2VRFP-CsR5rKda.js → webapp/dist/assets/dagre-6UL2VRFP-D3MEMYv5.js} +7 -7
  245. package/{dist/static/assets/dagre-6UL2VRFP-CsR5rKda.js.map → webapp/dist/assets/dagre-6UL2VRFP-D3MEMYv5.js.map} +1 -1
  246. package/{dist/static/assets/diagram-PSM6KHXK-DiBHtzz6.js → webapp/dist/assets/diagram-PSM6KHXK-CWyVYAZu.js} +8 -8
  247. package/{dist/static/assets/diagram-PSM6KHXK-DiBHtzz6.js.map → webapp/dist/assets/diagram-PSM6KHXK-CWyVYAZu.js.map} +1 -1
  248. package/{dist/static/assets/diagram-QEK2KX5R-Dv7eJui0.js → webapp/dist/assets/diagram-QEK2KX5R-CUYJiFCE.js} +7 -7
  249. package/{dist/static/assets/diagram-QEK2KX5R-Dv7eJui0.js.map → webapp/dist/assets/diagram-QEK2KX5R-CUYJiFCE.js.map} +1 -1
  250. package/{dist/static/assets/diagram-S2PKOQOG-DkWudo9L.js → webapp/dist/assets/diagram-S2PKOQOG-BGfyTOuE.js} +7 -7
  251. package/{dist/static/assets/diagram-S2PKOQOG-DkWudo9L.js.map → webapp/dist/assets/diagram-S2PKOQOG-BGfyTOuE.js.map} +1 -1
  252. package/{dist/static/assets/erDiagram-Q2GNP2WA-lHstf6Ay.js → webapp/dist/assets/erDiagram-Q2GNP2WA-T0nE1xLf.js} +5 -5
  253. package/{dist/static/assets/erDiagram-Q2GNP2WA-lHstf6Ay.js.map → webapp/dist/assets/erDiagram-Q2GNP2WA-T0nE1xLf.js.map} +1 -1
  254. package/{dist/static/assets/flowDiagram-NV44I4VS-Bg3iND3O.js → webapp/dist/assets/flowDiagram-NV44I4VS-BOtJbmb2.js} +6 -6
  255. package/{dist/static/assets/flowDiagram-NV44I4VS-Bg3iND3O.js.map → webapp/dist/assets/flowDiagram-NV44I4VS-BOtJbmb2.js.map} +1 -1
  256. package/{dist/static/assets/ganttDiagram-JELNMOA3-D7Nbtncu.js → webapp/dist/assets/ganttDiagram-JELNMOA3-BKHc1SN2.js} +3 -3
  257. package/{dist/static/assets/ganttDiagram-JELNMOA3-D7Nbtncu.js.map → webapp/dist/assets/ganttDiagram-JELNMOA3-BKHc1SN2.js.map} +1 -1
  258. package/{dist/static/assets/gitGraphDiagram-V2S2FVAM-BEvxtrS9.js → webapp/dist/assets/gitGraphDiagram-V2S2FVAM-DEs6Jd7A.js} +8 -8
  259. package/{dist/static/assets/gitGraphDiagram-V2S2FVAM-BEvxtrS9.js.map → webapp/dist/assets/gitGraphDiagram-V2S2FVAM-DEs6Jd7A.js.map} +1 -1
  260. package/{dist/static/assets/graph-B2Owsqy5.js → webapp/dist/assets/graph-B8rBjt0j.js} +3 -3
  261. package/{dist/static/assets/graph-B2Owsqy5.js.map → webapp/dist/assets/graph-B8rBjt0j.js.map} +1 -1
  262. package/{dist/static/assets/index-CIyFlluO.js → webapp/dist/assets/index-BBpM4Vs4.js} +1724 -1090
  263. package/{dist/static/assets/index-CIyFlluO.js.map → webapp/dist/assets/index-BBpM4Vs4.js.map} +1 -1
  264. package/{dist/static/assets/infoDiagram-HS3SLOUP-CuI1-da5.js → webapp/dist/assets/infoDiagram-HS3SLOUP-BGHKQMyS.js} +6 -6
  265. package/{dist/static/assets/infoDiagram-HS3SLOUP-CuI1-da5.js.map → webapp/dist/assets/infoDiagram-HS3SLOUP-BGHKQMyS.js.map} +1 -1
  266. package/{dist/static/assets/journeyDiagram-XKPGCS4Q-DbzuKIyy.js → webapp/dist/assets/journeyDiagram-XKPGCS4Q-C5zIhegj.js} +5 -5
  267. package/{dist/static/assets/journeyDiagram-XKPGCS4Q-DbzuKIyy.js.map → webapp/dist/assets/journeyDiagram-XKPGCS4Q-C5zIhegj.js.map} +1 -1
  268. package/{dist/static/assets/kanban-definition-3W4ZIXB7-Cc4dp2aC.js → webapp/dist/assets/kanban-definition-3W4ZIXB7-714VVE1e.js} +3 -3
  269. package/{dist/static/assets/kanban-definition-3W4ZIXB7-Cc4dp2aC.js.map → webapp/dist/assets/kanban-definition-3W4ZIXB7-714VVE1e.js.map} +1 -1
  270. package/{dist/static/assets/layout-mw2wqeSj.js → webapp/dist/assets/layout-DprNh9sN.js} +5 -5
  271. package/{dist/static/assets/layout-mw2wqeSj.js.map → webapp/dist/assets/layout-DprNh9sN.js.map} +1 -1
  272. package/{dist/static/assets/linear-C-8iGqQy.js → webapp/dist/assets/linear-BWG2T2oB.js} +2 -2
  273. package/{dist/static/assets/linear-C-8iGqQy.js.map → webapp/dist/assets/linear-BWG2T2oB.js.map} +1 -1
  274. package/{dist/static/assets/mindmap-definition-VGOIOE7T-CaSjMMDb.js → webapp/dist/assets/mindmap-definition-VGOIOE7T-DQb2l3T_.js} +4 -4
  275. package/{dist/static/assets/mindmap-definition-VGOIOE7T-CaSjMMDb.js.map → webapp/dist/assets/mindmap-definition-VGOIOE7T-DQb2l3T_.js.map} +1 -1
  276. package/{dist/static/assets/pieDiagram-ADFJNKIX-D0ZNJv-s.js → webapp/dist/assets/pieDiagram-ADFJNKIX-Do6Tc-Qs.js} +8 -8
  277. package/{dist/static/assets/pieDiagram-ADFJNKIX-D0ZNJv-s.js.map → webapp/dist/assets/pieDiagram-ADFJNKIX-Do6Tc-Qs.js.map} +1 -1
  278. package/{dist/static/assets/quadrantDiagram-AYHSOK5B-bIVTM0t7.js → webapp/dist/assets/quadrantDiagram-AYHSOK5B-lfpxvyP1.js} +3 -3
  279. package/{dist/static/assets/quadrantDiagram-AYHSOK5B-bIVTM0t7.js.map → webapp/dist/assets/quadrantDiagram-AYHSOK5B-lfpxvyP1.js.map} +1 -1
  280. package/{dist/static/assets/requirementDiagram-UZGBJVZJ-Cu7Qom20.js → webapp/dist/assets/requirementDiagram-UZGBJVZJ-Dn4Cnusj.js} +4 -4
  281. package/{dist/static/assets/requirementDiagram-UZGBJVZJ-Cu7Qom20.js.map → webapp/dist/assets/requirementDiagram-UZGBJVZJ-Dn4Cnusj.js.map} +1 -1
  282. package/{dist/static/assets/sankeyDiagram-TZEHDZUN-DFfah0f8.js → webapp/dist/assets/sankeyDiagram-TZEHDZUN-CcpDMXKi.js} +2 -2
  283. package/{dist/static/assets/sankeyDiagram-TZEHDZUN-DFfah0f8.js.map → webapp/dist/assets/sankeyDiagram-TZEHDZUN-CcpDMXKi.js.map} +1 -1
  284. package/{dist/static/assets/sequenceDiagram-WL72ISMW-BRXyRrxs.js → webapp/dist/assets/sequenceDiagram-WL72ISMW-TfHPlNvp.js} +4 -4
  285. package/{dist/static/assets/sequenceDiagram-WL72ISMW-BRXyRrxs.js.map → webapp/dist/assets/sequenceDiagram-WL72ISMW-TfHPlNvp.js.map} +1 -1
  286. package/{dist/static/assets/stateDiagram-FKZM4ZOC-pJkpeW5D.js → webapp/dist/assets/stateDiagram-FKZM4ZOC-CrqtuS-o.js} +9 -9
  287. package/{dist/static/assets/stateDiagram-FKZM4ZOC-pJkpeW5D.js.map → webapp/dist/assets/stateDiagram-FKZM4ZOC-CrqtuS-o.js.map} +1 -1
  288. package/{dist/static/assets/stateDiagram-v2-4FDKWEC3-Dz8IBf9p.js → webapp/dist/assets/stateDiagram-v2-4FDKWEC3-CwYGywpf.js} +5 -5
  289. package/{dist/static/assets/stateDiagram-v2-4FDKWEC3-Dz8IBf9p.js.map → webapp/dist/assets/stateDiagram-v2-4FDKWEC3-CwYGywpf.js.map} +1 -1
  290. package/{dist/static/assets/timeline-definition-IT6M3QCI-C-dWWpdA.js → webapp/dist/assets/timeline-definition-IT6M3QCI-DoP5HyAE.js} +3 -3
  291. package/{dist/static/assets/timeline-definition-IT6M3QCI-C-dWWpdA.js.map → webapp/dist/assets/timeline-definition-IT6M3QCI-DoP5HyAE.js.map} +1 -1
  292. package/{dist/static/assets/treemap-GDKQZRPO-DI7Z67nL.js → webapp/dist/assets/treemap-GDKQZRPO-3rSE1o-R.js} +5 -5
  293. package/{dist/static/assets/treemap-GDKQZRPO-DI7Z67nL.js.map → webapp/dist/assets/treemap-GDKQZRPO-3rSE1o-R.js.map} +1 -1
  294. package/{dist/static/assets/xychartDiagram-PRI3JC2R-BKKhP_kL.js → webapp/dist/assets/xychartDiagram-PRI3JC2R-DFTw6wXn.js} +3 -3
  295. package/{dist/static/assets/xychartDiagram-PRI3JC2R-BKKhP_kL.js.map → webapp/dist/assets/xychartDiagram-PRI3JC2R-DFTw6wXn.js.map} +1 -1
  296. package/{dist/static → webapp/dist}/index.html +1 -1
  297. package/webapp/package.json +38 -0
  298. package/dist/apps/installed-file.js +0 -207
  299. package/dist/apps/runtime-port.js +0 -91
  300. package/dist/docs/kernel-app-architecture.md +0 -286
  301. package/dist/docs/kernel-app-architecture.zh.md +0 -285
  302. package/dist/index.js +0 -8
  303. package/dist/llm/driver-entry.js +0 -28
  304. package/dist/llm/driver-v2/context-health.js +0 -121
  305. package/dist/llm/driver-v2/context.js +0 -56
  306. package/dist/llm/driver-v2/core.js +0 -1545
  307. package/dist/llm/driver-v2/index.js +0 -26
  308. package/dist/llm/driver-v2/orchestrator.js +0 -158
  309. package/dist/llm/driver-v2/policy.js +0 -129
  310. package/dist/llm/driver-v2/restore-dialog-hierarchy.js +0 -73
  311. package/dist/llm/driver-v2/round.js +0 -366
  312. package/dist/llm/driver-v2/runtime-utils.js +0 -365
  313. package/dist/llm/driver-v2/saying-events.js +0 -20
  314. package/dist/llm/driver-v2/subdialog-txn.js +0 -42
  315. package/dist/llm/driver-v2/supdialog-response.js +0 -400
  316. package/dist/llm/driver-v2/tellask-bridge.js +0 -1148
  317. package/dist/llm/driver-v2/types.js +0 -10
  318. package/dist/llm/driver-v2-ref-only/context-health.js +0 -121
  319. package/dist/llm/driver-v2-ref-only/context.js +0 -17
  320. package/dist/llm/driver-v2-ref-only/core.js +0 -1710
  321. package/dist/llm/driver-v2-ref-only/index.js +0 -26
  322. package/dist/llm/driver-v2-ref-only/orchestrator.js +0 -158
  323. package/dist/llm/driver-v2-ref-only/policy.js +0 -129
  324. package/dist/llm/driver-v2-ref-only/restore-dialog-hierarchy.js +0 -73
  325. package/dist/llm/driver-v2-ref-only/round.js +0 -366
  326. package/dist/llm/driver-v2-ref-only/runtime-utils.js +0 -473
  327. package/dist/llm/driver-v2-ref-only/saying-events.js +0 -18
  328. package/dist/llm/driver-v2-ref-only/subdialog-txn.js +0 -42
  329. package/dist/llm/driver-v2-ref-only/supdialog-response.js +0 -453
  330. package/dist/llm/driver-v2-ref-only/tellask-bridge.js +0 -1178
  331. package/dist/llm/driver-v2-ref-only/types.js +0 -10
  332. package/dist/shared/types/run-state.js +0 -8
  333. package/dist/tools/prompts/memory/en/errors.md +0 -155
  334. package/dist/tools/prompts/memory/en/index.md +0 -47
  335. package/dist/tools/prompts/memory/en/principles.md +0 -79
  336. package/dist/tools/prompts/memory/en/scenarios.md +0 -174
  337. package/dist/tools/prompts/memory/en/tools.md +0 -154
  338. package/dist/tools/prompts/memory/zh/errors.md +0 -155
  339. package/dist/tools/prompts/memory/zh/index.md +0 -47
  340. package/dist/tools/prompts/memory/zh/principles.md +0 -79
  341. package/dist/tools/prompts/memory/zh/scenarios.md +0 -174
  342. package/dist/tools/prompts/memory/zh/tools.md +0 -154
  343. /package/{dist/static → webapp/dist}/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  344. /package/{dist/static → webapp/dist}/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  345. /package/{dist/static → webapp/dist}/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  346. /package/{dist/static → webapp/dist}/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  347. /package/{dist/static → webapp/dist}/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  348. /package/{dist/static → webapp/dist}/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  349. /package/{dist/static → webapp/dist}/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  350. /package/{dist/static → webapp/dist}/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  351. /package/{dist/static → webapp/dist}/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  352. /package/{dist/static → webapp/dist}/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  353. /package/{dist/static → webapp/dist}/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  354. /package/{dist/static → webapp/dist}/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  355. /package/{dist/static → webapp/dist}/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  356. /package/{dist/static → webapp/dist}/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  357. /package/{dist/static → webapp/dist}/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  358. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  359. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  360. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  361. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  362. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  363. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  364. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  365. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  366. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  367. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  368. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  369. /package/{dist/static → webapp/dist}/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  370. /package/{dist/static → webapp/dist}/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  371. /package/{dist/static → webapp/dist}/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  372. /package/{dist/static → webapp/dist}/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  373. /package/{dist/static → webapp/dist}/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  374. /package/{dist/static → webapp/dist}/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  375. /package/{dist/static → webapp/dist}/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  376. /package/{dist/static → webapp/dist}/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  377. /package/{dist/static → webapp/dist}/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  378. /package/{dist/static → webapp/dist}/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  379. /package/{dist/static → webapp/dist}/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  380. /package/{dist/static → webapp/dist}/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  381. /package/{dist/static → webapp/dist}/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  382. /package/{dist/static → webapp/dist}/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  383. /package/{dist/static → webapp/dist}/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  384. /package/{dist/static → webapp/dist}/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  385. /package/{dist/static → webapp/dist}/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  386. /package/{dist/static → webapp/dist}/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  387. /package/{dist/static → webapp/dist}/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  388. /package/{dist/static → webapp/dist}/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  389. /package/{dist/static → webapp/dist}/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  390. /package/{dist/static → webapp/dist}/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  391. /package/{dist/static → webapp/dist}/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  392. /package/{dist/static → webapp/dist}/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  393. /package/{dist/static → webapp/dist}/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  394. /package/{dist/static → webapp/dist}/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  395. /package/{dist/static → webapp/dist}/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  396. /package/{dist/static → webapp/dist}/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  397. /package/{dist/static → webapp/dist}/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  398. /package/{dist/static → webapp/dist}/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  399. /package/{dist/static → webapp/dist}/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  400. /package/{dist/static → webapp/dist}/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  401. /package/{dist/static → webapp/dist}/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  402. /package/{dist/static → webapp/dist}/assets/cytoscape.esm-Bm8DJGmZ.js +0 -0
  403. /package/{dist/static → webapp/dist}/assets/cytoscape.esm-Bm8DJGmZ.js.map +0 -0
  404. /package/{dist/static → webapp/dist}/assets/defaultLocale-B2RvLBDe.js +0 -0
  405. /package/{dist/static → webapp/dist}/assets/defaultLocale-B2RvLBDe.js.map +0 -0
  406. /package/{dist/static → webapp/dist}/assets/favicon-Cmg5RbCj.svg +0 -0
  407. /package/{dist/static → webapp/dist}/assets/index-CD5wtC_i.css +0 -0
  408. /package/{dist/static → webapp/dist}/assets/init-ZxktEp_H.js +0 -0
  409. /package/{dist/static → webapp/dist}/assets/init-ZxktEp_H.js.map +0 -0
  410. /package/{dist/static → webapp/dist}/assets/ordinal-CxptdPJm.js +0 -0
  411. /package/{dist/static → webapp/dist}/assets/ordinal-CxptdPJm.js.map +0 -0
@@ -0,0 +1,46 @@
1
+ import type { LanguageCode } from './shared/types/language';
2
+ import { Team } from './team';
3
+ /**
4
+ * Directory-specific pattern matching for access control.
5
+ * This function determines if a target path (file or directory) should be controlled
6
+ * by a directory pattern. The pattern represents a directory scope.
7
+ *
8
+ * Supports:
9
+ * - "*" matches any single directory/file name within a path segment
10
+ * - "**" matches any number of directory levels (including zero)
11
+ * - Exact directory matches
12
+ *
13
+ * Directory semantics:
14
+ * - Pattern "src" matches "src/file.txt", "src/subdir/file.js", etc.
15
+ * - Pattern "src" does NOT match "src-backup/file.txt" (prevents false positives)
16
+ * - Pattern "src/tools" matches "src/tools/fs.ts" but not "src/other/file.ts"
17
+ */
18
+ export declare function matchesPattern(targetPath: string, dirPattern: string): boolean;
19
+ /**
20
+ * Check if a member has read access to a specific path.
21
+ *
22
+ * Access control logic:
23
+ * 1. Check blacklist first (no_read_dirs) - if path matches any blacklist pattern, deny access
24
+ * 2. Check whitelist (read_dirs) - if path matches any whitelist pattern, allow access
25
+ * 3. Check extension blacklist (no_read_file_ext_names) - if extension matches, deny access
26
+ * 4. Check extension whitelist (read_file_ext_names)
27
+ * 5. If no whitelist patterns are defined for a dimension, allow access (default allow)
28
+ * 6. If whitelist patterns exist but none match, deny access
29
+ */
30
+ export declare function hasReadAccess(member: Team.Member, targetPath: string): boolean;
31
+ /**
32
+ * Check if a member has write access to a specific path.
33
+ *
34
+ * Access control logic:
35
+ * 1. Check blacklist first (no_write_dirs) - if path matches any blacklist pattern, deny access
36
+ * 2. Check whitelist (write_dirs) - if path matches any whitelist pattern, allow access
37
+ * 3. Check extension blacklist (no_write_file_ext_names) - if extension matches, deny access
38
+ * 4. Check extension whitelist (write_file_ext_names)
39
+ * 5. If no whitelist patterns are defined for a dimension, allow access (default allow)
40
+ * 6. If whitelist patterns exist but none match, deny access
41
+ */
42
+ export declare function hasWriteAccess(member: Team.Member, targetPath: string): boolean;
43
+ /**
44
+ * Get an access denied error message for a specific operation and path.
45
+ */
46
+ export declare function getAccessDeniedMessage(operation: 'read' | 'write', targetPath: string, language?: LanguageCode): string;
@@ -0,0 +1,6 @@
1
+ export declare function normalizeDomindsAppId(value: string): string;
2
+ export declare function isValidDomindsAppId(value: string): boolean;
3
+ export declare function domindsAppIdToPathParts(appId: string): ReadonlyArray<string>;
4
+ export declare function resolveDomindsAppRtwsDirAbs(rtwsRootAbs: string, appId: string): string;
5
+ export declare function resolveDomindsAppLocalPackageRootAbs(rootAbs: string, appId: string): string;
6
+ export declare function formatDomindsAppRtwsDirRel(appId: string): string;
@@ -0,0 +1,127 @@
1
+ import type { I18nText } from '../shared/types/i18n';
2
+ import type { JsonSchema, JsonValue, ReminderUpdateResult, ToolArguments, ToolCallOutput } from '../tool';
3
+ export type DomindsAppJsonSchemaVersion = 1;
4
+ export type DomindsAppToolJson = Readonly<{
5
+ name: string;
6
+ description?: string;
7
+ descriptionI18n?: I18nText;
8
+ parameters: JsonSchema;
9
+ }>;
10
+ export type DomindsAppToolsetJson = Readonly<{
11
+ id: string;
12
+ descriptionI18n?: I18nText;
13
+ tools: ReadonlyArray<DomindsAppToolJson>;
14
+ }>;
15
+ export type DomindsAppDialogRunControlJson = Readonly<{
16
+ id: string;
17
+ descriptionI18n?: I18nText;
18
+ }>;
19
+ export type DomindsAppReminderOwnerJson = Readonly<{
20
+ ref: string;
21
+ managedByTool?: string;
22
+ updateExample?: string;
23
+ }>;
24
+ export type DomindsAppContributesJson = Readonly<{
25
+ teammatesYamlRelPath?: string;
26
+ toolsets?: ReadonlyArray<DomindsAppToolsetJson>;
27
+ dialogRunControls?: ReadonlyArray<DomindsAppDialogRunControlJson>;
28
+ reminderOwners?: ReadonlyArray<DomindsAppReminderOwnerJson>;
29
+ }>;
30
+ export type DomindsAppHostEntryJson = Readonly<{
31
+ kind: 'node_module';
32
+ moduleRelPath: string;
33
+ exportName: string;
34
+ }>;
35
+ export type DomindsAppFrontendJson = Readonly<{
36
+ kind: 'http';
37
+ defaultPort?: number;
38
+ basePath?: string;
39
+ wsPath?: string;
40
+ }>;
41
+ /**
42
+ * The JSON payload printed by `npx <pkg> --dominds-app` for Dominds app installation and runtime.
43
+ * This JSON is treated as the stable handshake between dominds kernel and a Dominds App package.
44
+ */
45
+ export type DomindsAppInstallJsonV1 = Readonly<{
46
+ schemaVersion: DomindsAppJsonSchemaVersion;
47
+ appId: string;
48
+ displayName?: string;
49
+ package: Readonly<{
50
+ name: string;
51
+ version: string | null;
52
+ rootAbs: string;
53
+ }>;
54
+ host: DomindsAppHostEntryJson;
55
+ frontend?: DomindsAppFrontendJson;
56
+ contributes?: DomindsAppContributesJson;
57
+ }>;
58
+ export declare function parseDomindsAppInstallJson(v: unknown): {
59
+ ok: true;
60
+ json: DomindsAppInstallJsonV1;
61
+ } | {
62
+ ok: false;
63
+ errorText: string;
64
+ };
65
+ export type DomindsAppHostToolContext = Readonly<{
66
+ dialogId: string;
67
+ rootDialogId: string;
68
+ agentId: string;
69
+ taskDocPath: string;
70
+ sessionSlug?: string;
71
+ callerId: string;
72
+ }>;
73
+ export type DomindsAppDialogTargetRef = Readonly<{
74
+ dialogId: string;
75
+ } | {
76
+ rootDialogId?: string;
77
+ agentId: string;
78
+ sessionSlug?: string;
79
+ }>;
80
+ export type DomindsAppDialogInfo = Readonly<{
81
+ dialogId: string;
82
+ rootDialogId: string;
83
+ agentId: string;
84
+ sessionSlug?: string;
85
+ }>;
86
+ export type DomindsAppReminderState = Readonly<{
87
+ content: string;
88
+ meta?: JsonValue;
89
+ echoback?: boolean;
90
+ }>;
91
+ export type DomindsAppReminderApplyRequest = Readonly<{
92
+ kind: 'upsert';
93
+ ownerRef: string;
94
+ content: string;
95
+ meta?: JsonValue;
96
+ position?: number;
97
+ echoback?: boolean;
98
+ } | {
99
+ kind: 'delete';
100
+ ownerRef: string;
101
+ meta?: JsonValue;
102
+ }>;
103
+ export type DomindsAppReminderApplyResult = Readonly<{
104
+ treatment: 'noop';
105
+ } | {
106
+ treatment: 'add';
107
+ reminder: DomindsAppReminderState;
108
+ position?: number;
109
+ } | {
110
+ treatment: 'update';
111
+ ownedIndex: number;
112
+ reminder: DomindsAppReminderState;
113
+ } | {
114
+ treatment: 'delete';
115
+ ownedIndex: number;
116
+ }>;
117
+ export type DomindsAppDialogReminderRequestBatch = Readonly<{
118
+ target: DomindsAppDialogTargetRef;
119
+ reminderRequests: ReadonlyArray<DomindsAppReminderApplyRequest>;
120
+ }>;
121
+ export type DomindsAppHostToolResult = Readonly<{
122
+ output: ToolCallOutput;
123
+ reminderRequests?: ReadonlyArray<DomindsAppReminderApplyRequest>;
124
+ dialogReminderRequests?: ReadonlyArray<DomindsAppDialogReminderRequestBatch>;
125
+ }>;
126
+ export type DomindsAppHostToolHandler = (args: ToolArguments, ctx: DomindsAppHostToolContext) => Promise<ToolCallOutput | DomindsAppHostToolResult>;
127
+ export type DomindsAppHostReminderUpdateResult = ReminderUpdateResult;
@@ -0,0 +1,45 @@
1
+ export type AppLockSchemaVersion = 1;
2
+ export type AppLockEntry = Readonly<{
3
+ id: string;
4
+ package: Readonly<{
5
+ name: string;
6
+ version: string | null;
7
+ }>;
8
+ }>;
9
+ export type AppLockFile = Readonly<{
10
+ schemaVersion: AppLockSchemaVersion;
11
+ apps: ReadonlyArray<AppLockEntry>;
12
+ }>;
13
+ export declare const APP_LOCK_REL_PATH: string;
14
+ export declare function parseAppLockFile(parsed: unknown, filePathAbs: string): {
15
+ ok: true;
16
+ file: AppLockFile;
17
+ } | {
18
+ ok: false;
19
+ errorText: string;
20
+ };
21
+ export declare function loadAppLockFile(params: {
22
+ rtwsRootAbs: string;
23
+ }): Promise<Readonly<{
24
+ kind: 'ok';
25
+ file: AppLockFile;
26
+ filePathAbs: string;
27
+ exists: boolean;
28
+ }> | Readonly<{
29
+ kind: 'error';
30
+ errorText: string;
31
+ filePathAbs: string;
32
+ }>>;
33
+ export declare function findLockedApp(file: AppLockFile, appId: string): AppLockEntry | null;
34
+ export declare function upsertLockedApp(params: {
35
+ existing: AppLockFile;
36
+ next: AppLockEntry;
37
+ }): AppLockFile;
38
+ export declare function removeLockedApp(params: {
39
+ existing: AppLockFile;
40
+ appId: string;
41
+ }): AppLockFile;
42
+ export declare function writeAppLockFileIfChanged(params: {
43
+ rtwsRootAbs: string;
44
+ file: AppLockFile;
45
+ }): Promise<void>;
@@ -0,0 +1,28 @@
1
+ import type { DomindsAppInstallJsonV1 } from './app-json';
2
+ import type { AppsResolutionEntry } from './resolution-file';
3
+ export type AssignedPortResolutionReason = 'no_frontend' | 'kept_existing' | 'selected_default' | 'allocated_stable_range' | 'reassigned_from_existing_conflict' | 'reassigned_from_existing_unbindable';
4
+ export type AssignedPortResolution = Readonly<{
5
+ assignedPort: number | null;
6
+ reason: AssignedPortResolutionReason;
7
+ }>;
8
+ /**
9
+ * Resolve a stable non-zero assignedPort for an app frontend.
10
+ *
11
+ * - If the app has no frontend, returns null.
12
+ * - If an existing assignedPort exists, keeps it when still valid/bindable.
13
+ * - If existing assignedPort collides or is not bindable, reassigns deterministically.
14
+ * - Otherwise, tries installJson.frontend.defaultPort when it is bindable.
15
+ * - Falls back to a deterministic stable-range allocator.
16
+ */
17
+ export declare function resolveStableAssignedPort(params: {
18
+ appId: string;
19
+ installJson: DomindsAppInstallJsonV1;
20
+ existingApps: ReadonlyArray<AppsResolutionEntry>;
21
+ existingAssignedPort: number | null;
22
+ }): Promise<number | null>;
23
+ export declare function resolveStableAssignedPortWithReason(params: {
24
+ appId: string;
25
+ installJson: DomindsAppInstallJsonV1;
26
+ existingApps: ReadonlyArray<AppsResolutionEntry>;
27
+ existingAssignedPort: number | null;
28
+ }): Promise<AssignedPortResolution>;
@@ -0,0 +1,51 @@
1
+ export type AppsResolutionStrategyOrderItem = 'local' | 'npx';
2
+ export type AppsResolutionStrategy = Readonly<{
3
+ order?: ReadonlyArray<AppsResolutionStrategyOrderItem>;
4
+ localRoots?: ReadonlyArray<string>;
5
+ }>;
6
+ export declare const DEFAULT_APPS_RESOLUTION_STRATEGY: AppsResolutionStrategy;
7
+ export type NormalizedAppsResolutionStrategy = Readonly<{
8
+ order: ReadonlyArray<AppsResolutionStrategyOrderItem>;
9
+ localRoots: ReadonlyArray<string>;
10
+ }>;
11
+ export type AppsConfigurationSchemaVersion = 1;
12
+ export type AppsConfigurationFile = Readonly<{
13
+ schemaVersion: AppsConfigurationSchemaVersion;
14
+ resolutionStrategy?: AppsResolutionStrategy;
15
+ disabledApps?: ReadonlyArray<string>;
16
+ }>;
17
+ export declare const APPS_CONFIGURATION_REL_PATH: string;
18
+ export declare function parseResolutionStrategy(v: unknown, at: string): {
19
+ ok: true;
20
+ strategy: AppsResolutionStrategy;
21
+ } | {
22
+ ok: false;
23
+ errorText: string;
24
+ };
25
+ export declare function normalizeAppsResolutionStrategy(raw: AppsResolutionStrategy | undefined): NormalizedAppsResolutionStrategy;
26
+ export declare function loadAppsConfigurationFile(params: {
27
+ rtwsRootAbs: string;
28
+ }): Promise<Readonly<{
29
+ kind: 'ok';
30
+ file: AppsConfigurationFile;
31
+ filePathAbs: string;
32
+ exists: boolean;
33
+ }> | Readonly<{
34
+ kind: 'error';
35
+ errorText: string;
36
+ filePathAbs: string;
37
+ }>>;
38
+ export declare function writeAppsConfigurationFile(params: {
39
+ rtwsRootAbs: string;
40
+ file: AppsConfigurationFile;
41
+ }): Promise<void>;
42
+ export declare function writeAppsConfigurationFileIfChanged(params: {
43
+ rtwsRootAbs: string;
44
+ file: AppsConfigurationFile;
45
+ }): Promise<void>;
46
+ export declare function isAppDisabledInConfiguration(file: AppsConfigurationFile, appId: string): boolean;
47
+ export declare function setAppDisabledInConfiguration(params: {
48
+ existing: AppsConfigurationFile;
49
+ appId: string;
50
+ disabled: boolean;
51
+ }): AppsConfigurationFile;
@@ -0,0 +1,16 @@
1
+ import type { I18nText } from '../shared/types/i18n';
2
+ export type AppDialogRunControlMeta = Readonly<{
3
+ appId: string;
4
+ descriptionI18n?: I18nText;
5
+ }>;
6
+ export declare function clearAppDialogRunControlsRegistry(): void;
7
+ export declare function registerAppDialogRunControl(params: {
8
+ id: string;
9
+ appId: string;
10
+ descriptionI18n?: I18nText;
11
+ }): void;
12
+ export declare function unregisterAppDialogRunControl(id: string): void;
13
+ export declare function getAppDialogRunControlMeta(id: string): AppDialogRunControlMeta | null;
14
+ export declare function listAppDialogRunControls(): ReadonlyArray<Readonly<{
15
+ id: string;
16
+ } & AppDialogRunControlMeta>>;
@@ -0,0 +1,35 @@
1
+ import { type AppsResolutionEntry, type AppsResolutionFile } from './resolution-file';
2
+ export type EnabledAppSnapshotEntry = Readonly<{
3
+ id: string;
4
+ runtimePort: number | null;
5
+ installJson: AppsResolutionEntry['installJson'];
6
+ source: AppsResolutionEntry['source'];
7
+ }>;
8
+ export type AppsResolutionIssue = Readonly<{
9
+ kind: 'required_dependency_missing' | 'required_dependency_disabled' | 'app_manifest_load_failed' | 'app_effectively_disabled_due_to_required_dependency' | 'assigned_port_reassigned';
10
+ severity: 'error' | 'warning' | 'info';
11
+ message: string;
12
+ detail: Readonly<Record<string, unknown>>;
13
+ }>;
14
+ export type EnabledAppsSnapshot = Readonly<{
15
+ enabledApps: ReadonlyArray<EnabledAppSnapshotEntry>;
16
+ issues: ReadonlyArray<AppsResolutionIssue>;
17
+ }>;
18
+ type ResolvedGraphState = Readonly<{
19
+ resolutionFile: AppsResolutionFile;
20
+ issues: ReadonlyArray<AppsResolutionIssue>;
21
+ }>;
22
+ export type AppsResolutionMaterializationResult = Readonly<{
23
+ resolved: ResolvedGraphState;
24
+ wroteResolutionFile: boolean;
25
+ }>;
26
+ export declare function resolveAppsGraphState(params: {
27
+ rtwsRootAbs: string;
28
+ }): Promise<ResolvedGraphState>;
29
+ export declare function materializeAppsResolution(params: {
30
+ rtwsRootAbs: string;
31
+ }): Promise<AppsResolutionMaterializationResult>;
32
+ export declare function loadEnabledAppsSnapshot(params: {
33
+ rtwsRootAbs: string;
34
+ }): Promise<EnabledAppsSnapshot>;
35
+ export {};
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.resolveAppsGraphState = resolveAppsGraphState;
6
7
  exports.materializeAppsResolution = materializeAppsResolution;
7
8
  exports.loadEnabledAppsSnapshot = loadEnabledAppsSnapshot;
8
9
  const node_path_1 = __importDefault(require("node:path"));
@@ -353,7 +354,7 @@ async function resolveGraph(params) {
353
354
  issues,
354
355
  };
355
356
  }
356
- async function materializeAppsResolution(params) {
357
+ async function resolveAppsGraphState(params) {
357
358
  const loadedConfig = await (0, configuration_file_1.loadAppsConfigurationFile)({ rtwsRootAbs: params.rtwsRootAbs });
358
359
  if (loadedConfig.kind === 'error') {
359
360
  throw new Error(`Failed to load apps configuration: ${loadedConfig.errorText} (${loadedConfig.filePathAbs})`);
@@ -382,16 +383,25 @@ async function materializeAppsResolution(params) {
382
383
  lockedHintsById,
383
384
  hasConfigurationFile: loadedConfig.exists,
384
385
  });
386
+ return resolved;
387
+ }
388
+ async function materializeAppsResolution(params) {
389
+ const loadedResolution = await (0, resolution_file_1.loadAppsResolutionFile)({ rtwsRootAbs: params.rtwsRootAbs });
390
+ if (loadedResolution.kind === 'error') {
391
+ throw new Error(`Failed to load apps resolution snapshot: ${loadedResolution.errorText} (${loadedResolution.filePathAbs})`);
392
+ }
393
+ const resolved = await resolveAppsGraphState({ rtwsRootAbs: params.rtwsRootAbs });
385
394
  if (JSON.stringify(loadedResolution.file) !== JSON.stringify(resolved.resolutionFile)) {
386
395
  await (0, resolution_file_1.writeAppsResolutionFileIfChanged)({
387
396
  rtwsRootAbs: params.rtwsRootAbs,
388
397
  file: resolved.resolutionFile,
389
398
  });
399
+ return { resolved, wroteResolutionFile: true };
390
400
  }
391
- return resolved;
401
+ return { resolved, wroteResolutionFile: false };
392
402
  }
393
403
  async function loadEnabledAppsSnapshot(params) {
394
- const resolved = await materializeAppsResolution({ rtwsRootAbs: params.rtwsRootAbs });
404
+ const { resolved } = await materializeAppsResolution({ rtwsRootAbs: params.rtwsRootAbs });
395
405
  return {
396
406
  enabledApps: resolved.resolutionFile.apps
397
407
  .filter((app) => app.enabled)
@@ -0,0 +1,7 @@
1
+ import type { AppsResolutionEntry } from './resolution-file';
2
+ export declare function resolveLocalAppPackageRootAbs(params: {
3
+ rtwsRootAbs: string;
4
+ appId: string;
5
+ localRoots: ReadonlyArray<string>;
6
+ previousResolutionEntry: AppsResolutionEntry | null;
7
+ }): Promise<string | null>;
@@ -0,0 +1,101 @@
1
+ export type DomindsAppManifest = Readonly<{
2
+ apiVersion: 'dominds.io/v1alpha1';
3
+ kind: 'DomindsApp';
4
+ id: string;
5
+ dependencies?: ReadonlyArray<DomindsAppDependency>;
6
+ name?: Readonly<{
7
+ zh?: string;
8
+ en?: string;
9
+ }>;
10
+ description?: Readonly<{
11
+ zh?: string;
12
+ en?: string;
13
+ }>;
14
+ contributes?: Readonly<{
15
+ web?: Readonly<{
16
+ staticDir: string;
17
+ mountPath?: string;
18
+ }>;
19
+ teammates?: Readonly<{
20
+ teamYaml: string;
21
+ }>;
22
+ tools?: Readonly<{
23
+ module: string;
24
+ }>;
25
+ rtwsSeed?: Readonly<{
26
+ taskdocs?: ReadonlyArray<Readonly<{
27
+ path: string;
28
+ goals?: string;
29
+ constraints?: string;
30
+ progress?: string;
31
+ }>>;
32
+ }>;
33
+ }>;
34
+ }>;
35
+ export type DomindsAppDependency = Readonly<{
36
+ id: string;
37
+ optional?: boolean;
38
+ }>;
39
+ export type AppManifestLoadResult = Readonly<{
40
+ kind: 'ok';
41
+ manifest: DomindsAppManifest;
42
+ raw: string;
43
+ filePathAbs: string;
44
+ }> | Readonly<{
45
+ kind: 'error';
46
+ errorText: string;
47
+ filePathAbs: string;
48
+ }>;
49
+ export declare const DEFAULT_DOMINDS_APP_MANIFEST_REL_PATH = ".minds/app.yaml";
50
+ export declare function makeDefaultRtwsAppManifest(id?: string): DomindsAppManifest;
51
+ export declare function parseDomindsAppManifest(parsed: unknown, filePathAbs: string): {
52
+ ok: true;
53
+ manifest: DomindsAppManifest;
54
+ } | {
55
+ ok: false;
56
+ errorText: string;
57
+ };
58
+ export declare function loadDomindsAppManifest(params: {
59
+ packageRootAbs: string;
60
+ manifestRelPath: string;
61
+ }): Promise<AppManifestLoadResult>;
62
+ export declare function writeDomindsAppManifest(params: {
63
+ packageRootAbs: string;
64
+ manifestRelPath: string;
65
+ manifest: DomindsAppManifest;
66
+ }): Promise<void>;
67
+ export declare function writeDomindsAppManifestIfChanged(params: {
68
+ packageRootAbs: string;
69
+ manifestRelPath: string;
70
+ manifest: DomindsAppManifest;
71
+ }): Promise<void>;
72
+ export declare function loadRtwsDeclaredAppDependencies(params: {
73
+ rtwsRootAbs: string;
74
+ }): Promise<ReadonlyArray<DomindsAppDependency>>;
75
+ export declare function hasRtwsDeclaredAppDependency(params: {
76
+ rtwsRootAbs: string;
77
+ appId: string;
78
+ }): Promise<boolean>;
79
+ export declare function upsertManifestDependency(params: {
80
+ manifest: DomindsAppManifest;
81
+ dependency: DomindsAppDependency;
82
+ }): DomindsAppManifest;
83
+ export declare function removeManifestDependency(params: {
84
+ manifest: DomindsAppManifest;
85
+ dependencyId: string;
86
+ }): DomindsAppManifest;
87
+ export declare function resolveAppContribPaths(params: {
88
+ manifest: DomindsAppManifest;
89
+ packageRootAbs: string;
90
+ }): Readonly<{
91
+ webStaticDirAbs: string | null;
92
+ webMountPath: string | null;
93
+ teammatesYamlAbs: string | null;
94
+ toolsModuleAbs: string | null;
95
+ seedTaskdocs: ReadonlyArray<Readonly<{
96
+ path: string;
97
+ goals?: string;
98
+ constraints?: string;
99
+ progress?: string;
100
+ }>>;
101
+ }>;
@@ -0,0 +1,11 @@
1
+ export declare function inferNpmPackageNameFromSpec(spec: string): string | null;
2
+ export declare function resolveNpxPackageRoot(params: {
3
+ spec: string;
4
+ }): Promise<Readonly<{
5
+ kind: 'ok';
6
+ packageName: string;
7
+ packageRootAbs: string;
8
+ }> | Readonly<{
9
+ kind: 'error';
10
+ errorText: string;
11
+ }>>;
@@ -0,0 +1,25 @@
1
+ type OverrideFileResolution = Readonly<{
2
+ kind: 'none';
3
+ }> | Readonly<{
4
+ kind: 'found';
5
+ filePathAbs: string;
6
+ source: 'rtws_override' | 'app_override';
7
+ ownerAppId: string | null;
8
+ }>;
9
+ /**
10
+ * Resolve an app asset override file path for a given app-relative file path.
11
+ *
12
+ * Priority order (read-time):
13
+ * 1) `<rtws>/.apps/override/<app-id>/<rel>`
14
+ * 2) `<integrator-app-root>/.apps/override/<app-id>/<rel>` (in provided order)
15
+ */
16
+ export declare function resolveAppOverrideFileAbs(params: {
17
+ rtwsRootAbs: string;
18
+ appId: string;
19
+ appRelPath: string;
20
+ appOverrideOwners?: ReadonlyArray<Readonly<{
21
+ appId: string;
22
+ packageRootAbs: string;
23
+ }>>;
24
+ }): Promise<OverrideFileResolution>;
25
+ export {};
@@ -0,0 +1,8 @@
1
+ export type PackageInfo = Readonly<{
2
+ packageName: string | null;
3
+ packageVersion: string | null;
4
+ manifestRelPath: string;
5
+ }>;
6
+ export declare function readPackageInfo(params: {
7
+ packageRootAbs: string;
8
+ }): Promise<PackageInfo>;
@@ -0,0 +1,4 @@
1
+ import type { AppsResolutionIssue } from './enabled-apps';
2
+ export declare function reconcileAppsResolutionIssuesToProblems(params: {
3
+ issues: ReadonlyArray<AppsResolutionIssue>;
4
+ }): void;
@@ -0,0 +1,60 @@
1
+ import type { DomindsAppInstallJsonV1 } from './app-json';
2
+ export type AppsResolutionSchemaVersion = 1;
3
+ export type AppsResolutionSource = Readonly<{
4
+ kind: 'npx';
5
+ spec: string;
6
+ }> | Readonly<{
7
+ kind: 'local';
8
+ pathAbs: string;
9
+ }>;
10
+ export type AppsResolutionEntry = Readonly<{
11
+ id: string;
12
+ enabled: boolean;
13
+ source: AppsResolutionSource;
14
+ assignedPort: number | null;
15
+ installJson: DomindsAppInstallJsonV1;
16
+ }>;
17
+ export type AppsResolutionFile = Readonly<{
18
+ schemaVersion: AppsResolutionSchemaVersion;
19
+ apps: ReadonlyArray<AppsResolutionEntry>;
20
+ }>;
21
+ export declare const APPS_RESOLUTION_REL_PATH: string;
22
+ export declare function loadAppsResolutionFile(params: {
23
+ rtwsRootAbs: string;
24
+ }): Promise<Readonly<{
25
+ kind: 'ok';
26
+ file: AppsResolutionFile;
27
+ filePathAbs: string;
28
+ exists: boolean;
29
+ }> | Readonly<{
30
+ kind: 'error';
31
+ errorText: string;
32
+ filePathAbs: string;
33
+ }>>;
34
+ export declare function writeAppsResolutionFile(params: {
35
+ rtwsRootAbs: string;
36
+ file: AppsResolutionFile;
37
+ }): Promise<void>;
38
+ export declare function writeAppsResolutionFileIfChanged(params: {
39
+ rtwsRootAbs: string;
40
+ file: AppsResolutionFile;
41
+ }): Promise<void>;
42
+ export declare function findResolvedApp(file: AppsResolutionFile, appId: string): AppsResolutionEntry | null;
43
+ export declare function upsertResolvedApp(params: {
44
+ existing: AppsResolutionFile;
45
+ next: AppsResolutionEntry;
46
+ }): AppsResolutionFile;
47
+ export declare function removeResolvedApp(params: {
48
+ existing: AppsResolutionFile;
49
+ appId: string;
50
+ }): AppsResolutionFile;
51
+ export declare function setResolvedAppEnabled(params: {
52
+ existing: AppsResolutionFile;
53
+ appId: string;
54
+ enabled: boolean;
55
+ }): AppsResolutionFile;
56
+ export declare function setResolvedAppAssignedPort(params: {
57
+ existing: AppsResolutionFile;
58
+ appId: string;
59
+ assignedPort: number | null;
60
+ }): AppsResolutionFile;
@@ -0,0 +1,7 @@
1
+ import type { DomindsAppManifest } from './manifest';
2
+ export declare function applyRtwsSeed(params: {
3
+ rtwsRootAbs: string;
4
+ appId: string;
5
+ manifest: DomindsAppManifest;
6
+ overwrite: boolean;
7
+ }): Promise<void>;
@@ -0,0 +1,8 @@
1
+ import { type DomindsAppInstallJsonV1 } from './app-json';
2
+ export declare function runDomindsAppJsonViaNpx(params: {
3
+ spec: string;
4
+ cwdAbs: string;
5
+ }): Promise<DomindsAppInstallJsonV1>;
6
+ export declare function runDomindsAppJsonViaLocalPackage(params: {
7
+ packageRootAbs: string;
8
+ }): Promise<DomindsAppInstallJsonV1>;
@@ -0,0 +1,6 @@
1
+ import type { DomindsAppRunControlContext, DomindsAppRunControlResult } from '../apps-host/app-host-contract';
2
+ export declare function applyAppDialogRunControl(params: {
3
+ controlId: string;
4
+ payload: DomindsAppRunControlContext;
5
+ }): Promise<DomindsAppRunControlResult>;
6
+ export declare function applyRegisteredAppDialogRunControls(payload: DomindsAppRunControlContext): Promise<DomindsAppRunControlResult>;