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
package/LICENSE ADDED
@@ -0,0 +1,157 @@
1
+ # GNU LESSER GENERAL PUBLIC LICENSE
2
+
3
+ Version 3, 29 June 2007
4
+
5
+ Copyright (C) 2007 Free Software Foundation, Inc.
6
+ <https://fsf.org/>
7
+
8
+ Everyone is permitted to copy and distribute verbatim copies of this
9
+ license document, but changing it is not allowed.
10
+
11
+ This version of the GNU Lesser General Public License incorporates the
12
+ terms and conditions of version 3 of the GNU General Public License,
13
+ supplemented by the additional permissions listed below.
14
+
15
+ ## 0. Additional Definitions.
16
+
17
+ As used herein, "this License" refers to version 3 of the GNU Lesser
18
+ General Public License, and the "GNU GPL" refers to version 3 of the
19
+ GNU General Public License.
20
+
21
+ "The Library" refers to a covered work governed by this License, other
22
+ than an Application or a Combined Work as defined below.
23
+
24
+ An "Application" is any work that makes use of an interface provided
25
+ by the Library, but which is not otherwise based on the Library.
26
+ Defining a subclass of a class defined by the Library is deemed a mode
27
+ of using an interface provided by the Library.
28
+
29
+ A "Combined Work" is a work produced by combining or linking an
30
+ Application with the Library. The particular version of the Library
31
+ with which the Combined Work was made is also called the "Linked
32
+ Version".
33
+
34
+ The "Minimal Corresponding Source" for a Combined Work means the
35
+ Corresponding Source for the Combined Work, excluding any source code
36
+ for portions of the Combined Work that, considered in isolation, are
37
+ based on the Application, and not on the Linked Version.
38
+
39
+ The "Corresponding Application Code" for a Combined Work means the
40
+ object code and/or source code for the Application, including any data
41
+ and utility programs needed for reproducing the Combined Work from the
42
+ Application, but excluding the System Libraries of the Combined Work.
43
+
44
+ ## 1. Exception to Section 3 of the GNU GPL.
45
+
46
+ You may convey a covered work under sections 3 and 4 of this License
47
+ without being bound by section 3 of the GNU GPL.
48
+
49
+ ## 2. Conveying Modified Versions.
50
+
51
+ If you modify a copy of the Library, and, in your modifications, a
52
+ facility refers to a function or data to be supplied by an Application
53
+ that uses the facility (other than as an argument passed when the
54
+ facility is invoked), then you may convey a copy of the modified
55
+ version:
56
+
57
+ - a) under this License, provided that you make a good faith effort
58
+ to ensure that, in the event an Application does not supply the
59
+ function or data, the facility still operates, and performs
60
+ whatever part of its purpose remains meaningful, or
61
+ - b) under the GNU GPL, with none of the additional permissions of
62
+ this License applicable to that copy.
63
+
64
+ ## 3. Object Code Incorporating Material from Library Header Files.
65
+
66
+ The object code form of an Application may incorporate material from a
67
+ header file that is part of the Library. You may convey such object
68
+ code under terms of your choice, provided that, if the incorporated
69
+ material is not limited to numerical parameters, data structure
70
+ layouts and accessors, or small macros, inline functions and templates
71
+ (ten or fewer lines in length), you do both of the following:
72
+
73
+ - a) Give prominent notice with each copy of the object code that
74
+ the Library is used in it and that the Library and its use are
75
+ covered by this License.
76
+ - b) Accompany the object code with a copy of the GNU GPL and this
77
+ license document.
78
+
79
+ ## 4. Combined Works.
80
+
81
+ You may convey a Combined Work under terms of your choice that, taken
82
+ together, effectively do not restrict modification of the portions of
83
+ the Library contained in the Combined Work and reverse engineering for
84
+ debugging such modifications, if you also do each of the following:
85
+
86
+ - a) Give prominent notice with each copy of the Combined Work that
87
+ the Library is used in it and that the Library and its use are
88
+ covered by this License.
89
+ - b) Accompany the Combined Work with a copy of the GNU GPL and this
90
+ license document.
91
+ - c) For a Combined Work that displays copyright notices during
92
+ execution, include the copyright notice for the Library among
93
+ these notices, as well as a reference directing the user to the
94
+ copies of the GNU GPL and this license document.
95
+ - d) Do one of the following:
96
+ - 0) Convey the Minimal Corresponding Source under the terms of
97
+ this License, and the Corresponding Application Code in a form
98
+ suitable for, and under terms that permit, the user to
99
+ recombine or relink the Application with a modified version of
100
+ the Linked Version to produce a modified Combined Work, in the
101
+ manner specified by section 6 of the GNU GPL for conveying
102
+ Corresponding Source.
103
+ - 1) Use a suitable shared library mechanism for linking with
104
+ the Library. A suitable mechanism is one that (a) uses at run
105
+ time a copy of the Library already present on the user's
106
+ computer system, and (b) will operate properly with a modified
107
+ version of the Library that is interface-compatible with the
108
+ Linked Version.
109
+ - e) Provide Installation Information, but only if you would
110
+ otherwise be required to provide such information under section 6
111
+ of the GNU GPL, and only to the extent that such information is
112
+ necessary to install and execute a modified version of the
113
+ Combined Work produced by recombining or relinking the Application
114
+ with a modified version of the Linked Version. (If you use option
115
+ 4d0, the Installation Information must accompany the Minimal
116
+ Corresponding Source and Corresponding Application Code. If you
117
+ use option 4d1, you must provide the Installation Information in
118
+ the manner specified by section 6 of the GNU GPL for conveying
119
+ Corresponding Source.)
120
+
121
+ ## 5. Combined Libraries.
122
+
123
+ You may place library facilities that are a work based on the Library
124
+ side by side in a single library together with other library
125
+ facilities that are not Applications and are not covered by this
126
+ License, and convey such a combined library under terms of your
127
+ choice, if you do both of the following:
128
+
129
+ - a) Accompany the combined library with a copy of the same work
130
+ based on the Library, uncombined with any other library
131
+ facilities, conveyed under the terms of this License.
132
+ - b) Give prominent notice with the combined library that part of it
133
+ is a work based on the Library, and explaining where to find the
134
+ accompanying uncombined form of the same work.
135
+
136
+ ## 6. Revised Versions of the GNU Lesser General Public License.
137
+
138
+ The Free Software Foundation may publish revised and/or new versions
139
+ of the GNU Lesser General Public License from time to time. Such new
140
+ versions will be similar in spirit to the present version, but may
141
+ differ in detail to address new problems or concerns.
142
+
143
+ Each version is given a distinguishing version number. If the Library
144
+ as you received it specifies that a certain numbered version of the
145
+ GNU Lesser General Public License "or any later version" applies to
146
+ it, you have the option of following the terms and conditions either
147
+ of that published version or of any later version published by the
148
+ Free Software Foundation. If the Library as you received it does not
149
+ specify a version number of the GNU Lesser General Public License, you
150
+ may choose any version of the GNU Lesser General Public License ever
151
+ published by the Free Software Foundation.
152
+
153
+ If the Library as you received it specifies that a proxy can decide
154
+ whether future versions of the GNU Lesser General Public License shall
155
+ apply, that proxy's public statement of acceptance of any version is
156
+ permanent authorization for you to choose that version for the
157
+ Library.
package/README.md ADDED
@@ -0,0 +1,250 @@
1
+ # Dominds — DevOps Mindsets — Sustainable Agentic Product Lifecycle
2
+
3
+ > Ship your product with an AI DevOps team that self-improves while it works.
4
+
5
+ > Agents should be sustaining the continuous development of your products, one-shot product creation is hallucination.
6
+
7
+ - 中文版:[README.zh.md](./README.zh.md)
8
+
9
+ ## CAVEATS
10
+
11
+ - **NO WARRANTY / AT YOUR OWN RISK**: Dominds is powerful automation. If you point it at the wrong repo, give it the wrong goal, or trust output blindly, it can waste time or cause damage.
12
+ - Keep backups and review changes carefully (especially before merging or deploying).
13
+ - Prefer running on a disposable clone or non-critical branch until you trust your workflow.
14
+
15
+ - **No Human Permission Mechanism (won’t-have)**: Dominds does not aim to add a per-action “please approve” prompt for tool usage.
16
+ - The intended safety model is _hard guardrails via workflow/policy_ (planned), not human-in-the-loop popups.
17
+ - Put high-risk tools behind principled agents so their judgment enforces policies and mitigates risk.
18
+ - Use least-privilege credentials and avoid production secrets in `.env` when experimenting.
19
+ - Treat your workspace as sensitive: dialogs, logs, and memory may persist locally on disk.
20
+
21
+ - **Authorize Your Agents (or don’t use Dominds)**: Dominds is not pair‑programming. Once authorized, agents will act — assume mistakes and review outcomes from a distance.
22
+ - If you prefer to work closely with your agents, use a more traditional copilot‑style tool.
23
+ - You’re not a hands‑on driver; you’re fully responsible for the consequences of the team you define and animate — trust them to execute, stay remote, and accept the outcomes, good or bad.
24
+
25
+ - **Costs / Privacy / Compliance**: using LLM providers can cost money and may send prompts (sometimes including code) to third parties.
26
+ - Review provider terms, set spending limits, and avoid putting secrets in prompts.
27
+ - If you need strict privacy/compliance, evaluate self-hosted models and stricter tool policies.
28
+
29
+ - **Help Yourself (early community)**: Dominds is LGPL, with limited support and a young community.
30
+ - Expect rough edges, breaking changes, and gaps in docs; issues/PRs are welcome.
31
+
32
+ ## Table of Contents
33
+
34
+ - [Dominds — DevOps Mindsets — Sustainable Agentic Product Lifecycle](#dominds--devops-mindsets--sustainable-agentic-product-lifecycle)
35
+ - [Table of Contents](#table-of-contents)
36
+ - [What is Dominds?](#what-is-dominds)
37
+ - [Installation](#installation)
38
+ - [Prerequisites](#prerequisites)
39
+ - [Install Dominds](#install-dominds)
40
+ - [Workspace Setup](#workspace-setup)
41
+ - [Quick Start](#quick-start)
42
+ - [Start from scratch](#start-from-scratch)
43
+ - [Core Philosophy](#core-philosophy)
44
+ - [1) Clear minds, focused tasks](#1-clear-minds-focused-tasks)
45
+ - [2) Tools with intent: safe by design](#2-tools-with-intent-safe-by-design)
46
+ - [3) Diverse, self‑improving team from templates](#3-diverse-selfimproving-team-from-templates)
47
+ - [Documentation](#documentation)
48
+ - [Getting Help](#getting-help)
49
+
50
+ ## What is Dominds?
51
+
52
+ Dominds is an AI-powered DevOps framework that creates autonomous agentic teams with persistent memory and self-improving capabilities. Unlike traditional AI assistants, Dominds agents maintain context across conversations, learn from experience, and collaborate as a cohesive team to handle complex development workflows.
53
+
54
+ **Key Features:**
55
+
56
+ - **Local-first Runtime**: The orchestration layer runs on your machine and persists team state locally in your workspace. LLM calls still go to your configured provider (so apply normal cost/privacy discipline).
57
+
58
+ - **Transparent Workspace Integration**: Agent knowledge, personas, lessons learned, and mindset artifacts are stored locally as part of your workspace. This maximizes transparency to humans and enables version control alongside your product code, creating a complete historical record of both human and AI contributions to your project.
59
+
60
+ - **Persistent Team Memory**: Agents maintain context across conversations, remember past decisions, and build upon learned patterns. Teams evolve their practices and knowledge over time, with all insights preserved in your workspace.
61
+
62
+ - **Collaborative Intelligence**: Multiple specialized agents work together on shared tasks, combining their unique capabilities while maintaining clear communication channels and shared understanding through workspace-stored context.
63
+
64
+ - **Safe Tool Access**: AI-driven guardrails provide secure access to powerful development tools, with all safety policies and access patterns transparently stored and version-controlled within your workspace.
65
+
66
+ - **Task-Focused Architecture**: Clear, bounded contexts prevent cognitive overload while maintaining rich inter-agent communication and knowledge sharing through the local workspace knowledge base.
67
+
68
+ ## Installation
69
+
70
+ ### Prerequisites
71
+
72
+ - **Node.js (with npm bundled)**: Version 22.x or later
73
+ - **LLM provider configured for your team**: Dominds ships with a built-in provider catalog [main/llm/defaults.yaml](./main/llm/defaults.yaml) including Codex (ChatGPT) and Anthropic, plus several Anthropic-compatible endpoints (e.g. MiniMax, Z.ai, BigModel). You’ll need valid credentials for at least one provider.
74
+ - **pnpm (optional)**: Recommended only if you’re developing Dominds itself.
75
+
76
+ ### Install Dominds
77
+
78
+ ```bash
79
+ # Global installation (recommended)
80
+ npm install -g dominds
81
+ # (or) pnpm add -g dominds
82
+
83
+ # Verify installation
84
+ dominds --help
85
+ ```
86
+
87
+ You can also run Dominds with **no global install** (useful for quick trials / CI / keeping your machine clean):
88
+
89
+ ```bash
90
+ # Run the latest release (downloads to npm cache, then executes)
91
+ npx -y dominds@latest --help
92
+ npx -y dominds@latest
93
+
94
+ # Or pin an exact version (more reproducible)
95
+ # npx -y dominds@1.2.3
96
+ ```
97
+
98
+ Notes:
99
+
100
+ - `npx dominds` does **not** necessarily mean “always latest”: if your project already has `dominds` installed, or your npm cache already contains an older version, `npx` may reuse that.
101
+ - If you want “resolve whatever `latest` points to”, use `dominds@latest` explicitly. It may still reuse the cached copy of that same version (expected).
102
+
103
+ For development and any sort of open source contribution, use the in-tree dev wrapper workspace:
104
+
105
+ https://github.com/longrun-ai/dominds-feat-dev
106
+
107
+ 1. Clone dominds-feat-dev
108
+ 2. Clone your dominds fork into dominds-feat-dev/dominds/
109
+ 3. Open PRs against [longrun-ai/dominds](https://github.com/longrun-ai/dominds) from that inner repo
110
+
111
+ ### Workspace Setup
112
+
113
+ There are two common ways to create a workspace:
114
+
115
+ - **Recommended**: start from a scaffold/template (see [Quick Start](#quick-start)).
116
+ - **Minimal**: start from an empty folder (see [Start from scratch](#start-from-scratch)).
117
+
118
+ Dominds uses your current working directory as the runtime workspace (rtws). When you start `dominds`, the WebUI will automatically redirect you to `http://localhost:5666/setup` if the workspace is missing required configuration (for example `.minds/team.yaml` or provider env vars).
119
+
120
+ Note: In production mode, Dominds enables a local shared-secret auth key by default, so the browser may open with a URL containing `?auth=...`. Treat that token as sensitive.
121
+
122
+ **Template creation (recommended)**:
123
+
124
+ ```bash
125
+ # Use official scaffold templates (default base = https://github.com/longrun-ai)
126
+ dominds create web-scaffold my-project
127
+
128
+ # Use custom organization templates
129
+ export DOMINDS_TEMPLATE_BASE="https://github.com/myorg"
130
+ dominds create web-scaffold my-project
131
+
132
+ # Or use full URLs for any template
133
+ dominds create https://github.com/myorg/custom-template.git my-project
134
+ ```
135
+
136
+ **Template Resolution:**
137
+
138
+ - Short names like `web-scaffold` resolve to `${DOMINDS_TEMPLATE_BASE}/web-scaffold.git`
139
+ - Default `DOMINDS_TEMPLATE_BASE` is `https://github.com/longrun-ai`
140
+ - Set your own `DOMINDS_TEMPLATE_BASE` for organization-specific templates
141
+
142
+ For more template options, see the [CLI Usage Guide](docs/cli-usage.md#workspace-creation).
143
+
144
+ ## Quick Start
145
+
146
+ ```bash
147
+ # 1) Create a workspace from a scaffold template
148
+ dominds create web-scaffold my-project
149
+ cd my-project
150
+
151
+ # 2) Start the WebUI (opens a browser by default)
152
+ dominds
153
+ ```
154
+
155
+ Then:
156
+
157
+ 1. Your browser should land on `http://localhost:5666/setup` (either directly, or via an automatic redirect).
158
+ 2. In **Setup**, pick a provider + model. If your template didn’t create `.minds/team.yaml`, use Setup to create/overwrite it (this writes a minimal `member_defaults` config).
159
+ 3. Still in **Setup**, set the required provider env var (the name comes from the provider catalog, e.g. `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `CODEX_HOME`, etc.).
160
+ - The setup UI can write it into `~/.zshrc` / `~/.bashrc` in a managed block, and also applies it to the running server process immediately.
161
+ 4. Click **Go to App**, create a dialog, and start working.
162
+
163
+ ## Start from scratch
164
+
165
+ Starting from scratch means: create an empty folder, run `dominds`, let Setup generate the minimal `.minds/team.yaml`, then use the shadow team manager (`@fuxi`) to design a real team for your product.
166
+
167
+ ```bash
168
+ mkdir my-workspace
169
+ cd my-workspace
170
+
171
+ # Starts the WebUI server and opens a browser (default port: 5666)
172
+ dominds
173
+ ```
174
+
175
+ 1. The WebUI should redirect you to `http://localhost:5666/setup` because the workspace has no `.minds/team.yaml` yet.
176
+ 2. In **Setup**:
177
+ - Select a provider + model and click **Create `.minds/team.yaml`**.
178
+ - Provide the required provider env var and write it to your shell rc (or set it manually). Setup applies it immediately to the running server.
179
+ - Click **Go to App**.
180
+ 3. In the app, create a new dialog with **shadow member** `@fuxi` (Fuxi is hidden by default; use the “Shadow members” picker in the dialog creation modal). Until you add visible members, you’ll mostly work through shadow members.
181
+ 4. Tell `@fuxi` your product idea and ask it to propose and apply a suitable agentic team configuration by updating `.minds/team.yaml` (Fuxi has the `team-mgmt` toolset scoped to `.minds/**`).
182
+
183
+ ## Core Philosophy
184
+
185
+ Dominds is designed for long-running product development and operations, with a “division of labor” constitution:
186
+
187
+ - Reduce **agent mental overhead** by dividing and distributing work across a team of specialized agents, and by using more effective **dialog round control** (instead of brittle context condensation) to shed conversational/tool-call noise when a dialog becomes cluttered.
188
+ - Prevent **tool misuse** by putting side-effectful tools only in the hands of well-prompted specialist agents, via least-privilege toolsets/policies.
189
+ - Prevent **staleness** (agents acting on outdated assumptions) by encoding decisions, conventions, configuration, and key repo facts into version-tracked workspace artifacts intended to be loaded into agent context (team-shared and agent-individual memory, task docs, and dialog-local reminders), rather than leaving them as “undiscovered” knowledge scattered across the repo.
190
+
191
+ ### 1) Clear minds, focused tasks
192
+
193
+ > Split big initiatives into bounded tasks. Each agent should operate with a clear, minimal context; everything else is noise.
194
+
195
+ - Smaller context reduces hallucination risk and error rates.
196
+ - Bounded scopes make evaluation and iteration faster.
197
+ - Clear task contracts enable parallelism and reuse.
198
+
199
+ ### 2) Tools with intent: safe by design
200
+
201
+ > Side-effectful tools are powerful, yet dangerous. Safety comes from intent-aware guardrails; vague “be careful” prompts don’t scale, and neither does a human doing constant micro-audits.
202
+
203
+ Principles
204
+
205
+ - Least privilege by default; expand access only when justified.
206
+ - For dangerous tools, require per-call intent justification:
207
+ - Will it cause unexpected side effects?
208
+ - Could it be misused (even “nerfed”)?
209
+ - Does it create an “evil leverage” path?
210
+ - Is there a safer/minimal alternative?
211
+ - Pattern-based command matching is not enough; safety comes from disciplined specialist agents enforcing policy with judgment.
212
+ - Keep tool grants explicit and reviewable (toolsets, per-agent tool lists, and workspace access scopes).
213
+
214
+ Result: fewer bad side effects, higher plan fidelity, and more first‑try successes.
215
+
216
+ ### 3) Diverse, self‑improving team from templates
217
+
218
+ > Start from a template team, then curate and evolve both individual and shared memory as versioned artifacts.
219
+
220
+ - Bootstrap from a domain-specific scaffold (team + workflows).
221
+ - Keep individual and shared memory in `.minds/**` (personas, lessons, playbooks).
222
+ - Evolve mindsets and governance as the product evolves.
223
+ - Keep it transparent to humans: plain Markdown, version-tracked.
224
+
225
+ ## Documentation
226
+
227
+ - **[Terminology](docs/dominds-terminology.md)** — Canonical vocabulary across prompts and implementation docs (Taskdoc, Teammate Tellask, etc.)
228
+ - **[CLI Usage Guide](docs/cli-usage.md)** — Commands, options, and usage patterns
229
+ - **[MCP Support](docs/mcp-support.md)** — MCP tool integration
230
+ - **[Encapsulated Taskdocs](docs/encapsulated-taskdoc.md)** — `*.tsk/` Taskdoc packages and parsing
231
+ - **[Context Health](docs/context-health.md)** — Measuring/maintaining context quality
232
+ - **[Keep-going](docs/keep-going.md)** — Auto-continue (diligence) mechanism
233
+ - **[Design](docs/design.md)** — Architecture and key abstractions
234
+ - **[Mottos](docs/mottos.md)** — Short guiding statements
235
+ - **[OEC Philosophy](docs/OEC-philosophy.md)** — Philosophy and safety stance
236
+
237
+ - **[Team Mgmt Toolset](docs/team-mgmt-toolset.md)** — Managing team members via tools
238
+ - **[i18n](docs/i18n.md)** — Language and localization rules
239
+ - **[Dialog System](docs/dialog-system.md)** — Dialog runtime model and streaming
240
+ - **[Dialog Persistence](docs/dialog-persistence.md)** — On-disk layout and lifecycle
241
+ - **[Interruption & Resumption](docs/interruption-resumption.md)** — Stop/resume semantics
242
+ - **[Auth](docs/auth.md)** — Authentication and access model
243
+
244
+ ### Getting Help
245
+
246
+ - Open an issue on [GitHub](https://github.com/longrun-ai/dominds/issues) for bugs or feature requests
247
+
248
+ ---
249
+
250
+ **License:** [LGPL](./LICENSE) | **Repository:** [github.com/longrun-ai/dominds](https://github.com/longrun-ai/dominds)
package/README.zh.md ADDED
@@ -0,0 +1,161 @@
1
+ # Dominds(斟发作们)—— 斟酌开发运作的智能体们
2
+
3
+ > 以一支具备自我迭代能力的 AI DevOps 团队,实现产品的持续交付。
4
+
5
+ - English: [README.md](./README.md)
6
+
7
+ ## 重要提示(CAVEATS)
8
+
9
+ - **无担保 / 风险自担**:Dominds 是一套高性能自动化框架。若配置不当、目标模糊或盲目采信输出结果,可能导致时间损耗或代码损坏。
10
+ - 合并代码或发布版本前,务必核查所有修改;建议先在测试分支或克隆仓库中试运行验证。
11
+ - **成本 / 隐私 / 合规性**:调用大语言模型(LLM)供应商服务会产生费用,且提示词(部分场景含代码片段)可能传输至第三方。
12
+ - 请仔细阅读服务条款,设置费用额度上限,切勿将密钥写入提示词或日志文件。
13
+ - **授权即执行**:Dominds 并非“辅助工具”,一旦获得授权,智能体将直接执行操作,你需对最终结果承担全部责任。
14
+ - **项目处于早期阶段**:目前存在功能边界不完善、破坏性更新及文档缺失等问题,欢迎提交 issue 或 PR 参与优化。
15
+
16
+ ## 关于 Dominds
17
+
18
+ Dominds 是一款面向开发运作(DevOps)场景的智能体框架,它将“团队配置、记忆存储、流程规范、工具权限”整合至统一工作区,使多智能体团队能够长期稳定运行、持续学习,并在明确边界内高效执行任务。
19
+
20
+ 其核心定位并非一次性完成产品开发,而是聚焦“持续交付”的全周期流程,涵盖任务拆分、职责分工、决策可追溯、工具使用管控及上下文健康度维护等关键环节。
21
+
22
+ ## 安装指南
23
+
24
+ ### 环境要求
25
+
26
+ - **Node.js(含 npm)**:版本 22.x 及以上
27
+ - **至少一个可用的 LLM 服务提供商**:Dominds 内置提供商目录(路径:[main/llm/defaults.yaml](./main/llm/defaults.yaml)),需为其中至少一个提供商配置有效凭证(通过环境变量设置)。
28
+ - **pnpm(可选)**:仅在开发 Dominds 本体时推荐安装。
29
+
30
+ ### 安装 Dominds
31
+
32
+ ```bash
33
+ # 推荐全局安装
34
+ npm install -g dominds
35
+ # 或使用 pnpm 安装
36
+ # pnpm add -g dominds
37
+
38
+ # 查看帮助文档
39
+ dominds --help
40
+ ```
41
+
42
+ 也可以选择 **无需全局安装** 的方式运行(适合临时试用 / CI / 不想污染环境):
43
+
44
+ ```bash
45
+ # 运行最新版(会临时下载到 npm cache 并执行)
46
+ npx -y dominds@latest --help
47
+ npx -y dominds@latest
48
+
49
+ # 或固定到某个版本(更利于复现)
50
+ # npx -y dominds@1.2.3
51
+ ```
52
+
53
+ 说明:
54
+
55
+ - 仅写 `npx dominds` **不一定**会自动跑“最新版”:如果你本地项目已安装了 `dominds`,或 npm cache 已存在旧版本,`npx` 可能会直接复用已有版本。
56
+ - 想要“每次都按 latest 标签解析版本”,请显式写 `dominds@latest`;它仍可能复用 cache 中已下载的同版本(属于正常行为)。
57
+
58
+ ### 开发与贡献(树内工作流 / in-tree 工作流)
59
+
60
+ 若你计划为 Dominds 开源项目贡献代码,建议使用树内包装器(in-tree wrapper)工作区:
61
+
62
+ https://github.com/longrun-ai/dominds-feat-dev
63
+
64
+ 1. 克隆 dominds-feat-dev 仓库
65
+ 2. 在 dominds-feat-dev/dominds/ 目录下,克隆你自己的 Dominds fork 仓库
66
+ 3. 在内层 dominds/ 目录中,向 longrun-ai/dominds 提交 PR
67
+
68
+ ## 快速上手(推荐:通过模板创建工作区)
69
+
70
+ ```bash
71
+ # 1) 基于模板创建工作区
72
+ dominds create web-scaffold my-project
73
+ cd my-project
74
+
75
+ # 2) 启动 WebUI(默认自动打开浏览器,默认端口 5666)
76
+ dominds
77
+ ```
78
+
79
+ 首次启动后,通常会自动跳转至 `http://localhost:5666/setup` 配置页面,按以下步骤操作:
80
+
81
+ 1. 选择提供商(provider)及模型(model),创建或覆盖 `.minds/team.yaml`(最小化可运行配置文件)。
82
+ 2. 根据提示设置提供商所需的环境变量(配置页可协助将变量写入 `~/.zshrc` 或 `~/.bashrc` 的托管区块)。
83
+ 3. 进入主界面,创建对话即可开始工作。
84
+
85
+ ## 从零开始(空文件夹启动)
86
+
87
+ 若暂无模板或团队配置,可直接从空目录启动:
88
+
89
+ ```bash
90
+ mkdir my-workspace
91
+ cd my-workspace
92
+ dominds
93
+ ```
94
+
95
+ 完成初始化配置后,建议先与影子团队管理者 “伏羲”(`@fuxi`) 对话,由其根据你的产品需求,搭建适配的团队配置(例如生成完整的 `.minds/team.yaml` 文件,分配成员职责及工具权限)。
96
+
97
+ ## 核心理念(Core Philosophy)
98
+
99
+ Dominds 面向“长期开发运作(DevOps)”场景设计,基于社会化分工理念,所有功能均围绕以下三大核心目标展开:
100
+
101
+ - 降低 **智能体心智负担**:将工作分配给不同专长的智能体成员,通过“对话分轮、噪音清理”等机制减少上下文污染(而非依赖传统上比较勉强的“上下文压缩”手段)。
102
+ - 防范 **工具滥用风险**:将软件工具交给专职智能体把关使用,确保牠们不受任务上下文影响,能够专心审核使用合规性,以及负责工具的正确使用。
103
+ - 避免 **信息过时问题**:将关键决策、约定及配置,以可版本追踪的工作区文件形式,体现为智能体上下文的直接内容(团队以及个人记忆,差遣牒,对话附加提醒项),而非散落在仓库中等着智能体自己去找。
104
+
105
+ ### 1) 清心定界:上下文清爽、任务明确
106
+
107
+ > 将宏大目标拆解为边界清晰的细分任务,每个智能体成员仅获取完成当前任务所需的最小上下文。
108
+
109
+ - 上下文范围越小,智能体产生幻觉及误操作的概率越低
110
+ - 任务边界越清晰,结果评估与迭代优化的效率越高
111
+ - 任务契约越明确,越容易实现并行处理与流程复用
112
+
113
+ ### 2) 意图导向的工具调用:安全的核心是“先判断再约束”
114
+
115
+ > 强力赋能的工具一般都伴随使用风险,安全保障必须来自基于意图的判断与约束,经常提醒智能体“要小心谨慎”,或者靠人来把关每个小细节,都是反生产力提升的。
116
+
117
+ 核心原则:
118
+
119
+ - 默认赋予最小权限,仅在必要时扩展权限范围
120
+ - 针对危险工具,每次使用时由专职智能体进行确认:
121
+ - 会产生意外副作用吗?
122
+ - 不小心用错了?(防呆)
123
+ - 被恶意滥用了?
124
+ - 是否有更安全/更简单的替代手段?
125
+ - 常规文本匹配对这些问题是力不从心的;更可靠的是由纪律严明的专职智能体做出判断,确保合规。
126
+ - 工具授权需满足可读取、可审计、可追溯(含工具集、成员工具清单、目录读写范围等)
127
+
128
+ ### 3) 基于领域专有模板:多元团队,自我进化
129
+
130
+ > 基于模板快速搭建团队,将个体及团队记忆作为版本追踪的数字资产,持续迭代优化。
131
+
132
+ - 通过领域模板引导团队职责划分与工作流搭建
133
+ - 将角色设定(personas)、经验教训(lessons)、操作手册(playbooks)存入 `.minds/**` 目录,对于人类完全透明,方便阅读审核
134
+ - 伴随产品迭代,同步升级治理模式与团队结构
135
+
136
+ ## 相关文档
137
+
138
+ - **[Terminology](docs/dominds-terminology.md)** — Dominds 专有术语
139
+ - **[CLI Usage Guide](docs/cli-usage.md)** — 命令行工具及使用方法
140
+ - **[MCP Support](docs/mcp-support.md)** — MCP 工具集成指南
141
+ - **[Encapsulated Taskdocs](docs/encapsulated-taskdoc.md)** — 差遣牒(Taskdoc)封装
142
+ - **[Context Health](docs/context-health.md)** — 上下文健康维护
143
+ - **[Keep-going](docs/keep-going.md)** — 鞭策机制
144
+ - **[Design](docs/design.md)** — Dominds 架构设计与核心抽象
145
+ - **[Mottos](docs/mottos.md)** — 警世名言
146
+ - **[OEC Philosophy](docs/OEC-philosophy.md)** — 全方位优化管理法
147
+
148
+ - **[Team Mgmt Toolset](docs/team-mgmt-toolset.md)** — 团队管理工具集
149
+ - **[i18n](docs/i18n.md)** — 语言支持与本地化配置
150
+ - **[Dialog System](docs/dialog-system.md)** — 对话系统与流式事件
151
+ - **[Dialog Persistence](docs/dialog-persistence.md)** — 磁盘持久化存储结构
152
+ - **[Interruption & Resumption](docs/interruption-resumption.md)** — 任务中断与恢复语义
153
+ - **[Auth](docs/auth.md)** — 认证机制与访问模型(WebUI + API)
154
+
155
+ ## 获取帮助
156
+
157
+ 如需协助,可在 GitHub 提交 issue:[https://github.com/longrun-ai/dominds/issues](https://github.com/longrun-ai/dominds/issues)
158
+
159
+ ---
160
+
161
+ **License:**[LGPL](./LICENSE) | **Repository:**[https://github.com/longrun-ai/dominds](https://github.com/longrun-ai/dominds)