dominds 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/LICENSE +157 -0
  2. package/README.md +250 -0
  3. package/README.zh.md +161 -0
  4. package/dist/access-control.js +253 -0
  5. package/dist/cli/create.js +263 -0
  6. package/dist/cli/read.js +84 -0
  7. package/dist/cli/tui.js +199 -0
  8. package/dist/cli/webui.js +169 -0
  9. package/dist/cli.js +227 -0
  10. package/dist/dialog-factory.js +53 -0
  11. package/dist/dialog-global-registry.js +68 -0
  12. package/dist/dialog-instance-registry.js +78 -0
  13. package/dist/dialog-run-state.js +198 -0
  14. package/dist/dialog.js +1024 -0
  15. package/dist/evt-registry.js +103 -0
  16. package/dist/index.js +8 -0
  17. package/dist/llm/client.js +69 -0
  18. package/dist/llm/defaults.yaml +386 -0
  19. package/dist/llm/driver.js +3214 -0
  20. package/dist/llm/gen/anthropic.js +611 -0
  21. package/dist/llm/gen/codex.js +375 -0
  22. package/dist/llm/gen/mock.js +326 -0
  23. package/dist/llm/gen/openai.js +470 -0
  24. package/dist/llm/gen/registry.js +26 -0
  25. package/dist/llm/gen.js +2 -0
  26. package/dist/llm/tools-projection.js +37 -0
  27. package/dist/log.js +228 -0
  28. package/dist/mcp/config.js +230 -0
  29. package/dist/mcp/sdk-client.js +129 -0
  30. package/dist/mcp/server-runtime.js +57 -0
  31. package/dist/mcp/stdio-client.js +280 -0
  32. package/dist/mcp/supervisor.js +979 -0
  33. package/dist/mcp/tool-names.js +109 -0
  34. package/dist/minds/builtin/cmdr/persona.md +3 -0
  35. package/dist/minds/builtin/dijiang/knowledge.md +287 -0
  36. package/dist/minds/builtin/dijiang/persona.md +7 -0
  37. package/dist/minds/builtin/fuxi/persona.en.md +59 -0
  38. package/dist/minds/builtin/fuxi/persona.zh.md +49 -0
  39. package/dist/minds/builtin/pangu/persona.en.md +78 -0
  40. package/dist/minds/builtin/pangu/persona.zh.md +71 -0
  41. package/dist/minds/load.js +617 -0
  42. package/dist/minds/minds-i18n.js +131 -0
  43. package/dist/minds/system-prompt.js +281 -0
  44. package/dist/persistence.js +3128 -0
  45. package/dist/problems.js +109 -0
  46. package/dist/server/api-routes.js +1031 -0
  47. package/dist/server/auth.js +180 -0
  48. package/dist/server/mime-types.js +32 -0
  49. package/dist/server/prompts-routes.js +543 -0
  50. package/dist/server/server-core.js +235 -0
  51. package/dist/server/setup-routes.js +697 -0
  52. package/dist/server/static-server.js +132 -0
  53. package/dist/server/websocket-handler.js +1011 -0
  54. package/dist/server.js +164 -0
  55. package/dist/shared/async-fifo-mutex.js +36 -0
  56. package/dist/shared/diligence.js +20 -0
  57. package/dist/shared/dotenv.js +144 -0
  58. package/dist/shared/evt.js +195 -0
  59. package/dist/shared/i18n/driver-messages.js +267 -0
  60. package/dist/shared/i18n/text.js +9 -0
  61. package/dist/shared/i18n/tool-result-messages.js +51 -0
  62. package/dist/shared/rtws-cli.js +73 -0
  63. package/dist/shared/runtime-language.js +47 -0
  64. package/dist/shared/team-mgmt-manual.js +116 -0
  65. package/dist/shared/types/context-health.js +2 -0
  66. package/dist/shared/types/dialog.js +11 -0
  67. package/dist/shared/types/i18n.js +2 -0
  68. package/dist/shared/types/index.js +26 -0
  69. package/dist/shared/types/language.js +40 -0
  70. package/dist/shared/types/problems.js +2 -0
  71. package/dist/shared/types/prompts.js +2 -0
  72. package/dist/shared/types/q4h.js +7 -0
  73. package/dist/shared/types/run-state.js +8 -0
  74. package/dist/shared/types/setup.js +2 -0
  75. package/dist/shared/types/storage.js +10 -0
  76. package/dist/shared/types/tellask.js +8 -0
  77. package/dist/shared/types/tools-registry.js +2 -0
  78. package/dist/shared/types/wire.js +12 -0
  79. package/dist/shared/utils/fmt.js +9 -0
  80. package/dist/shared/utils/html.js +20 -0
  81. package/dist/shared/utils/id.js +18 -0
  82. package/dist/shared/utils/inter-dialog-format.js +101 -0
  83. package/dist/shared/utils/time.js +13 -0
  84. package/dist/static/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  85. package/dist/static/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  86. package/dist/static/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  87. package/dist/static/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  88. package/dist/static/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  89. package/dist/static/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  90. package/dist/static/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  91. package/dist/static/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  92. package/dist/static/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  93. package/dist/static/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  94. package/dist/static/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  95. package/dist/static/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  96. package/dist/static/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  97. package/dist/static/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  98. package/dist/static/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  99. package/dist/static/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  100. package/dist/static/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  101. package/dist/static/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  102. package/dist/static/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  103. package/dist/static/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  104. package/dist/static/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  105. package/dist/static/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  106. package/dist/static/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  107. package/dist/static/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  108. package/dist/static/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  109. package/dist/static/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  110. package/dist/static/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  111. package/dist/static/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  112. package/dist/static/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  113. package/dist/static/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  114. package/dist/static/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  115. package/dist/static/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  116. package/dist/static/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  117. package/dist/static/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  118. package/dist/static/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  119. package/dist/static/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  120. package/dist/static/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  121. package/dist/static/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  122. package/dist/static/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  123. package/dist/static/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  124. package/dist/static/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  125. package/dist/static/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  126. package/dist/static/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  127. package/dist/static/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  128. package/dist/static/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  129. package/dist/static/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  130. package/dist/static/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  131. package/dist/static/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  132. package/dist/static/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  133. package/dist/static/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  134. package/dist/static/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  135. package/dist/static/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  136. package/dist/static/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  137. package/dist/static/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  138. package/dist/static/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  139. package/dist/static/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  140. package/dist/static/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  141. package/dist/static/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  142. package/dist/static/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  143. package/dist/static/assets/_baseUniq-Crfl3d5Y.js +661 -0
  144. package/dist/static/assets/_baseUniq-Crfl3d5Y.js.map +1 -0
  145. package/dist/static/assets/arc-CbA_x9GD.js +132 -0
  146. package/dist/static/assets/arc-CbA_x9GD.js.map +1 -0
  147. package/dist/static/assets/architectureDiagram-VXUJARFQ-lcFS8ZQJ.js +8685 -0
  148. package/dist/static/assets/architectureDiagram-VXUJARFQ-lcFS8ZQJ.js.map +1 -0
  149. package/dist/static/assets/blockDiagram-VD42YOAC-B3Q36qRc.js +3608 -0
  150. package/dist/static/assets/blockDiagram-VD42YOAC-B3Q36qRc.js.map +1 -0
  151. package/dist/static/assets/c4Diagram-YG6GDRKO-Mt-aq3VH.js +2482 -0
  152. package/dist/static/assets/c4Diagram-YG6GDRKO-Mt-aq3VH.js.map +1 -0
  153. package/dist/static/assets/channel-BVr1Yke-.js +8 -0
  154. package/dist/static/assets/channel-BVr1Yke-.js.map +1 -0
  155. package/dist/static/assets/chunk-4BX2VUAB-qCIn5Iic.js +17 -0
  156. package/dist/static/assets/chunk-4BX2VUAB-qCIn5Iic.js.map +1 -0
  157. package/dist/static/assets/chunk-55IACEB6-q172NeCV.js +14 -0
  158. package/dist/static/assets/chunk-55IACEB6-q172NeCV.js.map +1 -0
  159. package/dist/static/assets/chunk-B4BG7PRW-CMJmtYzq.js +1827 -0
  160. package/dist/static/assets/chunk-B4BG7PRW-CMJmtYzq.js.map +1 -0
  161. package/dist/static/assets/chunk-DI55MBZ5-DiuwwZPL.js +1916 -0
  162. package/dist/static/assets/chunk-DI55MBZ5-DiuwwZPL.js.map +1 -0
  163. package/dist/static/assets/chunk-FMBD7UC4-06sqZTTn.js +20 -0
  164. package/dist/static/assets/chunk-FMBD7UC4-06sqZTTn.js.map +1 -0
  165. package/dist/static/assets/chunk-QN33PNHL-CnpBNkpP.js +25 -0
  166. package/dist/static/assets/chunk-QN33PNHL-CnpBNkpP.js.map +1 -0
  167. package/dist/static/assets/chunk-QZHKN3VN-CNgjMR-e.js +18 -0
  168. package/dist/static/assets/chunk-QZHKN3VN-CNgjMR-e.js.map +1 -0
  169. package/dist/static/assets/chunk-TZMSLE5B-BxtzW6--.js +109 -0
  170. package/dist/static/assets/chunk-TZMSLE5B-BxtzW6--.js.map +1 -0
  171. package/dist/static/assets/classDiagram-2ON5EDUG-29huvmn-.js +23 -0
  172. package/dist/static/assets/classDiagram-2ON5EDUG-29huvmn-.js.map +1 -0
  173. package/dist/static/assets/classDiagram-v2-WZHVMYZB-29huvmn-.js +23 -0
  174. package/dist/static/assets/classDiagram-v2-WZHVMYZB-29huvmn-.js.map +1 -0
  175. package/dist/static/assets/clone-D2OgLSSn.js +9 -0
  176. package/dist/static/assets/clone-D2OgLSSn.js.map +1 -0
  177. package/dist/static/assets/cose-bilkent-S5V4N54A-BNegDCxl.js +4943 -0
  178. package/dist/static/assets/cose-bilkent-S5V4N54A-BNegDCxl.js.map +1 -0
  179. package/dist/static/assets/cytoscape.esm-Bm8DJGmZ.js +30240 -0
  180. package/dist/static/assets/cytoscape.esm-Bm8DJGmZ.js.map +1 -0
  181. package/dist/static/assets/dagre-6UL2VRFP-f1XrTRSn.js +695 -0
  182. package/dist/static/assets/dagre-6UL2VRFP-f1XrTRSn.js.map +1 -0
  183. package/dist/static/assets/defaultLocale-DVr69WTU.js +207 -0
  184. package/dist/static/assets/defaultLocale-DVr69WTU.js.map +1 -0
  185. package/dist/static/assets/diagram-PSM6KHXK-8w1WbeDi.js +849 -0
  186. package/dist/static/assets/diagram-PSM6KHXK-8w1WbeDi.js.map +1 -0
  187. package/dist/static/assets/diagram-QEK2KX5R-CF4wtMmR.js +303 -0
  188. package/dist/static/assets/diagram-QEK2KX5R-CF4wtMmR.js.map +1 -0
  189. package/dist/static/assets/diagram-S2PKOQOG-8p3Avgn2.js +213 -0
  190. package/dist/static/assets/diagram-S2PKOQOG-8p3Avgn2.js.map +1 -0
  191. package/dist/static/assets/erDiagram-Q2GNP2WA-BMKLxlM9.js +1159 -0
  192. package/dist/static/assets/erDiagram-Q2GNP2WA-BMKLxlM9.js.map +1 -0
  193. package/dist/static/assets/favicon-Cmg5RbCj.svg +8 -0
  194. package/dist/static/assets/flowDiagram-NV44I4VS-CgEuPNK2.js +2332 -0
  195. package/dist/static/assets/flowDiagram-NV44I4VS-CgEuPNK2.js.map +1 -0
  196. package/dist/static/assets/ganttDiagram-JELNMOA3-bJkDCf-9.js +3681 -0
  197. package/dist/static/assets/ganttDiagram-JELNMOA3-bJkDCf-9.js.map +1 -0
  198. package/dist/static/assets/gitGraphDiagram-NY62KEGX-4QE9kesp.js +1206 -0
  199. package/dist/static/assets/gitGraphDiagram-NY62KEGX-4QE9kesp.js.map +1 -0
  200. package/dist/static/assets/graph-CS0Pmm7c.js +597 -0
  201. package/dist/static/assets/graph-CS0Pmm7c.js.map +1 -0
  202. package/dist/static/assets/index-BS6HnGzC.js +112303 -0
  203. package/dist/static/assets/index-BS6HnGzC.js.map +1 -0
  204. package/dist/static/assets/index-DaIsSzC_.css +483 -0
  205. package/dist/static/assets/infoDiagram-WHAUD3N6-ypBcKfUs.js +34 -0
  206. package/dist/static/assets/infoDiagram-WHAUD3N6-ypBcKfUs.js.map +1 -0
  207. package/dist/static/assets/init-ZxktEp_H.js +17 -0
  208. package/dist/static/assets/init-ZxktEp_H.js.map +1 -0
  209. package/dist/static/assets/journeyDiagram-XKPGCS4Q-QnrxDowJ.js +1255 -0
  210. package/dist/static/assets/journeyDiagram-XKPGCS4Q-QnrxDowJ.js.map +1 -0
  211. package/dist/static/assets/kanban-definition-3W4ZIXB7-CfvEc4z5.js +1048 -0
  212. package/dist/static/assets/kanban-definition-3W4ZIXB7-CfvEc4z5.js.map +1 -0
  213. package/dist/static/assets/layout-8TGxpm23.js +2218 -0
  214. package/dist/static/assets/layout-8TGxpm23.js.map +1 -0
  215. package/dist/static/assets/linear-BATBPQQv.js +341 -0
  216. package/dist/static/assets/linear-BATBPQQv.js.map +1 -0
  217. package/dist/static/assets/min-B3oVH3AC.js +42 -0
  218. package/dist/static/assets/min-B3oVH3AC.js.map +1 -0
  219. package/dist/static/assets/mindmap-definition-VGOIOE7T-L7VLwwF8.js +1127 -0
  220. package/dist/static/assets/mindmap-definition-VGOIOE7T-L7VLwwF8.js.map +1 -0
  221. package/dist/static/assets/ordinal-CxptdPJm.js +77 -0
  222. package/dist/static/assets/ordinal-CxptdPJm.js.map +1 -0
  223. package/dist/static/assets/pieDiagram-ADFJNKIX-CFW3zIhM.js +241 -0
  224. package/dist/static/assets/pieDiagram-ADFJNKIX-CFW3zIhM.js.map +1 -0
  225. package/dist/static/assets/quadrantDiagram-AYHSOK5B-B7ssen3E.js +1338 -0
  226. package/dist/static/assets/quadrantDiagram-AYHSOK5B-B7ssen3E.js.map +1 -0
  227. package/dist/static/assets/requirementDiagram-UZGBJVZJ-D0v5BArv.js +1162 -0
  228. package/dist/static/assets/requirementDiagram-UZGBJVZJ-D0v5BArv.js.map +1 -0
  229. package/dist/static/assets/sankeyDiagram-TZEHDZUN-B7slncJe.js +1195 -0
  230. package/dist/static/assets/sankeyDiagram-TZEHDZUN-B7slncJe.js.map +1 -0
  231. package/dist/static/assets/sequenceDiagram-WL72ISMW-oXU2lRh_.js +3875 -0
  232. package/dist/static/assets/sequenceDiagram-WL72ISMW-oXU2lRh_.js.map +1 -0
  233. package/dist/static/assets/stateDiagram-FKZM4ZOC-CFYsEd0x.js +452 -0
  234. package/dist/static/assets/stateDiagram-FKZM4ZOC-CFYsEd0x.js.map +1 -0
  235. package/dist/static/assets/stateDiagram-v2-4FDKWEC3-C0UWaNA7.js +22 -0
  236. package/dist/static/assets/stateDiagram-v2-4FDKWEC3-C0UWaNA7.js.map +1 -0
  237. package/dist/static/assets/timeline-definition-IT6M3QCI-C3KODUrh.js +1223 -0
  238. package/dist/static/assets/timeline-definition-IT6M3QCI-C3KODUrh.js.map +1 -0
  239. package/dist/static/assets/treemap-KMMF4GRG-DAGDLhj2.js +18753 -0
  240. package/dist/static/assets/treemap-KMMF4GRG-DAGDLhj2.js.map +1 -0
  241. package/dist/static/assets/xychartDiagram-PRI3JC2R-C0J9iwTO.js +1888 -0
  242. package/dist/static/assets/xychartDiagram-PRI3JC2R-C0J9iwTO.js.map +1 -0
  243. package/dist/static/index.html +71 -0
  244. package/dist/static/testing/dom-observation-utils.js +425 -0
  245. package/dist/static/testing/e2e-test-helper.js +3119 -0
  246. package/dist/team.js +1160 -0
  247. package/dist/tellask.js +431 -0
  248. package/dist/tool.js +150 -0
  249. package/dist/tools/apply-patch.js +542 -0
  250. package/dist/tools/builtins.js +196 -0
  251. package/dist/tools/context-health.js +177 -0
  252. package/dist/tools/ctrl.js +478 -0
  253. package/dist/tools/diag.js +583 -0
  254. package/dist/tools/env.js +184 -0
  255. package/dist/tools/fs.js +818 -0
  256. package/dist/tools/mcp.js +138 -0
  257. package/dist/tools/mem.js +349 -0
  258. package/dist/tools/os.js +751 -0
  259. package/dist/tools/prompts/team_mgmt.en.md +70 -0
  260. package/dist/tools/prompts/team_mgmt.zh.md +70 -0
  261. package/dist/tools/prompts/ws_mod.en.md +86 -0
  262. package/dist/tools/prompts/ws_mod.zh.md +87 -0
  263. package/dist/tools/registry-snapshot.js +31 -0
  264. package/dist/tools/registry.js +121 -0
  265. package/dist/tools/ripgrep.js +678 -0
  266. package/dist/tools/team-mgmt.js +3300 -0
  267. package/dist/tools/txt.js +3178 -0
  268. package/dist/utils/id.js +72 -0
  269. package/dist/utils/task-doc.js +236 -0
  270. package/dist/utils/task-package.js +522 -0
  271. package/dist/utils/taskdoc-search.js +280 -0
  272. package/dist/utils/taskdoc.js +400 -0
  273. package/package.json +69 -0
@@ -0,0 +1,196 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /**
4
+ * Module: tools/builtins
5
+ *
6
+ * Registers built-in tools, toolsets, and reminder owners.
7
+ *
8
+ * Entry points (server/cli) must import this module once to populate registries.
9
+ */
10
+ const apply_patch_1 = require("./apply-patch");
11
+ const ctrl_1 = require("./ctrl");
12
+ const diag_1 = require("./diag");
13
+ const env_1 = require("./env");
14
+ const fs_1 = require("./fs");
15
+ const mcp_1 = require("./mcp");
16
+ const mem_1 = require("./mem");
17
+ const os_1 = require("./os");
18
+ const registry_1 = require("./registry");
19
+ const ripgrep_1 = require("./ripgrep");
20
+ const team_mgmt_1 = require("./team-mgmt");
21
+ const txt_1 = require("./txt");
22
+ (0, registry_1.registerTool)(fs_1.listDirTool);
23
+ (0, registry_1.registerTool)(fs_1.rmDirTool);
24
+ (0, registry_1.registerTool)(fs_1.rmFileTool);
25
+ (0, registry_1.registerTool)(fs_1.mkDirTool);
26
+ (0, registry_1.registerTool)(fs_1.moveFileTool);
27
+ (0, registry_1.registerTool)(fs_1.moveDirTool);
28
+ (0, registry_1.registerTool)(txt_1.readFileTool);
29
+ (0, registry_1.registerTool)(txt_1.createNewFileTool);
30
+ (0, registry_1.registerTool)(txt_1.overwriteEntireFileTool);
31
+ (0, registry_1.registerTool)(txt_1.prepareFileRangeEditTool);
32
+ (0, registry_1.registerTool)(txt_1.applyFileModificationTool);
33
+ (0, registry_1.registerTool)(txt_1.prepareFileAppendTool);
34
+ (0, registry_1.registerTool)(txt_1.prepareFileInsertAfterTool);
35
+ (0, registry_1.registerTool)(txt_1.prepareFileInsertBeforeTool);
36
+ (0, registry_1.registerTool)(txt_1.prepareFileBlockReplaceTool);
37
+ // Ripgrep tools
38
+ (0, registry_1.registerTool)(ripgrep_1.ripgrepFilesTool);
39
+ (0, registry_1.registerTool)(ripgrep_1.ripgrepSnippetsTool);
40
+ (0, registry_1.registerTool)(ripgrep_1.ripgrepCountTool);
41
+ (0, registry_1.registerTool)(ripgrep_1.ripgrepFixedTool);
42
+ (0, registry_1.registerTool)(ripgrep_1.ripgrepSearchTool);
43
+ // OS tools
44
+ (0, registry_1.registerTool)(os_1.shellCmdTool);
45
+ (0, registry_1.registerTool)(os_1.readonlyShellTool);
46
+ (0, registry_1.registerTool)(os_1.stopDaemonTool);
47
+ (0, registry_1.registerTool)(os_1.getDaemonOutputTool);
48
+ // Codex-style compatibility tools
49
+ (0, registry_1.registerTool)(apply_patch_1.applyPatchTool);
50
+ // Env tools (local testing)
51
+ (0, registry_1.registerTool)(env_1.envGetTool);
52
+ (0, registry_1.registerTool)(env_1.envSetTool);
53
+ (0, registry_1.registerTool)(env_1.envUnsetTool);
54
+ // MCP tools (local testing/ops)
55
+ (0, registry_1.registerTool)(mcp_1.mcpRestartTool);
56
+ (0, registry_1.registerTool)(mcp_1.mcpReleaseTool);
57
+ // Memory tools
58
+ (0, registry_1.registerTool)(mem_1.addMemoryTool);
59
+ (0, registry_1.registerTool)(mem_1.dropMemoryTool);
60
+ (0, registry_1.registerTool)(mem_1.replaceMemoryTool);
61
+ (0, registry_1.registerTool)(mem_1.clearMemoryTool);
62
+ (0, registry_1.registerTool)(mem_1.addSharedMemoryTool);
63
+ (0, registry_1.registerTool)(mem_1.dropSharedMemoryTool);
64
+ (0, registry_1.registerTool)(mem_1.replaceSharedMemoryTool);
65
+ (0, registry_1.registerTool)(mem_1.clearSharedMemoryTool);
66
+ // Control tools
67
+ (0, registry_1.registerTool)(ctrl_1.addReminderTool);
68
+ (0, registry_1.registerTool)(ctrl_1.deleteReminderTool);
69
+ (0, registry_1.registerTool)(ctrl_1.updateReminderTool);
70
+ (0, registry_1.registerTool)(ctrl_1.clearMindTool);
71
+ (0, registry_1.registerTool)(ctrl_1.changeMindTool);
72
+ (0, registry_1.registerTool)(ctrl_1.recallTaskdocTool);
73
+ // Team management tools (scoped to `.minds/**`)
74
+ for (const tool of team_mgmt_1.teamMgmtTools) {
75
+ (0, registry_1.registerTool)(tool);
76
+ }
77
+ // Diag tools
78
+ (0, registry_1.registerTool)(diag_1.verifyTellaskParsingTool);
79
+ // Register well-known toolsets
80
+ (0, registry_1.registerToolset)('memory', [mem_1.addMemoryTool, mem_1.dropMemoryTool, mem_1.replaceMemoryTool, mem_1.clearMemoryTool]);
81
+ (0, registry_1.setToolsetMeta)('memory', {
82
+ source: 'dominds',
83
+ descriptionI18n: { en: 'Personal memory tools', zh: '个人记忆工具' },
84
+ });
85
+ (0, registry_1.registerToolset)('team_memory', [
86
+ mem_1.addSharedMemoryTool,
87
+ mem_1.dropSharedMemoryTool,
88
+ mem_1.replaceSharedMemoryTool,
89
+ mem_1.clearSharedMemoryTool,
90
+ ]);
91
+ (0, registry_1.setToolsetMeta)('team_memory', {
92
+ source: 'dominds',
93
+ descriptionI18n: { en: 'Shared team memory tools', zh: '团队共享记忆工具' },
94
+ });
95
+ (0, registry_1.registerToolset)('control', [
96
+ ctrl_1.addReminderTool,
97
+ ctrl_1.deleteReminderTool,
98
+ ctrl_1.updateReminderTool,
99
+ ctrl_1.clearMindTool,
100
+ ctrl_1.changeMindTool,
101
+ ctrl_1.recallTaskdocTool,
102
+ ]);
103
+ (0, registry_1.setToolsetMeta)('control', {
104
+ source: 'dominds',
105
+ descriptionI18n: { en: 'Dialog control tools', zh: '对话控制工具' },
106
+ });
107
+ (0, registry_1.registerToolset)('os', [
108
+ os_1.shellCmdTool,
109
+ os_1.stopDaemonTool,
110
+ os_1.getDaemonOutputTool,
111
+ env_1.envGetTool,
112
+ env_1.envSetTool,
113
+ env_1.envUnsetTool,
114
+ ]);
115
+ (0, registry_1.setToolsetMeta)('os', {
116
+ source: 'dominds',
117
+ descriptionI18n: { en: 'Shell and process tools', zh: '命令行与进程工具' },
118
+ });
119
+ (0, registry_1.registerToolset)('mcp_admin', [
120
+ mcp_1.mcpRestartTool,
121
+ mcp_1.mcpReleaseTool,
122
+ env_1.envGetTool,
123
+ env_1.envSetTool,
124
+ env_1.envUnsetTool,
125
+ ]);
126
+ (0, registry_1.setToolsetMeta)('mcp_admin', {
127
+ source: 'dominds',
128
+ descriptionI18n: { en: 'MCP administration tools', zh: 'MCP 管理工具' },
129
+ });
130
+ (0, registry_1.registerToolset)('ws_read', [
131
+ fs_1.listDirTool,
132
+ txt_1.readFileTool,
133
+ ripgrep_1.ripgrepFilesTool,
134
+ ripgrep_1.ripgrepSnippetsTool,
135
+ ripgrep_1.ripgrepCountTool,
136
+ ripgrep_1.ripgrepFixedTool,
137
+ ripgrep_1.ripgrepSearchTool,
138
+ ]);
139
+ (0, registry_1.setToolsetMeta)('ws_read', {
140
+ source: 'dominds',
141
+ descriptionI18n: { en: 'Workspace read-only tools', zh: '工作区只读工具' },
142
+ });
143
+ (0, registry_1.registerToolset)('ws_mod', [
144
+ fs_1.listDirTool,
145
+ fs_1.rmDirTool,
146
+ fs_1.rmFileTool,
147
+ fs_1.mkDirTool,
148
+ fs_1.moveFileTool,
149
+ fs_1.moveDirTool,
150
+ txt_1.readFileTool,
151
+ txt_1.createNewFileTool,
152
+ txt_1.overwriteEntireFileTool,
153
+ txt_1.prepareFileAppendTool,
154
+ txt_1.prepareFileInsertAfterTool,
155
+ txt_1.prepareFileInsertBeforeTool,
156
+ txt_1.prepareFileBlockReplaceTool,
157
+ txt_1.prepareFileRangeEditTool,
158
+ txt_1.applyFileModificationTool,
159
+ ripgrep_1.ripgrepFilesTool,
160
+ ripgrep_1.ripgrepSnippetsTool,
161
+ ripgrep_1.ripgrepCountTool,
162
+ ripgrep_1.ripgrepFixedTool,
163
+ ripgrep_1.ripgrepSearchTool,
164
+ ]);
165
+ (0, registry_1.setToolsetMeta)('ws_mod', {
166
+ source: 'dominds',
167
+ descriptionI18n: { en: 'Workspace read/write tools', zh: '工作区读写工具' },
168
+ promptFilesI18n: { en: './prompts/ws_mod.en.md', zh: './prompts/ws_mod.zh.md' },
169
+ });
170
+ // Codex-focused toolsets (function tools only; suitable for Codex provider)
171
+ (0, registry_1.registerToolset)('codex_style_tools', [apply_patch_1.applyPatchTool, os_1.readonlyShellTool]);
172
+ (0, registry_1.setToolsetMeta)('codex_style_tools', {
173
+ source: 'dominds',
174
+ descriptionI18n: {
175
+ en: 'Codex-style tools (apply_patch + readonly_shell)',
176
+ zh: 'Codex 风格工具(apply_patch + readonly_shell)',
177
+ },
178
+ promptI18n: {
179
+ en: 'Use `apply_patch` (Codex-style patch format) to modify files. Use `readonly_shell` for simple workspace inspection via a small allowlist (cat/rg/sed/ls/nl/wc/git show). You are explicitly authorized to call `readonly_shell` yourself; do not delegate it to a shell specialist. Paths must be relative to the workspace. `apply_patch` enforces Dominds directory allow/deny lists.',
180
+ zh: '使用 `apply_patch`(Codex 风格 patch 格式)修改文件;使用 `readonly_shell` 做少量只读命令行检查(仅允许 cat/rg/sed/ls/nl/wc/git show)。你已被明确授权自行调用 `readonly_shell`,不要把它委派给 shell 专员。路径必须相对工作区根目录。`apply_patch` 会按成员的目录权限(allow/deny)做访问控制。',
181
+ },
182
+ });
183
+ (0, registry_1.registerToolset)('team-mgmt', [...team_mgmt_1.teamMgmtTools]);
184
+ (0, registry_1.setToolsetMeta)('team-mgmt', {
185
+ source: 'dominds',
186
+ descriptionI18n: { en: 'Team management tools', zh: '团队管理工具' },
187
+ promptFilesI18n: { en: './prompts/team_mgmt.en.md', zh: './prompts/team_mgmt.zh.md' },
188
+ });
189
+ (0, registry_1.registerToolset)('diag', [diag_1.verifyTellaskParsingTool]);
190
+ (0, registry_1.setToolsetMeta)('diag', {
191
+ source: 'dominds',
192
+ descriptionI18n: { en: 'Diagnostics tools', zh: '诊断工具' },
193
+ });
194
+ // Register ReminderOwners
195
+ (0, registry_1.registerReminderOwner)(os_1.shellCmdReminderOwner);
196
+ (0, registry_1.registerReminderOwner)(mcp_1.mcpLeaseReminderOwner);
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.contextHealthReminderOwner = void 0;
4
+ const driver_messages_1 = require("../shared/i18n/driver-messages");
5
+ const runtime_language_1 = require("../shared/runtime-language");
6
+ function isRecord(value) {
7
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
8
+ }
9
+ // Reminder meta is persisted as JSON and may come from disk; runtime validation is required.
10
+ function isContextHealthReminderMeta(value) {
11
+ if (!isRecord(value))
12
+ return false;
13
+ if (value['kind'] !== 'critical_countdown')
14
+ return false;
15
+ const remaining = value['remainingGenTurns'];
16
+ return typeof remaining === 'number' && Number.isFinite(remaining);
17
+ }
18
+ function clampRemainingGenTurns(n) {
19
+ const floored = Math.floor(n);
20
+ if (floored < 0)
21
+ return 0;
22
+ if (floored > 5)
23
+ return 5;
24
+ return floored;
25
+ }
26
+ function isLastContextHealthFromCurrentGeneration(dlg) {
27
+ const active = dlg.activeGenSeqOrUndefined;
28
+ const snapSeq = dlg.getLastContextHealthGenseq();
29
+ return active !== undefined && snapSeq !== undefined && active === snapSeq;
30
+ }
31
+ function formatContextHealthOwnerHeader(args) {
32
+ const { language, indexHuman, snapshot } = args;
33
+ const remainingGenTurns = typeof args.remainingGenTurns === 'number' ? args.remainingGenTurns : undefined;
34
+ if (language === 'zh') {
35
+ const lines = [
36
+ '📋',
37
+ `【系统托管提醒项 #${indexHuman}:上下文健康 / owner=context_health】`,
38
+ '- 自动更新/自动消失;不要手工 delete_reminder',
39
+ ];
40
+ if (!snapshot) {
41
+ lines.push('- 状态:未知(尚未获取上下文统计)');
42
+ lines.push('- 现在就做:用提醒项收敛关键细节(update_reminder)→ change_mind(progress) → clear_mind');
43
+ return lines.join('\n');
44
+ }
45
+ if (snapshot.kind !== 'available') {
46
+ lines.push('- 状态:未知(token 统计不可用)');
47
+ lines.push('- 现在就做:用提醒项收敛关键细节(update_reminder)→ change_mind(progress) → clear_mind');
48
+ return lines.join('\n');
49
+ }
50
+ switch (snapshot.level) {
51
+ case 'healthy': {
52
+ lines.push('- 状态:🟢 绿(健康)');
53
+ return lines.join('\n');
54
+ }
55
+ case 'caution': {
56
+ lines.push('- 状态:🟡 黄(必须尽快清理)');
57
+ lines.push('- 硬规程:先 update_reminder 收敛工作集 → 再 change_mind(progress) → 然后 clear_mind');
58
+ return lines.join('\n');
59
+ }
60
+ case 'critical': {
61
+ lines.push('- 状态:🔴 红(硬闸门)');
62
+ if (remainingGenTurns !== undefined) {
63
+ lines.push(`- 倒数:剩余 ${remainingGenTurns} 次生成机会;到 0 系统将被动开启新一轮/新回合以保持稳定性`);
64
+ }
65
+ lines.push('- 禁止继续推进实现:先 update_reminder 收敛工作集 → 再 change_mind(progress) → 然后 clear_mind');
66
+ return lines.join('\n');
67
+ }
68
+ default: {
69
+ const _exhaustive = snapshot.level;
70
+ return _exhaustive;
71
+ }
72
+ }
73
+ }
74
+ const lines = [
75
+ '📋',
76
+ `【System-managed reminder item #${indexHuman}: context health / owner=context_health】`,
77
+ '- Auto-updating/auto-dropping; do not manually delete_reminder',
78
+ ];
79
+ if (!snapshot) {
80
+ lines.push('- Status: unknown (no context stats yet)');
81
+ lines.push('- Priority: change_mind(progress) → clear_mind');
82
+ return lines.join('\n');
83
+ }
84
+ if (snapshot.kind !== 'available') {
85
+ lines.push('- Status: unknown (token usage unavailable)');
86
+ lines.push('- Priority: change_mind(progress) → clear_mind');
87
+ return lines.join('\n');
88
+ }
89
+ switch (snapshot.level) {
90
+ case 'healthy': {
91
+ lines.push('- Status: 🟢 green (healthy)');
92
+ return lines.join('\n');
93
+ }
94
+ case 'caution': {
95
+ lines.push('- Status: 🟡 yellow (caution)');
96
+ lines.push('- Priority: change_mind(progress) → clear_mind');
97
+ return lines.join('\n');
98
+ }
99
+ case 'critical': {
100
+ lines.push('- Status: 🔴 red (critical)');
101
+ if (remainingGenTurns !== undefined) {
102
+ lines.push(`- Countdown: ${remainingGenTurns} generations left; at 0 auto-start new round`);
103
+ }
104
+ lines.push('- Must: change_mind(progress) → clear_mind');
105
+ return lines.join('\n');
106
+ }
107
+ default: {
108
+ const _exhaustive = snapshot.level;
109
+ return _exhaustive;
110
+ }
111
+ }
112
+ }
113
+ exports.contextHealthReminderOwner = {
114
+ name: 'context_health',
115
+ async updateReminder(dlg, reminder) {
116
+ if (reminder.owner !== exports.contextHealthReminderOwner) {
117
+ return { treatment: 'keep' };
118
+ }
119
+ const snapshot = dlg.getLastContextHealth();
120
+ if (!snapshot) {
121
+ return { treatment: 'keep' };
122
+ }
123
+ if (snapshot.kind !== 'available') {
124
+ return {
125
+ treatment: 'update',
126
+ updatedContent: (0, driver_messages_1.formatContextHealthReminderText)((0, runtime_language_1.getWorkLanguage)(), {
127
+ kind: 'usage_unknown',
128
+ }),
129
+ updatedMeta: undefined,
130
+ };
131
+ }
132
+ if (snapshot.level === 'healthy') {
133
+ return { treatment: 'drop' };
134
+ }
135
+ if (snapshot.level === 'caution') {
136
+ return {
137
+ treatment: 'update',
138
+ updatedContent: (0, driver_messages_1.formatContextHealthReminderText)((0, runtime_language_1.getWorkLanguage)(), {
139
+ kind: 'over_optimal',
140
+ }),
141
+ updatedMeta: undefined,
142
+ };
143
+ }
144
+ const meta = isContextHealthReminderMeta(reminder.meta) ? reminder.meta : undefined;
145
+ const initialized = meta !== undefined;
146
+ let remainingGenTurns = meta ? clampRemainingGenTurns(meta.remainingGenTurns) : 5;
147
+ if (initialized && isLastContextHealthFromCurrentGeneration(dlg) && remainingGenTurns > 0) {
148
+ remainingGenTurns -= 1;
149
+ }
150
+ const content = (0, driver_messages_1.formatContextHealthReminderText)((0, runtime_language_1.getWorkLanguage)(), {
151
+ kind: 'over_critical',
152
+ remainingGenTurns,
153
+ });
154
+ return {
155
+ treatment: 'update',
156
+ updatedContent: content,
157
+ updatedMeta: { kind: 'critical_countdown', remainingGenTurns },
158
+ };
159
+ },
160
+ async renderReminder(dlg, reminder, index) {
161
+ const snapshot = dlg.getLastContextHealth();
162
+ const meta = isContextHealthReminderMeta(reminder.meta) ? reminder.meta : undefined;
163
+ const language = (0, runtime_language_1.getWorkLanguage)();
164
+ const header = formatContextHealthOwnerHeader({
165
+ language,
166
+ indexHuman: index + 1,
167
+ snapshot,
168
+ remainingGenTurns: meta ? clampRemainingGenTurns(meta.remainingGenTurns) : undefined,
169
+ });
170
+ const rendered = `${header}\n---\n${reminder.content}`;
171
+ return {
172
+ type: 'transient_guide_msg',
173
+ role: 'assistant',
174
+ content: rendered,
175
+ };
176
+ },
177
+ };