@hailer/mcp 1.2.1 → 1.3.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 (774) 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 +133 -143
  6. package/.claude/skills/hailer-app-builder/SKILL.md +29 -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-prep.d.ts +27 -0
  11. package/dist/app-prep.d.ts.map +1 -0
  12. package/dist/app-prep.js +94 -0
  13. package/dist/app-prep.js.map +1 -0
  14. package/dist/app.d.ts.map +1 -1
  15. package/dist/app.js +3 -0
  16. package/dist/app.js.map +1 -1
  17. package/dist/bot/bot-manager.d.ts +9 -6
  18. package/dist/bot/bot-manager.d.ts.map +1 -1
  19. package/dist/bot/bot-manager.js +142 -31
  20. package/dist/bot/bot-manager.js.map +1 -1
  21. package/dist/bot/bot.d.ts +61 -16
  22. package/dist/bot/bot.d.ts.map +1 -1
  23. package/dist/bot/bot.js +927 -151
  24. package/dist/bot/bot.js.map +1 -1
  25. package/dist/bot/operation-logger.d.ts.map +1 -1
  26. package/dist/bot/operation-logger.js +24 -12
  27. package/dist/bot/operation-logger.js.map +1 -1
  28. package/dist/bot/services/bot-permissions.d.ts +37 -5
  29. package/dist/bot/services/bot-permissions.d.ts.map +1 -1
  30. package/dist/bot/services/bot-permissions.js +159 -35
  31. package/dist/bot/services/bot-permissions.js.map +1 -1
  32. package/dist/bot/services/conversation-manager.d.ts +23 -23
  33. package/dist/bot/services/conversation-manager.d.ts.map +1 -1
  34. package/dist/bot/services/conversation-manager.js +52 -49
  35. package/dist/bot/services/conversation-manager.js.map +1 -1
  36. package/dist/bot/services/helper-prompt.d.ts +8 -0
  37. package/dist/bot/services/helper-prompt.d.ts.map +1 -0
  38. package/dist/bot/services/helper-prompt.js +177 -0
  39. package/dist/bot/services/helper-prompt.js.map +1 -0
  40. package/dist/bot/services/message-classifier.d.ts +16 -16
  41. package/dist/bot/services/message-classifier.d.ts.map +1 -1
  42. package/dist/bot/services/message-classifier.js +55 -49
  43. package/dist/bot/services/message-classifier.js.map +1 -1
  44. package/dist/bot/services/message-formatter.d.ts +47 -38
  45. package/dist/bot/services/message-formatter.d.ts.map +1 -1
  46. package/dist/bot/services/message-formatter.js +99 -80
  47. package/dist/bot/services/message-formatter.js.map +1 -1
  48. package/dist/bot/services/permission-guard.d.ts.map +1 -1
  49. package/dist/bot/services/permission-guard.js +20 -10
  50. package/dist/bot/services/permission-guard.js.map +1 -1
  51. package/dist/bot/services/signal-router.d.ts.map +1 -1
  52. package/dist/bot/services/signal-router.js +11 -6
  53. package/dist/bot/services/signal-router.js.map +1 -1
  54. package/dist/bot/services/system-prompt.d.ts +14 -0
  55. package/dist/bot/services/system-prompt.d.ts.map +1 -1
  56. package/dist/bot/services/system-prompt.js +181 -4
  57. package/dist/bot/services/system-prompt.js.map +1 -1
  58. package/dist/bot/services/token-billing.d.ts +23 -23
  59. package/dist/bot/services/token-billing.d.ts.map +1 -1
  60. package/dist/bot/services/token-billing.js +51 -36
  61. package/dist/bot/services/token-billing.js.map +1 -1
  62. package/dist/bot/services/types.d.ts +3 -1
  63. package/dist/bot/services/types.d.ts.map +1 -1
  64. package/dist/bot/services/typing-indicator.d.ts +8 -8
  65. package/dist/bot/services/typing-indicator.d.ts.map +1 -1
  66. package/dist/bot/services/typing-indicator.js +12 -10
  67. package/dist/bot/services/typing-indicator.js.map +1 -1
  68. package/dist/bot/services/workspace-refresh.d.ts +3 -3
  69. package/dist/bot/services/workspace-refresh.d.ts.map +1 -1
  70. package/dist/bot/services/workspace-refresh.js +23 -13
  71. package/dist/bot/services/workspace-refresh.js.map +1 -1
  72. package/dist/bot/tool-executor.d.ts +10 -6
  73. package/dist/bot/tool-executor.d.ts.map +1 -1
  74. package/dist/bot/tool-executor.js +12 -6
  75. package/dist/bot/tool-executor.js.map +1 -1
  76. package/dist/bot/workspace-overview.d.ts.map +1 -1
  77. package/dist/bot/workspace-overview.js +6 -3
  78. package/dist/bot/workspace-overview.js.map +1 -1
  79. package/dist/bot-config/activity-error.d.ts +47 -0
  80. package/dist/bot-config/activity-error.d.ts.map +1 -0
  81. package/dist/bot-config/activity-error.js +67 -0
  82. package/dist/bot-config/activity-error.js.map +1 -0
  83. package/dist/bot-config/context.d.ts +4 -4
  84. package/dist/bot-config/context.d.ts.map +1 -1
  85. package/dist/bot-config/context.js +18 -14
  86. package/dist/bot-config/context.js.map +1 -1
  87. package/dist/bot-config/events.d.ts +45 -0
  88. package/dist/bot-config/events.d.ts.map +1 -0
  89. package/dist/bot-config/events.js +51 -0
  90. package/dist/bot-config/events.js.map +1 -0
  91. package/dist/bot-config/index.d.ts +3 -0
  92. package/dist/bot-config/index.d.ts.map +1 -1
  93. package/dist/bot-config/index.js +8 -1
  94. package/dist/bot-config/index.js.map +1 -1
  95. package/dist/bot-config/loader.d.ts +3 -0
  96. package/dist/bot-config/loader.d.ts.map +1 -1
  97. package/dist/bot-config/loader.js +45 -20
  98. package/dist/bot-config/loader.js.map +1 -1
  99. package/dist/bot-config/persistence.js.map +1 -1
  100. package/dist/bot-config/reconciler.d.ts +11 -0
  101. package/dist/bot-config/reconciler.d.ts.map +1 -0
  102. package/dist/bot-config/reconciler.js +121 -0
  103. package/dist/bot-config/reconciler.js.map +1 -0
  104. package/dist/bot-config/state.d.ts.map +1 -1
  105. package/dist/bot-config/state.js.map +1 -1
  106. package/dist/bot-config/types.d.ts +32 -0
  107. package/dist/bot-config/types.d.ts.map +1 -1
  108. package/dist/bot-config/webhooks.d.ts.map +1 -1
  109. package/dist/bot-config/webhooks.js.map +1 -1
  110. package/dist/bot-config/workflow-installer.d.ts +37 -0
  111. package/dist/bot-config/workflow-installer.d.ts.map +1 -0
  112. package/dist/bot-config/workflow-installer.js +346 -0
  113. package/dist/bot-config/workflow-installer.js.map +1 -0
  114. package/dist/cli.d.ts +4 -1
  115. package/dist/cli.d.ts.map +1 -1
  116. package/dist/cli.js +92 -11
  117. package/dist/cli.js.map +1 -1
  118. package/dist/config.d.ts +23 -19
  119. package/dist/config.d.ts.map +1 -1
  120. package/dist/config.js +65 -27
  121. package/dist/config.js.map +1 -1
  122. package/dist/core.d.ts +6 -4
  123. package/dist/core.d.ts.map +1 -1
  124. package/dist/core.js +11 -16
  125. package/dist/core.js.map +1 -1
  126. package/dist/lib/logger.d.ts.map +1 -1
  127. package/dist/lib/logger.js +7 -4
  128. package/dist/lib/logger.js.map +1 -1
  129. package/dist/lib/request-logger.d.ts +19 -19
  130. package/dist/lib/request-logger.d.ts.map +1 -1
  131. package/dist/lib/request-logger.js +19 -19
  132. package/dist/lib/request-logger.js.map +1 -1
  133. package/dist/mcp/UserContextCache.d.ts +28 -22
  134. package/dist/mcp/UserContextCache.d.ts.map +1 -1
  135. package/dist/mcp/UserContextCache.js +23 -23
  136. package/dist/mcp/UserContextCache.js.map +1 -1
  137. package/dist/mcp/auth.js.map +1 -1
  138. package/dist/mcp/hailer-clients.d.ts +5 -4
  139. package/dist/mcp/hailer-clients.d.ts.map +1 -1
  140. package/dist/mcp/hailer-clients.js +83 -34
  141. package/dist/mcp/hailer-clients.js.map +1 -1
  142. package/dist/mcp/hailer-rpc.d.ts +40 -0
  143. package/dist/mcp/hailer-rpc.d.ts.map +1 -0
  144. package/dist/mcp/hailer-rpc.js +43 -0
  145. package/dist/mcp/hailer-rpc.js.map +1 -0
  146. package/dist/mcp/publish-auth-injector.d.ts +22 -0
  147. package/dist/mcp/publish-auth-injector.d.ts.map +1 -0
  148. package/dist/mcp/publish-auth-injector.js +100 -0
  149. package/dist/mcp/publish-auth-injector.js.map +1 -0
  150. package/dist/mcp/session-store.d.ts +16 -16
  151. package/dist/mcp/session-store.d.ts.map +1 -1
  152. package/dist/mcp/session-store.js +16 -16
  153. package/dist/mcp/session-store.js.map +1 -1
  154. package/dist/mcp/tool-profiles.d.ts +69 -0
  155. package/dist/mcp/tool-profiles.d.ts.map +1 -0
  156. package/dist/mcp/tool-profiles.js +184 -0
  157. package/dist/mcp/tool-profiles.js.map +1 -0
  158. package/dist/mcp/tool-registry.d.ts +16 -0
  159. package/dist/mcp/tool-registry.d.ts.map +1 -1
  160. package/dist/mcp/tool-registry.js +91 -39
  161. package/dist/mcp/tool-registry.js.map +1 -1
  162. package/dist/mcp/tools/activity.d.ts +2 -0
  163. package/dist/mcp/tools/activity.d.ts.map +1 -1
  164. package/dist/mcp/tools/activity.js +575 -218
  165. package/dist/mcp/tools/activity.js.map +1 -1
  166. package/dist/mcp/tools/aliases.d.ts +11 -0
  167. package/dist/mcp/tools/aliases.d.ts.map +1 -0
  168. package/dist/mcp/tools/aliases.js +182 -0
  169. package/dist/mcp/tools/aliases.js.map +1 -0
  170. package/dist/mcp/tools/app-core.d.ts +6 -8
  171. package/dist/mcp/tools/app-core.d.ts.map +1 -1
  172. package/dist/mcp/tools/app-core.js +355 -254
  173. package/dist/mcp/tools/app-core.js.map +1 -1
  174. package/dist/mcp/tools/app-marketplace.d.ts +12 -16
  175. package/dist/mcp/tools/app-marketplace.d.ts.map +1 -1
  176. package/dist/mcp/tools/app-marketplace.js +748 -856
  177. package/dist/mcp/tools/app-marketplace.js.map +1 -1
  178. package/dist/mcp/tools/app.d.ts +4 -7
  179. package/dist/mcp/tools/app.d.ts.map +1 -1
  180. package/dist/mcp/tools/app.js +4 -7
  181. package/dist/mcp/tools/app.js.map +1 -1
  182. package/dist/mcp/tools/bot-self.d.ts +21 -0
  183. package/dist/mcp/tools/bot-self.d.ts.map +1 -0
  184. package/dist/mcp/tools/bot-self.js +174 -0
  185. package/dist/mcp/tools/bot-self.js.map +1 -0
  186. package/dist/mcp/tools/calendar.d.ts +21 -0
  187. package/dist/mcp/tools/calendar.d.ts.map +1 -0
  188. package/dist/mcp/tools/calendar.js +741 -0
  189. package/dist/mcp/tools/calendar.js.map +1 -0
  190. package/dist/mcp/tools/company.d.ts.map +1 -1
  191. package/dist/mcp/tools/company.js +2 -1
  192. package/dist/mcp/tools/company.js.map +1 -1
  193. package/dist/mcp/tools/date.js.map +1 -1
  194. package/dist/mcp/tools/discussion.d.ts +29 -3
  195. package/dist/mcp/tools/discussion.d.ts.map +1 -1
  196. package/dist/mcp/tools/discussion.js +419 -534
  197. package/dist/mcp/tools/discussion.js.map +1 -1
  198. package/dist/mcp/tools/file.d.ts.map +1 -1
  199. package/dist/mcp/tools/file.js +18 -16
  200. package/dist/mcp/tools/file.js.map +1 -1
  201. package/dist/mcp/tools/index.js +4 -4
  202. package/dist/mcp/tools/index.js.map +1 -1
  203. package/dist/mcp/tools/insight.d.ts +24 -5
  204. package/dist/mcp/tools/insight.d.ts.map +1 -1
  205. package/dist/mcp/tools/insight.js +513 -480
  206. package/dist/mcp/tools/insight.js.map +1 -1
  207. package/dist/mcp/tools/user.d.ts.map +1 -1
  208. package/dist/mcp/tools/user.js +15 -13
  209. package/dist/mcp/tools/user.js.map +1 -1
  210. package/dist/mcp/tools/workflow-permissions.d.ts +2 -4
  211. package/dist/mcp/tools/workflow-permissions.d.ts.map +1 -1
  212. package/dist/mcp/tools/workflow-permissions.js +88 -97
  213. package/dist/mcp/tools/workflow-permissions.js.map +1 -1
  214. package/dist/mcp/tools/workflow.d.ts +9 -7
  215. package/dist/mcp/tools/workflow.d.ts.map +1 -1
  216. package/dist/mcp/tools/workflow.js +852 -860
  217. package/dist/mcp/tools/workflow.js.map +1 -1
  218. package/dist/mcp/utils/api-errors.d.ts.map +1 -1
  219. package/dist/mcp/utils/api-errors.js +2 -2
  220. package/dist/mcp/utils/api-errors.js.map +1 -1
  221. package/dist/mcp/utils/data-transformers.d.ts +0 -3
  222. package/dist/mcp/utils/data-transformers.d.ts.map +1 -1
  223. package/dist/mcp/utils/data-transformers.js +32 -5
  224. package/dist/mcp/utils/data-transformers.js.map +1 -1
  225. package/dist/mcp/utils/file-upload.d.ts.map +1 -1
  226. package/dist/mcp/utils/file-upload.js +1 -1
  227. package/dist/mcp/utils/file-upload.js.map +1 -1
  228. package/dist/mcp/utils/hailer-api-client.d.ts +81 -81
  229. package/dist/mcp/utils/hailer-api-client.d.ts.map +1 -1
  230. package/dist/mcp/utils/hailer-api-client.js +113 -103
  231. package/dist/mcp/utils/hailer-api-client.js.map +1 -1
  232. package/dist/mcp/utils/index.d.ts.map +1 -1
  233. package/dist/mcp/utils/index.js.map +1 -1
  234. package/dist/mcp/utils/logger.d.ts.map +1 -1
  235. package/dist/mcp/utils/logger.js.map +1 -1
  236. package/dist/mcp/utils/response-builder.d.ts.map +1 -1
  237. package/dist/mcp/utils/response-builder.js +8 -4
  238. package/dist/mcp/utils/response-builder.js.map +1 -1
  239. package/dist/mcp/utils/role-utils.d.ts.map +1 -1
  240. package/dist/mcp/utils/role-utils.js +6 -3
  241. package/dist/mcp/utils/role-utils.js.map +1 -1
  242. package/dist/mcp/utils/tool-helpers.d.ts.map +1 -1
  243. package/dist/mcp/utils/tool-helpers.js +2 -2
  244. package/dist/mcp/utils/tool-helpers.js.map +1 -1
  245. package/dist/mcp/utils/types.d.ts +2 -1
  246. package/dist/mcp/utils/types.d.ts.map +1 -1
  247. package/dist/mcp/utils/types.js.map +1 -1
  248. package/dist/mcp/webhook-handler.d.ts +43 -8
  249. package/dist/mcp/webhook-handler.d.ts.map +1 -1
  250. package/dist/mcp/webhook-handler.js +861 -116
  251. package/dist/mcp/webhook-handler.js.map +1 -1
  252. package/dist/mcp/workspace-admin-store.d.ts +49 -0
  253. package/dist/mcp/workspace-admin-store.d.ts.map +1 -0
  254. package/dist/mcp/workspace-admin-store.js +168 -0
  255. package/dist/mcp/workspace-admin-store.js.map +1 -0
  256. package/dist/mcp/workspace-cache.d.ts +2 -2
  257. package/dist/mcp/workspace-cache.d.ts.map +1 -1
  258. package/dist/mcp/workspace-cache.js +9 -5
  259. package/dist/mcp/workspace-cache.js.map +1 -1
  260. package/dist/mcp-server.d.ts +26 -11
  261. package/dist/mcp-server.d.ts.map +1 -1
  262. package/dist/mcp-server.js +367 -48
  263. package/dist/mcp-server.js.map +1 -1
  264. package/dist/plugins/vipunen/client.d.ts +41 -41
  265. package/dist/plugins/vipunen/client.d.ts.map +1 -1
  266. package/dist/plugins/vipunen/client.js +53 -48
  267. package/dist/plugins/vipunen/client.js.map +1 -1
  268. package/dist/plugins/vipunen/index.js.map +1 -1
  269. package/dist/plugins/vipunen/tools.d.ts.map +1 -1
  270. package/dist/plugins/vipunen/tools.js +6 -3
  271. package/dist/plugins/vipunen/tools.js.map +1 -1
  272. package/dist/public-chat/graduate.d.ts +29 -0
  273. package/dist/public-chat/graduate.d.ts.map +1 -0
  274. package/dist/public-chat/graduate.js +593 -0
  275. package/dist/public-chat/graduate.js.map +1 -0
  276. package/dist/public-chat/handler.d.ts +12 -0
  277. package/dist/public-chat/handler.d.ts.map +1 -0
  278. package/dist/public-chat/handler.js +183 -0
  279. package/dist/public-chat/handler.js.map +1 -0
  280. package/dist/public-chat/index.d.ts +16 -0
  281. package/dist/public-chat/index.d.ts.map +1 -0
  282. package/dist/public-chat/index.js +74 -0
  283. package/dist/public-chat/index.js.map +1 -0
  284. package/dist/public-chat/knowledge.d.ts +3 -0
  285. package/dist/public-chat/knowledge.d.ts.map +1 -0
  286. package/dist/public-chat/knowledge.js +1340 -0
  287. package/dist/public-chat/knowledge.js.map +1 -0
  288. package/dist/public-chat/rate-limit.d.ts +16 -0
  289. package/dist/public-chat/rate-limit.d.ts.map +1 -0
  290. package/dist/public-chat/rate-limit.js +51 -0
  291. package/dist/public-chat/rate-limit.js.map +1 -0
  292. package/dist/public-chat/session-store.d.ts +41 -0
  293. package/dist/public-chat/session-store.d.ts.map +1 -0
  294. package/dist/public-chat/session-store.js +95 -0
  295. package/dist/public-chat/session-store.js.map +1 -0
  296. package/dist/public-chat/studio-prewarm.d.ts +61 -0
  297. package/dist/public-chat/studio-prewarm.d.ts.map +1 -0
  298. package/dist/public-chat/studio-prewarm.js +162 -0
  299. package/dist/public-chat/studio-prewarm.js.map +1 -0
  300. package/dist/public-chat/system-prompt.d.ts +22 -0
  301. package/dist/public-chat/system-prompt.d.ts.map +1 -0
  302. package/dist/public-chat/system-prompt.js +435 -0
  303. package/dist/public-chat/system-prompt.js.map +1 -0
  304. package/package.json +13 -7
  305. package/scripts/build-public-chat-knowledge.py +101 -0
  306. package/scripts/smoke-public-chat-live.ts +148 -0
  307. package/scripts/smoke-public-chat.ts +110 -0
  308. package/.claude/CLAUDE.md +0 -126
  309. package/.claude/commands/app-squad.md +0 -131
  310. package/.claude/commands/audit-squad.md +0 -158
  311. package/.claude/commands/cleanup-squad.md +0 -98
  312. package/.claude/commands/config-squad.md +0 -106
  313. package/.claude/commands/crud-squad.md +0 -87
  314. package/.claude/commands/data-squad.md +0 -97
  315. package/.claude/commands/doc-squad.md +0 -65
  316. package/.claude/commands/help.md +0 -29
  317. package/.claude/commands/help:agents.md +0 -182
  318. package/.claude/commands/help:commands.md +0 -78
  319. package/.claude/commands/help:faq.md +0 -79
  320. package/.claude/commands/help:plugins.md +0 -50
  321. package/.claude/commands/help:skills.md +0 -87
  322. package/.claude/commands/help:tools.md +0 -75
  323. package/.claude/commands/hotfix-squad.md +0 -112
  324. package/.claude/commands/integration-squad.md +0 -82
  325. package/.claude/commands/janitor-squad.md +0 -167
  326. package/.claude/commands/onboard-squad.md +0 -130
  327. package/.claude/commands/swarm.md +0 -210
  328. package/.claude/commands/tool-builder.md +0 -39
  329. package/.claude/skills/publish-hailer-app/SKILL.md +0 -280
  330. package/dist/CLAUDE.md +0 -370
  331. package/dist/agents/bot-manager.d.ts +0 -48
  332. package/dist/agents/bot-manager.d.ts.map +0 -1
  333. package/dist/agents/bot-manager.js +0 -254
  334. package/dist/agents/bot-manager.js.map +0 -1
  335. package/dist/agents/bug-fixer/ai.d.ts +0 -80
  336. package/dist/agents/bug-fixer/ai.d.ts.map +0 -1
  337. package/dist/agents/bug-fixer/ai.js +0 -466
  338. package/dist/agents/bug-fixer/ai.js.map +0 -1
  339. package/dist/agents/bug-fixer/bot.d.ts +0 -92
  340. package/dist/agents/bug-fixer/bot.d.ts.map +0 -1
  341. package/dist/agents/bug-fixer/bot.js +0 -687
  342. package/dist/agents/bug-fixer/bot.js.map +0 -1
  343. package/dist/agents/bug-fixer/config.d.ts +0 -21
  344. package/dist/agents/bug-fixer/config.d.ts.map +0 -1
  345. package/dist/agents/bug-fixer/config.js +0 -218
  346. package/dist/agents/bug-fixer/config.js.map +0 -1
  347. package/dist/agents/bug-fixer/files.d.ts +0 -67
  348. package/dist/agents/bug-fixer/files.d.ts.map +0 -1
  349. package/dist/agents/bug-fixer/files.js +0 -386
  350. package/dist/agents/bug-fixer/files.js.map +0 -1
  351. package/dist/agents/bug-fixer/git.d.ts +0 -48
  352. package/dist/agents/bug-fixer/git.d.ts.map +0 -1
  353. package/dist/agents/bug-fixer/git.js +0 -298
  354. package/dist/agents/bug-fixer/git.js.map +0 -1
  355. package/dist/agents/bug-fixer/index.d.ts +0 -103
  356. package/dist/agents/bug-fixer/index.d.ts.map +0 -1
  357. package/dist/agents/bug-fixer/index.js +0 -262
  358. package/dist/agents/bug-fixer/index.js.map +0 -1
  359. package/dist/agents/bug-fixer/lsp.d.ts +0 -113
  360. package/dist/agents/bug-fixer/lsp.d.ts.map +0 -1
  361. package/dist/agents/bug-fixer/lsp.js +0 -485
  362. package/dist/agents/bug-fixer/lsp.js.map +0 -1
  363. package/dist/agents/bug-fixer/monitor.d.ts +0 -123
  364. package/dist/agents/bug-fixer/monitor.d.ts.map +0 -1
  365. package/dist/agents/bug-fixer/monitor.js +0 -629
  366. package/dist/agents/bug-fixer/monitor.js.map +0 -1
  367. package/dist/agents/bug-fixer/prompt.d.ts +0 -5
  368. package/dist/agents/bug-fixer/prompt.d.ts.map +0 -1
  369. package/dist/agents/bug-fixer/prompt.js +0 -94
  370. package/dist/agents/bug-fixer/prompt.js.map +0 -1
  371. package/dist/agents/bug-fixer/registries/pending-classification.d.ts +0 -28
  372. package/dist/agents/bug-fixer/registries/pending-classification.d.ts.map +0 -1
  373. package/dist/agents/bug-fixer/registries/pending-classification.js +0 -50
  374. package/dist/agents/bug-fixer/registries/pending-classification.js.map +0 -1
  375. package/dist/agents/bug-fixer/registries/pending-fix.d.ts +0 -33
  376. package/dist/agents/bug-fixer/registries/pending-fix.d.ts.map +0 -1
  377. package/dist/agents/bug-fixer/registries/pending-fix.js +0 -64
  378. package/dist/agents/bug-fixer/registries/pending-fix.js.map +0 -1
  379. package/dist/agents/bug-fixer/registries/pending.d.ts +0 -27
  380. package/dist/agents/bug-fixer/registries/pending.d.ts.map +0 -1
  381. package/dist/agents/bug-fixer/registries/pending.js +0 -49
  382. package/dist/agents/bug-fixer/registries/pending.js.map +0 -1
  383. package/dist/agents/bug-fixer/specialist-daemon.d.ts +0 -88
  384. package/dist/agents/bug-fixer/specialist-daemon.d.ts.map +0 -1
  385. package/dist/agents/bug-fixer/specialist-daemon.js +0 -431
  386. package/dist/agents/bug-fixer/specialist-daemon.js.map +0 -1
  387. package/dist/agents/bug-fixer/specialist.d.ts +0 -47
  388. package/dist/agents/bug-fixer/specialist.d.ts.map +0 -1
  389. package/dist/agents/bug-fixer/specialist.js +0 -327
  390. package/dist/agents/bug-fixer/specialist.js.map +0 -1
  391. package/dist/agents/bug-fixer/types.d.ts +0 -123
  392. package/dist/agents/bug-fixer/types.d.ts.map +0 -1
  393. package/dist/agents/bug-fixer/types.js +0 -9
  394. package/dist/agents/bug-fixer/types.js.map +0 -1
  395. package/dist/agents/factory.d.ts +0 -172
  396. package/dist/agents/factory.d.ts.map +0 -1
  397. package/dist/agents/factory.js +0 -706
  398. package/dist/agents/factory.js.map +0 -1
  399. package/dist/agents/hailer-expert/index.d.ts +0 -8
  400. package/dist/agents/hailer-expert/index.d.ts.map +0 -1
  401. package/dist/agents/hailer-expert/index.js +0 -14
  402. package/dist/agents/hailer-expert/index.js.map +0 -1
  403. package/dist/agents/hal/daemon.d.ts +0 -174
  404. package/dist/agents/hal/daemon.d.ts.map +0 -1
  405. package/dist/agents/hal/daemon.js +0 -1385
  406. package/dist/agents/hal/daemon.js.map +0 -1
  407. package/dist/agents/hal/definitions.d.ts +0 -42
  408. package/dist/agents/hal/definitions.d.ts.map +0 -1
  409. package/dist/agents/hal/definitions.js +0 -300
  410. package/dist/agents/hal/definitions.js.map +0 -1
  411. package/dist/agents/hal/index.d.ts +0 -3
  412. package/dist/agents/hal/index.d.ts.map +0 -1
  413. package/dist/agents/hal/index.js +0 -8
  414. package/dist/agents/hal/index.js.map +0 -1
  415. package/dist/agents/index.d.ts +0 -18
  416. package/dist/agents/index.d.ts.map +0 -1
  417. package/dist/agents/index.js +0 -48
  418. package/dist/agents/index.js.map +0 -1
  419. package/dist/agents/shared/base.d.ts +0 -253
  420. package/dist/agents/shared/base.d.ts.map +0 -1
  421. package/dist/agents/shared/base.js +0 -1122
  422. package/dist/agents/shared/base.js.map +0 -1
  423. package/dist/agents/shared/schemas/action-schema.d.ts +0 -62
  424. package/dist/agents/shared/schemas/action-schema.d.ts.map +0 -1
  425. package/dist/agents/shared/schemas/action-schema.js +0 -483
  426. package/dist/agents/shared/schemas/action-schema.js.map +0 -1
  427. package/dist/agents/shared/services/agent-registry.d.ts +0 -108
  428. package/dist/agents/shared/services/agent-registry.d.ts.map +0 -1
  429. package/dist/agents/shared/services/agent-registry.js +0 -469
  430. package/dist/agents/shared/services/agent-registry.js.map +0 -1
  431. package/dist/agents/shared/services/conversation-manager.d.ts +0 -57
  432. package/dist/agents/shared/services/conversation-manager.d.ts.map +0 -1
  433. package/dist/agents/shared/services/conversation-manager.js +0 -168
  434. package/dist/agents/shared/services/conversation-manager.js.map +0 -1
  435. package/dist/agents/shared/services/mcp-client.d.ts +0 -56
  436. package/dist/agents/shared/services/mcp-client.d.ts.map +0 -1
  437. package/dist/agents/shared/services/mcp-client.js +0 -124
  438. package/dist/agents/shared/services/mcp-client.js.map +0 -1
  439. package/dist/agents/shared/services/message-classifier.d.ts +0 -37
  440. package/dist/agents/shared/services/message-classifier.d.ts.map +0 -1
  441. package/dist/agents/shared/services/message-classifier.js +0 -203
  442. package/dist/agents/shared/services/message-classifier.js.map +0 -1
  443. package/dist/agents/shared/services/message-formatter.d.ts +0 -89
  444. package/dist/agents/shared/services/message-formatter.d.ts.map +0 -1
  445. package/dist/agents/shared/services/message-formatter.js +0 -390
  446. package/dist/agents/shared/services/message-formatter.js.map +0 -1
  447. package/dist/agents/shared/services/session-logger.d.ts +0 -162
  448. package/dist/agents/shared/services/session-logger.d.ts.map +0 -1
  449. package/dist/agents/shared/services/session-logger.js +0 -724
  450. package/dist/agents/shared/services/session-logger.js.map +0 -1
  451. package/dist/agents/shared/services/structured-output-executor.d.ts +0 -88
  452. package/dist/agents/shared/services/structured-output-executor.d.ts.map +0 -1
  453. package/dist/agents/shared/services/structured-output-executor.js +0 -296
  454. package/dist/agents/shared/services/structured-output-executor.js.map +0 -1
  455. package/dist/agents/shared/services/token-billing.d.ts +0 -72
  456. package/dist/agents/shared/services/token-billing.d.ts.map +0 -1
  457. package/dist/agents/shared/services/token-billing.js +0 -198
  458. package/dist/agents/shared/services/token-billing.js.map +0 -1
  459. package/dist/agents/shared/services/tool-executor.d.ts +0 -43
  460. package/dist/agents/shared/services/tool-executor.d.ts.map +0 -1
  461. package/dist/agents/shared/services/tool-executor.js +0 -175
  462. package/dist/agents/shared/services/tool-executor.js.map +0 -1
  463. package/dist/agents/shared/services/typing-indicator.d.ts +0 -24
  464. package/dist/agents/shared/services/typing-indicator.d.ts.map +0 -1
  465. package/dist/agents/shared/services/typing-indicator.js +0 -54
  466. package/dist/agents/shared/services/typing-indicator.js.map +0 -1
  467. package/dist/agents/shared/services/workspace-schema-cache.d.ts +0 -122
  468. package/dist/agents/shared/services/workspace-schema-cache.d.ts.map +0 -1
  469. package/dist/agents/shared/services/workspace-schema-cache.js +0 -507
  470. package/dist/agents/shared/services/workspace-schema-cache.js.map +0 -1
  471. package/dist/agents/shared/specialist.d.ts +0 -91
  472. package/dist/agents/shared/specialist.d.ts.map +0 -1
  473. package/dist/agents/shared/specialist.js +0 -399
  474. package/dist/agents/shared/specialist.js.map +0 -1
  475. package/dist/agents/shared/tool-schema-loader.d.ts +0 -65
  476. package/dist/agents/shared/tool-schema-loader.d.ts.map +0 -1
  477. package/dist/agents/shared/tool-schema-loader.js +0 -238
  478. package/dist/agents/shared/tool-schema-loader.js.map +0 -1
  479. package/dist/agents/shared/types.d.ts +0 -190
  480. package/dist/agents/shared/types.d.ts.map +0 -1
  481. package/dist/agents/shared/types.js +0 -13
  482. package/dist/agents/shared/types.js.map +0 -1
  483. package/dist/bot/bot-config.d.ts +0 -37
  484. package/dist/bot/bot-config.d.ts.map +0 -1
  485. package/dist/bot/bot-config.js +0 -219
  486. package/dist/bot/bot-config.js.map +0 -1
  487. package/dist/bot/services/__tests__/permission-guard.test.d.ts +0 -2
  488. package/dist/bot/services/__tests__/permission-guard.test.d.ts.map +0 -1
  489. package/dist/bot/services/__tests__/permission-guard.test.js +0 -357
  490. package/dist/bot/services/__tests__/permission-guard.test.js.map +0 -1
  491. package/dist/bot/services/session-logger.d.ts +0 -162
  492. package/dist/bot/services/session-logger.d.ts.map +0 -1
  493. package/dist/bot/services/session-logger.js +0 -724
  494. package/dist/bot/services/session-logger.js.map +0 -1
  495. package/dist/bot/services/workspace-schema-cache.d.ts +0 -122
  496. package/dist/bot/services/workspace-schema-cache.d.ts.map +0 -1
  497. package/dist/bot/services/workspace-schema-cache.js +0 -506
  498. package/dist/bot/services/workspace-schema-cache.js.map +0 -1
  499. package/dist/bot-config/tools.d.ts +0 -28
  500. package/dist/bot-config/tools.d.ts.map +0 -1
  501. package/dist/bot-config/tools.js +0 -279
  502. package/dist/bot-config/tools.js.map +0 -1
  503. package/dist/client/agents/base.d.ts +0 -207
  504. package/dist/client/agents/base.d.ts.map +0 -1
  505. package/dist/client/agents/base.js +0 -744
  506. package/dist/client/agents/base.js.map +0 -1
  507. package/dist/client/agents/definitions.d.ts +0 -53
  508. package/dist/client/agents/definitions.d.ts.map +0 -1
  509. package/dist/client/agents/definitions.js +0 -263
  510. package/dist/client/agents/definitions.js.map +0 -1
  511. package/dist/client/agents/orchestrator.d.ts +0 -141
  512. package/dist/client/agents/orchestrator.d.ts.map +0 -1
  513. package/dist/client/agents/orchestrator.js +0 -1062
  514. package/dist/client/agents/orchestrator.js.map +0 -1
  515. package/dist/client/agents/specialist.d.ts +0 -86
  516. package/dist/client/agents/specialist.d.ts.map +0 -1
  517. package/dist/client/agents/specialist.js +0 -340
  518. package/dist/client/agents/specialist.js.map +0 -1
  519. package/dist/client/bot-entrypoint.d.ts +0 -7
  520. package/dist/client/bot-entrypoint.d.ts.map +0 -1
  521. package/dist/client/bot-entrypoint.js +0 -103
  522. package/dist/client/bot-entrypoint.js.map +0 -1
  523. package/dist/client/bot-manager.d.ts +0 -44
  524. package/dist/client/bot-manager.d.ts.map +0 -1
  525. package/dist/client/bot-manager.js +0 -173
  526. package/dist/client/bot-manager.js.map +0 -1
  527. package/dist/client/bot-runner.d.ts +0 -35
  528. package/dist/client/bot-runner.d.ts.map +0 -1
  529. package/dist/client/bot-runner.js +0 -188
  530. package/dist/client/bot-runner.js.map +0 -1
  531. package/dist/client/chat-agent-daemon.d.ts +0 -464
  532. package/dist/client/chat-agent-daemon.d.ts.map +0 -1
  533. package/dist/client/chat-agent-daemon.js +0 -1774
  534. package/dist/client/chat-agent-daemon.js.map +0 -1
  535. package/dist/client/daemon-factory.d.ts +0 -106
  536. package/dist/client/daemon-factory.d.ts.map +0 -1
  537. package/dist/client/daemon-factory.js +0 -301
  538. package/dist/client/daemon-factory.js.map +0 -1
  539. package/dist/client/factory.d.ts +0 -111
  540. package/dist/client/factory.d.ts.map +0 -1
  541. package/dist/client/factory.js +0 -314
  542. package/dist/client/factory.js.map +0 -1
  543. package/dist/client/index.d.ts +0 -17
  544. package/dist/client/index.d.ts.map +0 -1
  545. package/dist/client/index.js +0 -38
  546. package/dist/client/index.js.map +0 -1
  547. package/dist/client/multi-bot-manager.d.ts +0 -42
  548. package/dist/client/multi-bot-manager.d.ts.map +0 -1
  549. package/dist/client/multi-bot-manager.js +0 -161
  550. package/dist/client/multi-bot-manager.js.map +0 -1
  551. package/dist/client/orchestrator-daemon.d.ts +0 -87
  552. package/dist/client/orchestrator-daemon.d.ts.map +0 -1
  553. package/dist/client/orchestrator-daemon.js +0 -444
  554. package/dist/client/orchestrator-daemon.js.map +0 -1
  555. package/dist/client/server.d.ts +0 -8
  556. package/dist/client/server.d.ts.map +0 -1
  557. package/dist/client/server.js +0 -251
  558. package/dist/client/server.js.map +0 -1
  559. package/dist/client/services/agent-registry.d.ts +0 -108
  560. package/dist/client/services/agent-registry.d.ts.map +0 -1
  561. package/dist/client/services/agent-registry.js +0 -630
  562. package/dist/client/services/agent-registry.js.map +0 -1
  563. package/dist/client/services/conversation-manager.d.ts +0 -50
  564. package/dist/client/services/conversation-manager.d.ts.map +0 -1
  565. package/dist/client/services/conversation-manager.js +0 -136
  566. package/dist/client/services/conversation-manager.js.map +0 -1
  567. package/dist/client/services/mcp-client.d.ts +0 -48
  568. package/dist/client/services/mcp-client.d.ts.map +0 -1
  569. package/dist/client/services/mcp-client.js +0 -105
  570. package/dist/client/services/mcp-client.js.map +0 -1
  571. package/dist/client/services/message-classifier.d.ts +0 -37
  572. package/dist/client/services/message-classifier.d.ts.map +0 -1
  573. package/dist/client/services/message-classifier.js +0 -187
  574. package/dist/client/services/message-classifier.js.map +0 -1
  575. package/dist/client/services/message-formatter.d.ts +0 -84
  576. package/dist/client/services/message-formatter.d.ts.map +0 -1
  577. package/dist/client/services/message-formatter.js +0 -353
  578. package/dist/client/services/message-formatter.js.map +0 -1
  579. package/dist/client/services/session-logger.d.ts +0 -106
  580. package/dist/client/services/session-logger.d.ts.map +0 -1
  581. package/dist/client/services/session-logger.js +0 -446
  582. package/dist/client/services/session-logger.js.map +0 -1
  583. package/dist/client/services/tool-executor.d.ts +0 -41
  584. package/dist/client/services/tool-executor.d.ts.map +0 -1
  585. package/dist/client/services/tool-executor.js +0 -169
  586. package/dist/client/services/tool-executor.js.map +0 -1
  587. package/dist/client/services/workspace-schema-cache.d.ts +0 -149
  588. package/dist/client/services/workspace-schema-cache.d.ts.map +0 -1
  589. package/dist/client/services/workspace-schema-cache.js +0 -732
  590. package/dist/client/services/workspace-schema-cache.js.map +0 -1
  591. package/dist/client/specialist-daemon.d.ts +0 -77
  592. package/dist/client/specialist-daemon.d.ts.map +0 -1
  593. package/dist/client/specialist-daemon.js +0 -197
  594. package/dist/client/specialist-daemon.js.map +0 -1
  595. package/dist/client/specialists.d.ts +0 -53
  596. package/dist/client/specialists.d.ts.map +0 -1
  597. package/dist/client/specialists.js +0 -178
  598. package/dist/client/specialists.js.map +0 -1
  599. package/dist/client/tool-schema-loader.d.ts +0 -62
  600. package/dist/client/tool-schema-loader.d.ts.map +0 -1
  601. package/dist/client/tool-schema-loader.js +0 -232
  602. package/dist/client/tool-schema-loader.js.map +0 -1
  603. package/dist/client/types.d.ts +0 -327
  604. package/dist/client/types.d.ts.map +0 -1
  605. package/dist/client/types.js +0 -121
  606. package/dist/client/types.js.map +0 -1
  607. package/dist/commands/seed-config.d.ts +0 -9
  608. package/dist/commands/seed-config.d.ts.map +0 -1
  609. package/dist/commands/seed-config.js +0 -377
  610. package/dist/commands/seed-config.js.map +0 -1
  611. package/dist/commands/setup.d.ts +0 -11
  612. package/dist/commands/setup.d.ts.map +0 -1
  613. package/dist/commands/setup.js +0 -320
  614. package/dist/commands/setup.js.map +0 -1
  615. package/dist/lib/discussion-lock.d.ts +0 -42
  616. package/dist/lib/discussion-lock.d.ts.map +0 -1
  617. package/dist/lib/discussion-lock.js +0 -110
  618. package/dist/lib/discussion-lock.js.map +0 -1
  619. package/dist/mcp/signal-handler.d.ts +0 -82
  620. package/dist/mcp/signal-handler.d.ts.map +0 -1
  621. package/dist/mcp/signal-handler.js +0 -406
  622. package/dist/mcp/signal-handler.js.map +0 -1
  623. package/dist/mcp/tools/__tests__/discussion-forward.test.d.ts +0 -2
  624. package/dist/mcp/tools/__tests__/discussion-forward.test.d.ts.map +0 -1
  625. package/dist/mcp/tools/__tests__/discussion-forward.test.js +0 -218
  626. package/dist/mcp/tools/__tests__/discussion-forward.test.js.map +0 -1
  627. package/dist/mcp/tools/app-member.d.ts +0 -14
  628. package/dist/mcp/tools/app-member.d.ts.map +0 -1
  629. package/dist/mcp/tools/app-member.js +0 -195
  630. package/dist/mcp/tools/app-member.js.map +0 -1
  631. package/dist/mcp/tools/app-scaffold.d.ts +0 -14
  632. package/dist/mcp/tools/app-scaffold.d.ts.map +0 -1
  633. package/dist/mcp/tools/app-scaffold.js +0 -581
  634. package/dist/mcp/tools/app-scaffold.js.map +0 -1
  635. package/dist/mcp/tools/bot-config/constants.d.ts +0 -23
  636. package/dist/mcp/tools/bot-config/constants.d.ts.map +0 -1
  637. package/dist/mcp/tools/bot-config/constants.js +0 -94
  638. package/dist/mcp/tools/bot-config/constants.js.map +0 -1
  639. package/dist/mcp/tools/bot-config/core.d.ts +0 -253
  640. package/dist/mcp/tools/bot-config/core.d.ts.map +0 -1
  641. package/dist/mcp/tools/bot-config/core.js +0 -2456
  642. package/dist/mcp/tools/bot-config/core.js.map +0 -1
  643. package/dist/mcp/tools/bot-config/index.d.ts +0 -10
  644. package/dist/mcp/tools/bot-config/index.d.ts.map +0 -1
  645. package/dist/mcp/tools/bot-config/index.js +0 -59
  646. package/dist/mcp/tools/bot-config/index.js.map +0 -1
  647. package/dist/mcp/tools/bot-config/tools.d.ts +0 -7
  648. package/dist/mcp/tools/bot-config/tools.d.ts.map +0 -1
  649. package/dist/mcp/tools/bot-config/tools.js +0 -15
  650. package/dist/mcp/tools/bot-config/tools.js.map +0 -1
  651. package/dist/mcp/tools/bot-config/types.d.ts +0 -50
  652. package/dist/mcp/tools/bot-config/types.d.ts.map +0 -1
  653. package/dist/mcp/tools/bot-config/types.js +0 -6
  654. package/dist/mcp/tools/bot-config/types.js.map +0 -1
  655. package/dist/mcp/tools/bug-fixer-tools.d.ts +0 -45
  656. package/dist/mcp/tools/bug-fixer-tools.d.ts.map +0 -1
  657. package/dist/mcp/tools/bug-fixer-tools.js +0 -1096
  658. package/dist/mcp/tools/bug-fixer-tools.js.map +0 -1
  659. package/dist/mcp/tools/document.d.ts +0 -11
  660. package/dist/mcp/tools/document.d.ts.map +0 -1
  661. package/dist/mcp/tools/document.js +0 -741
  662. package/dist/mcp/tools/document.js.map +0 -1
  663. package/dist/mcp/tools/investigate.d.ts +0 -9
  664. package/dist/mcp/tools/investigate.d.ts.map +0 -1
  665. package/dist/mcp/tools/investigate.js +0 -254
  666. package/dist/mcp/tools/investigate.js.map +0 -1
  667. package/dist/mcp/utils/pagination.d.ts +0 -40
  668. package/dist/mcp/utils/pagination.d.ts.map +0 -1
  669. package/dist/mcp/utils/pagination.js +0 -55
  670. package/dist/mcp/utils/pagination.js.map +0 -1
  671. package/dist/modules/bug-reports/bug-config.d.ts +0 -25
  672. package/dist/modules/bug-reports/bug-config.d.ts.map +0 -1
  673. package/dist/modules/bug-reports/bug-config.js +0 -187
  674. package/dist/modules/bug-reports/bug-config.js.map +0 -1
  675. package/dist/modules/bug-reports/bug-monitor.d.ts +0 -108
  676. package/dist/modules/bug-reports/bug-monitor.d.ts.map +0 -1
  677. package/dist/modules/bug-reports/bug-monitor.js +0 -510
  678. package/dist/modules/bug-reports/bug-monitor.js.map +0 -1
  679. package/dist/modules/bug-reports/giuseppe-agent.d.ts +0 -58
  680. package/dist/modules/bug-reports/giuseppe-agent.d.ts.map +0 -1
  681. package/dist/modules/bug-reports/giuseppe-agent.js +0 -467
  682. package/dist/modules/bug-reports/giuseppe-agent.js.map +0 -1
  683. package/dist/modules/bug-reports/giuseppe-ai.d.ts +0 -83
  684. package/dist/modules/bug-reports/giuseppe-ai.d.ts.map +0 -1
  685. package/dist/modules/bug-reports/giuseppe-ai.js +0 -466
  686. package/dist/modules/bug-reports/giuseppe-ai.js.map +0 -1
  687. package/dist/modules/bug-reports/giuseppe-bot.d.ts +0 -110
  688. package/dist/modules/bug-reports/giuseppe-bot.d.ts.map +0 -1
  689. package/dist/modules/bug-reports/giuseppe-bot.js +0 -804
  690. package/dist/modules/bug-reports/giuseppe-bot.js.map +0 -1
  691. package/dist/modules/bug-reports/giuseppe-daemon.d.ts +0 -80
  692. package/dist/modules/bug-reports/giuseppe-daemon.d.ts.map +0 -1
  693. package/dist/modules/bug-reports/giuseppe-daemon.js +0 -617
  694. package/dist/modules/bug-reports/giuseppe-daemon.js.map +0 -1
  695. package/dist/modules/bug-reports/giuseppe-files.d.ts +0 -64
  696. package/dist/modules/bug-reports/giuseppe-files.d.ts.map +0 -1
  697. package/dist/modules/bug-reports/giuseppe-files.js +0 -375
  698. package/dist/modules/bug-reports/giuseppe-files.js.map +0 -1
  699. package/dist/modules/bug-reports/giuseppe-git.d.ts +0 -48
  700. package/dist/modules/bug-reports/giuseppe-git.d.ts.map +0 -1
  701. package/dist/modules/bug-reports/giuseppe-git.js +0 -298
  702. package/dist/modules/bug-reports/giuseppe-git.js.map +0 -1
  703. package/dist/modules/bug-reports/giuseppe-lsp.d.ts +0 -113
  704. package/dist/modules/bug-reports/giuseppe-lsp.d.ts.map +0 -1
  705. package/dist/modules/bug-reports/giuseppe-lsp.js +0 -485
  706. package/dist/modules/bug-reports/giuseppe-lsp.js.map +0 -1
  707. package/dist/modules/bug-reports/giuseppe-prompt.d.ts +0 -5
  708. package/dist/modules/bug-reports/giuseppe-prompt.d.ts.map +0 -1
  709. package/dist/modules/bug-reports/giuseppe-prompt.js +0 -94
  710. package/dist/modules/bug-reports/giuseppe-prompt.js.map +0 -1
  711. package/dist/modules/bug-reports/index.d.ts +0 -77
  712. package/dist/modules/bug-reports/index.d.ts.map +0 -1
  713. package/dist/modules/bug-reports/index.js +0 -215
  714. package/dist/modules/bug-reports/index.js.map +0 -1
  715. package/dist/modules/bug-reports/pending-classification-registry.d.ts +0 -28
  716. package/dist/modules/bug-reports/pending-classification-registry.d.ts.map +0 -1
  717. package/dist/modules/bug-reports/pending-classification-registry.js +0 -50
  718. package/dist/modules/bug-reports/pending-classification-registry.js.map +0 -1
  719. package/dist/modules/bug-reports/pending-fix-registry.d.ts +0 -30
  720. package/dist/modules/bug-reports/pending-fix-registry.d.ts.map +0 -1
  721. package/dist/modules/bug-reports/pending-fix-registry.js +0 -42
  722. package/dist/modules/bug-reports/pending-fix-registry.js.map +0 -1
  723. package/dist/modules/bug-reports/pending-registry.d.ts +0 -27
  724. package/dist/modules/bug-reports/pending-registry.d.ts.map +0 -1
  725. package/dist/modules/bug-reports/pending-registry.js +0 -49
  726. package/dist/modules/bug-reports/pending-registry.js.map +0 -1
  727. package/dist/modules/bug-reports/types.d.ts +0 -123
  728. package/dist/modules/bug-reports/types.d.ts.map +0 -1
  729. package/dist/modules/bug-reports/types.js +0 -9
  730. package/dist/modules/bug-reports/types.js.map +0 -1
  731. package/dist/plugins/bug-fixer/index.d.ts +0 -2
  732. package/dist/plugins/bug-fixer/index.d.ts.map +0 -1
  733. package/dist/plugins/bug-fixer/index.js +0 -18
  734. package/dist/plugins/bug-fixer/index.js.map +0 -1
  735. package/dist/plugins/bug-fixer/tools.d.ts +0 -45
  736. package/dist/plugins/bug-fixer/tools.d.ts.map +0 -1
  737. package/dist/plugins/bug-fixer/tools.js +0 -1096
  738. package/dist/plugins/bug-fixer/tools.js.map +0 -1
  739. package/dist/plugins/vipunen/__tests__/tools.test.d.ts +0 -10
  740. package/dist/plugins/vipunen/__tests__/tools.test.d.ts.map +0 -1
  741. package/dist/plugins/vipunen/__tests__/tools.test.js +0 -646
  742. package/dist/plugins/vipunen/__tests__/tools.test.js.map +0 -1
  743. package/dist/routes/agents.d.ts +0 -44
  744. package/dist/routes/agents.d.ts.map +0 -1
  745. package/dist/routes/agents.js +0 -311
  746. package/dist/routes/agents.js.map +0 -1
  747. package/dist/services/agent-credential-store.d.ts +0 -73
  748. package/dist/services/agent-credential-store.d.ts.map +0 -1
  749. package/dist/services/agent-credential-store.js +0 -212
  750. package/dist/services/agent-credential-store.js.map +0 -1
  751. package/dist/stdio-server.d.ts +0 -14
  752. package/dist/stdio-server.d.ts.map +0 -1
  753. package/dist/stdio-server.js +0 -101
  754. package/dist/stdio-server.js.map +0 -1
  755. package/dist/workspace/context.d.ts +0 -148
  756. package/dist/workspace/context.d.ts.map +0 -1
  757. package/dist/workspace/context.js +0 -339
  758. package/dist/workspace/context.js.map +0 -1
  759. package/dist/workspace/credentials.d.ts +0 -55
  760. package/dist/workspace/credentials.d.ts.map +0 -1
  761. package/dist/workspace/credentials.js +0 -239
  762. package/dist/workspace/credentials.js.map +0 -1
  763. package/dist/workspace/index.d.ts +0 -21
  764. package/dist/workspace/index.d.ts.map +0 -1
  765. package/dist/workspace/index.js +0 -45
  766. package/dist/workspace/index.js.map +0 -1
  767. package/dist/workspace/loader.d.ts +0 -27
  768. package/dist/workspace/loader.d.ts.map +0 -1
  769. package/dist/workspace/loader.js +0 -222
  770. package/dist/workspace/loader.js.map +0 -1
  771. package/dist/workspace/schema.d.ts +0 -37
  772. package/dist/workspace/schema.d.ts.map +0 -1
  773. package/dist/workspace/schema.js +0 -192
  774. package/dist/workspace/schema.js.map +0 -1
@@ -1,732 +0,0 @@
1
- "use strict";
2
- /**
3
- * Workspace Schema Cache Service
4
- *
5
- * Dynamically discovers and caches workflow schemas per workspace.
6
- * Replaces hardcoded workflow/field IDs with runtime lookup.
7
- *
8
- * WORKSPACE ISOLATION: Each workspace gets its own workflow IDs.
9
- * Never use hardcoded IDs - always lookup via this cache.
10
- *
11
- * CACHING STRATEGY:
12
- * 1. Check file cache first (~/.hailer-mcp/schema-cache-{workspaceId}.json)
13
- * 2. If valid cache exists, load from file (0 API calls)
14
- * 3. If no cache, discover via API and save to file
15
- * 4. Cache is valid for 7 days (configurable)
16
- *
17
- * On bot startup:
18
- * 1. Check file cache
19
- * 2. If cache miss: Query list_workflows to find AI Agent workflows by name
20
- * 3. If missing, install them from marketplace
21
- * 4. Query get_workflow_schema to get field IDs
22
- * 5. Save to file cache
23
- */
24
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
25
- if (k2 === undefined) k2 = k;
26
- var desc = Object.getOwnPropertyDescriptor(m, k);
27
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
28
- desc = { enumerable: true, get: function() { return m[k]; } };
29
- }
30
- Object.defineProperty(o, k2, desc);
31
- }) : (function(o, m, k, k2) {
32
- if (k2 === undefined) k2 = k;
33
- o[k2] = m[k];
34
- }));
35
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
36
- Object.defineProperty(o, "default", { enumerable: true, value: v });
37
- }) : function(o, v) {
38
- o["default"] = v;
39
- });
40
- var __importStar = (this && this.__importStar) || (function () {
41
- var ownKeys = function(o) {
42
- ownKeys = Object.getOwnPropertyNames || function (o) {
43
- var ar = [];
44
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
45
- return ar;
46
- };
47
- return ownKeys(o);
48
- };
49
- return function (mod) {
50
- if (mod && mod.__esModule) return mod;
51
- var result = {};
52
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
53
- __setModuleDefault(result, mod);
54
- return result;
55
- };
56
- })();
57
- Object.defineProperty(exports, "__esModule", { value: true });
58
- exports.WorkspaceSchemaCacheService = void 0;
59
- const fs = __importStar(require("fs"));
60
- const path = __importStar(require("path"));
61
- const os = __importStar(require("os"));
62
- /** Cache directory for schema files */
63
- const CACHE_DIR = path.join(os.homedir(), ".hailer-mcp");
64
- const CACHE_TTL_MS = 7 * 24 * 60 * 60 * 1000; // 7 days
65
- /** AI Agent template ID in marketplace (HR for AI Agents) */
66
- const AI_AGENT_TEMPLATE_ID = "685ab3c39af7445dd5384ffd";
67
- /** Known workflow names from the AI Agent template (partial match, case insensitive) */
68
- const TEMPLATE_WORKFLOW_PATTERNS = {
69
- SESSION_LOG: ["session log", "session_log"],
70
- AGENT_DIRECTORY: ["agent directory", "agent_directory"],
71
- POSITIONS: ["positions", "position"],
72
- TEAMS: ["teams", "team"],
73
- TOOL_REGISTRY: ["tool registry", "tool_registry", "mcp server"],
74
- MCP_CONFIG: ["mcp config", "mcp_config", "mcp configuration"],
75
- };
76
- /** Known field labels we need to look up */
77
- const SESSION_LOG_FIELD_LABELS = {
78
- contextSummary: "Context summary",
79
- previousLog: "Previus log entry", // Note: typo in original template
80
- linkedWork: "Most relevant link to work",
81
- cost: "Tokens Used",
82
- madeBy: "Log entry made by",
83
- };
84
- const AGENT_DIRECTORY_FIELD_LABELS = {
85
- firstName: "First name",
86
- lastName: "Last name",
87
- description: "Description",
88
- email: "Email",
89
- password: "Password",
90
- hailerProfile: "Hailer profile",
91
- team: "Team",
92
- supervisor: "Supervisor",
93
- memory: "Memory",
94
- position: "Position",
95
- startDate: "Start date",
96
- };
97
- const POSITIONS_FIELD_LABELS = {
98
- purpose: "Purpose",
99
- personaTone: "Persona / Tone",
100
- coreCapabilities: "Core Capabilities",
101
- boundaries: "Boundaries",
102
- agentCount: "Agents in this position",
103
- multiAllowed: "Multi allowed",
104
- };
105
- const TEAMS_FIELD_LABELS = {
106
- info: "Info",
107
- leader: "Leader",
108
- };
109
- const TOOL_REGISTRY_FIELD_LABELS = {
110
- baseUrl: "Base URL",
111
- protocolVersion: "Protocol Version",
112
- toolRegistry: "Tool Registry",
113
- logEntryBy: "Log entry by",
114
- };
115
- const MCP_CONFIG_FIELD_LABELS = {
116
- agentName: "Agent Name",
117
- agentId: "Agent ID",
118
- publicKey: "Public Key",
119
- accessTo: "Access To",
120
- authToken: "Auth Token",
121
- apiKey: "API Key",
122
- workspaceId: "Workspace ID",
123
- permissions: "Permissions",
124
- sessionId: "Session ID",
125
- resourceLimits: "Resource Limits",
126
- loggingEndpoint: "Logging Endpoint",
127
- callbackUrl: "Callback URL",
128
- customContext: "Custom Context",
129
- permCreate: "Create",
130
- permRead: "Read",
131
- permUpdate: "Update",
132
- permDelete: "Delete",
133
- };
134
- class WorkspaceSchemaCacheService {
135
- logger;
136
- callMcpTool;
137
- cache = new Map();
138
- constructor(logger, callMcpTool) {
139
- this.logger = logger;
140
- this.callMcpTool = callMcpTool;
141
- // Ensure cache directory exists
142
- this.ensureCacheDir();
143
- }
144
- /**
145
- * Ensure cache directory exists
146
- */
147
- ensureCacheDir() {
148
- try {
149
- if (!fs.existsSync(CACHE_DIR)) {
150
- fs.mkdirSync(CACHE_DIR, { recursive: true });
151
- }
152
- }
153
- catch (error) {
154
- this.logger.warn("Failed to create cache directory", {
155
- dir: CACHE_DIR,
156
- error: error instanceof Error ? error.message : String(error),
157
- });
158
- }
159
- }
160
- /**
161
- * Get cache file path for a workspace
162
- */
163
- getCacheFilePath(workspaceId) {
164
- return path.join(CACHE_DIR, `schema-cache-${workspaceId}.json`);
165
- }
166
- /**
167
- * Load schemas from file cache
168
- * Returns null if cache doesn't exist or is expired
169
- */
170
- loadFromFileCache(workspaceId) {
171
- const filePath = this.getCacheFilePath(workspaceId);
172
- try {
173
- if (!fs.existsSync(filePath)) {
174
- return null;
175
- }
176
- const data = fs.readFileSync(filePath, "utf-8");
177
- const schemas = JSON.parse(data);
178
- // Check TTL
179
- if (schemas.cachedAt && Date.now() - schemas.cachedAt > CACHE_TTL_MS) {
180
- this.logger.debug("File cache expired", { workspaceId, cachedAt: schemas.cachedAt });
181
- return null;
182
- }
183
- this.logger.info("Loaded schemas from file cache", {
184
- workspaceId,
185
- cachedAt: schemas.cachedAt ? new Date(schemas.cachedAt).toISOString() : "unknown",
186
- });
187
- return schemas;
188
- }
189
- catch (error) {
190
- this.logger.warn("Failed to load file cache", {
191
- filePath,
192
- error: error instanceof Error ? error.message : String(error),
193
- });
194
- return null;
195
- }
196
- }
197
- /**
198
- * Save schemas to file cache
199
- */
200
- saveToFileCache(schemas) {
201
- const filePath = this.getCacheFilePath(schemas.workspaceId);
202
- try {
203
- schemas.cachedAt = Date.now();
204
- fs.writeFileSync(filePath, JSON.stringify(schemas, null, 2), "utf-8");
205
- this.logger.debug("Saved schemas to file cache", { filePath });
206
- }
207
- catch (error) {
208
- this.logger.warn("Failed to save file cache", {
209
- filePath,
210
- error: error instanceof Error ? error.message : String(error),
211
- });
212
- }
213
- }
214
- /**
215
- * Initialize schema cache for a workspace
216
- * Call this on bot startup after connecting to Hailer
217
- */
218
- async initializeForWorkspace(workspaceId) {
219
- // 1. Check memory cache first
220
- const existing = this.cache.get(workspaceId);
221
- if (existing?.initialized) {
222
- this.logger.debug("Using memory-cached workspace schemas", { workspaceId });
223
- return existing;
224
- }
225
- // 2. Check file cache (persists across restarts)
226
- const fileCache = this.loadFromFileCache(workspaceId);
227
- if (fileCache?.initialized) {
228
- this.cache.set(workspaceId, fileCache);
229
- return fileCache;
230
- }
231
- // 3. Discover via API (expensive - only on first run or cache expiry)
232
- this.logger.info("Discovering workspace schemas via API", { workspaceId });
233
- const schemas = {
234
- workspaceId,
235
- initialized: false,
236
- };
237
- try {
238
- // Fetch all workflows in workspace
239
- const workflowsResult = await this.callMcpTool("list_workflows", {
240
- workspace: workspaceId,
241
- });
242
- const workflowsText = workflowsResult?.content?.[0]?.text;
243
- if (!workflowsText) {
244
- this.logger.warn("No workflows found in workspace", { workspaceId });
245
- schemas.initialized = true;
246
- this.cache.set(workspaceId, schemas);
247
- return schemas;
248
- }
249
- // Parse workflows
250
- const workflows = this.parseWorkflows(workflowsText);
251
- this.logger.debug("Found workflows", { workspaceId, count: workflows.length });
252
- // Find template workflows
253
- this.mapWorkflowsToSchemas(workflows, schemas);
254
- // Check if required workflows are missing
255
- const missingRequired = !schemas.sessionLog || !schemas.agentDirectory;
256
- if (missingRequired) {
257
- this.logger.info("AI Agent workflows not found, installing from marketplace", { workspaceId });
258
- const installed = await this.installAgentTemplate(workspaceId);
259
- if (installed) {
260
- // Re-fetch workflows after installation
261
- const refreshResult = await this.callMcpTool("list_workflows", {
262
- workspace: workspaceId,
263
- });
264
- const refreshText = refreshResult?.content?.[0]?.text;
265
- if (refreshText) {
266
- const refreshedWorkflows = this.parseWorkflows(refreshText);
267
- this.mapWorkflowsToSchemas(refreshedWorkflows, schemas);
268
- }
269
- }
270
- }
271
- // Load detailed schemas for found workflows
272
- await this.loadDetailedSchemas(schemas);
273
- schemas.initialized = true;
274
- this.cache.set(workspaceId, schemas);
275
- // Save to file cache for next startup
276
- this.saveToFileCache(schemas);
277
- this.logger.info("Workspace schemas cached", {
278
- workspaceId,
279
- hasSessionLog: !!schemas.sessionLog,
280
- hasAgentDirectory: !!schemas.agentDirectory,
281
- hasPositions: !!schemas.positions,
282
- });
283
- return schemas;
284
- }
285
- catch (error) {
286
- this.logger.error("Failed to initialize workspace schemas", {
287
- workspaceId,
288
- error: error instanceof Error ? error.message : String(error),
289
- });
290
- schemas.initialized = true; // Mark as initialized even on error to prevent retry loops
291
- this.cache.set(workspaceId, schemas);
292
- return schemas;
293
- }
294
- }
295
- /**
296
- * Get cached schemas for a workspace
297
- */
298
- getSchemas(workspaceId) {
299
- return this.cache.get(workspaceId);
300
- }
301
- /**
302
- * Get Session Log schema for a workspace
303
- */
304
- getSessionLogSchema(workspaceId) {
305
- return this.cache.get(workspaceId)?.sessionLog;
306
- }
307
- /**
308
- * Get Agent Directory schema for a workspace
309
- */
310
- getAgentDirectorySchema(workspaceId) {
311
- return this.cache.get(workspaceId)?.agentDirectory;
312
- }
313
- /**
314
- * Get Positions schema for a workspace
315
- */
316
- getPositionsSchema(workspaceId) {
317
- return this.cache.get(workspaceId)?.positions;
318
- }
319
- /**
320
- * Get Teams schema for a workspace
321
- */
322
- getTeamsSchema(workspaceId) {
323
- return this.cache.get(workspaceId)?.teams;
324
- }
325
- /**
326
- * Get Tool Registry schema for a workspace
327
- */
328
- getToolRegistrySchema(workspaceId) {
329
- return this.cache.get(workspaceId)?.toolRegistry;
330
- }
331
- /**
332
- * Get MCP Config schema for a workspace
333
- */
334
- getMcpConfigSchema(workspaceId) {
335
- return this.cache.get(workspaceId)?.mcpConfig;
336
- }
337
- /**
338
- * Check if a workspace has the AI Agent template installed
339
- */
340
- hasAgentTemplate(workspaceId) {
341
- const schemas = this.cache.get(workspaceId);
342
- return !!(schemas?.sessionLog && schemas?.agentDirectory);
343
- }
344
- /**
345
- * Check if workflow name matches a pattern (case insensitive, ignores emojis)
346
- */
347
- matchesPattern(workflowName, patterns) {
348
- // Normalize: lowercase, remove emojis and extra whitespace
349
- const normalized = workflowName
350
- .toLowerCase()
351
- .replace(/[\u{1F300}-\u{1F9FF}]/gu, "") // Remove emojis
352
- .replace(/\s+/g, " ")
353
- .trim();
354
- return patterns.some(pattern => normalized.includes(pattern));
355
- }
356
- /**
357
- * Map workflow list to schema slots (using pattern matching)
358
- */
359
- mapWorkflowsToSchemas(workflows, schemas) {
360
- for (const workflow of workflows) {
361
- // Filter by workspace if specified
362
- if (schemas.workspaceId && workflow.workspaceId && workflow.workspaceId !== schemas.workspaceId) {
363
- continue;
364
- }
365
- if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.SESSION_LOG)) {
366
- schemas.sessionLog = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
367
- }
368
- else if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.AGENT_DIRECTORY)) {
369
- schemas.agentDirectory = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
370
- }
371
- else if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.POSITIONS)) {
372
- schemas.positions = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
373
- }
374
- else if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.TEAMS) && workflow.name.toLowerCase().includes("team")) {
375
- // Be more specific for Teams to avoid matching "Teams" workflow in sports data
376
- if (workflow.name.includes("🎖️") || workflow.name.toLowerCase() === "teams") {
377
- schemas.teams = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
378
- }
379
- }
380
- else if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.TOOL_REGISTRY)) {
381
- schemas.toolRegistry = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
382
- }
383
- else if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.MCP_CONFIG)) {
384
- schemas.mcpConfig = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
385
- }
386
- }
387
- }
388
- /**
389
- * Load detailed schemas (phases, fields) for all found workflows
390
- */
391
- async loadDetailedSchemas(schemas) {
392
- if (schemas.sessionLog) {
393
- await this.loadWorkflowSchemaDetails(schemas.sessionLog);
394
- this.mapFieldLabelsToIds(schemas.sessionLog, SESSION_LOG_FIELD_LABELS);
395
- }
396
- if (schemas.agentDirectory) {
397
- await this.loadWorkflowSchemaDetails(schemas.agentDirectory);
398
- this.mapFieldLabelsToIds(schemas.agentDirectory, AGENT_DIRECTORY_FIELD_LABELS);
399
- }
400
- if (schemas.positions) {
401
- await this.loadWorkflowSchemaDetails(schemas.positions);
402
- this.mapFieldLabelsToIds(schemas.positions, POSITIONS_FIELD_LABELS);
403
- }
404
- if (schemas.teams) {
405
- await this.loadWorkflowSchemaDetails(schemas.teams);
406
- this.mapFieldLabelsToIds(schemas.teams, TEAMS_FIELD_LABELS);
407
- }
408
- if (schemas.toolRegistry) {
409
- await this.loadWorkflowSchemaDetails(schemas.toolRegistry);
410
- this.mapFieldLabelsToIds(schemas.toolRegistry, TOOL_REGISTRY_FIELD_LABELS);
411
- }
412
- if (schemas.mcpConfig) {
413
- await this.loadWorkflowSchemaDetails(schemas.mcpConfig);
414
- this.mapFieldLabelsToIds(schemas.mcpConfig, MCP_CONFIG_FIELD_LABELS);
415
- }
416
- }
417
- /**
418
- * Install AI Agent template from marketplace
419
- */
420
- async installAgentTemplate(workspaceId) {
421
- try {
422
- // First try to find the template by name in marketplace
423
- const templatesResult = await this.callMcpTool("list_templates", {
424
- publicOnly: true,
425
- });
426
- let templateId = AI_AGENT_TEMPLATE_ID;
427
- const templatesText = templatesResult?.content?.[0]?.text;
428
- if (templatesText) {
429
- try {
430
- const parsed = JSON.parse(templatesText);
431
- const templates = parsed.templates || parsed.data || parsed;
432
- if (Array.isArray(templates)) {
433
- const agentTemplate = templates.find((t) => t.name?.includes("AI Agent") || t.title?.includes("AI Agent"));
434
- if (agentTemplate?._id) {
435
- templateId = agentTemplate._id;
436
- }
437
- }
438
- }
439
- catch {
440
- // Use default template ID
441
- }
442
- }
443
- this.logger.info("Installing AI Agent template", { workspaceId, templateId });
444
- const installResult = await this.callMcpTool("install_template", {
445
- templateId,
446
- workspaceId,
447
- });
448
- const installText = installResult?.content?.[0]?.text || "";
449
- // Check for explicit error indicators
450
- const hasError = installText.toLowerCase().includes("error") ||
451
- installText.toLowerCase().includes("not found") ||
452
- installText.toLowerCase().includes("failed");
453
- const hasSuccess = installText.toLowerCase().includes("success") ||
454
- installText.toLowerCase().includes("installed") ||
455
- installText.toLowerCase().includes("created");
456
- const success = hasSuccess && !hasError;
457
- if (success) {
458
- this.logger.info("AI Agent template installed successfully", { workspaceId });
459
- }
460
- else {
461
- this.logger.warn("Template installation failed", {
462
- workspaceId,
463
- response: installText.substring(0, 300),
464
- });
465
- }
466
- return success;
467
- }
468
- catch (error) {
469
- this.logger.error("Failed to install AI Agent template", {
470
- workspaceId,
471
- error: error instanceof Error ? error.message : String(error),
472
- });
473
- return false;
474
- }
475
- }
476
- /**
477
- * Parse workflows from list_workflows response
478
- * Handles both raw JSON and markdown-wrapped JSON responses
479
- */
480
- parseWorkflows(text) {
481
- const workflows = [];
482
- try {
483
- // First, try to extract JSON array from markdown-wrapped response
484
- // The response often has: "📋 **18 Workflows Found**\n\n[\n {...}\n]\n\n🔗 **Relationships**..."
485
- let jsonText = text;
486
- // Try to extract JSON array from markdown
487
- const jsonArrayMatch = text.match(/\[\s*\{[\s\S]*?\}\s*\]/);
488
- if (jsonArrayMatch) {
489
- jsonText = jsonArrayMatch[0];
490
- }
491
- const parsed = JSON.parse(jsonText);
492
- const items = Array.isArray(parsed) ? parsed : (parsed.workflows || parsed.data || []);
493
- if (Array.isArray(items)) {
494
- for (const item of items) {
495
- // Support both `id` and `_id` field names
496
- const id = item.id || item._id;
497
- const name = item.name;
498
- const workspaceId = item.workspaceId;
499
- if (id && name) {
500
- workflows.push({ id, name, workspaceId });
501
- }
502
- }
503
- }
504
- }
505
- catch {
506
- // Fallback: regex extraction for both id and _id patterns
507
- const idMatches = text.matchAll(/"(?:id|_id)":\s*"([a-f0-9]{24})"/gi);
508
- const nameMatches = text.matchAll(/"name":\s*"([^"]+)"/gi);
509
- const wsMatches = text.matchAll(/"workspaceId":\s*"([a-f0-9]{24})"/gi);
510
- const ids = [...idMatches].map(m => m[1]);
511
- const names = [...nameMatches].map(m => m[1]);
512
- const wsIds = [...wsMatches].map(m => m[1]);
513
- for (let i = 0; i < Math.min(ids.length, names.length); i++) {
514
- workflows.push({
515
- id: ids[i],
516
- name: names[i],
517
- workspaceId: wsIds[i],
518
- });
519
- }
520
- }
521
- this.logger.debug("Parsed workflows from response", { count: workflows.length });
522
- return workflows;
523
- }
524
- /**
525
- * Load detailed workflow schema (phases and fields) for an existing schema
526
- */
527
- async loadWorkflowSchemaDetails(schema) {
528
- try {
529
- // Get phases first
530
- const phasesResult = await this.callMcpTool("list_workflow_phases", {
531
- workflowId: schema.workflowId,
532
- });
533
- const phasesText = phasesResult?.content?.[0]?.text;
534
- if (phasesText) {
535
- this.parsePhases(phasesText, schema);
536
- }
537
- this.logger.debug("Parsed phases for workflow", {
538
- workflowId: schema.workflowId,
539
- workflowName: schema.name,
540
- phaseCount: Object.keys(schema.phases).length,
541
- phases: Object.keys(schema.phases),
542
- });
543
- // Get schema with fields (use first phase)
544
- const firstPhaseId = Object.values(schema.phases)[0];
545
- if (firstPhaseId) {
546
- const schemaResult = await this.callMcpTool("get_workflow_schema", {
547
- workflowId: schema.workflowId,
548
- phaseId: firstPhaseId,
549
- });
550
- const schemaText = schemaResult?.content?.[0]?.text;
551
- if (schemaText) {
552
- this.parseFields(schemaText, schema);
553
- this.logger.debug("Parsed fields for workflow", {
554
- workflowId: schema.workflowId,
555
- workflowName: schema.name,
556
- fieldCount: Object.keys(schema.fields).length,
557
- fieldKeys: Object.keys(schema.fields).slice(0, 10), // First 10 keys
558
- });
559
- }
560
- else {
561
- this.logger.warn("No schema text returned from get_workflow_schema", {
562
- workflowId: schema.workflowId,
563
- });
564
- }
565
- }
566
- else {
567
- this.logger.warn("No phase ID found - skipping field schema load", {
568
- workflowId: schema.workflowId,
569
- workflowName: schema.name,
570
- });
571
- }
572
- }
573
- catch (error) {
574
- this.logger.warn("Failed to load workflow schema details", {
575
- workflowId: schema.workflowId,
576
- workflowName: schema.name,
577
- error: error instanceof Error ? error.message : String(error),
578
- });
579
- }
580
- }
581
- /**
582
- * Parse phases from list_workflow_phases response
583
- * Format: 1. **PhaseName**\n - Phase ID: `phaseId`
584
- */
585
- parsePhases(text, schema) {
586
- this.logger.debug("Parsing phases text", {
587
- workflowId: schema.workflowId,
588
- textLength: text.length,
589
- textPreview: text.substring(0, 500),
590
- });
591
- try {
592
- const parsed = JSON.parse(text);
593
- const phases = parsed.phases || parsed.data || parsed;
594
- if (Array.isArray(phases)) {
595
- for (const phase of phases) {
596
- if (phase.id && phase.name) {
597
- schema.phases[phase.name.toLowerCase()] = phase.id;
598
- }
599
- else if (phase._id && phase.name) {
600
- schema.phases[phase.name.toLowerCase()] = phase._id;
601
- }
602
- }
603
- }
604
- }
605
- catch {
606
- // Markdown format: **PhaseName**\n - Phase ID: `phaseId`
607
- // Match pattern: \d+\. **Name** ... Phase ID: `id`
608
- const phaseBlocks = text.split(/\d+\.\s*\*\*/).filter(Boolean);
609
- for (const block of phaseBlocks) {
610
- const nameMatch = block.match(/^([^*]+)\*\*/);
611
- const phaseIdMatch = block.match(/Phase ID:\s*`([a-f0-9]{24})`/i);
612
- if (nameMatch && phaseIdMatch) {
613
- const phaseName = nameMatch[1].trim();
614
- const phaseId = phaseIdMatch[1];
615
- schema.phases[phaseName.toLowerCase()] = phaseId;
616
- }
617
- }
618
- }
619
- }
620
- /**
621
- * Parse fields from get_workflow_schema response
622
- * Stores fields by both label and key for flexible lookup
623
- */
624
- parseFields(text, schema) {
625
- try {
626
- const parsed = JSON.parse(text);
627
- const fields = parsed.fields || parsed.data || parsed;
628
- if (Array.isArray(fields)) {
629
- for (const field of fields) {
630
- const fieldId = field.id || field._id || field.fieldId;
631
- const label = field.label || field.name;
632
- const key = field.key;
633
- if (fieldId && label) {
634
- schema.fields[label] = fieldId;
635
- }
636
- // Also store by key for direct lookup (e.g., "firstName" -> fieldId)
637
- if (fieldId && key) {
638
- schema.fields[key] = fieldId;
639
- }
640
- }
641
- }
642
- else if (typeof fields === "object") {
643
- // Handle object format {fieldId: {label, type, key, ...}}
644
- for (const [fieldId, fieldData] of Object.entries(fields)) {
645
- const data = fieldData;
646
- const label = data.label || data.name;
647
- const key = data.key;
648
- if (label) {
649
- schema.fields[label] = fieldId;
650
- }
651
- // Also store by key
652
- if (key) {
653
- schema.fields[key] = fieldId;
654
- }
655
- }
656
- }
657
- }
658
- catch {
659
- // Regex fallback for markdown format:
660
- // **Label**
661
- // - Field ID: `fieldId`
662
- // - Key: `key`
663
- const fieldBlocks = text.split(/\d+\.\s*\*\*/).filter(Boolean);
664
- for (const block of fieldBlocks) {
665
- const labelMatch = block.match(/^([^*\n]+)\*\*/);
666
- const fieldIdMatch = block.match(/Field ID:\s*`([a-f0-9]{24})`/i);
667
- const keyMatch = block.match(/Key:\s*`(\w+)`/i);
668
- if (fieldIdMatch) {
669
- const fieldId = fieldIdMatch[1];
670
- if (labelMatch) {
671
- schema.fields[labelMatch[1].trim()] = fieldId;
672
- }
673
- if (keyMatch) {
674
- schema.fields[keyMatch[1]] = fieldId;
675
- }
676
- }
677
- }
678
- }
679
- }
680
- /**
681
- * Map field keys to their IDs in the schema
682
- * Since parseFields now stores by key directly, this is a no-op
683
- * Kept for backwards compatibility but does nothing
684
- */
685
- mapFieldLabelsToIds(_schema, _keyMap) {
686
- // parseFields now stores fields by key directly, so this is a no-op
687
- }
688
- /**
689
- * Clear cache for a workspace (clears both memory and file cache)
690
- */
691
- clearCache(workspaceId) {
692
- if (workspaceId) {
693
- // Clear memory cache
694
- this.cache.delete(workspaceId);
695
- // Clear file cache
696
- const filePath = this.getCacheFilePath(workspaceId);
697
- try {
698
- if (fs.existsSync(filePath)) {
699
- fs.unlinkSync(filePath);
700
- this.logger.info("Cleared file cache", { workspaceId });
701
- }
702
- }
703
- catch (error) {
704
- this.logger.warn("Failed to clear file cache", {
705
- filePath,
706
- error: error instanceof Error ? error.message : String(error),
707
- });
708
- }
709
- }
710
- else {
711
- // Clear all memory cache
712
- this.cache.clear();
713
- // Clear all file caches
714
- try {
715
- const files = fs.readdirSync(CACHE_DIR).filter(f => f.startsWith("schema-cache-"));
716
- for (const file of files) {
717
- fs.unlinkSync(path.join(CACHE_DIR, file));
718
- }
719
- if (files.length > 0) {
720
- this.logger.info("Cleared all file caches", { count: files.length });
721
- }
722
- }
723
- catch (error) {
724
- this.logger.warn("Failed to clear all file caches", {
725
- error: error instanceof Error ? error.message : String(error),
726
- });
727
- }
728
- }
729
- }
730
- }
731
- exports.WorkspaceSchemaCacheService = WorkspaceSchemaCacheService;
732
- //# sourceMappingURL=workspace-schema-cache.js.map