leedab 0.6.1 → 0.7.1

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 (594) hide show
  1. package/README.md +23 -13
  2. package/apps/console/.next/standalone/.next/BUILD_ID +1 -1
  3. package/apps/console/.next/standalone/.next/app-build-manifest.json +206 -171
  4. package/apps/console/.next/standalone/.next/app-path-routes-manifest.json +56 -51
  5. package/apps/console/.next/standalone/.next/build-manifest.json +2 -2
  6. package/apps/console/.next/standalone/.next/prerender-manifest.json +3 -3
  7. package/apps/console/.next/standalone/.next/server/app/_not-found/page.js +1 -1
  8. package/apps/console/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  9. package/apps/console/.next/standalone/.next/server/app/_not-found.html +1 -1
  10. package/apps/console/.next/standalone/.next/server/app/_not-found.rsc +3 -3
  11. package/apps/console/.next/standalone/.next/server/app/api/agent/route.js +2 -2
  12. package/apps/console/.next/standalone/.next/server/app/api/agent/route_client-reference-manifest.js +1 -1
  13. package/apps/console/.next/standalone/.next/server/app/api/approvals/route.js +1 -1
  14. package/apps/console/.next/standalone/.next/server/app/api/approvals/route_client-reference-manifest.js +1 -1
  15. package/apps/console/.next/standalone/.next/server/app/api/approvals/stream/route.js +1 -1
  16. package/apps/console/.next/standalone/.next/server/app/api/approvals/stream/route_client-reference-manifest.js +1 -1
  17. package/apps/console/.next/standalone/.next/server/app/api/automation/workflow-blueprint/route_client-reference-manifest.js +1 -1
  18. package/apps/console/.next/standalone/.next/server/app/api/backend/endpoint-spec/route_client-reference-manifest.js +1 -1
  19. package/apps/console/.next/standalone/.next/server/app/api/bootstrap-admin-token/route_client-reference-manifest.js +1 -1
  20. package/apps/console/.next/standalone/.next/server/app/api/brand/brand-audit/route_client-reference-manifest.js +1 -1
  21. package/apps/console/.next/standalone/.next/server/app/api/campaigns/campaign-brief/route_client-reference-manifest.js +1 -1
  22. package/apps/console/.next/standalone/.next/server/app/api/champion/confidence/route.js +1 -3
  23. package/apps/console/.next/standalone/.next/server/app/api/champion/confidence/route.js.nft.json +1 -1
  24. package/apps/console/.next/standalone/.next/server/app/api/champion/confidence/route_client-reference-manifest.js +1 -1
  25. package/apps/console/.next/standalone/.next/server/app/api/champion/customer/route.js +1 -3
  26. package/apps/console/.next/standalone/.next/server/app/api/champion/customer/route.js.nft.json +1 -1
  27. package/apps/console/.next/standalone/.next/server/app/api/champion/customer/route_client-reference-manifest.js +1 -1
  28. package/apps/console/.next/standalone/.next/server/app/api/champion/dispatches/route.js +1 -3
  29. package/apps/console/.next/standalone/.next/server/app/api/champion/dispatches/route.js.nft.json +1 -1
  30. package/apps/console/.next/standalone/.next/server/app/api/champion/dispatches/route_client-reference-manifest.js +1 -1
  31. package/apps/console/.next/standalone/.next/server/app/api/champion/engagement/route.js +1 -3
  32. package/apps/console/.next/standalone/.next/server/app/api/champion/engagement/route.js.nft.json +1 -1
  33. package/apps/console/.next/standalone/.next/server/app/api/champion/engagement/route_client-reference-manifest.js +1 -1
  34. package/apps/console/.next/standalone/.next/server/app/api/champion/escalate/route_client-reference-manifest.js +1 -1
  35. package/apps/console/.next/standalone/.next/server/app/api/champion/profile/route.js +1 -1
  36. package/apps/console/.next/standalone/.next/server/app/api/champion/profile/route_client-reference-manifest.js +1 -1
  37. package/apps/console/.next/standalone/.next/server/app/api/champion/screenshare/route_client-reference-manifest.js +1 -1
  38. package/apps/console/.next/standalone/.next/server/app/api/champion/track-question/route_client-reference-manifest.js +1 -1
  39. package/apps/console/.next/standalone/.next/server/app/api/champion/use-case-wiki/route_client-reference-manifest.js +1 -1
  40. package/apps/console/.next/standalone/.next/server/app/api/chat/route.js +2 -2
  41. package/apps/console/.next/standalone/.next/server/app/api/chat/route_client-reference-manifest.js +1 -1
  42. package/apps/console/.next/standalone/.next/server/app/api/compliance/risk-register-seed/route_client-reference-manifest.js +1 -1
  43. package/apps/console/.next/standalone/.next/server/app/api/computer-use/[id]/route_client-reference-manifest.js +1 -1
  44. package/apps/console/.next/standalone/.next/server/app/api/computer-use/route_client-reference-manifest.js +1 -1
  45. package/apps/console/.next/standalone/.next/server/app/api/concierge/morning-brief/route.js +1 -1
  46. package/apps/console/.next/standalone/.next/server/app/api/concierge/morning-brief/route_client-reference-manifest.js +1 -1
  47. package/apps/console/.next/standalone/.next/server/app/api/contacts/route.js +1 -1
  48. package/apps/console/.next/standalone/.next/server/app/api/contacts/route_client-reference-manifest.js +1 -1
  49. package/apps/console/.next/standalone/.next/server/app/api/content/seo-brief/route_client-reference-manifest.js +1 -1
  50. package/apps/console/.next/standalone/.next/server/app/api/conversations/route.js +2 -2
  51. package/apps/console/.next/standalone/.next/server/app/api/conversations/route_client-reference-manifest.js +1 -1
  52. package/apps/console/.next/standalone/.next/server/app/api/coo/route.js +1 -1
  53. package/apps/console/.next/standalone/.next/server/app/api/coo/route_client-reference-manifest.js +1 -1
  54. package/apps/console/.next/standalone/.next/server/app/api/cx/escalation-triage/route_client-reference-manifest.js +1 -1
  55. package/apps/console/.next/standalone/.next/server/app/api/cx/health-score/route.js +1 -1
  56. package/apps/console/.next/standalone/.next/server/app/api/cx/health-score/route_client-reference-manifest.js +1 -1
  57. package/apps/console/.next/standalone/.next/server/app/api/data/cohort-brief/route_client-reference-manifest.js +1 -1
  58. package/apps/console/.next/standalone/.next/server/app/api/delivery/qbr-brief/route.js +1 -1
  59. package/apps/console/.next/standalone/.next/server/app/api/delivery/qbr-brief/route_client-reference-manifest.js +1 -1
  60. package/apps/console/.next/standalone/.next/server/app/api/delivery/weekly-brief/route.js +1 -1
  61. package/apps/console/.next/standalone/.next/server/app/api/delivery/weekly-brief/route_client-reference-manifest.js +1 -1
  62. package/apps/console/.next/standalone/.next/server/app/api/dev/invalidate-cache/route.js +1 -1
  63. package/apps/console/.next/standalone/.next/server/app/api/dev/invalidate-cache/route_client-reference-manifest.js +1 -1
  64. package/apps/console/.next/standalone/.next/server/app/api/devops/runbook/route_client-reference-manifest.js +1 -1
  65. package/apps/console/.next/standalone/.next/server/app/api/email/sequence-brief/route_client-reference-manifest.js +1 -1
  66. package/apps/console/.next/standalone/.next/server/app/api/engineering/adr-draft/route_client-reference-manifest.js +1 -1
  67. package/apps/console/.next/standalone/.next/server/app/api/finance/runway-snapshot/route.js +4 -2
  68. package/apps/console/.next/standalone/.next/server/app/api/finance/runway-snapshot/route.js.nft.json +1 -1
  69. package/apps/console/.next/standalone/.next/server/app/api/finance/runway-snapshot/route_client-reference-manifest.js +1 -1
  70. package/apps/console/.next/standalone/.next/server/app/api/frontend/component-spec/route_client-reference-manifest.js +1 -1
  71. package/apps/console/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  72. package/apps/console/.next/standalone/.next/server/app/api/implementation/brief/route_client-reference-manifest.js +1 -1
  73. package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-migration-script/route_client-reference-manifest.js +1 -1
  74. package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-n8n-workflow/route_client-reference-manifest.js +1 -1
  75. package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-skill-override/route_client-reference-manifest.js +1 -1
  76. package/apps/console/.next/standalone/.next/server/app/api/inbox/route.js +1 -1
  77. package/apps/console/.next/standalone/.next/server/app/api/inbox/route_client-reference-manifest.js +1 -1
  78. package/apps/console/.next/standalone/.next/server/app/api/inbox/stream/route.js +1 -1
  79. package/apps/console/.next/standalone/.next/server/app/api/inbox/stream/route_client-reference-manifest.js +1 -1
  80. package/apps/console/.next/standalone/.next/server/app/api/investor/kpi-tracker/route.js +4 -2
  81. package/apps/console/.next/standalone/.next/server/app/api/investor/kpi-tracker/route.js.nft.json +1 -1
  82. package/apps/console/.next/standalone/.next/server/app/api/investor/kpi-tracker/route_client-reference-manifest.js +1 -1
  83. package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/status/route_client-reference-manifest.js +1 -1
  84. package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/telegram/connect/route_client-reference-manifest.js +1 -1
  85. package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/whatsapp/connect/route_client-reference-manifest.js +1 -1
  86. package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/leads/[id]/route_client-reference-manifest.js +1 -1
  87. package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/leads/[id]/status/route_client-reference-manifest.js +1 -1
  88. package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/templates/[name]/route_client-reference-manifest.js +1 -1
  89. package/apps/console/.next/standalone/.next/server/app/api/leedab/license/route_client-reference-manifest.js +1 -1
  90. package/apps/console/.next/standalone/.next/server/app/api/leedab/models/route.js +1 -0
  91. package/apps/console/.next/standalone/.next/server/app/api/leedab/models/route.js.nft.json +1 -0
  92. package/apps/console/.next/standalone/.next/server/app/api/leedab/models/route_client-reference-manifest.js +1 -0
  93. package/apps/console/.next/standalone/.next/server/app/api/leedab/providers/route.js +1 -1
  94. package/apps/console/.next/standalone/.next/server/app/api/leedab/providers/route_client-reference-manifest.js +1 -1
  95. package/apps/console/.next/standalone/.next/server/app/api/leedab/sessions/[id]/route_client-reference-manifest.js +1 -1
  96. package/apps/console/.next/standalone/.next/server/app/api/leedab/sessions/route_client-reference-manifest.js +1 -1
  97. package/apps/console/.next/standalone/.next/server/app/api/leedab/team/[id]/route_client-reference-manifest.js +1 -1
  98. package/apps/console/.next/standalone/.next/server/app/api/leedab/team/route_client-reference-manifest.js +1 -1
  99. package/apps/console/.next/standalone/.next/server/app/api/leedab/vault/route_client-reference-manifest.js +1 -1
  100. package/apps/console/.next/standalone/.next/server/app/api/leedab/workflows/route_client-reference-manifest.js +1 -1
  101. package/apps/console/.next/standalone/.next/server/app/api/legal/clause-template/route_client-reference-manifest.js +1 -1
  102. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/draft/route.js +20 -0
  103. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/draft/route.js.nft.json +1 -0
  104. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/draft/route_client-reference-manifest.js +1 -0
  105. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/route.js +3 -0
  106. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/route.js.nft.json +1 -0
  107. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/custom/route_client-reference-manifest.js +1 -0
  108. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/route.js +3 -0
  109. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/route.js.nft.json +1 -0
  110. package/apps/console/.next/standalone/.next/server/app/api/manifest/agents/route_client-reference-manifest.js +1 -0
  111. package/apps/console/.next/standalone/.next/server/app/api/marketing/cadence-planner/route_client-reference-manifest.js +1 -1
  112. package/apps/console/.next/standalone/.next/server/app/api/marketing/competitive-snapshot/route_client-reference-manifest.js +1 -1
  113. package/apps/console/.next/standalone/.next/server/app/api/marketplace/catalogue/route.js +3 -0
  114. package/apps/console/.next/standalone/.next/server/app/api/marketplace/catalogue/route.js.nft.json +1 -0
  115. package/apps/console/.next/standalone/.next/server/app/api/marketplace/catalogue/route_client-reference-manifest.js +1 -0
  116. package/apps/console/.next/standalone/.next/server/app/api/onboarding/engagement-plan/route_client-reference-manifest.js +1 -1
  117. package/apps/console/.next/standalone/.next/server/app/api/onboarding/kickoff-brief/route_client-reference-manifest.js +1 -1
  118. package/apps/console/.next/standalone/.next/server/app/api/openclaw/status/route_client-reference-manifest.js +1 -1
  119. package/apps/console/.next/standalone/.next/server/app/api/ops/dispatch-brief/route_client-reference-manifest.js +1 -1
  120. package/apps/console/.next/standalone/.next/server/app/api/pack/route.js +1 -1
  121. package/apps/console/.next/standalone/.next/server/app/api/pack/route_client-reference-manifest.js +1 -1
  122. package/apps/console/.next/standalone/.next/server/app/api/people/job-brief/route_client-reference-manifest.js +1 -1
  123. package/apps/console/.next/standalone/.next/server/app/api/preferences/route_client-reference-manifest.js +1 -1
  124. package/apps/console/.next/standalone/.next/server/app/api/procurement/po-brief/route_client-reference-manifest.js +1 -1
  125. package/apps/console/.next/standalone/.next/server/app/api/product/prd-draft/route_client-reference-manifest.js +1 -1
  126. package/apps/console/.next/standalone/.next/server/app/api/research/prospect-intel/route_client-reference-manifest.js +1 -1
  127. package/apps/console/.next/standalone/.next/server/app/api/research/search/route_client-reference-manifest.js +1 -1
  128. package/apps/console/.next/standalone/.next/server/app/api/routing/route.js +1 -1
  129. package/apps/console/.next/standalone/.next/server/app/api/routing/route_client-reference-manifest.js +1 -1
  130. package/apps/console/.next/standalone/.next/server/app/api/runs/route.js +1 -1
  131. package/apps/console/.next/standalone/.next/server/app/api/runs/route.js.nft.json +1 -1
  132. package/apps/console/.next/standalone/.next/server/app/api/runs/route_client-reference-manifest.js +1 -1
  133. package/apps/console/.next/standalone/.next/server/app/api/sales/pipeline-summary/route.js +4 -2
  134. package/apps/console/.next/standalone/.next/server/app/api/sales/pipeline-summary/route.js.nft.json +1 -1
  135. package/apps/console/.next/standalone/.next/server/app/api/sales/pipeline-summary/route_client-reference-manifest.js +1 -1
  136. package/apps/console/.next/standalone/.next/server/app/api/sales/prospect-brief/route_client-reference-manifest.js +1 -1
  137. package/apps/console/.next/standalone/.next/server/app/api/solutions/build/route.js +2 -2
  138. package/apps/console/.next/standalone/.next/server/app/api/solutions/build/route_client-reference-manifest.js +1 -1
  139. package/apps/console/.next/standalone/.next/server/app/api/solutions/quickstart-regenerate/route.js +1 -1
  140. package/apps/console/.next/standalone/.next/server/app/api/solutions/quickstart-regenerate/route_client-reference-manifest.js +1 -1
  141. package/apps/console/.next/standalone/.next/server/app/api/solutions/refine/route_client-reference-manifest.js +1 -1
  142. package/apps/console/.next/standalone/.next/server/app/api/strategy/market-pulse/route_client-reference-manifest.js +1 -1
  143. package/apps/console/.next/standalone/.next/server/app/api/telegram/[customerId]/route.js +4 -4
  144. package/apps/console/.next/standalone/.next/server/app/api/telegram/[customerId]/route_client-reference-manifest.js +1 -1
  145. package/apps/console/.next/standalone/.next/server/app/api/templates/regenerate/route.js +4 -2
  146. package/apps/console/.next/standalone/.next/server/app/api/templates/regenerate/route.js.nft.json +1 -1
  147. package/apps/console/.next/standalone/.next/server/app/api/templates/regenerate/route_client-reference-manifest.js +1 -1
  148. package/apps/console/.next/standalone/.next/server/app/api/templates/route.js +1 -1
  149. package/apps/console/.next/standalone/.next/server/app/api/templates/route.js.nft.json +1 -1
  150. package/apps/console/.next/standalone/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
  151. package/apps/console/.next/standalone/.next/server/app/api/uploads/[id]/route_client-reference-manifest.js +1 -1
  152. package/apps/console/.next/standalone/.next/server/app/api/uploads/route_client-reference-manifest.js +1 -1
  153. package/apps/console/.next/standalone/.next/server/app/api/usage/route.js +2 -2
  154. package/apps/console/.next/standalone/.next/server/app/api/usage/route_client-reference-manifest.js +1 -1
  155. package/apps/console/.next/standalone/.next/server/app/api/video/video-script/route_client-reference-manifest.js +1 -1
  156. package/apps/console/.next/standalone/.next/server/app/api/webhooks/workflow/[id]/route.js +2 -2
  157. package/apps/console/.next/standalone/.next/server/app/api/webhooks/workflow/[id]/route_client-reference-manifest.js +1 -1
  158. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/history/[runId]/route_client-reference-manifest.js +1 -1
  159. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/history/route_client-reference-manifest.js +1 -1
  160. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/route.js +2 -2
  161. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/route_client-reference-manifest.js +1 -1
  162. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/run/route.js +1 -1
  163. package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/run/route_client-reference-manifest.js +1 -1
  164. package/apps/console/.next/standalone/.next/server/app/api/workflows/route_client-reference-manifest.js +1 -1
  165. package/apps/console/.next/standalone/.next/server/app/gtm/page.js +2 -2
  166. package/apps/console/.next/standalone/.next/server/app/gtm/page_client-reference-manifest.js +1 -1
  167. package/apps/console/.next/standalone/.next/server/app/index.html +1 -1
  168. package/apps/console/.next/standalone/.next/server/app/index.rsc +4 -4
  169. package/apps/console/.next/standalone/.next/server/app/page.js +2 -2
  170. package/apps/console/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  171. package/apps/console/.next/standalone/.next/server/app-paths-manifest.json +56 -51
  172. package/apps/console/.next/standalone/.next/server/chunks/1558.js +9 -9
  173. package/apps/console/.next/standalone/.next/server/chunks/{5670.js → 2576.js} +1 -3
  174. package/apps/console/.next/standalone/.next/server/chunks/381.js +19 -0
  175. package/apps/console/.next/standalone/.next/server/chunks/4768.js +5 -5
  176. package/apps/console/.next/standalone/.next/server/chunks/6255.js +1 -1
  177. package/apps/console/.next/standalone/.next/server/chunks/7087.js +1 -1
  178. package/apps/console/.next/standalone/.next/server/chunks/897.js +1 -1
  179. package/apps/console/.next/standalone/.next/server/functions-config-manifest.json +40 -35
  180. package/apps/console/.next/standalone/.next/server/instrumentation.js +1 -1
  181. package/apps/console/.next/standalone/.next/server/pages/404.html +1 -1
  182. package/apps/console/.next/standalone/.next/server/pages/500.html +1 -1
  183. package/apps/console/.next/standalone/.next/server/pages-manifest.json +1 -1
  184. package/apps/console/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  185. package/apps/console/.next/standalone/.next/static/B4g4e91OJP29sEqgIs76V/_buildManifest.js +1 -0
  186. package/apps/console/.next/standalone/.next/static/chunks/7973-072db1a3857a8fe9.js +1 -0
  187. package/apps/console/.next/standalone/.next/static/chunks/app/api/agent/route-2d8162b887d31980.js +1 -0
  188. package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/route-2d8162b887d31980.js +1 -0
  189. package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/stream/route-2d8162b887d31980.js +1 -0
  190. package/apps/console/.next/standalone/.next/static/chunks/app/api/automation/workflow-blueprint/route-2d8162b887d31980.js +1 -0
  191. package/apps/console/.next/standalone/.next/static/chunks/app/api/backend/endpoint-spec/route-2d8162b887d31980.js +1 -0
  192. package/apps/console/.next/standalone/.next/static/chunks/app/api/bootstrap-admin-token/route-2d8162b887d31980.js +1 -0
  193. package/apps/console/.next/standalone/.next/static/chunks/app/api/brand/brand-audit/route-2d8162b887d31980.js +1 -0
  194. package/apps/console/.next/standalone/.next/static/chunks/app/api/campaigns/campaign-brief/route-2d8162b887d31980.js +1 -0
  195. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/confidence/route-2d8162b887d31980.js +1 -0
  196. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/customer/route-2d8162b887d31980.js +1 -0
  197. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/dispatches/route-2d8162b887d31980.js +1 -0
  198. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/engagement/route-2d8162b887d31980.js +1 -0
  199. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/escalate/route-2d8162b887d31980.js +1 -0
  200. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/profile/route-2d8162b887d31980.js +1 -0
  201. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/screenshare/route-2d8162b887d31980.js +1 -0
  202. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/track-question/route-2d8162b887d31980.js +1 -0
  203. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/use-case-wiki/route-2d8162b887d31980.js +1 -0
  204. package/apps/console/.next/standalone/.next/static/chunks/app/api/chat/route-2d8162b887d31980.js +1 -0
  205. package/apps/console/.next/standalone/.next/static/chunks/app/api/compliance/risk-register-seed/route-2d8162b887d31980.js +1 -0
  206. package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/[id]/route-2d8162b887d31980.js +1 -0
  207. package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/route-2d8162b887d31980.js +1 -0
  208. package/apps/console/.next/standalone/.next/static/chunks/app/api/concierge/morning-brief/route-2d8162b887d31980.js +1 -0
  209. package/apps/console/.next/standalone/.next/static/chunks/app/api/contacts/route-2d8162b887d31980.js +1 -0
  210. package/apps/console/.next/standalone/.next/static/chunks/app/api/content/seo-brief/route-2d8162b887d31980.js +1 -0
  211. package/apps/console/.next/standalone/.next/static/chunks/app/api/conversations/route-2d8162b887d31980.js +1 -0
  212. package/apps/console/.next/standalone/.next/static/chunks/app/api/coo/route-2d8162b887d31980.js +1 -0
  213. package/apps/console/.next/standalone/.next/static/chunks/app/api/cx/escalation-triage/route-2d8162b887d31980.js +1 -0
  214. package/apps/console/.next/standalone/.next/static/chunks/app/api/cx/health-score/route-2d8162b887d31980.js +1 -0
  215. package/apps/console/.next/standalone/.next/static/chunks/app/api/data/cohort-brief/route-2d8162b887d31980.js +1 -0
  216. package/apps/console/.next/standalone/.next/static/chunks/app/api/delivery/qbr-brief/route-2d8162b887d31980.js +1 -0
  217. package/apps/console/.next/standalone/.next/static/chunks/app/api/delivery/weekly-brief/route-2d8162b887d31980.js +1 -0
  218. package/apps/console/.next/standalone/.next/static/chunks/app/api/dev/invalidate-cache/route-2d8162b887d31980.js +1 -0
  219. package/apps/console/.next/standalone/.next/static/chunks/app/api/devops/runbook/route-2d8162b887d31980.js +1 -0
  220. package/apps/console/.next/standalone/.next/static/chunks/app/api/email/sequence-brief/route-2d8162b887d31980.js +1 -0
  221. package/apps/console/.next/standalone/.next/static/chunks/app/api/engineering/adr-draft/route-2d8162b887d31980.js +1 -0
  222. package/apps/console/.next/standalone/.next/static/chunks/app/api/finance/runway-snapshot/route-2d8162b887d31980.js +1 -0
  223. package/apps/console/.next/standalone/.next/static/chunks/app/api/frontend/component-spec/route-2d8162b887d31980.js +1 -0
  224. package/apps/console/.next/standalone/.next/static/chunks/app/api/health/route-2d8162b887d31980.js +1 -0
  225. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/brief/route-2d8162b887d31980.js +1 -0
  226. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-migration-script/route-2d8162b887d31980.js +1 -0
  227. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-n8n-workflow/route-2d8162b887d31980.js +1 -0
  228. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-skill-override/route-2d8162b887d31980.js +1 -0
  229. package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/route-2d8162b887d31980.js +1 -0
  230. package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/stream/route-2d8162b887d31980.js +1 -0
  231. package/apps/console/.next/standalone/.next/static/chunks/app/api/investor/kpi-tracker/route-2d8162b887d31980.js +1 -0
  232. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/status/route-2d8162b887d31980.js +1 -0
  233. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-2d8162b887d31980.js +1 -0
  234. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-2d8162b887d31980.js +1 -0
  235. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/leads/[id]/route-2d8162b887d31980.js +1 -0
  236. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/leads/[id]/status/route-2d8162b887d31980.js +1 -0
  237. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/templates/[name]/route-2d8162b887d31980.js +1 -0
  238. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/license/route-2d8162b887d31980.js +1 -0
  239. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/models/route-2d8162b887d31980.js +1 -0
  240. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/providers/route-2d8162b887d31980.js +1 -0
  241. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/[id]/route-2d8162b887d31980.js +1 -0
  242. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/route-2d8162b887d31980.js +1 -0
  243. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/[id]/route-2d8162b887d31980.js +1 -0
  244. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/route-2d8162b887d31980.js +1 -0
  245. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/vault/route-2d8162b887d31980.js +1 -0
  246. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/workflows/route-2d8162b887d31980.js +1 -0
  247. package/apps/console/.next/standalone/.next/static/chunks/app/api/legal/clause-template/route-2d8162b887d31980.js +1 -0
  248. package/apps/console/.next/standalone/.next/static/chunks/app/api/manifest/agents/custom/draft/route-2d8162b887d31980.js +1 -0
  249. package/apps/console/.next/standalone/.next/static/chunks/app/api/manifest/agents/custom/route-2d8162b887d31980.js +1 -0
  250. package/apps/console/.next/standalone/.next/static/chunks/app/api/manifest/agents/route-2d8162b887d31980.js +1 -0
  251. package/apps/console/.next/standalone/.next/static/chunks/app/api/marketing/cadence-planner/route-2d8162b887d31980.js +1 -0
  252. package/apps/console/.next/standalone/.next/static/chunks/app/api/marketing/competitive-snapshot/route-2d8162b887d31980.js +1 -0
  253. package/apps/console/.next/standalone/.next/static/chunks/app/api/marketplace/catalogue/route-2d8162b887d31980.js +1 -0
  254. package/apps/console/.next/standalone/.next/static/chunks/app/api/onboarding/engagement-plan/route-2d8162b887d31980.js +1 -0
  255. package/apps/console/.next/standalone/.next/static/chunks/app/api/onboarding/kickoff-brief/route-2d8162b887d31980.js +1 -0
  256. package/apps/console/.next/standalone/.next/static/chunks/app/api/openclaw/status/route-2d8162b887d31980.js +1 -0
  257. package/apps/console/.next/standalone/.next/static/chunks/app/api/ops/dispatch-brief/route-2d8162b887d31980.js +1 -0
  258. package/apps/console/.next/standalone/.next/static/chunks/app/api/pack/route-2d8162b887d31980.js +1 -0
  259. package/apps/console/.next/standalone/.next/static/chunks/app/api/people/job-brief/route-2d8162b887d31980.js +1 -0
  260. package/apps/console/.next/standalone/.next/static/chunks/app/api/preferences/route-2d8162b887d31980.js +1 -0
  261. package/apps/console/.next/standalone/.next/static/chunks/app/api/procurement/po-brief/route-2d8162b887d31980.js +1 -0
  262. package/apps/console/.next/standalone/.next/static/chunks/app/api/product/prd-draft/route-2d8162b887d31980.js +1 -0
  263. package/apps/console/.next/standalone/.next/static/chunks/app/api/research/prospect-intel/route-2d8162b887d31980.js +1 -0
  264. package/apps/console/.next/standalone/.next/static/chunks/app/api/research/search/route-2d8162b887d31980.js +1 -0
  265. package/apps/console/.next/standalone/.next/static/chunks/app/api/routing/route-2d8162b887d31980.js +1 -0
  266. package/apps/console/.next/standalone/.next/static/chunks/app/api/runs/route-2d8162b887d31980.js +1 -0
  267. package/apps/console/.next/standalone/.next/static/chunks/app/api/sales/pipeline-summary/route-2d8162b887d31980.js +1 -0
  268. package/apps/console/.next/standalone/.next/static/chunks/app/api/sales/prospect-brief/route-2d8162b887d31980.js +1 -0
  269. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/build/route-2d8162b887d31980.js +1 -0
  270. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/quickstart-regenerate/route-2d8162b887d31980.js +1 -0
  271. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/refine/route-2d8162b887d31980.js +1 -0
  272. package/apps/console/.next/standalone/.next/static/chunks/app/api/strategy/market-pulse/route-2d8162b887d31980.js +1 -0
  273. package/apps/console/.next/standalone/.next/static/chunks/app/api/telegram/[customerId]/route-2d8162b887d31980.js +1 -0
  274. package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/regenerate/route-2d8162b887d31980.js +1 -0
  275. package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/route-2d8162b887d31980.js +1 -0
  276. package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/[id]/route-2d8162b887d31980.js +1 -0
  277. package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/route-2d8162b887d31980.js +1 -0
  278. package/apps/console/.next/standalone/.next/static/chunks/app/api/usage/route-2d8162b887d31980.js +1 -0
  279. package/apps/console/.next/standalone/.next/static/chunks/app/api/video/video-script/route-2d8162b887d31980.js +1 -0
  280. package/apps/console/.next/standalone/.next/static/chunks/app/api/webhooks/workflow/[id]/route-2d8162b887d31980.js +1 -0
  281. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-2d8162b887d31980.js +1 -0
  282. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/route-2d8162b887d31980.js +1 -0
  283. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/route-2d8162b887d31980.js +1 -0
  284. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/run/route-2d8162b887d31980.js +1 -0
  285. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/route-2d8162b887d31980.js +1 -0
  286. package/apps/console/.next/standalone/.next/static/chunks/app/page-bdfdbf7b657f4722.js +1 -0
  287. package/apps/console/.next/standalone/.next/static/css/{4bdbd0680d42c54d.css → b2a91ecca3bf1487.css} +1 -1
  288. package/apps/console/.next/standalone/package.json +1 -0
  289. package/apps/console/.next/static/B4g4e91OJP29sEqgIs76V/_buildManifest.js +1 -0
  290. package/apps/console/.next/static/chunks/7973-072db1a3857a8fe9.js +1 -0
  291. package/apps/console/.next/static/chunks/app/api/agent/route-2d8162b887d31980.js +1 -0
  292. package/apps/console/.next/static/chunks/app/api/approvals/route-2d8162b887d31980.js +1 -0
  293. package/apps/console/.next/static/chunks/app/api/approvals/stream/route-2d8162b887d31980.js +1 -0
  294. package/apps/console/.next/static/chunks/app/api/automation/workflow-blueprint/route-2d8162b887d31980.js +1 -0
  295. package/apps/console/.next/static/chunks/app/api/backend/endpoint-spec/route-2d8162b887d31980.js +1 -0
  296. package/apps/console/.next/static/chunks/app/api/bootstrap-admin-token/route-2d8162b887d31980.js +1 -0
  297. package/apps/console/.next/static/chunks/app/api/brand/brand-audit/route-2d8162b887d31980.js +1 -0
  298. package/apps/console/.next/static/chunks/app/api/campaigns/campaign-brief/route-2d8162b887d31980.js +1 -0
  299. package/apps/console/.next/static/chunks/app/api/champion/confidence/route-2d8162b887d31980.js +1 -0
  300. package/apps/console/.next/static/chunks/app/api/champion/customer/route-2d8162b887d31980.js +1 -0
  301. package/apps/console/.next/static/chunks/app/api/champion/dispatches/route-2d8162b887d31980.js +1 -0
  302. package/apps/console/.next/static/chunks/app/api/champion/engagement/route-2d8162b887d31980.js +1 -0
  303. package/apps/console/.next/static/chunks/app/api/champion/escalate/route-2d8162b887d31980.js +1 -0
  304. package/apps/console/.next/static/chunks/app/api/champion/profile/route-2d8162b887d31980.js +1 -0
  305. package/apps/console/.next/static/chunks/app/api/champion/screenshare/route-2d8162b887d31980.js +1 -0
  306. package/apps/console/.next/static/chunks/app/api/champion/track-question/route-2d8162b887d31980.js +1 -0
  307. package/apps/console/.next/static/chunks/app/api/champion/use-case-wiki/route-2d8162b887d31980.js +1 -0
  308. package/apps/console/.next/static/chunks/app/api/chat/route-2d8162b887d31980.js +1 -0
  309. package/apps/console/.next/static/chunks/app/api/compliance/risk-register-seed/route-2d8162b887d31980.js +1 -0
  310. package/apps/console/.next/static/chunks/app/api/computer-use/[id]/route-2d8162b887d31980.js +1 -0
  311. package/apps/console/.next/static/chunks/app/api/computer-use/route-2d8162b887d31980.js +1 -0
  312. package/apps/console/.next/static/chunks/app/api/concierge/morning-brief/route-2d8162b887d31980.js +1 -0
  313. package/apps/console/.next/static/chunks/app/api/contacts/route-2d8162b887d31980.js +1 -0
  314. package/apps/console/.next/static/chunks/app/api/content/seo-brief/route-2d8162b887d31980.js +1 -0
  315. package/apps/console/.next/static/chunks/app/api/conversations/route-2d8162b887d31980.js +1 -0
  316. package/apps/console/.next/static/chunks/app/api/coo/route-2d8162b887d31980.js +1 -0
  317. package/apps/console/.next/static/chunks/app/api/cx/escalation-triage/route-2d8162b887d31980.js +1 -0
  318. package/apps/console/.next/static/chunks/app/api/cx/health-score/route-2d8162b887d31980.js +1 -0
  319. package/apps/console/.next/static/chunks/app/api/data/cohort-brief/route-2d8162b887d31980.js +1 -0
  320. package/apps/console/.next/static/chunks/app/api/delivery/qbr-brief/route-2d8162b887d31980.js +1 -0
  321. package/apps/console/.next/static/chunks/app/api/delivery/weekly-brief/route-2d8162b887d31980.js +1 -0
  322. package/apps/console/.next/static/chunks/app/api/dev/invalidate-cache/route-2d8162b887d31980.js +1 -0
  323. package/apps/console/.next/static/chunks/app/api/devops/runbook/route-2d8162b887d31980.js +1 -0
  324. package/apps/console/.next/static/chunks/app/api/email/sequence-brief/route-2d8162b887d31980.js +1 -0
  325. package/apps/console/.next/static/chunks/app/api/engineering/adr-draft/route-2d8162b887d31980.js +1 -0
  326. package/apps/console/.next/static/chunks/app/api/finance/runway-snapshot/route-2d8162b887d31980.js +1 -0
  327. package/apps/console/.next/static/chunks/app/api/frontend/component-spec/route-2d8162b887d31980.js +1 -0
  328. package/apps/console/.next/static/chunks/app/api/health/route-2d8162b887d31980.js +1 -0
  329. package/apps/console/.next/static/chunks/app/api/implementation/brief/route-2d8162b887d31980.js +1 -0
  330. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-migration-script/route-2d8162b887d31980.js +1 -0
  331. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-n8n-workflow/route-2d8162b887d31980.js +1 -0
  332. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-skill-override/route-2d8162b887d31980.js +1 -0
  333. package/apps/console/.next/static/chunks/app/api/inbox/route-2d8162b887d31980.js +1 -0
  334. package/apps/console/.next/static/chunks/app/api/inbox/stream/route-2d8162b887d31980.js +1 -0
  335. package/apps/console/.next/static/chunks/app/api/investor/kpi-tracker/route-2d8162b887d31980.js +1 -0
  336. package/apps/console/.next/static/chunks/app/api/leedab/channels/status/route-2d8162b887d31980.js +1 -0
  337. package/apps/console/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-2d8162b887d31980.js +1 -0
  338. package/apps/console/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-2d8162b887d31980.js +1 -0
  339. package/apps/console/.next/static/chunks/app/api/leedab/gtm/leads/[id]/route-2d8162b887d31980.js +1 -0
  340. package/apps/console/.next/static/chunks/app/api/leedab/gtm/leads/[id]/status/route-2d8162b887d31980.js +1 -0
  341. package/apps/console/.next/static/chunks/app/api/leedab/gtm/templates/[name]/route-2d8162b887d31980.js +1 -0
  342. package/apps/console/.next/static/chunks/app/api/leedab/license/route-2d8162b887d31980.js +1 -0
  343. package/apps/console/.next/static/chunks/app/api/leedab/models/route-2d8162b887d31980.js +1 -0
  344. package/apps/console/.next/static/chunks/app/api/leedab/providers/route-2d8162b887d31980.js +1 -0
  345. package/apps/console/.next/static/chunks/app/api/leedab/sessions/[id]/route-2d8162b887d31980.js +1 -0
  346. package/apps/console/.next/static/chunks/app/api/leedab/sessions/route-2d8162b887d31980.js +1 -0
  347. package/apps/console/.next/static/chunks/app/api/leedab/team/[id]/route-2d8162b887d31980.js +1 -0
  348. package/apps/console/.next/static/chunks/app/api/leedab/team/route-2d8162b887d31980.js +1 -0
  349. package/apps/console/.next/static/chunks/app/api/leedab/vault/route-2d8162b887d31980.js +1 -0
  350. package/apps/console/.next/static/chunks/app/api/leedab/workflows/route-2d8162b887d31980.js +1 -0
  351. package/apps/console/.next/static/chunks/app/api/legal/clause-template/route-2d8162b887d31980.js +1 -0
  352. package/apps/console/.next/static/chunks/app/api/manifest/agents/custom/draft/route-2d8162b887d31980.js +1 -0
  353. package/apps/console/.next/static/chunks/app/api/manifest/agents/custom/route-2d8162b887d31980.js +1 -0
  354. package/apps/console/.next/static/chunks/app/api/manifest/agents/route-2d8162b887d31980.js +1 -0
  355. package/apps/console/.next/static/chunks/app/api/marketing/cadence-planner/route-2d8162b887d31980.js +1 -0
  356. package/apps/console/.next/static/chunks/app/api/marketing/competitive-snapshot/route-2d8162b887d31980.js +1 -0
  357. package/apps/console/.next/static/chunks/app/api/marketplace/catalogue/route-2d8162b887d31980.js +1 -0
  358. package/apps/console/.next/static/chunks/app/api/onboarding/engagement-plan/route-2d8162b887d31980.js +1 -0
  359. package/apps/console/.next/static/chunks/app/api/onboarding/kickoff-brief/route-2d8162b887d31980.js +1 -0
  360. package/apps/console/.next/static/chunks/app/api/openclaw/status/route-2d8162b887d31980.js +1 -0
  361. package/apps/console/.next/static/chunks/app/api/ops/dispatch-brief/route-2d8162b887d31980.js +1 -0
  362. package/apps/console/.next/static/chunks/app/api/pack/route-2d8162b887d31980.js +1 -0
  363. package/apps/console/.next/static/chunks/app/api/people/job-brief/route-2d8162b887d31980.js +1 -0
  364. package/apps/console/.next/static/chunks/app/api/preferences/route-2d8162b887d31980.js +1 -0
  365. package/apps/console/.next/static/chunks/app/api/procurement/po-brief/route-2d8162b887d31980.js +1 -0
  366. package/apps/console/.next/static/chunks/app/api/product/prd-draft/route-2d8162b887d31980.js +1 -0
  367. package/apps/console/.next/static/chunks/app/api/research/prospect-intel/route-2d8162b887d31980.js +1 -0
  368. package/apps/console/.next/static/chunks/app/api/research/search/route-2d8162b887d31980.js +1 -0
  369. package/apps/console/.next/static/chunks/app/api/routing/route-2d8162b887d31980.js +1 -0
  370. package/apps/console/.next/static/chunks/app/api/runs/route-2d8162b887d31980.js +1 -0
  371. package/apps/console/.next/static/chunks/app/api/sales/pipeline-summary/route-2d8162b887d31980.js +1 -0
  372. package/apps/console/.next/static/chunks/app/api/sales/prospect-brief/route-2d8162b887d31980.js +1 -0
  373. package/apps/console/.next/static/chunks/app/api/solutions/build/route-2d8162b887d31980.js +1 -0
  374. package/apps/console/.next/static/chunks/app/api/solutions/quickstart-regenerate/route-2d8162b887d31980.js +1 -0
  375. package/apps/console/.next/static/chunks/app/api/solutions/refine/route-2d8162b887d31980.js +1 -0
  376. package/apps/console/.next/static/chunks/app/api/strategy/market-pulse/route-2d8162b887d31980.js +1 -0
  377. package/apps/console/.next/static/chunks/app/api/telegram/[customerId]/route-2d8162b887d31980.js +1 -0
  378. package/apps/console/.next/static/chunks/app/api/templates/regenerate/route-2d8162b887d31980.js +1 -0
  379. package/apps/console/.next/static/chunks/app/api/templates/route-2d8162b887d31980.js +1 -0
  380. package/apps/console/.next/static/chunks/app/api/uploads/[id]/route-2d8162b887d31980.js +1 -0
  381. package/apps/console/.next/static/chunks/app/api/uploads/route-2d8162b887d31980.js +1 -0
  382. package/apps/console/.next/static/chunks/app/api/usage/route-2d8162b887d31980.js +1 -0
  383. package/apps/console/.next/static/chunks/app/api/video/video-script/route-2d8162b887d31980.js +1 -0
  384. package/apps/console/.next/static/chunks/app/api/webhooks/workflow/[id]/route-2d8162b887d31980.js +1 -0
  385. package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-2d8162b887d31980.js +1 -0
  386. package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/route-2d8162b887d31980.js +1 -0
  387. package/apps/console/.next/static/chunks/app/api/workflows/[id]/route-2d8162b887d31980.js +1 -0
  388. package/apps/console/.next/static/chunks/app/api/workflows/[id]/run/route-2d8162b887d31980.js +1 -0
  389. package/apps/console/.next/static/chunks/app/api/workflows/route-2d8162b887d31980.js +1 -0
  390. package/apps/console/.next/static/chunks/app/page-bdfdbf7b657f4722.js +1 -0
  391. package/apps/console/.next/static/css/{4bdbd0680d42c54d.css → b2a91ecca3bf1487.css} +1 -1
  392. package/bin/leedab-auto-pr.sh +108 -0
  393. package/bin/leedab.js +123 -1
  394. package/clients/default/manifest.json +47 -2
  395. package/dist/console-launcher.js +6 -2
  396. package/dist/gateway.js +111 -52
  397. package/package.json +2 -2
  398. package/apps/console/.next/standalone/.next/server/chunks/697.js +0 -19
  399. package/apps/console/.next/standalone/.next/static/cSGyydhlqn2VGaYXt0uuW/_buildManifest.js +0 -1
  400. package/apps/console/.next/standalone/.next/static/chunks/8118-681f2688832ccc66.js +0 -1
  401. package/apps/console/.next/standalone/.next/static/chunks/app/api/agent/route-4178c1913c80eb12.js +0 -1
  402. package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/route-4178c1913c80eb12.js +0 -1
  403. package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/stream/route-4178c1913c80eb12.js +0 -1
  404. package/apps/console/.next/standalone/.next/static/chunks/app/api/automation/workflow-blueprint/route-4178c1913c80eb12.js +0 -1
  405. package/apps/console/.next/standalone/.next/static/chunks/app/api/backend/endpoint-spec/route-4178c1913c80eb12.js +0 -1
  406. package/apps/console/.next/standalone/.next/static/chunks/app/api/bootstrap-admin-token/route-4178c1913c80eb12.js +0 -1
  407. package/apps/console/.next/standalone/.next/static/chunks/app/api/brand/brand-audit/route-4178c1913c80eb12.js +0 -1
  408. package/apps/console/.next/standalone/.next/static/chunks/app/api/campaigns/campaign-brief/route-4178c1913c80eb12.js +0 -1
  409. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/confidence/route-4178c1913c80eb12.js +0 -1
  410. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/customer/route-4178c1913c80eb12.js +0 -1
  411. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/dispatches/route-4178c1913c80eb12.js +0 -1
  412. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/engagement/route-4178c1913c80eb12.js +0 -1
  413. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/escalate/route-4178c1913c80eb12.js +0 -1
  414. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/profile/route-4178c1913c80eb12.js +0 -1
  415. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/screenshare/route-4178c1913c80eb12.js +0 -1
  416. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/track-question/route-4178c1913c80eb12.js +0 -1
  417. package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/use-case-wiki/route-4178c1913c80eb12.js +0 -1
  418. package/apps/console/.next/standalone/.next/static/chunks/app/api/chat/route-4178c1913c80eb12.js +0 -1
  419. package/apps/console/.next/standalone/.next/static/chunks/app/api/compliance/risk-register-seed/route-4178c1913c80eb12.js +0 -1
  420. package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/[id]/route-4178c1913c80eb12.js +0 -1
  421. package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/route-4178c1913c80eb12.js +0 -1
  422. package/apps/console/.next/standalone/.next/static/chunks/app/api/concierge/morning-brief/route-4178c1913c80eb12.js +0 -1
  423. package/apps/console/.next/standalone/.next/static/chunks/app/api/contacts/route-4178c1913c80eb12.js +0 -1
  424. package/apps/console/.next/standalone/.next/static/chunks/app/api/content/seo-brief/route-4178c1913c80eb12.js +0 -1
  425. package/apps/console/.next/standalone/.next/static/chunks/app/api/conversations/route-4178c1913c80eb12.js +0 -1
  426. package/apps/console/.next/standalone/.next/static/chunks/app/api/coo/route-4178c1913c80eb12.js +0 -1
  427. package/apps/console/.next/standalone/.next/static/chunks/app/api/cx/escalation-triage/route-4178c1913c80eb12.js +0 -1
  428. package/apps/console/.next/standalone/.next/static/chunks/app/api/cx/health-score/route-4178c1913c80eb12.js +0 -1
  429. package/apps/console/.next/standalone/.next/static/chunks/app/api/data/cohort-brief/route-4178c1913c80eb12.js +0 -1
  430. package/apps/console/.next/standalone/.next/static/chunks/app/api/delivery/qbr-brief/route-4178c1913c80eb12.js +0 -1
  431. package/apps/console/.next/standalone/.next/static/chunks/app/api/delivery/weekly-brief/route-4178c1913c80eb12.js +0 -1
  432. package/apps/console/.next/standalone/.next/static/chunks/app/api/dev/invalidate-cache/route-4178c1913c80eb12.js +0 -1
  433. package/apps/console/.next/standalone/.next/static/chunks/app/api/devops/runbook/route-4178c1913c80eb12.js +0 -1
  434. package/apps/console/.next/standalone/.next/static/chunks/app/api/email/sequence-brief/route-4178c1913c80eb12.js +0 -1
  435. package/apps/console/.next/standalone/.next/static/chunks/app/api/engineering/adr-draft/route-4178c1913c80eb12.js +0 -1
  436. package/apps/console/.next/standalone/.next/static/chunks/app/api/finance/runway-snapshot/route-4178c1913c80eb12.js +0 -1
  437. package/apps/console/.next/standalone/.next/static/chunks/app/api/frontend/component-spec/route-4178c1913c80eb12.js +0 -1
  438. package/apps/console/.next/standalone/.next/static/chunks/app/api/health/route-4178c1913c80eb12.js +0 -1
  439. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/brief/route-4178c1913c80eb12.js +0 -1
  440. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-migration-script/route-4178c1913c80eb12.js +0 -1
  441. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-n8n-workflow/route-4178c1913c80eb12.js +0 -1
  442. package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-skill-override/route-4178c1913c80eb12.js +0 -1
  443. package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/route-4178c1913c80eb12.js +0 -1
  444. package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/stream/route-4178c1913c80eb12.js +0 -1
  445. package/apps/console/.next/standalone/.next/static/chunks/app/api/investor/kpi-tracker/route-4178c1913c80eb12.js +0 -1
  446. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/status/route-4178c1913c80eb12.js +0 -1
  447. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-4178c1913c80eb12.js +0 -1
  448. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-4178c1913c80eb12.js +0 -1
  449. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/leads/[id]/route-4178c1913c80eb12.js +0 -1
  450. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/leads/[id]/status/route-4178c1913c80eb12.js +0 -1
  451. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/templates/[name]/route-4178c1913c80eb12.js +0 -1
  452. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/license/route-4178c1913c80eb12.js +0 -1
  453. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/providers/route-4178c1913c80eb12.js +0 -1
  454. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/[id]/route-4178c1913c80eb12.js +0 -1
  455. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/route-4178c1913c80eb12.js +0 -1
  456. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/[id]/route-4178c1913c80eb12.js +0 -1
  457. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/route-4178c1913c80eb12.js +0 -1
  458. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/vault/route-4178c1913c80eb12.js +0 -1
  459. package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/workflows/route-4178c1913c80eb12.js +0 -1
  460. package/apps/console/.next/standalone/.next/static/chunks/app/api/legal/clause-template/route-4178c1913c80eb12.js +0 -1
  461. package/apps/console/.next/standalone/.next/static/chunks/app/api/marketing/cadence-planner/route-4178c1913c80eb12.js +0 -1
  462. package/apps/console/.next/standalone/.next/static/chunks/app/api/marketing/competitive-snapshot/route-4178c1913c80eb12.js +0 -1
  463. package/apps/console/.next/standalone/.next/static/chunks/app/api/onboarding/engagement-plan/route-4178c1913c80eb12.js +0 -1
  464. package/apps/console/.next/standalone/.next/static/chunks/app/api/onboarding/kickoff-brief/route-4178c1913c80eb12.js +0 -1
  465. package/apps/console/.next/standalone/.next/static/chunks/app/api/openclaw/status/route-4178c1913c80eb12.js +0 -1
  466. package/apps/console/.next/standalone/.next/static/chunks/app/api/ops/dispatch-brief/route-4178c1913c80eb12.js +0 -1
  467. package/apps/console/.next/standalone/.next/static/chunks/app/api/pack/route-4178c1913c80eb12.js +0 -1
  468. package/apps/console/.next/standalone/.next/static/chunks/app/api/people/job-brief/route-4178c1913c80eb12.js +0 -1
  469. package/apps/console/.next/standalone/.next/static/chunks/app/api/preferences/route-4178c1913c80eb12.js +0 -1
  470. package/apps/console/.next/standalone/.next/static/chunks/app/api/procurement/po-brief/route-4178c1913c80eb12.js +0 -1
  471. package/apps/console/.next/standalone/.next/static/chunks/app/api/product/prd-draft/route-4178c1913c80eb12.js +0 -1
  472. package/apps/console/.next/standalone/.next/static/chunks/app/api/research/prospect-intel/route-4178c1913c80eb12.js +0 -1
  473. package/apps/console/.next/standalone/.next/static/chunks/app/api/research/search/route-4178c1913c80eb12.js +0 -1
  474. package/apps/console/.next/standalone/.next/static/chunks/app/api/routing/route-4178c1913c80eb12.js +0 -1
  475. package/apps/console/.next/standalone/.next/static/chunks/app/api/runs/route-4178c1913c80eb12.js +0 -1
  476. package/apps/console/.next/standalone/.next/static/chunks/app/api/sales/pipeline-summary/route-4178c1913c80eb12.js +0 -1
  477. package/apps/console/.next/standalone/.next/static/chunks/app/api/sales/prospect-brief/route-4178c1913c80eb12.js +0 -1
  478. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/build/route-4178c1913c80eb12.js +0 -1
  479. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/quickstart-regenerate/route-4178c1913c80eb12.js +0 -1
  480. package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/refine/route-4178c1913c80eb12.js +0 -1
  481. package/apps/console/.next/standalone/.next/static/chunks/app/api/strategy/market-pulse/route-4178c1913c80eb12.js +0 -1
  482. package/apps/console/.next/standalone/.next/static/chunks/app/api/telegram/[customerId]/route-4178c1913c80eb12.js +0 -1
  483. package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/regenerate/route-4178c1913c80eb12.js +0 -1
  484. package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/route-4178c1913c80eb12.js +0 -1
  485. package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/[id]/route-4178c1913c80eb12.js +0 -1
  486. package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/route-4178c1913c80eb12.js +0 -1
  487. package/apps/console/.next/standalone/.next/static/chunks/app/api/usage/route-4178c1913c80eb12.js +0 -1
  488. package/apps/console/.next/standalone/.next/static/chunks/app/api/video/video-script/route-4178c1913c80eb12.js +0 -1
  489. package/apps/console/.next/standalone/.next/static/chunks/app/api/webhooks/workflow/[id]/route-4178c1913c80eb12.js +0 -1
  490. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-4178c1913c80eb12.js +0 -1
  491. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/route-4178c1913c80eb12.js +0 -1
  492. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/route-4178c1913c80eb12.js +0 -1
  493. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/run/route-4178c1913c80eb12.js +0 -1
  494. package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/route-4178c1913c80eb12.js +0 -1
  495. package/apps/console/.next/standalone/.next/static/chunks/app/page-01558715b1be9361.js +0 -1
  496. package/apps/console/.next/static/cSGyydhlqn2VGaYXt0uuW/_buildManifest.js +0 -1
  497. package/apps/console/.next/static/chunks/8118-681f2688832ccc66.js +0 -1
  498. package/apps/console/.next/static/chunks/app/api/agent/route-4178c1913c80eb12.js +0 -1
  499. package/apps/console/.next/static/chunks/app/api/approvals/route-4178c1913c80eb12.js +0 -1
  500. package/apps/console/.next/static/chunks/app/api/approvals/stream/route-4178c1913c80eb12.js +0 -1
  501. package/apps/console/.next/static/chunks/app/api/automation/workflow-blueprint/route-4178c1913c80eb12.js +0 -1
  502. package/apps/console/.next/static/chunks/app/api/backend/endpoint-spec/route-4178c1913c80eb12.js +0 -1
  503. package/apps/console/.next/static/chunks/app/api/bootstrap-admin-token/route-4178c1913c80eb12.js +0 -1
  504. package/apps/console/.next/static/chunks/app/api/brand/brand-audit/route-4178c1913c80eb12.js +0 -1
  505. package/apps/console/.next/static/chunks/app/api/campaigns/campaign-brief/route-4178c1913c80eb12.js +0 -1
  506. package/apps/console/.next/static/chunks/app/api/champion/confidence/route-4178c1913c80eb12.js +0 -1
  507. package/apps/console/.next/static/chunks/app/api/champion/customer/route-4178c1913c80eb12.js +0 -1
  508. package/apps/console/.next/static/chunks/app/api/champion/dispatches/route-4178c1913c80eb12.js +0 -1
  509. package/apps/console/.next/static/chunks/app/api/champion/engagement/route-4178c1913c80eb12.js +0 -1
  510. package/apps/console/.next/static/chunks/app/api/champion/escalate/route-4178c1913c80eb12.js +0 -1
  511. package/apps/console/.next/static/chunks/app/api/champion/profile/route-4178c1913c80eb12.js +0 -1
  512. package/apps/console/.next/static/chunks/app/api/champion/screenshare/route-4178c1913c80eb12.js +0 -1
  513. package/apps/console/.next/static/chunks/app/api/champion/track-question/route-4178c1913c80eb12.js +0 -1
  514. package/apps/console/.next/static/chunks/app/api/champion/use-case-wiki/route-4178c1913c80eb12.js +0 -1
  515. package/apps/console/.next/static/chunks/app/api/chat/route-4178c1913c80eb12.js +0 -1
  516. package/apps/console/.next/static/chunks/app/api/compliance/risk-register-seed/route-4178c1913c80eb12.js +0 -1
  517. package/apps/console/.next/static/chunks/app/api/computer-use/[id]/route-4178c1913c80eb12.js +0 -1
  518. package/apps/console/.next/static/chunks/app/api/computer-use/route-4178c1913c80eb12.js +0 -1
  519. package/apps/console/.next/static/chunks/app/api/concierge/morning-brief/route-4178c1913c80eb12.js +0 -1
  520. package/apps/console/.next/static/chunks/app/api/contacts/route-4178c1913c80eb12.js +0 -1
  521. package/apps/console/.next/static/chunks/app/api/content/seo-brief/route-4178c1913c80eb12.js +0 -1
  522. package/apps/console/.next/static/chunks/app/api/conversations/route-4178c1913c80eb12.js +0 -1
  523. package/apps/console/.next/static/chunks/app/api/coo/route-4178c1913c80eb12.js +0 -1
  524. package/apps/console/.next/static/chunks/app/api/cx/escalation-triage/route-4178c1913c80eb12.js +0 -1
  525. package/apps/console/.next/static/chunks/app/api/cx/health-score/route-4178c1913c80eb12.js +0 -1
  526. package/apps/console/.next/static/chunks/app/api/data/cohort-brief/route-4178c1913c80eb12.js +0 -1
  527. package/apps/console/.next/static/chunks/app/api/delivery/qbr-brief/route-4178c1913c80eb12.js +0 -1
  528. package/apps/console/.next/static/chunks/app/api/delivery/weekly-brief/route-4178c1913c80eb12.js +0 -1
  529. package/apps/console/.next/static/chunks/app/api/dev/invalidate-cache/route-4178c1913c80eb12.js +0 -1
  530. package/apps/console/.next/static/chunks/app/api/devops/runbook/route-4178c1913c80eb12.js +0 -1
  531. package/apps/console/.next/static/chunks/app/api/email/sequence-brief/route-4178c1913c80eb12.js +0 -1
  532. package/apps/console/.next/static/chunks/app/api/engineering/adr-draft/route-4178c1913c80eb12.js +0 -1
  533. package/apps/console/.next/static/chunks/app/api/finance/runway-snapshot/route-4178c1913c80eb12.js +0 -1
  534. package/apps/console/.next/static/chunks/app/api/frontend/component-spec/route-4178c1913c80eb12.js +0 -1
  535. package/apps/console/.next/static/chunks/app/api/health/route-4178c1913c80eb12.js +0 -1
  536. package/apps/console/.next/static/chunks/app/api/implementation/brief/route-4178c1913c80eb12.js +0 -1
  537. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-migration-script/route-4178c1913c80eb12.js +0 -1
  538. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-n8n-workflow/route-4178c1913c80eb12.js +0 -1
  539. package/apps/console/.next/static/chunks/app/api/implementation/scaffold-skill-override/route-4178c1913c80eb12.js +0 -1
  540. package/apps/console/.next/static/chunks/app/api/inbox/route-4178c1913c80eb12.js +0 -1
  541. package/apps/console/.next/static/chunks/app/api/inbox/stream/route-4178c1913c80eb12.js +0 -1
  542. package/apps/console/.next/static/chunks/app/api/investor/kpi-tracker/route-4178c1913c80eb12.js +0 -1
  543. package/apps/console/.next/static/chunks/app/api/leedab/channels/status/route-4178c1913c80eb12.js +0 -1
  544. package/apps/console/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-4178c1913c80eb12.js +0 -1
  545. package/apps/console/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-4178c1913c80eb12.js +0 -1
  546. package/apps/console/.next/static/chunks/app/api/leedab/gtm/leads/[id]/route-4178c1913c80eb12.js +0 -1
  547. package/apps/console/.next/static/chunks/app/api/leedab/gtm/leads/[id]/status/route-4178c1913c80eb12.js +0 -1
  548. package/apps/console/.next/static/chunks/app/api/leedab/gtm/templates/[name]/route-4178c1913c80eb12.js +0 -1
  549. package/apps/console/.next/static/chunks/app/api/leedab/license/route-4178c1913c80eb12.js +0 -1
  550. package/apps/console/.next/static/chunks/app/api/leedab/providers/route-4178c1913c80eb12.js +0 -1
  551. package/apps/console/.next/static/chunks/app/api/leedab/sessions/[id]/route-4178c1913c80eb12.js +0 -1
  552. package/apps/console/.next/static/chunks/app/api/leedab/sessions/route-4178c1913c80eb12.js +0 -1
  553. package/apps/console/.next/static/chunks/app/api/leedab/team/[id]/route-4178c1913c80eb12.js +0 -1
  554. package/apps/console/.next/static/chunks/app/api/leedab/team/route-4178c1913c80eb12.js +0 -1
  555. package/apps/console/.next/static/chunks/app/api/leedab/vault/route-4178c1913c80eb12.js +0 -1
  556. package/apps/console/.next/static/chunks/app/api/leedab/workflows/route-4178c1913c80eb12.js +0 -1
  557. package/apps/console/.next/static/chunks/app/api/legal/clause-template/route-4178c1913c80eb12.js +0 -1
  558. package/apps/console/.next/static/chunks/app/api/marketing/cadence-planner/route-4178c1913c80eb12.js +0 -1
  559. package/apps/console/.next/static/chunks/app/api/marketing/competitive-snapshot/route-4178c1913c80eb12.js +0 -1
  560. package/apps/console/.next/static/chunks/app/api/onboarding/engagement-plan/route-4178c1913c80eb12.js +0 -1
  561. package/apps/console/.next/static/chunks/app/api/onboarding/kickoff-brief/route-4178c1913c80eb12.js +0 -1
  562. package/apps/console/.next/static/chunks/app/api/openclaw/status/route-4178c1913c80eb12.js +0 -1
  563. package/apps/console/.next/static/chunks/app/api/ops/dispatch-brief/route-4178c1913c80eb12.js +0 -1
  564. package/apps/console/.next/static/chunks/app/api/pack/route-4178c1913c80eb12.js +0 -1
  565. package/apps/console/.next/static/chunks/app/api/people/job-brief/route-4178c1913c80eb12.js +0 -1
  566. package/apps/console/.next/static/chunks/app/api/preferences/route-4178c1913c80eb12.js +0 -1
  567. package/apps/console/.next/static/chunks/app/api/procurement/po-brief/route-4178c1913c80eb12.js +0 -1
  568. package/apps/console/.next/static/chunks/app/api/product/prd-draft/route-4178c1913c80eb12.js +0 -1
  569. package/apps/console/.next/static/chunks/app/api/research/prospect-intel/route-4178c1913c80eb12.js +0 -1
  570. package/apps/console/.next/static/chunks/app/api/research/search/route-4178c1913c80eb12.js +0 -1
  571. package/apps/console/.next/static/chunks/app/api/routing/route-4178c1913c80eb12.js +0 -1
  572. package/apps/console/.next/static/chunks/app/api/runs/route-4178c1913c80eb12.js +0 -1
  573. package/apps/console/.next/static/chunks/app/api/sales/pipeline-summary/route-4178c1913c80eb12.js +0 -1
  574. package/apps/console/.next/static/chunks/app/api/sales/prospect-brief/route-4178c1913c80eb12.js +0 -1
  575. package/apps/console/.next/static/chunks/app/api/solutions/build/route-4178c1913c80eb12.js +0 -1
  576. package/apps/console/.next/static/chunks/app/api/solutions/quickstart-regenerate/route-4178c1913c80eb12.js +0 -1
  577. package/apps/console/.next/static/chunks/app/api/solutions/refine/route-4178c1913c80eb12.js +0 -1
  578. package/apps/console/.next/static/chunks/app/api/strategy/market-pulse/route-4178c1913c80eb12.js +0 -1
  579. package/apps/console/.next/static/chunks/app/api/telegram/[customerId]/route-4178c1913c80eb12.js +0 -1
  580. package/apps/console/.next/static/chunks/app/api/templates/regenerate/route-4178c1913c80eb12.js +0 -1
  581. package/apps/console/.next/static/chunks/app/api/templates/route-4178c1913c80eb12.js +0 -1
  582. package/apps/console/.next/static/chunks/app/api/uploads/[id]/route-4178c1913c80eb12.js +0 -1
  583. package/apps/console/.next/static/chunks/app/api/uploads/route-4178c1913c80eb12.js +0 -1
  584. package/apps/console/.next/static/chunks/app/api/usage/route-4178c1913c80eb12.js +0 -1
  585. package/apps/console/.next/static/chunks/app/api/video/video-script/route-4178c1913c80eb12.js +0 -1
  586. package/apps/console/.next/static/chunks/app/api/webhooks/workflow/[id]/route-4178c1913c80eb12.js +0 -1
  587. package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-4178c1913c80eb12.js +0 -1
  588. package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/route-4178c1913c80eb12.js +0 -1
  589. package/apps/console/.next/static/chunks/app/api/workflows/[id]/route-4178c1913c80eb12.js +0 -1
  590. package/apps/console/.next/static/chunks/app/api/workflows/[id]/run/route-4178c1913c80eb12.js +0 -1
  591. package/apps/console/.next/static/chunks/app/api/workflows/route-4178c1913c80eb12.js +0 -1
  592. package/apps/console/.next/static/chunks/app/page-01558715b1be9361.js +0 -1
  593. /package/apps/console/.next/standalone/.next/static/{cSGyydhlqn2VGaYXt0uuW → B4g4e91OJP29sEqgIs76V}/_ssgManifest.js +0 -0
  594. /package/apps/console/.next/static/{cSGyydhlqn2VGaYXt0uuW → B4g4e91OJP29sEqgIs76V}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"62823","name":"*","chunks":[],"async":false}},"1062":{"*":{"id":"38916","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"300\",\"400\",\"500\",\"600\",\"700\"],\"variable\":\"--font-geist-sans\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":5725,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"400\",\"500\"],\"variable\":\"--font-geist-mono\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":4485,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Instrument_Serif\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":\"400\",\"style\":[\"normal\",\"italic\"],\"variable\":\"--font-instrument-serif\",\"display\":\"swap\"}],\"variableName\":\"instrumentSerif\"}":{"id":9919,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/globals.css":{"id":1290,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page.tsx":{"id":1062,"name":"*","chunks":["8118","static/chunks/8118-681f2688832ccc66.js","8974","static/chunks/app/page-01558715b1be9361.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/gtm/GtmClient.tsx":{"id":838,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/layout":[{"inlined":false,"path":"static/css/4bdbd0680d42c54d.css"}],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page":[]},"rscModuleMapping":{"622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"3287","name":"*","chunks":[],"async":false}},"1062":{"*":{"id":"17742","name":"*","chunks":[],"async":false}},"1290":{"*":{"id":"82704","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"622":{"*":{"id":"82146","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"62823","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"31603","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"75170","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"12263","name":"*","chunks":[],"async":false}},"5086":{"*":{"id":"27231","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"78922","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"54160","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"68495","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"29234","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"77526","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7150,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-page.js":{"id":1959,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/client-segment.js":{"id":7989,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":3886,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/layout-router.js":{"id":9766,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":5278,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8924,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":4431,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":622,"name":"*","chunks":[],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"300\",\"400\",\"500\",\"600\",\"700\"],\"variable\":\"--font-geist-sans\",\"display\":\"swap\"}],\"variableName\":\"geistSans\"}":{"id":5725,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":[\"400\",\"500\"],\"variable\":\"--font-geist-mono\",\"display\":\"swap\"}],\"variableName\":\"geistMono\"}":{"id":4485,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Instrument_Serif\",\"arguments\":[{\"subsets\":[\"latin\"],\"weight\":\"400\",\"style\":[\"normal\",\"italic\"],\"variable\":\"--font-instrument-serif\",\"display\":\"swap\"}],\"variableName\":\"instrumentSerif\"}":{"id":9919,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/globals.css":{"id":1290,"name":"*","chunks":["7177","static/chunks/app/layout-bd27cc63fde6b953.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page.tsx":{"id":5086,"name":"*","chunks":["7973","static/chunks/7973-072db1a3857a8fe9.js","8974","static/chunks/app/page-bdfdbf7b657f4722.js"],"async":false},"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/gtm/GtmClient.tsx":{"id":838,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/":[],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/layout":[{"inlined":false,"path":"static/css/b2a91ecca3bf1487.css"}],"/Users/muiezmakkawi/Documents/LeedAB-OS/apps/console/app/page":[]},"rscModuleMapping":{"622":{"*":{"id":"51384","name":"*","chunks":[],"async":false}},"838":{"*":{"id":"3287","name":"*","chunks":[],"async":false}},"1290":{"*":{"id":"82704","name":"*","chunks":[],"async":false}},"1959":{"*":{"id":"23597","name":"*","chunks":[],"async":false}},"3886":{"*":{"id":"89748","name":"*","chunks":[],"async":false}},"4431":{"*":{"id":"73041","name":"*","chunks":[],"async":false}},"5086":{"*":{"id":"17742","name":"*","chunks":[],"async":false}},"5278":{"*":{"id":"7184","name":"*","chunks":[],"async":false}},"7150":{"*":{"id":"81170","name":"*","chunks":[],"async":false}},"7989":{"*":{"id":"36893","name":"*","chunks":[],"async":false}},"8924":{"*":{"id":"69576","name":"*","chunks":[],"async":false}},"9766":{"*":{"id":"6060","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
@@ -3,99 +3,104 @@
3
3
  "/api/bootstrap-admin-token/route": "app/api/bootstrap-admin-token/route.js",
4
4
  "/apple-icon.png/route": "app/apple-icon.png/route.js",
5
5
  "/icon.png/route": "app/icon.png/route.js",
6
- "/api/approvals/stream/route": "app/api/approvals/stream/route.js",
7
- "/api/agent/route": "app/api/agent/route.js",
8
6
  "/api/backend/endpoint-spec/route": "app/api/backend/endpoint-spec/route.js",
7
+ "/api/automation/workflow-blueprint/route": "app/api/automation/workflow-blueprint/route.js",
9
8
  "/api/approvals/route": "app/api/approvals/route.js",
9
+ "/api/approvals/stream/route": "app/api/approvals/stream/route.js",
10
10
  "/api/brand/brand-audit/route": "app/api/brand/brand-audit/route.js",
11
- "/api/champion/engagement/route": "app/api/champion/engagement/route.js",
12
- "/api/automation/workflow-blueprint/route": "app/api/automation/workflow-blueprint/route.js",
13
11
  "/api/campaigns/campaign-brief/route": "app/api/campaigns/campaign-brief/route.js",
14
- "/api/champion/customer/route": "app/api/champion/customer/route.js",
12
+ "/api/champion/engagement/route": "app/api/champion/engagement/route.js",
15
13
  "/api/champion/dispatches/route": "app/api/champion/dispatches/route.js",
16
- "/api/champion/confidence/route": "app/api/champion/confidence/route.js",
14
+ "/api/agent/route": "app/api/agent/route.js",
17
15
  "/api/champion/escalate/route": "app/api/champion/escalate/route.js",
18
- "/api/champion/use-case-wiki/route": "app/api/champion/use-case-wiki/route.js",
19
16
  "/api/champion/screenshare/route": "app/api/champion/screenshare/route.js",
17
+ "/api/champion/confidence/route": "app/api/champion/confidence/route.js",
18
+ "/api/champion/use-case-wiki/route": "app/api/champion/use-case-wiki/route.js",
20
19
  "/api/computer-use/[id]/route": "app/api/computer-use/[id]/route.js",
21
20
  "/api/champion/track-question/route": "app/api/champion/track-question/route.js",
22
- "/api/champion/profile/route": "app/api/champion/profile/route.js",
23
- "/api/chat/route": "app/api/chat/route.js",
24
21
  "/api/computer-use/route": "app/api/computer-use/route.js",
22
+ "/api/concierge/morning-brief/route": "app/api/concierge/morning-brief/route.js",
25
23
  "/api/contacts/route": "app/api/contacts/route.js",
24
+ "/api/compliance/risk-register-seed/route": "app/api/compliance/risk-register-seed/route.js",
25
+ "/api/conversations/route": "app/api/conversations/route.js",
26
+ "/api/chat/route": "app/api/chat/route.js",
26
27
  "/api/coo/route": "app/api/coo/route.js",
28
+ "/api/champion/profile/route": "app/api/champion/profile/route.js",
27
29
  "/api/content/seo-brief/route": "app/api/content/seo-brief/route.js",
28
- "/api/conversations/route": "app/api/conversations/route.js",
29
- "/api/data/cohort-brief/route": "app/api/data/cohort-brief/route.js",
30
- "/api/compliance/risk-register-seed/route": "app/api/compliance/risk-register-seed/route.js",
31
- "/api/dev/invalidate-cache/route": "app/api/dev/invalidate-cache/route.js",
32
- "/api/concierge/morning-brief/route": "app/api/concierge/morning-brief/route.js",
30
+ "/api/cx/health-score/route": "app/api/cx/health-score/route.js",
33
31
  "/api/cx/escalation-triage/route": "app/api/cx/escalation-triage/route.js",
32
+ "/api/dev/invalidate-cache/route": "app/api/dev/invalidate-cache/route.js",
33
+ "/api/data/cohort-brief/route": "app/api/data/cohort-brief/route.js",
34
+ "/api/champion/customer/route": "app/api/champion/customer/route.js",
34
35
  "/api/devops/runbook/route": "app/api/devops/runbook/route.js",
35
36
  "/api/delivery/weekly-brief/route": "app/api/delivery/weekly-brief/route.js",
36
- "/api/email/sequence-brief/route": "app/api/email/sequence-brief/route.js",
37
37
  "/api/engineering/adr-draft/route": "app/api/engineering/adr-draft/route.js",
38
- "/api/frontend/component-spec/route": "app/api/frontend/component-spec/route.js",
39
- "/api/implementation/scaffold-migration-script/route": "app/api/implementation/scaffold-migration-script/route.js",
38
+ "/api/email/sequence-brief/route": "app/api/email/sequence-brief/route.js",
40
39
  "/api/delivery/qbr-brief/route": "app/api/delivery/qbr-brief/route.js",
41
- "/api/finance/runway-snapshot/route": "app/api/finance/runway-snapshot/route.js",
42
40
  "/api/health/route": "app/api/health/route.js",
43
- "/api/implementation/scaffold-skill-override/route": "app/api/implementation/scaffold-skill-override/route.js",
44
- "/api/inbox/route": "app/api/inbox/route.js",
41
+ "/api/implementation/scaffold-migration-script/route": "app/api/implementation/scaffold-migration-script/route.js",
42
+ "/api/frontend/component-spec/route": "app/api/frontend/component-spec/route.js",
45
43
  "/api/implementation/brief/route": "app/api/implementation/brief/route.js",
46
- "/api/leedab/channels/status/route": "app/api/leedab/channels/status/route.js",
44
+ "/api/finance/runway-snapshot/route": "app/api/finance/runway-snapshot/route.js",
45
+ "/api/implementation/scaffold-n8n-workflow/route": "app/api/implementation/scaffold-n8n-workflow/route.js",
47
46
  "/api/inbox/stream/route": "app/api/inbox/stream/route.js",
48
- "/api/leedab/gtm/leads/[id]/route": "app/api/leedab/gtm/leads/[id]/route.js",
47
+ "/api/leedab/channels/status/route": "app/api/leedab/channels/status/route.js",
48
+ "/api/inbox/route": "app/api/inbox/route.js",
49
+ "/api/implementation/scaffold-skill-override/route": "app/api/implementation/scaffold-skill-override/route.js",
49
50
  "/api/leedab/channels/telegram/connect/route": "app/api/leedab/channels/telegram/connect/route.js",
51
+ "/api/leedab/gtm/leads/[id]/route": "app/api/leedab/gtm/leads/[id]/route.js",
52
+ "/api/leedab/models/route": "app/api/leedab/models/route.js",
53
+ "/api/leedab/channels/whatsapp/connect/route": "app/api/leedab/channels/whatsapp/connect/route.js",
50
54
  "/api/leedab/gtm/leads/[id]/status/route": "app/api/leedab/gtm/leads/[id]/status/route.js",
51
55
  "/api/leedab/gtm/templates/[name]/route": "app/api/leedab/gtm/templates/[name]/route.js",
52
- "/api/investor/kpi-tracker/route": "app/api/investor/kpi-tracker/route.js",
53
- "/api/leedab/providers/route": "app/api/leedab/providers/route.js",
54
- "/api/leedab/team/[id]/route": "app/api/leedab/team/[id]/route.js",
55
- "/api/leedab/team/route": "app/api/leedab/team/route.js",
56
56
  "/api/leedab/sessions/route": "app/api/leedab/sessions/route.js",
57
57
  "/api/leedab/sessions/[id]/route": "app/api/leedab/sessions/[id]/route.js",
58
- "/api/leedab/vault/route": "app/api/leedab/vault/route.js",
59
- "/api/legal/clause-template/route": "app/api/legal/clause-template/route.js",
60
- "/api/marketing/competitive-snapshot/route": "app/api/marketing/competitive-snapshot/route.js",
58
+ "/api/leedab/license/route": "app/api/leedab/license/route.js",
59
+ "/api/leedab/team/[id]/route": "app/api/leedab/team/[id]/route.js",
60
+ "/api/leedab/team/route": "app/api/leedab/team/route.js",
61
61
  "/api/leedab/workflows/route": "app/api/leedab/workflows/route.js",
62
- "/api/onboarding/engagement-plan/route": "app/api/onboarding/engagement-plan/route.js",
62
+ "/api/investor/kpi-tracker/route": "app/api/investor/kpi-tracker/route.js",
63
+ "/api/legal/clause-template/route": "app/api/legal/clause-template/route.js",
64
+ "/api/leedab/providers/route": "app/api/leedab/providers/route.js",
65
+ "/api/leedab/vault/route": "app/api/leedab/vault/route.js",
66
+ "/api/marketplace/catalogue/route": "app/api/marketplace/catalogue/route.js",
67
+ "/api/manifest/agents/custom/route": "app/api/manifest/agents/custom/route.js",
68
+ "/api/manifest/agents/custom/draft/route": "app/api/manifest/agents/custom/draft/route.js",
69
+ "/api/openclaw/status/route": "app/api/openclaw/status/route.js",
63
70
  "/api/onboarding/kickoff-brief/route": "app/api/onboarding/kickoff-brief/route.js",
64
- "/api/leedab/license/route": "app/api/leedab/license/route.js",
65
- "/api/leedab/channels/whatsapp/connect/route": "app/api/leedab/channels/whatsapp/connect/route.js",
71
+ "/api/onboarding/engagement-plan/route": "app/api/onboarding/engagement-plan/route.js",
66
72
  "/api/ops/dispatch-brief/route": "app/api/ops/dispatch-brief/route.js",
67
- "/api/openclaw/status/route": "app/api/openclaw/status/route.js",
68
- "/api/pack/route": "app/api/pack/route.js",
69
- "/api/preferences/route": "app/api/preferences/route.js",
70
- "/api/implementation/scaffold-n8n-workflow/route": "app/api/implementation/scaffold-n8n-workflow/route.js",
71
- "/api/procurement/po-brief/route": "app/api/procurement/po-brief/route.js",
73
+ "/api/marketing/cadence-planner/route": "app/api/marketing/cadence-planner/route.js",
72
74
  "/api/people/job-brief/route": "app/api/people/job-brief/route.js",
75
+ "/api/marketing/competitive-snapshot/route": "app/api/marketing/competitive-snapshot/route.js",
76
+ "/api/procurement/po-brief/route": "app/api/procurement/po-brief/route.js",
77
+ "/api/manifest/agents/route": "app/api/manifest/agents/route.js",
78
+ "/api/pack/route": "app/api/pack/route.js",
73
79
  "/api/product/prd-draft/route": "app/api/product/prd-draft/route.js",
74
- "/api/marketing/cadence-planner/route": "app/api/marketing/cadence-planner/route.js",
75
- "/api/routing/route": "app/api/routing/route.js",
76
- "/api/research/search/route": "app/api/research/search/route.js",
77
- "/api/runs/route": "app/api/runs/route.js",
80
+ "/api/preferences/route": "app/api/preferences/route.js",
78
81
  "/api/research/prospect-intel/route": "app/api/research/prospect-intel/route.js",
79
- "/api/solutions/refine/route": "app/api/solutions/refine/route.js",
82
+ "/api/runs/route": "app/api/runs/route.js",
80
83
  "/api/solutions/quickstart-regenerate/route": "app/api/solutions/quickstart-regenerate/route.js",
84
+ "/api/solutions/refine/route": "app/api/solutions/refine/route.js",
81
85
  "/api/sales/prospect-brief/route": "app/api/sales/prospect-brief/route.js",
82
- "/api/templates/regenerate/route": "app/api/templates/regenerate/route.js",
86
+ "/api/research/search/route": "app/api/research/search/route.js",
83
87
  "/api/strategy/market-pulse/route": "app/api/strategy/market-pulse/route.js",
84
- "/api/uploads/[id]/route": "app/api/uploads/[id]/route.js",
85
88
  "/api/sales/pipeline-summary/route": "app/api/sales/pipeline-summary/route.js",
86
- "/api/solutions/build/route": "app/api/solutions/build/route.js",
89
+ "/api/telegram/[customerId]/route": "app/api/telegram/[customerId]/route.js",
90
+ "/api/templates/route": "app/api/templates/route.js",
87
91
  "/api/usage/route": "app/api/usage/route.js",
88
92
  "/api/uploads/route": "app/api/uploads/route.js",
89
- "/api/webhooks/workflow/[id]/route": "app/api/webhooks/workflow/[id]/route.js",
90
- "/api/workflows/[id]/history/[runId]/route": "app/api/workflows/[id]/history/[runId]/route.js",
91
- "/api/templates/route": "app/api/templates/route.js",
93
+ "/api/uploads/[id]/route": "app/api/uploads/[id]/route.js",
94
+ "/api/templates/regenerate/route": "app/api/templates/regenerate/route.js",
92
95
  "/api/workflows/[id]/history/route": "app/api/workflows/[id]/history/route.js",
93
96
  "/api/video/video-script/route": "app/api/video/video-script/route.js",
94
97
  "/api/workflows/[id]/route": "app/api/workflows/[id]/route.js",
95
- "/api/workflows/[id]/run/route": "app/api/workflows/[id]/run/route.js",
96
98
  "/api/workflows/route": "app/api/workflows/route.js",
97
- "/api/telegram/[customerId]/route": "app/api/telegram/[customerId]/route.js",
98
- "/api/cx/health-score/route": "app/api/cx/health-score/route.js",
99
+ "/api/workflows/[id]/history/[runId]/route": "app/api/workflows/[id]/history/[runId]/route.js",
100
+ "/api/workflows/[id]/run/route": "app/api/workflows/[id]/run/route.js",
101
+ "/api/solutions/build/route": "app/api/solutions/build/route.js",
102
+ "/api/routing/route": "app/api/routing/route.js",
103
+ "/api/webhooks/workflow/[id]/route": "app/api/webhooks/workflow/[id]/route.js",
99
104
  "/page": "app/page.js",
100
105
  "/gtm/page": "app/gtm/page.js"
101
106
  }
@@ -1,4 +1,4 @@
1
- "use strict";exports.id=1558,exports.ids=[1558],exports.modules={37098:(a,b,c)=>{c.d(b,{GL:()=>m,K7:()=>k,MS:()=>j,jy:()=>l});var d=c(73024),e=c(48161),f=c(76760);let g=null,h=0;function i(){let a=Date.now();if(g&&a-h<3e4)return g;let b=process.env.LEEDAB_STATE_DIR??(0,f.join)((0,e.homedir)(),".leedab"),c=(0,f.join)(b,"openclaw.json");try{let a=(0,d.readFileSync)(c,"utf8"),b=JSON.parse(a),e=b.gateway?.port??18789;g={url:`http://127.0.0.1:${e}`,token:b.gateway?.auth?.token}}catch{g={url:"http://127.0.0.1:18789"}}return h=a,g}function j(){return process.env.OPENCLAW_GATEWAY_URL??i().url}function k(){let a=process.env.OPENCLAW_GATEWAY_TOKEN??i().token;return a?{authorization:`Bearer ${a}`}:{}}function l(){return process.env.OPENCLAW_AGENT_TARGET??"openclaw/default"}async function m(a){let b=await fetch(`${j()}/v1/chat/completions`,{method:"POST",headers:{"content-type":"application/json",...a.model?{"x-openclaw-model":a.model}:{},...k()},body:JSON.stringify({model:l(),messages:[{role:"system",content:a.systemPrompt},{role:"user",content:a.userMessage}],stream:!1,...a.user?{user:a.user}:{}})});if(!b.ok){let a=await b.text().catch(()=>"");throw Error(`gateway ${b.status}: ${a.slice(0,200)||"no body"}`)}let c=await b.json(),d=c.choices?.[0]?.message?.content??"",e=c.usage?.completion_tokens??0,f=c.usage?.total_tokens??0,g=c.usage?.prompt_tokens??0;return{text:d,inputTokens:f>g+e?f-e:g,outputTokens:e}}},91558:(a,b,c)=>{c.d(b,{d:()=>j});var d=c(87755),e=c(89004),f=c(94768),g=c(37098);let h=`## Routing protocol
1
+ "use strict";exports.id=1558,exports.ids=[1558],exports.modules={7393:(a,b,c)=>{c.d(b,{LS:()=>f,lh:()=>e,xq:()=>d});let d=[{id:"anthropic",label:"Anthropic (Claude)",flag:"--anthropic-api-key",envVar:"ANTHROPIC_API_KEY",defaultModelIndex:1,models:[{label:"Claude Opus 4.7 . most capable",modelId:"claude-opus-4-7",openclawId:"anthropic/claude-opus-4-7"},{label:"Claude Sonnet 4.6 . fast, capable",modelId:"claude-sonnet-4-6",openclawId:"anthropic/claude-sonnet-4-6"},{label:"Claude Haiku 4.5 . fastest, cheapest",modelId:"claude-haiku-4-5",openclawId:"anthropic/claude-haiku-4-5"}]},{id:"openai",label:"OpenAI (GPT)",flag:"--openai-api-key",envVar:"OPENAI_API_KEY",defaultModelIndex:0,models:[{label:"GPT-5.4 . flagship",modelId:"gpt-5.4",openclawId:"openai/gpt-5.4"},{label:"GPT-4o . established",modelId:"gpt-4o",openclawId:"openai/gpt-4o"},{label:"GPT-4o Mini . fast",modelId:"gpt-4o-mini",openclawId:"openai/gpt-4o-mini"},{label:"o3 . reasoning",modelId:"o3",openclawId:"openai/o3"}]},{id:"gemini",label:"Google (Gemini)",flag:"--gemini-api-key",envVar:"GEMINI_API_KEY",defaultModelIndex:0,models:[{label:"Gemini 2.5 Pro",modelId:"gemini-2.5-pro",openclawId:"google/gemini-2.5-pro"},{label:"Gemini 2.5 Flash",modelId:"gemini-2.5-flash",openclawId:"google/gemini-2.5-flash"}]},{id:"deepseek",label:"DeepSeek",flag:"--deepseek-api-key",envVar:"DEEPSEEK_API_KEY",defaultModelIndex:0,models:[{label:"DeepSeek Chat",modelId:"deepseek-chat",openclawId:"deepseek/deepseek-chat"},{label:"DeepSeek Reasoner",modelId:"deepseek-reasoner",openclawId:"deepseek/deepseek-reasoner"}]},{id:"openrouter",label:"OpenRouter",flag:"--openrouter-api-key",envVar:"OPENROUTER_API_KEY",defaultModelIndex:0,models:[{label:"Claude Sonnet 4.6 (via OpenRouter)",modelId:"anthropic/claude-sonnet-4-6",openclawId:"anthropic/claude-sonnet-4-6"},{label:"GPT-4o (via OpenRouter)",modelId:"openai/gpt-4o",openclawId:"openai/gpt-4o"}]},{id:"bedrock",label:"Amazon Bedrock",flag:null,envVar:null,keyless:!0,defaultModelIndex:0,models:[{label:"Claude Sonnet 4.6 (Bedrock)",modelId:"anthropic.claude-sonnet-4-6",openclawId:"anthropic/claude-sonnet-4-6"},{label:"Claude Opus 4.7 (Bedrock)",modelId:"anthropic.claude-opus-4-7",openclawId:"anthropic/claude-opus-4-7"},{label:"Claude Haiku 4.5 (Bedrock)",modelId:"anthropic.claude-haiku-4-5",openclawId:"anthropic/claude-haiku-4-5"}]}];function e(a){return d.find(b=>b.id===a)}function f(){return d.flatMap(a=>a.models.map(a=>a.openclawId))}},37098:(a,b,c)=>{c.d(b,{GL:()=>m,K7:()=>k,MS:()=>j,jy:()=>l});var d=c(73024),e=c(48161),f=c(76760);let g=null,h=0;function i(){let a=Date.now();if(g&&a-h<3e4)return g;let b=process.env.LEEDAB_STATE_DIR??(0,f.join)((0,e.homedir)(),".leedab"),c=(0,f.join)(b,"openclaw.json");try{let a=(0,d.readFileSync)(c,"utf8"),b=JSON.parse(a),e=b.gateway?.port??18789;g={url:`http://127.0.0.1:${e}`,token:b.gateway?.auth?.token}}catch{g={url:"http://127.0.0.1:18789"}}return h=a,g}function j(){return process.env.OPENCLAW_GATEWAY_URL??i().url}function k(){let a=process.env.OPENCLAW_GATEWAY_TOKEN??i().token;return a?{authorization:`Bearer ${a}`}:{}}function l(){return process.env.OPENCLAW_AGENT_TARGET??"openclaw/default"}async function m(a){let b=await fetch(`${j()}/v1/chat/completions`,{method:"POST",headers:{"content-type":"application/json",...a.model?{"x-openclaw-model":a.model}:{},...k()},body:JSON.stringify({model:l(),messages:[{role:"system",content:a.systemPrompt},{role:"user",content:a.userMessage}],stream:!1,...a.user?{user:a.user}:{}})});if(!b.ok){let a=await b.text().catch(()=>"");throw Error(`gateway ${b.status}: ${a.slice(0,200)||"no body"}`)}let c=await b.json(),d=c.choices?.[0]?.message?.content??"",e=c.usage?.completion_tokens??0,f=c.usage?.total_tokens??0,g=c.usage?.prompt_tokens??0;return{text:d,inputTokens:f>g+e?f-e:g,outputTokens:e}}},45841:(a,b,c)=>{c.d(b,{B_:()=>g,cX:()=>h,eT:()=>i});var d=c(25624),e=c(7393);function f(a){for(let b of e.xq)for(let c of b.models)if(c.openclawId===a)return c.modelId;let b=a.indexOf("/");return b>=0?a.slice(b+1):a}async function g(){let a=await (0,d.Vh)("openclaw.json",{}),b=new Set(Object.keys(a.auth?.profiles??{}).map(a=>a.split(":")[0])),c=[],g=new Set,h=a.agents?.defaults?.models??{};for(let a of Object.keys(h)){let d=a.startsWith("anthropic/")?a.replace(/-\d{8}$/,""):a,i=function(a){for(let b of e.xq)if(b.models.some(b=>b.openclawId===a))return b.id;return a.split("/")[0]??"unknown"}(d),j=e.xq.find(a=>a.id===i)?.keyless,k=e.xq.find(a=>a.id===i)?.envVar;if(!(b.has(i)||j&&k&&process.env[k]))continue;let l=e.xq.flatMap(a=>a.models).find(a=>a.openclawId===d),m=l?.modelId??f(d);if(g.has(m))continue;g.add(m);let n=h[a]?.alias;c.push({modelId:m,openclawId:d,label:l?.label??(n?`${n} (${m})`:m),providerId:i,providerLabel:function(a){return e.xq.find(b=>b.id===a)?.label??a}(i)})}for(let a of e.xq)if(b.has(a.id)||a.keyless&&a.envVar&&process.env[a.envVar])for(let b of a.models)g.has(b.modelId)||(g.add(b.modelId),c.push({...b,providerId:a.id,providerLabel:a.label}));let i=a.agents?.defaults?.model?.primary;return{models:c,defaultModelId:i?f(i):null}}async function h(){let{defaultModelId:a}=await g();return a}function i(a){if(a.includes("/"))return a;for(let b of e.xq){let c=b.models.find(b=>b.modelId===a);if(c)return c.openclawId}return a.startsWith("claude-")?`anthropic/${a}`:a}},91558:(a,b,c)=>{c.d(b,{d:()=>l});var d=c(87755),e=c(89004),f=c(94768),g=c(37098),h=c(45841);async function i(a){let b=await (0,h.cX)();return(0,h.eT)(b??a.defaultModel)}let j=`## Routing protocol
2
2
 
3
3
  You are the customer's COO. The ONLY licensed agents you can delegate to are listed in the "Licensed agents" section below. Refusing to delegate to anyone outside that list is non-negotiable — the request will be rejected and the customer's experience degraded.
4
4
 
@@ -17,22 +17,22 @@ Constraints:
17
17
  - "agent" MUST be a licensed agent id from the list below. Spelling matters.
18
18
  - "task" must be a self-contained instruction the sub-agent can act on without re-asking the customer. Convey enough context.
19
19
  - Never wrap the JSON in prose. Never explain. Just JSON.
20
- - Do not invent JSON keys outside the three shapes above.`;async function i(a,b,c,e){if(!e.agents.includes(b))return{agent:b,task:c,error:`Agent "${b}" is not in this customer's manifest. COO routing rejected the delegation.`};let h=d.jw[b];if(!h)return{agent:b,task:c,error:`Agent "${b}" not in registry`};try{let d=await (0,f.Ex)(h,{clientId:a}),e=await (0,g.GL)({systemPrompt:d,userMessage:c,model:h.defaultModel,user:`${a}:${b}`});return{agent:b,task:c,response:e.text,inputTokens:e.inputTokens,outputTokens:e.outputTokens}}catch(a){return{agent:b,task:c,error:`delegation runtime error: ${a.message}`}}}async function j(a){let b,c,j,k,l,{customerId:m,message:n}=a,o=await (0,e.b_)(m);if(!o)return{ok:!1,customerId:m,message:n,stage:"load_manifest",error:`No manifest at clients/${m}/manifest.json — COO orchestrator only operates on manifest-aware customers.`};let p=d.jw.coo;if(!p)return{ok:!1,customerId:m,message:n,stage:"load_manifest",error:"coo agent not in registry — registry is broken"};try{let a=await (0,f.Ex)(p,{clientId:m});b=`${a}
20
+ - Do not invent JSON keys outside the three shapes above.`;async function k(a,b,c,e){if(!e.agents.includes(b))return{agent:b,task:c,error:`Agent "${b}" is not in this customer's manifest. COO routing rejected the delegation.`};let h=d.jw[b];if(!h)return{agent:b,task:c,error:`Agent "${b}" not in registry`};try{let d=await (0,f.Ex)(h,{clientId:a}),e=await (0,g.GL)({systemPrompt:d,userMessage:c,model:await i(h),user:`${a}:${b}`});return{agent:b,task:c,response:e.text,inputTokens:e.inputTokens,outputTokens:e.outputTokens}}catch(a){return{agent:b,task:c,error:`delegation runtime error: ${a.message}`}}}async function l(a){let b,c,h,l,m,{customerId:n,message:o}=a,p=await (0,e.b_)(n);if(!p)return{ok:!1,customerId:n,message:o,stage:"load_manifest",error:`No manifest at clients/${n}/manifest.json — COO orchestrator only operates on manifest-aware customers.`};let q=d.jw.coo;if(!q)return{ok:!1,customerId:n,message:o,stage:"load_manifest",error:"coo agent not in registry — registry is broken"};try{let a=await (0,f.Ex)(q,{clientId:n});b=`${a}
21
21
 
22
22
  ## Licensed agents (this customer only)
23
- ${o.agents.map(a=>{let b=d.jw[a];return b?`- ${a}: ${b.tagline}`:`- ${a}: (not in registry — skip)`}).join("\n")}
23
+ ${p.agents.map(a=>{let b=d.jw[a];return b?`- ${a}: ${b.tagline}`:`- ${a}: (not in registry — skip)`}).join("\n")}
24
24
 
25
- ${h}`}catch(a){return{ok:!1,customerId:m,message:n,stage:"route",error:`failed to build COO prompt: ${a.message}`}}try{let a=await (0,g.GL)({systemPrompt:b,userMessage:n,model:p.defaultModel,user:`${m}:coo:route`});j={inputTokens:a.inputTokens,outputTokens:a.outputTokens};let d=function(a){let b=a.trim().replace(/^```(?:json)?\s*/i,"").replace(/\s*```\s*$/i,"").trim();try{let a=JSON.parse(b);if(!a||"object"!=typeof a)return null;if("direct_reply"===a.kind&&"string"==typeof a.text||"delegate"===a.kind&&"string"==typeof a.agent&&"string"==typeof a.task||"fanout"===a.kind&&Array.isArray(a.delegations)&&a.delegations.every(a=>null!==a&&"object"==typeof a&&"string"==typeof a.agent&&"string"==typeof a.task))return a;return null}catch{return null}}(a.text);if(!d)return{ok:!1,customerId:m,message:n,stage:"route",error:`COO returned non-JSON or invalid routing shape:
26
- ${a.text.slice(0,400)}`};c=d}catch(a){return{ok:!1,customerId:m,message:n,stage:"route",error:`COO routing call failed: ${a.message}`}}if("direct_reply"===c.kind)return{ok:!0,customerId:m,message:n,decision:c,delegations:[],reply:c.text,totals:j};if("fanout"===c.kind&&0===c.delegations.length)return{ok:!1,customerId:m,message:n,stage:"route",error:"COO emitted fanout with zero delegations — refusing to synthesise on no work. Route response: "+JSON.stringify(c)};let q="fanout"===c.kind?c.delegations:[{agent:c.agent,task:c.task}],r=await Promise.all(q.map(a=>i(m,a.agent,a.task,o))),s=`Original customer message:
27
- ${n}
25
+ ${j}`}catch(a){return{ok:!1,customerId:n,message:o,stage:"route",error:`failed to build COO prompt: ${a.message}`}}try{let a=await (0,g.GL)({systemPrompt:b,userMessage:o,model:await i(q),user:`${n}:coo:route`});h={inputTokens:a.inputTokens,outputTokens:a.outputTokens};let d=function(a){let b=a.trim().replace(/^```(?:json)?\s*/i,"").replace(/\s*```\s*$/i,"").trim();try{let a=JSON.parse(b);if(!a||"object"!=typeof a)return null;if("direct_reply"===a.kind&&"string"==typeof a.text||"delegate"===a.kind&&"string"==typeof a.agent&&"string"==typeof a.task||"fanout"===a.kind&&Array.isArray(a.delegations)&&a.delegations.every(a=>null!==a&&"object"==typeof a&&"string"==typeof a.agent&&"string"==typeof a.task))return a;return null}catch{return null}}(a.text);if(!d)return{ok:!1,customerId:n,message:o,stage:"route",error:`COO returned non-JSON or invalid routing shape:
26
+ ${a.text.slice(0,400)}`};c=d}catch(a){return{ok:!1,customerId:n,message:o,stage:"route",error:`COO routing call failed: ${a.message}`}}if("direct_reply"===c.kind)return{ok:!0,customerId:n,message:o,decision:c,delegations:[],reply:c.text,totals:h};if("fanout"===c.kind&&0===c.delegations.length)return{ok:!1,customerId:n,message:o,stage:"route",error:"COO emitted fanout with zero delegations — refusing to synthesise on no work. Route response: "+JSON.stringify(c)};let r="fanout"===c.kind?c.delegations:[{agent:c.agent,task:c.task}],s=await Promise.all(r.map(a=>k(n,a.agent,a.task,p))),t=`Original customer message:
27
+ ${o}
28
28
 
29
29
  Sub-agent responses:
30
- ${r.map(a=>a.error?`### ${a.agent} — ERROR
30
+ ${s.map(a=>a.error?`### ${a.agent} — ERROR
31
31
  (task was: ${a.task})
32
32
  ${a.error}`:`### ${a.agent}
33
33
  (task: ${a.task})
34
34
  ${a.response}`).join("\n\n")}
35
35
 
36
- Synthesise these into ONE final user-facing reply. Be concise. Don't expose internal agent names unless it materially helps the customer. If any sub-agent errored, explain to the customer briefly without leaking internals.`;try{let a=`${await (0,f.Ex)(p,{clientId:m})}
36
+ Synthesise these into ONE final user-facing reply. Be concise. Don't expose internal agent names unless it materially helps the customer. If any sub-agent errored, explain to the customer briefly without leaking internals.`;try{let a=`${await (0,f.Ex)(q,{clientId:n})}
37
37
 
38
- You are now SYNTHESISING the final reply from sub-agent responses. Output the user-facing text only — no JSON, no prose about your process.`,b=await (0,g.GL)({systemPrompt:a,userMessage:s,model:p.defaultModel,user:`${m}:coo:synth`});k=b.text,l={inputTokens:b.inputTokens,outputTokens:b.outputTokens}}catch(a){return{ok:!1,customerId:m,message:n,stage:"synthesis",error:`synthesis call failed: ${a.message}`}}let t=j.inputTokens+l.inputTokens,u=j.outputTokens+l.outputTokens;for(let a of r)t+=a.inputTokens??0,u+=a.outputTokens??0;return{ok:!0,customerId:m,message:n,decision:c,delegations:r,reply:k,totals:{inputTokens:t,outputTokens:u}}}}};
38
+ You are now SYNTHESISING the final reply from sub-agent responses. Output the user-facing text only — no JSON, no prose about your process.`,b=await (0,g.GL)({systemPrompt:a,userMessage:t,model:await i(q),user:`${n}:coo:synth`});l=b.text,m={inputTokens:b.inputTokens,outputTokens:b.outputTokens}}catch(a){return{ok:!1,customerId:n,message:o,stage:"synthesis",error:`synthesis call failed: ${a.message}`}}let u=h.inputTokens+m.inputTokens,v=h.outputTokens+m.outputTokens;for(let a of s)u+=a.inputTokens??0,v+=a.outputTokens??0;return{ok:!0,customerId:n,message:o,decision:c,delegations:s,reply:l,totals:{inputTokens:u,outputTokens:v}}}}};
@@ -1,3 +1 @@
1
- exports.id=5670,exports.ids=[5670],exports.modules={2482:(a,b,c)=>{"use strict";c.d(b,{BJ:()=>g,bt:()=>i,BU:()=>h});var d=c(57477);let e={logistics:[{name:"Daily dispatch brief",category:"logistics",description:"Morning brief: today's dispatches, exceptions, driver coverage.",agentId:"ops",promptTemplate:"Pull today's dispatch schedule. Surface anything that's: (1) running late, (2) missing a driver, (3) routed differently than the standard pattern. Keep it to 5 lines max — what needs my attention before 8am.",inputs:[],outputType:"message"},{name:"Supplier dispute draft",category:"logistics",description:"Draft a dispute email to a supplier when an invoice doesn't match the PO.",agentId:"procurement",promptTemplate:"Draft a dispute email to {{supplier_name}} for invoice {{invoice_number}}. The discrepancy: {{discrepancy_description}}. Reference the PO ({{po_number}}) and the agreed terms. Tone: firm but professional, leave room for negotiation.",inputs:[{name:"supplier_name",label:"Supplier name",type:"text",required:!0},{name:"invoice_number",label:"Invoice #",type:"text",required:!0},{name:"po_number",label:"PO #",type:"text",required:!0},{name:"discrepancy_description",label:"What's wrong",type:"textarea",required:!0}],outputType:"email"},{name:"Late-delivery customer reply",category:"logistics",description:"Auto-draft a customer-facing reply when a freight is running late.",agentId:"cx",promptTemplate:"Customer {{customer_name}} asked about a delayed shipment. Tracking: {{tracking_id}}. New ETA: {{new_eta}}. Reason for delay: {{reason}}. Draft a reply that: acknowledges, gives concrete new ETA, offers something (refund, credit, expedited next time) proportional to the delay.",inputs:[{name:"customer_name",label:"Customer name",type:"text",required:!0},{name:"tracking_id",label:"Tracking ID",type:"text",required:!0},{name:"new_eta",label:"New ETA",type:"text",required:!0},{name:"reason",label:"Cause of delay",type:"textarea",required:!0}],outputType:"email"},{name:"End-of-week ops digest",category:"logistics",description:"Friday recap: deliveries shipped, exceptions, agent activity.",agentId:"coo",promptTemplate:"Synthesise this week's ops state. Pull: deliveries completed vs. planned, top 3 exceptions, supplier issues, driver coverage gaps. End with one recommendation for next week.",inputs:[],outputType:"message"}],hospitality:[{name:"Booking-day pre-brief",category:"general",description:"Morning brief for the venue: today's bookings, special requests, staffing.",agentId:"concierge",promptTemplate:"Today's bookings at {{venue_name}}: pull the full list with party size + special requests + arrival times. Flag anything needing chef / FOH attention. End with the staffing call (do we need a casual on?).",inputs:[{name:"venue_name",label:"Venue",type:"text",required:!1}],outputType:"message"},{name:"Instagram DM auto-reply",category:"general",description:"Draft replies to common DM questions (hours, dietary, bookings).",agentId:"cx",promptTemplate:"Customer asked via DM: {{question}}. Draft a reply in our brand voice (warm, brief, includes the answer + a soft CTA — book / visit / follow). 2-3 sentences max.",inputs:[{name:"question",label:"Customer question",type:"textarea",required:!0}],outputType:"message"},{name:"Monthly community newsletter",category:"general",description:"Draft this month's community newsletter — events, menu drops, behind-the-scenes.",agentId:"content",promptTemplate:"Draft this month's newsletter for {{venue_name}}. Highlight: {{highlights}}. Tone: warm, in-the-know, concise. 250 words max. Include a CTA to book / visit.",inputs:[{name:"venue_name",label:"Venue name",type:"text",required:!0},{name:"highlights",label:"This month's highlights",type:"textarea",required:!0}],outputType:"message"},{name:"New-member 30-day nurture",category:"general",description:"Plan a 30-day email sequence for a new gym/club/studio member.",agentId:"marketing",promptTemplate:"Design a 30-day email sequence for a new {{venue_type}} member. 5 emails total. Each one: subject + 2-sentence body + clear CTA. Goal: drive 8+ visits in first 30 days.",inputs:[{name:"venue_type",label:"Venue type",type:"text",required:!1}],outputType:"message"}],retail:[{name:"Order-status DM deflection",category:"general",description:"Draft a DM reply when a customer asks 'where's my order?'.",agentId:"cx",promptTemplate:"Customer DM: {{question}}. Order: {{order_id}}. Tracking shows: {{tracking_status}}. Draft a reply with: empathy, concrete tracking link, ETA, what to do if it's late.",inputs:[{name:"question",label:"Customer DM",type:"textarea",required:!0},{name:"order_id",label:"Order ID",type:"text",required:!0},{name:"tracking_status",label:"Tracking status",type:"text",required:!0}],outputType:"message"},{name:"Product drop announcement cadence",category:"general",description:"Plan the email + social cadence for the next product drop.",agentId:"marketing",promptTemplate:"Product drop: {{product_name}}, launching {{launch_date}}. Plan a 14-day cadence: 4 emails (teaser, reminder, launch, last-chance) + 6 social posts. Each: subject/caption + 1-line body + CTA.",inputs:[{name:"product_name",label:"Product name",type:"text",required:!0},{name:"launch_date",label:"Launch date",type:"text",required:!0}],outputType:"message"},{name:"Reorder alert — top SKUs",category:"general",description:"Daily check on stock levels for top-selling SKUs; flag anything to reorder.",agentId:"ops",promptTemplate:"Pull current stock levels for our top 20 SKUs. Flag anything below the reorder threshold. For each, suggest reorder qty based on the last 30-day velocity.",inputs:[],outputType:"message"},{name:"Margin review by SKU",category:"general",description:"Monthly margin check — flag any SKU drifting outside the band.",agentId:"finance",promptTemplate:"Review this month's per-SKU margins. Flag any product where: (a) margin dropped >5% vs last month, (b) margin is below the {{floor_pct}}% floor, or (c) supplier price changed without a retail-price adjustment.",inputs:[{name:"floor_pct",label:"Margin floor %",type:"number",required:!0}],outputType:"message"}],trades:[{name:"Quote draft from job notes",category:"general",description:"Convert raw job notes into a structured customer quote.",agentId:"ops",promptTemplate:"Job notes: {{notes}}. Customer: {{customer_name}}. Site: {{site_address}}. Draft a quote with: scope, materials estimate, labour estimate (hours x rate), total, timeline, terms. Australian standard format. Include the standard 60-day validity clause.",inputs:[{name:"customer_name",label:"Customer",type:"text",required:!0},{name:"site_address",label:"Site address",type:"text",required:!0},{name:"notes",label:"Job notes",type:"textarea",required:!0}],outputType:"message"},{name:"Pre-arrival SMS to today's clients",category:"general",description:"Send 'we're 30 min away' SMS to the day's scheduled clients.",agentId:"cx",promptTemplate:"Today's site visits: {{visits_list}}. For each, draft a pre-arrival SMS (we're 30 min away, mention any prep they need to have ready, and the on-site contact). Group SMS-ready text per client.",inputs:[{name:"visits_list",label:"Today's visits (paste list)",type:"textarea",required:!0}],outputType:"message"},{name:"HBCF + engineer-signoff tracker",category:"general",description:"Weekly check on compliance deadlines per active job.",agentId:"ops",promptTemplate:"For each active residential job >$20k: confirm HBCF certificate is on file, engineer signoff is current (or scheduled), and flag any deadline within the next 30 days.",inputs:[],outputType:"message"},{name:"Subcontractor licence + insurance check",category:"general",description:"Verify a subcontractor's licence + insurance before engagement.",agentId:"compliance",promptTemplate:"Check {{subcontractor_name}} (ABN {{abn}}). Verify: trade licence current, public liability insurance ≥ $5M, workers comp current. Flag any gaps. If clear, draft the engagement-letter cover note.",inputs:[{name:"subcontractor_name",label:"Subcontractor",type:"text",required:!0},{name:"abn",label:"ABN",type:"text",required:!0}],outputType:"message"}],professional:[{name:"Discovery-call pre-brief",category:"sales",description:"Pre-call brief for a fresh discovery call with a prospect.",agentId:"sales",promptTemplate:"Discovery call tomorrow with {{prospect_name}} ({{company_context}}). Draft a 3-bullet pre-brief: (1) listen-fors, (2) what NOT to pitch, (3) the one outcome I want from this call. Anti-fluff. Operator-tone.",inputs:[{name:"prospect_name",label:"Prospect",type:"text",required:!0},{name:"company_context",label:"Company context",type:"text",required:!0}],outputType:"message"},{name:"Engagement kickoff plan",category:"general",description:"Day-7 / Day-30 / Day-90 cadence for a new advisory engagement.",agentId:"people",promptTemplate:"New engagement signed: {{client_name}}. Kickoff {{kickoff_date}}. Draft my standard Day-7 / Day-30 / Day-90 cadence into the engagement plan. Save it to the brain. Tell Concierge to set calendar reminders 2 days before each milestone.",inputs:[{name:"client_name",label:"Client name",type:"text",required:!0},{name:"kickoff_date",label:"Kickoff date",type:"text",required:!0}],outputType:"message"},{name:"Post-call follow-up email",category:"sales",description:"Draft a follow-up email after a discovery / sales call.",agentId:"sales",promptTemplate:"Just finished a call with {{contact_name}} at {{company_name}}. Discussion: {{call_notes}}. Draft a follow-up email: thank, recap the 2-3 specifics they raised, propose the next concrete step (with a date). Tone: peer-to-peer, anti-fluff.",inputs:[{name:"contact_name",label:"Contact name",type:"text",required:!0},{name:"company_name",label:"Company",type:"text",required:!0},{name:"call_notes",label:"Call notes",type:"textarea",required:!0}],outputType:"email"},{name:"Monthly client digest",category:"general",description:"Recap of what was delivered + what's queued for each active client.",agentId:"marketing",promptTemplate:"Pull this month's activity per active client. For each: what was delivered (3 bullets), what's queued for next month (2 bullets), one risk to surface. End with: invoicing status by client.",inputs:[],outputType:"message"},{name:"EOFY pre-comms",category:"general",description:"EOFY email sequence to clients — 6 weeks ahead of cycle.",agentId:"email",promptTemplate:"Draft a 4-email EOFY sequence to all active clients (6 weeks out, 4 weeks out, 2 weeks out, day-of-cycle). Each: subject + 80-word body + a clear action. Tone: helpful prep, not pushy.",inputs:[],outputType:"message"}],manufacturing:[{name:"Production schedule rebalance",category:"general",description:"Re-shuffle today's production schedule when a machine goes down or a key input is delayed.",agentId:"ops",promptTemplate:"Production disruption at {{plant}}: {{disruption}}. Affected line(s): {{lines}}. Re-shuffle today's schedule to minimise customer-facing slippage. Surface: which jobs slip, by how long, which customers need notification, what the recovery plan is. Anti-vague.",inputs:[{name:"plant",label:"Plant",type:"text",required:!0},{name:"disruption",label:"What happened",type:"textarea",required:!0},{name:"lines",label:"Affected line(s)",type:"text",required:!0}],outputType:"message"},{name:"Raw-material reorder PO",category:"general",description:"Reorder PO when a raw material hits its reorder point.",agentId:"procurement",promptTemplate:"Raw material {{material}} hit reorder point at {{plant}}. Approved supplier: {{supplier}}. Re-confirm current price + lead time with {{supplier}} before generating the PO; flag if either has drifted >5% from contract. Draft the PO once confirmed.",inputs:[{name:"material",label:"Material",type:"text",required:!0},{name:"plant",label:"Plant",type:"text",required:!0},{name:"supplier",label:"Supplier",type:"text",required:!0}],outputType:"message"},{name:"QC failure containment",category:"general",description:"Containment + root-cause memo when a batch fails QC.",agentId:"compliance",promptTemplate:"Batch {{batch_id}} failed QC at {{step}}. Failure mode: {{failure_mode}}. Draft: (1) immediate containment (hold downstream lots, quarantine batch, notify QC manager), (2) root-cause investigation plan, (3) customer-notification list (only if affected lots have already shipped). Surface to plant manager BEFORE any external comms.",inputs:[{name:"batch_id",label:"Batch ID",type:"text",required:!0},{name:"step",label:"QC step",type:"text",required:!0},{name:"failure_mode",label:"Failure mode",type:"textarea",required:!0}],outputType:"message"},{name:"Supplier scorecard update",category:"general",description:"Quarterly supplier scorecard refresh.",agentId:"procurement",promptTemplate:"Pull this quarter's supplier performance: on-time delivery %, defect rate %, price drift, responsiveness on disputes. Surface top 3 underperformers + recommend a corrective action per supplier (warning / dual-source / re-bid). End with: who's at risk of being dropped next quarter.",inputs:[],outputType:"message"},{name:"Compliance audit prep",category:"general",description:"Pull batch records, calibration logs, training records ahead of an ISO / food-safety audit.",agentId:"compliance",promptTemplate:"Audit scheduled: {{audit_type}} on {{audit_date}}. Pull: last 12 months of batch records, equipment calibration logs (current?), staff training records (gaps?), corrective-action register (closed?). Surface gaps with 2 weeks runway.",inputs:[{name:"audit_type",label:"Audit type",type:"text",required:!0},{name:"audit_date",label:"Audit date",type:"text",required:!0}],outputType:"message"}],"food-service":[{name:"Daily prep-list generation",category:"general",description:"Morning prep list based on bookings + prior-week shape + current par stock.",agentId:"ops",promptTemplate:"Today's covers: {{covers}}. Prior 4-Saturday average: {{prior_avg}}. Special bookings: {{specials}}. Generate the prep list for the kitchen. Flag any 86 risks (items running low). Keep it kitchen-readable: bullet list, no fluff.",inputs:[{name:"covers",label:"Covers booked today",type:"text",required:!0},{name:"prior_avg",label:"Prior 4-week avg same-day",type:"text",required:!1},{name:"specials",label:"Special bookings",type:"textarea",required:!1}],outputType:"message"},{name:"Customer review reply",category:"general",description:"Draft a tone-matched response to a public review (Google / Yelp / TripAdvisor).",agentId:"cx",promptTemplate:"Review platform: {{platform}}. Stars: {{stars}}. Review text: {{review}}. Context (was service running normally that night?): {{context}}. Draft a reply that: thanks them, acknowledges specifics, fixes the actionable thing, doesn't argue. Tone: warm, owner-voice. Sign off: {{sign_off}}.",inputs:[{name:"platform",label:"Platform",type:"text",required:!0},{name:"stars",label:"Stars",type:"text",required:!0},{name:"review",label:"Review text",type:"textarea",required:!0},{name:"context",label:"Service context that night",type:"textarea",required:!1},{name:"sign_off",label:"Sign off (name + role)",type:"text",required:!0}],outputType:"message"},{name:"Roster cover hunt",category:"general",description:"Find a replacement when a staff member calls in sick mid-shift.",agentId:"people",promptTemplate:"Staff sick-call: {{name}} ({{role}}) for {{shift}}. Ping the approved-cover list (in priority order). Track responses. If no cover within 30min, escalate to manager. Draft both the cover-request message + the escalation message.",inputs:[{name:"name",label:"Staff member",type:"text",required:!0},{name:"role",label:"Role",type:"text",required:!0},{name:"shift",label:"Shift",type:"text",required:!0}],outputType:"message"},{name:"Supplier order — perishables",category:"general",description:"Draft this week's perishable supplier orders based on prep list + par stock.",agentId:"procurement",promptTemplate:"Generate this week's perishable orders: greengrocer (daily), butcher (Tue/Fri), seafood (Wed/Sat). Cross-check against today's prep list + walk-in stock + booking shape. Flag anything at end-of-life that should be used before reordering. Keep it lean — over-ordering perishables is the #1 food-cost killer.",inputs:[],outputType:"message"},{name:"Food-cost % drift weekly",category:"general",description:"Weekly food-cost percentage check across the menu.",agentId:"finance",promptTemplate:"Pull this week's food-cost percentage by menu category. Compare vs target (typical: 28-32%). Surface any dish whose ingredient cost has crept up enough to drop margin below threshold. Recommend: re-spec, re-price, or 86-permanent.",inputs:[],outputType:"message"}],ecommerce:[{name:"Cart-abandonment recovery sequence",category:"general",description:"Draft a 3-email cart-abandonment recovery sequence.",agentId:"email",promptTemplate:"New cart-abandon flow needed for {{collection}}. Brand voice: {{brand_voice}}. Draft 3 emails: T+1h (gentle reminder, no discount), T+24h (social proof + reassurance), T+72h (final, time-limited 10%). Subject under 50 chars. Plain-text fallback baked in. One CTA per email.",inputs:[{name:"collection",label:"Product collection",type:"text",required:!0},{name:"brand_voice",label:"Brand voice (sample)",type:"textarea",required:!0}],outputType:"message"},{name:"Order issue triage + reply",category:"general",description:"Triage an order issue (late / damaged / wrong item / fraud-flag) and draft the customer reply.",agentId:"cx",promptTemplate:"Order #{{order_id}}. Customer reports: {{issue}}. Order status from system: {{order_status}}. Triage: refund / replace / dispute / fraud-review. Draft the customer reply matching the brand voice. If fraud-flagged, surface to ops BEFORE replying.",inputs:[{name:"order_id",label:"Order #",type:"text",required:!0},{name:"issue",label:"What the customer reports",type:"textarea",required:!0},{name:"order_status",label:"Status from system",type:"textarea",required:!0}],outputType:"email"},{name:"Inventory restock trigger",category:"general",description:"When a SKU hits stockout-imminent, draft the reorder + supplier notification.",agentId:"ops",promptTemplate:"SKU {{sku}} ({{name}}) is {{days}} days from stockout at current sales velocity. Lead time from supplier {{supplier}}: {{lead_time}} days. Decide: reorder now, expedite, or accept a stockout window. If reorder: draft the supplier message with quantity + delivery date.",inputs:[{name:"sku",label:"SKU",type:"text",required:!0},{name:"name",label:"Product name",type:"text",required:!0},{name:"days",label:"Days to stockout",type:"text",required:!0},{name:"supplier",label:"Supplier",type:"text",required:!0},{name:"lead_time",label:"Lead time (days)",type:"text",required:!0}],outputType:"message"},{name:"Cohort + LTV monthly",category:"general",description:"Monthly cohort + LTV report by acquisition channel + first-product.",agentId:"data",promptTemplate:"Pull last 6 months of cohorts. Slice by: acquisition channel, first-product, AOV band. For each cohort: 1-month repeat rate, 6-month LTV, return rate. Surface declining segments + recommend either acquisition pause or retention experiment.",inputs:[],outputType:"message"},{name:"Negative review reply",category:"general",description:"Public reply to a negative product review without arguing.",agentId:"cx",promptTemplate:"Review on {{platform}} for {{product}}: {{stars}} stars. Text: {{review}}. Order context: {{order_context}}. Draft a public reply: thank them for the feedback, acknowledge the specific complaint, offer the fix in DMs (don't argue in public). Tone: brand voice, owner-grade.",inputs:[{name:"platform",label:"Platform",type:"text",required:!0},{name:"product",label:"Product",type:"text",required:!0},{name:"stars",label:"Stars",type:"text",required:!0},{name:"review",label:"Review text",type:"textarea",required:!0},{name:"order_context",label:"Order context",type:"textarea",required:!1}],outputType:"message"}],agencies:[{name:"Pipeline review weekly",category:"sales",description:"Weekly probability-weighted pipeline + drop-off flags.",agentId:"sales",promptTemplate:"Pull this week's pipeline. For each opportunity: stage, probability, expected close. Flag anything that hasn't moved in 14+ days. Surface the 3 deals at risk of going cold + recommend a specific next-touch per deal. End with: next month's pipeline confidence.",inputs:[],outputType:"message"},{name:"Project profitability check",category:"general",description:"Actual hours vs. quoted hours for active + recent projects, scope-creep flags.",agentId:"finance",promptTemplate:"Pull all active + last-30-day projects. Compare actual hours vs quoted hours. Flag: (1) any project at >100% of quoted, (2) any project with scope additions not captured in a change order, (3) any project where the gross margin is dropping below {{margin_floor}}%.",inputs:[{name:"margin_floor",label:"Margin floor %",type:"text",required:!1}],outputType:"message"},{name:"Client status digest",category:"general",description:"Weekly client-facing update: shipped, next, blocked.",agentId:"cx",promptTemplate:"Draft this week's client status email for {{client}}. Include: what shipped this week (3 bullets max), what's queued for next week (3 bullets), what's blocked + the unblock owner. Tone: peer-strategic, no boilerplate. End with one specific question for the client.",inputs:[{name:"client",label:"Client name",type:"text",required:!0}],outputType:"email"},{name:"Retainer renewal prep",category:"general",description:"60-day-out renewal prep: usage trends, contract terms, recommendation.",agentId:"sales",promptTemplate:"Retainer renewal for {{client}}: 60 days out. Pull usage trends (hours used vs contracted, last 6 months). Surface scope drift, satisfaction signals, expansion opportunities. Recommend: same retainer, scale up, scale down, or non-renewal — with one specific reason.",inputs:[{name:"client",label:"Client name",type:"text",required:!0}],outputType:"message"},{name:"Receivables chase",category:"general",description:"Overdue invoice escalation cadence, drafted with appropriate tone.",agentId:"finance",promptTemplate:"Invoice #{{invoice}} for {{client}} is {{days_overdue}} days overdue. Prior actions: {{prior_actions}}. Draft the next-step message at the appropriate escalation level: gentle reminder (≤14d), firm (15-30d), pause-new-work + escalation (>30d). Don't skip steps.",inputs:[{name:"invoice",label:"Invoice #",type:"text",required:!0},{name:"client",label:"Client",type:"text",required:!0},{name:"days_overdue",label:"Days overdue",type:"text",required:!0},{name:"prior_actions",label:"Prior chase actions",type:"textarea",required:!1}],outputType:"email"}],healthcare:[{name:"Appointment reminder cadence",category:"general",description:"Multi-channel reminder sequence (SMS/email) for upcoming appointments.",agentId:"cx",promptTemplate:"Generate the {{day}} reminder for patient (NO identifiable PHI in this draft — use [PATIENT] / [TIME] / [CLINICIAN] placeholders). Channel: SMS. Length: under 160 chars. Include: appointment time, location, reschedule link. NEVER include clinical details.",inputs:[{name:"day",label:"When the reminder fires (T-24h / T-2h)",type:"text",required:!0}],outputType:"message"},{name:"Recall-list outreach",category:"general",description:"Draft outreach for patients due for review (annual check, vaccination, hygiene).",agentId:"cx",promptTemplate:"Recall type: {{recall_type}}. Patients overdue: {{count}}. Draft the outreach message (SMS + email versions). Tone: reminder + benefit, not pressure. NO identifiable PHI in the draft template — use [PATIENT_FIRST_NAME] placeholder. Surface privacy-flag: patients who have opted out of recalls must be excluded by the operator BEFORE sending.",inputs:[{name:"recall_type",label:"Recall type",type:"text",required:!0},{name:"count",label:"Patients due",type:"text",required:!1}],outputType:"message"},{name:"Billing + claims daily check",category:"general",description:"Daily billing + Medicare/private-health claims submission status.",agentId:"finance",promptTemplate:"Pull yesterday's billing + claims state. Surface: items unbilled (overdue >24h), claims submitted vs. accepted, gap-payment notifications still pending, private-health rebate calculations needing review. Flag any item codes that look unusual for the clinician's specialty.",inputs:[],outputType:"message"},{name:"Complaint logging + triage",category:"general",description:"Log a complaint and route to the right pathway (clinical / administrative / serious adverse event).",agentId:"compliance",promptTemplate:"Complaint received: {{complaint}}. Channel: {{channel}}. Triage path: clinical (clinician review), administrative (practice manager), or serious-adverse-event (escalate per practice policy + regulatory notification path). Draft the acknowledgement to the complainant + the internal escalation note. Log to incident register regardless of path.",inputs:[{name:"complaint",label:"Complaint summary",type:"textarea",required:!0},{name:"channel",label:"How received",type:"text",required:!0}],outputType:"message"},{name:"Accreditation evidence pull",category:"general",description:"Pull evidence for an upcoming accreditation cycle (RACGP / AGPAL / specialty-college).",agentId:"compliance",promptTemplate:"Accreditation cycle: {{standard}}. Due: {{due_date}}. Pull evidence per standard: clinical governance records, training compliance, infection-control logs, complaint register, equipment calibration. Surface gaps with 6+ weeks runway. Recommend remediation owner per gap.",inputs:[{name:"standard",label:"Standard (RACGP / AGPAL / etc)",type:"text",required:!0},{name:"due_date",label:"Due date",type:"text",required:!0}],outputType:"message"}],general:[{name:"Daily ops brief",category:"general",description:"Morning brief synthesising inbox + approvals + last 24h activity.",agentId:"coo",promptTemplate:"Synthesise the daily ops brief: pending inbox count, pending approvals, last 24h agent activity, anything escalated. Keep it to 6 lines. End with the one thing I should do first today.",inputs:[],outputType:"message"},{name:"Customer-question reply",category:"general",description:"Triage and draft a reply to an inbound customer question.",agentId:"cx",promptTemplate:"Customer asked: {{question}}. Context: {{context}}. Triage: resolve, escalate to ops, escalate to finance, or escalate to delivery. Then draft the appropriate reply.",inputs:[{name:"question",label:"Customer question",type:"textarea",required:!0},{name:"context",label:"What we know about them",type:"textarea",required:!1}],outputType:"message"},{name:"Weekly metrics digest",category:"general",description:"Friday recap of the week's key business metrics.",agentId:"data",promptTemplate:"Pull this week's key metrics: revenue, runs completed, customer satisfaction signals, agent cost. Compare vs prior week. End with: 3 things to watch next week.",inputs:[],outputType:"message"}]},f="_Workflows";async function g(a){if(!await (0,d.xB)(a))return[];let b=await (0,d._T)(a,f,{extension:".md",limit:100});if(!b.ok)return[];let c=[];for(let e of b.entries){let b=await (0,d.zG)(a,e.relativePath);if(!b.ok)continue;let{frontmatter:f,body:g}=(0,d.yv)(b.body),h=String(f.id??"").trim(),i=String(f.name??"").trim(),j=String(f.agentId??"").trim();h&&i&&j&&g.trim()&&c.push({id:h,name:i,category:"string"==typeof f.category?f.category:"general",description:"string"==typeof f.description?f.description:"",agentId:j,promptTemplate:g.trim(),inputs:function(a){if(!a||"string"!=typeof a)return[];try{let b=JSON.parse(a);if(!Array.isArray(b))return[];return b.filter(a=>a&&"object"==typeof a&&"string"==typeof a.name&&"string"==typeof a.label&&"string"==typeof a.type)}catch{return[]}}(f.inputs),outputType:"string"==typeof f.outputType?f.outputType:"message"})}return c}async function h(a,b,c="industry-seeded"){if(!await (0,d.xB)(a))return{ok:!1,error:`No brain for ${a} — provision via bin/onboard-customer.sh first.`};let e={id:b.id,name:b.name,category:b.category,description:b.description,agentId:b.agentId,inputs:JSON.stringify(b.inputs),outputType:b.outputType,source:c,created:(0,d.st)()},g=b.promptTemplate.trim()+"\n",i=(0,d.nj)(e,g),j=(0,d.B0)(b.name)||"untitled",k=await (0,d.mx)(a,`${f}/${j}.md`,i);return k.ok?{ok:!0,path:k.path}:{ok:!1,error:k.error}}async function i(a,b){let c=b?e[b.toLowerCase()]??e.general:e.general,g=0,i=0,j=[];for(let b of c){let c=(0,d.B0)(b.name)||"untitled",e=`${f}/${c}.md`,k=await (0,d.zG)(a,e);if(k.ok){let{frontmatter:a}=(0,d.yv)(k.body);if("user-saved"===("string"==typeof a.source?a.source:null)){i++;continue}}let l=`seed-${c}`,m={...b,id:l},n=await h(a,m,"regenerated");n.ok?g++:(i++,j.push(`${b.name}: ${n.error}`))}return{ok:!0,written:g,skipped:i,errors:j}}},7506:(a,b,c)=>{"use strict";c.d(b,{sb:()=>j});var d=c(73024),e=c(76760),f=c.n(e),g=c(57477);let h=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,i=/^[a-z][a-z0-9_]{1,40}\.[a-z][a-z0-9_]{1,40}$/;async function j(a){try{if(!h.test(a.clientId))return{ok:!1,error:`Invalid clientId: ${a.clientId}`};if(!i.test(a.agent))return{ok:!1,error:`Invalid agent format: ${a.agent} (expected agent.tool)`};if(!await (0,g.xB)(a.clientId))return{ok:!1,error:`No brain for ${a.clientId} — audit not written`};let b={...a,inputSummary:function(a){if(!a)return;let b={};for(let[c,d]of Object.entries(a))"string"==typeof d?b[c]=d.length>200?`${d.slice(0,200)}…[+${d.length-200} chars]`:d:"number"==typeof d||"boolean"==typeof d||null===d?b[c]=d:Array.isArray(d)?b[c]=`[array length=${d.length}]`:"object"==typeof d?b[c]=`[object keys=${Object.keys(d).length}]`:b[c]=`[${typeof d}]`;return b}(a.inputSummary)},c=function(a,b){let c=`${b.getUTCFullYear()}-${String(b.getUTCMonth()+1).padStart(2,"0")}`;return f().join((0,g.Ip)(a),"_inbox",`audit-${c}.jsonl`)}(a.clientId,new Date(a.ts));await d.promises.mkdir(f().dirname(c),{recursive:!0});let e=JSON.stringify(b)+"\n";return await d.promises.appendFile(c,e,"utf8"),{ok:!0,path:c,bytes:Buffer.byteLength(e,"utf8")}}catch(a){return{ok:!1,error:a.message}}}},22709:(a,b,c)=>{"use strict";c.d(b,{YB:()=>l,dataPath:()=>i,fp:()=>m,uV:()=>h});var d=c(33873),e=c.n(d),f=c(29021),g=c.n(f);let h=process.env.LEEDAB_DATA_DIR?e().resolve(process.env.LEEDAB_DATA_DIR):e().resolve(process.cwd(),"data"),i=(...a)=>e().join(h,...a),j=function(){if(process.env.LEEDAB_WORKSPACE_ROOT)return e().resolve(process.env.LEEDAB_WORKSPACE_ROOT);let a=process.cwd();for(let b=0;b<4;b++){if(g().existsSync(e().join(a,"agents")))return a;let b=e().dirname(a);if(b===a)break;a=b}return e().resolve(process.cwd(),"..")}(),k=e().join(h,"workspace-config.json");function l(){if(process.env.LEEDAB_WORKSPACE_ROOT)return e().resolve(process.env.LEEDAB_WORKSPACE_ROOT);let a=function(){try{let a=g().readFileSync(k,"utf8");return JSON.parse(a).workspaceRoot||null}catch{return null}}();return a?e().resolve(a):j}function m(){return process.env.LEEDAB_CUSTOMER_ID||"default"}},25624:(a,b,c)=>{"use strict";let d;c.d(b,{GF:()=>k,GI:()=>o,UC:()=>i,Vh:()=>j,fe:()=>n,kB:()=>m});var e=c(73024),f=c(48161),g=c(76760);function h(){return process.env.LEEDAB_STATE_DIR??(0,g.join)((0,f.homedir)(),".leedab")}function i(...a){return(0,g.resolve)(h(),...a)}async function j(a,b){try{let b=await e.promises.readFile(i(a),"utf8");return JSON.parse(b)}catch{return b}}async function k(a,b){let c=i(a);await e.promises.mkdir((0,g.resolve)(c,".."),{recursive:!0}),await e.promises.writeFile(c,JSON.stringify(b,null,2)+"\n","utf8")}function l(){if(void 0!==d)return d;let a=process.cwd();for(let b=0;b<10;b++){let b=(0,g.join)(a,"node_modules","openclaw","openclaw.mjs");if((0,e.existsSync)(b))return d=b,b;let c=(0,g.dirname)(a);if(c===a)break;a=c}return d=null,null}function m(){return l()?process.execPath:null}function n(a=[]){let b=l();if(!b)throw Error("openclaw script not found in any ancestor node_modules");return[b,...a]}function o(){return{...process.env,OPENCLAW_STATE_DIR:h()}}},57477:(a,b,c)=>{"use strict";c.d(b,{B0:()=>t,Ip:()=>k,T8:()=>q,_T:()=>p,dR:()=>r,mx:()=>o,nj:()=>v,st:()=>s,xB:()=>l,yv:()=>u,zG:()=>n,zY:()=>w});var d=c(73024),e=c(76760),f=c.n(e),g=c(48161),h=c.n(g);let i=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,j=["_inbox/","_Workflows/","00_Org/","01_Customers/","02_Sales/","03_Product/","04_Operations/","05_Finance/","06_Legal/","Permanent/","Wiki/"];function k(a){if(!i.test(a))throw Error(`Invalid clientId: ${a}`);return f().join(process.env.LEEDAB_BRAINS_ROOT?f().resolve(process.env.LEEDAB_BRAINS_ROOT):f().resolve(h().homedir(),"leedab-brains"),a)}async function l(a){try{return(await d.promises.stat(k(a))).isDirectory()}catch{return!1}}function m(a,b){if(b.includes("..")||f().isAbsolute(b))throw Error(`Refused: path contains traversal or is absolute: ${b}`);if(!j.some(a=>b.startsWith(a)))throw Error(`Refused: path "${b}" doesn't start with an allowed prefix (${j.join(", ")})`);let c=k(a),d=f().resolve(c,b);if(!d.startsWith(c+f().sep))throw Error(`Refused: path resolves outside brain root: ${b}`);return d}async function n(a,b){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let c=m(a,b),e=await d.promises.readFile(c,"utf8");return{ok:!0,body:e,path:c}}catch(a){return{ok:!1,error:a.message}}}async function o(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);return await d.promises.mkdir(f().dirname(e),{recursive:!0}),await d.promises.writeFile(e,c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}async function p(a,b,c={}){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}.`};let e=b.endsWith("/")?b:b+"/",g=m(a,e+"__list_sentinel__"),h=f().dirname(g),i=[];try{i=await d.promises.readdir(h)}catch{return{ok:!0,entries:[]}}let j=c.extension??".md",n=c.sinceISO?Date.parse(c.sinceISO):0,o=[];for(let a of i){if(j&&!a.endsWith(j))continue;let b=f().join(h,a),c=await d.promises.stat(b);c.isFile()&&(n&&c.mtimeMs<n||o.push({relativePath:e+a,absolutePath:b,bytes:c.size,modifiedISO:new Date(c.mtimeMs).toISOString()}))}return o.sort((a,b)=>Date.parse(b.modifiedISO)-Date.parse(a.modifiedISO)),{ok:!0,entries:c.limit?o.slice(0,c.limit):o}}catch(a){return{ok:!1,error:a.message}}}async function q(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);await d.promises.mkdir(f().dirname(e),{recursive:!0});let g="";try{let a=await d.promises.readFile(e,"utf8");a.length>0&&!a.endsWith("\n")&&(g="\n")}catch{}return await d.promises.appendFile(e,g+c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(g+c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}function r(){return new Date().toISOString().slice(0,10)}function s(){return new Date().toISOString()}function t(a){return a.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,60)}function u(a){if(!a.startsWith("---\n")&&!a.startsWith("---\r\n"))return{frontmatter:{},body:a};let b=a.indexOf("\n---",4);if(-1===b)return{frontmatter:{},body:a};let c=a.slice(4,b),d=a.slice(b+4).replace(/^\r?\n/,""),e={},f=null,g=[],h=()=>{null!==f&&(e[f]=[...g],g.length=0,f=null)};for(let a of c.split(/\r?\n/)){if(""===a.trim())continue;let b=a.match(/^\s*-\s+(.*)$/);if(b&&null!==f){let a=b[1].trim(),c=a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'")?a.slice(1,-1):a;g.push(c);continue}let c=a.match(/^([A-Za-z0-9_\-.]+)\s*:\s*(.*)$/);if(c){h();let a=c[1],b=c[2];if(""===b){f=a;continue}e[a]=function(a){let b=a.trim();if(""===b||"null"===b||"~"===b)return null;if("true"===b)return!0;if("false"===b)return!1;if(b.startsWith('"')&&b.endsWith('"'))return b.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\");if(b.startsWith("'")&&b.endsWith("'"))return b.slice(1,-1).replace(/\\'/g,"'");if(b.startsWith("[")&&b.endsWith("]")){let a=b.slice(1,-1).trim();return a?a.split(/\s*,\s*/).map(a=>{let b=a.trim();return b.startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'")?b.slice(1,-1):b}):[]}return/^-?\d+$/.test(b)||/^-?\d*\.\d+$/.test(b)?Number(b):b}(b)}}return h(),{frontmatter:e,body:d}}function v(a,b){let c=Object.keys(a);if(0===c.length)return b.startsWith("---"),b;let d=["---"];for(let b of c){var e;d.push(`${b}: ${null===(e=a[b])?"null":"boolean"==typeof e||"number"==typeof e?String(e):Array.isArray(e)?"["+e.map(a=>/[,\s:#]/.test(a)?`"${a.replace(/"/g,'\\"')}"`:a).join(", ")+"]":""===e||/^[\d\s]/.test(e)||/[:#\n"']/.test(e)||"true"===e||"false"===e||"null"===e||"~"===e?`"${e.replace(/"/g,'\\"')}"`:e}`)}return d.push("---",""),d.join("\n")+b.replace(/^\n+/,"")}function w(a){if(!a||"object"!=typeof a||Array.isArray(a))return{ok:!1,error:"patch must be a flat object"};let b={};for(let[c,d]of Object.entries(a)){if(!/^[A-Za-z0-9_\-.]+$/.test(c))return{ok:!1,error:`invalid frontmatter key "${c}" (allowed: letters / digits / _ - .)`};if(null===d||"string"==typeof d||"number"==typeof d||"boolean"==typeof d)b[c]=d;else{if(!(Array.isArray(d)&&d.every(a=>"string"==typeof a)))return{ok:!1,error:`value for "${c}" must be string / number / boolean / null / string[] — got ${typeof d}`};b[c]=d}}return{ok:!0,patch:b}}},78335:()=>{},89004:(a,b,c)=>{"use strict";c.d(b,{b_:()=>l,fp:()=>o,v$:()=>m,vX:()=>n});var d=c(73024),e=c(76760),f=c.n(e),g=c(22709),h=c(92486);let i=new Map,j=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/;async function k(a){let b=Date.now(),c=i.get(a);if(c&&b-c.at<3e4)return c.manifest;let e=function(a){if(!j.test(a))throw Error(`unsafe clientId: ${JSON.stringify(a)} (expected lowercase alphanumeric + hyphen, ≤60 chars)`);return f().join((0,g.YB)(),"clients",a,"manifest.json")}(a),h=JSON.parse(await d.promises.readFile(e,"utf8"));if("1.0"!==h.schema_version)throw Error(`Unsupported manifest schema_version: ${h.schema_version} for client ${a}`);return i.set(a,{manifest:h,at:b}),h}async function l(a){try{return await k(a)}catch{return null}}function m(a){a?i.delete(a):i.clear()}async function n(a={}){let b=await (0,h.y)();if(b&&b.customerId)return{clientId:b.customerId,source:"license"};if(process.env.LEEDAB_CUSTOMER_ID)return{clientId:process.env.LEEDAB_CUSTOMER_ID,source:"env"};if(a.urlParam){var c;if(c=a.urlParam,j.test(c))return{clientId:a.urlParam,source:"url"}}return{clientId:"default",source:"default"}}async function o(a={}){return(await n(a)).clientId}},92486:(a,b,c)=>{"use strict";let d;c.d(b,{y:()=>h});var e=c(77598),f=c(25624);let g=`-----BEGIN PUBLIC KEY-----
2
- MCowBQYDK2VwAyEAqTOdirAiEk9Ur/BdI4YkOZGF7NbKZUpRWbf123YTAUk=
3
- -----END PUBLIC KEY-----`;async function h(){let a=await (0,f.Vh)("license.json",null);if(!a)return null;let b=function(a){let b=(void 0===d&&(d=function(){let a=process.env.LEEDAB_LICENSE_PUBKEY?.trim()||g;try{return(0,e.createPublicKey)({key:a,format:"pem"})}catch{return null}}()),d);if(!b||!a.signature)return null;try{return(0,e.verify)(null,Buffer.from(JSON.stringify({key:a.key,tier:a.tier,expiresAt:a.expiresAt??"",valid:a.valid})),b,Buffer.from(a.signature,"base64"))}catch{return!1}}(a);return{...a,signatureValid:b,stale:function(a){if(!a)return!0;let b=Date.parse(a);return!!Number.isNaN(b)||Date.now()-b>6048e5}(a.validatedAt)}}},96487:()=>{}};
1
+ exports.id=2576,exports.ids=[2576],exports.modules={2482:(a,b,c)=>{"use strict";c.d(b,{BJ:()=>g,bt:()=>i,BU:()=>h});var d=c(57477);let e={logistics:[{name:"Daily dispatch brief",category:"logistics",description:"Morning brief: today's dispatches, exceptions, driver coverage.",agentId:"ops",promptTemplate:"Pull today's dispatch schedule. Surface anything that's: (1) running late, (2) missing a driver, (3) routed differently than the standard pattern. Keep it to 5 lines max — what needs my attention before 8am.",inputs:[],outputType:"message"},{name:"Supplier dispute draft",category:"logistics",description:"Draft a dispute email to a supplier when an invoice doesn't match the PO.",agentId:"procurement",promptTemplate:"Draft a dispute email to {{supplier_name}} for invoice {{invoice_number}}. The discrepancy: {{discrepancy_description}}. Reference the PO ({{po_number}}) and the agreed terms. Tone: firm but professional, leave room for negotiation.",inputs:[{name:"supplier_name",label:"Supplier name",type:"text",required:!0},{name:"invoice_number",label:"Invoice #",type:"text",required:!0},{name:"po_number",label:"PO #",type:"text",required:!0},{name:"discrepancy_description",label:"What's wrong",type:"textarea",required:!0}],outputType:"email"},{name:"Late-delivery customer reply",category:"logistics",description:"Auto-draft a customer-facing reply when a freight is running late.",agentId:"cx",promptTemplate:"Customer {{customer_name}} asked about a delayed shipment. Tracking: {{tracking_id}}. New ETA: {{new_eta}}. Reason for delay: {{reason}}. Draft a reply that: acknowledges, gives concrete new ETA, offers something (refund, credit, expedited next time) proportional to the delay.",inputs:[{name:"customer_name",label:"Customer name",type:"text",required:!0},{name:"tracking_id",label:"Tracking ID",type:"text",required:!0},{name:"new_eta",label:"New ETA",type:"text",required:!0},{name:"reason",label:"Cause of delay",type:"textarea",required:!0}],outputType:"email"},{name:"End-of-week ops digest",category:"logistics",description:"Friday recap: deliveries shipped, exceptions, agent activity.",agentId:"coo",promptTemplate:"Synthesise this week's ops state. Pull: deliveries completed vs. planned, top 3 exceptions, supplier issues, driver coverage gaps. End with one recommendation for next week.",inputs:[],outputType:"message"}],hospitality:[{name:"Booking-day pre-brief",category:"general",description:"Morning brief for the venue: today's bookings, special requests, staffing.",agentId:"concierge",promptTemplate:"Today's bookings at {{venue_name}}: pull the full list with party size + special requests + arrival times. Flag anything needing chef / FOH attention. End with the staffing call (do we need a casual on?).",inputs:[{name:"venue_name",label:"Venue",type:"text",required:!1}],outputType:"message"},{name:"Instagram DM auto-reply",category:"general",description:"Draft replies to common DM questions (hours, dietary, bookings).",agentId:"cx",promptTemplate:"Customer asked via DM: {{question}}. Draft a reply in our brand voice (warm, brief, includes the answer + a soft CTA — book / visit / follow). 2-3 sentences max.",inputs:[{name:"question",label:"Customer question",type:"textarea",required:!0}],outputType:"message"},{name:"Monthly community newsletter",category:"general",description:"Draft this month's community newsletter — events, menu drops, behind-the-scenes.",agentId:"content",promptTemplate:"Draft this month's newsletter for {{venue_name}}. Highlight: {{highlights}}. Tone: warm, in-the-know, concise. 250 words max. Include a CTA to book / visit.",inputs:[{name:"venue_name",label:"Venue name",type:"text",required:!0},{name:"highlights",label:"This month's highlights",type:"textarea",required:!0}],outputType:"message"},{name:"New-member 30-day nurture",category:"general",description:"Plan a 30-day email sequence for a new gym/club/studio member.",agentId:"marketing",promptTemplate:"Design a 30-day email sequence for a new {{venue_type}} member. 5 emails total. Each one: subject + 2-sentence body + clear CTA. Goal: drive 8+ visits in first 30 days.",inputs:[{name:"venue_type",label:"Venue type",type:"text",required:!1}],outputType:"message"}],retail:[{name:"Order-status DM deflection",category:"general",description:"Draft a DM reply when a customer asks 'where's my order?'.",agentId:"cx",promptTemplate:"Customer DM: {{question}}. Order: {{order_id}}. Tracking shows: {{tracking_status}}. Draft a reply with: empathy, concrete tracking link, ETA, what to do if it's late.",inputs:[{name:"question",label:"Customer DM",type:"textarea",required:!0},{name:"order_id",label:"Order ID",type:"text",required:!0},{name:"tracking_status",label:"Tracking status",type:"text",required:!0}],outputType:"message"},{name:"Product drop announcement cadence",category:"general",description:"Plan the email + social cadence for the next product drop.",agentId:"marketing",promptTemplate:"Product drop: {{product_name}}, launching {{launch_date}}. Plan a 14-day cadence: 4 emails (teaser, reminder, launch, last-chance) + 6 social posts. Each: subject/caption + 1-line body + CTA.",inputs:[{name:"product_name",label:"Product name",type:"text",required:!0},{name:"launch_date",label:"Launch date",type:"text",required:!0}],outputType:"message"},{name:"Reorder alert — top SKUs",category:"general",description:"Daily check on stock levels for top-selling SKUs; flag anything to reorder.",agentId:"ops",promptTemplate:"Pull current stock levels for our top 20 SKUs. Flag anything below the reorder threshold. For each, suggest reorder qty based on the last 30-day velocity.",inputs:[],outputType:"message"},{name:"Margin review by SKU",category:"general",description:"Monthly margin check — flag any SKU drifting outside the band.",agentId:"finance",promptTemplate:"Review this month's per-SKU margins. Flag any product where: (a) margin dropped >5% vs last month, (b) margin is below the {{floor_pct}}% floor, or (c) supplier price changed without a retail-price adjustment.",inputs:[{name:"floor_pct",label:"Margin floor %",type:"number",required:!0}],outputType:"message"}],trades:[{name:"Quote draft from job notes",category:"general",description:"Convert raw job notes into a structured customer quote.",agentId:"ops",promptTemplate:"Job notes: {{notes}}. Customer: {{customer_name}}. Site: {{site_address}}. Draft a quote with: scope, materials estimate, labour estimate (hours x rate), total, timeline, terms. Australian standard format. Include the standard 60-day validity clause.",inputs:[{name:"customer_name",label:"Customer",type:"text",required:!0},{name:"site_address",label:"Site address",type:"text",required:!0},{name:"notes",label:"Job notes",type:"textarea",required:!0}],outputType:"message"},{name:"Pre-arrival SMS to today's clients",category:"general",description:"Send 'we're 30 min away' SMS to the day's scheduled clients.",agentId:"cx",promptTemplate:"Today's site visits: {{visits_list}}. For each, draft a pre-arrival SMS (we're 30 min away, mention any prep they need to have ready, and the on-site contact). Group SMS-ready text per client.",inputs:[{name:"visits_list",label:"Today's visits (paste list)",type:"textarea",required:!0}],outputType:"message"},{name:"HBCF + engineer-signoff tracker",category:"general",description:"Weekly check on compliance deadlines per active job.",agentId:"ops",promptTemplate:"For each active residential job >$20k: confirm HBCF certificate is on file, engineer signoff is current (or scheduled), and flag any deadline within the next 30 days.",inputs:[],outputType:"message"},{name:"Subcontractor licence + insurance check",category:"general",description:"Verify a subcontractor's licence + insurance before engagement.",agentId:"compliance",promptTemplate:"Check {{subcontractor_name}} (ABN {{abn}}). Verify: trade licence current, public liability insurance ≥ $5M, workers comp current. Flag any gaps. If clear, draft the engagement-letter cover note.",inputs:[{name:"subcontractor_name",label:"Subcontractor",type:"text",required:!0},{name:"abn",label:"ABN",type:"text",required:!0}],outputType:"message"}],professional:[{name:"Discovery-call pre-brief",category:"sales",description:"Pre-call brief for a fresh discovery call with a prospect.",agentId:"sales",promptTemplate:"Discovery call tomorrow with {{prospect_name}} ({{company_context}}). Draft a 3-bullet pre-brief: (1) listen-fors, (2) what NOT to pitch, (3) the one outcome I want from this call. Anti-fluff. Operator-tone.",inputs:[{name:"prospect_name",label:"Prospect",type:"text",required:!0},{name:"company_context",label:"Company context",type:"text",required:!0}],outputType:"message"},{name:"Engagement kickoff plan",category:"general",description:"Day-7 / Day-30 / Day-90 cadence for a new advisory engagement.",agentId:"people",promptTemplate:"New engagement signed: {{client_name}}. Kickoff {{kickoff_date}}. Draft my standard Day-7 / Day-30 / Day-90 cadence into the engagement plan. Save it to the brain. Tell Concierge to set calendar reminders 2 days before each milestone.",inputs:[{name:"client_name",label:"Client name",type:"text",required:!0},{name:"kickoff_date",label:"Kickoff date",type:"text",required:!0}],outputType:"message"},{name:"Post-call follow-up email",category:"sales",description:"Draft a follow-up email after a discovery / sales call.",agentId:"sales",promptTemplate:"Just finished a call with {{contact_name}} at {{company_name}}. Discussion: {{call_notes}}. Draft a follow-up email: thank, recap the 2-3 specifics they raised, propose the next concrete step (with a date). Tone: peer-to-peer, anti-fluff.",inputs:[{name:"contact_name",label:"Contact name",type:"text",required:!0},{name:"company_name",label:"Company",type:"text",required:!0},{name:"call_notes",label:"Call notes",type:"textarea",required:!0}],outputType:"email"},{name:"Monthly client digest",category:"general",description:"Recap of what was delivered + what's queued for each active client.",agentId:"marketing",promptTemplate:"Pull this month's activity per active client. For each: what was delivered (3 bullets), what's queued for next month (2 bullets), one risk to surface. End with: invoicing status by client.",inputs:[],outputType:"message"},{name:"EOFY pre-comms",category:"general",description:"EOFY email sequence to clients — 6 weeks ahead of cycle.",agentId:"email",promptTemplate:"Draft a 4-email EOFY sequence to all active clients (6 weeks out, 4 weeks out, 2 weeks out, day-of-cycle). Each: subject + 80-word body + a clear action. Tone: helpful prep, not pushy.",inputs:[],outputType:"message"}],manufacturing:[{name:"Production schedule rebalance",category:"general",description:"Re-shuffle today's production schedule when a machine goes down or a key input is delayed.",agentId:"ops",promptTemplate:"Production disruption at {{plant}}: {{disruption}}. Affected line(s): {{lines}}. Re-shuffle today's schedule to minimise customer-facing slippage. Surface: which jobs slip, by how long, which customers need notification, what the recovery plan is. Anti-vague.",inputs:[{name:"plant",label:"Plant",type:"text",required:!0},{name:"disruption",label:"What happened",type:"textarea",required:!0},{name:"lines",label:"Affected line(s)",type:"text",required:!0}],outputType:"message"},{name:"Raw-material reorder PO",category:"general",description:"Reorder PO when a raw material hits its reorder point.",agentId:"procurement",promptTemplate:"Raw material {{material}} hit reorder point at {{plant}}. Approved supplier: {{supplier}}. Re-confirm current price + lead time with {{supplier}} before generating the PO; flag if either has drifted >5% from contract. Draft the PO once confirmed.",inputs:[{name:"material",label:"Material",type:"text",required:!0},{name:"plant",label:"Plant",type:"text",required:!0},{name:"supplier",label:"Supplier",type:"text",required:!0}],outputType:"message"},{name:"QC failure containment",category:"general",description:"Containment + root-cause memo when a batch fails QC.",agentId:"compliance",promptTemplate:"Batch {{batch_id}} failed QC at {{step}}. Failure mode: {{failure_mode}}. Draft: (1) immediate containment (hold downstream lots, quarantine batch, notify QC manager), (2) root-cause investigation plan, (3) customer-notification list (only if affected lots have already shipped). Surface to plant manager BEFORE any external comms.",inputs:[{name:"batch_id",label:"Batch ID",type:"text",required:!0},{name:"step",label:"QC step",type:"text",required:!0},{name:"failure_mode",label:"Failure mode",type:"textarea",required:!0}],outputType:"message"},{name:"Supplier scorecard update",category:"general",description:"Quarterly supplier scorecard refresh.",agentId:"procurement",promptTemplate:"Pull this quarter's supplier performance: on-time delivery %, defect rate %, price drift, responsiveness on disputes. Surface top 3 underperformers + recommend a corrective action per supplier (warning / dual-source / re-bid). End with: who's at risk of being dropped next quarter.",inputs:[],outputType:"message"},{name:"Compliance audit prep",category:"general",description:"Pull batch records, calibration logs, training records ahead of an ISO / food-safety audit.",agentId:"compliance",promptTemplate:"Audit scheduled: {{audit_type}} on {{audit_date}}. Pull: last 12 months of batch records, equipment calibration logs (current?), staff training records (gaps?), corrective-action register (closed?). Surface gaps with 2 weeks runway.",inputs:[{name:"audit_type",label:"Audit type",type:"text",required:!0},{name:"audit_date",label:"Audit date",type:"text",required:!0}],outputType:"message"}],"food-service":[{name:"Daily prep-list generation",category:"general",description:"Morning prep list based on bookings + prior-week shape + current par stock.",agentId:"ops",promptTemplate:"Today's covers: {{covers}}. Prior 4-Saturday average: {{prior_avg}}. Special bookings: {{specials}}. Generate the prep list for the kitchen. Flag any 86 risks (items running low). Keep it kitchen-readable: bullet list, no fluff.",inputs:[{name:"covers",label:"Covers booked today",type:"text",required:!0},{name:"prior_avg",label:"Prior 4-week avg same-day",type:"text",required:!1},{name:"specials",label:"Special bookings",type:"textarea",required:!1}],outputType:"message"},{name:"Customer review reply",category:"general",description:"Draft a tone-matched response to a public review (Google / Yelp / TripAdvisor).",agentId:"cx",promptTemplate:"Review platform: {{platform}}. Stars: {{stars}}. Review text: {{review}}. Context (was service running normally that night?): {{context}}. Draft a reply that: thanks them, acknowledges specifics, fixes the actionable thing, doesn't argue. Tone: warm, owner-voice. Sign off: {{sign_off}}.",inputs:[{name:"platform",label:"Platform",type:"text",required:!0},{name:"stars",label:"Stars",type:"text",required:!0},{name:"review",label:"Review text",type:"textarea",required:!0},{name:"context",label:"Service context that night",type:"textarea",required:!1},{name:"sign_off",label:"Sign off (name + role)",type:"text",required:!0}],outputType:"message"},{name:"Roster cover hunt",category:"general",description:"Find a replacement when a staff member calls in sick mid-shift.",agentId:"people",promptTemplate:"Staff sick-call: {{name}} ({{role}}) for {{shift}}. Ping the approved-cover list (in priority order). Track responses. If no cover within 30min, escalate to manager. Draft both the cover-request message + the escalation message.",inputs:[{name:"name",label:"Staff member",type:"text",required:!0},{name:"role",label:"Role",type:"text",required:!0},{name:"shift",label:"Shift",type:"text",required:!0}],outputType:"message"},{name:"Supplier order — perishables",category:"general",description:"Draft this week's perishable supplier orders based on prep list + par stock.",agentId:"procurement",promptTemplate:"Generate this week's perishable orders: greengrocer (daily), butcher (Tue/Fri), seafood (Wed/Sat). Cross-check against today's prep list + walk-in stock + booking shape. Flag anything at end-of-life that should be used before reordering. Keep it lean — over-ordering perishables is the #1 food-cost killer.",inputs:[],outputType:"message"},{name:"Food-cost % drift weekly",category:"general",description:"Weekly food-cost percentage check across the menu.",agentId:"finance",promptTemplate:"Pull this week's food-cost percentage by menu category. Compare vs target (typical: 28-32%). Surface any dish whose ingredient cost has crept up enough to drop margin below threshold. Recommend: re-spec, re-price, or 86-permanent.",inputs:[],outputType:"message"}],ecommerce:[{name:"Cart-abandonment recovery sequence",category:"general",description:"Draft a 3-email cart-abandonment recovery sequence.",agentId:"email",promptTemplate:"New cart-abandon flow needed for {{collection}}. Brand voice: {{brand_voice}}. Draft 3 emails: T+1h (gentle reminder, no discount), T+24h (social proof + reassurance), T+72h (final, time-limited 10%). Subject under 50 chars. Plain-text fallback baked in. One CTA per email.",inputs:[{name:"collection",label:"Product collection",type:"text",required:!0},{name:"brand_voice",label:"Brand voice (sample)",type:"textarea",required:!0}],outputType:"message"},{name:"Order issue triage + reply",category:"general",description:"Triage an order issue (late / damaged / wrong item / fraud-flag) and draft the customer reply.",agentId:"cx",promptTemplate:"Order #{{order_id}}. Customer reports: {{issue}}. Order status from system: {{order_status}}. Triage: refund / replace / dispute / fraud-review. Draft the customer reply matching the brand voice. If fraud-flagged, surface to ops BEFORE replying.",inputs:[{name:"order_id",label:"Order #",type:"text",required:!0},{name:"issue",label:"What the customer reports",type:"textarea",required:!0},{name:"order_status",label:"Status from system",type:"textarea",required:!0}],outputType:"email"},{name:"Inventory restock trigger",category:"general",description:"When a SKU hits stockout-imminent, draft the reorder + supplier notification.",agentId:"ops",promptTemplate:"SKU {{sku}} ({{name}}) is {{days}} days from stockout at current sales velocity. Lead time from supplier {{supplier}}: {{lead_time}} days. Decide: reorder now, expedite, or accept a stockout window. If reorder: draft the supplier message with quantity + delivery date.",inputs:[{name:"sku",label:"SKU",type:"text",required:!0},{name:"name",label:"Product name",type:"text",required:!0},{name:"days",label:"Days to stockout",type:"text",required:!0},{name:"supplier",label:"Supplier",type:"text",required:!0},{name:"lead_time",label:"Lead time (days)",type:"text",required:!0}],outputType:"message"},{name:"Cohort + LTV monthly",category:"general",description:"Monthly cohort + LTV report by acquisition channel + first-product.",agentId:"data",promptTemplate:"Pull last 6 months of cohorts. Slice by: acquisition channel, first-product, AOV band. For each cohort: 1-month repeat rate, 6-month LTV, return rate. Surface declining segments + recommend either acquisition pause or retention experiment.",inputs:[],outputType:"message"},{name:"Negative review reply",category:"general",description:"Public reply to a negative product review without arguing.",agentId:"cx",promptTemplate:"Review on {{platform}} for {{product}}: {{stars}} stars. Text: {{review}}. Order context: {{order_context}}. Draft a public reply: thank them for the feedback, acknowledge the specific complaint, offer the fix in DMs (don't argue in public). Tone: brand voice, owner-grade.",inputs:[{name:"platform",label:"Platform",type:"text",required:!0},{name:"product",label:"Product",type:"text",required:!0},{name:"stars",label:"Stars",type:"text",required:!0},{name:"review",label:"Review text",type:"textarea",required:!0},{name:"order_context",label:"Order context",type:"textarea",required:!1}],outputType:"message"}],agencies:[{name:"Pipeline review weekly",category:"sales",description:"Weekly probability-weighted pipeline + drop-off flags.",agentId:"sales",promptTemplate:"Pull this week's pipeline. For each opportunity: stage, probability, expected close. Flag anything that hasn't moved in 14+ days. Surface the 3 deals at risk of going cold + recommend a specific next-touch per deal. End with: next month's pipeline confidence.",inputs:[],outputType:"message"},{name:"Project profitability check",category:"general",description:"Actual hours vs. quoted hours for active + recent projects, scope-creep flags.",agentId:"finance",promptTemplate:"Pull all active + last-30-day projects. Compare actual hours vs quoted hours. Flag: (1) any project at >100% of quoted, (2) any project with scope additions not captured in a change order, (3) any project where the gross margin is dropping below {{margin_floor}}%.",inputs:[{name:"margin_floor",label:"Margin floor %",type:"text",required:!1}],outputType:"message"},{name:"Client status digest",category:"general",description:"Weekly client-facing update: shipped, next, blocked.",agentId:"cx",promptTemplate:"Draft this week's client status email for {{client}}. Include: what shipped this week (3 bullets max), what's queued for next week (3 bullets), what's blocked + the unblock owner. Tone: peer-strategic, no boilerplate. End with one specific question for the client.",inputs:[{name:"client",label:"Client name",type:"text",required:!0}],outputType:"email"},{name:"Retainer renewal prep",category:"general",description:"60-day-out renewal prep: usage trends, contract terms, recommendation.",agentId:"sales",promptTemplate:"Retainer renewal for {{client}}: 60 days out. Pull usage trends (hours used vs contracted, last 6 months). Surface scope drift, satisfaction signals, expansion opportunities. Recommend: same retainer, scale up, scale down, or non-renewal — with one specific reason.",inputs:[{name:"client",label:"Client name",type:"text",required:!0}],outputType:"message"},{name:"Receivables chase",category:"general",description:"Overdue invoice escalation cadence, drafted with appropriate tone.",agentId:"finance",promptTemplate:"Invoice #{{invoice}} for {{client}} is {{days_overdue}} days overdue. Prior actions: {{prior_actions}}. Draft the next-step message at the appropriate escalation level: gentle reminder (≤14d), firm (15-30d), pause-new-work + escalation (>30d). Don't skip steps.",inputs:[{name:"invoice",label:"Invoice #",type:"text",required:!0},{name:"client",label:"Client",type:"text",required:!0},{name:"days_overdue",label:"Days overdue",type:"text",required:!0},{name:"prior_actions",label:"Prior chase actions",type:"textarea",required:!1}],outputType:"email"}],healthcare:[{name:"Appointment reminder cadence",category:"general",description:"Multi-channel reminder sequence (SMS/email) for upcoming appointments.",agentId:"cx",promptTemplate:"Generate the {{day}} reminder for patient (NO identifiable PHI in this draft — use [PATIENT] / [TIME] / [CLINICIAN] placeholders). Channel: SMS. Length: under 160 chars. Include: appointment time, location, reschedule link. NEVER include clinical details.",inputs:[{name:"day",label:"When the reminder fires (T-24h / T-2h)",type:"text",required:!0}],outputType:"message"},{name:"Recall-list outreach",category:"general",description:"Draft outreach for patients due for review (annual check, vaccination, hygiene).",agentId:"cx",promptTemplate:"Recall type: {{recall_type}}. Patients overdue: {{count}}. Draft the outreach message (SMS + email versions). Tone: reminder + benefit, not pressure. NO identifiable PHI in the draft template — use [PATIENT_FIRST_NAME] placeholder. Surface privacy-flag: patients who have opted out of recalls must be excluded by the operator BEFORE sending.",inputs:[{name:"recall_type",label:"Recall type",type:"text",required:!0},{name:"count",label:"Patients due",type:"text",required:!1}],outputType:"message"},{name:"Billing + claims daily check",category:"general",description:"Daily billing + Medicare/private-health claims submission status.",agentId:"finance",promptTemplate:"Pull yesterday's billing + claims state. Surface: items unbilled (overdue >24h), claims submitted vs. accepted, gap-payment notifications still pending, private-health rebate calculations needing review. Flag any item codes that look unusual for the clinician's specialty.",inputs:[],outputType:"message"},{name:"Complaint logging + triage",category:"general",description:"Log a complaint and route to the right pathway (clinical / administrative / serious adverse event).",agentId:"compliance",promptTemplate:"Complaint received: {{complaint}}. Channel: {{channel}}. Triage path: clinical (clinician review), administrative (practice manager), or serious-adverse-event (escalate per practice policy + regulatory notification path). Draft the acknowledgement to the complainant + the internal escalation note. Log to incident register regardless of path.",inputs:[{name:"complaint",label:"Complaint summary",type:"textarea",required:!0},{name:"channel",label:"How received",type:"text",required:!0}],outputType:"message"},{name:"Accreditation evidence pull",category:"general",description:"Pull evidence for an upcoming accreditation cycle (RACGP / AGPAL / specialty-college).",agentId:"compliance",promptTemplate:"Accreditation cycle: {{standard}}. Due: {{due_date}}. Pull evidence per standard: clinical governance records, training compliance, infection-control logs, complaint register, equipment calibration. Surface gaps with 6+ weeks runway. Recommend remediation owner per gap.",inputs:[{name:"standard",label:"Standard (RACGP / AGPAL / etc)",type:"text",required:!0},{name:"due_date",label:"Due date",type:"text",required:!0}],outputType:"message"}],general:[{name:"Daily ops brief",category:"general",description:"Morning brief synthesising inbox + approvals + last 24h activity.",agentId:"coo",promptTemplate:"Synthesise the daily ops brief: pending inbox count, pending approvals, last 24h agent activity, anything escalated. Keep it to 6 lines. End with the one thing I should do first today.",inputs:[],outputType:"message"},{name:"Customer-question reply",category:"general",description:"Triage and draft a reply to an inbound customer question.",agentId:"cx",promptTemplate:"Customer asked: {{question}}. Context: {{context}}. Triage: resolve, escalate to ops, escalate to finance, or escalate to delivery. Then draft the appropriate reply.",inputs:[{name:"question",label:"Customer question",type:"textarea",required:!0},{name:"context",label:"What we know about them",type:"textarea",required:!1}],outputType:"message"},{name:"Weekly metrics digest",category:"general",description:"Friday recap of the week's key business metrics.",agentId:"data",promptTemplate:"Pull this week's key metrics: revenue, runs completed, customer satisfaction signals, agent cost. Compare vs prior week. End with: 3 things to watch next week.",inputs:[],outputType:"message"}]},f="_Workflows";async function g(a){if(!await (0,d.xB)(a))return[];let b=await (0,d._T)(a,f,{extension:".md",limit:100});if(!b.ok)return[];let c=[];for(let e of b.entries){let b=await (0,d.zG)(a,e.relativePath);if(!b.ok)continue;let{frontmatter:f,body:g}=(0,d.yv)(b.body),h=String(f.id??"").trim(),i=String(f.name??"").trim(),j=String(f.agentId??"").trim();h&&i&&j&&g.trim()&&c.push({id:h,name:i,category:"string"==typeof f.category?f.category:"general",description:"string"==typeof f.description?f.description:"",agentId:j,promptTemplate:g.trim(),inputs:function(a){if(!a||"string"!=typeof a)return[];try{let b=JSON.parse(a);if(!Array.isArray(b))return[];return b.filter(a=>a&&"object"==typeof a&&"string"==typeof a.name&&"string"==typeof a.label&&"string"==typeof a.type)}catch{return[]}}(f.inputs),outputType:"string"==typeof f.outputType?f.outputType:"message"})}return c}async function h(a,b,c="industry-seeded"){if(!await (0,d.xB)(a))return{ok:!1,error:`No brain for ${a} — provision via bin/onboard-customer.sh first.`};let e={id:b.id,name:b.name,category:b.category,description:b.description,agentId:b.agentId,inputs:JSON.stringify(b.inputs),outputType:b.outputType,source:c,created:(0,d.st)()},g=b.promptTemplate.trim()+"\n",i=(0,d.nj)(e,g),j=(0,d.B0)(b.name)||"untitled",k=await (0,d.mx)(a,`${f}/${j}.md`,i);return k.ok?{ok:!0,path:k.path}:{ok:!1,error:k.error}}async function i(a,b){let c=b?e[b.toLowerCase()]??e.general:e.general,g=0,i=0,j=[];for(let b of c){let c=(0,d.B0)(b.name)||"untitled",e=`${f}/${c}.md`,k=await (0,d.zG)(a,e);if(k.ok){let{frontmatter:a}=(0,d.yv)(k.body);if("user-saved"===("string"==typeof a.source?a.source:null)){i++;continue}}let l=`seed-${c}`,m={...b,id:l},n=await h(a,m,"regenerated");n.ok?g++:(i++,j.push(`${b.name}: ${n.error}`))}return{ok:!0,written:g,skipped:i,errors:j}}},7506:(a,b,c)=>{"use strict";c.d(b,{sb:()=>j});var d=c(73024),e=c(76760),f=c.n(e),g=c(57477);let h=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,i=/^[a-z][a-z0-9_]{1,40}\.[a-z][a-z0-9_]{1,40}$/;async function j(a){try{if(!h.test(a.clientId))return{ok:!1,error:`Invalid clientId: ${a.clientId}`};if(!i.test(a.agent))return{ok:!1,error:`Invalid agent format: ${a.agent} (expected agent.tool)`};if(!await (0,g.xB)(a.clientId))return{ok:!1,error:`No brain for ${a.clientId} — audit not written`};let b={...a,inputSummary:function(a){if(!a)return;let b={};for(let[c,d]of Object.entries(a))"string"==typeof d?b[c]=d.length>200?`${d.slice(0,200)}…[+${d.length-200} chars]`:d:"number"==typeof d||"boolean"==typeof d||null===d?b[c]=d:Array.isArray(d)?b[c]=`[array length=${d.length}]`:"object"==typeof d?b[c]=`[object keys=${Object.keys(d).length}]`:b[c]=`[${typeof d}]`;return b}(a.inputSummary)},c=function(a,b){let c=`${b.getUTCFullYear()}-${String(b.getUTCMonth()+1).padStart(2,"0")}`;return f().join((0,g.Ip)(a),"_inbox",`audit-${c}.jsonl`)}(a.clientId,new Date(a.ts));await d.promises.mkdir(f().dirname(c),{recursive:!0});let e=JSON.stringify(b)+"\n";return await d.promises.appendFile(c,e,"utf8"),{ok:!0,path:c,bytes:Buffer.byteLength(e,"utf8")}}catch(a){return{ok:!1,error:a.message}}}},57477:(a,b,c)=>{"use strict";c.d(b,{B0:()=>t,Ip:()=>k,T8:()=>q,_T:()=>p,dR:()=>r,mx:()=>o,nj:()=>v,st:()=>s,xB:()=>l,yv:()=>u,zG:()=>n,zY:()=>w});var d=c(73024),e=c(76760),f=c.n(e),g=c(48161),h=c.n(g);let i=/^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$/,j=["_inbox/","_Workflows/","00_Org/","01_Customers/","02_Sales/","03_Product/","04_Operations/","05_Finance/","06_Legal/","Permanent/","Wiki/"];function k(a){if(!i.test(a))throw Error(`Invalid clientId: ${a}`);return f().join(process.env.LEEDAB_BRAINS_ROOT?f().resolve(process.env.LEEDAB_BRAINS_ROOT):f().resolve(h().homedir(),"leedab-brains"),a)}async function l(a){try{return(await d.promises.stat(k(a))).isDirectory()}catch{return!1}}function m(a,b){if(b.includes("..")||f().isAbsolute(b))throw Error(`Refused: path contains traversal or is absolute: ${b}`);if(!j.some(a=>b.startsWith(a)))throw Error(`Refused: path "${b}" doesn't start with an allowed prefix (${j.join(", ")})`);let c=k(a),d=f().resolve(c,b);if(!d.startsWith(c+f().sep))throw Error(`Refused: path resolves outside brain root: ${b}`);return d}async function n(a,b){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let c=m(a,b),e=await d.promises.readFile(c,"utf8");return{ok:!0,body:e,path:c}}catch(a){return{ok:!1,error:a.message}}}async function o(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);return await d.promises.mkdir(f().dirname(e),{recursive:!0}),await d.promises.writeFile(e,c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}async function p(a,b,c={}){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}.`};let e=b.endsWith("/")?b:b+"/",g=m(a,e+"__list_sentinel__"),h=f().dirname(g),i=[];try{i=await d.promises.readdir(h)}catch{return{ok:!0,entries:[]}}let j=c.extension??".md",n=c.sinceISO?Date.parse(c.sinceISO):0,o=[];for(let a of i){if(j&&!a.endsWith(j))continue;let b=f().join(h,a),c=await d.promises.stat(b);c.isFile()&&(n&&c.mtimeMs<n||o.push({relativePath:e+a,absolutePath:b,bytes:c.size,modifiedISO:new Date(c.mtimeMs).toISOString()}))}return o.sort((a,b)=>Date.parse(b.modifiedISO)-Date.parse(a.modifiedISO)),{ok:!0,entries:c.limit?o.slice(0,c.limit):o}}catch(a){return{ok:!1,error:a.message}}}async function q(a,b,c){try{if(!await l(a))return{ok:!1,error:`No brain at ${k(a)}. Run bin/onboard-customer.sh first.`};let e=m(a,b);await d.promises.mkdir(f().dirname(e),{recursive:!0});let g="";try{let a=await d.promises.readFile(e,"utf8");a.length>0&&!a.endsWith("\n")&&(g="\n")}catch{}return await d.promises.appendFile(e,g+c,"utf8"),{ok:!0,path:e,bytes:Buffer.byteLength(g+c,"utf8")}}catch(a){return{ok:!1,error:a.message}}}function r(){return new Date().toISOString().slice(0,10)}function s(){return new Date().toISOString()}function t(a){return a.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,60)}function u(a){if(!a.startsWith("---\n")&&!a.startsWith("---\r\n"))return{frontmatter:{},body:a};let b=a.indexOf("\n---",4);if(-1===b)return{frontmatter:{},body:a};let c=a.slice(4,b),d=a.slice(b+4).replace(/^\r?\n/,""),e={},f=null,g=[],h=()=>{null!==f&&(e[f]=[...g],g.length=0,f=null)};for(let a of c.split(/\r?\n/)){if(""===a.trim())continue;let b=a.match(/^\s*-\s+(.*)$/);if(b&&null!==f){let a=b[1].trim(),c=a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'")?a.slice(1,-1):a;g.push(c);continue}let c=a.match(/^([A-Za-z0-9_\-.]+)\s*:\s*(.*)$/);if(c){h();let a=c[1],b=c[2];if(""===b){f=a;continue}e[a]=function(a){let b=a.trim();if(""===b||"null"===b||"~"===b)return null;if("true"===b)return!0;if("false"===b)return!1;if(b.startsWith('"')&&b.endsWith('"'))return b.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\");if(b.startsWith("'")&&b.endsWith("'"))return b.slice(1,-1).replace(/\\'/g,"'");if(b.startsWith("[")&&b.endsWith("]")){let a=b.slice(1,-1).trim();return a?a.split(/\s*,\s*/).map(a=>{let b=a.trim();return b.startsWith('"')&&b.endsWith('"')||b.startsWith("'")&&b.endsWith("'")?b.slice(1,-1):b}):[]}return/^-?\d+$/.test(b)||/^-?\d*\.\d+$/.test(b)?Number(b):b}(b)}}return h(),{frontmatter:e,body:d}}function v(a,b){let c=Object.keys(a);if(0===c.length)return b.startsWith("---"),b;let d=["---"];for(let b of c){var e;d.push(`${b}: ${null===(e=a[b])?"null":"boolean"==typeof e||"number"==typeof e?String(e):Array.isArray(e)?"["+e.map(a=>/[,\s:#]/.test(a)?`"${a.replace(/"/g,'\\"')}"`:a).join(", ")+"]":""===e||/^[\d\s]/.test(e)||/[:#\n"']/.test(e)||"true"===e||"false"===e||"null"===e||"~"===e?`"${e.replace(/"/g,'\\"')}"`:e}`)}return d.push("---",""),d.join("\n")+b.replace(/^\n+/,"")}function w(a){if(!a||"object"!=typeof a||Array.isArray(a))return{ok:!1,error:"patch must be a flat object"};let b={};for(let[c,d]of Object.entries(a)){if(!/^[A-Za-z0-9_\-.]+$/.test(c))return{ok:!1,error:`invalid frontmatter key "${c}" (allowed: letters / digits / _ - .)`};if(null===d||"string"==typeof d||"number"==typeof d||"boolean"==typeof d)b[c]=d;else{if(!(Array.isArray(d)&&d.every(a=>"string"==typeof a)))return{ok:!1,error:`value for "${c}" must be string / number / boolean / null / string[] — got ${typeof d}`};b[c]=d}}return{ok:!0,patch:b}}},78335:()=>{},88732:(a,b,c)=>{"use strict";c.d(b,{GK:()=>i});var d=c(10641),e=c(73024),f=c(76760),g=c(48161);let h=(0,f.resolve)((0,g.homedir)(),".leedab","admin-token");function i(a){let b=function(a,b){let c=b??process.env.LEEDAB_ADMIN_TOKEN;return c?a!==c?{ok:!1,status:401,error:"admin_required",message:"Missing or invalid x-leedab-admin-token header."}:{ok:!0}:{ok:!1,status:503,error:"admin_not_configured",message:"Set LEEDAB_ADMIN_TOKEN in the console env (e.g. `openssl rand -hex 32`) and pass it as the x-leedab-admin-token header."}}(a.headers.get("x-leedab-admin-token"),function(){let a=process.env.LEEDAB_ADMIN_TOKEN?.trim();if(a)return a;try{let a=(0,e.statSync)(h);if((63&a.mode)!=0)return;return(0,e.readFileSync)(h,"utf-8").trim()||void 0}catch{return}}());return b.ok?null:d.NextResponse.json({error:b.error,message:b.message},{status:b.status})}},96487:()=>{}};