@hailer/mcp 1.2.1 → 1.3.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (774) hide show
  1. package/.claude/agents/agent-hailer-helper.md +118 -0
  2. package/.claude/commands/debug-squad.md +13 -290
  3. package/.claude/commands/publish.md +2 -2
  4. package/.claude/commands/review-squad.md +17 -139
  5. package/.claude/skills/create-and-publish-app/SKILL.md +133 -143
  6. package/.claude/skills/hailer-app-builder/SKILL.md +29 -2
  7. package/.claude/skills/hailer-ui-guide/SKILL.md +265 -0
  8. package/.env.example +50 -1
  9. package/CLAUDE.md +141 -10
  10. package/dist/app-prep.d.ts +27 -0
  11. package/dist/app-prep.d.ts.map +1 -0
  12. package/dist/app-prep.js +94 -0
  13. package/dist/app-prep.js.map +1 -0
  14. package/dist/app.d.ts.map +1 -1
  15. package/dist/app.js +3 -0
  16. package/dist/app.js.map +1 -1
  17. package/dist/bot/bot-manager.d.ts +9 -6
  18. package/dist/bot/bot-manager.d.ts.map +1 -1
  19. package/dist/bot/bot-manager.js +142 -31
  20. package/dist/bot/bot-manager.js.map +1 -1
  21. package/dist/bot/bot.d.ts +61 -16
  22. package/dist/bot/bot.d.ts.map +1 -1
  23. package/dist/bot/bot.js +927 -151
  24. package/dist/bot/bot.js.map +1 -1
  25. package/dist/bot/operation-logger.d.ts.map +1 -1
  26. package/dist/bot/operation-logger.js +24 -12
  27. package/dist/bot/operation-logger.js.map +1 -1
  28. package/dist/bot/services/bot-permissions.d.ts +37 -5
  29. package/dist/bot/services/bot-permissions.d.ts.map +1 -1
  30. package/dist/bot/services/bot-permissions.js +159 -35
  31. package/dist/bot/services/bot-permissions.js.map +1 -1
  32. package/dist/bot/services/conversation-manager.d.ts +23 -23
  33. package/dist/bot/services/conversation-manager.d.ts.map +1 -1
  34. package/dist/bot/services/conversation-manager.js +52 -49
  35. package/dist/bot/services/conversation-manager.js.map +1 -1
  36. package/dist/bot/services/helper-prompt.d.ts +8 -0
  37. package/dist/bot/services/helper-prompt.d.ts.map +1 -0
  38. package/dist/bot/services/helper-prompt.js +177 -0
  39. package/dist/bot/services/helper-prompt.js.map +1 -0
  40. package/dist/bot/services/message-classifier.d.ts +16 -16
  41. package/dist/bot/services/message-classifier.d.ts.map +1 -1
  42. package/dist/bot/services/message-classifier.js +55 -49
  43. package/dist/bot/services/message-classifier.js.map +1 -1
  44. package/dist/bot/services/message-formatter.d.ts +47 -38
  45. package/dist/bot/services/message-formatter.d.ts.map +1 -1
  46. package/dist/bot/services/message-formatter.js +99 -80
  47. package/dist/bot/services/message-formatter.js.map +1 -1
  48. package/dist/bot/services/permission-guard.d.ts.map +1 -1
  49. package/dist/bot/services/permission-guard.js +20 -10
  50. package/dist/bot/services/permission-guard.js.map +1 -1
  51. package/dist/bot/services/signal-router.d.ts.map +1 -1
  52. package/dist/bot/services/signal-router.js +11 -6
  53. package/dist/bot/services/signal-router.js.map +1 -1
  54. package/dist/bot/services/system-prompt.d.ts +14 -0
  55. package/dist/bot/services/system-prompt.d.ts.map +1 -1
  56. package/dist/bot/services/system-prompt.js +181 -4
  57. package/dist/bot/services/system-prompt.js.map +1 -1
  58. package/dist/bot/services/token-billing.d.ts +23 -23
  59. package/dist/bot/services/token-billing.d.ts.map +1 -1
  60. package/dist/bot/services/token-billing.js +51 -36
  61. package/dist/bot/services/token-billing.js.map +1 -1
  62. package/dist/bot/services/types.d.ts +3 -1
  63. package/dist/bot/services/types.d.ts.map +1 -1
  64. package/dist/bot/services/typing-indicator.d.ts +8 -8
  65. package/dist/bot/services/typing-indicator.d.ts.map +1 -1
  66. package/dist/bot/services/typing-indicator.js +12 -10
  67. package/dist/bot/services/typing-indicator.js.map +1 -1
  68. package/dist/bot/services/workspace-refresh.d.ts +3 -3
  69. package/dist/bot/services/workspace-refresh.d.ts.map +1 -1
  70. package/dist/bot/services/workspace-refresh.js +23 -13
  71. package/dist/bot/services/workspace-refresh.js.map +1 -1
  72. package/dist/bot/tool-executor.d.ts +10 -6
  73. package/dist/bot/tool-executor.d.ts.map +1 -1
  74. package/dist/bot/tool-executor.js +12 -6
  75. package/dist/bot/tool-executor.js.map +1 -1
  76. package/dist/bot/workspace-overview.d.ts.map +1 -1
  77. package/dist/bot/workspace-overview.js +6 -3
  78. package/dist/bot/workspace-overview.js.map +1 -1
  79. package/dist/bot-config/activity-error.d.ts +47 -0
  80. package/dist/bot-config/activity-error.d.ts.map +1 -0
  81. package/dist/bot-config/activity-error.js +67 -0
  82. package/dist/bot-config/activity-error.js.map +1 -0
  83. package/dist/bot-config/context.d.ts +4 -4
  84. package/dist/bot-config/context.d.ts.map +1 -1
  85. package/dist/bot-config/context.js +18 -14
  86. package/dist/bot-config/context.js.map +1 -1
  87. package/dist/bot-config/events.d.ts +45 -0
  88. package/dist/bot-config/events.d.ts.map +1 -0
  89. package/dist/bot-config/events.js +51 -0
  90. package/dist/bot-config/events.js.map +1 -0
  91. package/dist/bot-config/index.d.ts +3 -0
  92. package/dist/bot-config/index.d.ts.map +1 -1
  93. package/dist/bot-config/index.js +8 -1
  94. package/dist/bot-config/index.js.map +1 -1
  95. package/dist/bot-config/loader.d.ts +3 -0
  96. package/dist/bot-config/loader.d.ts.map +1 -1
  97. package/dist/bot-config/loader.js +45 -20
  98. package/dist/bot-config/loader.js.map +1 -1
  99. package/dist/bot-config/persistence.js.map +1 -1
  100. package/dist/bot-config/reconciler.d.ts +11 -0
  101. package/dist/bot-config/reconciler.d.ts.map +1 -0
  102. package/dist/bot-config/reconciler.js +121 -0
  103. package/dist/bot-config/reconciler.js.map +1 -0
  104. package/dist/bot-config/state.d.ts.map +1 -1
  105. package/dist/bot-config/state.js.map +1 -1
  106. package/dist/bot-config/types.d.ts +32 -0
  107. package/dist/bot-config/types.d.ts.map +1 -1
  108. package/dist/bot-config/webhooks.d.ts.map +1 -1
  109. package/dist/bot-config/webhooks.js.map +1 -1
  110. package/dist/bot-config/workflow-installer.d.ts +37 -0
  111. package/dist/bot-config/workflow-installer.d.ts.map +1 -0
  112. package/dist/bot-config/workflow-installer.js +346 -0
  113. package/dist/bot-config/workflow-installer.js.map +1 -0
  114. package/dist/cli.d.ts +4 -1
  115. package/dist/cli.d.ts.map +1 -1
  116. package/dist/cli.js +92 -11
  117. package/dist/cli.js.map +1 -1
  118. package/dist/config.d.ts +23 -19
  119. package/dist/config.d.ts.map +1 -1
  120. package/dist/config.js +65 -27
  121. package/dist/config.js.map +1 -1
  122. package/dist/core.d.ts +6 -4
  123. package/dist/core.d.ts.map +1 -1
  124. package/dist/core.js +11 -16
  125. package/dist/core.js.map +1 -1
  126. package/dist/lib/logger.d.ts.map +1 -1
  127. package/dist/lib/logger.js +7 -4
  128. package/dist/lib/logger.js.map +1 -1
  129. package/dist/lib/request-logger.d.ts +19 -19
  130. package/dist/lib/request-logger.d.ts.map +1 -1
  131. package/dist/lib/request-logger.js +19 -19
  132. package/dist/lib/request-logger.js.map +1 -1
  133. package/dist/mcp/UserContextCache.d.ts +28 -22
  134. package/dist/mcp/UserContextCache.d.ts.map +1 -1
  135. package/dist/mcp/UserContextCache.js +23 -23
  136. package/dist/mcp/UserContextCache.js.map +1 -1
  137. package/dist/mcp/auth.js.map +1 -1
  138. package/dist/mcp/hailer-clients.d.ts +5 -4
  139. package/dist/mcp/hailer-clients.d.ts.map +1 -1
  140. package/dist/mcp/hailer-clients.js +83 -34
  141. package/dist/mcp/hailer-clients.js.map +1 -1
  142. package/dist/mcp/hailer-rpc.d.ts +40 -0
  143. package/dist/mcp/hailer-rpc.d.ts.map +1 -0
  144. package/dist/mcp/hailer-rpc.js +43 -0
  145. package/dist/mcp/hailer-rpc.js.map +1 -0
  146. package/dist/mcp/publish-auth-injector.d.ts +22 -0
  147. package/dist/mcp/publish-auth-injector.d.ts.map +1 -0
  148. package/dist/mcp/publish-auth-injector.js +100 -0
  149. package/dist/mcp/publish-auth-injector.js.map +1 -0
  150. package/dist/mcp/session-store.d.ts +16 -16
  151. package/dist/mcp/session-store.d.ts.map +1 -1
  152. package/dist/mcp/session-store.js +16 -16
  153. package/dist/mcp/session-store.js.map +1 -1
  154. package/dist/mcp/tool-profiles.d.ts +69 -0
  155. package/dist/mcp/tool-profiles.d.ts.map +1 -0
  156. package/dist/mcp/tool-profiles.js +184 -0
  157. package/dist/mcp/tool-profiles.js.map +1 -0
  158. package/dist/mcp/tool-registry.d.ts +16 -0
  159. package/dist/mcp/tool-registry.d.ts.map +1 -1
  160. package/dist/mcp/tool-registry.js +91 -39
  161. package/dist/mcp/tool-registry.js.map +1 -1
  162. package/dist/mcp/tools/activity.d.ts +2 -0
  163. package/dist/mcp/tools/activity.d.ts.map +1 -1
  164. package/dist/mcp/tools/activity.js +575 -218
  165. package/dist/mcp/tools/activity.js.map +1 -1
  166. package/dist/mcp/tools/aliases.d.ts +11 -0
  167. package/dist/mcp/tools/aliases.d.ts.map +1 -0
  168. package/dist/mcp/tools/aliases.js +182 -0
  169. package/dist/mcp/tools/aliases.js.map +1 -0
  170. package/dist/mcp/tools/app-core.d.ts +6 -8
  171. package/dist/mcp/tools/app-core.d.ts.map +1 -1
  172. package/dist/mcp/tools/app-core.js +355 -254
  173. package/dist/mcp/tools/app-core.js.map +1 -1
  174. package/dist/mcp/tools/app-marketplace.d.ts +12 -16
  175. package/dist/mcp/tools/app-marketplace.d.ts.map +1 -1
  176. package/dist/mcp/tools/app-marketplace.js +748 -856
  177. package/dist/mcp/tools/app-marketplace.js.map +1 -1
  178. package/dist/mcp/tools/app.d.ts +4 -7
  179. package/dist/mcp/tools/app.d.ts.map +1 -1
  180. package/dist/mcp/tools/app.js +4 -7
  181. package/dist/mcp/tools/app.js.map +1 -1
  182. package/dist/mcp/tools/bot-self.d.ts +21 -0
  183. package/dist/mcp/tools/bot-self.d.ts.map +1 -0
  184. package/dist/mcp/tools/bot-self.js +174 -0
  185. package/dist/mcp/tools/bot-self.js.map +1 -0
  186. package/dist/mcp/tools/calendar.d.ts +21 -0
  187. package/dist/mcp/tools/calendar.d.ts.map +1 -0
  188. package/dist/mcp/tools/calendar.js +741 -0
  189. package/dist/mcp/tools/calendar.js.map +1 -0
  190. package/dist/mcp/tools/company.d.ts.map +1 -1
  191. package/dist/mcp/tools/company.js +2 -1
  192. package/dist/mcp/tools/company.js.map +1 -1
  193. package/dist/mcp/tools/date.js.map +1 -1
  194. package/dist/mcp/tools/discussion.d.ts +29 -3
  195. package/dist/mcp/tools/discussion.d.ts.map +1 -1
  196. package/dist/mcp/tools/discussion.js +419 -534
  197. package/dist/mcp/tools/discussion.js.map +1 -1
  198. package/dist/mcp/tools/file.d.ts.map +1 -1
  199. package/dist/mcp/tools/file.js +18 -16
  200. package/dist/mcp/tools/file.js.map +1 -1
  201. package/dist/mcp/tools/index.js +4 -4
  202. package/dist/mcp/tools/index.js.map +1 -1
  203. package/dist/mcp/tools/insight.d.ts +24 -5
  204. package/dist/mcp/tools/insight.d.ts.map +1 -1
  205. package/dist/mcp/tools/insight.js +513 -480
  206. package/dist/mcp/tools/insight.js.map +1 -1
  207. package/dist/mcp/tools/user.d.ts.map +1 -1
  208. package/dist/mcp/tools/user.js +15 -13
  209. package/dist/mcp/tools/user.js.map +1 -1
  210. package/dist/mcp/tools/workflow-permissions.d.ts +2 -4
  211. package/dist/mcp/tools/workflow-permissions.d.ts.map +1 -1
  212. package/dist/mcp/tools/workflow-permissions.js +88 -97
  213. package/dist/mcp/tools/workflow-permissions.js.map +1 -1
  214. package/dist/mcp/tools/workflow.d.ts +9 -7
  215. package/dist/mcp/tools/workflow.d.ts.map +1 -1
  216. package/dist/mcp/tools/workflow.js +852 -860
  217. package/dist/mcp/tools/workflow.js.map +1 -1
  218. package/dist/mcp/utils/api-errors.d.ts.map +1 -1
  219. package/dist/mcp/utils/api-errors.js +2 -2
  220. package/dist/mcp/utils/api-errors.js.map +1 -1
  221. package/dist/mcp/utils/data-transformers.d.ts +0 -3
  222. package/dist/mcp/utils/data-transformers.d.ts.map +1 -1
  223. package/dist/mcp/utils/data-transformers.js +32 -5
  224. package/dist/mcp/utils/data-transformers.js.map +1 -1
  225. package/dist/mcp/utils/file-upload.d.ts.map +1 -1
  226. package/dist/mcp/utils/file-upload.js +1 -1
  227. package/dist/mcp/utils/file-upload.js.map +1 -1
  228. package/dist/mcp/utils/hailer-api-client.d.ts +81 -81
  229. package/dist/mcp/utils/hailer-api-client.d.ts.map +1 -1
  230. package/dist/mcp/utils/hailer-api-client.js +113 -103
  231. package/dist/mcp/utils/hailer-api-client.js.map +1 -1
  232. package/dist/mcp/utils/index.d.ts.map +1 -1
  233. package/dist/mcp/utils/index.js.map +1 -1
  234. package/dist/mcp/utils/logger.d.ts.map +1 -1
  235. package/dist/mcp/utils/logger.js.map +1 -1
  236. package/dist/mcp/utils/response-builder.d.ts.map +1 -1
  237. package/dist/mcp/utils/response-builder.js +8 -4
  238. package/dist/mcp/utils/response-builder.js.map +1 -1
  239. package/dist/mcp/utils/role-utils.d.ts.map +1 -1
  240. package/dist/mcp/utils/role-utils.js +6 -3
  241. package/dist/mcp/utils/role-utils.js.map +1 -1
  242. package/dist/mcp/utils/tool-helpers.d.ts.map +1 -1
  243. package/dist/mcp/utils/tool-helpers.js +2 -2
  244. package/dist/mcp/utils/tool-helpers.js.map +1 -1
  245. package/dist/mcp/utils/types.d.ts +2 -1
  246. package/dist/mcp/utils/types.d.ts.map +1 -1
  247. package/dist/mcp/utils/types.js.map +1 -1
  248. package/dist/mcp/webhook-handler.d.ts +43 -8
  249. package/dist/mcp/webhook-handler.d.ts.map +1 -1
  250. package/dist/mcp/webhook-handler.js +861 -116
  251. package/dist/mcp/webhook-handler.js.map +1 -1
  252. package/dist/mcp/workspace-admin-store.d.ts +49 -0
  253. package/dist/mcp/workspace-admin-store.d.ts.map +1 -0
  254. package/dist/mcp/workspace-admin-store.js +168 -0
  255. package/dist/mcp/workspace-admin-store.js.map +1 -0
  256. package/dist/mcp/workspace-cache.d.ts +2 -2
  257. package/dist/mcp/workspace-cache.d.ts.map +1 -1
  258. package/dist/mcp/workspace-cache.js +9 -5
  259. package/dist/mcp/workspace-cache.js.map +1 -1
  260. package/dist/mcp-server.d.ts +26 -11
  261. package/dist/mcp-server.d.ts.map +1 -1
  262. package/dist/mcp-server.js +367 -48
  263. package/dist/mcp-server.js.map +1 -1
  264. package/dist/plugins/vipunen/client.d.ts +41 -41
  265. package/dist/plugins/vipunen/client.d.ts.map +1 -1
  266. package/dist/plugins/vipunen/client.js +53 -48
  267. package/dist/plugins/vipunen/client.js.map +1 -1
  268. package/dist/plugins/vipunen/index.js.map +1 -1
  269. package/dist/plugins/vipunen/tools.d.ts.map +1 -1
  270. package/dist/plugins/vipunen/tools.js +6 -3
  271. package/dist/plugins/vipunen/tools.js.map +1 -1
  272. package/dist/public-chat/graduate.d.ts +29 -0
  273. package/dist/public-chat/graduate.d.ts.map +1 -0
  274. package/dist/public-chat/graduate.js +593 -0
  275. package/dist/public-chat/graduate.js.map +1 -0
  276. package/dist/public-chat/handler.d.ts +12 -0
  277. package/dist/public-chat/handler.d.ts.map +1 -0
  278. package/dist/public-chat/handler.js +183 -0
  279. package/dist/public-chat/handler.js.map +1 -0
  280. package/dist/public-chat/index.d.ts +16 -0
  281. package/dist/public-chat/index.d.ts.map +1 -0
  282. package/dist/public-chat/index.js +74 -0
  283. package/dist/public-chat/index.js.map +1 -0
  284. package/dist/public-chat/knowledge.d.ts +3 -0
  285. package/dist/public-chat/knowledge.d.ts.map +1 -0
  286. package/dist/public-chat/knowledge.js +1340 -0
  287. package/dist/public-chat/knowledge.js.map +1 -0
  288. package/dist/public-chat/rate-limit.d.ts +16 -0
  289. package/dist/public-chat/rate-limit.d.ts.map +1 -0
  290. package/dist/public-chat/rate-limit.js +51 -0
  291. package/dist/public-chat/rate-limit.js.map +1 -0
  292. package/dist/public-chat/session-store.d.ts +41 -0
  293. package/dist/public-chat/session-store.d.ts.map +1 -0
  294. package/dist/public-chat/session-store.js +95 -0
  295. package/dist/public-chat/session-store.js.map +1 -0
  296. package/dist/public-chat/studio-prewarm.d.ts +61 -0
  297. package/dist/public-chat/studio-prewarm.d.ts.map +1 -0
  298. package/dist/public-chat/studio-prewarm.js +162 -0
  299. package/dist/public-chat/studio-prewarm.js.map +1 -0
  300. package/dist/public-chat/system-prompt.d.ts +22 -0
  301. package/dist/public-chat/system-prompt.d.ts.map +1 -0
  302. package/dist/public-chat/system-prompt.js +435 -0
  303. package/dist/public-chat/system-prompt.js.map +1 -0
  304. package/package.json +13 -7
  305. package/scripts/build-public-chat-knowledge.py +101 -0
  306. package/scripts/smoke-public-chat-live.ts +148 -0
  307. package/scripts/smoke-public-chat.ts +110 -0
  308. package/.claude/CLAUDE.md +0 -126
  309. package/.claude/commands/app-squad.md +0 -131
  310. package/.claude/commands/audit-squad.md +0 -158
  311. package/.claude/commands/cleanup-squad.md +0 -98
  312. package/.claude/commands/config-squad.md +0 -106
  313. package/.claude/commands/crud-squad.md +0 -87
  314. package/.claude/commands/data-squad.md +0 -97
  315. package/.claude/commands/doc-squad.md +0 -65
  316. package/.claude/commands/help.md +0 -29
  317. package/.claude/commands/help:agents.md +0 -182
  318. package/.claude/commands/help:commands.md +0 -78
  319. package/.claude/commands/help:faq.md +0 -79
  320. package/.claude/commands/help:plugins.md +0 -50
  321. package/.claude/commands/help:skills.md +0 -87
  322. package/.claude/commands/help:tools.md +0 -75
  323. package/.claude/commands/hotfix-squad.md +0 -112
  324. package/.claude/commands/integration-squad.md +0 -82
  325. package/.claude/commands/janitor-squad.md +0 -167
  326. package/.claude/commands/onboard-squad.md +0 -130
  327. package/.claude/commands/swarm.md +0 -210
  328. package/.claude/commands/tool-builder.md +0 -39
  329. package/.claude/skills/publish-hailer-app/SKILL.md +0 -280
  330. package/dist/CLAUDE.md +0 -370
  331. package/dist/agents/bot-manager.d.ts +0 -48
  332. package/dist/agents/bot-manager.d.ts.map +0 -1
  333. package/dist/agents/bot-manager.js +0 -254
  334. package/dist/agents/bot-manager.js.map +0 -1
  335. package/dist/agents/bug-fixer/ai.d.ts +0 -80
  336. package/dist/agents/bug-fixer/ai.d.ts.map +0 -1
  337. package/dist/agents/bug-fixer/ai.js +0 -466
  338. package/dist/agents/bug-fixer/ai.js.map +0 -1
  339. package/dist/agents/bug-fixer/bot.d.ts +0 -92
  340. package/dist/agents/bug-fixer/bot.d.ts.map +0 -1
  341. package/dist/agents/bug-fixer/bot.js +0 -687
  342. package/dist/agents/bug-fixer/bot.js.map +0 -1
  343. package/dist/agents/bug-fixer/config.d.ts +0 -21
  344. package/dist/agents/bug-fixer/config.d.ts.map +0 -1
  345. package/dist/agents/bug-fixer/config.js +0 -218
  346. package/dist/agents/bug-fixer/config.js.map +0 -1
  347. package/dist/agents/bug-fixer/files.d.ts +0 -67
  348. package/dist/agents/bug-fixer/files.d.ts.map +0 -1
  349. package/dist/agents/bug-fixer/files.js +0 -386
  350. package/dist/agents/bug-fixer/files.js.map +0 -1
  351. package/dist/agents/bug-fixer/git.d.ts +0 -48
  352. package/dist/agents/bug-fixer/git.d.ts.map +0 -1
  353. package/dist/agents/bug-fixer/git.js +0 -298
  354. package/dist/agents/bug-fixer/git.js.map +0 -1
  355. package/dist/agents/bug-fixer/index.d.ts +0 -103
  356. package/dist/agents/bug-fixer/index.d.ts.map +0 -1
  357. package/dist/agents/bug-fixer/index.js +0 -262
  358. package/dist/agents/bug-fixer/index.js.map +0 -1
  359. package/dist/agents/bug-fixer/lsp.d.ts +0 -113
  360. package/dist/agents/bug-fixer/lsp.d.ts.map +0 -1
  361. package/dist/agents/bug-fixer/lsp.js +0 -485
  362. package/dist/agents/bug-fixer/lsp.js.map +0 -1
  363. package/dist/agents/bug-fixer/monitor.d.ts +0 -123
  364. package/dist/agents/bug-fixer/monitor.d.ts.map +0 -1
  365. package/dist/agents/bug-fixer/monitor.js +0 -629
  366. package/dist/agents/bug-fixer/monitor.js.map +0 -1
  367. package/dist/agents/bug-fixer/prompt.d.ts +0 -5
  368. package/dist/agents/bug-fixer/prompt.d.ts.map +0 -1
  369. package/dist/agents/bug-fixer/prompt.js +0 -94
  370. package/dist/agents/bug-fixer/prompt.js.map +0 -1
  371. package/dist/agents/bug-fixer/registries/pending-classification.d.ts +0 -28
  372. package/dist/agents/bug-fixer/registries/pending-classification.d.ts.map +0 -1
  373. package/dist/agents/bug-fixer/registries/pending-classification.js +0 -50
  374. package/dist/agents/bug-fixer/registries/pending-classification.js.map +0 -1
  375. package/dist/agents/bug-fixer/registries/pending-fix.d.ts +0 -33
  376. package/dist/agents/bug-fixer/registries/pending-fix.d.ts.map +0 -1
  377. package/dist/agents/bug-fixer/registries/pending-fix.js +0 -64
  378. package/dist/agents/bug-fixer/registries/pending-fix.js.map +0 -1
  379. package/dist/agents/bug-fixer/registries/pending.d.ts +0 -27
  380. package/dist/agents/bug-fixer/registries/pending.d.ts.map +0 -1
  381. package/dist/agents/bug-fixer/registries/pending.js +0 -49
  382. package/dist/agents/bug-fixer/registries/pending.js.map +0 -1
  383. package/dist/agents/bug-fixer/specialist-daemon.d.ts +0 -88
  384. package/dist/agents/bug-fixer/specialist-daemon.d.ts.map +0 -1
  385. package/dist/agents/bug-fixer/specialist-daemon.js +0 -431
  386. package/dist/agents/bug-fixer/specialist-daemon.js.map +0 -1
  387. package/dist/agents/bug-fixer/specialist.d.ts +0 -47
  388. package/dist/agents/bug-fixer/specialist.d.ts.map +0 -1
  389. package/dist/agents/bug-fixer/specialist.js +0 -327
  390. package/dist/agents/bug-fixer/specialist.js.map +0 -1
  391. package/dist/agents/bug-fixer/types.d.ts +0 -123
  392. package/dist/agents/bug-fixer/types.d.ts.map +0 -1
  393. package/dist/agents/bug-fixer/types.js +0 -9
  394. package/dist/agents/bug-fixer/types.js.map +0 -1
  395. package/dist/agents/factory.d.ts +0 -172
  396. package/dist/agents/factory.d.ts.map +0 -1
  397. package/dist/agents/factory.js +0 -706
  398. package/dist/agents/factory.js.map +0 -1
  399. package/dist/agents/hailer-expert/index.d.ts +0 -8
  400. package/dist/agents/hailer-expert/index.d.ts.map +0 -1
  401. package/dist/agents/hailer-expert/index.js +0 -14
  402. package/dist/agents/hailer-expert/index.js.map +0 -1
  403. package/dist/agents/hal/daemon.d.ts +0 -174
  404. package/dist/agents/hal/daemon.d.ts.map +0 -1
  405. package/dist/agents/hal/daemon.js +0 -1385
  406. package/dist/agents/hal/daemon.js.map +0 -1
  407. package/dist/agents/hal/definitions.d.ts +0 -42
  408. package/dist/agents/hal/definitions.d.ts.map +0 -1
  409. package/dist/agents/hal/definitions.js +0 -300
  410. package/dist/agents/hal/definitions.js.map +0 -1
  411. package/dist/agents/hal/index.d.ts +0 -3
  412. package/dist/agents/hal/index.d.ts.map +0 -1
  413. package/dist/agents/hal/index.js +0 -8
  414. package/dist/agents/hal/index.js.map +0 -1
  415. package/dist/agents/index.d.ts +0 -18
  416. package/dist/agents/index.d.ts.map +0 -1
  417. package/dist/agents/index.js +0 -48
  418. package/dist/agents/index.js.map +0 -1
  419. package/dist/agents/shared/base.d.ts +0 -253
  420. package/dist/agents/shared/base.d.ts.map +0 -1
  421. package/dist/agents/shared/base.js +0 -1122
  422. package/dist/agents/shared/base.js.map +0 -1
  423. package/dist/agents/shared/schemas/action-schema.d.ts +0 -62
  424. package/dist/agents/shared/schemas/action-schema.d.ts.map +0 -1
  425. package/dist/agents/shared/schemas/action-schema.js +0 -483
  426. package/dist/agents/shared/schemas/action-schema.js.map +0 -1
  427. package/dist/agents/shared/services/agent-registry.d.ts +0 -108
  428. package/dist/agents/shared/services/agent-registry.d.ts.map +0 -1
  429. package/dist/agents/shared/services/agent-registry.js +0 -469
  430. package/dist/agents/shared/services/agent-registry.js.map +0 -1
  431. package/dist/agents/shared/services/conversation-manager.d.ts +0 -57
  432. package/dist/agents/shared/services/conversation-manager.d.ts.map +0 -1
  433. package/dist/agents/shared/services/conversation-manager.js +0 -168
  434. package/dist/agents/shared/services/conversation-manager.js.map +0 -1
  435. package/dist/agents/shared/services/mcp-client.d.ts +0 -56
  436. package/dist/agents/shared/services/mcp-client.d.ts.map +0 -1
  437. package/dist/agents/shared/services/mcp-client.js +0 -124
  438. package/dist/agents/shared/services/mcp-client.js.map +0 -1
  439. package/dist/agents/shared/services/message-classifier.d.ts +0 -37
  440. package/dist/agents/shared/services/message-classifier.d.ts.map +0 -1
  441. package/dist/agents/shared/services/message-classifier.js +0 -203
  442. package/dist/agents/shared/services/message-classifier.js.map +0 -1
  443. package/dist/agents/shared/services/message-formatter.d.ts +0 -89
  444. package/dist/agents/shared/services/message-formatter.d.ts.map +0 -1
  445. package/dist/agents/shared/services/message-formatter.js +0 -390
  446. package/dist/agents/shared/services/message-formatter.js.map +0 -1
  447. package/dist/agents/shared/services/session-logger.d.ts +0 -162
  448. package/dist/agents/shared/services/session-logger.d.ts.map +0 -1
  449. package/dist/agents/shared/services/session-logger.js +0 -724
  450. package/dist/agents/shared/services/session-logger.js.map +0 -1
  451. package/dist/agents/shared/services/structured-output-executor.d.ts +0 -88
  452. package/dist/agents/shared/services/structured-output-executor.d.ts.map +0 -1
  453. package/dist/agents/shared/services/structured-output-executor.js +0 -296
  454. package/dist/agents/shared/services/structured-output-executor.js.map +0 -1
  455. package/dist/agents/shared/services/token-billing.d.ts +0 -72
  456. package/dist/agents/shared/services/token-billing.d.ts.map +0 -1
  457. package/dist/agents/shared/services/token-billing.js +0 -198
  458. package/dist/agents/shared/services/token-billing.js.map +0 -1
  459. package/dist/agents/shared/services/tool-executor.d.ts +0 -43
  460. package/dist/agents/shared/services/tool-executor.d.ts.map +0 -1
  461. package/dist/agents/shared/services/tool-executor.js +0 -175
  462. package/dist/agents/shared/services/tool-executor.js.map +0 -1
  463. package/dist/agents/shared/services/typing-indicator.d.ts +0 -24
  464. package/dist/agents/shared/services/typing-indicator.d.ts.map +0 -1
  465. package/dist/agents/shared/services/typing-indicator.js +0 -54
  466. package/dist/agents/shared/services/typing-indicator.js.map +0 -1
  467. package/dist/agents/shared/services/workspace-schema-cache.d.ts +0 -122
  468. package/dist/agents/shared/services/workspace-schema-cache.d.ts.map +0 -1
  469. package/dist/agents/shared/services/workspace-schema-cache.js +0 -507
  470. package/dist/agents/shared/services/workspace-schema-cache.js.map +0 -1
  471. package/dist/agents/shared/specialist.d.ts +0 -91
  472. package/dist/agents/shared/specialist.d.ts.map +0 -1
  473. package/dist/agents/shared/specialist.js +0 -399
  474. package/dist/agents/shared/specialist.js.map +0 -1
  475. package/dist/agents/shared/tool-schema-loader.d.ts +0 -65
  476. package/dist/agents/shared/tool-schema-loader.d.ts.map +0 -1
  477. package/dist/agents/shared/tool-schema-loader.js +0 -238
  478. package/dist/agents/shared/tool-schema-loader.js.map +0 -1
  479. package/dist/agents/shared/types.d.ts +0 -190
  480. package/dist/agents/shared/types.d.ts.map +0 -1
  481. package/dist/agents/shared/types.js +0 -13
  482. package/dist/agents/shared/types.js.map +0 -1
  483. package/dist/bot/bot-config.d.ts +0 -37
  484. package/dist/bot/bot-config.d.ts.map +0 -1
  485. package/dist/bot/bot-config.js +0 -219
  486. package/dist/bot/bot-config.js.map +0 -1
  487. package/dist/bot/services/__tests__/permission-guard.test.d.ts +0 -2
  488. package/dist/bot/services/__tests__/permission-guard.test.d.ts.map +0 -1
  489. package/dist/bot/services/__tests__/permission-guard.test.js +0 -357
  490. package/dist/bot/services/__tests__/permission-guard.test.js.map +0 -1
  491. package/dist/bot/services/session-logger.d.ts +0 -162
  492. package/dist/bot/services/session-logger.d.ts.map +0 -1
  493. package/dist/bot/services/session-logger.js +0 -724
  494. package/dist/bot/services/session-logger.js.map +0 -1
  495. package/dist/bot/services/workspace-schema-cache.d.ts +0 -122
  496. package/dist/bot/services/workspace-schema-cache.d.ts.map +0 -1
  497. package/dist/bot/services/workspace-schema-cache.js +0 -506
  498. package/dist/bot/services/workspace-schema-cache.js.map +0 -1
  499. package/dist/bot-config/tools.d.ts +0 -28
  500. package/dist/bot-config/tools.d.ts.map +0 -1
  501. package/dist/bot-config/tools.js +0 -279
  502. package/dist/bot-config/tools.js.map +0 -1
  503. package/dist/client/agents/base.d.ts +0 -207
  504. package/dist/client/agents/base.d.ts.map +0 -1
  505. package/dist/client/agents/base.js +0 -744
  506. package/dist/client/agents/base.js.map +0 -1
  507. package/dist/client/agents/definitions.d.ts +0 -53
  508. package/dist/client/agents/definitions.d.ts.map +0 -1
  509. package/dist/client/agents/definitions.js +0 -263
  510. package/dist/client/agents/definitions.js.map +0 -1
  511. package/dist/client/agents/orchestrator.d.ts +0 -141
  512. package/dist/client/agents/orchestrator.d.ts.map +0 -1
  513. package/dist/client/agents/orchestrator.js +0 -1062
  514. package/dist/client/agents/orchestrator.js.map +0 -1
  515. package/dist/client/agents/specialist.d.ts +0 -86
  516. package/dist/client/agents/specialist.d.ts.map +0 -1
  517. package/dist/client/agents/specialist.js +0 -340
  518. package/dist/client/agents/specialist.js.map +0 -1
  519. package/dist/client/bot-entrypoint.d.ts +0 -7
  520. package/dist/client/bot-entrypoint.d.ts.map +0 -1
  521. package/dist/client/bot-entrypoint.js +0 -103
  522. package/dist/client/bot-entrypoint.js.map +0 -1
  523. package/dist/client/bot-manager.d.ts +0 -44
  524. package/dist/client/bot-manager.d.ts.map +0 -1
  525. package/dist/client/bot-manager.js +0 -173
  526. package/dist/client/bot-manager.js.map +0 -1
  527. package/dist/client/bot-runner.d.ts +0 -35
  528. package/dist/client/bot-runner.d.ts.map +0 -1
  529. package/dist/client/bot-runner.js +0 -188
  530. package/dist/client/bot-runner.js.map +0 -1
  531. package/dist/client/chat-agent-daemon.d.ts +0 -464
  532. package/dist/client/chat-agent-daemon.d.ts.map +0 -1
  533. package/dist/client/chat-agent-daemon.js +0 -1774
  534. package/dist/client/chat-agent-daemon.js.map +0 -1
  535. package/dist/client/daemon-factory.d.ts +0 -106
  536. package/dist/client/daemon-factory.d.ts.map +0 -1
  537. package/dist/client/daemon-factory.js +0 -301
  538. package/dist/client/daemon-factory.js.map +0 -1
  539. package/dist/client/factory.d.ts +0 -111
  540. package/dist/client/factory.d.ts.map +0 -1
  541. package/dist/client/factory.js +0 -314
  542. package/dist/client/factory.js.map +0 -1
  543. package/dist/client/index.d.ts +0 -17
  544. package/dist/client/index.d.ts.map +0 -1
  545. package/dist/client/index.js +0 -38
  546. package/dist/client/index.js.map +0 -1
  547. package/dist/client/multi-bot-manager.d.ts +0 -42
  548. package/dist/client/multi-bot-manager.d.ts.map +0 -1
  549. package/dist/client/multi-bot-manager.js +0 -161
  550. package/dist/client/multi-bot-manager.js.map +0 -1
  551. package/dist/client/orchestrator-daemon.d.ts +0 -87
  552. package/dist/client/orchestrator-daemon.d.ts.map +0 -1
  553. package/dist/client/orchestrator-daemon.js +0 -444
  554. package/dist/client/orchestrator-daemon.js.map +0 -1
  555. package/dist/client/server.d.ts +0 -8
  556. package/dist/client/server.d.ts.map +0 -1
  557. package/dist/client/server.js +0 -251
  558. package/dist/client/server.js.map +0 -1
  559. package/dist/client/services/agent-registry.d.ts +0 -108
  560. package/dist/client/services/agent-registry.d.ts.map +0 -1
  561. package/dist/client/services/agent-registry.js +0 -630
  562. package/dist/client/services/agent-registry.js.map +0 -1
  563. package/dist/client/services/conversation-manager.d.ts +0 -50
  564. package/dist/client/services/conversation-manager.d.ts.map +0 -1
  565. package/dist/client/services/conversation-manager.js +0 -136
  566. package/dist/client/services/conversation-manager.js.map +0 -1
  567. package/dist/client/services/mcp-client.d.ts +0 -48
  568. package/dist/client/services/mcp-client.d.ts.map +0 -1
  569. package/dist/client/services/mcp-client.js +0 -105
  570. package/dist/client/services/mcp-client.js.map +0 -1
  571. package/dist/client/services/message-classifier.d.ts +0 -37
  572. package/dist/client/services/message-classifier.d.ts.map +0 -1
  573. package/dist/client/services/message-classifier.js +0 -187
  574. package/dist/client/services/message-classifier.js.map +0 -1
  575. package/dist/client/services/message-formatter.d.ts +0 -84
  576. package/dist/client/services/message-formatter.d.ts.map +0 -1
  577. package/dist/client/services/message-formatter.js +0 -353
  578. package/dist/client/services/message-formatter.js.map +0 -1
  579. package/dist/client/services/session-logger.d.ts +0 -106
  580. package/dist/client/services/session-logger.d.ts.map +0 -1
  581. package/dist/client/services/session-logger.js +0 -446
  582. package/dist/client/services/session-logger.js.map +0 -1
  583. package/dist/client/services/tool-executor.d.ts +0 -41
  584. package/dist/client/services/tool-executor.d.ts.map +0 -1
  585. package/dist/client/services/tool-executor.js +0 -169
  586. package/dist/client/services/tool-executor.js.map +0 -1
  587. package/dist/client/services/workspace-schema-cache.d.ts +0 -149
  588. package/dist/client/services/workspace-schema-cache.d.ts.map +0 -1
  589. package/dist/client/services/workspace-schema-cache.js +0 -732
  590. package/dist/client/services/workspace-schema-cache.js.map +0 -1
  591. package/dist/client/specialist-daemon.d.ts +0 -77
  592. package/dist/client/specialist-daemon.d.ts.map +0 -1
  593. package/dist/client/specialist-daemon.js +0 -197
  594. package/dist/client/specialist-daemon.js.map +0 -1
  595. package/dist/client/specialists.d.ts +0 -53
  596. package/dist/client/specialists.d.ts.map +0 -1
  597. package/dist/client/specialists.js +0 -178
  598. package/dist/client/specialists.js.map +0 -1
  599. package/dist/client/tool-schema-loader.d.ts +0 -62
  600. package/dist/client/tool-schema-loader.d.ts.map +0 -1
  601. package/dist/client/tool-schema-loader.js +0 -232
  602. package/dist/client/tool-schema-loader.js.map +0 -1
  603. package/dist/client/types.d.ts +0 -327
  604. package/dist/client/types.d.ts.map +0 -1
  605. package/dist/client/types.js +0 -121
  606. package/dist/client/types.js.map +0 -1
  607. package/dist/commands/seed-config.d.ts +0 -9
  608. package/dist/commands/seed-config.d.ts.map +0 -1
  609. package/dist/commands/seed-config.js +0 -377
  610. package/dist/commands/seed-config.js.map +0 -1
  611. package/dist/commands/setup.d.ts +0 -11
  612. package/dist/commands/setup.d.ts.map +0 -1
  613. package/dist/commands/setup.js +0 -320
  614. package/dist/commands/setup.js.map +0 -1
  615. package/dist/lib/discussion-lock.d.ts +0 -42
  616. package/dist/lib/discussion-lock.d.ts.map +0 -1
  617. package/dist/lib/discussion-lock.js +0 -110
  618. package/dist/lib/discussion-lock.js.map +0 -1
  619. package/dist/mcp/signal-handler.d.ts +0 -82
  620. package/dist/mcp/signal-handler.d.ts.map +0 -1
  621. package/dist/mcp/signal-handler.js +0 -406
  622. package/dist/mcp/signal-handler.js.map +0 -1
  623. package/dist/mcp/tools/__tests__/discussion-forward.test.d.ts +0 -2
  624. package/dist/mcp/tools/__tests__/discussion-forward.test.d.ts.map +0 -1
  625. package/dist/mcp/tools/__tests__/discussion-forward.test.js +0 -218
  626. package/dist/mcp/tools/__tests__/discussion-forward.test.js.map +0 -1
  627. package/dist/mcp/tools/app-member.d.ts +0 -14
  628. package/dist/mcp/tools/app-member.d.ts.map +0 -1
  629. package/dist/mcp/tools/app-member.js +0 -195
  630. package/dist/mcp/tools/app-member.js.map +0 -1
  631. package/dist/mcp/tools/app-scaffold.d.ts +0 -14
  632. package/dist/mcp/tools/app-scaffold.d.ts.map +0 -1
  633. package/dist/mcp/tools/app-scaffold.js +0 -581
  634. package/dist/mcp/tools/app-scaffold.js.map +0 -1
  635. package/dist/mcp/tools/bot-config/constants.d.ts +0 -23
  636. package/dist/mcp/tools/bot-config/constants.d.ts.map +0 -1
  637. package/dist/mcp/tools/bot-config/constants.js +0 -94
  638. package/dist/mcp/tools/bot-config/constants.js.map +0 -1
  639. package/dist/mcp/tools/bot-config/core.d.ts +0 -253
  640. package/dist/mcp/tools/bot-config/core.d.ts.map +0 -1
  641. package/dist/mcp/tools/bot-config/core.js +0 -2456
  642. package/dist/mcp/tools/bot-config/core.js.map +0 -1
  643. package/dist/mcp/tools/bot-config/index.d.ts +0 -10
  644. package/dist/mcp/tools/bot-config/index.d.ts.map +0 -1
  645. package/dist/mcp/tools/bot-config/index.js +0 -59
  646. package/dist/mcp/tools/bot-config/index.js.map +0 -1
  647. package/dist/mcp/tools/bot-config/tools.d.ts +0 -7
  648. package/dist/mcp/tools/bot-config/tools.d.ts.map +0 -1
  649. package/dist/mcp/tools/bot-config/tools.js +0 -15
  650. package/dist/mcp/tools/bot-config/tools.js.map +0 -1
  651. package/dist/mcp/tools/bot-config/types.d.ts +0 -50
  652. package/dist/mcp/tools/bot-config/types.d.ts.map +0 -1
  653. package/dist/mcp/tools/bot-config/types.js +0 -6
  654. package/dist/mcp/tools/bot-config/types.js.map +0 -1
  655. package/dist/mcp/tools/bug-fixer-tools.d.ts +0 -45
  656. package/dist/mcp/tools/bug-fixer-tools.d.ts.map +0 -1
  657. package/dist/mcp/tools/bug-fixer-tools.js +0 -1096
  658. package/dist/mcp/tools/bug-fixer-tools.js.map +0 -1
  659. package/dist/mcp/tools/document.d.ts +0 -11
  660. package/dist/mcp/tools/document.d.ts.map +0 -1
  661. package/dist/mcp/tools/document.js +0 -741
  662. package/dist/mcp/tools/document.js.map +0 -1
  663. package/dist/mcp/tools/investigate.d.ts +0 -9
  664. package/dist/mcp/tools/investigate.d.ts.map +0 -1
  665. package/dist/mcp/tools/investigate.js +0 -254
  666. package/dist/mcp/tools/investigate.js.map +0 -1
  667. package/dist/mcp/utils/pagination.d.ts +0 -40
  668. package/dist/mcp/utils/pagination.d.ts.map +0 -1
  669. package/dist/mcp/utils/pagination.js +0 -55
  670. package/dist/mcp/utils/pagination.js.map +0 -1
  671. package/dist/modules/bug-reports/bug-config.d.ts +0 -25
  672. package/dist/modules/bug-reports/bug-config.d.ts.map +0 -1
  673. package/dist/modules/bug-reports/bug-config.js +0 -187
  674. package/dist/modules/bug-reports/bug-config.js.map +0 -1
  675. package/dist/modules/bug-reports/bug-monitor.d.ts +0 -108
  676. package/dist/modules/bug-reports/bug-monitor.d.ts.map +0 -1
  677. package/dist/modules/bug-reports/bug-monitor.js +0 -510
  678. package/dist/modules/bug-reports/bug-monitor.js.map +0 -1
  679. package/dist/modules/bug-reports/giuseppe-agent.d.ts +0 -58
  680. package/dist/modules/bug-reports/giuseppe-agent.d.ts.map +0 -1
  681. package/dist/modules/bug-reports/giuseppe-agent.js +0 -467
  682. package/dist/modules/bug-reports/giuseppe-agent.js.map +0 -1
  683. package/dist/modules/bug-reports/giuseppe-ai.d.ts +0 -83
  684. package/dist/modules/bug-reports/giuseppe-ai.d.ts.map +0 -1
  685. package/dist/modules/bug-reports/giuseppe-ai.js +0 -466
  686. package/dist/modules/bug-reports/giuseppe-ai.js.map +0 -1
  687. package/dist/modules/bug-reports/giuseppe-bot.d.ts +0 -110
  688. package/dist/modules/bug-reports/giuseppe-bot.d.ts.map +0 -1
  689. package/dist/modules/bug-reports/giuseppe-bot.js +0 -804
  690. package/dist/modules/bug-reports/giuseppe-bot.js.map +0 -1
  691. package/dist/modules/bug-reports/giuseppe-daemon.d.ts +0 -80
  692. package/dist/modules/bug-reports/giuseppe-daemon.d.ts.map +0 -1
  693. package/dist/modules/bug-reports/giuseppe-daemon.js +0 -617
  694. package/dist/modules/bug-reports/giuseppe-daemon.js.map +0 -1
  695. package/dist/modules/bug-reports/giuseppe-files.d.ts +0 -64
  696. package/dist/modules/bug-reports/giuseppe-files.d.ts.map +0 -1
  697. package/dist/modules/bug-reports/giuseppe-files.js +0 -375
  698. package/dist/modules/bug-reports/giuseppe-files.js.map +0 -1
  699. package/dist/modules/bug-reports/giuseppe-git.d.ts +0 -48
  700. package/dist/modules/bug-reports/giuseppe-git.d.ts.map +0 -1
  701. package/dist/modules/bug-reports/giuseppe-git.js +0 -298
  702. package/dist/modules/bug-reports/giuseppe-git.js.map +0 -1
  703. package/dist/modules/bug-reports/giuseppe-lsp.d.ts +0 -113
  704. package/dist/modules/bug-reports/giuseppe-lsp.d.ts.map +0 -1
  705. package/dist/modules/bug-reports/giuseppe-lsp.js +0 -485
  706. package/dist/modules/bug-reports/giuseppe-lsp.js.map +0 -1
  707. package/dist/modules/bug-reports/giuseppe-prompt.d.ts +0 -5
  708. package/dist/modules/bug-reports/giuseppe-prompt.d.ts.map +0 -1
  709. package/dist/modules/bug-reports/giuseppe-prompt.js +0 -94
  710. package/dist/modules/bug-reports/giuseppe-prompt.js.map +0 -1
  711. package/dist/modules/bug-reports/index.d.ts +0 -77
  712. package/dist/modules/bug-reports/index.d.ts.map +0 -1
  713. package/dist/modules/bug-reports/index.js +0 -215
  714. package/dist/modules/bug-reports/index.js.map +0 -1
  715. package/dist/modules/bug-reports/pending-classification-registry.d.ts +0 -28
  716. package/dist/modules/bug-reports/pending-classification-registry.d.ts.map +0 -1
  717. package/dist/modules/bug-reports/pending-classification-registry.js +0 -50
  718. package/dist/modules/bug-reports/pending-classification-registry.js.map +0 -1
  719. package/dist/modules/bug-reports/pending-fix-registry.d.ts +0 -30
  720. package/dist/modules/bug-reports/pending-fix-registry.d.ts.map +0 -1
  721. package/dist/modules/bug-reports/pending-fix-registry.js +0 -42
  722. package/dist/modules/bug-reports/pending-fix-registry.js.map +0 -1
  723. package/dist/modules/bug-reports/pending-registry.d.ts +0 -27
  724. package/dist/modules/bug-reports/pending-registry.d.ts.map +0 -1
  725. package/dist/modules/bug-reports/pending-registry.js +0 -49
  726. package/dist/modules/bug-reports/pending-registry.js.map +0 -1
  727. package/dist/modules/bug-reports/types.d.ts +0 -123
  728. package/dist/modules/bug-reports/types.d.ts.map +0 -1
  729. package/dist/modules/bug-reports/types.js +0 -9
  730. package/dist/modules/bug-reports/types.js.map +0 -1
  731. package/dist/plugins/bug-fixer/index.d.ts +0 -2
  732. package/dist/plugins/bug-fixer/index.d.ts.map +0 -1
  733. package/dist/plugins/bug-fixer/index.js +0 -18
  734. package/dist/plugins/bug-fixer/index.js.map +0 -1
  735. package/dist/plugins/bug-fixer/tools.d.ts +0 -45
  736. package/dist/plugins/bug-fixer/tools.d.ts.map +0 -1
  737. package/dist/plugins/bug-fixer/tools.js +0 -1096
  738. package/dist/plugins/bug-fixer/tools.js.map +0 -1
  739. package/dist/plugins/vipunen/__tests__/tools.test.d.ts +0 -10
  740. package/dist/plugins/vipunen/__tests__/tools.test.d.ts.map +0 -1
  741. package/dist/plugins/vipunen/__tests__/tools.test.js +0 -646
  742. package/dist/plugins/vipunen/__tests__/tools.test.js.map +0 -1
  743. package/dist/routes/agents.d.ts +0 -44
  744. package/dist/routes/agents.d.ts.map +0 -1
  745. package/dist/routes/agents.js +0 -311
  746. package/dist/routes/agents.js.map +0 -1
  747. package/dist/services/agent-credential-store.d.ts +0 -73
  748. package/dist/services/agent-credential-store.d.ts.map +0 -1
  749. package/dist/services/agent-credential-store.js +0 -212
  750. package/dist/services/agent-credential-store.js.map +0 -1
  751. package/dist/stdio-server.d.ts +0 -14
  752. package/dist/stdio-server.d.ts.map +0 -1
  753. package/dist/stdio-server.js +0 -101
  754. package/dist/stdio-server.js.map +0 -1
  755. package/dist/workspace/context.d.ts +0 -148
  756. package/dist/workspace/context.d.ts.map +0 -1
  757. package/dist/workspace/context.js +0 -339
  758. package/dist/workspace/context.js.map +0 -1
  759. package/dist/workspace/credentials.d.ts +0 -55
  760. package/dist/workspace/credentials.d.ts.map +0 -1
  761. package/dist/workspace/credentials.js +0 -239
  762. package/dist/workspace/credentials.js.map +0 -1
  763. package/dist/workspace/index.d.ts +0 -21
  764. package/dist/workspace/index.d.ts.map +0 -1
  765. package/dist/workspace/index.js +0 -45
  766. package/dist/workspace/index.js.map +0 -1
  767. package/dist/workspace/loader.d.ts +0 -27
  768. package/dist/workspace/loader.d.ts.map +0 -1
  769. package/dist/workspace/loader.js +0 -222
  770. package/dist/workspace/loader.js.map +0 -1
  771. package/dist/workspace/schema.d.ts +0 -37
  772. package/dist/workspace/schema.d.ts.map +0 -1
  773. package/dist/workspace/schema.js +0 -192
  774. package/dist/workspace/schema.js.map +0 -1
@@ -0,0 +1,148 @@
1
+ /**
2
+ * Live-LLM smoke test for the public-chat bot. Fires a small set of canned
3
+ * prompts at the real model with the production system prompt and reports
4
+ * which bot-action types showed up in the responses.
5
+ *
6
+ * ANTHROPIC_API_KEY=... npx tsx scripts/smoke-public-chat-live.ts
7
+ *
8
+ * The script is OPTIONAL — it costs real API tokens and is non-deterministic.
9
+ * Run it before deploying significant prompt or corpus changes. The regular
10
+ * `smoke-public-chat.ts` covers everything that doesn't need a live model.
11
+ *
12
+ * The script does NOT exit non-zero on a missing action — the LLM is allowed
13
+ * to be cautious. It exits non-zero only on transport errors. Treat the report
14
+ * as a coverage signal: if all five action types reliably surface, the protocol
15
+ * is being honoured. If one or more are repeatedly silent across runs, the
16
+ * persona is probably under-specifying it or the model is dropping it.
17
+ */
18
+
19
+ import Anthropic from '@anthropic-ai/sdk';
20
+ import { buildPublicChatSystem } from '../src/public-chat/system-prompt';
21
+
22
+ // Minimal extractor — mirrors the frontend's bot-action-parser regex pair
23
+ // (BOT_ACTION_REGEX and INVOKE_FORM_REGEX from
24
+ // hailer-frontend-2/.../bot-action-parser.ts). Inlined to keep this script
25
+ // repo-local with no extra deps.
26
+ const ACTION_TYPES = '(navigate|highlight|point|presentation|slide)';
27
+ const TAG_REGEXES = [
28
+ new RegExp(`<bot-action\\s+type="${ACTION_TYPES}"\\s+target="([^"]+)"`, 'g'),
29
+ new RegExp(`<invoke\\s+name="bot_action"\\s+type="${ACTION_TYPES}"\\s+target="([^"]+)"`, 'g'),
30
+ ];
31
+
32
+ function extractActionTypes(text: string): Set<string> {
33
+ const found = new Set<string>();
34
+ for (const re of TAG_REGEXES) {
35
+ re.lastIndex = 0;
36
+ let m: RegExpExecArray | null;
37
+ while ((m = re.exec(text)) !== null) {
38
+ found.add(m[1]!);
39
+ }
40
+ }
41
+ return found;
42
+ }
43
+
44
+ const MODEL = 'claude-haiku-4-5-20251001';
45
+ const MAX_TOKENS = 600;
46
+
47
+ interface Probe {
48
+ label: string;
49
+ prompt: string;
50
+ /** Action types we'd expect to see at least one of in the reply. */
51
+ expect: Array<'navigate' | 'highlight' | 'point' | 'presentation' | 'slide'>;
52
+ }
53
+
54
+ const PROBES: Probe[] = [
55
+ {
56
+ label: 'tour invitation triggers a guided tour',
57
+ prompt: "I'm a developer evaluating Hailer for our team. Give me a quick walk-through of how this would feel.",
58
+ expect: ['navigate', 'point'],
59
+ },
60
+ {
61
+ label: 'explicit "show me X" triggers navigate or highlight',
62
+ prompt: 'Where do I see the calendar?',
63
+ expect: ['navigate', 'highlight'],
64
+ },
65
+ {
66
+ label: 'overview ask triggers the presentation',
67
+ prompt: "What is Hailer? Give me the elevator pitch — I want the big picture.",
68
+ expect: ['presentation'],
69
+ },
70
+ {
71
+ label: 'concept question triggers an inline slide chip',
72
+ prompt: 'Can you explain what a workflow is in Hailer?',
73
+ expect: ['slide'],
74
+ },
75
+ ];
76
+
77
+ async function main(): Promise<void> {
78
+ const apiKey = process.env['ANTHROPIC_API_KEY'];
79
+ if (!apiKey) {
80
+ console.error('ANTHROPIC_API_KEY env var is required for the live smoke.');
81
+ process.exit(2);
82
+ }
83
+ const anthropic = new Anthropic({ apiKey });
84
+
85
+ const system = buildPublicChatSystem();
86
+
87
+ let probesRun = 0;
88
+ let expectedActionsSatisfied = 0;
89
+ let expectedActionsTotal = 0;
90
+ const misses: Array<{ probe: string; missing: string[] }> = [];
91
+
92
+ for (const probe of PROBES) {
93
+ probesRun += 1;
94
+ process.stdout.write(`\n• ${probe.label}\n prompt: ${probe.prompt}\n`);
95
+ let fullText = '';
96
+ try {
97
+ const response = await anthropic.messages.create({
98
+ model: MODEL,
99
+ max_tokens: MAX_TOKENS,
100
+ temperature: 0.3,
101
+ system,
102
+ messages: [{ role: 'user', content: probe.prompt }],
103
+ });
104
+ for (const block of response.content) {
105
+ if (block.type === 'text') fullText += block.text;
106
+ }
107
+ } catch (err) {
108
+ console.error(` TRANSPORT ERROR: ${err instanceof Error ? err.message : String(err)}`);
109
+ process.exit(1);
110
+ }
111
+
112
+ const surfaced = extractActionTypes(fullText);
113
+
114
+ const missing: string[] = [];
115
+ for (const exp of probe.expect) {
116
+ expectedActionsTotal += 1;
117
+ if (surfaced.has(exp)) {
118
+ expectedActionsSatisfied += 1;
119
+ } else {
120
+ missing.push(exp);
121
+ }
122
+ }
123
+ console.log(` surfaced: ${Array.from(surfaced).join(', ') || '(none)'}`);
124
+ console.log(` expected: ${probe.expect.join(', ')}`);
125
+ if (missing.length > 0) {
126
+ misses.push({ probe: probe.label, missing });
127
+ console.log(` MISSING: ${missing.join(', ')}`);
128
+ }
129
+ }
130
+
131
+ console.log(
132
+ `\n${expectedActionsSatisfied}/${expectedActionsTotal} expected action types surfaced across ${probesRun} probes`
133
+ );
134
+ if (misses.length > 0) {
135
+ console.log('\nMisses worth investigating if they repeat across runs:');
136
+ for (const m of misses) {
137
+ console.log(` - "${m.probe}" missing: ${m.missing.join(', ')}`);
138
+ }
139
+ }
140
+ // Don't fail the run on missing actions — the LLM may legitimately reply in
141
+ // plain prose. Transport errors above are the only hard failure.
142
+ process.exit(0);
143
+ }
144
+
145
+ main().catch((err) => {
146
+ console.error(err);
147
+ process.exit(1);
148
+ });
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Smoke test for the public-chat module — exercises the pieces that don't
3
+ * need a live Anthropic API key.
4
+ *
5
+ * npx tsx scripts/smoke-public-chat.ts
6
+ */
7
+
8
+ import assert from 'node:assert/strict';
9
+ import { buildPublicChatSystem, KNOWLEDGE_BYTES } from '../src/public-chat/system-prompt';
10
+ import { checkRate, _resetForTests } from '../src/public-chat/rate-limit';
11
+ import { HAILER_KNOWLEDGE_CORPUS } from '../src/public-chat/knowledge';
12
+
13
+ let ran = 0;
14
+ let failed = 0;
15
+
16
+ function check(name: string, fn: () => void): void {
17
+ ran += 1;
18
+ try {
19
+ fn();
20
+ console.log(` ok ${name}`);
21
+ } catch (err) {
22
+ failed += 1;
23
+ console.log(` FAIL ${name}`);
24
+ console.error(err);
25
+ }
26
+ }
27
+
28
+ console.log('public-chat smoke');
29
+
30
+ console.log('\nknowledge corpus:');
31
+ check('compiled and non-trivial', () => {
32
+ assert.ok(HAILER_KNOWLEDGE_CORPUS.length > 10_000, 'too small');
33
+ assert.ok(HAILER_KNOWLEDGE_CORPUS.length < 200_000, 'too large');
34
+ assert.equal(KNOWLEDGE_BYTES, HAILER_KNOWLEDGE_CORPUS.length);
35
+ });
36
+ check('mentions all five top-level topics', () => {
37
+ const lower = HAILER_KNOWLEDGE_CORPUS.toLowerCase();
38
+ for (const term of ['overview', 'ui guide', 'mcp server', 'apps & marketplace', 'getting started']) {
39
+ assert.ok(lower.includes(term), `missing: ${term}`);
40
+ }
41
+ });
42
+ check('omits internal infra/compliance bait words', () => {
43
+ const lower = HAILER_KNOWLEDGE_CORPUS.toLowerCase();
44
+ for (const banned of ['client_configs={', 'infra/', 'hailer-frontend-2/']) {
45
+ assert.ok(!lower.includes(banned), `should not contain: ${banned}`);
46
+ }
47
+ });
48
+
49
+ console.log('\nbuildPublicChatSystem:');
50
+ check('returns two cached text blocks', () => {
51
+ const blocks = buildPublicChatSystem();
52
+ assert.equal(blocks.length, 2);
53
+ for (const block of blocks) {
54
+ assert.equal(block.type, 'text');
55
+ assert.deepEqual(block.cache_control, { type: 'ephemeral' });
56
+ assert.ok(block.text.length > 0);
57
+ }
58
+ });
59
+ check('persona block describes role and bot-action protocol', () => {
60
+ const [persona] = buildPublicChatSystem();
61
+ assert.match(persona.text, /Hailer Helper/i);
62
+ assert.match(persona.text, /bot-action/i);
63
+ assert.match(persona.text, /navigate/i);
64
+ assert.match(persona.text, /highlight/i);
65
+ });
66
+ check('persona documents all five bot-action types and shows their canonical form', () => {
67
+ // If any of these regress (someone deletes a section, renames a type, etc.)
68
+ // the model loses the affordance and the demo silently degrades. Cheap to
69
+ // assert on every smoke run.
70
+ const [persona] = buildPublicChatSystem();
71
+ for (const type of ['navigate', 'highlight', 'point', 'presentation', 'slide']) {
72
+ const re = new RegExp(`<bot-action\\s+type="${type}"`, 'i');
73
+ assert.match(persona.text, re, `persona missing canonical form for type="${type}"`);
74
+ }
75
+ });
76
+ check('persona explicitly acknowledges the always-visible Continue button', () => {
77
+ // Was once the other way around — persona told the bot to "surface" the CTA
78
+ // even though the button is always visible. Lock the corrected wording in.
79
+ const [persona] = buildPublicChatSystem();
80
+ assert.match(persona.text, /persistently visible|always visible/i);
81
+ });
82
+ check('knowledge block carries the full corpus', () => {
83
+ const [, knowledge] = buildPublicChatSystem();
84
+ assert.ok(knowledge.text.includes(HAILER_KNOWLEDGE_CORPUS));
85
+ });
86
+
87
+ console.log('\ncheckRate:');
88
+ _resetForTests();
89
+ check('allows the first 30 requests from a single IP', () => {
90
+ for (let i = 0; i < 30; i++) {
91
+ const r = checkRate('1.2.3.4');
92
+ assert.equal(r.ok, true, `request ${i + 1} should be allowed`);
93
+ assert.equal(r.remaining, 30 - 1 - i);
94
+ }
95
+ });
96
+ check('rejects the 31st request with retry-after', () => {
97
+ const blocked = checkRate('1.2.3.4');
98
+ assert.equal(blocked.ok, false);
99
+ assert.equal(blocked.remaining, 0);
100
+ assert.ok((blocked.retryAfterSec ?? 0) > 0);
101
+ });
102
+ _resetForTests();
103
+ check('keeps independent counters per IP', () => {
104
+ for (let i = 0; i < 30; i++) checkRate('9.9.9.9');
105
+ assert.equal(checkRate('9.9.9.9').ok, false);
106
+ assert.equal(checkRate('1.1.1.1').ok, true);
107
+ });
108
+
109
+ console.log(`\n${ran - failed}/${ran} passed${failed === 0 ? '' : `, ${failed} failed`}`);
110
+ process.exit(failed === 0 ? 0 : 1);
package/.claude/CLAUDE.md DELETED
@@ -1,126 +0,0 @@
1
- # Hailer SDK + MCP Project
2
-
3
- ## The One Rule
4
-
5
- **If it can be done locally, do it locally. MCP tools are ONLY for things that require a server call.**
6
-
7
- This project has `workspace/` files managed by `@hailer/sdk`. These files ARE the source of truth for all workflow configuration. The MCP server provides tools for runtime operations that require talking to Hailer's API.
8
-
9
- ## What Goes Where
10
-
11
- | Need | Do this | NEVER this |
12
- |------|---------|------------|
13
- | **Find workflow/field/phase IDs** | Read `workspace/enums.ts` | ~~`list_workflows_minimal`~~, ~~`get_workflow_schema`~~, ~~`list_workflow_phases`~~ |
14
- | **See field types, labels, options** | Read `workspace/<Name>_<id>/fields.ts` | ~~`get_workflow_schema`~~ |
15
- | **See phases** | Read `workspace/<Name>_<id>/phases.ts` | ~~`list_workflow_phases`~~ |
16
- | **See all workflows** | Read `workspace/workflows.ts` | ~~`list_workflows`~~ |
17
- | **Create/modify fields** | Edit `fields.ts` → `npm run fields-push:force` | ~~`update_workflow_field`~~ |
18
- | **Create/modify phases** | Edit `phases.ts` → `npm run phases-push:force` | ~~`update_workflow_phase`~~ |
19
- | **Create/modify workflows** | Edit `workflows.ts` → `npm run workflows-sync:force` | ~~`install_workflow`~~ |
20
- | **Create/modify teams** | Edit `teams.ts` → `npm run teams-push:force` | — |
21
- | **Create/modify groups** | Edit `groups.ts` → `npm run groups-push:force` | — |
22
- | **Create activities** | MCP `create_activity` | — |
23
- | **List/read activities** | MCP `list_activities`, `show_activity_by_id` | — |
24
- | **Update activities** | MCP `update_activity` | — |
25
- | **Query data** | MCP `preview_insight`, `create_insight` | — |
26
- | **Discussions** | MCP discussion tools | — |
27
- | **Activity counts** | MCP `core_init` (once per session) | — |
28
- | **Scaffold app** | MCP `scaffold_hailer_app` | — |
29
- | **Publish app** | MCP `publish_hailer_app` | — |
30
-
31
- **If you're about to call an MCP tool, ask yourself: "Is this data in workspace/ files?" If yes, read the file instead.**
32
-
33
- ## How to Read workspace/ Files
34
-
35
- **Never read workspace/ files in main context** — they're large and fill context permanently.
36
-
37
- 1. Spawn a **haiku sub-agent** to read the files
38
- 2. Have it extract what you need (IDs, field types, phase names)
39
- 3. It returns a short summary
40
- 4. Use that summary for MCP runtime calls
41
-
42
- ```
43
- Pattern: haiku reads workspace/ → you get IDs → MCP create_activity/list_activities
44
- ```
45
-
46
- ## Sub-Agent Rules
47
-
48
- - **Haiku:** Read files, search code, data lookups, reviews
49
- - **Sonnet:** Write code, build features, complex edits
50
- - **You (Opus):** Orchestrate, synthesize results, make decisions
51
- - **Skills:** Load in sub-agents only, never in main context
52
- - If a task takes more than ~20 lines of code, delegate to sonnet
53
-
54
- ## workspace/ Structure
55
-
56
- ```
57
- workspace/
58
- ├── enums.ts # ALL IDs — WorkflowIds, FieldIds, PhaseIds, etc.
59
- ├── workflows.ts # Workflow registry
60
- ├── teams.ts # Team definitions
61
- ├── groups.ts # Group definitions
62
- ├── insights.ts # Insight definitions
63
- └── <WorkflowName>_<id>/
64
- ├── fields.ts # Field definitions (type, label, key, options, required)
65
- ├── phases.ts # Phase definitions (name, key, isInitial, isEndpoint)
66
- ├── main.ts # Workflow config
67
- └── functions/ # Function field code (if any)
68
- ```
69
-
70
- **Refresh:** `npm run pull` syncs server → local files
71
-
72
- ## SDK Push Commands (all use `:force` to avoid interactive prompts)
73
-
74
- | Command | What it does |
75
- |---------|-------------|
76
- | `npm run push:force` | Push everything |
77
- | `npm run fields-push:force` | Push field changes only |
78
- | `npm run phases-push:force` | Push phase changes only |
79
- | `npm run workflows-sync:force` | Sync workflow registry (create/delete) |
80
- | `npm run teams-push:force` | Push team changes |
81
- | `npm run groups-push:force` | Push group changes |
82
- | `npm run pull` | Pull latest from Hailer → local files |
83
-
84
- ## SDK Gotchas
85
-
86
- | Gotcha | Correct | Wrong |
87
- |--------|---------|-------|
88
- | New fields | Omit `_id` — server assigns it | Adding `_id` manually |
89
- | After push | Always `npm run pull` to get server-assigned IDs | Assuming local IDs are final |
90
- | Function fields | `npm run fields-push:force` (non-force skips functionVariables) | `npm run fields-push` |
91
- | Enum imports | Verify after pull — identical hex suffixes can collide | Trusting auto-generated imports |
92
- | `linkedfrom` fields | Don't work in isolated-vm — use `<` backlink dependency | Using in function fields |
93
- | Function field code | Plain JavaScript only | TypeScript syntax |
94
- | Phase transitions | Exact string match on phase name | Guessed names |
95
- | Field values (MCP) | Date: Unix ms (`1730937600000`), Dropdown: exact string, ActivityLink: string ID | ISO dates, arrays, objects |
96
-
97
- ## App Development
98
-
99
- | Step | How |
100
- |------|-----|
101
- | Scaffold | MCP `scaffold_hailer_app` — never copy apps |
102
- | Publish | MCP `publish_hailer_app` — auto icon, name, description, sharing |
103
- | Local dev | `npm run dev` from app directory |
104
-
105
- ## Skills
106
-
107
- Load in sub-agents via Skill tool. Never in main context.
108
-
109
- | Skill | When |
110
- |-------|------|
111
- | `sdk-ws-config-skill` | Workflows, fields, phases, teams, groups |
112
- | `sdk-function-fields` | Calculated fields, nameFunction |
113
- | `sdk-activity-patterns` | Creating/updating activities via MCP |
114
- | `sdk-insight-queries` | SQL insight queries |
115
- | `hailer-app-builder` | Building Hailer apps (React/Chakra) |
116
- | `hailer-design-system` | Theme, colors, icons, layout |
117
- | `publish-hailer-app` | Publishing apps to production |
118
- | `testing-patterns` | Vitest/playwright tests |
119
-
120
- ## Commands
121
-
122
- `/command <param>` — angle brackets = required
123
-
124
- **Essential:** `/save`, `/handoff`, `/prd`, `/autoplan`, `/ws-pull`
125
-
126
- **Squads:** `/app-squad`, `/review-squad`, `/config-squad`, `/hotfix-squad`, `/debug-squad`, `/swarm <desc>`
@@ -1,131 +0,0 @@
1
- ---
2
- description: Build a Hailer app with hyper-parallel component teams
3
- argument-hint: "app description"
4
- allowed-tools: Task, Bash, Read, Skill
5
- ---
6
- # App Squad
7
-
8
- Hyper-parallel: orchestrator does ALL prep, then spawns one agent per component with everything pre-loaded. Agents do ZERO discovery — just write code.
9
-
10
- **Goal:** $ARGUMENTS
11
-
12
- ## Protocol
13
-
14
- ### Step 1: Full Prep (YOU do everything — fast)
15
-
16
- **Schema discovery (MCP calls, parallel):**
17
- - `list_workflows_minimal` → find relevant workflows
18
- - `list_workflow_phases` per workflow → phase IDs/names
19
- - `get_workflow_schema` per workflow → field IDs/types/labels
20
- - `list_insights` → existing insights
21
-
22
- **Scaffold:**
23
- - `scaffold_hailer_app` MCP tool (NEVER copy an existing app)
24
-
25
- **Read scaffold SDK files:**
26
- - `src/hailer/use-app.ts` — the Zustand store, understand the API
27
- - `src/hailer/use-hailer.tsx` — the raw hook (if use-app isn't available)
28
- - `src/main.tsx` — entry point (ChakraProvider + theme)
29
- - Check available icons: `ls src/hailer/theme/icons/`
30
-
31
- **Load skills (YOU load, paste into prompts):**
32
- - Load `hailer-app-builder` skill via Skill tool
33
- - Load `hailer-design-system` skill via Skill tool
34
- - Save the content — you'll paste it into every agent prompt
35
-
36
- **Read one existing working app** for reference:
37
- - Pick an app from `apps/` that works, read its App.tsx
38
- - Extract the SDK integration patterns (how it fetches, how it reads fields)
39
-
40
- ### Step 2: Define Shared Contract
41
-
42
- Write this contract — every agent gets the exact same copy:
43
-
44
- ```
45
- ## SHARED CONTRACT
46
-
47
- ### Constants
48
- [Paste all workflow IDs, field IDs, phase IDs from schema discovery]
49
-
50
- ### SDK API (from scaffold)
51
- [Paste the actual use-app.ts store shape — what useApp() returns]
52
- [Paste how to fetch: hailer.activity.list(workflowId, phaseId, { limit: 500 })]
53
- [Paste how fields work: activity.fields?.[fieldId] with value wrappers]
54
-
55
- ### Helper Functions
56
- [getField, getNumField, formatValue, getRating — whatever the app needs]
57
-
58
- ### Component Manifest
59
- [List every component: name, file path, props interface, what it renders]
60
-
61
- ### Import Paths
62
- [Exact import paths for SDK: '../hailer/use-app', icons, theme, etc.]
63
-
64
- ### Icon Paths
65
- [Available icons with exact import paths: '../hailer/theme/icons/HailerSearch']
66
-
67
- ### SDK Patterns (from existing working app)
68
- [Paste the patterns that WORK — how ready/inside/outside are handled]
69
- [CRITICAL: Apps must render even when outside Hailer — never block on `inside`]
70
-
71
- ### Skill Content
72
- [Paste hailer-app-builder skill content]
73
- [Paste hailer-design-system skill content]
74
- ```
75
-
76
- ### Step 3: Spawn ALL Agents in One Message
77
-
78
- Every agent gets the FULL shared contract. They do ZERO skill loading, ZERO file reading.
79
-
80
- Each agent prompt:
81
- ```
82
- You are building ONE component of a Hailer app.
83
-
84
- [PASTE FULL SHARED CONTRACT]
85
-
86
- ## Your Mission: [COMPONENT NAME]
87
- [What to build, what props it takes, what it renders]
88
-
89
- Return ONLY the complete TypeScript/React code. No file operations, no skill loading, no discovery.
90
- ```
91
-
92
- Typical team:
93
- | Agent | Builds | Model |
94
- |-------|--------|-------|
95
- | Shell | App.tsx — nav, state, data fetching, renders children | sonnet |
96
- | Overview | Dashboard — stat cards, summaries, charts | sonnet |
97
- | List View | Table — filters, sorting, row click | sonnet |
98
- | Detail | Modal content — full record view | sonnet |
99
- | (per extra workflow) | Additional list+detail | sonnet |
100
-
101
- ### Step 4: Assemble + Verify (YOU)
102
-
103
- 1. Write each component to its file
104
- 2. Delete scaffold demo components (ChartDemo, ActivityTable, etc.)
105
- 3. Fix integration issues (import paths, prop mismatches)
106
- 4. `npx tsc --noEmit` → fix any errors
107
- 5. `npx vite build` → verify
108
- 6. If < 5 errors, fix directly. If major, re-spawn failing agent with error + context.
109
-
110
- ### Step 5: Report
111
-
112
- ```markdown
113
- ## App Built: [name]
114
- - Path: apps/[name]/
115
- - Components: [N] built in parallel
116
- - Build: PASS
117
- - TypeScript: 0 errors
118
-
119
- ### Next Steps
120
- - `cd apps/[name] && npm run dev`
121
- - Open in Hailer iframe to test with live data
122
- ```
123
-
124
- ## Rules
125
-
126
- - NEVER copy existing apps — scaffold fresh
127
- - NEVER let agents load skills — you pre-load and paste
128
- - NEVER let agents read files — you read and paste
129
- - Apps must work when opened outside Hailer (show empty state, not error)
130
- - Include the ACTUAL SDK code in the contract, not a summary
131
- - Agents return code as text — you write the files
@@ -1,158 +0,0 @@
1
- ---
2
- description: Run parallel security and permissions audit
3
- argument-hint: [files, app name, or blank for full audit]
4
- allowed-tools: Task, Bash
5
- ---
6
-
7
- # Audit Squad
8
-
9
- Parallel security and permissions audit: code hardening, access control verification, and MCP tool validation.
10
-
11
- **Roles:**
12
- - **Code Reviewer** - Code review (hardcoded secrets, injection vulnerabilities, insecure patterns, OWASP top 10)
13
- - **Permissions Auditor** - Access control audit (effective permissions, team access levels, permission matrix)
14
- - **Tool Security Auditor** - MCP tools security (input validation, data exposure, security best practices)
15
-
16
- **Target:** $ARGUMENTS (if blank, use full project scope)
17
-
18
- **Scope options:**
19
- - Specific files or directory path
20
- - App name (checks that app's code and permissions)
21
- - Blank for full project audit
22
-
23
- ## Protocol
24
-
25
- ### Step 1: Determine Target
26
-
27
- If `$ARGUMENTS` has specific files/directories or app name, use those.
28
- Otherwise, scope is the entire project (workspace/ + apps/ + integrations/).
29
-
30
- If `$ARGUMENTS` contains `--code-only`:
31
- - Remove flag from target
32
- - Skip Permissions Auditor and Tool Security Auditor in Step 2
33
-
34
- If `$ARGUMENTS` contains `--permissions-only`:
35
- - Remove flag from target
36
- - Skip Code Reviewer and Tool Security Auditor in Step 2
37
-
38
- If `$ARGUMENTS` contains `--bg`:
39
- - Launch all agents in background mode
40
-
41
- ### Step 2: Launch Audit Agents in Parallel
42
-
43
- Spawn all applicable agents simultaneously using multiple Task tool calls in a single message:
44
-
45
- **Code Reviewer:**
46
- ```
47
- Task(prompt="Security audit of these files: [TARGET]. Focus on: hardcoded secrets, API keys, credentials, injection vulnerabilities (SQL/XSS/Command), insecure crypto usage, missing input validation, OWASP Top 10 issues, unsafe deserialization, missing authentication/authorization checks. Return verdict (PASS/FAIL), critical count, and detailed findings per file.")
48
- ```
49
-
50
- **Permissions Auditor:**
51
- ```
52
- Task(prompt="Load hailer-permissions-system skill for understanding the permissions model.\n\nAudit access control for the entire project. Map effective permissions: who has access to which apps, which teams have what access levels, which users are admins, workspace-wide versus app-specific permissions. Produce a permission matrix showing [User/Team] → [App] → [Access Level]. Flag any excessive or unclear permissions.")
53
- ```
54
-
55
- **Tool Security Auditor:**
56
- ```
57
- Task(prompt="Load tool-builder skill for understanding MCP tool patterns.\n\nSecurity audit of custom MCP tools (if any exist in src/mcp/tools/). Verify: input validation with Zod schemas, no unintended data exposure, proper error handling, rate limiting awareness, secure defaults. Report security posture per tool. If no custom tools exist, report that.")
58
- ```
59
-
60
- ### Step 3: Categorize and Aggregate Results
61
-
62
- Collect results from all agents. Categorize findings into three tiers:
63
-
64
- **CRITICAL:**
65
- - Hardcoded secrets/credentials
66
- - SQL injection, XSS, command injection vulnerabilities
67
- - Authentication/authorization bypasses
68
- - Excessive uncontrolled permissions
69
- - MCP tools exposing sensitive data
70
-
71
- **WARNING:**
72
- - Weak crypto usage
73
- - Missing input sanitization
74
- - Unclear permission delegations
75
- - Unvalidated MCP tool inputs
76
- - Missing rate limiting on tools
77
-
78
- **INFO:**
79
- - Best practice improvements
80
- - Code hardening suggestions
81
- - Permission clarity recommendations
82
-
83
- ### Step 4: Report
84
-
85
- ```markdown
86
- ## Audit Squad Report
87
-
88
- ### Scope
89
- [What was audited]
90
-
91
- ### Overall Security Posture
92
- [Rating: PASS / WARNING / CRITICAL]
93
- - Critical findings: X
94
- - Warnings: X
95
- - Info items: X
96
-
97
- ### Code Reviewer
98
- **Verdict:** PASS / FAIL / WARNINGS
99
- - Critical: X [list]
100
- - Warnings: X [list]
101
- - Info: X [list]
102
- - Files affected: [grouped summary]
103
-
104
- ### Permissions Auditor
105
- **Matrix Status:** [OK / EXCESSIVE / UNCLEAR]
106
- - Total apps: X
107
- - Total teams: X
108
- - Users with admin access: X
109
- - Flagged permissions: [list]
110
- - [Permission matrix if findings exist]
111
-
112
- ### Tool Security Auditor
113
- **Status:** [No tools / PASS / WARNINGS / CRITICAL]
114
- [If tools exist:]
115
- - Tools audited: X
116
- - Input validation issues: X
117
- - Data exposure risks: X
118
- - Best practice gaps: X
119
-
120
- ### Findings by Severity
121
-
122
- #### CRITICAL (Require Immediate Action)
123
- [List all critical findings with file/tool and remediation steps]
124
-
125
- #### WARNING (Address in Next Sprint)
126
- [List all warnings with context]
127
-
128
- #### INFO (Consider for Hardening)
129
- [List informational recommendations]
130
-
131
- ### Remediation Checklist
132
- - [ ] [Critical issue 1]: [Action]
133
- - [ ] [Critical issue 2]: [Action]
134
- - [ ] [Warning 1]: [Action]
135
-
136
- ### Summary
137
- [1-2 sentence overall assessment of security posture and next steps]
138
- ```
139
-
140
- If any agent fails or times out, report partial results from successful agents, note which failed, and offer to re-run individually.
141
-
142
- ## Options
143
-
144
- | Flag | Effect |
145
- |------|--------|
146
- | `--code-only` | Skip permissions and MCP tools (code review only, faster) |
147
- | `--permissions-only` | Skip code review and MCP tools (permissions matrix only) |
148
- | `--bg` | Run all agents in background mode |
149
-
150
- If `--bg` is present, launch all agents with `run_in_background: true` and tell the user they'll be notified when complete.
151
-
152
- ## Notes
153
-
154
- - Default scope is full project if no arguments provided
155
- - Code Reviewer focuses on secrets and injection attacks; general code quality is separate (/review-squad)
156
- - Permissions Auditor is organization-wide - includes team and app-level settings
157
- - Tool Security Auditor only validates if custom MCP tools exist in the project
158
- - Critical findings should block deployment; warnings should be tracked for next sprint