@hailer/mcp 1.1.15 → 1.1.17-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (768) hide show
  1. package/.claude/CLAUDE.md +117 -320
  2. package/.claude/commands/app-squad.md +86 -90
  3. package/.claude/commands/audit-squad.md +19 -19
  4. package/.claude/commands/autoplan.md +3 -3
  5. package/.claude/commands/cleanup-squad.md +16 -16
  6. package/.claude/commands/config-squad.md +30 -30
  7. package/.claude/commands/crud-squad.md +23 -23
  8. package/.claude/commands/data-squad.md +21 -21
  9. package/.claude/commands/debug-squad.md +44 -44
  10. package/.claude/commands/doc-squad.md +16 -16
  11. package/.claude/commands/help:agents.md +130 -99
  12. package/.claude/commands/help:commands.md +15 -15
  13. package/.claude/commands/help:faq.md +17 -17
  14. package/.claude/commands/help:plugins.md +1 -1
  15. package/.claude/commands/help:skills.md +18 -24
  16. package/.claude/commands/hotfix-squad.md +22 -22
  17. package/.claude/commands/integration-squad.md +22 -22
  18. package/.claude/commands/janitor-squad.md +31 -31
  19. package/.claude/commands/learn-auto.md +5 -5
  20. package/.claude/commands/learn.md +12 -20
  21. package/.claude/commands/onboard-squad.md +39 -49
  22. package/.claude/commands/plan-workspace.md +2 -2
  23. package/.claude/commands/publish.md +32 -37
  24. package/.claude/commands/review-squad.md +27 -27
  25. package/.claude/commands/stats.md +26 -12
  26. package/.claude/commands/swarm.md +25 -25
  27. package/.claude/skills/chrome-mcp-reference/SKILL.md +5 -0
  28. package/.claude/skills/hailer-api-client/SKILL.md +55 -16
  29. package/.claude/skills/hailer-app-builder/SKILL.md +4 -270
  30. package/.claude/skills/hailer-apps-pictures/SKILL.md +3 -3
  31. package/.claude/skills/hailer-design-system/SKILL.md +96 -4
  32. package/.claude/skills/hailer-monolith-automations/SKILL.md +138 -116
  33. package/.claude/skills/hailer-permissions-system/SKILL.md +6 -9
  34. package/.claude/skills/hailer-project-protocol/SKILL.md +20 -110
  35. package/.claude/skills/integration-patterns/SKILL.md +6 -6
  36. package/.claude/skills/lsp-setup/SKILL.md +8 -9
  37. package/.claude/skills/sdk-activity-patterns/SKILL.md +238 -0
  38. package/.claude/skills/{SDK-document-templates → sdk-document-templates}/SKILL.md +13 -340
  39. package/.claude/skills/{SDK-function-fields → sdk-function-fields}/SKILL.md +8 -40
  40. package/.claude/skills/{SDK-insight-queries → sdk-insight-queries}/SKILL.md +114 -392
  41. package/.claude/skills/{SDK-ws-config-skill → sdk-ws-config-skill}/SKILL.md +79 -310
  42. package/.claude/skills/zapier-hailer-patterns/SKILL.md +84 -361
  43. package/.opencode/package-lock.json +117 -0
  44. package/CLAUDE.md +5 -358
  45. package/dist/agents/bot-manager.d.ts +48 -0
  46. package/dist/agents/bot-manager.d.ts.map +1 -0
  47. package/dist/agents/bot-manager.js +254 -0
  48. package/dist/agents/bot-manager.js.map +1 -0
  49. package/dist/agents/bug-fixer/ai.d.ts +80 -0
  50. package/dist/agents/bug-fixer/ai.d.ts.map +1 -0
  51. package/dist/agents/bug-fixer/ai.js +466 -0
  52. package/dist/agents/bug-fixer/ai.js.map +1 -0
  53. package/dist/agents/bug-fixer/bot.d.ts +92 -0
  54. package/dist/agents/bug-fixer/bot.d.ts.map +1 -0
  55. package/dist/agents/bug-fixer/bot.js +687 -0
  56. package/dist/agents/bug-fixer/bot.js.map +1 -0
  57. package/dist/agents/bug-fixer/config.d.ts +21 -0
  58. package/dist/agents/bug-fixer/config.d.ts.map +1 -0
  59. package/dist/agents/bug-fixer/config.js +218 -0
  60. package/dist/agents/bug-fixer/config.js.map +1 -0
  61. package/dist/agents/bug-fixer/files.d.ts +67 -0
  62. package/dist/agents/bug-fixer/files.d.ts.map +1 -0
  63. package/dist/agents/bug-fixer/files.js +386 -0
  64. package/dist/agents/bug-fixer/files.js.map +1 -0
  65. package/dist/agents/bug-fixer/git.d.ts +48 -0
  66. package/dist/agents/bug-fixer/git.d.ts.map +1 -0
  67. package/dist/agents/bug-fixer/git.js +298 -0
  68. package/dist/agents/bug-fixer/git.js.map +1 -0
  69. package/dist/agents/bug-fixer/index.d.ts +103 -0
  70. package/dist/agents/bug-fixer/index.d.ts.map +1 -0
  71. package/dist/agents/bug-fixer/index.js +262 -0
  72. package/dist/agents/bug-fixer/index.js.map +1 -0
  73. package/dist/agents/bug-fixer/lsp.d.ts +113 -0
  74. package/dist/agents/bug-fixer/lsp.d.ts.map +1 -0
  75. package/dist/agents/bug-fixer/lsp.js +485 -0
  76. package/dist/agents/bug-fixer/lsp.js.map +1 -0
  77. package/dist/agents/bug-fixer/monitor.d.ts +123 -0
  78. package/dist/agents/bug-fixer/monitor.d.ts.map +1 -0
  79. package/dist/agents/bug-fixer/monitor.js +629 -0
  80. package/dist/agents/bug-fixer/monitor.js.map +1 -0
  81. package/dist/agents/bug-fixer/prompt.d.ts +5 -0
  82. package/dist/agents/bug-fixer/prompt.d.ts.map +1 -0
  83. package/dist/agents/bug-fixer/prompt.js +94 -0
  84. package/dist/agents/bug-fixer/prompt.js.map +1 -0
  85. package/dist/agents/bug-fixer/registries/pending-classification.d.ts +28 -0
  86. package/dist/agents/bug-fixer/registries/pending-classification.d.ts.map +1 -0
  87. package/dist/agents/bug-fixer/registries/pending-classification.js +50 -0
  88. package/dist/agents/bug-fixer/registries/pending-classification.js.map +1 -0
  89. package/dist/agents/bug-fixer/registries/pending-fix.d.ts +33 -0
  90. package/dist/agents/bug-fixer/registries/pending-fix.d.ts.map +1 -0
  91. package/dist/agents/bug-fixer/registries/pending-fix.js +64 -0
  92. package/dist/agents/bug-fixer/registries/pending-fix.js.map +1 -0
  93. package/dist/agents/bug-fixer/registries/pending.d.ts +27 -0
  94. package/dist/agents/bug-fixer/registries/pending.d.ts.map +1 -0
  95. package/dist/agents/bug-fixer/registries/pending.js +49 -0
  96. package/dist/agents/bug-fixer/registries/pending.js.map +1 -0
  97. package/dist/agents/bug-fixer/specialist-daemon.d.ts +88 -0
  98. package/dist/agents/bug-fixer/specialist-daemon.d.ts.map +1 -0
  99. package/dist/agents/bug-fixer/specialist-daemon.js +431 -0
  100. package/dist/agents/bug-fixer/specialist-daemon.js.map +1 -0
  101. package/dist/agents/bug-fixer/specialist.d.ts +47 -0
  102. package/dist/agents/bug-fixer/specialist.d.ts.map +1 -0
  103. package/dist/agents/bug-fixer/specialist.js +327 -0
  104. package/dist/agents/bug-fixer/specialist.js.map +1 -0
  105. package/dist/agents/bug-fixer/types.d.ts +123 -0
  106. package/dist/agents/bug-fixer/types.d.ts.map +1 -0
  107. package/dist/agents/bug-fixer/types.js +9 -0
  108. package/dist/agents/bug-fixer/types.js.map +1 -0
  109. package/dist/agents/factory.d.ts +172 -0
  110. package/dist/agents/factory.d.ts.map +1 -0
  111. package/dist/agents/factory.js +706 -0
  112. package/dist/agents/factory.js.map +1 -0
  113. package/dist/agents/hailer-expert/index.d.ts +8 -0
  114. package/dist/agents/hailer-expert/index.d.ts.map +1 -0
  115. package/dist/agents/hailer-expert/index.js +14 -0
  116. package/dist/agents/hailer-expert/index.js.map +1 -0
  117. package/dist/agents/hal/daemon.d.ts +174 -0
  118. package/dist/agents/hal/daemon.d.ts.map +1 -0
  119. package/dist/agents/hal/daemon.js +1385 -0
  120. package/dist/agents/hal/daemon.js.map +1 -0
  121. package/dist/agents/hal/definitions.d.ts +42 -0
  122. package/dist/agents/hal/definitions.d.ts.map +1 -0
  123. package/dist/agents/hal/definitions.js +300 -0
  124. package/dist/agents/hal/definitions.js.map +1 -0
  125. package/dist/agents/hal/index.d.ts +3 -0
  126. package/dist/agents/hal/index.d.ts.map +1 -0
  127. package/dist/agents/hal/index.js +8 -0
  128. package/dist/agents/hal/index.js.map +1 -0
  129. package/dist/agents/index.d.ts +18 -0
  130. package/dist/agents/index.d.ts.map +1 -0
  131. package/dist/agents/index.js +48 -0
  132. package/dist/agents/index.js.map +1 -0
  133. package/dist/agents/shared/base.d.ts +253 -0
  134. package/dist/agents/shared/base.d.ts.map +1 -0
  135. package/dist/agents/shared/base.js +1122 -0
  136. package/dist/agents/shared/base.js.map +1 -0
  137. package/dist/agents/shared/schemas/action-schema.d.ts +62 -0
  138. package/dist/agents/shared/schemas/action-schema.d.ts.map +1 -0
  139. package/dist/agents/shared/schemas/action-schema.js +483 -0
  140. package/dist/agents/shared/schemas/action-schema.js.map +1 -0
  141. package/dist/agents/shared/services/agent-registry.d.ts +108 -0
  142. package/dist/agents/shared/services/agent-registry.d.ts.map +1 -0
  143. package/dist/agents/shared/services/agent-registry.js +469 -0
  144. package/dist/agents/shared/services/agent-registry.js.map +1 -0
  145. package/dist/agents/shared/services/conversation-manager.d.ts +57 -0
  146. package/dist/agents/shared/services/conversation-manager.d.ts.map +1 -0
  147. package/dist/agents/shared/services/conversation-manager.js +168 -0
  148. package/dist/agents/shared/services/conversation-manager.js.map +1 -0
  149. package/dist/agents/shared/services/mcp-client.d.ts +56 -0
  150. package/dist/agents/shared/services/mcp-client.d.ts.map +1 -0
  151. package/dist/agents/shared/services/mcp-client.js +124 -0
  152. package/dist/agents/shared/services/mcp-client.js.map +1 -0
  153. package/dist/agents/shared/services/message-classifier.d.ts +37 -0
  154. package/dist/agents/shared/services/message-classifier.d.ts.map +1 -0
  155. package/dist/agents/shared/services/message-classifier.js +203 -0
  156. package/dist/agents/shared/services/message-classifier.js.map +1 -0
  157. package/dist/agents/shared/services/message-formatter.d.ts +89 -0
  158. package/dist/agents/shared/services/message-formatter.d.ts.map +1 -0
  159. package/dist/agents/shared/services/message-formatter.js +390 -0
  160. package/dist/agents/shared/services/message-formatter.js.map +1 -0
  161. package/dist/agents/shared/services/session-logger.d.ts +162 -0
  162. package/dist/agents/shared/services/session-logger.d.ts.map +1 -0
  163. package/dist/agents/shared/services/session-logger.js +724 -0
  164. package/dist/agents/shared/services/session-logger.js.map +1 -0
  165. package/dist/agents/shared/services/structured-output-executor.d.ts +88 -0
  166. package/dist/agents/shared/services/structured-output-executor.d.ts.map +1 -0
  167. package/dist/agents/shared/services/structured-output-executor.js +296 -0
  168. package/dist/agents/shared/services/structured-output-executor.js.map +1 -0
  169. package/dist/agents/shared/services/token-billing.d.ts +72 -0
  170. package/dist/agents/shared/services/token-billing.d.ts.map +1 -0
  171. package/dist/agents/shared/services/token-billing.js +198 -0
  172. package/dist/agents/shared/services/token-billing.js.map +1 -0
  173. package/dist/agents/shared/services/tool-executor.d.ts +43 -0
  174. package/dist/agents/shared/services/tool-executor.d.ts.map +1 -0
  175. package/dist/agents/shared/services/tool-executor.js +175 -0
  176. package/dist/agents/shared/services/tool-executor.js.map +1 -0
  177. package/dist/agents/shared/services/typing-indicator.d.ts +24 -0
  178. package/dist/agents/shared/services/typing-indicator.d.ts.map +1 -0
  179. package/dist/agents/shared/services/typing-indicator.js +54 -0
  180. package/dist/agents/shared/services/typing-indicator.js.map +1 -0
  181. package/dist/agents/shared/services/workspace-schema-cache.d.ts +122 -0
  182. package/dist/agents/shared/services/workspace-schema-cache.d.ts.map +1 -0
  183. package/dist/agents/shared/services/workspace-schema-cache.js +507 -0
  184. package/dist/agents/shared/services/workspace-schema-cache.js.map +1 -0
  185. package/dist/agents/shared/specialist.d.ts +91 -0
  186. package/dist/agents/shared/specialist.d.ts.map +1 -0
  187. package/dist/agents/shared/specialist.js +399 -0
  188. package/dist/agents/shared/specialist.js.map +1 -0
  189. package/dist/agents/shared/tool-schema-loader.d.ts +65 -0
  190. package/dist/agents/shared/tool-schema-loader.d.ts.map +1 -0
  191. package/dist/agents/shared/tool-schema-loader.js +238 -0
  192. package/dist/agents/shared/tool-schema-loader.js.map +1 -0
  193. package/dist/agents/shared/types.d.ts +190 -0
  194. package/dist/agents/shared/types.d.ts.map +1 -0
  195. package/dist/agents/shared/types.js +13 -0
  196. package/dist/agents/shared/types.js.map +1 -0
  197. package/dist/app.d.ts.map +1 -0
  198. package/dist/app.js +10 -127
  199. package/dist/app.js.map +1 -0
  200. package/dist/bot/bot-config.d.ts.map +1 -0
  201. package/dist/bot/bot-config.js.map +1 -0
  202. package/dist/bot/bot-manager.d.ts +3 -14
  203. package/dist/bot/bot-manager.d.ts.map +1 -0
  204. package/dist/bot/bot-manager.js +13 -4
  205. package/dist/bot/bot-manager.js.map +1 -0
  206. package/dist/bot/bot.d.ts +23 -102
  207. package/dist/bot/bot.d.ts.map +1 -0
  208. package/dist/bot/bot.js +356 -1212
  209. package/dist/bot/bot.js.map +1 -0
  210. package/dist/bot/operation-logger.d.ts.map +1 -0
  211. package/dist/bot/operation-logger.js.map +1 -0
  212. package/dist/bot/services/__tests__/permission-guard.test.d.ts +2 -0
  213. package/dist/bot/services/__tests__/permission-guard.test.d.ts.map +1 -0
  214. package/dist/bot/services/__tests__/permission-guard.test.js +357 -0
  215. package/dist/bot/services/__tests__/permission-guard.test.js.map +1 -0
  216. package/dist/bot/services/bot-permissions.d.ts +50 -0
  217. package/dist/bot/services/bot-permissions.d.ts.map +1 -0
  218. package/dist/bot/services/bot-permissions.js +198 -0
  219. package/dist/bot/services/bot-permissions.js.map +1 -0
  220. package/dist/bot/services/conversation-manager.d.ts.map +1 -0
  221. package/dist/bot/services/conversation-manager.js.map +1 -0
  222. package/dist/bot/services/index.d.ts +4 -2
  223. package/dist/bot/services/index.d.ts.map +1 -0
  224. package/dist/bot/services/index.js +10 -5
  225. package/dist/bot/services/index.js.map +1 -0
  226. package/dist/bot/services/message-classifier.d.ts +1 -1
  227. package/dist/bot/services/message-classifier.d.ts.map +1 -0
  228. package/dist/bot/services/message-classifier.js.map +1 -0
  229. package/dist/bot/services/message-formatter.d.ts.map +1 -0
  230. package/dist/bot/services/message-formatter.js.map +1 -0
  231. package/dist/bot/services/permission-guard.d.ts.map +1 -0
  232. package/dist/bot/services/permission-guard.js.map +1 -0
  233. package/dist/bot/services/session-logger.d.ts.map +1 -0
  234. package/dist/bot/services/session-logger.js.map +1 -0
  235. package/dist/bot/services/signal-router.d.ts +32 -0
  236. package/dist/bot/services/signal-router.d.ts.map +1 -0
  237. package/dist/bot/services/signal-router.js +132 -0
  238. package/dist/bot/services/signal-router.js.map +1 -0
  239. package/dist/bot/services/system-prompt.d.ts +12 -0
  240. package/dist/bot/services/system-prompt.d.ts.map +1 -0
  241. package/dist/bot/services/system-prompt.js +93 -0
  242. package/dist/bot/services/system-prompt.js.map +1 -0
  243. package/dist/bot/services/token-billing.d.ts.map +1 -0
  244. package/dist/bot/services/token-billing.js.map +1 -0
  245. package/dist/bot/services/types.d.ts +7 -34
  246. package/dist/bot/services/types.d.ts.map +1 -0
  247. package/dist/bot/services/types.js +0 -3
  248. package/dist/bot/services/types.js.map +1 -0
  249. package/dist/bot/services/typing-indicator.d.ts.map +1 -0
  250. package/dist/bot/services/typing-indicator.js.map +1 -0
  251. package/dist/bot/services/workspace-refresh.d.ts +47 -0
  252. package/dist/bot/services/workspace-refresh.d.ts.map +1 -0
  253. package/dist/bot/services/workspace-refresh.js +154 -0
  254. package/dist/bot/services/workspace-refresh.js.map +1 -0
  255. package/dist/bot/services/workspace-schema-cache.d.ts.map +1 -0
  256. package/dist/bot/services/workspace-schema-cache.js.map +1 -0
  257. package/dist/bot/tool-executor.d.ts.map +1 -0
  258. package/dist/bot/tool-executor.js.map +1 -0
  259. package/dist/bot/workspace-overview.d.ts.map +1 -0
  260. package/dist/bot/workspace-overview.js.map +1 -0
  261. package/dist/bot-config/constants.d.ts +6 -0
  262. package/dist/bot-config/constants.d.ts.map +1 -0
  263. package/dist/bot-config/constants.js +43 -0
  264. package/dist/bot-config/constants.js.map +1 -0
  265. package/dist/bot-config/context.d.ts +117 -0
  266. package/dist/bot-config/context.d.ts.map +1 -0
  267. package/dist/bot-config/context.js +354 -0
  268. package/dist/bot-config/context.js.map +1 -0
  269. package/dist/bot-config/index.d.ts +12 -0
  270. package/dist/bot-config/index.d.ts.map +1 -0
  271. package/dist/bot-config/index.js +29 -0
  272. package/dist/bot-config/index.js.map +1 -0
  273. package/dist/bot-config/loader.d.ts +40 -0
  274. package/dist/bot-config/loader.d.ts.map +1 -0
  275. package/dist/bot-config/loader.js +285 -0
  276. package/dist/bot-config/loader.js.map +1 -0
  277. package/dist/bot-config/persistence.d.ts +17 -0
  278. package/dist/bot-config/persistence.d.ts.map +1 -0
  279. package/dist/bot-config/persistence.js +51 -0
  280. package/dist/bot-config/persistence.js.map +1 -0
  281. package/dist/bot-config/state.d.ts +15 -0
  282. package/dist/bot-config/state.d.ts.map +1 -0
  283. package/dist/bot-config/state.js +46 -0
  284. package/dist/bot-config/state.js.map +1 -0
  285. package/dist/bot-config/tools.d.ts +28 -0
  286. package/dist/bot-config/tools.d.ts.map +1 -0
  287. package/dist/bot-config/tools.js +279 -0
  288. package/dist/bot-config/tools.js.map +1 -0
  289. package/dist/bot-config/types.d.ts +52 -0
  290. package/dist/bot-config/types.d.ts.map +1 -0
  291. package/dist/bot-config/types.js +6 -0
  292. package/dist/bot-config/types.js.map +1 -0
  293. package/dist/bot-config/webhooks.d.ts +23 -0
  294. package/dist/bot-config/webhooks.d.ts.map +1 -0
  295. package/dist/bot-config/webhooks.js +199 -0
  296. package/dist/bot-config/webhooks.js.map +1 -0
  297. package/dist/cli.d.ts.map +1 -0
  298. package/dist/cli.js.map +1 -0
  299. package/dist/client/agents/base.d.ts +207 -0
  300. package/dist/client/agents/base.d.ts.map +1 -0
  301. package/dist/client/agents/base.js +744 -0
  302. package/dist/client/agents/base.js.map +1 -0
  303. package/dist/client/agents/definitions.d.ts +53 -0
  304. package/dist/client/agents/definitions.d.ts.map +1 -0
  305. package/dist/client/agents/definitions.js +263 -0
  306. package/dist/client/agents/definitions.js.map +1 -0
  307. package/dist/client/agents/orchestrator.d.ts +141 -0
  308. package/dist/client/agents/orchestrator.d.ts.map +1 -0
  309. package/dist/client/agents/orchestrator.js +1062 -0
  310. package/dist/client/agents/orchestrator.js.map +1 -0
  311. package/dist/client/agents/specialist.d.ts +86 -0
  312. package/dist/client/agents/specialist.d.ts.map +1 -0
  313. package/dist/client/agents/specialist.js +340 -0
  314. package/dist/client/agents/specialist.js.map +1 -0
  315. package/dist/client/bot-entrypoint.d.ts +7 -0
  316. package/dist/client/bot-entrypoint.d.ts.map +1 -0
  317. package/dist/client/bot-entrypoint.js +103 -0
  318. package/dist/client/bot-entrypoint.js.map +1 -0
  319. package/dist/client/bot-manager.d.ts +44 -0
  320. package/dist/client/bot-manager.d.ts.map +1 -0
  321. package/dist/client/bot-manager.js +173 -0
  322. package/dist/client/bot-manager.js.map +1 -0
  323. package/dist/client/bot-runner.d.ts +35 -0
  324. package/dist/client/bot-runner.d.ts.map +1 -0
  325. package/dist/client/bot-runner.js +188 -0
  326. package/dist/client/bot-runner.js.map +1 -0
  327. package/dist/client/chat-agent-daemon.d.ts +464 -0
  328. package/dist/client/chat-agent-daemon.d.ts.map +1 -0
  329. package/dist/client/chat-agent-daemon.js +1774 -0
  330. package/dist/client/chat-agent-daemon.js.map +1 -0
  331. package/dist/client/daemon-factory.d.ts +106 -0
  332. package/dist/client/daemon-factory.d.ts.map +1 -0
  333. package/dist/client/daemon-factory.js +301 -0
  334. package/dist/client/daemon-factory.js.map +1 -0
  335. package/dist/client/factory.d.ts +111 -0
  336. package/dist/client/factory.d.ts.map +1 -0
  337. package/dist/client/factory.js +314 -0
  338. package/dist/client/factory.js.map +1 -0
  339. package/dist/client/index.d.ts +17 -0
  340. package/dist/client/index.d.ts.map +1 -0
  341. package/dist/client/index.js +38 -0
  342. package/dist/client/index.js.map +1 -0
  343. package/dist/client/multi-bot-manager.d.ts +42 -0
  344. package/dist/client/multi-bot-manager.d.ts.map +1 -0
  345. package/dist/client/multi-bot-manager.js +161 -0
  346. package/dist/client/multi-bot-manager.js.map +1 -0
  347. package/dist/client/orchestrator-daemon.d.ts +87 -0
  348. package/dist/client/orchestrator-daemon.d.ts.map +1 -0
  349. package/dist/client/orchestrator-daemon.js +444 -0
  350. package/dist/client/orchestrator-daemon.js.map +1 -0
  351. package/dist/client/server.d.ts +8 -0
  352. package/dist/client/server.d.ts.map +1 -0
  353. package/dist/client/server.js +251 -0
  354. package/dist/client/server.js.map +1 -0
  355. package/dist/client/services/agent-registry.d.ts +108 -0
  356. package/dist/client/services/agent-registry.d.ts.map +1 -0
  357. package/dist/client/services/agent-registry.js +630 -0
  358. package/dist/client/services/agent-registry.js.map +1 -0
  359. package/dist/client/services/conversation-manager.d.ts +50 -0
  360. package/dist/client/services/conversation-manager.d.ts.map +1 -0
  361. package/dist/client/services/conversation-manager.js +136 -0
  362. package/dist/client/services/conversation-manager.js.map +1 -0
  363. package/dist/client/services/mcp-client.d.ts +48 -0
  364. package/dist/client/services/mcp-client.d.ts.map +1 -0
  365. package/dist/client/services/mcp-client.js +105 -0
  366. package/dist/client/services/mcp-client.js.map +1 -0
  367. package/dist/client/services/message-classifier.d.ts +37 -0
  368. package/dist/client/services/message-classifier.d.ts.map +1 -0
  369. package/dist/client/services/message-classifier.js +187 -0
  370. package/dist/client/services/message-classifier.js.map +1 -0
  371. package/dist/client/services/message-formatter.d.ts +84 -0
  372. package/dist/client/services/message-formatter.d.ts.map +1 -0
  373. package/dist/client/services/message-formatter.js +353 -0
  374. package/dist/client/services/message-formatter.js.map +1 -0
  375. package/dist/client/services/session-logger.d.ts +106 -0
  376. package/dist/client/services/session-logger.d.ts.map +1 -0
  377. package/dist/client/services/session-logger.js +446 -0
  378. package/dist/client/services/session-logger.js.map +1 -0
  379. package/dist/client/services/tool-executor.d.ts +41 -0
  380. package/dist/client/services/tool-executor.d.ts.map +1 -0
  381. package/dist/client/services/tool-executor.js +169 -0
  382. package/dist/client/services/tool-executor.js.map +1 -0
  383. package/dist/client/services/workspace-schema-cache.d.ts +149 -0
  384. package/dist/client/services/workspace-schema-cache.d.ts.map +1 -0
  385. package/dist/client/services/workspace-schema-cache.js +732 -0
  386. package/dist/client/services/workspace-schema-cache.js.map +1 -0
  387. package/dist/client/specialist-daemon.d.ts +77 -0
  388. package/dist/client/specialist-daemon.d.ts.map +1 -0
  389. package/dist/client/specialist-daemon.js +197 -0
  390. package/dist/client/specialist-daemon.js.map +1 -0
  391. package/dist/client/specialists.d.ts +53 -0
  392. package/dist/client/specialists.d.ts.map +1 -0
  393. package/dist/client/specialists.js +178 -0
  394. package/dist/client/specialists.js.map +1 -0
  395. package/dist/client/tool-schema-loader.d.ts +62 -0
  396. package/dist/client/tool-schema-loader.d.ts.map +1 -0
  397. package/dist/client/tool-schema-loader.js +232 -0
  398. package/dist/client/tool-schema-loader.js.map +1 -0
  399. package/dist/client/types.d.ts +327 -0
  400. package/dist/client/types.d.ts.map +1 -0
  401. package/dist/client/types.js +121 -0
  402. package/dist/client/types.js.map +1 -0
  403. package/dist/commands/seed-config.d.ts +9 -0
  404. package/dist/commands/seed-config.d.ts.map +1 -0
  405. package/dist/commands/seed-config.js +377 -0
  406. package/dist/commands/seed-config.js.map +1 -0
  407. package/dist/commands/setup.d.ts +11 -0
  408. package/dist/commands/setup.d.ts.map +1 -0
  409. package/dist/commands/setup.js +320 -0
  410. package/dist/commands/setup.js.map +1 -0
  411. package/dist/config.d.ts +0 -9
  412. package/dist/config.d.ts.map +1 -0
  413. package/dist/config.js +0 -15
  414. package/dist/config.js.map +1 -0
  415. package/dist/core.d.ts.map +1 -0
  416. package/dist/core.js.map +1 -0
  417. package/dist/lib/discussion-lock.d.ts.map +1 -0
  418. package/dist/lib/discussion-lock.js.map +1 -0
  419. package/dist/lib/logger.d.ts.map +1 -0
  420. package/dist/lib/logger.js.map +1 -0
  421. package/dist/lib/request-logger.d.ts.map +1 -0
  422. package/dist/lib/request-logger.js.map +1 -0
  423. package/dist/mcp/UserContextCache.d.ts.map +1 -0
  424. package/dist/mcp/UserContextCache.js.map +1 -0
  425. package/dist/mcp/auth.d.ts.map +1 -0
  426. package/dist/mcp/auth.js.map +1 -0
  427. package/dist/mcp/hailer-clients.d.ts.map +1 -0
  428. package/dist/mcp/hailer-clients.js +2 -2
  429. package/dist/mcp/hailer-clients.js.map +1 -0
  430. package/dist/mcp/session-store.d.ts.map +1 -0
  431. package/dist/mcp/session-store.js.map +1 -0
  432. package/dist/mcp/signal-handler.d.ts.map +1 -0
  433. package/dist/mcp/signal-handler.js.map +1 -0
  434. package/dist/mcp/tool-registry.d.ts +10 -115
  435. package/dist/mcp/tool-registry.d.ts.map +1 -0
  436. package/dist/mcp/tool-registry.js +39 -363
  437. package/dist/mcp/tool-registry.js.map +1 -0
  438. package/dist/mcp/tools/__tests__/discussion-forward.test.d.ts +2 -0
  439. package/dist/mcp/tools/__tests__/discussion-forward.test.d.ts.map +1 -0
  440. package/dist/mcp/tools/__tests__/discussion-forward.test.js +218 -0
  441. package/dist/mcp/tools/__tests__/discussion-forward.test.js.map +1 -0
  442. package/dist/mcp/tools/activity.d.ts +3 -0
  443. package/dist/mcp/tools/activity.d.ts.map +1 -0
  444. package/dist/mcp/tools/activity.js +8 -1
  445. package/dist/mcp/tools/activity.js.map +1 -0
  446. package/dist/mcp/tools/app-core.d.ts +3 -0
  447. package/dist/mcp/tools/app-core.d.ts.map +1 -0
  448. package/dist/mcp/tools/app-core.js +9 -2
  449. package/dist/mcp/tools/app-core.js.map +1 -0
  450. package/dist/mcp/tools/app-marketplace.d.ts +3 -0
  451. package/dist/mcp/tools/app-marketplace.d.ts.map +1 -0
  452. package/dist/mcp/tools/app-marketplace.js +13 -1
  453. package/dist/mcp/tools/app-marketplace.js.map +1 -0
  454. package/dist/mcp/tools/app-member.d.ts +3 -0
  455. package/dist/mcp/tools/app-member.d.ts.map +1 -0
  456. package/dist/mcp/tools/app-member.js +6 -1
  457. package/dist/mcp/tools/app-member.js.map +1 -0
  458. package/dist/mcp/tools/app-scaffold.d.ts +3 -0
  459. package/dist/mcp/tools/app-scaffold.d.ts.map +1 -0
  460. package/dist/mcp/tools/app-scaffold.js +15 -11
  461. package/dist/mcp/tools/app-scaffold.js.map +1 -0
  462. package/dist/mcp/tools/app.d.ts.map +1 -0
  463. package/dist/mcp/tools/app.js.map +1 -0
  464. package/dist/mcp/tools/bot-config/constants.d.ts.map +1 -0
  465. package/dist/mcp/tools/bot-config/constants.js.map +1 -0
  466. package/dist/mcp/tools/bot-config/core.d.ts.map +1 -0
  467. package/dist/mcp/tools/bot-config/core.js.map +1 -0
  468. package/dist/mcp/tools/bot-config/index.d.ts.map +1 -0
  469. package/dist/mcp/tools/bot-config/index.js.map +1 -0
  470. package/dist/mcp/tools/bot-config/tools.d.ts.map +1 -0
  471. package/dist/mcp/tools/bot-config/tools.js.map +1 -0
  472. package/dist/mcp/tools/bot-config/types.d.ts.map +1 -0
  473. package/dist/mcp/tools/bot-config/types.js.map +1 -0
  474. package/dist/mcp/tools/bug-fixer-tools.d.ts.map +1 -0
  475. package/dist/mcp/tools/bug-fixer-tools.js.map +1 -0
  476. package/dist/mcp/tools/company.d.ts +3 -0
  477. package/dist/mcp/tools/company.d.ts.map +1 -0
  478. package/dist/mcp/tools/company.js +5 -1
  479. package/dist/mcp/tools/company.js.map +1 -0
  480. package/dist/mcp/tools/discussion.d.ts +3 -0
  481. package/dist/mcp/tools/discussion.d.ts.map +1 -0
  482. package/dist/mcp/tools/discussion.js +13 -2
  483. package/dist/mcp/tools/discussion.js.map +1 -0
  484. package/dist/mcp/tools/document.d.ts.map +1 -0
  485. package/dist/mcp/tools/document.js.map +1 -0
  486. package/dist/mcp/tools/file.d.ts +3 -0
  487. package/dist/mcp/tools/file.d.ts.map +1 -0
  488. package/dist/mcp/tools/file.js +6 -1
  489. package/dist/mcp/tools/file.js.map +1 -0
  490. package/dist/mcp/tools/index.d.ts +7 -0
  491. package/dist/mcp/tools/index.d.ts.map +1 -0
  492. package/dist/mcp/tools/index.js +34 -0
  493. package/dist/mcp/tools/index.js.map +1 -0
  494. package/dist/mcp/tools/insight.d.ts +3 -0
  495. package/dist/mcp/tools/insight.d.ts.map +1 -0
  496. package/dist/mcp/tools/insight.js +18 -8
  497. package/dist/mcp/tools/insight.js.map +1 -0
  498. package/dist/mcp/tools/investigate.d.ts.map +1 -0
  499. package/dist/mcp/tools/investigate.js.map +1 -0
  500. package/dist/mcp/tools/user.d.ts +3 -0
  501. package/dist/mcp/tools/user.d.ts.map +1 -0
  502. package/dist/mcp/tools/user.js +6 -1
  503. package/dist/mcp/tools/user.js.map +1 -0
  504. package/dist/mcp/tools/workflow-permissions.d.ts +3 -0
  505. package/dist/mcp/tools/workflow-permissions.d.ts.map +1 -0
  506. package/dist/mcp/tools/workflow-permissions.js +8 -1
  507. package/dist/mcp/tools/workflow-permissions.js.map +1 -0
  508. package/dist/mcp/tools/workflow.d.ts +3 -0
  509. package/dist/mcp/tools/workflow.d.ts.map +1 -0
  510. package/dist/mcp/tools/workflow.js +29 -28
  511. package/dist/mcp/tools/workflow.js.map +1 -0
  512. package/dist/mcp/utils/api-errors.d.ts.map +1 -0
  513. package/dist/mcp/utils/api-errors.js.map +1 -0
  514. package/dist/mcp/utils/data-transformers.d.ts.map +1 -0
  515. package/dist/mcp/utils/data-transformers.js.map +1 -0
  516. package/dist/mcp/utils/file-upload.d.ts.map +1 -0
  517. package/dist/mcp/utils/file-upload.js.map +1 -0
  518. package/dist/mcp/utils/hailer-api-client.d.ts.map +1 -0
  519. package/dist/mcp/utils/hailer-api-client.js.map +1 -0
  520. package/dist/mcp/utils/index.d.ts +4 -11
  521. package/dist/mcp/utils/index.d.ts.map +1 -0
  522. package/dist/mcp/utils/index.js +5 -36
  523. package/dist/mcp/utils/index.js.map +1 -0
  524. package/dist/mcp/utils/logger.d.ts.map +1 -0
  525. package/dist/mcp/utils/logger.js.map +1 -0
  526. package/dist/mcp/utils/pagination.d.ts.map +1 -0
  527. package/dist/mcp/utils/pagination.js.map +1 -0
  528. package/dist/mcp/utils/response-builder.d.ts.map +1 -0
  529. package/dist/mcp/utils/response-builder.js.map +1 -0
  530. package/dist/mcp/utils/role-utils.d.ts +0 -32
  531. package/dist/mcp/utils/role-utils.d.ts.map +1 -0
  532. package/dist/mcp/utils/role-utils.js +0 -73
  533. package/dist/mcp/utils/role-utils.js.map +1 -0
  534. package/dist/mcp/utils/tool-helpers.d.ts +0 -25
  535. package/dist/mcp/utils/tool-helpers.d.ts.map +1 -0
  536. package/dist/mcp/utils/tool-helpers.js +0 -34
  537. package/dist/mcp/utils/tool-helpers.js.map +1 -0
  538. package/dist/mcp/utils/types.d.ts.map +1 -0
  539. package/dist/mcp/utils/types.js.map +1 -0
  540. package/dist/mcp/webhook-handler.d.ts +4 -34
  541. package/dist/mcp/webhook-handler.d.ts.map +1 -0
  542. package/dist/mcp/webhook-handler.js +57 -74
  543. package/dist/mcp/webhook-handler.js.map +1 -0
  544. package/dist/mcp/workspace-cache.d.ts.map +1 -0
  545. package/dist/mcp/workspace-cache.js.map +1 -0
  546. package/dist/mcp-server.d.ts.map +1 -0
  547. package/dist/mcp-server.js +3 -78
  548. package/dist/mcp-server.js.map +1 -0
  549. package/dist/modules/bug-reports/bug-config.d.ts +25 -0
  550. package/dist/modules/bug-reports/bug-config.d.ts.map +1 -0
  551. package/dist/modules/bug-reports/bug-config.js +187 -0
  552. package/dist/modules/bug-reports/bug-config.js.map +1 -0
  553. package/dist/modules/bug-reports/bug-monitor.d.ts +108 -0
  554. package/dist/modules/bug-reports/bug-monitor.d.ts.map +1 -0
  555. package/dist/modules/bug-reports/bug-monitor.js +510 -0
  556. package/dist/modules/bug-reports/bug-monitor.js.map +1 -0
  557. package/dist/modules/bug-reports/giuseppe-agent.d.ts +58 -0
  558. package/dist/modules/bug-reports/giuseppe-agent.d.ts.map +1 -0
  559. package/dist/modules/bug-reports/giuseppe-agent.js +467 -0
  560. package/dist/modules/bug-reports/giuseppe-agent.js.map +1 -0
  561. package/dist/modules/bug-reports/giuseppe-ai.d.ts +83 -0
  562. package/dist/modules/bug-reports/giuseppe-ai.d.ts.map +1 -0
  563. package/dist/modules/bug-reports/giuseppe-ai.js +466 -0
  564. package/dist/modules/bug-reports/giuseppe-ai.js.map +1 -0
  565. package/dist/modules/bug-reports/giuseppe-bot.d.ts +110 -0
  566. package/dist/modules/bug-reports/giuseppe-bot.d.ts.map +1 -0
  567. package/dist/modules/bug-reports/giuseppe-bot.js +804 -0
  568. package/dist/modules/bug-reports/giuseppe-bot.js.map +1 -0
  569. package/dist/modules/bug-reports/giuseppe-daemon.d.ts +80 -0
  570. package/dist/modules/bug-reports/giuseppe-daemon.d.ts.map +1 -0
  571. package/dist/modules/bug-reports/giuseppe-daemon.js +617 -0
  572. package/dist/modules/bug-reports/giuseppe-daemon.js.map +1 -0
  573. package/dist/modules/bug-reports/giuseppe-files.d.ts +64 -0
  574. package/dist/modules/bug-reports/giuseppe-files.d.ts.map +1 -0
  575. package/dist/modules/bug-reports/giuseppe-files.js +375 -0
  576. package/dist/modules/bug-reports/giuseppe-files.js.map +1 -0
  577. package/dist/modules/bug-reports/giuseppe-git.d.ts +48 -0
  578. package/dist/modules/bug-reports/giuseppe-git.d.ts.map +1 -0
  579. package/dist/modules/bug-reports/giuseppe-git.js +298 -0
  580. package/dist/modules/bug-reports/giuseppe-git.js.map +1 -0
  581. package/dist/modules/bug-reports/giuseppe-lsp.d.ts +113 -0
  582. package/dist/modules/bug-reports/giuseppe-lsp.d.ts.map +1 -0
  583. package/dist/modules/bug-reports/giuseppe-lsp.js +485 -0
  584. package/dist/modules/bug-reports/giuseppe-lsp.js.map +1 -0
  585. package/dist/modules/bug-reports/giuseppe-prompt.d.ts +5 -0
  586. package/dist/modules/bug-reports/giuseppe-prompt.d.ts.map +1 -0
  587. package/dist/modules/bug-reports/giuseppe-prompt.js +94 -0
  588. package/dist/modules/bug-reports/giuseppe-prompt.js.map +1 -0
  589. package/dist/modules/bug-reports/index.d.ts +77 -0
  590. package/dist/modules/bug-reports/index.d.ts.map +1 -0
  591. package/dist/modules/bug-reports/index.js +215 -0
  592. package/dist/modules/bug-reports/index.js.map +1 -0
  593. package/dist/modules/bug-reports/pending-classification-registry.d.ts +28 -0
  594. package/dist/modules/bug-reports/pending-classification-registry.d.ts.map +1 -0
  595. package/dist/modules/bug-reports/pending-classification-registry.js +50 -0
  596. package/dist/modules/bug-reports/pending-classification-registry.js.map +1 -0
  597. package/dist/modules/bug-reports/pending-fix-registry.d.ts +30 -0
  598. package/dist/modules/bug-reports/pending-fix-registry.d.ts.map +1 -0
  599. package/dist/modules/bug-reports/pending-fix-registry.js +42 -0
  600. package/dist/modules/bug-reports/pending-fix-registry.js.map +1 -0
  601. package/dist/modules/bug-reports/pending-registry.d.ts +27 -0
  602. package/dist/modules/bug-reports/pending-registry.d.ts.map +1 -0
  603. package/dist/modules/bug-reports/pending-registry.js +49 -0
  604. package/dist/modules/bug-reports/pending-registry.js.map +1 -0
  605. package/dist/modules/bug-reports/types.d.ts +123 -0
  606. package/dist/modules/bug-reports/types.d.ts.map +1 -0
  607. package/dist/modules/bug-reports/types.js +9 -0
  608. package/dist/modules/bug-reports/types.js.map +1 -0
  609. package/dist/plugins/bug-fixer/index.d.ts.map +1 -0
  610. package/dist/plugins/bug-fixer/index.js.map +1 -0
  611. package/dist/plugins/bug-fixer/tools.d.ts.map +1 -0
  612. package/dist/plugins/bug-fixer/tools.js.map +1 -0
  613. package/dist/plugins/vipunen/__tests__/tools.test.d.ts +10 -0
  614. package/dist/plugins/vipunen/__tests__/tools.test.d.ts.map +1 -0
  615. package/dist/plugins/vipunen/__tests__/tools.test.js +646 -0
  616. package/dist/plugins/vipunen/__tests__/tools.test.js.map +1 -0
  617. package/dist/plugins/vipunen/client.d.ts.map +1 -0
  618. package/dist/plugins/vipunen/client.js.map +1 -0
  619. package/dist/plugins/vipunen/index.d.ts.map +1 -0
  620. package/dist/plugins/vipunen/index.js.map +1 -0
  621. package/dist/plugins/vipunen/tools.d.ts.map +1 -0
  622. package/dist/plugins/vipunen/tools.js.map +1 -0
  623. package/dist/routes/agents.d.ts +44 -0
  624. package/dist/routes/agents.d.ts.map +1 -0
  625. package/dist/routes/agents.js +311 -0
  626. package/dist/routes/agents.js.map +1 -0
  627. package/dist/services/agent-credential-store.d.ts +73 -0
  628. package/dist/services/agent-credential-store.d.ts.map +1 -0
  629. package/dist/services/agent-credential-store.js +212 -0
  630. package/dist/services/agent-credential-store.js.map +1 -0
  631. package/dist/stdio-server.d.ts.map +1 -0
  632. package/dist/stdio-server.js.map +1 -0
  633. package/dist/workspace/context.d.ts +148 -0
  634. package/dist/workspace/context.d.ts.map +1 -0
  635. package/dist/workspace/context.js +339 -0
  636. package/dist/workspace/context.js.map +1 -0
  637. package/dist/workspace/credentials.d.ts +55 -0
  638. package/dist/workspace/credentials.d.ts.map +1 -0
  639. package/dist/workspace/credentials.js +239 -0
  640. package/dist/workspace/credentials.js.map +1 -0
  641. package/dist/workspace/index.d.ts +21 -0
  642. package/dist/workspace/index.d.ts.map +1 -0
  643. package/dist/workspace/index.js +45 -0
  644. package/dist/workspace/index.js.map +1 -0
  645. package/dist/workspace/loader.d.ts +27 -0
  646. package/dist/workspace/loader.d.ts.map +1 -0
  647. package/dist/workspace/loader.js +222 -0
  648. package/dist/workspace/loader.js.map +1 -0
  649. package/dist/workspace/schema.d.ts +37 -0
  650. package/dist/workspace/schema.d.ts.map +1 -0
  651. package/dist/workspace/schema.js +192 -0
  652. package/dist/workspace/schema.js.map +1 -0
  653. package/package.json +13 -2
  654. package/.claude/.context-watchdog.json +0 -1
  655. package/.claude/.session-checked +0 -1
  656. package/.claude/agents/agent-ada-skill-builder.md +0 -94
  657. package/.claude/agents/agent-alejandro-function-fields.md +0 -342
  658. package/.claude/agents/agent-bjorn-config-audit.md +0 -103
  659. package/.claude/agents/agent-builder-agent-creator.md +0 -130
  660. package/.claude/agents/agent-code-simplifier.md +0 -53
  661. package/.claude/agents/agent-dmitri-activity-crud.md +0 -159
  662. package/.claude/agents/agent-giuseppe-app-builder.md +0 -208
  663. package/.claude/agents/agent-gunther-mcp-tools.md +0 -39
  664. package/.claude/agents/agent-helga-workflow-config.md +0 -204
  665. package/.claude/agents/agent-igor-activity-mover-automation.md +0 -125
  666. package/.claude/agents/agent-ingrid-doc-templates.md +0 -261
  667. package/.claude/agents/agent-ivan-monolith.md +0 -154
  668. package/.claude/agents/agent-kenji-data-reader.md +0 -86
  669. package/.claude/agents/agent-lars-code-inspector.md +0 -102
  670. package/.claude/agents/agent-marco-mockup-builder.md +0 -110
  671. package/.claude/agents/agent-marcus-api-documenter.md +0 -323
  672. package/.claude/agents/agent-marketplace-publisher.md +0 -280
  673. package/.claude/agents/agent-marketplace-reviewer.md +0 -309
  674. package/.claude/agents/agent-permissions-handler.md +0 -208
  675. package/.claude/agents/agent-simple-writer.md +0 -48
  676. package/.claude/agents/agent-svetlana-code-review.md +0 -171
  677. package/.claude/agents/agent-tanya-test-runner.md +0 -333
  678. package/.claude/agents/agent-ui-designer.md +0 -100
  679. package/.claude/agents/agent-viktor-sql-insights.md +0 -212
  680. package/.claude/agents/agent-web-search.md +0 -55
  681. package/.claude/agents/agent-yevgeni-discussions.md +0 -45
  682. package/.claude/agents/agent-zara-zapier.md +0 -159
  683. package/.claude/skills/SDK-activity-patterns/SKILL.md +0 -428
  684. package/.claude/skills/SDK-generate-skill/SKILL.md +0 -92
  685. package/.claude/skills/SDK-init-skill/SKILL.md +0 -127
  686. package/.claude/skills/agent-structure/SKILL.md +0 -98
  687. package/.claude/skills/delegation-routing/SKILL.md +0 -202
  688. package/.claude/skills/frontend-design/SKILL.md +0 -254
  689. package/.claude/skills/hailer-activity-mover/SKILL.md +0 -213
  690. package/.claude/skills/hailer-rest-api/SKILL.md +0 -61
  691. package/.claude/skills/hailer-rest-api/hailer-activities.md +0 -184
  692. package/.claude/skills/hailer-rest-api/hailer-admin.md +0 -473
  693. package/.claude/skills/hailer-rest-api/hailer-calendar.md +0 -256
  694. package/.claude/skills/hailer-rest-api/hailer-feed.md +0 -249
  695. package/.claude/skills/hailer-rest-api/hailer-insights.md +0 -195
  696. package/.claude/skills/hailer-rest-api/hailer-messaging.md +0 -276
  697. package/.claude/skills/hailer-rest-api/hailer-workflows.md +0 -283
  698. package/.claude/skills/insight-join-patterns/SKILL.md +0 -174
  699. package/.claude/skills/json-only-output/SKILL.md +0 -72
  700. package/.claude/skills/mcp-direct-tools/SKILL.md +0 -153
  701. package/.claude/skills/optional-parameters/SKILL.md +0 -72
  702. package/.claude/skills/tool-parameter-usage/SKILL.md +0 -126
  703. package/.claude/skills/tool-response-verification/SKILL.md +0 -92
  704. package/.opencode/agent/agent-ada-skill-builder.md +0 -35
  705. package/.opencode/agent/agent-alejandro-function-fields.md +0 -39
  706. package/.opencode/agent/agent-bjorn-config-audit.md +0 -36
  707. package/.opencode/agent/agent-builder-agent-creator.md +0 -39
  708. package/.opencode/agent/agent-code-simplifier.md +0 -31
  709. package/.opencode/agent/agent-dmitri-activity-crud.md +0 -40
  710. package/.opencode/agent/agent-giuseppe-app-builder.md +0 -37
  711. package/.opencode/agent/agent-gunther-mcp-tools.md +0 -39
  712. package/.opencode/agent/agent-helga-workflow-config.md +0 -204
  713. package/.opencode/agent/agent-igor-activity-mover-automation.md +0 -46
  714. package/.opencode/agent/agent-ingrid-doc-templates.md +0 -39
  715. package/.opencode/agent/agent-ivan-monolith.md +0 -46
  716. package/.opencode/agent/agent-kenji-data-reader.md +0 -53
  717. package/.opencode/agent/agent-lars-code-inspector.md +0 -28
  718. package/.opencode/agent/agent-marco-mockup-builder.md +0 -42
  719. package/.opencode/agent/agent-marcus-api-documenter.md +0 -53
  720. package/.opencode/agent/agent-marketplace-publisher.md +0 -44
  721. package/.opencode/agent/agent-marketplace-reviewer.md +0 -42
  722. package/.opencode/agent/agent-permissions-handler.md +0 -50
  723. package/.opencode/agent/agent-simple-writer.md +0 -45
  724. package/.opencode/agent/agent-svetlana-code-review.md +0 -39
  725. package/.opencode/agent/agent-tanya-test-runner.md +0 -57
  726. package/.opencode/agent/agent-ui-designer.md +0 -56
  727. package/.opencode/agent/agent-viktor-sql-insights.md +0 -34
  728. package/.opencode/agent/agent-web-search.md +0 -42
  729. package/.opencode/agent/agent-yevgeni-discussions.md +0 -37
  730. package/.opencode/agent/agent-zara-zapier.md +0 -53
  731. package/.opencode/commands/app-squad.md +0 -135
  732. package/.opencode/commands/audit-squad.md +0 -158
  733. package/.opencode/commands/autoplan.md +0 -563
  734. package/.opencode/commands/cleanup-squad.md +0 -98
  735. package/.opencode/commands/config-squad.md +0 -106
  736. package/.opencode/commands/crud-squad.md +0 -87
  737. package/.opencode/commands/data-squad.md +0 -97
  738. package/.opencode/commands/debug-squad.md +0 -303
  739. package/.opencode/commands/doc-squad.md +0 -65
  740. package/.opencode/commands/handoff.md +0 -137
  741. package/.opencode/commands/health.md +0 -49
  742. package/.opencode/commands/help-agents.md +0 -151
  743. package/.opencode/commands/help-commands.md +0 -32
  744. package/.opencode/commands/help-faq.md +0 -29
  745. package/.opencode/commands/help-plugins.md +0 -28
  746. package/.opencode/commands/help-skills.md +0 -7
  747. package/.opencode/commands/help-tools.md +0 -40
  748. package/.opencode/commands/help.md +0 -28
  749. package/.opencode/commands/hotfix-squad.md +0 -112
  750. package/.opencode/commands/integration-squad.md +0 -82
  751. package/.opencode/commands/janitor-squad.md +0 -167
  752. package/.opencode/commands/learn-auto.md +0 -120
  753. package/.opencode/commands/learn.md +0 -120
  754. package/.opencode/commands/mcp-list.md +0 -27
  755. package/.opencode/commands/onboard-squad.md +0 -140
  756. package/.opencode/commands/plan-workspace.md +0 -732
  757. package/.opencode/commands/prd.md +0 -131
  758. package/.opencode/commands/project-status.md +0 -82
  759. package/.opencode/commands/publish.md +0 -138
  760. package/.opencode/commands/recap.md +0 -69
  761. package/.opencode/commands/restore.md +0 -64
  762. package/.opencode/commands/review-squad.md +0 -152
  763. package/.opencode/commands/save.md +0 -24
  764. package/.opencode/commands/stats.md +0 -19
  765. package/.opencode/commands/swarm.md +0 -210
  766. package/.opencode/commands/tool-builder.md +0 -39
  767. package/.opencode/commands/ws-pull.md +0 -44
  768. package/test-billing-server.js +0 -136
@@ -0,0 +1,507 @@
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
+ * On bot startup:
12
+ * 1. Check memory cache first
13
+ * 2. If cache miss: Query list_workflows to find AI Agent workflows by name
14
+ * 3. If missing, install them from marketplace
15
+ * 4. Query get_workflow_schema to get field IDs
16
+ * 5. Store in memory cache for session duration
17
+ */
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.WorkspaceSchemaCacheService = void 0;
20
+ /** AI Agent template ID in marketplace (HR for AI Agents) */
21
+ const AI_AGENT_TEMPLATE_ID = "685ab3c39af7445dd5384ffd";
22
+ /** Known workflow names from the AI Agent template (partial match, case insensitive) */
23
+ const TEMPLATE_WORKFLOW_PATTERNS = {
24
+ SESSION_LOG: ["session log", "session_log"],
25
+ AGENT_DIRECTORY: ["agent directory", "agent_directory"],
26
+ POSITIONS: ["positions", "position"],
27
+ TEAMS: ["teams", "team"],
28
+ TOOL_REGISTRY: ["tool registry", "tool_registry", "mcp server"],
29
+ MCP_CONFIG: ["mcp config", "mcp_config", "mcp configuration"],
30
+ };
31
+ class WorkspaceSchemaCacheService {
32
+ logger;
33
+ callMcpTool;
34
+ cache = new Map();
35
+ constructor(logger, callMcpTool) {
36
+ this.logger = logger;
37
+ this.callMcpTool = callMcpTool;
38
+ }
39
+ /**
40
+ * Initialize schema cache for a workspace
41
+ * Call this on bot startup after connecting to Hailer
42
+ *
43
+ * Set SKIP_SCHEMA_DISCOVERY=true to skip API calls on startup.
44
+ * HAL can discover workflows on-demand via MCP tools when needed.
45
+ */
46
+ async initializeForWorkspace(workspaceId) {
47
+ // 1. Check memory cache first
48
+ const existing = this.cache.get(workspaceId);
49
+ if (existing?.initialized) {
50
+ this.logger.debug("Using memory-cached workspace schemas", { workspaceId });
51
+ return existing;
52
+ }
53
+ // 2. Check if schema discovery is disabled (saves dozens of API calls on startup)
54
+ if (process.env.SKIP_SCHEMA_DISCOVERY === 'true') {
55
+ this.logger.info("Schema discovery skipped (SKIP_SCHEMA_DISCOVERY=true)", { workspaceId });
56
+ const schemas = {
57
+ workspaceId,
58
+ initialized: true,
59
+ };
60
+ this.cache.set(workspaceId, schemas);
61
+ return schemas;
62
+ }
63
+ // 3. Discover via API
64
+ this.logger.info("Discovering workspace schemas via API", { workspaceId });
65
+ const schemas = {
66
+ workspaceId,
67
+ initialized: false,
68
+ };
69
+ try {
70
+ // Fetch all workflows in workspace
71
+ const workflowsResult = await this.callMcpTool("list_workflows", {
72
+ workspace: workspaceId,
73
+ });
74
+ const workflowsText = workflowsResult?.content?.[0]?.text;
75
+ if (!workflowsText) {
76
+ this.logger.warn("No workflows found in workspace", { workspaceId });
77
+ schemas.initialized = true;
78
+ this.cache.set(workspaceId, schemas);
79
+ return schemas;
80
+ }
81
+ // Parse workflows
82
+ const workflows = this.parseWorkflows(workflowsText);
83
+ this.logger.debug("Found workflows", { workspaceId, count: workflows.length });
84
+ // Find template workflows
85
+ this.mapWorkflowsToSchemas(workflows, schemas);
86
+ // Check if required workflows are missing
87
+ const missingRequired = !schemas.sessionLog || !schemas.agentDirectory;
88
+ if (missingRequired) {
89
+ this.logger.info("AI Agent workflows not found, installing from marketplace", { workspaceId });
90
+ const installed = await this.installAgentTemplate(workspaceId);
91
+ if (installed) {
92
+ // Re-fetch workflows after installation
93
+ const refreshResult = await this.callMcpTool("list_workflows", {
94
+ workspace: workspaceId,
95
+ });
96
+ const refreshText = refreshResult?.content?.[0]?.text;
97
+ if (refreshText) {
98
+ const refreshedWorkflows = this.parseWorkflows(refreshText);
99
+ this.mapWorkflowsToSchemas(refreshedWorkflows, schemas);
100
+ }
101
+ }
102
+ }
103
+ // Load detailed schemas for found workflows
104
+ await this.loadDetailedSchemas(schemas);
105
+ schemas.initialized = true;
106
+ this.cache.set(workspaceId, schemas);
107
+ this.logger.info("Workspace schemas cached", {
108
+ workspaceId,
109
+ hasSessionLog: !!schemas.sessionLog,
110
+ hasAgentDirectory: !!schemas.agentDirectory,
111
+ hasPositions: !!schemas.positions,
112
+ });
113
+ return schemas;
114
+ }
115
+ catch (error) {
116
+ this.logger.error("Failed to initialize workspace schemas", {
117
+ workspaceId,
118
+ error: error instanceof Error ? error.message : String(error),
119
+ });
120
+ schemas.initialized = true; // Mark as initialized even on error to prevent retry loops
121
+ this.cache.set(workspaceId, schemas);
122
+ return schemas;
123
+ }
124
+ }
125
+ /**
126
+ * Get cached schemas for a workspace
127
+ */
128
+ getSchemas(workspaceId) {
129
+ return this.cache.get(workspaceId);
130
+ }
131
+ /**
132
+ * Get Session Log schema for a workspace
133
+ */
134
+ getSessionLogSchema(workspaceId) {
135
+ return this.cache.get(workspaceId)?.sessionLog;
136
+ }
137
+ /**
138
+ * Get Agent Directory schema for a workspace
139
+ */
140
+ getAgentDirectorySchema(workspaceId) {
141
+ return this.cache.get(workspaceId)?.agentDirectory;
142
+ }
143
+ /**
144
+ * Get Positions schema for a workspace
145
+ */
146
+ getPositionsSchema(workspaceId) {
147
+ return this.cache.get(workspaceId)?.positions;
148
+ }
149
+ /**
150
+ * Get Teams schema for a workspace
151
+ */
152
+ getTeamsSchema(workspaceId) {
153
+ return this.cache.get(workspaceId)?.teams;
154
+ }
155
+ /**
156
+ * Get Tool Registry schema for a workspace
157
+ */
158
+ getToolRegistrySchema(workspaceId) {
159
+ return this.cache.get(workspaceId)?.toolRegistry;
160
+ }
161
+ /**
162
+ * Get MCP Config schema for a workspace
163
+ */
164
+ getMcpConfigSchema(workspaceId) {
165
+ return this.cache.get(workspaceId)?.mcpConfig;
166
+ }
167
+ /**
168
+ * Check if a workspace has the AI Agent template installed
169
+ */
170
+ hasAgentTemplate(workspaceId) {
171
+ const schemas = this.cache.get(workspaceId);
172
+ return !!(schemas?.sessionLog && schemas?.agentDirectory);
173
+ }
174
+ /**
175
+ * Check if workflow name matches a pattern (case insensitive, ignores emojis)
176
+ */
177
+ matchesPattern(workflowName, patterns) {
178
+ // Normalize: lowercase, remove emojis and extra whitespace
179
+ const normalized = workflowName
180
+ .toLowerCase()
181
+ .replace(/[\u{1F300}-\u{1F9FF}]/gu, "") // Remove emojis
182
+ .replace(/\s+/g, " ")
183
+ .trim();
184
+ return patterns.some(pattern => normalized.includes(pattern));
185
+ }
186
+ /**
187
+ * Map workflow list to schema slots (using pattern matching)
188
+ */
189
+ mapWorkflowsToSchemas(workflows, schemas) {
190
+ for (const workflow of workflows) {
191
+ // Filter by workspace if specified
192
+ if (schemas.workspaceId && workflow.workspaceId && workflow.workspaceId !== schemas.workspaceId) {
193
+ continue;
194
+ }
195
+ if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.SESSION_LOG)) {
196
+ schemas.sessionLog = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
197
+ }
198
+ else if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.AGENT_DIRECTORY)) {
199
+ schemas.agentDirectory = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
200
+ }
201
+ else if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.POSITIONS)) {
202
+ schemas.positions = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
203
+ }
204
+ else if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.TEAMS) && workflow.name.toLowerCase().includes("team")) {
205
+ // Be more specific for Teams to avoid matching "Teams" workflow in sports data
206
+ if (workflow.name.includes("🎖️") || workflow.name.toLowerCase() === "teams") {
207
+ schemas.teams = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
208
+ }
209
+ }
210
+ else if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.TOOL_REGISTRY)) {
211
+ schemas.toolRegistry = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
212
+ }
213
+ else if (this.matchesPattern(workflow.name, TEMPLATE_WORKFLOW_PATTERNS.MCP_CONFIG)) {
214
+ schemas.mcpConfig = { workflowId: workflow.id, name: workflow.name, phases: {}, fields: {} };
215
+ }
216
+ }
217
+ }
218
+ /**
219
+ * Load detailed schemas (phases, fields) for all found workflows
220
+ */
221
+ async loadDetailedSchemas(schemas) {
222
+ const schemaProps = ['sessionLog', 'agentDirectory', 'positions', 'teams', 'toolRegistry', 'mcpConfig'];
223
+ for (const prop of schemaProps) {
224
+ if (schemas[prop]) {
225
+ await this.loadWorkflowSchemaDetails(schemas[prop]);
226
+ }
227
+ }
228
+ }
229
+ /**
230
+ * Install AI Agent template from marketplace
231
+ */
232
+ async installAgentTemplate(workspaceId) {
233
+ try {
234
+ // First try to find the template by name in marketplace
235
+ const templatesResult = await this.callMcpTool("list_templates", {
236
+ publicOnly: true,
237
+ });
238
+ let templateId = AI_AGENT_TEMPLATE_ID;
239
+ const templatesText = templatesResult?.content?.[0]?.text;
240
+ if (templatesText) {
241
+ try {
242
+ const parsed = JSON.parse(templatesText);
243
+ const templates = parsed.templates || parsed.data || parsed;
244
+ if (Array.isArray(templates)) {
245
+ const agentTemplate = templates.find((t) => t.name?.includes("AI Agent") || t.title?.includes("AI Agent"));
246
+ if (agentTemplate?._id) {
247
+ templateId = agentTemplate._id;
248
+ }
249
+ }
250
+ }
251
+ catch {
252
+ // Use default template ID
253
+ }
254
+ }
255
+ this.logger.info("Installing AI Agent template", { workspaceId, templateId });
256
+ const installResult = await this.callMcpTool("install_template", {
257
+ templateId,
258
+ workspaceId,
259
+ });
260
+ const installText = installResult?.content?.[0]?.text || "";
261
+ // Check for explicit error indicators
262
+ const hasError = installText.toLowerCase().includes("error") ||
263
+ installText.toLowerCase().includes("not found") ||
264
+ installText.toLowerCase().includes("failed");
265
+ const hasSuccess = installText.toLowerCase().includes("success") ||
266
+ installText.toLowerCase().includes("installed") ||
267
+ installText.toLowerCase().includes("created");
268
+ const success = hasSuccess && !hasError;
269
+ if (success) {
270
+ this.logger.info("AI Agent template installed successfully", { workspaceId });
271
+ }
272
+ else {
273
+ this.logger.warn("Template installation failed", {
274
+ workspaceId,
275
+ response: installText.substring(0, 300),
276
+ });
277
+ }
278
+ return success;
279
+ }
280
+ catch (error) {
281
+ this.logger.error("Failed to install AI Agent template", {
282
+ workspaceId,
283
+ error: error instanceof Error ? error.message : String(error),
284
+ });
285
+ return false;
286
+ }
287
+ }
288
+ /**
289
+ * Parse workflows from list_workflows response
290
+ * Handles both raw JSON and markdown-wrapped JSON responses
291
+ */
292
+ parseWorkflows(text) {
293
+ const workflows = [];
294
+ try {
295
+ // First, try to extract JSON array from markdown-wrapped response
296
+ // The response often has: "📋 **18 Workflows Found**\n\n[\n {...}\n]\n\n🔗 **Relationships**..."
297
+ let jsonText = text;
298
+ // Try to extract JSON array from markdown
299
+ const jsonArrayMatch = text.match(/\[\s*\{[\s\S]*?\}\s*\]/);
300
+ if (jsonArrayMatch) {
301
+ jsonText = jsonArrayMatch[0];
302
+ }
303
+ const parsed = JSON.parse(jsonText);
304
+ const items = Array.isArray(parsed) ? parsed : (parsed.workflows || parsed.data || []);
305
+ if (Array.isArray(items)) {
306
+ for (const item of items) {
307
+ // Support both `id` and `_id` field names
308
+ const id = item.id || item._id;
309
+ const name = item.name;
310
+ const workspaceId = item.workspaceId;
311
+ if (id && name) {
312
+ workflows.push({ id, name, workspaceId });
313
+ }
314
+ }
315
+ }
316
+ }
317
+ catch {
318
+ // Fallback: regex extraction for both id and _id patterns
319
+ const idMatches = text.matchAll(/"(?:id|_id)":\s*"([a-f0-9]{24})"/gi);
320
+ const nameMatches = text.matchAll(/"name":\s*"([^"]+)"/gi);
321
+ const wsMatches = text.matchAll(/"workspaceId":\s*"([a-f0-9]{24})"/gi);
322
+ const ids = [...idMatches].map(m => m[1]);
323
+ const names = [...nameMatches].map(m => m[1]);
324
+ const wsIds = [...wsMatches].map(m => m[1]);
325
+ for (let i = 0; i < Math.min(ids.length, names.length); i++) {
326
+ workflows.push({
327
+ id: ids[i],
328
+ name: names[i],
329
+ workspaceId: wsIds[i],
330
+ });
331
+ }
332
+ }
333
+ this.logger.debug("Parsed workflows from response", { count: workflows.length });
334
+ return workflows;
335
+ }
336
+ /**
337
+ * Load detailed workflow schema (phases and fields) for an existing schema
338
+ */
339
+ async loadWorkflowSchemaDetails(schema) {
340
+ try {
341
+ // Get phases first
342
+ const phasesResult = await this.callMcpTool("list_workflow_phases", {
343
+ workflowId: schema.workflowId,
344
+ });
345
+ const phasesText = phasesResult?.content?.[0]?.text;
346
+ if (phasesText) {
347
+ this.parsePhases(phasesText, schema);
348
+ }
349
+ this.logger.debug("Parsed phases for workflow", {
350
+ workflowId: schema.workflowId,
351
+ workflowName: schema.name,
352
+ phaseCount: Object.keys(schema.phases).length,
353
+ phases: Object.keys(schema.phases),
354
+ });
355
+ // Get schema with fields (use first phase)
356
+ const firstPhaseId = Object.values(schema.phases)[0];
357
+ if (firstPhaseId) {
358
+ const schemaResult = await this.callMcpTool("get_workflow_schema", {
359
+ workflowId: schema.workflowId,
360
+ phaseId: firstPhaseId,
361
+ });
362
+ const schemaText = schemaResult?.content?.[0]?.text;
363
+ if (schemaText) {
364
+ this.parseFields(schemaText, schema);
365
+ this.logger.debug("Parsed fields for workflow", {
366
+ workflowId: schema.workflowId,
367
+ workflowName: schema.name,
368
+ fieldCount: Object.keys(schema.fields).length,
369
+ fieldKeys: Object.keys(schema.fields).slice(0, 10), // First 10 keys
370
+ });
371
+ }
372
+ else {
373
+ this.logger.warn("No schema text returned from get_workflow_schema", {
374
+ workflowId: schema.workflowId,
375
+ });
376
+ }
377
+ }
378
+ else {
379
+ this.logger.warn("No phase ID found - skipping field schema load", {
380
+ workflowId: schema.workflowId,
381
+ workflowName: schema.name,
382
+ });
383
+ }
384
+ }
385
+ catch (error) {
386
+ this.logger.warn("Failed to load workflow schema details", {
387
+ workflowId: schema.workflowId,
388
+ workflowName: schema.name,
389
+ error: error instanceof Error ? error.message : String(error),
390
+ });
391
+ }
392
+ }
393
+ /**
394
+ * Parse phases from list_workflow_phases response
395
+ * Format: 1. **PhaseName**\n - Phase ID: `phaseId`
396
+ */
397
+ parsePhases(text, schema) {
398
+ this.logger.debug("Parsing phases text", {
399
+ workflowId: schema.workflowId,
400
+ textLength: text.length,
401
+ textPreview: text.substring(0, 500),
402
+ });
403
+ try {
404
+ const parsed = JSON.parse(text);
405
+ const phases = parsed.phases || parsed.data || parsed;
406
+ if (Array.isArray(phases)) {
407
+ for (const phase of phases) {
408
+ if (phase.id && phase.name) {
409
+ schema.phases[phase.name.toLowerCase()] = phase.id;
410
+ }
411
+ else if (phase._id && phase.name) {
412
+ schema.phases[phase.name.toLowerCase()] = phase._id;
413
+ }
414
+ }
415
+ }
416
+ }
417
+ catch {
418
+ // Markdown format: **PhaseName**\n - Phase ID: `phaseId`
419
+ // Match pattern: \d+\. **Name** ... Phase ID: `id`
420
+ const phaseBlocks = text.split(/\d+\.\s*\*\*/).filter(Boolean);
421
+ for (const block of phaseBlocks) {
422
+ const nameMatch = block.match(/^([^*]+)\*\*/);
423
+ const phaseIdMatch = block.match(/Phase ID:\s*`([a-f0-9]{24})`/i);
424
+ if (nameMatch && phaseIdMatch) {
425
+ const phaseName = nameMatch[1].trim();
426
+ const phaseId = phaseIdMatch[1];
427
+ schema.phases[phaseName.toLowerCase()] = phaseId;
428
+ }
429
+ }
430
+ }
431
+ }
432
+ /**
433
+ * Parse fields from get_workflow_schema response
434
+ * Stores fields by both label and key for flexible lookup
435
+ */
436
+ parseFields(text, schema) {
437
+ try {
438
+ const parsed = JSON.parse(text);
439
+ const fields = parsed.fields || parsed.data || parsed;
440
+ if (Array.isArray(fields)) {
441
+ for (const field of fields) {
442
+ const fieldId = field.id || field._id || field.fieldId;
443
+ const label = field.label || field.name;
444
+ const key = field.key;
445
+ if (fieldId && label) {
446
+ schema.fields[label] = fieldId;
447
+ }
448
+ // Also store by key for direct lookup (e.g., "firstName" -> fieldId)
449
+ if (fieldId && key) {
450
+ schema.fields[key] = fieldId;
451
+ }
452
+ }
453
+ }
454
+ else if (typeof fields === "object") {
455
+ // Handle object format {fieldId: {label, type, key, ...}}
456
+ for (const [fieldId, fieldData] of Object.entries(fields)) {
457
+ const data = fieldData;
458
+ const label = data.label || data.name;
459
+ const key = data.key;
460
+ if (label) {
461
+ schema.fields[label] = fieldId;
462
+ }
463
+ // Also store by key
464
+ if (key) {
465
+ schema.fields[key] = fieldId;
466
+ }
467
+ }
468
+ }
469
+ }
470
+ catch {
471
+ // Regex fallback for markdown format:
472
+ // **Label**
473
+ // - Field ID: `fieldId`
474
+ // - Key: `key`
475
+ const fieldBlocks = text.split(/\d+\.\s*\*\*/).filter(Boolean);
476
+ for (const block of fieldBlocks) {
477
+ const labelMatch = block.match(/^([^*\n]+)\*\*/);
478
+ const fieldIdMatch = block.match(/Field ID:\s*`([a-f0-9]{24})`/i);
479
+ const keyMatch = block.match(/Key:\s*`(\w+)`/i);
480
+ if (fieldIdMatch) {
481
+ const fieldId = fieldIdMatch[1];
482
+ if (labelMatch) {
483
+ schema.fields[labelMatch[1].trim()] = fieldId;
484
+ }
485
+ if (keyMatch) {
486
+ schema.fields[keyMatch[1]] = fieldId;
487
+ }
488
+ }
489
+ }
490
+ }
491
+ }
492
+ /**
493
+ * Clear cache for a workspace (memory cache only)
494
+ */
495
+ clearCache(workspaceId) {
496
+ if (workspaceId) {
497
+ this.cache.delete(workspaceId);
498
+ this.logger.info("Cleared memory cache", { workspaceId });
499
+ }
500
+ else {
501
+ this.cache.clear();
502
+ this.logger.info("Cleared all memory caches");
503
+ }
504
+ }
505
+ }
506
+ exports.WorkspaceSchemaCacheService = WorkspaceSchemaCacheService;
507
+ //# sourceMappingURL=workspace-schema-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-schema-cache.js","sourceRoot":"","sources":["../../../../src/agents/shared/services/workspace-schema-cache.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAKH,6DAA6D;AAC7D,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAExD,wFAAwF;AACxF,MAAM,0BAA0B,GAAG;IACjC,WAAW,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC;IAC3C,eAAe,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACvD,SAAS,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;IACpC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,CAAC,eAAe,EAAE,eAAe,EAAE,YAAY,CAAC;IAC/D,UAAU,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,mBAAmB,CAAC;CACrD,CAAC;AAuBX,MAAa,2BAA2B;IAI5B;IACA;IAJF,KAAK,GAAkC,IAAI,GAAG,EAAE,CAAC;IAEzD,YACU,MAAc,EACd,WAA4B;QAD5B,WAAM,GAAN,MAAM,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAiB;IACnC,CAAC;IAEJ;;;;;;OAMG;IACI,KAAK,CAAC,sBAAsB,CAAC,WAAmB;QACrD,8BAA8B;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,QAAQ,EAAE,WAAW,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC5E,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,kFAAkF;QAClF,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,MAAM,EAAE,CAAC;YACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uDAAuD,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC3F,MAAM,OAAO,GAAqB;gBAChC,WAAW;gBACX,WAAW,EAAE,IAAI;aAClB,CAAC;YACF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACrC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,sBAAsB;QACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAE3E,MAAM,OAAO,GAAqB;YAChC,WAAW;YACX,WAAW,EAAE,KAAK;SACnB,CAAC;QAEF,IAAI,CAAC;YACH,mCAAmC;YACnC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE;gBAC/D,SAAS,EAAE,WAAW;aACvB,CAAC,CAAC;YAEH,MAAM,aAAa,GAAG,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;YAC1D,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;gBACrE,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBACrC,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,kBAAkB;YAClB,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;YACrD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;YAE/E,0BAA0B;YAC1B,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAE/C,0CAA0C;YAC1C,MAAM,eAAe,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;YAEvE,IAAI,eAAe,EAAE,CAAC;gBACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2DAA2D,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;gBAE/F,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;gBAE/D,IAAI,SAAS,EAAE,CAAC;oBACd,wCAAwC;oBACxC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE;wBAC7D,SAAS,EAAE,WAAW;qBACvB,CAAC,CAAC;oBAEH,MAAM,WAAW,GAAG,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;oBACtD,IAAI,WAAW,EAAE,CAAC;wBAChB,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;wBAC5D,IAAI,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;oBAC1D,CAAC;gBACH,CAAC;YACH,CAAC;YAED,4CAA4C;YAC5C,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAExC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAErC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;gBAC3C,WAAW;gBACX,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU;gBACnC,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc;gBAC3C,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS;aAClC,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE;gBAC1D,WAAW;gBACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,2DAA2D;YACvF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACrC,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IAED;;OAEG;IACI,UAAU,CAAC,WAAmB;QACnC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,mBAAmB,CAAC,WAAmB;QAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;IACjD,CAAC;IAED;;OAEG;IACI,uBAAuB,CAAC,WAAmB;QAChD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,cAAc,CAAC;IACrD,CAAC;IAED;;OAEG;IACI,kBAAkB,CAAC,WAAmB;QAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC;IAChD,CAAC;IAED;;OAEG;IACI,cAAc,CAAC,WAAmB;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,WAAmB;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,YAAY,CAAC;IACnD,CAAC;IAED;;OAEG;IACI,kBAAkB,CAAC,WAAmB;QAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC;IAChD,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAC,WAAmB;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC5C,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,IAAI,OAAO,EAAE,cAAc,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,YAAoB,EAAE,QAA2B;QACtE,2DAA2D;QAC3D,MAAM,UAAU,GAAG,YAAY;aAC5B,WAAW,EAAE;aACb,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC,gBAAgB;aACvD,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;aACpB,IAAI,EAAE,CAAC;QAEV,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACK,qBAAqB,CAC3B,SAAoE,EACpE,OAAyB;QAEzB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,mCAAmC;YACnC,IAAI,OAAO,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC;gBAChG,SAAS;YACX,CAAC;YAED,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,0BAA0B,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/E,OAAO,CAAC,UAAU,GAAG,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAChG,CAAC;iBAAM,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,0BAA0B,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC1F,OAAO,CAAC,cAAc,GAAG,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YACpG,CAAC;iBAAM,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,0BAA0B,CAAC,SAAS,CAAC,EAAE,CAAC;gBACpF,OAAO,CAAC,SAAS,GAAG,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAC/F,CAAC;iBAAM,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,0BAA0B,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChI,+EAA+E;gBAC/E,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;oBAC7E,OAAO,CAAC,KAAK,GAAG,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;gBAC3F,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,0BAA0B,CAAC,aAAa,CAAC,EAAE,CAAC;gBACxF,OAAO,CAAC,YAAY,GAAG,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAClG,CAAC;iBAAM,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,0BAA0B,CAAC,UAAU,CAAC,EAAE,CAAC;gBACrF,OAAO,CAAC,SAAS,GAAG,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAC/F,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB,CAAC,OAAyB;QACzD,MAAM,WAAW,GAAG,CAAC,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,CAAU,CAAC;QACjH,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClB,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,oBAAoB,CAAC,WAAmB;QACpD,IAAI,CAAC;YACH,wDAAwD;YACxD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE;gBAC/D,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;YAEH,IAAI,UAAU,GAAG,oBAAoB,CAAC;YAEtC,MAAM,aAAa,GAAG,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;YAC1D,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;oBACzC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC;oBAC5D,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC7B,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAClC,CAAC,CAAoC,EAAE,EAAE,CACvC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAChE,CAAC;wBACF,IAAI,aAAa,EAAE,GAAG,EAAE,CAAC;4BACvB,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC;wBACjC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,0BAA0B;gBAC5B,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;YAE9E,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE;gBAC/D,UAAU;gBACV,WAAW;aACZ,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;YAE5D,sCAAsC;YACtC,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC3C,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC/C,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE9D,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC7C,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC/C,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAEjE,MAAM,OAAO,GAAG,UAAU,IAAI,CAAC,QAAQ,CAAC;YAExC,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0CAA0C,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAChF,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;oBAC/C,WAAW;oBACX,QAAQ,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;iBACxC,CAAC,CAAC;YACL,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE;gBACvD,WAAW;gBACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,IAAY;QACjC,MAAM,SAAS,GAA8D,EAAE,CAAC;QAEhF,IAAI,CAAC;YACH,kEAAkE;YAClE,kGAAkG;YAClG,IAAI,QAAQ,GAAG,IAAI,CAAC;YAEpB,0CAA0C;YAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAC5D,IAAI,cAAc,EAAE,CAAC;gBACnB,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YAC/B,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAEvF,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,0CAA0C;oBAC1C,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC;oBAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;oBACvB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;oBAErC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;wBACf,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;oBAC5C,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;YAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC;YACtE,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;YAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CAAC;YAEvE,MAAM,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAE5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5D,SAAS,CAAC,IAAI,CAAC;oBACb,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBACV,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;oBACd,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;iBACtB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;QACjF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,yBAAyB,CAAC,MAAsB;QAC5D,IAAI,CAAC;YACH,mBAAmB;YACnB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE;gBAClE,UAAU,EAAE,MAAM,CAAC,UAAU;aAC9B,CAAC,CAAC;YAEH,MAAM,UAAU,GAAG,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;YACpD,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACvC,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE;gBAC9C,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,YAAY,EAAE,MAAM,CAAC,IAAI;gBACzB,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM;gBAC7C,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;aACnC,CAAC,CAAC;YAEH,2CAA2C;YAC3C,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE;oBACjE,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,OAAO,EAAE,YAAY;iBACtB,CAAC,CAAC;gBAEH,MAAM,UAAU,GAAG,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;gBACpD,IAAI,UAAU,EAAE,CAAC;oBACf,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;oBACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE;wBAC9C,UAAU,EAAE,MAAM,CAAC,UAAU;wBAC7B,YAAY,EAAE,MAAM,CAAC,IAAI;wBACzB,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM;wBAC7C,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,gBAAgB;qBACrE,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kDAAkD,EAAE;wBACnE,UAAU,EAAE,MAAM,CAAC,UAAU;qBAC9B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gDAAgD,EAAE;oBACjE,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,YAAY,EAAE,MAAM,CAAC,IAAI;iBAC1B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE;gBACzD,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,YAAY,EAAE,MAAM,CAAC,IAAI;gBACzB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,WAAW,CAAC,IAAY,EAAE,MAAsB;QACtD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE;YACvC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;SACpC,CAAC,CAAC;QACH,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC;YAEtD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,IAAI,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;wBAC3B,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;oBACrD,CAAC;yBAAM,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;wBACnC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC;oBACtD,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,2DAA2D;YAC3D,mDAAmD;YACnD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC/D,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;gBAChC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAC9C,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBAElE,IAAI,SAAS,IAAI,YAAY,EAAE,CAAC;oBAC9B,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBACtC,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBAChC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC;gBACnD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,WAAW,CAAC,IAAY,EAAE,MAAsB;QACtD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC;YAEtD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC;oBACvD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC;oBACxC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;oBACtB,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;wBACrB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;oBACjC,CAAC;oBACD,qEAAqE;oBACrE,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC;wBACnB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;oBAC/B,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACtC,0DAA0D;gBAC1D,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1D,MAAM,IAAI,GAAG,SAA4D,CAAC;oBAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC;oBACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;oBACrB,IAAI,KAAK,EAAE,CAAC;wBACV,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;oBACjC,CAAC;oBACD,oBAAoB;oBACpB,IAAI,GAAG,EAAE,CAAC;wBACR,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;oBAC/B,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;YACtC,YAAY;YACZ,2BAA2B;YAC3B,kBAAkB;YAClB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC/D,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;gBAChC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBACjD,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBAClE,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAEhD,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBAChC,IAAI,UAAU,EAAE,CAAC;wBACf,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC;oBAChD,CAAC;oBACD,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;oBACvC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAGD;;OAEG;IACI,UAAU,CAAC,WAAoB;QACpC,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;CACF;AA5gBD,kEA4gBC"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Specialist Daemon
3
+ *
4
+ * A lightweight daemon for specialist bots that only responds when @mentioned.
5
+ * Specialists are invited to discussions by the orchestrator (HAL) to handle
6
+ * specific complex tasks.
7
+ *
8
+ * Key differences from ChatAgentDaemon:
9
+ * - Only responds when @mentioned (not all messages)
10
+ * - Has specialized system prompt from Specialist config
11
+ * - More tool-focused, less conversational
12
+ */
13
+ import { ChatAgentDaemon, ChatAgentDaemonConfig, IncomingMessage } from "./base";
14
+ import { Specialist } from "../hal/definitions";
15
+ import { HailerSignal } from "../../mcp/signal-handler";
16
+ import { ToolInput } from "./types";
17
+ export interface SpecialistDaemonConfig extends ChatAgentDaemonConfig {
18
+ /** The specialist configuration */
19
+ specialist: Specialist;
20
+ }
21
+ export declare class SpecialistDaemon extends ChatAgentDaemon {
22
+ private specialistLogger;
23
+ private specialist;
24
+ private lastResponseTime;
25
+ private minResponseGap;
26
+ constructor(config: SpecialistDaemonConfig);
27
+ /**
28
+ * Override agent name for Agent Directory - uses specialist's configured name
29
+ */
30
+ protected getAgentName(): {
31
+ firstName: string;
32
+ lastName: string;
33
+ };
34
+ /**
35
+ * Override agent description for Agent Directory - uses specialist's expertise
36
+ */
37
+ protected getAgentDescription(): string;
38
+ /**
39
+ * Override Position details for Specialist - uses specialist's expertise
40
+ */
41
+ protected getPositionDetails(): {
42
+ name: string;
43
+ purpose: string;
44
+ personaTone: string;
45
+ coreCapabilities: string;
46
+ boundaries: string;
47
+ };
48
+ /**
49
+ * Specialist gets more tools for complex operations
50
+ */
51
+ protected getToolWhitelist(): string[];
52
+ /**
53
+ * Force compact output for schema tools (avoid verbose field dumps in discussions)
54
+ */
55
+ protected preprocessToolInput(toolName: string, input: ToolInput): ToolInput;
56
+ /**
57
+ * Override to only process messages where we're @mentioned
58
+ */
59
+ protected extractIncomingMessage(signal: HailerSignal): Promise<IncomingMessage | null>;
60
+ /**
61
+ * Check if this specialist is mentioned in the message
62
+ * Supports various mention formats:
63
+ * - @"Specialist Name"
64
+ * - @SpecialistName (no spaces)
65
+ * - Direct user tag [hailerTag|Name](userId)
66
+ */
67
+ private isMentionedInMessage;
68
+ /**
69
+ * Override system prompt with specialist-specific prompt
70
+ */
71
+ protected getSystemPrompt(): string;
72
+ /**
73
+ * Track response time for rate limiting
74
+ */
75
+ protected postResponse(discussionId: string, content: string): Promise<void>;
76
+ /**
77
+ * Get specialist status
78
+ */
79
+ getSpecialistStatus(): {
80
+ name: string;
81
+ expertise: string[];
82
+ conversationState: ReturnType<ChatAgentDaemon["getConversationState"]>;
83
+ lastResponseTime: number;
84
+ };
85
+ /**
86
+ * Trigger specialist to respond in a discussion with specific context
87
+ * Used for proactive responses (e.g., bug detection triggering Giuseppe)
88
+ */
89
+ respondWithContext(discussionId: string, activityId: string, contextMessage: string): Promise<void>;
90
+ }
91
+ //# sourceMappingURL=specialist.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"specialist.d.ts","sourceRoot":"","sources":["../../../src/agents/shared/specialist.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;IACnE,mCAAmC;IACnC,UAAU,EAAE,UAAU,CAAC;CACxB;AAED,qBAAa,gBAAiB,SAAQ,eAAe;IACnD,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,cAAc,CAAQ;gBAElB,MAAM,EAAE,sBAAsB;IAY1C;;OAEG;IACH,SAAS,CAAC,YAAY,IAAI;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;IAOjE;;OAEG;IACH,SAAS,CAAC,mBAAmB,IAAI,MAAM;IAIvC;;OAEG;IACH,SAAS,CAAC,kBAAkB,IAAI;QAC9B,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,gBAAgB,EAAE,MAAM,CAAC;QACzB,UAAU,EAAE,MAAM,CAAC;KACpB;IAUD;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,MAAM,EAAE;IA0CtC;;OAEG;cACgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS;IAOrF;;OAEG;cACa,sBAAsB,CACpC,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAoClC;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IAuC5B;;OAEG;IACH,SAAS,CAAC,eAAe,IAAI,MAAM;IAwInC;;OAEG;cACa,YAAY,CAC1B,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;IAKhB;;OAEG;IACI,mBAAmB,IAAI;QAC5B,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,EAAE,CAAC;QACpB,iBAAiB,EAAE,UAAU,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACvE,gBAAgB,EAAE,MAAM,CAAC;KAC1B;IASD;;;OAGG;IACU,kBAAkB,CAC7B,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC;CA4DjB"}