@hailer/mcp 1.2.1 → 2.0.0-beta.10

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 (768) hide show
  1. package/.claude/agents/agent-hailer-helper.md +118 -0
  2. package/.claude/commands/debug-squad.md +13 -290
  3. package/.claude/commands/publish.md +2 -2
  4. package/.claude/commands/review-squad.md +17 -139
  5. package/.claude/skills/create-and-publish-app/SKILL.md +119 -148
  6. package/.claude/skills/hailer-app-builder/SKILL.md +24 -2
  7. package/.claude/skills/hailer-ui-guide/SKILL.md +265 -0
  8. package/.env.example +50 -1
  9. package/CLAUDE.md +141 -10
  10. package/dist/app.d.ts.map +1 -1
  11. package/dist/app.js +3 -0
  12. package/dist/app.js.map +1 -1
  13. package/dist/bot/bot-manager.d.ts +9 -6
  14. package/dist/bot/bot-manager.d.ts.map +1 -1
  15. package/dist/bot/bot-manager.js +142 -31
  16. package/dist/bot/bot-manager.js.map +1 -1
  17. package/dist/bot/bot.d.ts +59 -16
  18. package/dist/bot/bot.d.ts.map +1 -1
  19. package/dist/bot/bot.js +889 -142
  20. package/dist/bot/bot.js.map +1 -1
  21. package/dist/bot/operation-logger.d.ts.map +1 -1
  22. package/dist/bot/operation-logger.js +24 -12
  23. package/dist/bot/operation-logger.js.map +1 -1
  24. package/dist/bot/services/bot-permissions.d.ts +2 -2
  25. package/dist/bot/services/bot-permissions.d.ts.map +1 -1
  26. package/dist/bot/services/bot-permissions.js +28 -9
  27. package/dist/bot/services/bot-permissions.js.map +1 -1
  28. package/dist/bot/services/conversation-manager.d.ts +23 -23
  29. package/dist/bot/services/conversation-manager.d.ts.map +1 -1
  30. package/dist/bot/services/conversation-manager.js +52 -49
  31. package/dist/bot/services/conversation-manager.js.map +1 -1
  32. package/dist/bot/services/helper-prompt.d.ts +8 -0
  33. package/dist/bot/services/helper-prompt.d.ts.map +1 -0
  34. package/dist/bot/services/helper-prompt.js +177 -0
  35. package/dist/bot/services/helper-prompt.js.map +1 -0
  36. package/dist/bot/services/message-classifier.d.ts +16 -16
  37. package/dist/bot/services/message-classifier.d.ts.map +1 -1
  38. package/dist/bot/services/message-classifier.js +55 -49
  39. package/dist/bot/services/message-classifier.js.map +1 -1
  40. package/dist/bot/services/message-formatter.d.ts +38 -38
  41. package/dist/bot/services/message-formatter.d.ts.map +1 -1
  42. package/dist/bot/services/message-formatter.js +81 -74
  43. package/dist/bot/services/message-formatter.js.map +1 -1
  44. package/dist/bot/services/permission-guard.d.ts.map +1 -1
  45. package/dist/bot/services/permission-guard.js +20 -10
  46. package/dist/bot/services/permission-guard.js.map +1 -1
  47. package/dist/bot/services/signal-router.d.ts.map +1 -1
  48. package/dist/bot/services/signal-router.js +11 -6
  49. package/dist/bot/services/signal-router.js.map +1 -1
  50. package/dist/bot/services/system-prompt.d.ts +14 -0
  51. package/dist/bot/services/system-prompt.d.ts.map +1 -1
  52. package/dist/bot/services/system-prompt.js +179 -4
  53. package/dist/bot/services/system-prompt.js.map +1 -1
  54. package/dist/bot/services/token-billing.d.ts +23 -23
  55. package/dist/bot/services/token-billing.d.ts.map +1 -1
  56. package/dist/bot/services/token-billing.js +51 -36
  57. package/dist/bot/services/token-billing.js.map +1 -1
  58. package/dist/bot/services/types.d.ts +3 -1
  59. package/dist/bot/services/types.d.ts.map +1 -1
  60. package/dist/bot/services/typing-indicator.d.ts +8 -8
  61. package/dist/bot/services/typing-indicator.d.ts.map +1 -1
  62. package/dist/bot/services/typing-indicator.js +12 -10
  63. package/dist/bot/services/typing-indicator.js.map +1 -1
  64. package/dist/bot/services/workspace-refresh.d.ts +3 -3
  65. package/dist/bot/services/workspace-refresh.d.ts.map +1 -1
  66. package/dist/bot/services/workspace-refresh.js +23 -13
  67. package/dist/bot/services/workspace-refresh.js.map +1 -1
  68. package/dist/bot/tool-executor.d.ts +10 -6
  69. package/dist/bot/tool-executor.d.ts.map +1 -1
  70. package/dist/bot/tool-executor.js +12 -6
  71. package/dist/bot/tool-executor.js.map +1 -1
  72. package/dist/bot/workspace-overview.d.ts.map +1 -1
  73. package/dist/bot/workspace-overview.js +6 -3
  74. package/dist/bot/workspace-overview.js.map +1 -1
  75. package/dist/bot-config/activity-error.d.ts +47 -0
  76. package/dist/bot-config/activity-error.d.ts.map +1 -0
  77. package/dist/bot-config/activity-error.js +67 -0
  78. package/dist/bot-config/activity-error.js.map +1 -0
  79. package/dist/bot-config/context.d.ts +4 -4
  80. package/dist/bot-config/context.d.ts.map +1 -1
  81. package/dist/bot-config/context.js +18 -14
  82. package/dist/bot-config/context.js.map +1 -1
  83. package/dist/bot-config/events.d.ts +45 -0
  84. package/dist/bot-config/events.d.ts.map +1 -0
  85. package/dist/bot-config/events.js +51 -0
  86. package/dist/bot-config/events.js.map +1 -0
  87. package/dist/bot-config/index.d.ts +3 -0
  88. package/dist/bot-config/index.d.ts.map +1 -1
  89. package/dist/bot-config/index.js +8 -1
  90. package/dist/bot-config/index.js.map +1 -1
  91. package/dist/bot-config/loader.d.ts +3 -0
  92. package/dist/bot-config/loader.d.ts.map +1 -1
  93. package/dist/bot-config/loader.js +45 -20
  94. package/dist/bot-config/loader.js.map +1 -1
  95. package/dist/bot-config/persistence.js.map +1 -1
  96. package/dist/bot-config/reconciler.d.ts +11 -0
  97. package/dist/bot-config/reconciler.d.ts.map +1 -0
  98. package/dist/bot-config/reconciler.js +121 -0
  99. package/dist/bot-config/reconciler.js.map +1 -0
  100. package/dist/bot-config/state.d.ts.map +1 -1
  101. package/dist/bot-config/state.js.map +1 -1
  102. package/dist/bot-config/types.d.ts +32 -0
  103. package/dist/bot-config/types.d.ts.map +1 -1
  104. package/dist/bot-config/webhooks.d.ts.map +1 -1
  105. package/dist/bot-config/webhooks.js.map +1 -1
  106. package/dist/bot-config/workflow-installer.d.ts +37 -0
  107. package/dist/bot-config/workflow-installer.d.ts.map +1 -0
  108. package/dist/bot-config/workflow-installer.js +346 -0
  109. package/dist/bot-config/workflow-installer.js.map +1 -0
  110. package/dist/cli.d.ts.map +1 -1
  111. package/dist/cli.js +54 -0
  112. package/dist/cli.js.map +1 -1
  113. package/dist/config.d.ts +23 -19
  114. package/dist/config.d.ts.map +1 -1
  115. package/dist/config.js +65 -27
  116. package/dist/config.js.map +1 -1
  117. package/dist/core.d.ts +6 -4
  118. package/dist/core.d.ts.map +1 -1
  119. package/dist/core.js +11 -16
  120. package/dist/core.js.map +1 -1
  121. package/dist/lib/logger.d.ts.map +1 -1
  122. package/dist/lib/logger.js +7 -4
  123. package/dist/lib/logger.js.map +1 -1
  124. package/dist/lib/request-logger.d.ts +19 -19
  125. package/dist/lib/request-logger.d.ts.map +1 -1
  126. package/dist/lib/request-logger.js +19 -19
  127. package/dist/lib/request-logger.js.map +1 -1
  128. package/dist/mcp/UserContextCache.d.ts +28 -22
  129. package/dist/mcp/UserContextCache.d.ts.map +1 -1
  130. package/dist/mcp/UserContextCache.js +23 -23
  131. package/dist/mcp/UserContextCache.js.map +1 -1
  132. package/dist/mcp/auth.js.map +1 -1
  133. package/dist/mcp/hailer-clients.d.ts +5 -4
  134. package/dist/mcp/hailer-clients.d.ts.map +1 -1
  135. package/dist/mcp/hailer-clients.js +61 -27
  136. package/dist/mcp/hailer-clients.js.map +1 -1
  137. package/dist/mcp/hailer-rpc.d.ts +40 -0
  138. package/dist/mcp/hailer-rpc.d.ts.map +1 -0
  139. package/dist/mcp/hailer-rpc.js +43 -0
  140. package/dist/mcp/hailer-rpc.js.map +1 -0
  141. package/dist/mcp/publish-auth-injector.d.ts +22 -0
  142. package/dist/mcp/publish-auth-injector.d.ts.map +1 -0
  143. package/dist/mcp/publish-auth-injector.js +100 -0
  144. package/dist/mcp/publish-auth-injector.js.map +1 -0
  145. package/dist/mcp/session-store.d.ts +16 -16
  146. package/dist/mcp/session-store.d.ts.map +1 -1
  147. package/dist/mcp/session-store.js +16 -16
  148. package/dist/mcp/session-store.js.map +1 -1
  149. package/dist/mcp/tool-profiles.d.ts +69 -0
  150. package/dist/mcp/tool-profiles.d.ts.map +1 -0
  151. package/dist/mcp/tool-profiles.js +176 -0
  152. package/dist/mcp/tool-profiles.js.map +1 -0
  153. package/dist/mcp/tool-registry.d.ts +16 -0
  154. package/dist/mcp/tool-registry.d.ts.map +1 -1
  155. package/dist/mcp/tool-registry.js +91 -39
  156. package/dist/mcp/tool-registry.js.map +1 -1
  157. package/dist/mcp/tools/activity.d.ts.map +1 -1
  158. package/dist/mcp/tools/activity.js +398 -198
  159. package/dist/mcp/tools/activity.js.map +1 -1
  160. package/dist/mcp/tools/aliases.d.ts +11 -0
  161. package/dist/mcp/tools/aliases.d.ts.map +1 -0
  162. package/dist/mcp/tools/aliases.js +176 -0
  163. package/dist/mcp/tools/aliases.js.map +1 -0
  164. package/dist/mcp/tools/app-core.d.ts +6 -8
  165. package/dist/mcp/tools/app-core.d.ts.map +1 -1
  166. package/dist/mcp/tools/app-core.js +355 -254
  167. package/dist/mcp/tools/app-core.js.map +1 -1
  168. package/dist/mcp/tools/app-marketplace.d.ts +8 -16
  169. package/dist/mcp/tools/app-marketplace.d.ts.map +1 -1
  170. package/dist/mcp/tools/app-marketplace.js +604 -930
  171. package/dist/mcp/tools/app-marketplace.js.map +1 -1
  172. package/dist/mcp/tools/app.d.ts +4 -7
  173. package/dist/mcp/tools/app.d.ts.map +1 -1
  174. package/dist/mcp/tools/app.js +4 -7
  175. package/dist/mcp/tools/app.js.map +1 -1
  176. package/dist/mcp/tools/bot-self.d.ts +21 -0
  177. package/dist/mcp/tools/bot-self.d.ts.map +1 -0
  178. package/dist/mcp/tools/bot-self.js +174 -0
  179. package/dist/mcp/tools/bot-self.js.map +1 -0
  180. package/dist/mcp/tools/calendar.d.ts +21 -0
  181. package/dist/mcp/tools/calendar.d.ts.map +1 -0
  182. package/dist/mcp/tools/calendar.js +741 -0
  183. package/dist/mcp/tools/calendar.js.map +1 -0
  184. package/dist/mcp/tools/company.d.ts.map +1 -1
  185. package/dist/mcp/tools/company.js +2 -1
  186. package/dist/mcp/tools/company.js.map +1 -1
  187. package/dist/mcp/tools/date.js.map +1 -1
  188. package/dist/mcp/tools/discussion.d.ts +23 -3
  189. package/dist/mcp/tools/discussion.d.ts.map +1 -1
  190. package/dist/mcp/tools/discussion.js +417 -534
  191. package/dist/mcp/tools/discussion.js.map +1 -1
  192. package/dist/mcp/tools/file.d.ts.map +1 -1
  193. package/dist/mcp/tools/file.js +18 -16
  194. package/dist/mcp/tools/file.js.map +1 -1
  195. package/dist/mcp/tools/index.js +4 -4
  196. package/dist/mcp/tools/index.js.map +1 -1
  197. package/dist/mcp/tools/insight.d.ts +7 -5
  198. package/dist/mcp/tools/insight.d.ts.map +1 -1
  199. package/dist/mcp/tools/insight.js +419 -477
  200. package/dist/mcp/tools/insight.js.map +1 -1
  201. package/dist/mcp/tools/user.d.ts.map +1 -1
  202. package/dist/mcp/tools/user.js +15 -13
  203. package/dist/mcp/tools/user.js.map +1 -1
  204. package/dist/mcp/tools/workflow-permissions.d.ts +2 -4
  205. package/dist/mcp/tools/workflow-permissions.d.ts.map +1 -1
  206. package/dist/mcp/tools/workflow-permissions.js +88 -97
  207. package/dist/mcp/tools/workflow-permissions.js.map +1 -1
  208. package/dist/mcp/tools/workflow.d.ts +2 -7
  209. package/dist/mcp/tools/workflow.d.ts.map +1 -1
  210. package/dist/mcp/tools/workflow.js +817 -850
  211. package/dist/mcp/tools/workflow.js.map +1 -1
  212. package/dist/mcp/utils/api-errors.d.ts.map +1 -1
  213. package/dist/mcp/utils/api-errors.js +2 -2
  214. package/dist/mcp/utils/api-errors.js.map +1 -1
  215. package/dist/mcp/utils/data-transformers.d.ts.map +1 -1
  216. package/dist/mcp/utils/data-transformers.js +8 -4
  217. package/dist/mcp/utils/data-transformers.js.map +1 -1
  218. package/dist/mcp/utils/file-upload.d.ts.map +1 -1
  219. package/dist/mcp/utils/file-upload.js +1 -1
  220. package/dist/mcp/utils/file-upload.js.map +1 -1
  221. package/dist/mcp/utils/hailer-api-client.d.ts +81 -81
  222. package/dist/mcp/utils/hailer-api-client.d.ts.map +1 -1
  223. package/dist/mcp/utils/hailer-api-client.js +103 -101
  224. package/dist/mcp/utils/hailer-api-client.js.map +1 -1
  225. package/dist/mcp/utils/index.d.ts.map +1 -1
  226. package/dist/mcp/utils/index.js.map +1 -1
  227. package/dist/mcp/utils/logger.d.ts.map +1 -1
  228. package/dist/mcp/utils/logger.js.map +1 -1
  229. package/dist/mcp/utils/response-builder.d.ts.map +1 -1
  230. package/dist/mcp/utils/response-builder.js +8 -4
  231. package/dist/mcp/utils/response-builder.js.map +1 -1
  232. package/dist/mcp/utils/role-utils.d.ts.map +1 -1
  233. package/dist/mcp/utils/role-utils.js +6 -3
  234. package/dist/mcp/utils/role-utils.js.map +1 -1
  235. package/dist/mcp/utils/tool-helpers.d.ts.map +1 -1
  236. package/dist/mcp/utils/tool-helpers.js +2 -2
  237. package/dist/mcp/utils/tool-helpers.js.map +1 -1
  238. package/dist/mcp/utils/types.d.ts +1 -1
  239. package/dist/mcp/utils/types.d.ts.map +1 -1
  240. package/dist/mcp/utils/types.js.map +1 -1
  241. package/dist/mcp/webhook-handler.d.ts +43 -8
  242. package/dist/mcp/webhook-handler.d.ts.map +1 -1
  243. package/dist/mcp/webhook-handler.js +861 -116
  244. package/dist/mcp/webhook-handler.js.map +1 -1
  245. package/dist/mcp/workspace-admin-store.d.ts +49 -0
  246. package/dist/mcp/workspace-admin-store.d.ts.map +1 -0
  247. package/dist/mcp/workspace-admin-store.js +168 -0
  248. package/dist/mcp/workspace-admin-store.js.map +1 -0
  249. package/dist/mcp/workspace-cache.d.ts +2 -2
  250. package/dist/mcp/workspace-cache.d.ts.map +1 -1
  251. package/dist/mcp/workspace-cache.js +9 -5
  252. package/dist/mcp/workspace-cache.js.map +1 -1
  253. package/dist/mcp-server.d.ts +26 -11
  254. package/dist/mcp-server.d.ts.map +1 -1
  255. package/dist/mcp-server.js +360 -36
  256. package/dist/mcp-server.js.map +1 -1
  257. package/dist/plugins/vipunen/client.d.ts +41 -41
  258. package/dist/plugins/vipunen/client.d.ts.map +1 -1
  259. package/dist/plugins/vipunen/client.js +53 -48
  260. package/dist/plugins/vipunen/client.js.map +1 -1
  261. package/dist/plugins/vipunen/index.js.map +1 -1
  262. package/dist/plugins/vipunen/tools.d.ts.map +1 -1
  263. package/dist/plugins/vipunen/tools.js +6 -3
  264. package/dist/plugins/vipunen/tools.js.map +1 -1
  265. package/dist/public-chat/graduate.d.ts +29 -0
  266. package/dist/public-chat/graduate.d.ts.map +1 -0
  267. package/dist/public-chat/graduate.js +593 -0
  268. package/dist/public-chat/graduate.js.map +1 -0
  269. package/dist/public-chat/handler.d.ts +12 -0
  270. package/dist/public-chat/handler.d.ts.map +1 -0
  271. package/dist/public-chat/handler.js +179 -0
  272. package/dist/public-chat/handler.js.map +1 -0
  273. package/dist/public-chat/index.d.ts +16 -0
  274. package/dist/public-chat/index.d.ts.map +1 -0
  275. package/dist/public-chat/index.js +74 -0
  276. package/dist/public-chat/index.js.map +1 -0
  277. package/dist/public-chat/knowledge.d.ts +3 -0
  278. package/dist/public-chat/knowledge.d.ts.map +1 -0
  279. package/dist/public-chat/knowledge.js +1341 -0
  280. package/dist/public-chat/knowledge.js.map +1 -0
  281. package/dist/public-chat/rate-limit.d.ts +16 -0
  282. package/dist/public-chat/rate-limit.d.ts.map +1 -0
  283. package/dist/public-chat/rate-limit.js +51 -0
  284. package/dist/public-chat/rate-limit.js.map +1 -0
  285. package/dist/public-chat/session-store.d.ts +41 -0
  286. package/dist/public-chat/session-store.d.ts.map +1 -0
  287. package/dist/public-chat/session-store.js +95 -0
  288. package/dist/public-chat/session-store.js.map +1 -0
  289. package/dist/public-chat/studio-prewarm.d.ts +61 -0
  290. package/dist/public-chat/studio-prewarm.d.ts.map +1 -0
  291. package/dist/public-chat/studio-prewarm.js +162 -0
  292. package/dist/public-chat/studio-prewarm.js.map +1 -0
  293. package/dist/public-chat/system-prompt.d.ts +22 -0
  294. package/dist/public-chat/system-prompt.d.ts.map +1 -0
  295. package/dist/public-chat/system-prompt.js +428 -0
  296. package/dist/public-chat/system-prompt.js.map +1 -0
  297. package/package.json +14 -7
  298. package/scripts/build-public-chat-knowledge.py +101 -0
  299. package/scripts/probe-mcp-pricing.ts +52 -0
  300. package/scripts/smoke-public-chat-live.ts +148 -0
  301. package/scripts/smoke-public-chat.ts +110 -0
  302. package/.claude/CLAUDE.md +0 -126
  303. package/.claude/commands/app-squad.md +0 -131
  304. package/.claude/commands/audit-squad.md +0 -158
  305. package/.claude/commands/cleanup-squad.md +0 -98
  306. package/.claude/commands/config-squad.md +0 -106
  307. package/.claude/commands/crud-squad.md +0 -87
  308. package/.claude/commands/data-squad.md +0 -97
  309. package/.claude/commands/doc-squad.md +0 -65
  310. package/.claude/commands/help.md +0 -29
  311. package/.claude/commands/help:agents.md +0 -182
  312. package/.claude/commands/help:commands.md +0 -78
  313. package/.claude/commands/help:faq.md +0 -79
  314. package/.claude/commands/help:plugins.md +0 -50
  315. package/.claude/commands/help:skills.md +0 -87
  316. package/.claude/commands/help:tools.md +0 -75
  317. package/.claude/commands/hotfix-squad.md +0 -112
  318. package/.claude/commands/integration-squad.md +0 -82
  319. package/.claude/commands/janitor-squad.md +0 -167
  320. package/.claude/commands/onboard-squad.md +0 -130
  321. package/.claude/commands/swarm.md +0 -210
  322. package/.claude/commands/tool-builder.md +0 -39
  323. package/.claude/skills/publish-hailer-app/SKILL.md +0 -280
  324. package/dist/CLAUDE.md +0 -370
  325. package/dist/agents/bot-manager.d.ts +0 -48
  326. package/dist/agents/bot-manager.d.ts.map +0 -1
  327. package/dist/agents/bot-manager.js +0 -254
  328. package/dist/agents/bot-manager.js.map +0 -1
  329. package/dist/agents/bug-fixer/ai.d.ts +0 -80
  330. package/dist/agents/bug-fixer/ai.d.ts.map +0 -1
  331. package/dist/agents/bug-fixer/ai.js +0 -466
  332. package/dist/agents/bug-fixer/ai.js.map +0 -1
  333. package/dist/agents/bug-fixer/bot.d.ts +0 -92
  334. package/dist/agents/bug-fixer/bot.d.ts.map +0 -1
  335. package/dist/agents/bug-fixer/bot.js +0 -687
  336. package/dist/agents/bug-fixer/bot.js.map +0 -1
  337. package/dist/agents/bug-fixer/config.d.ts +0 -21
  338. package/dist/agents/bug-fixer/config.d.ts.map +0 -1
  339. package/dist/agents/bug-fixer/config.js +0 -218
  340. package/dist/agents/bug-fixer/config.js.map +0 -1
  341. package/dist/agents/bug-fixer/files.d.ts +0 -67
  342. package/dist/agents/bug-fixer/files.d.ts.map +0 -1
  343. package/dist/agents/bug-fixer/files.js +0 -386
  344. package/dist/agents/bug-fixer/files.js.map +0 -1
  345. package/dist/agents/bug-fixer/git.d.ts +0 -48
  346. package/dist/agents/bug-fixer/git.d.ts.map +0 -1
  347. package/dist/agents/bug-fixer/git.js +0 -298
  348. package/dist/agents/bug-fixer/git.js.map +0 -1
  349. package/dist/agents/bug-fixer/index.d.ts +0 -103
  350. package/dist/agents/bug-fixer/index.d.ts.map +0 -1
  351. package/dist/agents/bug-fixer/index.js +0 -262
  352. package/dist/agents/bug-fixer/index.js.map +0 -1
  353. package/dist/agents/bug-fixer/lsp.d.ts +0 -113
  354. package/dist/agents/bug-fixer/lsp.d.ts.map +0 -1
  355. package/dist/agents/bug-fixer/lsp.js +0 -485
  356. package/dist/agents/bug-fixer/lsp.js.map +0 -1
  357. package/dist/agents/bug-fixer/monitor.d.ts +0 -123
  358. package/dist/agents/bug-fixer/monitor.d.ts.map +0 -1
  359. package/dist/agents/bug-fixer/monitor.js +0 -629
  360. package/dist/agents/bug-fixer/monitor.js.map +0 -1
  361. package/dist/agents/bug-fixer/prompt.d.ts +0 -5
  362. package/dist/agents/bug-fixer/prompt.d.ts.map +0 -1
  363. package/dist/agents/bug-fixer/prompt.js +0 -94
  364. package/dist/agents/bug-fixer/prompt.js.map +0 -1
  365. package/dist/agents/bug-fixer/registries/pending-classification.d.ts +0 -28
  366. package/dist/agents/bug-fixer/registries/pending-classification.d.ts.map +0 -1
  367. package/dist/agents/bug-fixer/registries/pending-classification.js +0 -50
  368. package/dist/agents/bug-fixer/registries/pending-classification.js.map +0 -1
  369. package/dist/agents/bug-fixer/registries/pending-fix.d.ts +0 -33
  370. package/dist/agents/bug-fixer/registries/pending-fix.d.ts.map +0 -1
  371. package/dist/agents/bug-fixer/registries/pending-fix.js +0 -64
  372. package/dist/agents/bug-fixer/registries/pending-fix.js.map +0 -1
  373. package/dist/agents/bug-fixer/registries/pending.d.ts +0 -27
  374. package/dist/agents/bug-fixer/registries/pending.d.ts.map +0 -1
  375. package/dist/agents/bug-fixer/registries/pending.js +0 -49
  376. package/dist/agents/bug-fixer/registries/pending.js.map +0 -1
  377. package/dist/agents/bug-fixer/specialist-daemon.d.ts +0 -88
  378. package/dist/agents/bug-fixer/specialist-daemon.d.ts.map +0 -1
  379. package/dist/agents/bug-fixer/specialist-daemon.js +0 -431
  380. package/dist/agents/bug-fixer/specialist-daemon.js.map +0 -1
  381. package/dist/agents/bug-fixer/specialist.d.ts +0 -47
  382. package/dist/agents/bug-fixer/specialist.d.ts.map +0 -1
  383. package/dist/agents/bug-fixer/specialist.js +0 -327
  384. package/dist/agents/bug-fixer/specialist.js.map +0 -1
  385. package/dist/agents/bug-fixer/types.d.ts +0 -123
  386. package/dist/agents/bug-fixer/types.d.ts.map +0 -1
  387. package/dist/agents/bug-fixer/types.js +0 -9
  388. package/dist/agents/bug-fixer/types.js.map +0 -1
  389. package/dist/agents/factory.d.ts +0 -172
  390. package/dist/agents/factory.d.ts.map +0 -1
  391. package/dist/agents/factory.js +0 -706
  392. package/dist/agents/factory.js.map +0 -1
  393. package/dist/agents/hailer-expert/index.d.ts +0 -8
  394. package/dist/agents/hailer-expert/index.d.ts.map +0 -1
  395. package/dist/agents/hailer-expert/index.js +0 -14
  396. package/dist/agents/hailer-expert/index.js.map +0 -1
  397. package/dist/agents/hal/daemon.d.ts +0 -174
  398. package/dist/agents/hal/daemon.d.ts.map +0 -1
  399. package/dist/agents/hal/daemon.js +0 -1385
  400. package/dist/agents/hal/daemon.js.map +0 -1
  401. package/dist/agents/hal/definitions.d.ts +0 -42
  402. package/dist/agents/hal/definitions.d.ts.map +0 -1
  403. package/dist/agents/hal/definitions.js +0 -300
  404. package/dist/agents/hal/definitions.js.map +0 -1
  405. package/dist/agents/hal/index.d.ts +0 -3
  406. package/dist/agents/hal/index.d.ts.map +0 -1
  407. package/dist/agents/hal/index.js +0 -8
  408. package/dist/agents/hal/index.js.map +0 -1
  409. package/dist/agents/index.d.ts +0 -18
  410. package/dist/agents/index.d.ts.map +0 -1
  411. package/dist/agents/index.js +0 -48
  412. package/dist/agents/index.js.map +0 -1
  413. package/dist/agents/shared/base.d.ts +0 -253
  414. package/dist/agents/shared/base.d.ts.map +0 -1
  415. package/dist/agents/shared/base.js +0 -1122
  416. package/dist/agents/shared/base.js.map +0 -1
  417. package/dist/agents/shared/schemas/action-schema.d.ts +0 -62
  418. package/dist/agents/shared/schemas/action-schema.d.ts.map +0 -1
  419. package/dist/agents/shared/schemas/action-schema.js +0 -483
  420. package/dist/agents/shared/schemas/action-schema.js.map +0 -1
  421. package/dist/agents/shared/services/agent-registry.d.ts +0 -108
  422. package/dist/agents/shared/services/agent-registry.d.ts.map +0 -1
  423. package/dist/agents/shared/services/agent-registry.js +0 -469
  424. package/dist/agents/shared/services/agent-registry.js.map +0 -1
  425. package/dist/agents/shared/services/conversation-manager.d.ts +0 -57
  426. package/dist/agents/shared/services/conversation-manager.d.ts.map +0 -1
  427. package/dist/agents/shared/services/conversation-manager.js +0 -168
  428. package/dist/agents/shared/services/conversation-manager.js.map +0 -1
  429. package/dist/agents/shared/services/mcp-client.d.ts +0 -56
  430. package/dist/agents/shared/services/mcp-client.d.ts.map +0 -1
  431. package/dist/agents/shared/services/mcp-client.js +0 -124
  432. package/dist/agents/shared/services/mcp-client.js.map +0 -1
  433. package/dist/agents/shared/services/message-classifier.d.ts +0 -37
  434. package/dist/agents/shared/services/message-classifier.d.ts.map +0 -1
  435. package/dist/agents/shared/services/message-classifier.js +0 -203
  436. package/dist/agents/shared/services/message-classifier.js.map +0 -1
  437. package/dist/agents/shared/services/message-formatter.d.ts +0 -89
  438. package/dist/agents/shared/services/message-formatter.d.ts.map +0 -1
  439. package/dist/agents/shared/services/message-formatter.js +0 -390
  440. package/dist/agents/shared/services/message-formatter.js.map +0 -1
  441. package/dist/agents/shared/services/session-logger.d.ts +0 -162
  442. package/dist/agents/shared/services/session-logger.d.ts.map +0 -1
  443. package/dist/agents/shared/services/session-logger.js +0 -724
  444. package/dist/agents/shared/services/session-logger.js.map +0 -1
  445. package/dist/agents/shared/services/structured-output-executor.d.ts +0 -88
  446. package/dist/agents/shared/services/structured-output-executor.d.ts.map +0 -1
  447. package/dist/agents/shared/services/structured-output-executor.js +0 -296
  448. package/dist/agents/shared/services/structured-output-executor.js.map +0 -1
  449. package/dist/agents/shared/services/token-billing.d.ts +0 -72
  450. package/dist/agents/shared/services/token-billing.d.ts.map +0 -1
  451. package/dist/agents/shared/services/token-billing.js +0 -198
  452. package/dist/agents/shared/services/token-billing.js.map +0 -1
  453. package/dist/agents/shared/services/tool-executor.d.ts +0 -43
  454. package/dist/agents/shared/services/tool-executor.d.ts.map +0 -1
  455. package/dist/agents/shared/services/tool-executor.js +0 -175
  456. package/dist/agents/shared/services/tool-executor.js.map +0 -1
  457. package/dist/agents/shared/services/typing-indicator.d.ts +0 -24
  458. package/dist/agents/shared/services/typing-indicator.d.ts.map +0 -1
  459. package/dist/agents/shared/services/typing-indicator.js +0 -54
  460. package/dist/agents/shared/services/typing-indicator.js.map +0 -1
  461. package/dist/agents/shared/services/workspace-schema-cache.d.ts +0 -122
  462. package/dist/agents/shared/services/workspace-schema-cache.d.ts.map +0 -1
  463. package/dist/agents/shared/services/workspace-schema-cache.js +0 -507
  464. package/dist/agents/shared/services/workspace-schema-cache.js.map +0 -1
  465. package/dist/agents/shared/specialist.d.ts +0 -91
  466. package/dist/agents/shared/specialist.d.ts.map +0 -1
  467. package/dist/agents/shared/specialist.js +0 -399
  468. package/dist/agents/shared/specialist.js.map +0 -1
  469. package/dist/agents/shared/tool-schema-loader.d.ts +0 -65
  470. package/dist/agents/shared/tool-schema-loader.d.ts.map +0 -1
  471. package/dist/agents/shared/tool-schema-loader.js +0 -238
  472. package/dist/agents/shared/tool-schema-loader.js.map +0 -1
  473. package/dist/agents/shared/types.d.ts +0 -190
  474. package/dist/agents/shared/types.d.ts.map +0 -1
  475. package/dist/agents/shared/types.js +0 -13
  476. package/dist/agents/shared/types.js.map +0 -1
  477. package/dist/bot/bot-config.d.ts +0 -37
  478. package/dist/bot/bot-config.d.ts.map +0 -1
  479. package/dist/bot/bot-config.js +0 -219
  480. package/dist/bot/bot-config.js.map +0 -1
  481. package/dist/bot/services/__tests__/permission-guard.test.d.ts +0 -2
  482. package/dist/bot/services/__tests__/permission-guard.test.d.ts.map +0 -1
  483. package/dist/bot/services/__tests__/permission-guard.test.js +0 -357
  484. package/dist/bot/services/__tests__/permission-guard.test.js.map +0 -1
  485. package/dist/bot/services/session-logger.d.ts +0 -162
  486. package/dist/bot/services/session-logger.d.ts.map +0 -1
  487. package/dist/bot/services/session-logger.js +0 -724
  488. package/dist/bot/services/session-logger.js.map +0 -1
  489. package/dist/bot/services/workspace-schema-cache.d.ts +0 -122
  490. package/dist/bot/services/workspace-schema-cache.d.ts.map +0 -1
  491. package/dist/bot/services/workspace-schema-cache.js +0 -506
  492. package/dist/bot/services/workspace-schema-cache.js.map +0 -1
  493. package/dist/bot-config/tools.d.ts +0 -28
  494. package/dist/bot-config/tools.d.ts.map +0 -1
  495. package/dist/bot-config/tools.js +0 -279
  496. package/dist/bot-config/tools.js.map +0 -1
  497. package/dist/client/agents/base.d.ts +0 -207
  498. package/dist/client/agents/base.d.ts.map +0 -1
  499. package/dist/client/agents/base.js +0 -744
  500. package/dist/client/agents/base.js.map +0 -1
  501. package/dist/client/agents/definitions.d.ts +0 -53
  502. package/dist/client/agents/definitions.d.ts.map +0 -1
  503. package/dist/client/agents/definitions.js +0 -263
  504. package/dist/client/agents/definitions.js.map +0 -1
  505. package/dist/client/agents/orchestrator.d.ts +0 -141
  506. package/dist/client/agents/orchestrator.d.ts.map +0 -1
  507. package/dist/client/agents/orchestrator.js +0 -1062
  508. package/dist/client/agents/orchestrator.js.map +0 -1
  509. package/dist/client/agents/specialist.d.ts +0 -86
  510. package/dist/client/agents/specialist.d.ts.map +0 -1
  511. package/dist/client/agents/specialist.js +0 -340
  512. package/dist/client/agents/specialist.js.map +0 -1
  513. package/dist/client/bot-entrypoint.d.ts +0 -7
  514. package/dist/client/bot-entrypoint.d.ts.map +0 -1
  515. package/dist/client/bot-entrypoint.js +0 -103
  516. package/dist/client/bot-entrypoint.js.map +0 -1
  517. package/dist/client/bot-manager.d.ts +0 -44
  518. package/dist/client/bot-manager.d.ts.map +0 -1
  519. package/dist/client/bot-manager.js +0 -173
  520. package/dist/client/bot-manager.js.map +0 -1
  521. package/dist/client/bot-runner.d.ts +0 -35
  522. package/dist/client/bot-runner.d.ts.map +0 -1
  523. package/dist/client/bot-runner.js +0 -188
  524. package/dist/client/bot-runner.js.map +0 -1
  525. package/dist/client/chat-agent-daemon.d.ts +0 -464
  526. package/dist/client/chat-agent-daemon.d.ts.map +0 -1
  527. package/dist/client/chat-agent-daemon.js +0 -1774
  528. package/dist/client/chat-agent-daemon.js.map +0 -1
  529. package/dist/client/daemon-factory.d.ts +0 -106
  530. package/dist/client/daemon-factory.d.ts.map +0 -1
  531. package/dist/client/daemon-factory.js +0 -301
  532. package/dist/client/daemon-factory.js.map +0 -1
  533. package/dist/client/factory.d.ts +0 -111
  534. package/dist/client/factory.d.ts.map +0 -1
  535. package/dist/client/factory.js +0 -314
  536. package/dist/client/factory.js.map +0 -1
  537. package/dist/client/index.d.ts +0 -17
  538. package/dist/client/index.d.ts.map +0 -1
  539. package/dist/client/index.js +0 -38
  540. package/dist/client/index.js.map +0 -1
  541. package/dist/client/multi-bot-manager.d.ts +0 -42
  542. package/dist/client/multi-bot-manager.d.ts.map +0 -1
  543. package/dist/client/multi-bot-manager.js +0 -161
  544. package/dist/client/multi-bot-manager.js.map +0 -1
  545. package/dist/client/orchestrator-daemon.d.ts +0 -87
  546. package/dist/client/orchestrator-daemon.d.ts.map +0 -1
  547. package/dist/client/orchestrator-daemon.js +0 -444
  548. package/dist/client/orchestrator-daemon.js.map +0 -1
  549. package/dist/client/server.d.ts +0 -8
  550. package/dist/client/server.d.ts.map +0 -1
  551. package/dist/client/server.js +0 -251
  552. package/dist/client/server.js.map +0 -1
  553. package/dist/client/services/agent-registry.d.ts +0 -108
  554. package/dist/client/services/agent-registry.d.ts.map +0 -1
  555. package/dist/client/services/agent-registry.js +0 -630
  556. package/dist/client/services/agent-registry.js.map +0 -1
  557. package/dist/client/services/conversation-manager.d.ts +0 -50
  558. package/dist/client/services/conversation-manager.d.ts.map +0 -1
  559. package/dist/client/services/conversation-manager.js +0 -136
  560. package/dist/client/services/conversation-manager.js.map +0 -1
  561. package/dist/client/services/mcp-client.d.ts +0 -48
  562. package/dist/client/services/mcp-client.d.ts.map +0 -1
  563. package/dist/client/services/mcp-client.js +0 -105
  564. package/dist/client/services/mcp-client.js.map +0 -1
  565. package/dist/client/services/message-classifier.d.ts +0 -37
  566. package/dist/client/services/message-classifier.d.ts.map +0 -1
  567. package/dist/client/services/message-classifier.js +0 -187
  568. package/dist/client/services/message-classifier.js.map +0 -1
  569. package/dist/client/services/message-formatter.d.ts +0 -84
  570. package/dist/client/services/message-formatter.d.ts.map +0 -1
  571. package/dist/client/services/message-formatter.js +0 -353
  572. package/dist/client/services/message-formatter.js.map +0 -1
  573. package/dist/client/services/session-logger.d.ts +0 -106
  574. package/dist/client/services/session-logger.d.ts.map +0 -1
  575. package/dist/client/services/session-logger.js +0 -446
  576. package/dist/client/services/session-logger.js.map +0 -1
  577. package/dist/client/services/tool-executor.d.ts +0 -41
  578. package/dist/client/services/tool-executor.d.ts.map +0 -1
  579. package/dist/client/services/tool-executor.js +0 -169
  580. package/dist/client/services/tool-executor.js.map +0 -1
  581. package/dist/client/services/workspace-schema-cache.d.ts +0 -149
  582. package/dist/client/services/workspace-schema-cache.d.ts.map +0 -1
  583. package/dist/client/services/workspace-schema-cache.js +0 -732
  584. package/dist/client/services/workspace-schema-cache.js.map +0 -1
  585. package/dist/client/specialist-daemon.d.ts +0 -77
  586. package/dist/client/specialist-daemon.d.ts.map +0 -1
  587. package/dist/client/specialist-daemon.js +0 -197
  588. package/dist/client/specialist-daemon.js.map +0 -1
  589. package/dist/client/specialists.d.ts +0 -53
  590. package/dist/client/specialists.d.ts.map +0 -1
  591. package/dist/client/specialists.js +0 -178
  592. package/dist/client/specialists.js.map +0 -1
  593. package/dist/client/tool-schema-loader.d.ts +0 -62
  594. package/dist/client/tool-schema-loader.d.ts.map +0 -1
  595. package/dist/client/tool-schema-loader.js +0 -232
  596. package/dist/client/tool-schema-loader.js.map +0 -1
  597. package/dist/client/types.d.ts +0 -327
  598. package/dist/client/types.d.ts.map +0 -1
  599. package/dist/client/types.js +0 -121
  600. package/dist/client/types.js.map +0 -1
  601. package/dist/commands/seed-config.d.ts +0 -9
  602. package/dist/commands/seed-config.d.ts.map +0 -1
  603. package/dist/commands/seed-config.js +0 -377
  604. package/dist/commands/seed-config.js.map +0 -1
  605. package/dist/commands/setup.d.ts +0 -11
  606. package/dist/commands/setup.d.ts.map +0 -1
  607. package/dist/commands/setup.js +0 -320
  608. package/dist/commands/setup.js.map +0 -1
  609. package/dist/lib/discussion-lock.d.ts +0 -42
  610. package/dist/lib/discussion-lock.d.ts.map +0 -1
  611. package/dist/lib/discussion-lock.js +0 -110
  612. package/dist/lib/discussion-lock.js.map +0 -1
  613. package/dist/mcp/signal-handler.d.ts +0 -82
  614. package/dist/mcp/signal-handler.d.ts.map +0 -1
  615. package/dist/mcp/signal-handler.js +0 -406
  616. package/dist/mcp/signal-handler.js.map +0 -1
  617. package/dist/mcp/tools/__tests__/discussion-forward.test.d.ts +0 -2
  618. package/dist/mcp/tools/__tests__/discussion-forward.test.d.ts.map +0 -1
  619. package/dist/mcp/tools/__tests__/discussion-forward.test.js +0 -218
  620. package/dist/mcp/tools/__tests__/discussion-forward.test.js.map +0 -1
  621. package/dist/mcp/tools/app-member.d.ts +0 -14
  622. package/dist/mcp/tools/app-member.d.ts.map +0 -1
  623. package/dist/mcp/tools/app-member.js +0 -195
  624. package/dist/mcp/tools/app-member.js.map +0 -1
  625. package/dist/mcp/tools/app-scaffold.d.ts +0 -14
  626. package/dist/mcp/tools/app-scaffold.d.ts.map +0 -1
  627. package/dist/mcp/tools/app-scaffold.js +0 -581
  628. package/dist/mcp/tools/app-scaffold.js.map +0 -1
  629. package/dist/mcp/tools/bot-config/constants.d.ts +0 -23
  630. package/dist/mcp/tools/bot-config/constants.d.ts.map +0 -1
  631. package/dist/mcp/tools/bot-config/constants.js +0 -94
  632. package/dist/mcp/tools/bot-config/constants.js.map +0 -1
  633. package/dist/mcp/tools/bot-config/core.d.ts +0 -253
  634. package/dist/mcp/tools/bot-config/core.d.ts.map +0 -1
  635. package/dist/mcp/tools/bot-config/core.js +0 -2456
  636. package/dist/mcp/tools/bot-config/core.js.map +0 -1
  637. package/dist/mcp/tools/bot-config/index.d.ts +0 -10
  638. package/dist/mcp/tools/bot-config/index.d.ts.map +0 -1
  639. package/dist/mcp/tools/bot-config/index.js +0 -59
  640. package/dist/mcp/tools/bot-config/index.js.map +0 -1
  641. package/dist/mcp/tools/bot-config/tools.d.ts +0 -7
  642. package/dist/mcp/tools/bot-config/tools.d.ts.map +0 -1
  643. package/dist/mcp/tools/bot-config/tools.js +0 -15
  644. package/dist/mcp/tools/bot-config/tools.js.map +0 -1
  645. package/dist/mcp/tools/bot-config/types.d.ts +0 -50
  646. package/dist/mcp/tools/bot-config/types.d.ts.map +0 -1
  647. package/dist/mcp/tools/bot-config/types.js +0 -6
  648. package/dist/mcp/tools/bot-config/types.js.map +0 -1
  649. package/dist/mcp/tools/bug-fixer-tools.d.ts +0 -45
  650. package/dist/mcp/tools/bug-fixer-tools.d.ts.map +0 -1
  651. package/dist/mcp/tools/bug-fixer-tools.js +0 -1096
  652. package/dist/mcp/tools/bug-fixer-tools.js.map +0 -1
  653. package/dist/mcp/tools/document.d.ts +0 -11
  654. package/dist/mcp/tools/document.d.ts.map +0 -1
  655. package/dist/mcp/tools/document.js +0 -741
  656. package/dist/mcp/tools/document.js.map +0 -1
  657. package/dist/mcp/tools/investigate.d.ts +0 -9
  658. package/dist/mcp/tools/investigate.d.ts.map +0 -1
  659. package/dist/mcp/tools/investigate.js +0 -254
  660. package/dist/mcp/tools/investigate.js.map +0 -1
  661. package/dist/mcp/utils/pagination.d.ts +0 -40
  662. package/dist/mcp/utils/pagination.d.ts.map +0 -1
  663. package/dist/mcp/utils/pagination.js +0 -55
  664. package/dist/mcp/utils/pagination.js.map +0 -1
  665. package/dist/modules/bug-reports/bug-config.d.ts +0 -25
  666. package/dist/modules/bug-reports/bug-config.d.ts.map +0 -1
  667. package/dist/modules/bug-reports/bug-config.js +0 -187
  668. package/dist/modules/bug-reports/bug-config.js.map +0 -1
  669. package/dist/modules/bug-reports/bug-monitor.d.ts +0 -108
  670. package/dist/modules/bug-reports/bug-monitor.d.ts.map +0 -1
  671. package/dist/modules/bug-reports/bug-monitor.js +0 -510
  672. package/dist/modules/bug-reports/bug-monitor.js.map +0 -1
  673. package/dist/modules/bug-reports/giuseppe-agent.d.ts +0 -58
  674. package/dist/modules/bug-reports/giuseppe-agent.d.ts.map +0 -1
  675. package/dist/modules/bug-reports/giuseppe-agent.js +0 -467
  676. package/dist/modules/bug-reports/giuseppe-agent.js.map +0 -1
  677. package/dist/modules/bug-reports/giuseppe-ai.d.ts +0 -83
  678. package/dist/modules/bug-reports/giuseppe-ai.d.ts.map +0 -1
  679. package/dist/modules/bug-reports/giuseppe-ai.js +0 -466
  680. package/dist/modules/bug-reports/giuseppe-ai.js.map +0 -1
  681. package/dist/modules/bug-reports/giuseppe-bot.d.ts +0 -110
  682. package/dist/modules/bug-reports/giuseppe-bot.d.ts.map +0 -1
  683. package/dist/modules/bug-reports/giuseppe-bot.js +0 -804
  684. package/dist/modules/bug-reports/giuseppe-bot.js.map +0 -1
  685. package/dist/modules/bug-reports/giuseppe-daemon.d.ts +0 -80
  686. package/dist/modules/bug-reports/giuseppe-daemon.d.ts.map +0 -1
  687. package/dist/modules/bug-reports/giuseppe-daemon.js +0 -617
  688. package/dist/modules/bug-reports/giuseppe-daemon.js.map +0 -1
  689. package/dist/modules/bug-reports/giuseppe-files.d.ts +0 -64
  690. package/dist/modules/bug-reports/giuseppe-files.d.ts.map +0 -1
  691. package/dist/modules/bug-reports/giuseppe-files.js +0 -375
  692. package/dist/modules/bug-reports/giuseppe-files.js.map +0 -1
  693. package/dist/modules/bug-reports/giuseppe-git.d.ts +0 -48
  694. package/dist/modules/bug-reports/giuseppe-git.d.ts.map +0 -1
  695. package/dist/modules/bug-reports/giuseppe-git.js +0 -298
  696. package/dist/modules/bug-reports/giuseppe-git.js.map +0 -1
  697. package/dist/modules/bug-reports/giuseppe-lsp.d.ts +0 -113
  698. package/dist/modules/bug-reports/giuseppe-lsp.d.ts.map +0 -1
  699. package/dist/modules/bug-reports/giuseppe-lsp.js +0 -485
  700. package/dist/modules/bug-reports/giuseppe-lsp.js.map +0 -1
  701. package/dist/modules/bug-reports/giuseppe-prompt.d.ts +0 -5
  702. package/dist/modules/bug-reports/giuseppe-prompt.d.ts.map +0 -1
  703. package/dist/modules/bug-reports/giuseppe-prompt.js +0 -94
  704. package/dist/modules/bug-reports/giuseppe-prompt.js.map +0 -1
  705. package/dist/modules/bug-reports/index.d.ts +0 -77
  706. package/dist/modules/bug-reports/index.d.ts.map +0 -1
  707. package/dist/modules/bug-reports/index.js +0 -215
  708. package/dist/modules/bug-reports/index.js.map +0 -1
  709. package/dist/modules/bug-reports/pending-classification-registry.d.ts +0 -28
  710. package/dist/modules/bug-reports/pending-classification-registry.d.ts.map +0 -1
  711. package/dist/modules/bug-reports/pending-classification-registry.js +0 -50
  712. package/dist/modules/bug-reports/pending-classification-registry.js.map +0 -1
  713. package/dist/modules/bug-reports/pending-fix-registry.d.ts +0 -30
  714. package/dist/modules/bug-reports/pending-fix-registry.d.ts.map +0 -1
  715. package/dist/modules/bug-reports/pending-fix-registry.js +0 -42
  716. package/dist/modules/bug-reports/pending-fix-registry.js.map +0 -1
  717. package/dist/modules/bug-reports/pending-registry.d.ts +0 -27
  718. package/dist/modules/bug-reports/pending-registry.d.ts.map +0 -1
  719. package/dist/modules/bug-reports/pending-registry.js +0 -49
  720. package/dist/modules/bug-reports/pending-registry.js.map +0 -1
  721. package/dist/modules/bug-reports/types.d.ts +0 -123
  722. package/dist/modules/bug-reports/types.d.ts.map +0 -1
  723. package/dist/modules/bug-reports/types.js +0 -9
  724. package/dist/modules/bug-reports/types.js.map +0 -1
  725. package/dist/plugins/bug-fixer/index.d.ts +0 -2
  726. package/dist/plugins/bug-fixer/index.d.ts.map +0 -1
  727. package/dist/plugins/bug-fixer/index.js +0 -18
  728. package/dist/plugins/bug-fixer/index.js.map +0 -1
  729. package/dist/plugins/bug-fixer/tools.d.ts +0 -45
  730. package/dist/plugins/bug-fixer/tools.d.ts.map +0 -1
  731. package/dist/plugins/bug-fixer/tools.js +0 -1096
  732. package/dist/plugins/bug-fixer/tools.js.map +0 -1
  733. package/dist/plugins/vipunen/__tests__/tools.test.d.ts +0 -10
  734. package/dist/plugins/vipunen/__tests__/tools.test.d.ts.map +0 -1
  735. package/dist/plugins/vipunen/__tests__/tools.test.js +0 -646
  736. package/dist/plugins/vipunen/__tests__/tools.test.js.map +0 -1
  737. package/dist/routes/agents.d.ts +0 -44
  738. package/dist/routes/agents.d.ts.map +0 -1
  739. package/dist/routes/agents.js +0 -311
  740. package/dist/routes/agents.js.map +0 -1
  741. package/dist/services/agent-credential-store.d.ts +0 -73
  742. package/dist/services/agent-credential-store.d.ts.map +0 -1
  743. package/dist/services/agent-credential-store.js +0 -212
  744. package/dist/services/agent-credential-store.js.map +0 -1
  745. package/dist/stdio-server.d.ts +0 -14
  746. package/dist/stdio-server.d.ts.map +0 -1
  747. package/dist/stdio-server.js +0 -101
  748. package/dist/stdio-server.js.map +0 -1
  749. package/dist/workspace/context.d.ts +0 -148
  750. package/dist/workspace/context.d.ts.map +0 -1
  751. package/dist/workspace/context.js +0 -339
  752. package/dist/workspace/context.js.map +0 -1
  753. package/dist/workspace/credentials.d.ts +0 -55
  754. package/dist/workspace/credentials.d.ts.map +0 -1
  755. package/dist/workspace/credentials.js +0 -239
  756. package/dist/workspace/credentials.js.map +0 -1
  757. package/dist/workspace/index.d.ts +0 -21
  758. package/dist/workspace/index.d.ts.map +0 -1
  759. package/dist/workspace/index.js +0 -45
  760. package/dist/workspace/index.js.map +0 -1
  761. package/dist/workspace/loader.d.ts +0 -27
  762. package/dist/workspace/loader.d.ts.map +0 -1
  763. package/dist/workspace/loader.js +0 -222
  764. package/dist/workspace/loader.js.map +0 -1
  765. package/dist/workspace/schema.d.ts +0 -37
  766. package/dist/workspace/schema.d.ts.map +0 -1
  767. package/dist/workspace/schema.js +0 -192
  768. package/dist/workspace/schema.js.map +0 -1
@@ -1,630 +0,0 @@
1
- "use strict";
2
- /**
3
- * Agent Registry Service
4
- *
5
- * Handles registration of agents in Hailer workspace workflows:
6
- * - Agent Directory: Main registry of all bots
7
- * - Positions: Job descriptions/roles
8
- * - Teams: Groups of agents
9
- * - Tool Registry: MCP server configurations
10
- * - MCP Config: Per-agent MCP configuration
11
- *
12
- * WORKSPACE ISOLATION: Uses WorkspaceSchemaCacheService for dynamic ID lookup.
13
- * Never relies on hardcoded IDs - each workspace has its own workflow IDs.
14
- */
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.AgentRegistryService = void 0;
17
- class AgentRegistryService {
18
- schemaCache;
19
- logger;
20
- callMcpTool;
21
- getDefaultTeamId;
22
- agentDirectoryId = null;
23
- positionId = null;
24
- teamId = null;
25
- toolRegistryId = null;
26
- mcpConfigId = null;
27
- currentWorkspaceId = null;
28
- constructor(schemaCache, logger, callMcpTool, getDefaultTeamId) {
29
- this.schemaCache = schemaCache;
30
- this.logger = logger;
31
- this.callMcpTool = callMcpTool;
32
- this.getDefaultTeamId = getDefaultTeamId;
33
- }
34
- /**
35
- * Load registration data - always returns false to force fresh Hailer lookup
36
- * Kept for API compatibility with base.ts
37
- */
38
- async loadFromCache(_userId, _workspaceId) {
39
- // Always return false - agent should query Hailer on every startup
40
- // The findAgentByUserId() method in registerAllAgentData handles deduplication
41
- return false;
42
- }
43
- /**
44
- * Get agent directory ID
45
- */
46
- getAgentDirectoryId() {
47
- return this.agentDirectoryId;
48
- }
49
- /**
50
- * Get position ID
51
- */
52
- getPositionId() {
53
- return this.positionId;
54
- }
55
- /**
56
- * Get team ID
57
- */
58
- getTeamId() {
59
- return this.teamId;
60
- }
61
- /**
62
- * Register all agent data across all workflows
63
- * Uses schemaCache for dynamic workflow ID lookup
64
- */
65
- async registerAllAgentData(agentInfo, positionDetails, mcpServerUrl, toolIndex, workspaceId) {
66
- this.currentWorkspaceId = workspaceId;
67
- this.logger.info("Starting full agent registration", { workspaceId });
68
- // Verify schema cache has required workflows
69
- const agentDirSchema = this.schemaCache.getAgentDirectorySchema(workspaceId);
70
- if (!agentDirSchema) {
71
- this.logger.warn("Agent Directory workflow not found in workspace - skipping registration", { workspaceId });
72
- return;
73
- }
74
- try {
75
- // 1. Register in Agent Directory first (required for other links)
76
- await this.registerAgentInDirectory(agentInfo, workspaceId);
77
- // 2. Create/find shared Team for AI agents
78
- await this.registerTeam(workspaceId);
79
- // 3. Register MCP server in Tool Registry (per-agent)
80
- const agentName = `${agentInfo.firstName} ${agentInfo.lastName}`;
81
- await this.registerToolRegistry(mcpServerUrl, toolIndex, workspaceId, agentName);
82
- // 4. Create Position for this agent
83
- await this.registerPosition(positionDetails, workspaceId);
84
- // 5. Create MCP Config for this agent
85
- await this.registerMcpConfig(agentInfo, workspaceId);
86
- // 6. Update Agent Directory with Position and Team links
87
- await this.linkAgentToPositionAndTeam(workspaceId);
88
- this.logger.info("Full agent registration completed", {
89
- workspaceId,
90
- agentDirectoryId: this.agentDirectoryId,
91
- positionId: this.positionId,
92
- teamId: this.teamId,
93
- toolRegistryId: this.toolRegistryId,
94
- mcpConfigId: this.mcpConfigId,
95
- });
96
- }
97
- catch (error) {
98
- this.logger.warn("Agent registration incomplete", {
99
- error: error instanceof Error ? error.message : String(error),
100
- workspaceId,
101
- agentDirectoryId: this.agentDirectoryId,
102
- });
103
- }
104
- }
105
- /**
106
- * Register this agent in the Agent Directory
107
- * Uses dynamic schema lookup for workflow/field IDs
108
- */
109
- async registerAgentInDirectory(agentInfo, workspaceId) {
110
- const schema = this.schemaCache.getAgentDirectorySchema(workspaceId);
111
- if (!schema) {
112
- this.logger.debug("Skipping agent directory registration - no schema");
113
- return;
114
- }
115
- this.logger.info("Registering agent in directory", {
116
- email: agentInfo.email,
117
- userId: agentInfo.userId,
118
- workflowId: schema.workflowId,
119
- });
120
- try {
121
- // First, try to find existing agent by hailerProfile (userId) - most reliable
122
- const existingAgent = await this.findAgentByUserId(agentInfo.userId, schema);
123
- if (existingAgent) {
124
- this.agentDirectoryId = existingAgent._id;
125
- this.logger.info("Found existing agent in directory", {
126
- agentDirectoryId: this.agentDirectoryId,
127
- name: existingAgent.name,
128
- });
129
- return;
130
- }
131
- // Create new agent entry
132
- const wsTeamId = this.getDefaultTeamId();
133
- // Get phase ID - try "deployed agents" first, then partial match, then first available
134
- const phaseId = this.findPhaseId(schema.phases, ["deployed agents", "deployed", "active"]);
135
- this.logger.info("Creating new agent in directory", {
136
- firstName: agentInfo.firstName,
137
- lastName: agentInfo.lastName,
138
- teamId: wsTeamId,
139
- phaseId,
140
- });
141
- // Build fields using dynamic field IDs (support multiple key variants)
142
- const fields = {};
143
- // firstName field
144
- const firstNameFieldId = schema.fields["firstName"] || schema.fields["Etunimi"];
145
- if (firstNameFieldId)
146
- fields[firstNameFieldId] = agentInfo.firstName;
147
- // lastName field
148
- const lastNameFieldId = schema.fields["lastName"] || schema.fields["Sukunimi"];
149
- if (lastNameFieldId)
150
- fields[lastNameFieldId] = agentInfo.lastName;
151
- // description field
152
- const descFieldId = schema.fields["description"] || schema.fields["agentmemoryThatAgentUsesToFindWhatToDo"] || schema.fields["Description"];
153
- if (descFieldId)
154
- fields[descFieldId] = agentInfo.description;
155
- // email field (key varies by template)
156
- const emailFieldId = schema.fields["agentEmailInHailer"] || schema.fields["email"] || schema.fields["Email of Hailer profile"];
157
- if (emailFieldId)
158
- fields[emailFieldId] = agentInfo.email;
159
- // hailerProfile field (user ID link)
160
- const profileFieldId = schema.fields["hailerProfile"] || schema.fields["Agent Hailer profile"];
161
- if (profileFieldId)
162
- fields[profileFieldId] = agentInfo.userId;
163
- // startDate field
164
- const startDateFieldId = schema.fields["startDate"] || schema.fields["Aloituspäivämäärä"];
165
- if (startDateFieldId)
166
- fields[startDateFieldId] = Date.now();
167
- const createParams = {
168
- workflowId: schema.workflowId,
169
- name: `${agentInfo.firstName} ${agentInfo.lastName}`,
170
- phaseId,
171
- fields,
172
- };
173
- if (wsTeamId) {
174
- createParams.teamId = wsTeamId;
175
- }
176
- const result = await this.callMcpTool("create_activity", createParams);
177
- // Parse result to get the created activity ID
178
- const resultText = result?.content?.[0]?.text;
179
- if (resultText) {
180
- this.agentDirectoryId = this.extractActivityId(resultText);
181
- if (this.agentDirectoryId) {
182
- this.logger.info("Agent registered in directory", {
183
- agentDirectoryId: this.agentDirectoryId,
184
- phaseId,
185
- });
186
- }
187
- else {
188
- this.logger.warn("Could not extract activity ID from create response", {
189
- responsePreview: resultText.substring(0, 200),
190
- });
191
- }
192
- }
193
- }
194
- catch (error) {
195
- this.logger.warn("Failed to register agent in directory", {
196
- error: error instanceof Error ? error.message : String(error),
197
- });
198
- }
199
- }
200
- /**
201
- * Find phase ID by trying multiple names (case insensitive, partial match)
202
- */
203
- findPhaseId(phases, preferredNames) {
204
- // Normalize phase keys for lookup
205
- const normalizedPhases = Object.entries(phases).map(([name, id]) => ({
206
- name: name.toLowerCase(),
207
- id,
208
- }));
209
- // Try each preferred name in order
210
- for (const preferred of preferredNames) {
211
- const match = normalizedPhases.find(p => p.name.includes(preferred.toLowerCase()));
212
- if (match)
213
- return match.id;
214
- }
215
- // Fallback to first phase
216
- return Object.values(phases)[0];
217
- }
218
- /**
219
- * Find existing agent entry by hailerProfile (userId) - most reliable method
220
- */
221
- async findAgentByUserId(userId, schema) {
222
- const hailerProfileFieldId = schema.fields["hailerProfile"] || schema.fields["Agent Hailer profile"];
223
- if (!hailerProfileFieldId) {
224
- this.logger.debug("No hailerProfile field in Agent Directory schema");
225
- return null;
226
- }
227
- // Search across all phases (agent might be in any phase)
228
- const phasesToSearch = Object.values(schema.phases);
229
- for (const phaseId of phasesToSearch) {
230
- try {
231
- const result = await this.callMcpTool("list_activities", {
232
- workflowId: schema.workflowId,
233
- phaseId,
234
- fields: [hailerProfileFieldId],
235
- filters: {
236
- [hailerProfileFieldId]: {
237
- operator: "equals",
238
- value: userId,
239
- },
240
- },
241
- limit: 1,
242
- });
243
- const resultText = result?.content?.[0]?.text;
244
- if (resultText) {
245
- const activity = this.parseFirstActivity(resultText);
246
- if (activity) {
247
- this.logger.debug("Found agent by userId", { phaseId, activityId: activity._id });
248
- return activity;
249
- }
250
- }
251
- }
252
- catch (error) {
253
- this.logger.debug("Error searching phase for agent", { phaseId, error });
254
- }
255
- }
256
- return null;
257
- }
258
- /**
259
- * Parse first activity from list_activities response
260
- */
261
- parseFirstActivity(text) {
262
- try {
263
- // Try JSON parse first
264
- const jsonMatch = text.match(/```json\s*([\s\S]*?)\s*```/) ||
265
- text.match(/\[[\s\S]*?\]/);
266
- if (jsonMatch) {
267
- const jsonStr = jsonMatch[1] || jsonMatch[0];
268
- const activities = JSON.parse(jsonStr);
269
- if (Array.isArray(activities) && activities.length > 0) {
270
- return activities[0];
271
- }
272
- }
273
- }
274
- catch {
275
- // Regex fallback
276
- const idMatch = text.match(/"_id":\s*"([a-f0-9]{24})"/i);
277
- const nameMatch = text.match(/"name":\s*"([^"]+)"/i);
278
- if (idMatch) {
279
- return { _id: idMatch[1], name: nameMatch?.[1] || "Unknown" };
280
- }
281
- }
282
- return null;
283
- }
284
- /**
285
- * Register/find shared Team for AI agents
286
- */
287
- async registerTeam(workspaceId) {
288
- const schema = this.schemaCache.getTeamsSchema(workspaceId);
289
- if (!schema) {
290
- this.logger.debug("Teams workflow not found - skipping team registration");
291
- return;
292
- }
293
- const teamName = "AI Agents";
294
- const phaseId = this.findPhaseId(schema.phases, ["tiimit", "teams", "active"]);
295
- const infoFieldId = schema.fields["teamInfo"] || schema.fields["info"] || schema.fields["Tiimi-info"];
296
- try {
297
- // Search for existing team
298
- const result = await this.callMcpTool("list_activities", {
299
- workflowId: schema.workflowId,
300
- phaseId,
301
- fields: infoFieldId ? [infoFieldId] : [],
302
- search: teamName,
303
- limit: 1,
304
- });
305
- const resultText = result?.content?.[0]?.text;
306
- const existingId = this.extractActivityId(resultText);
307
- if (existingId) {
308
- this.teamId = existingId;
309
- this.logger.info("Found existing AI Agents team", { teamId: this.teamId });
310
- return;
311
- }
312
- // Create new team
313
- const wsTeamId = this.getDefaultTeamId();
314
- const fields = {};
315
- if (infoFieldId) {
316
- fields[infoFieldId] = "Team of AI agent bots that assist with workspace operations.";
317
- }
318
- const createParams = {
319
- workflowId: schema.workflowId,
320
- name: teamName,
321
- phaseId,
322
- fields,
323
- };
324
- if (wsTeamId)
325
- createParams.teamId = wsTeamId;
326
- const createResult = await this.callMcpTool("create_activity", createParams);
327
- this.teamId = this.extractActivityId(createResult?.content?.[0]?.text);
328
- this.logger.info("Created AI Agents team", { teamId: this.teamId });
329
- }
330
- catch (error) {
331
- this.logger.warn("Failed to register team", { error });
332
- }
333
- }
334
- /**
335
- * Register MCP server in Tool Registry (per-agent)
336
- */
337
- async registerToolRegistry(mcpServerUrl, toolIndex, workspaceId, agentName) {
338
- const schema = this.schemaCache.getToolRegistrySchema(workspaceId);
339
- if (!schema) {
340
- this.logger.debug("Tool Registry workflow not found - skipping");
341
- return;
342
- }
343
- // Each agent gets its own Tool Registry entry
344
- const serverName = `MCP Tools - ${agentName}`;
345
- const phaseId = this.findPhaseId(schema.phases, ["active", "new phase"]);
346
- try {
347
- // Get field IDs with fallbacks
348
- const baseUrlFieldId = schema.fields["mcpBaseUrl"] || schema.fields["baseUrl"] || schema.fields["mcp_base_url"];
349
- const protocolFieldId = schema.fields["protocolVersion"] || schema.fields["protocol_version"];
350
- const toolRegistryFieldId = schema.fields["toolRegistry"] || schema.fields["tool_registry"];
351
- // Search for existing registry entry
352
- const result = await this.callMcpTool("list_activities", {
353
- workflowId: schema.workflowId,
354
- phaseId,
355
- fields: baseUrlFieldId ? [baseUrlFieldId] : [],
356
- search: serverName,
357
- limit: 1,
358
- });
359
- const resultText = result?.content?.[0]?.text;
360
- const existingId = this.extractActivityId(resultText);
361
- if (existingId) {
362
- this.toolRegistryId = existingId;
363
- this.logger.info("Found existing Tool Registry entry", { toolRegistryId: this.toolRegistryId });
364
- return;
365
- }
366
- // Create new tool registry entry
367
- const wsTeamId = this.getDefaultTeamId();
368
- const toolNames = toolIndex.map((t) => t.name).join(", ");
369
- const fields = {};
370
- if (baseUrlFieldId)
371
- fields[baseUrlFieldId] = mcpServerUrl;
372
- if (protocolFieldId)
373
- fields[protocolFieldId] = "2024-11-05";
374
- if (toolRegistryFieldId)
375
- fields[toolRegistryFieldId] = `Available tools (${toolIndex.length}):\n${toolNames}`;
376
- const createParams = {
377
- workflowId: schema.workflowId,
378
- name: serverName,
379
- phaseId,
380
- fields,
381
- };
382
- if (wsTeamId)
383
- createParams.teamId = wsTeamId;
384
- const createResult = await this.callMcpTool("create_activity", createParams);
385
- this.toolRegistryId = this.extractActivityId(createResult?.content?.[0]?.text);
386
- this.logger.info("Created Tool Registry entry", { toolRegistryId: this.toolRegistryId });
387
- }
388
- catch (error) {
389
- this.logger.warn("Failed to register tool registry", { error });
390
- }
391
- }
392
- /**
393
- * Register Position for this agent
394
- */
395
- async registerPosition(details, workspaceId) {
396
- const schema = this.schemaCache.getPositionsSchema(workspaceId);
397
- if (!schema) {
398
- this.logger.debug("Positions workflow not found - skipping");
399
- return;
400
- }
401
- const phaseId = this.findPhaseId(schema.phases, ["positiot", "positions", "active"]);
402
- // Get field IDs with fallbacks
403
- const purposeFieldId = schema.fields["purpose"] || schema.fields["Purpose"];
404
- const personaFieldId = schema.fields["personaTone"] || schema.fields["Persona & Tone"];
405
- const capabilitiesFieldId = schema.fields["coreCapabilities"] || schema.fields["Core Capabilities"];
406
- const boundariesFieldId = schema.fields["boundaries"] || schema.fields["Boundaries & Restrictions"];
407
- const multiAllowedFieldId = schema.fields["multipleAllowed"] || schema.fields[">1 allowed in role"];
408
- const agentCountFieldId = schema.fields["numberOfAgents"] || schema.fields["Number of agents in position"];
409
- try {
410
- // Search for existing position by name
411
- const result = await this.callMcpTool("list_activities", {
412
- workflowId: schema.workflowId,
413
- phaseId,
414
- fields: purposeFieldId ? [purposeFieldId] : [],
415
- search: details.name,
416
- limit: 1,
417
- });
418
- const resultText = result?.content?.[0]?.text;
419
- const existingId = this.extractActivityId(resultText);
420
- if (existingId) {
421
- this.positionId = existingId;
422
- this.logger.info("Found existing Position", { positionId: this.positionId });
423
- return;
424
- }
425
- // Create new position
426
- const wsTeamId = this.getDefaultTeamId();
427
- const fields = {};
428
- if (purposeFieldId)
429
- fields[purposeFieldId] = details.purpose;
430
- if (personaFieldId)
431
- fields[personaFieldId] = details.personaTone;
432
- if (capabilitiesFieldId)
433
- fields[capabilitiesFieldId] = details.coreCapabilities;
434
- if (boundariesFieldId)
435
- fields[boundariesFieldId] = details.boundaries;
436
- if (multiAllowedFieldId)
437
- fields[multiAllowedFieldId] = "Yes";
438
- if (agentCountFieldId)
439
- fields[agentCountFieldId] = 1;
440
- const createParams = {
441
- workflowId: schema.workflowId,
442
- name: details.name,
443
- phaseId,
444
- fields,
445
- };
446
- if (wsTeamId)
447
- createParams.teamId = wsTeamId;
448
- const createResult = await this.callMcpTool("create_activity", createParams);
449
- this.positionId = this.extractActivityId(createResult?.content?.[0]?.text);
450
- this.logger.info("Created Position", { positionId: this.positionId });
451
- }
452
- catch (error) {
453
- this.logger.warn("Failed to register position", { error });
454
- }
455
- }
456
- /**
457
- * Register MCP Config for this agent
458
- */
459
- async registerMcpConfig(agentInfo, workspaceId) {
460
- if (!this.agentDirectoryId) {
461
- this.logger.debug("Skipping MCP config - no agent directory ID");
462
- return;
463
- }
464
- const schema = this.schemaCache.getMcpConfigSchema(workspaceId);
465
- if (!schema) {
466
- this.logger.debug("MCP Config workflow not found - skipping");
467
- return;
468
- }
469
- const configName = `${agentInfo.firstName} ${agentInfo.lastName} Config`;
470
- const phaseId = this.findPhaseId(schema.phases, ["active", "new phase"]);
471
- // Get field IDs with fallbacks
472
- const agentNameFieldId = schema.fields["agentName"] || schema.fields["agent_name"];
473
- const agentIdFieldId = schema.fields["agentId"] || schema.fields["Agent_ID"];
474
- const workspaceIdFieldId = schema.fields["workspaceId"] || schema.fields["workspace_id"];
475
- const permissionsFieldId = schema.fields["permissions"] || schema.fields["Permissions"];
476
- const permCreateFieldId = schema.fields["permissionCreate"] || schema.fields["Create"];
477
- const permReadFieldId = schema.fields["permissionRead"] || schema.fields["Read"];
478
- const permUpdateFieldId = schema.fields["permissionUpdate"] || schema.fields["Update"];
479
- const permDeleteFieldId = schema.fields["permissionDelete"] || schema.fields["Delete"];
480
- const accessToFieldId = schema.fields["accessTo"] || schema.fields["Access to"];
481
- try {
482
- // Search for existing config
483
- const result = await this.callMcpTool("list_activities", {
484
- workflowId: schema.workflowId,
485
- phaseId,
486
- fields: agentIdFieldId ? [agentIdFieldId] : [],
487
- search: configName,
488
- limit: 1,
489
- });
490
- const resultText = result?.content?.[0]?.text;
491
- const existingId = this.extractActivityId(resultText);
492
- if (existingId) {
493
- this.mcpConfigId = existingId;
494
- this.logger.info("Found existing MCP Config", { mcpConfigId: this.mcpConfigId });
495
- return;
496
- }
497
- // Create new MCP config
498
- const wsTeamId = this.getDefaultTeamId();
499
- const fields = {};
500
- if (agentNameFieldId)
501
- fields[agentNameFieldId] = this.agentDirectoryId;
502
- if (agentIdFieldId)
503
- fields[agentIdFieldId] = agentInfo.userId;
504
- if (workspaceIdFieldId)
505
- fields[workspaceIdFieldId] = workspaceId;
506
- if (permissionsFieldId)
507
- fields[permissionsFieldId] = "read, write";
508
- if (permCreateFieldId)
509
- fields[permCreateFieldId] = 1;
510
- if (permReadFieldId)
511
- fields[permReadFieldId] = 1;
512
- if (permUpdateFieldId)
513
- fields[permUpdateFieldId] = 1;
514
- if (permDeleteFieldId)
515
- fields[permDeleteFieldId] = 0;
516
- // Link to Tool Registry if available
517
- if (this.toolRegistryId && accessToFieldId) {
518
- fields[accessToFieldId] = this.toolRegistryId;
519
- }
520
- const createParams = {
521
- workflowId: schema.workflowId,
522
- name: configName,
523
- phaseId,
524
- fields,
525
- };
526
- if (wsTeamId)
527
- createParams.teamId = wsTeamId;
528
- const createResult = await this.callMcpTool("create_activity", createParams);
529
- this.mcpConfigId = this.extractActivityId(createResult?.content?.[0]?.text);
530
- this.logger.info("Created MCP Config", { mcpConfigId: this.mcpConfigId });
531
- }
532
- catch (error) {
533
- this.logger.warn("Failed to register MCP config", { error });
534
- }
535
- }
536
- /**
537
- * Link Agent Directory entry to Position and Team
538
- */
539
- async linkAgentToPositionAndTeam(workspaceId) {
540
- if (!this.agentDirectoryId) {
541
- this.logger.debug("Skipping agent linking - no agent directory ID");
542
- return;
543
- }
544
- const schema = this.schemaCache.getAgentDirectorySchema(workspaceId);
545
- if (!schema)
546
- return;
547
- // Get field IDs with fallbacks
548
- const positionFieldId = schema.fields["position"] || schema.fields["Työpositio"];
549
- const teamFieldId = schema.fields["team"] || schema.fields["Tiimi"];
550
- const updates = {};
551
- if (this.positionId && positionFieldId) {
552
- updates[positionFieldId] = this.positionId;
553
- }
554
- if (this.teamId && teamFieldId) {
555
- updates[teamFieldId] = this.teamId;
556
- }
557
- if (Object.keys(updates).length === 0) {
558
- this.logger.debug("No links to update");
559
- return;
560
- }
561
- try {
562
- await this.callMcpTool("update_activity", {
563
- activityId: this.agentDirectoryId,
564
- fields: updates,
565
- });
566
- this.logger.info("Linked agent to Position and Team", {
567
- agentDirectoryId: this.agentDirectoryId,
568
- positionId: this.positionId,
569
- teamId: this.teamId,
570
- });
571
- }
572
- catch (error) {
573
- this.logger.warn("Failed to link agent to Position/Team", { error });
574
- }
575
- }
576
- /**
577
- * Extract activity ID from MCP tool response text
578
- * Specifically looks for created activity IDs, not workflow IDs
579
- */
580
- extractActivityId(text) {
581
- if (!text)
582
- return null;
583
- // Priority 1: Look for "**ID**:" pattern from create_activity single response
584
- // Format: "- **ID**: 69576c7cce2c07784299e5a3"
585
- const boldIdMatch = text.match(/\*\*ID\*\*:\s*([a-f0-9]{24})/i);
586
- if (boldIdMatch)
587
- return boldIdMatch[1];
588
- // Priority 2: Look for "(ID: xxx," pattern from create_activity bulk response
589
- // Format: '1. "Name" (ID: 69576c7cce2c07784299e5a3, Phase: ...)'
590
- const parenIdMatch = text.match(/\(ID:\s*([a-f0-9]{24})[,)]/i);
591
- if (parenIdMatch)
592
- return parenIdMatch[1];
593
- // Priority 3: Look in JSON arrays (list_activities response format)
594
- // Use proper JSON parsing like parseFirstActivity
595
- try {
596
- const jsonMatch = text.match(/```json\s*([\s\S]*?)\s*```/) || text.match(/(\[[\s\S]*?\])/);
597
- if (jsonMatch) {
598
- const jsonStr = jsonMatch[1] || jsonMatch[0];
599
- const activities = JSON.parse(jsonStr);
600
- if (Array.isArray(activities) && activities.length > 0 && activities[0]._id) {
601
- return activities[0]._id;
602
- }
603
- }
604
- }
605
- catch {
606
- // Ignore parse errors - try regex fallback
607
- const idMatch = text.match(/"_id":\s*"([a-f0-9]{24})"/i);
608
- if (idMatch)
609
- return idMatch[1];
610
- }
611
- // Priority 4: Look for Activity ID label (from various tool responses)
612
- const activityIdMatch = text.match(/Activity ID[:\s]+`?([a-f0-9]{24})`?/i);
613
- if (activityIdMatch)
614
- return activityIdMatch[1];
615
- // Priority 5: Look for "created_ids" array (backup format)
616
- const createdIdsMatch = text.match(/"created_ids":\s*\[\s*"([a-f0-9]{24})"/i);
617
- if (createdIdsMatch)
618
- return createdIdsMatch[1];
619
- // Priority 6: Last resort - look for backtick-wrapped IDs (but NOT after "workflow")
620
- const backtickIdMatch = text.match(/`([a-f0-9]{24})`/g);
621
- if (backtickIdMatch && backtickIdMatch.length > 0) {
622
- // Get the last backtick-wrapped ID (more likely to be the activity, not workflow)
623
- const lastId = backtickIdMatch[backtickIdMatch.length - 1].replace(/`/g, '');
624
- return lastId;
625
- }
626
- return null;
627
- }
628
- }
629
- exports.AgentRegistryService = AgentRegistryService;
630
- //# sourceMappingURL=agent-registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-registry.js","sourceRoot":"","sources":["../../../src/client/services/agent-registry.ts"],"names":[],"mappings":"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"}