@hailer/mcp 1.1.14 → 1.1.16

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 (713) hide show
  1. package/.claude/CLAUDE.md +370 -0
  2. package/.claude/agents/agent-ada-skill-builder.md +94 -0
  3. package/.claude/agents/agent-alejandro-function-fields.md +342 -0
  4. package/.claude/agents/agent-bjorn-config-audit.md +103 -0
  5. package/.claude/agents/agent-builder-agent-creator.md +130 -0
  6. package/.claude/agents/agent-code-simplifier.md +53 -0
  7. package/.claude/agents/agent-dmitri-activity-crud.md +159 -0
  8. package/.claude/agents/agent-giuseppe-app-builder.md +208 -0
  9. package/.claude/agents/agent-gunther-mcp-tools.md +39 -0
  10. package/.claude/agents/agent-helga-workflow-config.md +204 -0
  11. package/.claude/agents/agent-igor-activity-mover-automation.md +125 -0
  12. package/.claude/agents/agent-ingrid-doc-templates.md +261 -0
  13. package/.claude/agents/agent-ivan-monolith.md +154 -0
  14. package/.claude/agents/agent-kenji-data-reader.md +86 -0
  15. package/.claude/agents/agent-lars-code-inspector.md +102 -0
  16. package/.claude/agents/agent-marco-mockup-builder.md +110 -0
  17. package/.claude/agents/agent-marcus-api-documenter.md +323 -0
  18. package/.claude/agents/agent-marketplace-publisher.md +280 -0
  19. package/.claude/agents/agent-marketplace-reviewer.md +309 -0
  20. package/.claude/agents/agent-permissions-handler.md +208 -0
  21. package/.claude/agents/agent-simple-writer.md +48 -0
  22. package/.claude/agents/agent-svetlana-code-review.md +171 -0
  23. package/.claude/agents/agent-tanya-test-runner.md +333 -0
  24. package/.claude/agents/agent-ui-designer.md +100 -0
  25. package/.claude/agents/agent-viktor-sql-insights.md +212 -0
  26. package/.claude/agents/agent-web-search.md +55 -0
  27. package/.claude/agents/agent-yevgeni-discussions.md +45 -0
  28. package/.claude/agents/agent-zara-zapier.md +159 -0
  29. package/.claude/agents/ragnar.md +68 -0
  30. package/.claude/commands/app-squad.md +135 -0
  31. package/.claude/commands/audit-squad.md +158 -0
  32. package/.claude/commands/autoplan.md +563 -0
  33. package/.claude/commands/cleanup-squad.md +98 -0
  34. package/.claude/commands/config-squad.md +106 -0
  35. package/.claude/commands/crud-squad.md +87 -0
  36. package/.claude/commands/data-squad.md +97 -0
  37. package/.claude/commands/debug-squad.md +303 -0
  38. package/.claude/commands/doc-squad.md +65 -0
  39. package/.claude/commands/handoff.md +137 -0
  40. package/.claude/commands/health.md +49 -0
  41. package/.claude/commands/help.md +29 -0
  42. package/.claude/commands/help:agents.md +151 -0
  43. package/.claude/commands/help:commands.md +78 -0
  44. package/.claude/commands/help:faq.md +79 -0
  45. package/.claude/commands/help:plugins.md +50 -0
  46. package/.claude/commands/help:skills.md +93 -0
  47. package/.claude/commands/help:tools.md +75 -0
  48. package/.claude/commands/hotfix-squad.md +112 -0
  49. package/.claude/commands/integration-squad.md +82 -0
  50. package/.claude/commands/janitor-squad.md +167 -0
  51. package/.claude/commands/learn-auto.md +120 -0
  52. package/.claude/commands/learn.md +120 -0
  53. package/.claude/commands/mcp-list.md +27 -0
  54. package/.claude/commands/onboard-squad.md +140 -0
  55. package/.claude/commands/plan-workspace.md +732 -0
  56. package/.claude/commands/prd.md +130 -0
  57. package/.claude/commands/project-status.md +82 -0
  58. package/.claude/commands/publish.md +138 -0
  59. package/.claude/commands/recap.md +69 -0
  60. package/.claude/commands/restore.md +64 -0
  61. package/.claude/commands/review-squad.md +152 -0
  62. package/.claude/commands/save.md +24 -0
  63. package/.claude/commands/stats.md +19 -0
  64. package/.claude/commands/swarm.md +210 -0
  65. package/.claude/commands/tool-builder.md +39 -0
  66. package/.claude/commands/ws-pull.md +44 -0
  67. package/.claude/skills/SDK-activity-patterns/SKILL.md +428 -0
  68. package/.claude/skills/SDK-document-templates/SKILL.md +1033 -0
  69. package/.claude/skills/SDK-function-fields/SKILL.md +542 -0
  70. package/.claude/skills/SDK-generate-skill/SKILL.md +92 -0
  71. package/.claude/skills/SDK-init-skill/SKILL.md +127 -0
  72. package/.claude/skills/SDK-insight-queries/SKILL.md +787 -0
  73. package/.claude/skills/SDK-ws-config-skill/SKILL.md +1139 -0
  74. package/.claude/skills/agent-structure/SKILL.md +98 -0
  75. package/.claude/skills/api-documentation-patterns/SKILL.md +474 -0
  76. package/.claude/skills/chrome-mcp-reference/SKILL.md +370 -0
  77. package/.claude/skills/delegation-routing/SKILL.md +202 -0
  78. package/.claude/skills/frontend-design/SKILL.md +254 -0
  79. package/.claude/skills/hailer-activity-mover/SKILL.md +213 -0
  80. package/.claude/skills/hailer-api-client/SKILL.md +518 -0
  81. package/.claude/skills/hailer-app-builder/SKILL.md +1440 -0
  82. package/.claude/skills/hailer-apps-pictures/SKILL.md +269 -0
  83. package/.claude/skills/hailer-design-system/SKILL.md +231 -0
  84. package/.claude/skills/hailer-monolith-automations/SKILL.md +686 -0
  85. package/.claude/skills/hailer-permissions-system/SKILL.md +121 -0
  86. package/.claude/skills/hailer-project-protocol/SKILL.md +488 -0
  87. package/.claude/skills/hailer-rest-api/SKILL.md +61 -0
  88. package/.claude/skills/hailer-rest-api/hailer-activities.md +184 -0
  89. package/.claude/skills/hailer-rest-api/hailer-admin.md +473 -0
  90. package/.claude/skills/hailer-rest-api/hailer-calendar.md +256 -0
  91. package/.claude/skills/hailer-rest-api/hailer-feed.md +249 -0
  92. package/.claude/skills/hailer-rest-api/hailer-insights.md +195 -0
  93. package/.claude/skills/hailer-rest-api/hailer-messaging.md +276 -0
  94. package/.claude/skills/hailer-rest-api/hailer-workflows.md +283 -0
  95. package/.claude/skills/insight-join-patterns/SKILL.md +174 -0
  96. package/.claude/skills/integration-patterns/SKILL.md +421 -0
  97. package/.claude/skills/json-only-output/SKILL.md +72 -0
  98. package/.claude/skills/lsp-setup/SKILL.md +160 -0
  99. package/.claude/skills/mcp-direct-tools/SKILL.md +153 -0
  100. package/.claude/skills/optional-parameters/SKILL.md +72 -0
  101. package/.claude/skills/publish-hailer-app/SKILL.md +221 -0
  102. package/.claude/skills/testing-patterns/SKILL.md +630 -0
  103. package/.claude/skills/tool-builder/SKILL.md +250 -0
  104. package/.claude/skills/tool-parameter-usage/SKILL.md +126 -0
  105. package/.claude/skills/tool-response-verification/SKILL.md +92 -0
  106. package/.claude/skills/zapier-hailer-patterns/SKILL.md +581 -0
  107. package/.opencode/agent/agent-ada-skill-builder.md +35 -0
  108. package/.opencode/agent/agent-alejandro-function-fields.md +39 -0
  109. package/.opencode/agent/agent-bjorn-config-audit.md +36 -0
  110. package/.opencode/agent/agent-builder-agent-creator.md +39 -0
  111. package/.opencode/agent/agent-code-simplifier.md +31 -0
  112. package/.opencode/agent/agent-dmitri-activity-crud.md +40 -0
  113. package/.opencode/agent/agent-giuseppe-app-builder.md +37 -0
  114. package/.opencode/agent/agent-gunther-mcp-tools.md +39 -0
  115. package/.opencode/agent/agent-helga-workflow-config.md +204 -0
  116. package/.opencode/agent/agent-igor-activity-mover-automation.md +46 -0
  117. package/.opencode/agent/agent-ingrid-doc-templates.md +39 -0
  118. package/.opencode/agent/agent-ivan-monolith.md +46 -0
  119. package/.opencode/agent/agent-kenji-data-reader.md +53 -0
  120. package/.opencode/agent/agent-lars-code-inspector.md +28 -0
  121. package/.opencode/agent/agent-marco-mockup-builder.md +42 -0
  122. package/.opencode/agent/agent-marcus-api-documenter.md +53 -0
  123. package/.opencode/agent/agent-marketplace-publisher.md +44 -0
  124. package/.opencode/agent/agent-marketplace-reviewer.md +42 -0
  125. package/.opencode/agent/agent-permissions-handler.md +50 -0
  126. package/.opencode/agent/agent-simple-writer.md +45 -0
  127. package/.opencode/agent/agent-svetlana-code-review.md +39 -0
  128. package/.opencode/agent/agent-tanya-test-runner.md +57 -0
  129. package/.opencode/agent/agent-ui-designer.md +56 -0
  130. package/.opencode/agent/agent-viktor-sql-insights.md +34 -0
  131. package/.opencode/agent/agent-web-search.md +42 -0
  132. package/.opencode/agent/agent-yevgeni-discussions.md +37 -0
  133. package/.opencode/agent/agent-zara-zapier.md +53 -0
  134. package/.opencode/commands/app-squad.md +135 -0
  135. package/.opencode/commands/audit-squad.md +158 -0
  136. package/.opencode/commands/autoplan.md +563 -0
  137. package/.opencode/commands/cleanup-squad.md +98 -0
  138. package/.opencode/commands/config-squad.md +106 -0
  139. package/.opencode/commands/crud-squad.md +87 -0
  140. package/.opencode/commands/data-squad.md +97 -0
  141. package/.opencode/commands/debug-squad.md +303 -0
  142. package/.opencode/commands/doc-squad.md +65 -0
  143. package/.opencode/commands/handoff.md +137 -0
  144. package/.opencode/commands/health.md +49 -0
  145. package/.opencode/commands/help-agents.md +151 -0
  146. package/.opencode/commands/help-commands.md +32 -0
  147. package/.opencode/commands/help-faq.md +29 -0
  148. package/.opencode/commands/help-plugins.md +28 -0
  149. package/.opencode/commands/help-skills.md +7 -0
  150. package/.opencode/commands/help-tools.md +40 -0
  151. package/.opencode/commands/help.md +28 -0
  152. package/.opencode/commands/hotfix-squad.md +112 -0
  153. package/.opencode/commands/integration-squad.md +82 -0
  154. package/.opencode/commands/janitor-squad.md +167 -0
  155. package/.opencode/commands/learn-auto.md +120 -0
  156. package/.opencode/commands/learn.md +120 -0
  157. package/.opencode/commands/mcp-list.md +27 -0
  158. package/.opencode/commands/onboard-squad.md +140 -0
  159. package/.opencode/commands/plan-workspace.md +732 -0
  160. package/.opencode/commands/prd.md +131 -0
  161. package/.opencode/commands/project-status.md +82 -0
  162. package/.opencode/commands/publish.md +138 -0
  163. package/.opencode/commands/recap.md +69 -0
  164. package/.opencode/commands/restore.md +64 -0
  165. package/.opencode/commands/review-squad.md +152 -0
  166. package/.opencode/commands/save.md +24 -0
  167. package/.opencode/commands/stats.md +19 -0
  168. package/.opencode/commands/swarm.md +210 -0
  169. package/.opencode/commands/tool-builder.md +39 -0
  170. package/.opencode/commands/ws-pull.md +44 -0
  171. package/.opencode/opencode.json +21 -0
  172. package/dist/agents/bot-manager.d.ts +48 -0
  173. package/dist/agents/bot-manager.d.ts.map +1 -0
  174. package/dist/agents/bot-manager.js +254 -0
  175. package/dist/agents/bot-manager.js.map +1 -0
  176. package/dist/agents/bug-fixer/ai.d.ts +80 -0
  177. package/dist/agents/bug-fixer/ai.d.ts.map +1 -0
  178. package/dist/agents/bug-fixer/ai.js +466 -0
  179. package/dist/agents/bug-fixer/ai.js.map +1 -0
  180. package/dist/agents/bug-fixer/bot.d.ts +92 -0
  181. package/dist/agents/bug-fixer/bot.d.ts.map +1 -0
  182. package/dist/agents/bug-fixer/bot.js +687 -0
  183. package/dist/agents/bug-fixer/bot.js.map +1 -0
  184. package/dist/agents/bug-fixer/config.d.ts +21 -0
  185. package/dist/agents/bug-fixer/config.d.ts.map +1 -0
  186. package/dist/agents/bug-fixer/config.js +218 -0
  187. package/dist/agents/bug-fixer/config.js.map +1 -0
  188. package/dist/agents/bug-fixer/files.d.ts +67 -0
  189. package/dist/agents/bug-fixer/files.d.ts.map +1 -0
  190. package/dist/agents/bug-fixer/files.js +386 -0
  191. package/dist/agents/bug-fixer/files.js.map +1 -0
  192. package/dist/agents/bug-fixer/git.d.ts +48 -0
  193. package/dist/agents/bug-fixer/git.d.ts.map +1 -0
  194. package/dist/agents/bug-fixer/git.js +298 -0
  195. package/dist/agents/bug-fixer/git.js.map +1 -0
  196. package/dist/agents/bug-fixer/index.d.ts +103 -0
  197. package/dist/agents/bug-fixer/index.d.ts.map +1 -0
  198. package/dist/agents/bug-fixer/index.js +262 -0
  199. package/dist/agents/bug-fixer/index.js.map +1 -0
  200. package/dist/agents/bug-fixer/lsp.d.ts +113 -0
  201. package/dist/agents/bug-fixer/lsp.d.ts.map +1 -0
  202. package/dist/agents/bug-fixer/lsp.js +485 -0
  203. package/dist/agents/bug-fixer/lsp.js.map +1 -0
  204. package/dist/agents/bug-fixer/monitor.d.ts +123 -0
  205. package/dist/agents/bug-fixer/monitor.d.ts.map +1 -0
  206. package/dist/agents/bug-fixer/monitor.js +629 -0
  207. package/dist/agents/bug-fixer/monitor.js.map +1 -0
  208. package/dist/agents/bug-fixer/prompt.d.ts +5 -0
  209. package/dist/agents/bug-fixer/prompt.d.ts.map +1 -0
  210. package/dist/agents/bug-fixer/prompt.js +94 -0
  211. package/dist/agents/bug-fixer/prompt.js.map +1 -0
  212. package/dist/agents/bug-fixer/registries/pending-classification.d.ts +28 -0
  213. package/dist/agents/bug-fixer/registries/pending-classification.d.ts.map +1 -0
  214. package/dist/agents/bug-fixer/registries/pending-classification.js +50 -0
  215. package/dist/agents/bug-fixer/registries/pending-classification.js.map +1 -0
  216. package/dist/agents/bug-fixer/registries/pending-fix.d.ts +33 -0
  217. package/dist/agents/bug-fixer/registries/pending-fix.d.ts.map +1 -0
  218. package/dist/agents/bug-fixer/registries/pending-fix.js +64 -0
  219. package/dist/agents/bug-fixer/registries/pending-fix.js.map +1 -0
  220. package/dist/agents/bug-fixer/registries/pending.d.ts +27 -0
  221. package/dist/agents/bug-fixer/registries/pending.d.ts.map +1 -0
  222. package/dist/agents/bug-fixer/registries/pending.js +49 -0
  223. package/dist/agents/bug-fixer/registries/pending.js.map +1 -0
  224. package/dist/agents/bug-fixer/specialist-daemon.d.ts +88 -0
  225. package/dist/agents/bug-fixer/specialist-daemon.d.ts.map +1 -0
  226. package/dist/agents/bug-fixer/specialist-daemon.js +431 -0
  227. package/dist/agents/bug-fixer/specialist-daemon.js.map +1 -0
  228. package/dist/agents/bug-fixer/specialist.d.ts +47 -0
  229. package/dist/agents/bug-fixer/specialist.d.ts.map +1 -0
  230. package/dist/agents/bug-fixer/specialist.js +327 -0
  231. package/dist/agents/bug-fixer/specialist.js.map +1 -0
  232. package/dist/agents/bug-fixer/types.d.ts +123 -0
  233. package/dist/agents/bug-fixer/types.d.ts.map +1 -0
  234. package/dist/agents/bug-fixer/types.js +9 -0
  235. package/dist/agents/bug-fixer/types.js.map +1 -0
  236. package/dist/agents/factory.d.ts +172 -0
  237. package/dist/agents/factory.d.ts.map +1 -0
  238. package/dist/agents/factory.js +706 -0
  239. package/dist/agents/factory.js.map +1 -0
  240. package/dist/agents/hailer-expert/index.d.ts +8 -0
  241. package/dist/agents/hailer-expert/index.d.ts.map +1 -0
  242. package/dist/agents/hailer-expert/index.js +14 -0
  243. package/dist/agents/hailer-expert/index.js.map +1 -0
  244. package/dist/agents/hal/daemon.d.ts +174 -0
  245. package/dist/agents/hal/daemon.d.ts.map +1 -0
  246. package/dist/agents/hal/daemon.js +1385 -0
  247. package/dist/agents/hal/daemon.js.map +1 -0
  248. package/dist/agents/hal/definitions.d.ts +42 -0
  249. package/dist/agents/hal/definitions.d.ts.map +1 -0
  250. package/dist/agents/hal/definitions.js +300 -0
  251. package/dist/agents/hal/definitions.js.map +1 -0
  252. package/dist/agents/hal/index.d.ts +3 -0
  253. package/dist/agents/hal/index.d.ts.map +1 -0
  254. package/dist/agents/hal/index.js +8 -0
  255. package/dist/agents/hal/index.js.map +1 -0
  256. package/dist/agents/index.d.ts +18 -0
  257. package/dist/agents/index.d.ts.map +1 -0
  258. package/dist/agents/index.js +48 -0
  259. package/dist/agents/index.js.map +1 -0
  260. package/dist/agents/shared/base.d.ts +253 -0
  261. package/dist/agents/shared/base.d.ts.map +1 -0
  262. package/dist/agents/shared/base.js +1122 -0
  263. package/dist/agents/shared/base.js.map +1 -0
  264. package/dist/agents/shared/schemas/action-schema.d.ts +62 -0
  265. package/dist/agents/shared/schemas/action-schema.d.ts.map +1 -0
  266. package/dist/agents/shared/schemas/action-schema.js +483 -0
  267. package/dist/agents/shared/schemas/action-schema.js.map +1 -0
  268. package/dist/agents/shared/services/agent-registry.d.ts +108 -0
  269. package/dist/agents/shared/services/agent-registry.d.ts.map +1 -0
  270. package/dist/agents/shared/services/agent-registry.js +469 -0
  271. package/dist/agents/shared/services/agent-registry.js.map +1 -0
  272. package/dist/agents/shared/services/conversation-manager.d.ts +57 -0
  273. package/dist/agents/shared/services/conversation-manager.d.ts.map +1 -0
  274. package/dist/agents/shared/services/conversation-manager.js +168 -0
  275. package/dist/agents/shared/services/conversation-manager.js.map +1 -0
  276. package/dist/agents/shared/services/mcp-client.d.ts +56 -0
  277. package/dist/agents/shared/services/mcp-client.d.ts.map +1 -0
  278. package/dist/agents/shared/services/mcp-client.js +124 -0
  279. package/dist/agents/shared/services/mcp-client.js.map +1 -0
  280. package/dist/agents/shared/services/message-classifier.d.ts +37 -0
  281. package/dist/agents/shared/services/message-classifier.d.ts.map +1 -0
  282. package/dist/agents/shared/services/message-classifier.js +203 -0
  283. package/dist/agents/shared/services/message-classifier.js.map +1 -0
  284. package/dist/agents/shared/services/message-formatter.d.ts +89 -0
  285. package/dist/agents/shared/services/message-formatter.d.ts.map +1 -0
  286. package/dist/agents/shared/services/message-formatter.js +390 -0
  287. package/dist/agents/shared/services/message-formatter.js.map +1 -0
  288. package/dist/agents/shared/services/session-logger.d.ts +162 -0
  289. package/dist/agents/shared/services/session-logger.d.ts.map +1 -0
  290. package/dist/agents/shared/services/session-logger.js +724 -0
  291. package/dist/agents/shared/services/session-logger.js.map +1 -0
  292. package/dist/agents/shared/services/structured-output-executor.d.ts +88 -0
  293. package/dist/agents/shared/services/structured-output-executor.d.ts.map +1 -0
  294. package/dist/agents/shared/services/structured-output-executor.js +296 -0
  295. package/dist/agents/shared/services/structured-output-executor.js.map +1 -0
  296. package/dist/agents/shared/services/token-billing.d.ts +72 -0
  297. package/dist/agents/shared/services/token-billing.d.ts.map +1 -0
  298. package/dist/agents/shared/services/token-billing.js +198 -0
  299. package/dist/agents/shared/services/token-billing.js.map +1 -0
  300. package/dist/agents/shared/services/tool-executor.d.ts +43 -0
  301. package/dist/agents/shared/services/tool-executor.d.ts.map +1 -0
  302. package/dist/agents/shared/services/tool-executor.js +175 -0
  303. package/dist/agents/shared/services/tool-executor.js.map +1 -0
  304. package/dist/agents/shared/services/typing-indicator.d.ts +24 -0
  305. package/dist/agents/shared/services/typing-indicator.d.ts.map +1 -0
  306. package/dist/agents/shared/services/typing-indicator.js +54 -0
  307. package/dist/agents/shared/services/typing-indicator.js.map +1 -0
  308. package/dist/agents/shared/services/workspace-schema-cache.d.ts +122 -0
  309. package/dist/agents/shared/services/workspace-schema-cache.d.ts.map +1 -0
  310. package/dist/agents/shared/services/workspace-schema-cache.js +507 -0
  311. package/dist/agents/shared/services/workspace-schema-cache.js.map +1 -0
  312. package/dist/agents/shared/specialist.d.ts +91 -0
  313. package/dist/agents/shared/specialist.d.ts.map +1 -0
  314. package/dist/agents/shared/specialist.js +399 -0
  315. package/dist/agents/shared/specialist.js.map +1 -0
  316. package/dist/agents/shared/tool-schema-loader.d.ts +65 -0
  317. package/dist/agents/shared/tool-schema-loader.d.ts.map +1 -0
  318. package/dist/agents/shared/tool-schema-loader.js +238 -0
  319. package/dist/agents/shared/tool-schema-loader.js.map +1 -0
  320. package/dist/agents/shared/types.d.ts +190 -0
  321. package/dist/agents/shared/types.d.ts.map +1 -0
  322. package/dist/agents/shared/types.js +13 -0
  323. package/dist/agents/shared/types.js.map +1 -0
  324. package/dist/app.d.ts.map +1 -0
  325. package/dist/app.js.map +1 -0
  326. package/dist/bot/bot-config.d.ts.map +1 -0
  327. package/dist/bot/bot-config.js.map +1 -0
  328. package/dist/bot/bot-manager.d.ts.map +1 -0
  329. package/dist/bot/bot-manager.js.map +1 -0
  330. package/dist/bot/bot.d.ts.map +1 -0
  331. package/dist/bot/bot.js.map +1 -0
  332. package/dist/bot/operation-logger.d.ts.map +1 -0
  333. package/dist/bot/operation-logger.js.map +1 -0
  334. package/dist/bot/services/__tests__/permission-guard.test.d.ts +2 -0
  335. package/dist/bot/services/__tests__/permission-guard.test.d.ts.map +1 -0
  336. package/dist/bot/services/__tests__/permission-guard.test.js +357 -0
  337. package/dist/bot/services/__tests__/permission-guard.test.js.map +1 -0
  338. package/dist/bot/services/conversation-manager.d.ts.map +1 -0
  339. package/dist/bot/services/conversation-manager.js.map +1 -0
  340. package/dist/bot/services/index.d.ts.map +1 -0
  341. package/dist/bot/services/index.js.map +1 -0
  342. package/dist/bot/services/message-classifier.d.ts.map +1 -0
  343. package/dist/bot/services/message-classifier.js.map +1 -0
  344. package/dist/bot/services/message-formatter.d.ts.map +1 -0
  345. package/dist/bot/services/message-formatter.js.map +1 -0
  346. package/dist/bot/services/permission-guard.d.ts.map +1 -0
  347. package/dist/bot/services/permission-guard.js.map +1 -0
  348. package/dist/bot/services/session-logger.d.ts.map +1 -0
  349. package/dist/bot/services/session-logger.js.map +1 -0
  350. package/dist/bot/services/token-billing.d.ts.map +1 -0
  351. package/dist/bot/services/token-billing.js.map +1 -0
  352. package/dist/bot/services/types.d.ts.map +1 -0
  353. package/dist/bot/services/types.js.map +1 -0
  354. package/dist/bot/services/typing-indicator.d.ts.map +1 -0
  355. package/dist/bot/services/typing-indicator.js.map +1 -0
  356. package/dist/bot/services/workspace-schema-cache.d.ts.map +1 -0
  357. package/dist/bot/services/workspace-schema-cache.js.map +1 -0
  358. package/dist/bot/tool-executor.d.ts.map +1 -0
  359. package/dist/bot/tool-executor.js.map +1 -0
  360. package/dist/bot/workspace-overview.d.ts.map +1 -0
  361. package/dist/bot/workspace-overview.js.map +1 -0
  362. package/dist/bot-config/constants.d.ts +42 -0
  363. package/dist/bot-config/constants.d.ts.map +1 -0
  364. package/dist/bot-config/constants.js +118 -0
  365. package/dist/bot-config/constants.js.map +1 -0
  366. package/dist/bot-config/context.d.ts +157 -0
  367. package/dist/bot-config/context.d.ts.map +1 -0
  368. package/dist/bot-config/context.js +475 -0
  369. package/dist/bot-config/context.js.map +1 -0
  370. package/dist/bot-config/index.d.ts +21 -0
  371. package/dist/bot-config/index.d.ts.map +1 -0
  372. package/dist/bot-config/index.js +104 -0
  373. package/dist/bot-config/index.js.map +1 -0
  374. package/dist/bot-config/loader.d.ts +28 -0
  375. package/dist/bot-config/loader.d.ts.map +1 -0
  376. package/dist/bot-config/loader.js +194 -0
  377. package/dist/bot-config/loader.js.map +1 -0
  378. package/dist/bot-config/persistence.d.ts +68 -0
  379. package/dist/bot-config/persistence.d.ts.map +1 -0
  380. package/dist/bot-config/persistence.js +261 -0
  381. package/dist/bot-config/persistence.js.map +1 -0
  382. package/dist/bot-config/state.d.ts +56 -0
  383. package/dist/bot-config/state.d.ts.map +1 -0
  384. package/dist/bot-config/state.js +197 -0
  385. package/dist/bot-config/state.js.map +1 -0
  386. package/dist/bot-config/tools.d.ts +28 -0
  387. package/dist/bot-config/tools.d.ts.map +1 -0
  388. package/dist/bot-config/tools.js +279 -0
  389. package/dist/bot-config/tools.js.map +1 -0
  390. package/dist/bot-config/types.d.ts +45 -0
  391. package/dist/bot-config/types.d.ts.map +1 -0
  392. package/dist/bot-config/types.js +9 -0
  393. package/dist/bot-config/types.js.map +1 -0
  394. package/dist/bot-config/webhooks.d.ts +27 -0
  395. package/dist/bot-config/webhooks.d.ts.map +1 -0
  396. package/dist/bot-config/webhooks.js +212 -0
  397. package/dist/bot-config/webhooks.js.map +1 -0
  398. package/dist/cli.d.ts.map +1 -0
  399. package/dist/cli.js.map +1 -0
  400. package/dist/client/agents/base.d.ts +207 -0
  401. package/dist/client/agents/base.d.ts.map +1 -0
  402. package/dist/client/agents/base.js +744 -0
  403. package/dist/client/agents/base.js.map +1 -0
  404. package/dist/client/agents/definitions.d.ts +53 -0
  405. package/dist/client/agents/definitions.d.ts.map +1 -0
  406. package/dist/client/agents/definitions.js +263 -0
  407. package/dist/client/agents/definitions.js.map +1 -0
  408. package/dist/client/agents/orchestrator.d.ts +141 -0
  409. package/dist/client/agents/orchestrator.d.ts.map +1 -0
  410. package/dist/client/agents/orchestrator.js +1062 -0
  411. package/dist/client/agents/orchestrator.js.map +1 -0
  412. package/dist/client/agents/specialist.d.ts +86 -0
  413. package/dist/client/agents/specialist.d.ts.map +1 -0
  414. package/dist/client/agents/specialist.js +340 -0
  415. package/dist/client/agents/specialist.js.map +1 -0
  416. package/dist/client/bot-entrypoint.d.ts +7 -0
  417. package/dist/client/bot-entrypoint.d.ts.map +1 -0
  418. package/dist/client/bot-entrypoint.js +103 -0
  419. package/dist/client/bot-entrypoint.js.map +1 -0
  420. package/dist/client/bot-manager.d.ts +44 -0
  421. package/dist/client/bot-manager.d.ts.map +1 -0
  422. package/dist/client/bot-manager.js +173 -0
  423. package/dist/client/bot-manager.js.map +1 -0
  424. package/dist/client/bot-runner.d.ts +35 -0
  425. package/dist/client/bot-runner.d.ts.map +1 -0
  426. package/dist/client/bot-runner.js +188 -0
  427. package/dist/client/bot-runner.js.map +1 -0
  428. package/dist/client/chat-agent-daemon.d.ts +464 -0
  429. package/dist/client/chat-agent-daemon.d.ts.map +1 -0
  430. package/dist/client/chat-agent-daemon.js +1774 -0
  431. package/dist/client/chat-agent-daemon.js.map +1 -0
  432. package/dist/client/daemon-factory.d.ts +106 -0
  433. package/dist/client/daemon-factory.d.ts.map +1 -0
  434. package/dist/client/daemon-factory.js +301 -0
  435. package/dist/client/daemon-factory.js.map +1 -0
  436. package/dist/client/factory.d.ts +111 -0
  437. package/dist/client/factory.d.ts.map +1 -0
  438. package/dist/client/factory.js +314 -0
  439. package/dist/client/factory.js.map +1 -0
  440. package/dist/client/index.d.ts +17 -0
  441. package/dist/client/index.d.ts.map +1 -0
  442. package/dist/client/index.js +38 -0
  443. package/dist/client/index.js.map +1 -0
  444. package/dist/client/multi-bot-manager.d.ts +42 -0
  445. package/dist/client/multi-bot-manager.d.ts.map +1 -0
  446. package/dist/client/multi-bot-manager.js +161 -0
  447. package/dist/client/multi-bot-manager.js.map +1 -0
  448. package/dist/client/orchestrator-daemon.d.ts +87 -0
  449. package/dist/client/orchestrator-daemon.d.ts.map +1 -0
  450. package/dist/client/orchestrator-daemon.js +444 -0
  451. package/dist/client/orchestrator-daemon.js.map +1 -0
  452. package/dist/client/server.d.ts +8 -0
  453. package/dist/client/server.d.ts.map +1 -0
  454. package/dist/client/server.js +251 -0
  455. package/dist/client/server.js.map +1 -0
  456. package/dist/client/services/agent-registry.d.ts +108 -0
  457. package/dist/client/services/agent-registry.d.ts.map +1 -0
  458. package/dist/client/services/agent-registry.js +630 -0
  459. package/dist/client/services/agent-registry.js.map +1 -0
  460. package/dist/client/services/conversation-manager.d.ts +50 -0
  461. package/dist/client/services/conversation-manager.d.ts.map +1 -0
  462. package/dist/client/services/conversation-manager.js +136 -0
  463. package/dist/client/services/conversation-manager.js.map +1 -0
  464. package/dist/client/services/mcp-client.d.ts +48 -0
  465. package/dist/client/services/mcp-client.d.ts.map +1 -0
  466. package/dist/client/services/mcp-client.js +105 -0
  467. package/dist/client/services/mcp-client.js.map +1 -0
  468. package/dist/client/services/message-classifier.d.ts +37 -0
  469. package/dist/client/services/message-classifier.d.ts.map +1 -0
  470. package/dist/client/services/message-classifier.js +187 -0
  471. package/dist/client/services/message-classifier.js.map +1 -0
  472. package/dist/client/services/message-formatter.d.ts +84 -0
  473. package/dist/client/services/message-formatter.d.ts.map +1 -0
  474. package/dist/client/services/message-formatter.js +353 -0
  475. package/dist/client/services/message-formatter.js.map +1 -0
  476. package/dist/client/services/session-logger.d.ts +106 -0
  477. package/dist/client/services/session-logger.d.ts.map +1 -0
  478. package/dist/client/services/session-logger.js +446 -0
  479. package/dist/client/services/session-logger.js.map +1 -0
  480. package/dist/client/services/tool-executor.d.ts +41 -0
  481. package/dist/client/services/tool-executor.d.ts.map +1 -0
  482. package/dist/client/services/tool-executor.js +169 -0
  483. package/dist/client/services/tool-executor.js.map +1 -0
  484. package/dist/client/services/workspace-schema-cache.d.ts +149 -0
  485. package/dist/client/services/workspace-schema-cache.d.ts.map +1 -0
  486. package/dist/client/services/workspace-schema-cache.js +732 -0
  487. package/dist/client/services/workspace-schema-cache.js.map +1 -0
  488. package/dist/client/specialist-daemon.d.ts +77 -0
  489. package/dist/client/specialist-daemon.d.ts.map +1 -0
  490. package/dist/client/specialist-daemon.js +197 -0
  491. package/dist/client/specialist-daemon.js.map +1 -0
  492. package/dist/client/specialists.d.ts +53 -0
  493. package/dist/client/specialists.d.ts.map +1 -0
  494. package/dist/client/specialists.js +178 -0
  495. package/dist/client/specialists.js.map +1 -0
  496. package/dist/client/tool-schema-loader.d.ts +62 -0
  497. package/dist/client/tool-schema-loader.d.ts.map +1 -0
  498. package/dist/client/tool-schema-loader.js +232 -0
  499. package/dist/client/tool-schema-loader.js.map +1 -0
  500. package/dist/client/types.d.ts +327 -0
  501. package/dist/client/types.d.ts.map +1 -0
  502. package/dist/client/types.js +121 -0
  503. package/dist/client/types.js.map +1 -0
  504. package/dist/commands/seed-config.d.ts +9 -0
  505. package/dist/commands/seed-config.d.ts.map +1 -0
  506. package/dist/commands/seed-config.js +392 -0
  507. package/dist/commands/seed-config.js.map +1 -0
  508. package/dist/commands/setup.d.ts +11 -0
  509. package/dist/commands/setup.d.ts.map +1 -0
  510. package/dist/commands/setup.js +320 -0
  511. package/dist/commands/setup.js.map +1 -0
  512. package/dist/config.d.ts.map +1 -0
  513. package/dist/config.js.map +1 -0
  514. package/dist/core.d.ts.map +1 -0
  515. package/dist/core.js.map +1 -0
  516. package/dist/lib/discussion-lock.d.ts.map +1 -0
  517. package/dist/lib/discussion-lock.js.map +1 -0
  518. package/dist/lib/logger.d.ts.map +1 -0
  519. package/dist/lib/logger.js.map +1 -0
  520. package/dist/lib/request-logger.d.ts.map +1 -0
  521. package/dist/lib/request-logger.js.map +1 -0
  522. package/dist/mcp/UserContextCache.d.ts.map +1 -0
  523. package/dist/mcp/UserContextCache.js.map +1 -0
  524. package/dist/mcp/auth.d.ts.map +1 -0
  525. package/dist/mcp/auth.js.map +1 -0
  526. package/dist/mcp/hailer-clients.d.ts.map +1 -0
  527. package/dist/mcp/hailer-clients.js.map +1 -0
  528. package/dist/mcp/session-store.d.ts.map +1 -0
  529. package/dist/mcp/session-store.js.map +1 -0
  530. package/dist/mcp/signal-handler.d.ts.map +1 -0
  531. package/dist/mcp/signal-handler.js.map +1 -0
  532. package/dist/mcp/tool-registry.d.ts.map +1 -0
  533. package/dist/mcp/tool-registry.js.map +1 -0
  534. package/dist/mcp/tools/__tests__/discussion-forward.test.d.ts +2 -0
  535. package/dist/mcp/tools/__tests__/discussion-forward.test.d.ts.map +1 -0
  536. package/dist/mcp/tools/__tests__/discussion-forward.test.js +218 -0
  537. package/dist/mcp/tools/__tests__/discussion-forward.test.js.map +1 -0
  538. package/dist/mcp/tools/activity.d.ts.map +1 -0
  539. package/dist/mcp/tools/activity.js.map +1 -0
  540. package/dist/mcp/tools/app-core.d.ts.map +1 -0
  541. package/dist/mcp/tools/app-core.js.map +1 -0
  542. package/dist/mcp/tools/app-marketplace.d.ts.map +1 -0
  543. package/dist/mcp/tools/app-marketplace.js.map +1 -0
  544. package/dist/mcp/tools/app-member.d.ts.map +1 -0
  545. package/dist/mcp/tools/app-member.js.map +1 -0
  546. package/dist/mcp/tools/app-scaffold.d.ts.map +1 -0
  547. package/dist/mcp/tools/app-scaffold.js.map +1 -0
  548. package/dist/mcp/tools/app.d.ts.map +1 -0
  549. package/dist/mcp/tools/app.js.map +1 -0
  550. package/dist/mcp/tools/bot-config/constants.d.ts.map +1 -0
  551. package/dist/mcp/tools/bot-config/constants.js.map +1 -0
  552. package/dist/mcp/tools/bot-config/core.d.ts.map +1 -0
  553. package/dist/mcp/tools/bot-config/core.js.map +1 -0
  554. package/dist/mcp/tools/bot-config/index.d.ts.map +1 -0
  555. package/dist/mcp/tools/bot-config/index.js.map +1 -0
  556. package/dist/mcp/tools/bot-config/tools.d.ts.map +1 -0
  557. package/dist/mcp/tools/bot-config/tools.js.map +1 -0
  558. package/dist/mcp/tools/bot-config/types.d.ts.map +1 -0
  559. package/dist/mcp/tools/bot-config/types.js.map +1 -0
  560. package/dist/mcp/tools/bug-fixer-tools.d.ts.map +1 -0
  561. package/dist/mcp/tools/bug-fixer-tools.js.map +1 -0
  562. package/dist/mcp/tools/company.d.ts.map +1 -0
  563. package/dist/mcp/tools/company.js.map +1 -0
  564. package/dist/mcp/tools/discussion.d.ts.map +1 -0
  565. package/dist/mcp/tools/discussion.js.map +1 -0
  566. package/dist/mcp/tools/document.d.ts.map +1 -0
  567. package/dist/mcp/tools/document.js.map +1 -0
  568. package/dist/mcp/tools/file.d.ts.map +1 -0
  569. package/dist/mcp/tools/file.js.map +1 -0
  570. package/dist/mcp/tools/insight.d.ts.map +1 -0
  571. package/dist/mcp/tools/insight.js.map +1 -0
  572. package/dist/mcp/tools/investigate.d.ts.map +1 -0
  573. package/dist/mcp/tools/investigate.js.map +1 -0
  574. package/dist/mcp/tools/user.d.ts.map +1 -0
  575. package/dist/mcp/tools/user.js.map +1 -0
  576. package/dist/mcp/tools/workflow-permissions.d.ts.map +1 -0
  577. package/dist/mcp/tools/workflow-permissions.js.map +1 -0
  578. package/dist/mcp/tools/workflow.d.ts.map +1 -0
  579. package/dist/mcp/tools/workflow.js.map +1 -0
  580. package/dist/mcp/utils/api-errors.d.ts.map +1 -0
  581. package/dist/mcp/utils/api-errors.js.map +1 -0
  582. package/dist/mcp/utils/data-transformers.d.ts.map +1 -0
  583. package/dist/mcp/utils/data-transformers.js.map +1 -0
  584. package/dist/mcp/utils/file-upload.d.ts.map +1 -0
  585. package/dist/mcp/utils/file-upload.js.map +1 -0
  586. package/dist/mcp/utils/hailer-api-client.d.ts.map +1 -0
  587. package/dist/mcp/utils/hailer-api-client.js.map +1 -0
  588. package/dist/mcp/utils/index.d.ts.map +1 -0
  589. package/dist/mcp/utils/index.js.map +1 -0
  590. package/dist/mcp/utils/logger.d.ts.map +1 -0
  591. package/dist/mcp/utils/logger.js.map +1 -0
  592. package/dist/mcp/utils/pagination.d.ts.map +1 -0
  593. package/dist/mcp/utils/pagination.js.map +1 -0
  594. package/dist/mcp/utils/response-builder.d.ts.map +1 -0
  595. package/dist/mcp/utils/response-builder.js.map +1 -0
  596. package/dist/mcp/utils/role-utils.d.ts.map +1 -0
  597. package/dist/mcp/utils/role-utils.js.map +1 -0
  598. package/dist/mcp/utils/tool-helpers.d.ts.map +1 -0
  599. package/dist/mcp/utils/tool-helpers.js.map +1 -0
  600. package/dist/mcp/utils/types.d.ts.map +1 -0
  601. package/dist/mcp/utils/types.js.map +1 -0
  602. package/dist/mcp/webhook-handler.d.ts.map +1 -0
  603. package/dist/mcp/webhook-handler.js.map +1 -0
  604. package/dist/mcp/workspace-cache.d.ts.map +1 -0
  605. package/dist/mcp/workspace-cache.js.map +1 -0
  606. package/dist/mcp-server.d.ts.map +1 -0
  607. package/dist/mcp-server.js.map +1 -0
  608. package/dist/modules/bug-reports/bug-config.d.ts +25 -0
  609. package/dist/modules/bug-reports/bug-config.d.ts.map +1 -0
  610. package/dist/modules/bug-reports/bug-config.js +187 -0
  611. package/dist/modules/bug-reports/bug-config.js.map +1 -0
  612. package/dist/modules/bug-reports/bug-monitor.d.ts +108 -0
  613. package/dist/modules/bug-reports/bug-monitor.d.ts.map +1 -0
  614. package/dist/modules/bug-reports/bug-monitor.js +510 -0
  615. package/dist/modules/bug-reports/bug-monitor.js.map +1 -0
  616. package/dist/modules/bug-reports/giuseppe-agent.d.ts +58 -0
  617. package/dist/modules/bug-reports/giuseppe-agent.d.ts.map +1 -0
  618. package/dist/modules/bug-reports/giuseppe-agent.js +467 -0
  619. package/dist/modules/bug-reports/giuseppe-agent.js.map +1 -0
  620. package/dist/modules/bug-reports/giuseppe-ai.d.ts +83 -0
  621. package/dist/modules/bug-reports/giuseppe-ai.d.ts.map +1 -0
  622. package/dist/modules/bug-reports/giuseppe-ai.js +466 -0
  623. package/dist/modules/bug-reports/giuseppe-ai.js.map +1 -0
  624. package/dist/modules/bug-reports/giuseppe-bot.d.ts +110 -0
  625. package/dist/modules/bug-reports/giuseppe-bot.d.ts.map +1 -0
  626. package/dist/modules/bug-reports/giuseppe-bot.js +804 -0
  627. package/dist/modules/bug-reports/giuseppe-bot.js.map +1 -0
  628. package/dist/modules/bug-reports/giuseppe-daemon.d.ts +80 -0
  629. package/dist/modules/bug-reports/giuseppe-daemon.d.ts.map +1 -0
  630. package/dist/modules/bug-reports/giuseppe-daemon.js +617 -0
  631. package/dist/modules/bug-reports/giuseppe-daemon.js.map +1 -0
  632. package/dist/modules/bug-reports/giuseppe-files.d.ts +64 -0
  633. package/dist/modules/bug-reports/giuseppe-files.d.ts.map +1 -0
  634. package/dist/modules/bug-reports/giuseppe-files.js +375 -0
  635. package/dist/modules/bug-reports/giuseppe-files.js.map +1 -0
  636. package/dist/modules/bug-reports/giuseppe-git.d.ts +48 -0
  637. package/dist/modules/bug-reports/giuseppe-git.d.ts.map +1 -0
  638. package/dist/modules/bug-reports/giuseppe-git.js +298 -0
  639. package/dist/modules/bug-reports/giuseppe-git.js.map +1 -0
  640. package/dist/modules/bug-reports/giuseppe-lsp.d.ts +113 -0
  641. package/dist/modules/bug-reports/giuseppe-lsp.d.ts.map +1 -0
  642. package/dist/modules/bug-reports/giuseppe-lsp.js +485 -0
  643. package/dist/modules/bug-reports/giuseppe-lsp.js.map +1 -0
  644. package/dist/modules/bug-reports/giuseppe-prompt.d.ts +5 -0
  645. package/dist/modules/bug-reports/giuseppe-prompt.d.ts.map +1 -0
  646. package/dist/modules/bug-reports/giuseppe-prompt.js +94 -0
  647. package/dist/modules/bug-reports/giuseppe-prompt.js.map +1 -0
  648. package/dist/modules/bug-reports/index.d.ts +77 -0
  649. package/dist/modules/bug-reports/index.d.ts.map +1 -0
  650. package/dist/modules/bug-reports/index.js +215 -0
  651. package/dist/modules/bug-reports/index.js.map +1 -0
  652. package/dist/modules/bug-reports/pending-classification-registry.d.ts +28 -0
  653. package/dist/modules/bug-reports/pending-classification-registry.d.ts.map +1 -0
  654. package/dist/modules/bug-reports/pending-classification-registry.js +50 -0
  655. package/dist/modules/bug-reports/pending-classification-registry.js.map +1 -0
  656. package/dist/modules/bug-reports/pending-fix-registry.d.ts +30 -0
  657. package/dist/modules/bug-reports/pending-fix-registry.d.ts.map +1 -0
  658. package/dist/modules/bug-reports/pending-fix-registry.js +42 -0
  659. package/dist/modules/bug-reports/pending-fix-registry.js.map +1 -0
  660. package/dist/modules/bug-reports/pending-registry.d.ts +27 -0
  661. package/dist/modules/bug-reports/pending-registry.d.ts.map +1 -0
  662. package/dist/modules/bug-reports/pending-registry.js +49 -0
  663. package/dist/modules/bug-reports/pending-registry.js.map +1 -0
  664. package/dist/modules/bug-reports/types.d.ts +123 -0
  665. package/dist/modules/bug-reports/types.d.ts.map +1 -0
  666. package/dist/modules/bug-reports/types.js +9 -0
  667. package/dist/modules/bug-reports/types.js.map +1 -0
  668. package/dist/plugins/bug-fixer/index.d.ts.map +1 -0
  669. package/dist/plugins/bug-fixer/index.js.map +1 -0
  670. package/dist/plugins/bug-fixer/tools.d.ts.map +1 -0
  671. package/dist/plugins/bug-fixer/tools.js.map +1 -0
  672. package/dist/plugins/vipunen/__tests__/tools.test.d.ts +10 -0
  673. package/dist/plugins/vipunen/__tests__/tools.test.d.ts.map +1 -0
  674. package/dist/plugins/vipunen/__tests__/tools.test.js +646 -0
  675. package/dist/plugins/vipunen/__tests__/tools.test.js.map +1 -0
  676. package/dist/plugins/vipunen/client.d.ts.map +1 -0
  677. package/dist/plugins/vipunen/client.js.map +1 -0
  678. package/dist/plugins/vipunen/index.d.ts.map +1 -0
  679. package/dist/plugins/vipunen/index.js.map +1 -0
  680. package/dist/plugins/vipunen/tools.d.ts.map +1 -0
  681. package/dist/plugins/vipunen/tools.js.map +1 -0
  682. package/dist/routes/agents.d.ts +44 -0
  683. package/dist/routes/agents.d.ts.map +1 -0
  684. package/dist/routes/agents.js +311 -0
  685. package/dist/routes/agents.js.map +1 -0
  686. package/dist/services/agent-credential-store.d.ts +73 -0
  687. package/dist/services/agent-credential-store.d.ts.map +1 -0
  688. package/dist/services/agent-credential-store.js +212 -0
  689. package/dist/services/agent-credential-store.js.map +1 -0
  690. package/dist/stdio-server.d.ts.map +1 -0
  691. package/dist/stdio-server.js.map +1 -0
  692. package/dist/workspace/context.d.ts +148 -0
  693. package/dist/workspace/context.d.ts.map +1 -0
  694. package/dist/workspace/context.js +339 -0
  695. package/dist/workspace/context.js.map +1 -0
  696. package/dist/workspace/credentials.d.ts +55 -0
  697. package/dist/workspace/credentials.d.ts.map +1 -0
  698. package/dist/workspace/credentials.js +239 -0
  699. package/dist/workspace/credentials.js.map +1 -0
  700. package/dist/workspace/index.d.ts +21 -0
  701. package/dist/workspace/index.d.ts.map +1 -0
  702. package/dist/workspace/index.js +45 -0
  703. package/dist/workspace/index.js.map +1 -0
  704. package/dist/workspace/loader.d.ts +27 -0
  705. package/dist/workspace/loader.d.ts.map +1 -0
  706. package/dist/workspace/loader.js +222 -0
  707. package/dist/workspace/loader.js.map +1 -0
  708. package/dist/workspace/schema.d.ts +37 -0
  709. package/dist/workspace/schema.d.ts.map +1 -0
  710. package/dist/workspace/schema.js +192 -0
  711. package/dist/workspace/schema.js.map +1 -0
  712. package/package.json +13 -1
  713. package/test-billing-server.js +0 -136
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Bot Config Loader
3
+ *
4
+ * Loads bot configurations from .bot-config/*.json files.
5
+ * Creates BotContext instances for each workspace.
6
+ */
7
+ import { BotContext } from './context';
8
+ /**
9
+ * Invalidate the config cache.
10
+ * Call this after saving a config file to ensure fresh reads.
11
+ */
12
+ export declare function invalidateConfigCache(): void;
13
+ /**
14
+ * Load all bot configs from .bot-config/*.json files
15
+ * Returns BotContext instances (one per workspace)
16
+ *
17
+ * Results are cached for 5 seconds to avoid repeated file reads during startup.
18
+ */
19
+ export declare function loadBotConfigs(): BotContext[];
20
+ /**
21
+ * Get or load a specific workspace's bot config
22
+ */
23
+ export declare function getOrLoadBotConfig(workspaceId: string): BotContext | null;
24
+ /**
25
+ * Save bot config to file
26
+ */
27
+ export declare function saveBotConfig(ctx: BotContext): void;
28
+ //# sourceMappingURL=loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/bot-config/loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,UAAU,EAA4B,MAAM,WAAW,CAAC;AASjE;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAI5C;AAgCD;;;;;GAKG;AACH,wBAAgB,cAAc,IAAI,UAAU,EAAE,CA6D7C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAyBzE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,CAiDnD"}
@@ -0,0 +1,194 @@
1
+ "use strict";
2
+ /**
3
+ * Bot Config Loader
4
+ *
5
+ * Loads bot configurations from .bot-config/*.json files.
6
+ * Creates BotContext instances for each workspace.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.invalidateConfigCache = invalidateConfigCache;
43
+ exports.loadBotConfigs = loadBotConfigs;
44
+ exports.getOrLoadBotConfig = getOrLoadBotConfig;
45
+ exports.saveBotConfig = saveBotConfig;
46
+ const fs = __importStar(require("fs"));
47
+ const path = __importStar(require("path"));
48
+ const logger_1 = require("../lib/logger");
49
+ const context_1 = require("./context");
50
+ const logger = (0, logger_1.createLogger)({ component: 'BotConfigLoader' });
51
+ /** Cache for loaded configs to avoid repeated file reads */
52
+ let cachedContexts = null;
53
+ let cacheTime = 0;
54
+ const CACHE_TTL_MS = 5000; // 5 second cache to avoid repeated reads during startup
55
+ /**
56
+ * Invalidate the config cache.
57
+ * Call this after saving a config file to ensure fresh reads.
58
+ */
59
+ function invalidateConfigCache() {
60
+ cachedContexts = null;
61
+ cacheTime = 0;
62
+ logger.debug('Config cache invalidated');
63
+ }
64
+ /**
65
+ * Load all bot configs from .bot-config/*.json files
66
+ * Returns BotContext instances (one per workspace)
67
+ *
68
+ * Results are cached for 5 seconds to avoid repeated file reads during startup.
69
+ */
70
+ function loadBotConfigs() {
71
+ // Return cached result if still valid
72
+ const now = Date.now();
73
+ if (cachedContexts && (now - cacheTime) < CACHE_TTL_MS) {
74
+ logger.debug('Using cached bot configs', { count: cachedContexts.length, ageMs: now - cacheTime });
75
+ return cachedContexts;
76
+ }
77
+ const configDir = path.join(process.cwd(), '.bot-config');
78
+ if (!fs.existsSync(configDir)) {
79
+ logger.warn('No .bot-config directory found');
80
+ return [];
81
+ }
82
+ const files = fs.readdirSync(configDir).filter(f => f.endsWith('.json'));
83
+ const contexts = [];
84
+ for (const file of files) {
85
+ try {
86
+ const filePath = path.join(configDir, file);
87
+ const content = fs.readFileSync(filePath, 'utf-8');
88
+ const config = JSON.parse(content);
89
+ // Get or create BotContext for this workspace
90
+ const ctx = (0, context_1.getBotContext)(config.workspaceId, config.workspaceName);
91
+ // Initialize from config
92
+ ctx.initializeFromConfig({
93
+ orchestrator: config.orchestrator,
94
+ specialists: config.specialists,
95
+ schema: config.schema,
96
+ });
97
+ contexts.push(ctx);
98
+ logger.debug('Loaded bot config', {
99
+ workspaceId: config.workspaceId,
100
+ workspaceName: config.workspaceName,
101
+ hasOrchestrator: !!config.orchestrator,
102
+ specialistCount: config.specialists.length,
103
+ });
104
+ }
105
+ catch (error) {
106
+ logger.warn('Failed to load bot config file', {
107
+ file,
108
+ error: error instanceof Error ? error.message : String(error),
109
+ });
110
+ }
111
+ }
112
+ logger.debug('Bot configs loaded', {
113
+ total: contexts.length,
114
+ workspaces: contexts.map(c => c.workspaceId),
115
+ });
116
+ // Cache the result
117
+ cachedContexts = contexts;
118
+ cacheTime = Date.now();
119
+ return contexts;
120
+ }
121
+ /**
122
+ * Get or load a specific workspace's bot config
123
+ */
124
+ function getOrLoadBotConfig(workspaceId) {
125
+ const configDir = path.join(process.cwd(), '.bot-config');
126
+ const filePath = path.join(configDir, `${workspaceId}.json`);
127
+ if (!fs.existsSync(filePath)) {
128
+ logger.debug('No config file for workspace', { workspaceId });
129
+ return null;
130
+ }
131
+ try {
132
+ const content = fs.readFileSync(filePath, 'utf-8');
133
+ const config = JSON.parse(content);
134
+ const ctx = (0, context_1.getBotContext)(config.workspaceId, config.workspaceName);
135
+ ctx.initializeFromConfig({
136
+ orchestrator: config.orchestrator,
137
+ specialists: config.specialists,
138
+ schema: config.schema,
139
+ });
140
+ return ctx;
141
+ }
142
+ catch (error) {
143
+ logger.error('Failed to load bot config', { workspaceId, error });
144
+ return null;
145
+ }
146
+ }
147
+ /**
148
+ * Save bot config to file
149
+ */
150
+ function saveBotConfig(ctx) {
151
+ const configDir = path.join(process.cwd(), '.bot-config');
152
+ // Ensure directory exists
153
+ if (!fs.existsSync(configDir)) {
154
+ fs.mkdirSync(configDir, { recursive: true });
155
+ }
156
+ const filePath = path.join(configDir, `${ctx.workspaceId}.json`);
157
+ // Build config from context
158
+ const orchestrator = ctx.getOrchestratorCredentials();
159
+ const specialists = ctx.getSpecialistCredentials();
160
+ const config = {
161
+ workspaceId: ctx.workspaceId,
162
+ workspaceName: ctx.workspaceName,
163
+ orchestrator: orchestrator ? {
164
+ activityId: orchestrator.activityId || '',
165
+ userId: orchestrator.userId,
166
+ email: orchestrator.email,
167
+ password: orchestrator.password,
168
+ displayName: orchestrator.displayName,
169
+ systemPrompt: orchestrator.systemPrompt,
170
+ accessLevel: orchestrator.accessLevel,
171
+ responseMode: orchestrator.responseMode,
172
+ } : null,
173
+ specialists: specialists.map(s => ({
174
+ activityId: s.activityId || '',
175
+ userId: s.userId,
176
+ email: s.email,
177
+ password: s.password,
178
+ botType: s.botType,
179
+ enabled: s.enabled,
180
+ displayName: s.displayName,
181
+ systemPrompt: s.systemPrompt,
182
+ accessLevel: s.accessLevel,
183
+ responseMode: s.responseMode,
184
+ })),
185
+ lastSynced: new Date().toISOString(),
186
+ schema: ctx.getSchema() || undefined,
187
+ };
188
+ fs.writeFileSync(filePath, JSON.stringify(config, null, 2));
189
+ logger.debug('Saved bot config', {
190
+ workspaceId: ctx.workspaceId,
191
+ filePath,
192
+ });
193
+ }
194
+ //# sourceMappingURL=loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/bot-config/loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Bot Configuration Persistence
3
+ *
4
+ * Handles initialization and persistence of bot configuration.
5
+ */
6
+ import { HailerApiClient } from '../mcp/utils';
7
+ /**
8
+ * Initialize bot config persistence
9
+ *
10
+ * Sets up signal handler and loads bot configuration from files.
11
+ */
12
+ export declare function initBotConfigPersistence(client: HailerApiClient): Promise<void>;
13
+ /**
14
+ * Initialize workspace schema for a specific workspace
15
+ *
16
+ * Discovers the Agent Directory in the workspace and caches field IDs.
17
+ */
18
+ export declare function initWorkspaceSchema(client: HailerApiClient, workspaceId: string): Promise<boolean>;
19
+ /**
20
+ * Check if persistence is initialized
21
+ */
22
+ export declare function isPersistenceInitialized(): boolean;
23
+ /**
24
+ * Set the active workspace ID
25
+ */
26
+ export declare function setActiveWorkspace(workspaceId: string): void;
27
+ /**
28
+ * Get the active workspace ID
29
+ */
30
+ export declare function getActiveWorkspace(): string | null;
31
+ /**
32
+ * Reload bot configuration from Hailer
33
+ *
34
+ * Re-discovers the Agent Directory and reloads credentials.
35
+ * If no client is provided, uses the stored hailerClient.
36
+ */
37
+ export declare function reloadConfigFromHailer(client?: HailerApiClient): Promise<void>;
38
+ /**
39
+ * Get local bot credentials for daemon creation
40
+ *
41
+ * Looks up credentials by user ID or bot ID.
42
+ */
43
+ export declare function getLocalBotCredentials(userIdOrBotId: string): {
44
+ email: string;
45
+ password: string;
46
+ displayName?: string;
47
+ } | null;
48
+ /**
49
+ * Get all local bot credentials
50
+ */
51
+ export declare function getAllLocalBotCredentials(): Record<string, {
52
+ email: string;
53
+ password: string;
54
+ displayName?: string;
55
+ }>;
56
+ /**
57
+ * Get persistence status (for debugging)
58
+ */
59
+ export declare function getPersistenceStatus(): {
60
+ initialized: boolean;
61
+ workspaceCount: number;
62
+ hasClient: boolean;
63
+ };
64
+ /**
65
+ * Cleanup bot config (alias for cleanupBotState)
66
+ */
67
+ export { cleanupBotState as cleanupBotConfig } from './state';
68
+ //# sourceMappingURL=persistence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../src/bot-config/persistence.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAoB/C;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBrF;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAyBxG;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,OAAO,CAElD;AAQD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAG5D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,IAAI,CAElD;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBpF;AAuBD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAqB9H;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAqBrH;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI;IACtC,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;CACpB,CAMA;AAMD;;GAEG;AACH,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,261 @@
1
+ "use strict";
2
+ /**
3
+ * Bot Configuration Persistence
4
+ *
5
+ * Handles initialization and persistence of bot configuration.
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.cleanupBotConfig = void 0;
42
+ exports.initBotConfigPersistence = initBotConfigPersistence;
43
+ exports.initWorkspaceSchema = initWorkspaceSchema;
44
+ exports.isPersistenceInitialized = isPersistenceInitialized;
45
+ exports.setActiveWorkspace = setActiveWorkspace;
46
+ exports.getActiveWorkspace = getActiveWorkspace;
47
+ exports.reloadConfigFromHailer = reloadConfigFromHailer;
48
+ exports.getLocalBotCredentials = getLocalBotCredentials;
49
+ exports.getAllLocalBotCredentials = getAllLocalBotCredentials;
50
+ exports.getPersistenceStatus = getPersistenceStatus;
51
+ const fs = __importStar(require("fs"));
52
+ const logger_1 = require("../lib/logger");
53
+ const signal_handler_1 = require("../mcp/signal-handler");
54
+ const constants_1 = require("./constants");
55
+ const context_1 = require("./context");
56
+ const loader_1 = require("./loader");
57
+ const logger = (0, logger_1.createLogger)({ component: 'BotConfigPersistence' });
58
+ // ============================================================================
59
+ // State
60
+ // ============================================================================
61
+ let persistenceInitialized = false;
62
+ let hailerClient = null;
63
+ // ============================================================================
64
+ // Initialization
65
+ // ============================================================================
66
+ /**
67
+ * Initialize bot config persistence
68
+ *
69
+ * Sets up signal handler and loads bot configuration from files.
70
+ */
71
+ async function initBotConfigPersistence(client) {
72
+ if (persistenceInitialized) {
73
+ logger.debug('Bot config persistence already initialized');
74
+ return;
75
+ }
76
+ hailerClient = client;
77
+ // Set up signal handler for real-time activity signals
78
+ try {
79
+ signal_handler_1.SignalHandler.getOrCreate(client.getClient());
80
+ logger.debug('Signal handler initialized for bot config monitoring');
81
+ }
82
+ catch (error) {
83
+ logger.warn('Failed to initialize signal handler', {
84
+ error: error instanceof Error ? error.message : String(error)
85
+ });
86
+ }
87
+ // Load bot configs from .bot-config/*.json
88
+ const contexts = (0, loader_1.loadBotConfigs)();
89
+ logger.debug('Loaded bot configs', { count: contexts.length });
90
+ persistenceInitialized = true;
91
+ logger.debug('Bot config persistence initialized');
92
+ }
93
+ /**
94
+ * Initialize workspace schema for a specific workspace
95
+ *
96
+ * Discovers the Agent Directory in the workspace and caches field IDs.
97
+ */
98
+ async function initWorkspaceSchema(client, workspaceId) {
99
+ // Check if we already have a context for this workspace
100
+ const existingContexts = (0, context_1.listBotContexts)();
101
+ if (existingContexts.includes(workspaceId)) {
102
+ const ctx = (0, context_1.getBotContext)(workspaceId);
103
+ const schema = ctx.getSchema();
104
+ if (schema?.agentDirectoryWorkflowId) {
105
+ logger.debug('Workspace schema already initialized', { workspaceId });
106
+ return true;
107
+ }
108
+ }
109
+ // Try to initialize from API
110
+ try {
111
+ const ctx = (0, context_1.getBotContext)(workspaceId);
112
+ await ctx.initializeFromApi(client);
113
+ logger.debug('Workspace schema initialized from API', { workspaceId });
114
+ return true;
115
+ }
116
+ catch (error) {
117
+ logger.warn('Failed to initialize workspace schema', {
118
+ workspaceId,
119
+ error: error instanceof Error ? error.message : String(error)
120
+ });
121
+ return false;
122
+ }
123
+ }
124
+ /**
125
+ * Check if persistence is initialized
126
+ */
127
+ function isPersistenceInitialized() {
128
+ return persistenceInitialized;
129
+ }
130
+ // ============================================================================
131
+ // Workspace Management
132
+ // ============================================================================
133
+ let activeWorkspaceId = null;
134
+ /**
135
+ * Set the active workspace ID
136
+ */
137
+ function setActiveWorkspace(workspaceId) {
138
+ activeWorkspaceId = workspaceId;
139
+ logger.debug('Active workspace set', { workspaceId });
140
+ }
141
+ /**
142
+ * Get the active workspace ID
143
+ */
144
+ function getActiveWorkspace() {
145
+ return activeWorkspaceId;
146
+ }
147
+ /**
148
+ * Reload bot configuration from Hailer
149
+ *
150
+ * Re-discovers the Agent Directory and reloads credentials.
151
+ * If no client is provided, uses the stored hailerClient.
152
+ */
153
+ async function reloadConfigFromHailer(client) {
154
+ const clientToUse = client || hailerClient;
155
+ if (!clientToUse) {
156
+ logger.warn('No Hailer client available for config reload');
157
+ return;
158
+ }
159
+ const workspaceId = activeWorkspaceId || (0, context_1.listBotContexts)()[0];
160
+ if (!workspaceId) {
161
+ logger.warn('No workspace available for config reload');
162
+ return;
163
+ }
164
+ try {
165
+ const ctx = (0, context_1.getBotContext)(workspaceId);
166
+ await ctx.initializeFromApi(clientToUse);
167
+ logger.debug('Bot config reloaded from Hailer', { workspaceId });
168
+ }
169
+ catch (error) {
170
+ logger.error('Failed to reload config from Hailer', {
171
+ workspaceId,
172
+ error: error instanceof Error ? error.message : String(error)
173
+ });
174
+ }
175
+ }
176
+ // ============================================================================
177
+ // Credentials
178
+ // ============================================================================
179
+ /**
180
+ * Load local credentials from .bot-credentials.json
181
+ */
182
+ function loadLocalCredentials() {
183
+ try {
184
+ if (fs.existsSync(constants_1.LOCAL_CREDENTIALS_FILE)) {
185
+ const content = fs.readFileSync(constants_1.LOCAL_CREDENTIALS_FILE, 'utf-8');
186
+ return JSON.parse(content);
187
+ }
188
+ }
189
+ catch (error) {
190
+ logger.warn('Failed to load local credentials', {
191
+ error: error instanceof Error ? error.message : String(error)
192
+ });
193
+ }
194
+ return {};
195
+ }
196
+ /**
197
+ * Get local bot credentials for daemon creation
198
+ *
199
+ * Looks up credentials by user ID or bot ID.
200
+ */
201
+ function getLocalBotCredentials(userIdOrBotId) {
202
+ // First try local credentials file
203
+ const localCreds = loadLocalCredentials();
204
+ if (localCreds[userIdOrBotId]) {
205
+ return localCreds[userIdOrBotId];
206
+ }
207
+ // Then try bot contexts
208
+ for (const workspaceId of (0, context_1.listBotContexts)()) {
209
+ const ctx = (0, context_1.getBotContext)(workspaceId);
210
+ const creds = ctx.getCredentials(userIdOrBotId);
211
+ if (creds) {
212
+ return {
213
+ email: creds.email,
214
+ password: creds.password,
215
+ displayName: creds.displayName
216
+ };
217
+ }
218
+ }
219
+ return null;
220
+ }
221
+ /**
222
+ * Get all local bot credentials
223
+ */
224
+ function getAllLocalBotCredentials() {
225
+ const result = {};
226
+ // Load from file
227
+ const localCreds = loadLocalCredentials();
228
+ Object.assign(result, localCreds);
229
+ // Add from bot contexts
230
+ for (const workspaceId of (0, context_1.listBotContexts)()) {
231
+ const ctx = (0, context_1.getBotContext)(workspaceId);
232
+ const allCreds = ctx.getAllCredentials();
233
+ for (const creds of allCreds) {
234
+ result[creds.userId] = {
235
+ email: creds.email,
236
+ password: creds.password,
237
+ displayName: creds.displayName
238
+ };
239
+ }
240
+ }
241
+ return result;
242
+ }
243
+ /**
244
+ * Get persistence status (for debugging)
245
+ */
246
+ function getPersistenceStatus() {
247
+ return {
248
+ initialized: persistenceInitialized,
249
+ workspaceCount: (0, context_1.listBotContexts)().length,
250
+ hasClient: hailerClient !== null
251
+ };
252
+ }
253
+ // ============================================================================
254
+ // Cleanup
255
+ // ============================================================================
256
+ /**
257
+ * Cleanup bot config (alias for cleanupBotState)
258
+ */
259
+ var state_1 = require("./state");
260
+ Object.defineProperty(exports, "cleanupBotConfig", { enumerable: true, get: function () { return state_1.cleanupBotState; } });
261
+ //# sourceMappingURL=persistence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../src/bot-config/persistence.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Bot State Management
3
+ *
4
+ * Manages which bots are enabled/disabled.
5
+ * Delegates to BotContext for storage.
6
+ */
7
+ /**
8
+ * Register callback for bot state changes
9
+ */
10
+ export declare function onBotStateChange(callback: (userId: string, enabled: boolean) => void): void;
11
+ /**
12
+ * Register callback for daemon restart needs
13
+ */
14
+ export declare function onDaemonRestartNeeded(callback: () => void): void;
15
+ /**
16
+ * Notify that daemon restart is needed (debounced)
17
+ */
18
+ export declare function notifyDaemonRestartNeeded(): void;
19
+ /**
20
+ * Cleanup function - clear pending timers and callbacks
21
+ */
22
+ export declare function cleanupBotState(): void;
23
+ /**
24
+ * Get bot state for all workspaces (merged)
25
+ * Returns userId -> enabled map
26
+ */
27
+ export declare function getBotState(): Record<string, boolean>;
28
+ /**
29
+ * Get bot state for a specific workspace
30
+ */
31
+ export declare function getBotContextBotState(workspaceId: string): Record<string, boolean>;
32
+ /**
33
+ * Get bot user ID (returns the userId itself for compatibility)
34
+ */
35
+ export declare function getBotUserId(userId: string): string | null;
36
+ /**
37
+ * Get bot type for a user ID
38
+ */
39
+ export declare function getBotType(userId: string): string | null;
40
+ /**
41
+ * Get all enabled bots with their types (all workspaces)
42
+ */
43
+ export declare function getEnabledBotsWithTypes(): Map<string, string | null>;
44
+ /**
45
+ * Set bot enabled state
46
+ *
47
+ * Can be called with either:
48
+ * - setBotEnabled(workspaceId, userId, enabled) - explicit workspace
49
+ * - setBotEnabled(userId, enabled) - auto-find workspace (backward compat)
50
+ */
51
+ export declare function setBotEnabled(workspaceIdOrUserId: string, userIdOrEnabled: string | boolean, enabledOptional?: boolean): void;
52
+ /**
53
+ * Set bot user ID (for compatibility - updates state map)
54
+ */
55
+ export declare function setBotUserId(workspaceId: string, userId: string, botType?: string | null): void;
56
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/bot-config/state.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmBH;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAE3F;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAEhE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,IAAI,CAiBhD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAUtC;AAMD;;;GAGG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAYrD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIlF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQ1D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOxD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAcpE;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,mBAAmB,EAAE,MAAM,EAC3B,eAAe,EAAE,MAAM,GAAG,OAAO,EACjC,eAAe,CAAC,EAAE,OAAO,GACxB,IAAI,CAyCN;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAAM,GAAG,IAAW,GAC5B,IAAI,CAIN"}