@jungjaehoon/mama-os 0.28.5 → 0.29.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 (454) hide show
  1. package/dist/agent/agent-loop.d.ts +0 -4
  2. package/dist/agent/agent-loop.d.ts.map +1 -1
  3. package/dist/agent/agent-loop.js +44 -12
  4. package/dist/agent/agent-loop.js.map +1 -1
  5. package/dist/agent/code-act/host-bridge.d.ts.map +1 -1
  6. package/dist/agent/code-act/host-bridge.js +53 -3
  7. package/dist/agent/code-act/host-bridge.js.map +1 -1
  8. package/dist/agent/code-act/tool-policy.d.ts.map +1 -1
  9. package/dist/agent/code-act/tool-policy.js +5 -0
  10. package/dist/agent/code-act/tool-policy.js.map +1 -1
  11. package/dist/agent/codex-auth.d.ts +0 -1
  12. package/dist/agent/codex-auth.d.ts.map +1 -1
  13. package/dist/agent/codex-auth.js +0 -4
  14. package/dist/agent/codex-auth.js.map +1 -1
  15. package/dist/agent/codex-home.d.ts +0 -2
  16. package/dist/agent/codex-home.d.ts.map +1 -1
  17. package/dist/agent/codex-home.js +0 -66
  18. package/dist/agent/codex-home.js.map +1 -1
  19. package/dist/agent/context-compile-service.d.ts +9 -0
  20. package/dist/agent/context-compile-service.d.ts.map +1 -1
  21. package/dist/agent/context-compile-service.js +6 -0
  22. package/dist/agent/context-compile-service.js.map +1 -1
  23. package/dist/agent/context-prompt-builder.d.ts +0 -6
  24. package/dist/agent/context-prompt-builder.d.ts.map +1 -1
  25. package/dist/agent/context-prompt-builder.js +0 -131
  26. package/dist/agent/context-prompt-builder.js.map +1 -1
  27. package/dist/agent/contract-extractor.d.ts +0 -4
  28. package/dist/agent/contract-extractor.d.ts.map +1 -1
  29. package/dist/agent/contract-extractor.js +0 -68
  30. package/dist/agent/contract-extractor.js.map +1 -1
  31. package/dist/agent/gateway-tool-executor.d.ts +20 -15
  32. package/dist/agent/gateway-tool-executor.d.ts.map +1 -1
  33. package/dist/agent/gateway-tool-executor.js +236 -90
  34. package/dist/agent/gateway-tool-executor.js.map +1 -1
  35. package/dist/agent/gateway-tools.md +7 -4
  36. package/dist/agent/skill-loader.d.ts +0 -7
  37. package/dist/agent/skill-loader.d.ts.map +1 -1
  38. package/dist/agent/skill-loader.js +0 -86
  39. package/dist/agent/skill-loader.js.map +1 -1
  40. package/dist/agent/token-estimator.d.ts +0 -8
  41. package/dist/agent/token-estimator.d.ts.map +1 -1
  42. package/dist/agent/token-estimator.js +0 -14
  43. package/dist/agent/token-estimator.js.map +1 -1
  44. package/dist/agent/tool-registry.d.ts.map +1 -1
  45. package/dist/agent/tool-registry.js +23 -5
  46. package/dist/agent/tool-registry.js.map +1 -1
  47. package/dist/agent/types.d.ts +27 -1
  48. package/dist/agent/types.d.ts.map +1 -1
  49. package/dist/agent/types.js.map +1 -1
  50. package/dist/api/agent-graph-handler.d.ts +9 -0
  51. package/dist/api/agent-graph-handler.d.ts.map +1 -1
  52. package/dist/api/agent-graph-handler.js +27 -1
  53. package/dist/api/agent-graph-handler.js.map +1 -1
  54. package/dist/api/entity-audit-handler.d.ts +1 -2
  55. package/dist/api/entity-audit-handler.d.ts.map +1 -1
  56. package/dist/api/entity-audit-handler.js +0 -5
  57. package/dist/api/entity-audit-handler.js.map +1 -1
  58. package/dist/api/index.d.ts +1 -9
  59. package/dist/api/index.d.ts.map +1 -1
  60. package/dist/api/index.js +4 -17
  61. package/dist/api/index.js.map +1 -1
  62. package/dist/api/intelligence-handler.d.ts +0 -5
  63. package/dist/api/intelligence-handler.d.ts.map +1 -1
  64. package/dist/api/intelligence-handler.js +0 -15
  65. package/dist/api/intelligence-handler.js.map +1 -1
  66. package/dist/api/types.d.ts +1 -5
  67. package/dist/api/types.d.ts.map +1 -1
  68. package/dist/api/types.js +0 -14
  69. package/dist/api/types.js.map +1 -1
  70. package/dist/cli/commands/start.d.ts +117 -3
  71. package/dist/cli/commands/start.d.ts.map +1 -1
  72. package/dist/cli/commands/start.js +223 -62
  73. package/dist/cli/commands/start.js.map +1 -1
  74. package/dist/cli/config/config-manager.d.ts +0 -5
  75. package/dist/cli/config/config-manager.d.ts.map +1 -1
  76. package/dist/cli/config/config-manager.js +0 -29
  77. package/dist/cli/config/config-manager.js.map +1 -1
  78. package/dist/cli/config/types.d.ts.map +1 -1
  79. package/dist/cli/config/types.js +3 -0
  80. package/dist/cli/config/types.js.map +1 -1
  81. package/dist/cli/runtime/agent-loop-init.d.ts.map +1 -1
  82. package/dist/cli/runtime/agent-loop-init.js +9 -1
  83. package/dist/cli/runtime/agent-loop-init.js.map +1 -1
  84. package/dist/cli/runtime/api-routes-init.d.ts.map +1 -1
  85. package/dist/cli/runtime/api-routes-init.js +32 -5
  86. package/dist/cli/runtime/api-routes-init.js.map +1 -1
  87. package/dist/cli/runtime/api-server-init.d.ts.map +1 -1
  88. package/dist/cli/runtime/api-server-init.js +2 -0
  89. package/dist/cli/runtime/api-server-init.js.map +1 -1
  90. package/dist/cli/runtime/gateway-init.d.ts +1 -1
  91. package/dist/cli/runtime/gateway-init.d.ts.map +1 -1
  92. package/dist/cli/runtime/gateway-init.js +11 -38
  93. package/dist/cli/runtime/gateway-init.js.map +1 -1
  94. package/dist/cli/runtime/gateway-wiring.d.ts.map +1 -1
  95. package/dist/cli/runtime/gateway-wiring.js +6 -120
  96. package/dist/cli/runtime/gateway-wiring.js.map +1 -1
  97. package/dist/cli/utils/pid-manager.d.ts +0 -10
  98. package/dist/cli/utils/pid-manager.d.ts.map +1 -1
  99. package/dist/cli/utils/pid-manager.js +0 -26
  100. package/dist/cli/utils/pid-manager.js.map +1 -1
  101. package/dist/connectors/framework/polling-scheduler.d.ts +33 -1
  102. package/dist/connectors/framework/polling-scheduler.d.ts.map +1 -1
  103. package/dist/connectors/framework/polling-scheduler.js +46 -40
  104. package/dist/connectors/framework/polling-scheduler.js.map +1 -1
  105. package/dist/connectors/trello/query-tools.d.ts +32 -5
  106. package/dist/connectors/trello/query-tools.d.ts.map +1 -1
  107. package/dist/connectors/trello/query-tools.js +56 -17
  108. package/dist/connectors/trello/query-tools.js.map +1 -1
  109. package/dist/db/agent-store.d.ts +0 -4
  110. package/dist/db/agent-store.d.ts.map +1 -1
  111. package/dist/db/agent-store.js +0 -65
  112. package/dist/db/agent-store.js.map +1 -1
  113. package/dist/envelope/enforcer.d.ts.map +1 -1
  114. package/dist/envelope/enforcer.js +10 -1
  115. package/dist/envelope/enforcer.js.map +1 -1
  116. package/dist/envelope/index.d.ts +0 -1
  117. package/dist/envelope/index.d.ts.map +1 -1
  118. package/dist/envelope/index.js +0 -1
  119. package/dist/envelope/index.js.map +1 -1
  120. package/dist/envelope/signature.d.ts +0 -1
  121. package/dist/envelope/signature.d.ts.map +1 -1
  122. package/dist/envelope/signature.js +0 -7
  123. package/dist/envelope/signature.js.map +1 -1
  124. package/dist/envelope/tool-connector-scope.d.ts +35 -0
  125. package/dist/envelope/tool-connector-scope.d.ts.map +1 -0
  126. package/dist/envelope/tool-connector-scope.js +57 -0
  127. package/dist/envelope/tool-connector-scope.js.map +1 -0
  128. package/dist/evidence/effects.d.ts +107 -0
  129. package/dist/evidence/effects.d.ts.map +1 -0
  130. package/dist/evidence/effects.js +281 -0
  131. package/dist/evidence/effects.js.map +1 -0
  132. package/dist/evidence/read.d.ts +75 -0
  133. package/dist/evidence/read.d.ts.map +1 -0
  134. package/dist/evidence/read.js +105 -0
  135. package/dist/evidence/read.js.map +1 -0
  136. package/dist/gateways/base-gateway.d.ts +23 -3
  137. package/dist/gateways/base-gateway.d.ts.map +1 -1
  138. package/dist/gateways/base-gateway.js +15 -2
  139. package/dist/gateways/base-gateway.js.map +1 -1
  140. package/dist/gateways/discord.d.ts +4 -16
  141. package/dist/gateways/discord.d.ts.map +1 -1
  142. package/dist/gateways/discord.js +22 -189
  143. package/dist/gateways/discord.js.map +1 -1
  144. package/dist/gateways/index.d.ts +2 -1
  145. package/dist/gateways/index.d.ts.map +1 -1
  146. package/dist/gateways/message-router.d.ts +13 -20
  147. package/dist/gateways/message-router.d.ts.map +1 -1
  148. package/dist/gateways/message-router.js +32 -3
  149. package/dist/gateways/message-router.js.map +1 -1
  150. package/dist/gateways/slack.d.ts +2 -12
  151. package/dist/gateways/slack.d.ts.map +1 -1
  152. package/dist/gateways/slack.js +6 -220
  153. package/dist/gateways/slack.js.map +1 -1
  154. package/dist/gateways/telegram.d.ts +2 -2
  155. package/dist/gateways/telegram.d.ts.map +1 -1
  156. package/dist/gateways/telegram.js +3 -2
  157. package/dist/gateways/telegram.js.map +1 -1
  158. package/dist/gateways/turn-contract.d.ts +104 -0
  159. package/dist/gateways/turn-contract.d.ts.map +1 -0
  160. package/dist/{memory/consult-contract.js → gateways/turn-contract.js} +1 -1
  161. package/dist/gateways/turn-contract.js.map +1 -0
  162. package/dist/memory/provenance-live.d.ts +111 -0
  163. package/dist/memory/provenance-live.d.ts.map +1 -0
  164. package/dist/memory/provenance-live.js +381 -0
  165. package/dist/memory/provenance-live.js.map +1 -0
  166. package/dist/memory/provenance-resolver.d.ts +184 -0
  167. package/dist/memory/provenance-resolver.d.ts.map +1 -0
  168. package/dist/memory/provenance-resolver.js +152 -0
  169. package/dist/memory/provenance-resolver.js.map +1 -0
  170. package/dist/multi-agent/agent-event-bus.d.ts +1 -0
  171. package/dist/multi-agent/agent-event-bus.d.ts.map +1 -1
  172. package/dist/multi-agent/bmad-templates.d.ts +0 -18
  173. package/dist/multi-agent/bmad-templates.d.ts.map +1 -1
  174. package/dist/multi-agent/bmad-templates.js +0 -127
  175. package/dist/multi-agent/bmad-templates.js.map +1 -1
  176. package/dist/multi-agent/dashboard-agent-persona.js +3 -3
  177. package/dist/operator/board-reconcile.d.ts +2 -3
  178. package/dist/operator/board-reconcile.d.ts.map +1 -1
  179. package/dist/operator/board-reconcile.js +18 -32
  180. package/dist/operator/board-reconcile.js.map +1 -1
  181. package/dist/operator/changes-projection.d.ts +70 -0
  182. package/dist/operator/changes-projection.d.ts.map +1 -0
  183. package/dist/operator/changes-projection.js +109 -0
  184. package/dist/operator/changes-projection.js.map +1 -0
  185. package/dist/operator/external-correlation.d.ts +94 -0
  186. package/dist/operator/external-correlation.d.ts.map +1 -0
  187. package/dist/operator/external-correlation.js +177 -0
  188. package/dist/operator/external-correlation.js.map +1 -0
  189. package/dist/operator/operator-trigger-loop.d.ts +9 -1
  190. package/dist/operator/operator-trigger-loop.d.ts.map +1 -1
  191. package/dist/operator/operator-trigger-loop.js +8 -4
  192. package/dist/operator/operator-trigger-loop.js.map +1 -1
  193. package/dist/operator/provenance-lookup.d.ts +18 -0
  194. package/dist/operator/provenance-lookup.d.ts.map +1 -0
  195. package/dist/operator/provenance-lookup.js +54 -0
  196. package/dist/operator/provenance-lookup.js.map +1 -0
  197. package/dist/operator/report-carry.d.ts +18 -1
  198. package/dist/operator/report-carry.d.ts.map +1 -1
  199. package/dist/operator/report-carry.js +22 -3
  200. package/dist/operator/report-carry.js.map +1 -1
  201. package/dist/operator/report-run.d.ts +35 -0
  202. package/dist/operator/report-run.d.ts.map +1 -1
  203. package/dist/operator/report-run.js +184 -24
  204. package/dist/operator/report-run.js.map +1 -1
  205. package/dist/operator/situation-report.d.ts.map +1 -1
  206. package/dist/operator/situation-report.js +9 -2
  207. package/dist/operator/situation-report.js.map +1 -1
  208. package/dist/operator/task-ledger.d.ts +84 -2
  209. package/dist/operator/task-ledger.d.ts.map +1 -1
  210. package/dist/operator/task-ledger.js +274 -31
  211. package/dist/operator/task-ledger.js.map +1 -1
  212. package/dist/operator/worker-run.js +1 -1
  213. package/dist/operator/worker-run.js.map +1 -1
  214. package/dist/operator/workorder-hooks.d.ts +79 -4
  215. package/dist/operator/workorder-hooks.d.ts.map +1 -1
  216. package/dist/operator/workorder-hooks.js +152 -20
  217. package/dist/operator/workorder-hooks.js.map +1 -1
  218. package/dist/operator/workorder-publishers.d.ts +2 -0
  219. package/dist/operator/workorder-publishers.d.ts.map +1 -1
  220. package/dist/operator/workorder-publishers.js +8 -1
  221. package/dist/operator/workorder-publishers.js.map +1 -1
  222. package/dist/utils/untrusted-content.d.ts +11 -0
  223. package/dist/utils/untrusted-content.d.ts.map +1 -1
  224. package/dist/utils/untrusted-content.js +20 -0
  225. package/dist/utils/untrusted-content.js.map +1 -1
  226. package/package.json +4 -3
  227. package/scripts/backfill-channel-keys.ts +451 -0
  228. package/dist/agent/auto-recall.d.ts +0 -48
  229. package/dist/agent/auto-recall.d.ts.map +0 -1
  230. package/dist/agent/auto-recall.js +0 -192
  231. package/dist/agent/auto-recall.js.map +0 -1
  232. package/dist/agent/claude-client.d.ts +0 -50
  233. package/dist/agent/claude-client.d.ts.map +0 -1
  234. package/dist/agent/claude-client.js +0 -219
  235. package/dist/agent/claude-client.js.map +0 -1
  236. package/dist/agent/delegation-executor.d.ts +0 -49
  237. package/dist/agent/delegation-executor.d.ts.map +0 -1
  238. package/dist/agent/delegation-executor.js +0 -692
  239. package/dist/agent/delegation-executor.js.map +0 -1
  240. package/dist/agent/mcp-executor.d.ts +0 -60
  241. package/dist/agent/mcp-executor.d.ts.map +0 -1
  242. package/dist/agent/mcp-executor.js +0 -190
  243. package/dist/agent/mcp-executor.js.map +0 -1
  244. package/dist/agent/process-tree.d.ts +0 -6
  245. package/dist/agent/process-tree.d.ts.map +0 -1
  246. package/dist/agent/process-tree.js +0 -21
  247. package/dist/agent/process-tree.js.map +0 -1
  248. package/dist/agent/streaming-callback-manager.d.ts +0 -85
  249. package/dist/agent/streaming-callback-manager.d.ts.map +0 -1
  250. package/dist/agent/streaming-callback-manager.js +0 -103
  251. package/dist/agent/streaming-callback-manager.js.map +0 -1
  252. package/dist/agent/token-budget.d.ts +0 -49
  253. package/dist/agent/token-budget.d.ts.map +0 -1
  254. package/dist/agent/token-budget.js +0 -92
  255. package/dist/agent/token-budget.js.map +0 -1
  256. package/dist/connectors/kagemusha/history-compiler.d.ts +0 -18
  257. package/dist/connectors/kagemusha/history-compiler.d.ts.map +0 -1
  258. package/dist/connectors/kagemusha/history-compiler.js +0 -35
  259. package/dist/connectors/kagemusha/history-compiler.js.map +0 -1
  260. package/dist/db/migrations/wiki-artifacts.d.ts +0 -3
  261. package/dist/db/migrations/wiki-artifacts.d.ts.map +0 -1
  262. package/dist/db/migrations/wiki-artifacts.js +0 -24
  263. package/dist/db/migrations/wiki-artifacts.js.map +0 -1
  264. package/dist/envelope/subset.d.ts +0 -9
  265. package/dist/envelope/subset.d.ts.map +0 -1
  266. package/dist/envelope/subset.js +0 -67
  267. package/dist/envelope/subset.js.map +0 -1
  268. package/dist/memory/consult-contract.d.ts +0 -8
  269. package/dist/memory/consult-contract.d.ts.map +0 -1
  270. package/dist/memory/consult-contract.js.map +0 -1
  271. package/dist/multi-agent/agent-message-queue.d.ts +0 -104
  272. package/dist/multi-agent/agent-message-queue.d.ts.map +0 -1
  273. package/dist/multi-agent/agent-message-queue.js +0 -227
  274. package/dist/multi-agent/agent-message-queue.js.map +0 -1
  275. package/dist/multi-agent/background-task-manager.d.ts +0 -248
  276. package/dist/multi-agent/background-task-manager.d.ts.map +0 -1
  277. package/dist/multi-agent/background-task-manager.js +0 -415
  278. package/dist/multi-agent/background-task-manager.js.map +0 -1
  279. package/dist/multi-agent/category-router.d.ts +0 -56
  280. package/dist/multi-agent/category-router.d.ts.map +0 -1
  281. package/dist/multi-agent/category-router.js +0 -99
  282. package/dist/multi-agent/category-router.js.map +0 -1
  283. package/dist/multi-agent/council-engine.d.ts +0 -60
  284. package/dist/multi-agent/council-engine.d.ts.map +0 -1
  285. package/dist/multi-agent/council-engine.js +0 -284
  286. package/dist/multi-agent/council-engine.js.map +0 -1
  287. package/dist/multi-agent/delegation-format-validator.d.ts +0 -22
  288. package/dist/multi-agent/delegation-format-validator.d.ts.map +0 -1
  289. package/dist/multi-agent/delegation-format-validator.js +0 -31
  290. package/dist/multi-agent/delegation-format-validator.js.map +0 -1
  291. package/dist/multi-agent/delegation-manager.d.ts +0 -128
  292. package/dist/multi-agent/delegation-manager.d.ts.map +0 -1
  293. package/dist/multi-agent/delegation-manager.js +0 -276
  294. package/dist/multi-agent/delegation-manager.js.map +0 -1
  295. package/dist/multi-agent/i18n-messages.d.ts +0 -35
  296. package/dist/multi-agent/i18n-messages.d.ts.map +0 -1
  297. package/dist/multi-agent/i18n-messages.js +0 -54
  298. package/dist/multi-agent/i18n-messages.js.map +0 -1
  299. package/dist/multi-agent/index.d.ts +0 -31
  300. package/dist/multi-agent/index.d.ts.map +0 -1
  301. package/dist/multi-agent/index.js +0 -46
  302. package/dist/multi-agent/index.js.map +0 -1
  303. package/dist/multi-agent/multi-agent-base.d.ts +0 -223
  304. package/dist/multi-agent/multi-agent-base.d.ts.map +0 -1
  305. package/dist/multi-agent/multi-agent-base.js +0 -592
  306. package/dist/multi-agent/multi-agent-base.js.map +0 -1
  307. package/dist/multi-agent/multi-agent-discord.d.ts +0 -142
  308. package/dist/multi-agent/multi-agent-discord.d.ts.map +0 -1
  309. package/dist/multi-agent/multi-agent-discord.js +0 -1235
  310. package/dist/multi-agent/multi-agent-discord.js.map +0 -1
  311. package/dist/multi-agent/multi-agent-slack.d.ts +0 -146
  312. package/dist/multi-agent/multi-agent-slack.d.ts.map +0 -1
  313. package/dist/multi-agent/multi-agent-slack.js +0 -953
  314. package/dist/multi-agent/multi-agent-slack.js.map +0 -1
  315. package/dist/multi-agent/multi-bot-manager.d.ts +0 -119
  316. package/dist/multi-agent/multi-bot-manager.d.ts.map +0 -1
  317. package/dist/multi-agent/multi-bot-manager.js +0 -449
  318. package/dist/multi-agent/multi-bot-manager.js.map +0 -1
  319. package/dist/multi-agent/orchestrator.d.ts +0 -110
  320. package/dist/multi-agent/orchestrator.d.ts.map +0 -1
  321. package/dist/multi-agent/orchestrator.js +0 -436
  322. package/dist/multi-agent/orchestrator.js.map +0 -1
  323. package/dist/multi-agent/rate-limiter.d.ts +0 -76
  324. package/dist/multi-agent/rate-limiter.d.ts.map +0 -1
  325. package/dist/multi-agent/rate-limiter.js +0 -128
  326. package/dist/multi-agent/rate-limiter.js.map +0 -1
  327. package/dist/multi-agent/shared-context.d.ts +0 -127
  328. package/dist/multi-agent/shared-context.d.ts.map +0 -1
  329. package/dist/multi-agent/shared-context.js +0 -239
  330. package/dist/multi-agent/shared-context.js.map +0 -1
  331. package/dist/multi-agent/slack-config-validator.d.ts +0 -42
  332. package/dist/multi-agent/slack-config-validator.d.ts.map +0 -1
  333. package/dist/multi-agent/slack-config-validator.js +0 -194
  334. package/dist/multi-agent/slack-config-validator.js.map +0 -1
  335. package/dist/multi-agent/slack-multi-bot-manager.d.ts +0 -143
  336. package/dist/multi-agent/slack-multi-bot-manager.d.ts.map +0 -1
  337. package/dist/multi-agent/slack-multi-bot-manager.js +0 -413
  338. package/dist/multi-agent/slack-multi-bot-manager.js.map +0 -1
  339. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.d.ts +0 -98
  340. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.d.ts.map +0 -1
  341. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.js +0 -225
  342. package/dist/multi-agent/swarm/swarm-anti-pattern-detector.js.map +0 -1
  343. package/dist/multi-agent/swarm/swarm-db.d.ts +0 -175
  344. package/dist/multi-agent/swarm/swarm-db.d.ts.map +0 -1
  345. package/dist/multi-agent/swarm/swarm-db.js +0 -313
  346. package/dist/multi-agent/swarm/swarm-db.js.map +0 -1
  347. package/dist/multi-agent/swarm/swarm-event-reporter.d.ts +0 -116
  348. package/dist/multi-agent/swarm/swarm-event-reporter.d.ts.map +0 -1
  349. package/dist/multi-agent/swarm/swarm-event-reporter.js +0 -243
  350. package/dist/multi-agent/swarm/swarm-event-reporter.js.map +0 -1
  351. package/dist/multi-agent/swarm/swarm-mama-adapter.d.ts +0 -57
  352. package/dist/multi-agent/swarm/swarm-mama-adapter.d.ts.map +0 -1
  353. package/dist/multi-agent/swarm/swarm-mama-adapter.js +0 -87
  354. package/dist/multi-agent/swarm/swarm-mama-adapter.js.map +0 -1
  355. package/dist/multi-agent/swarm/swarm-manager.d.ts +0 -122
  356. package/dist/multi-agent/swarm/swarm-manager.d.ts.map +0 -1
  357. package/dist/multi-agent/swarm/swarm-manager.js +0 -199
  358. package/dist/multi-agent/swarm/swarm-manager.js.map +0 -1
  359. package/dist/multi-agent/swarm/swarm-task-learner.d.ts +0 -104
  360. package/dist/multi-agent/swarm/swarm-task-learner.d.ts.map +0 -1
  361. package/dist/multi-agent/swarm/swarm-task-learner.js +0 -211
  362. package/dist/multi-agent/swarm/swarm-task-learner.js.map +0 -1
  363. package/dist/multi-agent/swarm/swarm-task-runner.d.ts +0 -155
  364. package/dist/multi-agent/swarm/swarm-task-runner.d.ts.map +0 -1
  365. package/dist/multi-agent/swarm/swarm-task-runner.js +0 -615
  366. package/dist/multi-agent/swarm/swarm-task-runner.js.map +0 -1
  367. package/dist/multi-agent/swarm/wave-engine.d.ts +0 -96
  368. package/dist/multi-agent/swarm/wave-engine.d.ts.map +0 -1
  369. package/dist/multi-agent/swarm/wave-engine.js +0 -123
  370. package/dist/multi-agent/swarm/wave-engine.js.map +0 -1
  371. package/dist/multi-agent/system-reminder.d.ts +0 -206
  372. package/dist/multi-agent/system-reminder.d.ts.map +0 -1
  373. package/dist/multi-agent/system-reminder.js +0 -455
  374. package/dist/multi-agent/system-reminder.js.map +0 -1
  375. package/dist/multi-agent/task-continuation.d.ts +0 -74
  376. package/dist/multi-agent/task-continuation.d.ts.map +0 -1
  377. package/dist/multi-agent/task-continuation.js +0 -172
  378. package/dist/multi-agent/task-continuation.js.map +0 -1
  379. package/dist/multi-agent/ultrawork-state.d.ts +0 -57
  380. package/dist/multi-agent/ultrawork-state.d.ts.map +0 -1
  381. package/dist/multi-agent/ultrawork-state.js +0 -191
  382. package/dist/multi-agent/ultrawork-state.js.map +0 -1
  383. package/dist/multi-agent/ultrawork.d.ts +0 -152
  384. package/dist/multi-agent/ultrawork.d.ts.map +0 -1
  385. package/dist/multi-agent/ultrawork.js +0 -879
  386. package/dist/multi-agent/ultrawork.js.map +0 -1
  387. package/dist/multi-agent/work-tracker.d.ts +0 -22
  388. package/dist/multi-agent/work-tracker.d.ts.map +0 -1
  389. package/dist/multi-agent/work-tracker.js +0 -45
  390. package/dist/multi-agent/work-tracker.js.map +0 -1
  391. package/dist/multi-agent/workflow-engine.d.ts +0 -87
  392. package/dist/multi-agent/workflow-engine.d.ts.map +0 -1
  393. package/dist/multi-agent/workflow-engine.js +0 -604
  394. package/dist/multi-agent/workflow-engine.js.map +0 -1
  395. package/dist/onboarding/all-tools.d.ts +0 -18
  396. package/dist/onboarding/all-tools.d.ts.map +0 -1
  397. package/dist/onboarding/all-tools.js +0 -149
  398. package/dist/onboarding/all-tools.js.map +0 -1
  399. package/dist/onboarding/autonomous-discovery-tools.d.ts +0 -23
  400. package/dist/onboarding/autonomous-discovery-tools.d.ts.map +0 -1
  401. package/dist/onboarding/autonomous-discovery-tools.js +0 -268
  402. package/dist/onboarding/autonomous-discovery-tools.js.map +0 -1
  403. package/dist/onboarding/onboarding-state.d.ts +0 -70
  404. package/dist/onboarding/onboarding-state.d.ts.map +0 -1
  405. package/dist/onboarding/onboarding-state.js +0 -183
  406. package/dist/onboarding/onboarding-state.js.map +0 -1
  407. package/dist/onboarding/personality-quiz.d.ts +0 -35
  408. package/dist/onboarding/personality-quiz.d.ts.map +0 -1
  409. package/dist/onboarding/personality-quiz.js +0 -219
  410. package/dist/onboarding/personality-quiz.js.map +0 -1
  411. package/dist/onboarding/phase-5-summary.d.ts +0 -26
  412. package/dist/onboarding/phase-5-summary.d.ts.map +0 -1
  413. package/dist/onboarding/phase-5-summary.js +0 -153
  414. package/dist/onboarding/phase-5-summary.js.map +0 -1
  415. package/dist/onboarding/phase-6-security.d.ts +0 -33
  416. package/dist/onboarding/phase-6-security.d.ts.map +0 -1
  417. package/dist/onboarding/phase-6-security.js +0 -473
  418. package/dist/onboarding/phase-6-security.js.map +0 -1
  419. package/dist/onboarding/phase-7-integrations.d.ts +0 -91
  420. package/dist/onboarding/phase-7-integrations.d.ts.map +0 -1
  421. package/dist/onboarding/phase-7-integrations.js +0 -725
  422. package/dist/onboarding/phase-7-integrations.js.map +0 -1
  423. package/dist/onboarding/phase-8-demo.d.ts +0 -43
  424. package/dist/onboarding/phase-8-demo.d.ts.map +0 -1
  425. package/dist/onboarding/phase-8-demo.js +0 -346
  426. package/dist/onboarding/phase-8-demo.js.map +0 -1
  427. package/dist/onboarding/phase-9-finalization.d.ts +0 -27
  428. package/dist/onboarding/phase-9-finalization.d.ts.map +0 -1
  429. package/dist/onboarding/phase-9-finalization.js +0 -417
  430. package/dist/onboarding/phase-9-finalization.js.map +0 -1
  431. package/dist/onboarding/ritual-prompt.d.ts +0 -2
  432. package/dist/onboarding/ritual-prompt.d.ts.map +0 -1
  433. package/dist/onboarding/ritual-prompt.js +0 -285
  434. package/dist/onboarding/ritual-prompt.js.map +0 -1
  435. package/dist/onboarding/ritual-tools.d.ts +0 -17
  436. package/dist/onboarding/ritual-tools.d.ts.map +0 -1
  437. package/dist/onboarding/ritual-tools.js +0 -93
  438. package/dist/onboarding/ritual-tools.js.map +0 -1
  439. package/dist/setup/setup-tools.d.ts +0 -13
  440. package/dist/setup/setup-tools.d.ts.map +0 -1
  441. package/dist/setup/setup-tools.js +0 -106
  442. package/dist/setup/setup-tools.js.map +0 -1
  443. package/dist/utils/slack-input-validator.d.ts +0 -74
  444. package/dist/utils/slack-input-validator.d.ts.map +0 -1
  445. package/dist/utils/slack-input-validator.js +0 -275
  446. package/dist/utils/slack-input-validator.js.map +0 -1
  447. package/dist/utils/slack-rate-limiter.d.ts +0 -139
  448. package/dist/utils/slack-rate-limiter.d.ts.map +0 -1
  449. package/dist/utils/slack-rate-limiter.js +0 -324
  450. package/dist/utils/slack-rate-limiter.js.map +0 -1
  451. package/dist/wiki/wiki-compiler.d.ts +0 -13
  452. package/dist/wiki/wiki-compiler.d.ts.map +0 -1
  453. package/dist/wiki/wiki-compiler.js +0 -82
  454. package/dist/wiki/wiki-compiler.js.map +0 -1
@@ -1,725 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SAVE_INTEGRATION_TOKEN_TOOL = exports.PHASE_7_TOOL = void 0;
4
- exports.handleSaveIntegrationToken = handleSaveIntegrationToken;
5
- exports.handleSaveMultiAgent = handleSaveMultiAgent;
6
- exports.generateIntegrationGuide = generateIntegrationGuide;
7
- exports.parseQuietHours = parseQuietHours;
8
- const node_fs_1 = require("node:fs");
9
- const node_path_1 = require("node:path");
10
- const config_manager_js_1 = require("../cli/config/config-manager.js");
11
- const ROLE_EXAMPLES = {
12
- developer: `## Developer Integration Examples
13
-
14
- ### Discord for Team Notifications
15
- \`\`\`json
16
- {
17
- "discord": {
18
- "enabled": true,
19
- "token": "YOUR_BOT_TOKEN",
20
- "guilds": {
21
- "YOUR_GUILD_ID": {
22
- "requireMention": false,
23
- "channels": {
24
- "dev-alerts": { "requireMention": false },
25
- "general": { "requireMention": true }
26
- }
27
- }
28
- }
29
- }
30
- }
31
- \`\`\`
32
-
33
- ### Cron Jobs for Daily Builds
34
- \`\`\`json
35
- {
36
- "cronJobs": [
37
- {
38
- "id": "daily-build-check",
39
- "cronExpr": "0 9 * * *",
40
- "prompt": "Check CI/CD pipeline status and report any failures",
41
- "enabled": true
42
- },
43
- {
44
- "id": "dependency-updates",
45
- "cronExpr": "0 10 * * 1",
46
- "prompt": "Check for npm package updates and create update summary",
47
- "enabled": true
48
- }
49
- ]
50
- }
51
- \`\`\`
52
-
53
- ### Heartbeat for System Monitoring
54
- \`\`\`json
55
- {
56
- "heartbeat": {
57
- "enabled": true,
58
- "interval": 1800000,
59
- "quietStart": 23,
60
- "quietEnd": 8,
61
- "notifyChannelId": "YOUR_DISCORD_CHANNEL_ID"
62
- }
63
- }
64
- \`\`\`
65
-
66
- ### Multi-Agent Setup (Optional)
67
- \`\`\`json
68
- {
69
- "multi_agent": {
70
- "enabled": true,
71
- "agents": {
72
- "conductor": { "name": "Conductor", "tier": 1, "enabled": true },
73
- "devbot": { "name": "DevBot", "tier": 1, "can_delegate": true, "enabled": true, "tool_permissions": {"allowed":["*"],"blocked":[]} },
74
- "reviewer": { "name": "Reviewer", "tier": 3, "enabled": true }
75
- }
76
- }
77
- }
78
- \`\`\``,
79
- researcher: `## Researcher Integration Examples
80
-
81
- ### Telegram for Mobile Access
82
- \`\`\`json
83
- {
84
- "telegram": {
85
- "enabled": true,
86
- "token": "YOUR_BOT_TOKEN",
87
- "allowedChats": ["YOUR_CHAT_ID"]
88
- }
89
- }
90
- \`\`\`
91
-
92
- ### Cron Jobs for Literature Monitoring
93
- \`\`\`json
94
- {
95
- "cronJobs": [
96
- {
97
- "id": "arxiv-daily",
98
- "cronExpr": "0 8 * * *",
99
- "prompt": "Search arXiv for new papers in my research areas and summarize",
100
- "enabled": true
101
- },
102
- {
103
- "id": "weekly-research-digest",
104
- "cronExpr": "0 9 * * 1",
105
- "prompt": "Compile weekly research digest from saved papers",
106
- "enabled": true
107
- }
108
- ]
109
- }
110
- \`\`\`
111
-
112
- ### Skills for Paper Analysis
113
- \`\`\`json
114
- {
115
- "skills": [
116
- {
117
- "id": "paper-analyzer",
118
- "path": "~/.mama/skills/paper-analyzer.md",
119
- "enabled": true
120
- },
121
- {
122
- "id": "citation-tracker",
123
- "path": "~/.mama/skills/citation-tracker.md",
124
- "enabled": true
125
- }
126
- ]
127
- }
128
- \`\`\`
129
-
130
- ### Multi-Agent Setup (Optional)
131
- \`\`\`json
132
- {
133
- "multi_agent": {
134
- "enabled": true,
135
- "agents": {
136
- "researcher": { "name": "Researcher", "tier": 1, "enabled": true },
137
- "analyst": { "name": "Analyst", "tier": 2, "enabled": true }
138
- }
139
- }
140
- }
141
- \`\`\``,
142
- manager: `## Manager Integration Examples
143
-
144
- ### Slack for Team Communication
145
- \`\`\`json
146
- {
147
- "slack": {
148
- "enabled": true,
149
- "token": "YOUR_BOT_TOKEN",
150
- "workspaces": ["team-workspace"]
151
- }
152
- }
153
- \`\`\`
154
-
155
- ### Cron Jobs for Team Status
156
- \`\`\`json
157
- {
158
- "cronJobs": [
159
- {
160
- "id": "daily-standup-prep",
161
- "cronExpr": "0 8 * * 1-5",
162
- "prompt": "Prepare daily standup summary from team activity",
163
- "enabled": true
164
- },
165
- {
166
- "id": "weekly-metrics",
167
- "cronExpr": "0 17 * * 5",
168
- "prompt": "Generate weekly team metrics and performance summary",
169
- "enabled": true
170
- }
171
- ]
172
- }
173
- \`\`\`
174
-
175
- ### Heartbeat for Team Monitoring
176
- \`\`\`json
177
- {
178
- "heartbeat": {
179
- "enabled": true,
180
- "interval": 3600000,
181
- "quietStart": 20,
182
- "quietEnd": 8,
183
- "notifyChannelId": "YOUR_SLACK_CHANNEL_ID"
184
- }
185
- }
186
- \`\`\`
187
-
188
- ### Multi-Agent Setup (Optional)
189
- \`\`\`json
190
- {
191
- "multi_agent": {
192
- "enabled": true,
193
- "agents": {
194
- "coordinator": { "name": "Coordinator", "tier": 1, "enabled": true },
195
- "reporter": { "name": "Reporter", "tier": 2, "enabled": true }
196
- }
197
- }
198
- }
199
- \`\`\``,
200
- default: `## General Integration Examples
201
-
202
- ### Discord Bot Setup
203
- 1. Create bot at https://discord.com/developers/applications
204
- 2. Enable Message Content Intent
205
- 3. Add bot to your server with proper permissions
206
- 4. Copy bot token to configuration
207
-
208
- ### Cron Expression Guide
209
- \`\`\`
210
- ┌───────────── minute (0 - 59)
211
- │ ┌───────────── hour (0 - 23)
212
- │ │ ┌───────────── day of month (1 - 31)
213
- │ │ │ ┌───────────── month (1 - 12)
214
- │ │ │ │ ┌───────────── day of week (0 - 6) (Sunday to Saturday)
215
- │ │ │ │ │
216
- * * * * *
217
- \`\`\`
218
-
219
- Examples:
220
- - \`0 9 * * *\` - Every day at 9:00 AM
221
- - \`*/30 * * * *\` - Every 30 minutes
222
- - \`0 0 * * 0\` - Every Sunday at midnight
223
- - \`0 9 * * 1-5\` - Weekdays at 9:00 AM
224
-
225
- ### Heartbeat Configuration
226
- - **interval**: Milliseconds between checks (30min = 1800000)
227
- - **quietStart**: Hour to stop checking (0-23)
228
- - **quietEnd**: Hour to resume checking (0-23)
229
- - **notifyChannelId**: Discord/Slack channel for notifications
230
-
231
- ### Skills System
232
- Skills are markdown files that define specialized behaviors:
233
- - Location: \`~/.mama/skills/\`
234
- - Format: Markdown with frontmatter metadata
235
- - Trigger: Pattern matching on user queries
236
- - Response: Custom prompts and tool sequences`,
237
- };
238
- /**
239
- * Integration setup instructions
240
- */
241
- const INTEGRATION_INSTRUCTIONS = `# MAMA Integrations Guide
242
-
243
- ## Overview
244
-
245
- MAMA Standalone supports multiple integration types to fit your workflow:
246
-
247
- 1. **Chat Gateways** - Discord, Slack, Telegram
248
- 2. **Scheduled Tasks** - Cron jobs for recurring work
249
- 3. **Proactive Monitoring** - Heartbeat checks
250
- 4. **Custom Skills** - Specialized behaviors and workflows
251
-
252
- ## Chat Gateways
253
-
254
- ### Discord Integration
255
-
256
- **Setup:**
257
- 1. Go to https://discord.com/developers/applications
258
- 2. Create New Application
259
- 3. Bot tab → Add Bot
260
- 4. Enable "Message Content Intent" under Privileged Gateway Intents
261
- 5. Copy bot token
262
- 6. OAuth2 → URL Generator → Select "bot" scope and permissions
263
- 7. Use generated URL to add bot to your server
264
-
265
- **Configuration:**
266
- - \`guilds\`: Guild-specific settings (use "*" for all guilds)
267
- - \`requireMention\`: If true, bot only responds to @mentions
268
- - \`channels\`: Channel-specific overrides
269
-
270
- **Features:**
271
- - DM support (always responds in DMs)
272
- - Channel-specific mention requirements
273
- - Image attachment handling (OCR, translation)
274
- - Message history tracking for context
275
- - Typing indicators during processing
276
-
277
- ### Telegram Integration
278
-
279
- **Setup:**
280
- 1. Message @BotFather on Telegram
281
- 2. Send /newbot and follow instructions
282
- 3. Copy bot token
283
- 4. Get your chat ID by messaging @userinfobot
284
-
285
- **Configuration:**
286
- - \`token\`: Bot token from BotFather
287
- - \`allowedChats\`: List of allowed chat IDs (security)
288
-
289
- **Features:**
290
- - Private chat support
291
- - Group chat support
292
- - Image handling
293
- - Inline queries
294
-
295
- ### Slack Integration
296
-
297
- **Setup:**
298
- 1. Go to https://api.slack.com/apps
299
- 2. Create New App → From scratch
300
- 3. OAuth & Permissions → Add scopes (channels:read, chat:write, etc.)
301
- 4. Install to Workspace
302
- 5. Copy Bot User OAuth Token
303
-
304
- **Configuration:**
305
- - \`token\`: Bot User OAuth Token
306
- - \`workspaces\`: List of workspace IDs
307
-
308
- ## Scheduled Tasks (Cron Jobs)
309
-
310
- Cron jobs run automated tasks on a schedule:
311
-
312
- **Job Configuration:**
313
- - \`id\`: Unique identifier
314
- - \`cronExpr\`: Cron expression (see guide below)
315
- - \`prompt\`: Task description for Claude
316
- - \`enabled\`: Enable/disable job
317
-
318
- **Cron Expression Format:**
319
- \`\`\`
320
- ┌───────────── minute (0 - 59)
321
- │ ┌───────────── hour (0 - 23)
322
- │ │ ┌───────────── day of month (1 - 31)
323
- │ │ │ ┌───────────── month (1 - 12)
324
- │ │ │ │ ┌───────────── day of week (0 - 6)
325
- │ │ │ │ │
326
- * * * * *
327
- \`\`\`
328
-
329
- **Examples:**
330
- - \`0 9 * * *\` - Daily at 9 AM
331
- - \`*/15 * * * *\` - Every 15 minutes
332
- - \`0 0 * * 0\` - Weekly on Sunday midnight
333
- - \`0 9 * * 1-5\` - Weekdays at 9 AM
334
- - \`0 0 1 * *\` - Monthly on 1st at midnight
335
-
336
- **Use Cases:**
337
- - Daily build status checks
338
- - Weekly report generation
339
- - Hourly data synchronization
340
- - Monthly maintenance tasks
341
- - Custom automation workflows
342
-
343
- ## Heartbeat Monitoring
344
-
345
- Proactive system that periodically checks HEARTBEAT.md for tasks:
346
-
347
- **Configuration:**
348
- - \`interval\`: Check frequency in milliseconds
349
- - 30 minutes: \`1800000\`
350
- - 1 hour: \`3600000\`
351
- - 2 hours: \`7200000\`
352
- - \`quietStart\`: Hour to pause (e.g., 23 for 11 PM)
353
- - \`quietEnd\`: Hour to resume (e.g., 8 for 8 AM)
354
- - \`notifyChannelId\`: Discord/Slack channel for alerts
355
-
356
- **How It Works:**
357
- 1. Every interval, reads \`~/.mama/HEARTBEAT.md\`
358
- 2. Sends content to Claude for processing
359
- 3. Claude checks for tasks and executes them
360
- 4. Responds with status (OK, NOTIFY, DONE)
361
- 5. Sends notifications if configured
362
-
363
- **HEARTBEAT.md Example:**
364
- \`\`\`markdown
365
- # Heartbeat Tasks
366
-
367
- ## Pending
368
- - [ ] Check if new GitHub issues need triage
369
- - [ ] Monitor server uptime (alert if down)
370
-
371
- ## Completed
372
- - [x] Daily backup verified (2025-01-31)
373
- \`\`\`
374
-
375
- ## Skills System
376
-
377
- Skills are reusable markdown-based workflows:
378
-
379
- **Skill Structure:**
380
- \`\`\`markdown
381
- ---
382
- id: skill-name
383
- triggers:
384
- - "keyword or phrase"
385
- - "another trigger"
386
- description: "What this skill does"
387
- ---
388
-
389
- # Skill Instructions
390
-
391
- Claude, when this skill is triggered:
392
-
393
- 1. Do step one
394
- 2. Do step two
395
- 3. Return result in this format
396
- \`\`\`
397
-
398
- **Loading Skills:**
399
- - Place skills in \`~/.mama/skills/\`
400
- - Configure in integrations.md
401
- - Skills auto-load on startup
402
- - Pattern matching triggers execution
403
-
404
- **Skill Examples:**
405
- - Paper analysis workflows
406
- - Code review checklists
407
- - Report generation templates
408
- - Custom tool sequences
409
-
410
- ## Security Considerations
411
-
412
- **API Tokens:**
413
- - Store in environment variables, not in configs
414
- - Use \`.env\` file with \`.gitignore\`
415
- - Never commit tokens to version control
416
-
417
- **Access Control:**
418
- - Discord: Use channel/guild restrictions
419
- - Telegram: Whitelist specific chat IDs
420
- - Slack: Limit workspace access
421
-
422
- **Network Security:**
423
- - All integrations run localhost by default
424
- - Use tunnels (cloudflared) for external access
425
- - Enable authentication for exposed endpoints
426
-
427
- ## Testing Integrations
428
-
429
- **Discord:**
430
- \`\`\`bash
431
- # Test bot responds to DM
432
- # Test mention in channel
433
- # Test image upload and analysis
434
- \`\`\`
435
-
436
- **Cron Jobs:**
437
- \`\`\`bash
438
- # Run job immediately for testing
439
- mama cron run JOB_ID
440
-
441
- # List all jobs and next run times
442
- mama cron list
443
- \`\`\`
444
-
445
- **Heartbeat:**
446
- \`\`\`bash
447
- # Trigger heartbeat check now
448
- mama heartbeat trigger
449
-
450
- # View heartbeat status
451
- mama heartbeat status
452
- \`\`\`
453
-
454
- ## Troubleshooting
455
-
456
- **Bot Not Responding:**
457
- 1. Check token is correct
458
- 2. Verify bot has required permissions
459
- 3. Check Message Content Intent enabled (Discord)
460
- 4. Review logs for errors
461
-
462
- **Cron Job Not Running:**
463
- 1. Validate cron expression syntax
464
- 2. Check job is enabled
465
- 3. Verify timezone configuration
466
- 4. Review scheduler logs
467
-
468
- **Heartbeat Not Working:**
469
- 1. Check interval configuration
470
- 2. Verify not in quiet hours
471
- 3. Check HEARTBEAT.md exists and is readable
472
- 4. Review heartbeat logs
473
-
474
- ## Advanced Configuration
475
-
476
- **Multi-Gateway Setup:**
477
- Run Discord + Telegram simultaneously for different user groups
478
-
479
- **Conditional Cron Jobs:**
480
- Use prompts with conditions (e.g., "Only send report if data changed")
481
-
482
- **Cascading Heartbeats:**
483
- Chain heartbeat tasks (one task can schedule another)
484
-
485
- **Skill Composition:**
486
- Skills can invoke other skills for complex workflows
487
-
488
- ## Next Steps
489
-
490
- After integration setup:
491
- 1. Test each integration individually
492
- 2. Monitor logs for errors
493
- 3. Adjust configurations as needed
494
- 4. Document your integration patterns
495
- 5. Share successful configurations with team
496
- `;
497
- exports.PHASE_7_TOOL = {
498
- name: 'present_integration_options',
499
- description: `Present integration options for Discord, Slack, Telegram, cron jobs, heartbeat monitoring, and skills.
500
- Provide role-specific examples and save integrations.md with comprehensive setup guide.`,
501
- input_schema: {
502
- type: 'object',
503
- properties: {
504
- role: {
505
- type: 'string',
506
- description: 'User role for tailored examples (developer, researcher, manager, or custom)',
507
- enum: ['developer', 'researcher', 'manager', 'custom'],
508
- },
509
- selected_integrations: {
510
- type: 'string',
511
- description: 'Comma-separated list of integrations to enable (discord,slack,telegram,cron,heartbeat,skills)',
512
- },
513
- timezone: {
514
- type: 'string',
515
- description: 'User timezone for cron job scheduling (e.g., America/New_York, Asia/Seoul)',
516
- },
517
- quiet_hours: {
518
- type: 'string',
519
- description: 'Preferred quiet hours for heartbeat (e.g., "23-8" means 11PM to 8AM)',
520
- },
521
- },
522
- required: ['role'],
523
- },
524
- };
525
- /**
526
- * Tool to save integration tokens (Discord, Slack, Telegram) to config.yaml
527
- */
528
- exports.SAVE_INTEGRATION_TOKEN_TOOL = {
529
- name: 'save_integration_token',
530
- description: `Save a Discord, Slack, or Telegram bot token to config.yaml.
531
- Use this when user provides their bot token during onboarding.
532
- The token will be saved securely and the integration will be enabled.`,
533
- input_schema: {
534
- type: 'object',
535
- properties: {
536
- platform: {
537
- type: 'string',
538
- description: 'Platform name: discord, slack, or telegram',
539
- enum: ['discord', 'slack', 'telegram'],
540
- },
541
- token: {
542
- type: 'string',
543
- description: 'The bot token to save',
544
- },
545
- guild_id: {
546
- type: 'string',
547
- description: 'Discord guild ID (optional, for Discord only)',
548
- },
549
- chat_id: {
550
- type: 'string',
551
- description: 'Telegram chat ID (optional, for Telegram only)',
552
- },
553
- },
554
- required: ['platform', 'token'],
555
- },
556
- };
557
- /**
558
- * Handler for save_integration_token tool
559
- */
560
- async function handleSaveIntegrationToken(input) {
561
- try {
562
- const config = await (0, config_manager_js_1.loadConfig)();
563
- switch (input.platform) {
564
- case 'discord':
565
- config.discord = {
566
- enabled: true,
567
- token: input.token,
568
- default_channel_id: input.guild_id, // guild_id used as default channel
569
- };
570
- break;
571
- case 'slack':
572
- config.slack = {
573
- enabled: true,
574
- bot_token: input.token,
575
- };
576
- break;
577
- case 'telegram':
578
- config.telegram = {
579
- enabled: true,
580
- token: input.token,
581
- allowed_chats: input.chat_id ? [input.chat_id] : [],
582
- };
583
- break;
584
- }
585
- await (0, config_manager_js_1.saveConfig)(config);
586
- return {
587
- success: true,
588
- message: `${input.platform} token saved successfully! Integration is now enabled.`,
589
- };
590
- }
591
- catch (error) {
592
- return {
593
- success: false,
594
- message: 'Failed to save token',
595
- error: error instanceof Error ? error.message : String(error),
596
- };
597
- }
598
- }
599
- /**
600
- * Handler for saving multi-agent configuration
601
- */
602
- async function handleSaveMultiAgent(input) {
603
- try {
604
- const config = await (0, config_manager_js_1.loadConfig)();
605
- // Transform simple agent config to full AgentPersonaConfig format
606
- const agents = {};
607
- if (input.agents) {
608
- for (const [id, agent] of Object.entries(input.agents)) {
609
- agents[id] = {
610
- id,
611
- name: agent.name,
612
- display_name: agent.name,
613
- tier: agent.tier,
614
- model: agent.model || 'claude-sonnet-4-6',
615
- enabled: agent.enabled,
616
- trigger_prefix: `!${id.toLowerCase()}`,
617
- persona_file: `~/.mama/personas/${id}.md`,
618
- };
619
- }
620
- }
621
- config.multi_agent = {
622
- enabled: input.enabled,
623
- agents,
624
- loop_prevention: {
625
- max_chain_length: 3,
626
- global_cooldown_ms: 2000,
627
- chain_window_ms: 60000,
628
- },
629
- };
630
- await (0, config_manager_js_1.saveConfig)(config);
631
- // Provision persona files for configured agents
632
- const personasDir = (0, config_manager_js_1.expandPath)('~/.mama/personas');
633
- if (!(0, node_fs_1.existsSync)(personasDir)) {
634
- (0, node_fs_1.mkdirSync)(personasDir, { recursive: true });
635
- }
636
- const templatesDir = (0, node_path_1.resolve)(__dirname, '../../templates/personas');
637
- const copiedPersonas = [];
638
- if ((0, node_fs_1.existsSync)(templatesDir)) {
639
- for (const id of Object.keys(agents)) {
640
- const personaFile = (0, node_path_1.join)(personasDir, `${id}.md`);
641
- const templateFile = (0, node_path_1.join)(templatesDir, `${id}.md`);
642
- if (!(0, node_fs_1.existsSync)(personaFile) && (0, node_fs_1.existsSync)(templateFile)) {
643
- (0, node_fs_1.copyFileSync)(templateFile, personaFile);
644
- copiedPersonas.push(`${id}.md`);
645
- }
646
- }
647
- }
648
- const personaMsg = copiedPersonas.length > 0 ? ` Persona files created: ${copiedPersonas.join(', ')}.` : '';
649
- return {
650
- success: true,
651
- message: `Multi-agent configuration saved successfully!${personaMsg} Edit config.yaml to customize agent personas.`,
652
- };
653
- }
654
- catch (error) {
655
- return {
656
- success: false,
657
- message: 'Failed to save multi-agent configuration',
658
- error: error instanceof Error ? error.message : String(error),
659
- };
660
- }
661
- }
662
- function generateIntegrationGuide(options) {
663
- const role = options.role || 'default';
664
- const examples = ROLE_EXAMPLES[role] || ROLE_EXAMPLES.default;
665
- let content = INTEGRATION_INSTRUCTIONS;
666
- content += '\n\n---\n\n';
667
- content += examples;
668
- if (options.discord ||
669
- options.slack ||
670
- options.telegram ||
671
- options.cronJobs ||
672
- options.heartbeat ||
673
- options.skills) {
674
- content += '\n\n---\n\n## Your Configuration\n\n';
675
- if (options.discord?.enabled) {
676
- content += '### Discord\n';
677
- content += '✅ Enabled\n';
678
- content += `- Guilds configured: ${Object.keys(options.discord.guilds || {}).length}\n\n`;
679
- }
680
- if (options.slack?.enabled) {
681
- content += '### Slack\n';
682
- content += '✅ Enabled\n';
683
- content += `- Workspaces: ${options.slack.workspaces?.length || 0}\n\n`;
684
- }
685
- if (options.telegram?.enabled) {
686
- content += '### Telegram\n';
687
- content += '✅ Enabled\n';
688
- content += `- Allowed chats: ${options.telegram.allowedChats?.length || 0}\n\n`;
689
- }
690
- if (options.cronJobs && options.cronJobs.length > 0) {
691
- content += '### Cron Jobs\n';
692
- content += `✅ ${options.cronJobs.length} job(s) configured:\n`;
693
- for (const job of options.cronJobs) {
694
- content += `- **${job.id}**: ${job.cronExpr} ${job.enabled ? '(enabled)' : '(disabled)'}\n`;
695
- }
696
- content += '\n';
697
- }
698
- if (options.heartbeat?.enabled) {
699
- content += '### Heartbeat\n';
700
- content += '✅ Enabled\n';
701
- content += `- Interval: ${(options.heartbeat.interval / 60000).toFixed(0)} minutes\n`;
702
- content += `- Quiet hours: ${options.heartbeat.quietStart}:00 - ${options.heartbeat.quietEnd}:00\n\n`;
703
- }
704
- if (options.skills && options.skills.length > 0) {
705
- content += '### Skills\n';
706
- content += `✅ ${options.skills.length} skill(s) configured:\n`;
707
- for (const skill of options.skills) {
708
- content += `- **${skill.id}**: ${skill.path} ${skill.enabled ? '(enabled)' : '(disabled)'}\n`;
709
- }
710
- content += '\n';
711
- }
712
- }
713
- return content;
714
- }
715
- function parseQuietHours(quietHours) {
716
- const match = quietHours.match(/^(\d{1,2})-(\d{1,2})$/);
717
- if (!match)
718
- return null;
719
- const start = parseInt(match[1], 10);
720
- const end = parseInt(match[2], 10);
721
- if (start < 0 || start > 23 || end < 0 || end > 23)
722
- return null;
723
- return { start, end };
724
- }
725
- //# sourceMappingURL=phase-7-integrations.js.map