leedab 0.5.3 → 0.6.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.
- package/README.md +7 -2
- package/_schema/customer-brain-template/01_Customers/engagement.md +42 -0
- package/_schema/customer-brain-template/01_Customers/qbr-template.md +49 -0
- package/_schema/customer-brain-template/02_Sales/pipeline.md +43 -0
- package/_schema/customer-brain-template/04_Operations/runbook.md +54 -0
- package/_schema/customer-brain-template/05_Finance/runway-snapshot.md +40 -0
- package/_schema/customer-brain-template/CLAUDE.md +66 -0
- package/_schema/customer-brain-template/README.md +43 -0
- package/_schema/customer-brain-template/_inbox/champion-day-0.md +69 -0
- package/_schema/customer-brain-template/_inbox/weekly-digest-template.md +53 -0
- package/_schema/customer-brain-template/_templates/customer.md +33 -0
- package/_schema/customer-brain-template/_templates/decision.md +30 -0
- package/agents/INDEX.md +151 -0
- package/agents/automation-agent.md +199 -0
- package/agents/backend-agent.md +104 -0
- package/agents/brand-agent.md +130 -0
- package/agents/campaigns-agent.md +98 -0
- package/agents/champion-agent.md +123 -0
- package/agents/compliance-agent.md +124 -0
- package/agents/concierge-agent.md +120 -0
- package/agents/content-agent.md +98 -0
- package/agents/coo-agent.md +191 -0
- package/agents/cx-agent.md +85 -0
- package/agents/data-agent.md +129 -0
- package/agents/delivery-agent.md +154 -0
- package/agents/devops-agent.md +117 -0
- package/agents/email-agent.md +114 -0
- package/agents/engineering-agent.md +136 -0
- package/agents/finance-agent.md +94 -0
- package/agents/frontend-agent.md +98 -0
- package/agents/implementation-agent.md +130 -0
- package/agents/investor-agent.md +127 -0
- package/agents/legal-agent.md +109 -0
- package/agents/marketing-agent.md +91 -0
- package/agents/onboarding-agent.md +122 -0
- package/agents/ops-agent.md +92 -0
- package/agents/people-agent.md +127 -0
- package/agents/procurement-agent.md +147 -0
- package/agents/product-agent.md +133 -0
- package/agents/research-agent.md +147 -0
- package/agents/sales-agent.md +112 -0
- package/agents/solutions-agent.md +111 -0
- package/agents/strategy-agent.md +107 -0
- package/agents/video-agent.md +94 -0
- package/apps/console/.next/standalone/.next/BUILD_ID +1 -1
- package/apps/console/.next/standalone/.next/app-build-manifest.json +542 -143
- package/apps/console/.next/standalone/.next/app-path-routes-manifest.json +77 -19
- package/apps/console/.next/standalone/.next/build-manifest.json +8 -8
- package/apps/console/.next/standalone/.next/prerender-manifest.json +39 -10
- package/apps/console/.next/standalone/.next/required-server-files.json +4 -0
- package/apps/console/.next/standalone/.next/routes-manifest.json +44 -0
- package/apps/console/.next/standalone/.next/server/app/_not-found/page.js +2 -2
- package/apps/console/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/apps/console/.next/standalone/.next/server/app/_not-found.rsc +8 -4
- package/apps/console/.next/standalone/.next/server/app/api/agent/route.js +2 -2
- package/apps/console/.next/standalone/.next/server/app/api/agent/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/agent/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/approvals/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/approvals/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/approvals/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/approvals/stream/route.js +2 -2
- package/apps/console/.next/standalone/.next/server/app/api/approvals/stream/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/approvals/stream/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/automation/workflow-blueprint/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/automation/workflow-blueprint/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/automation/workflow-blueprint/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/backend/endpoint-spec/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/backend/endpoint-spec/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/backend/endpoint-spec/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/bootstrap-admin-token/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/bootstrap-admin-token/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/bootstrap-admin-token/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/brand/brand-audit/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/brand/brand-audit/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/brand/brand-audit/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/campaigns/campaign-brief/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/campaigns/campaign-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/campaigns/campaign-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/confidence/route.js +3 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/confidence/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/confidence/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/customer/route.js +3 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/customer/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/customer/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/dispatches/route.js +3 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/dispatches/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/dispatches/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/engagement/route.js +3 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/engagement/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/engagement/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/escalate/route.js +11 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/escalate/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/escalate/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/profile/route.js +4 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/profile/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/profile/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/screenshare/route.js +36 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/screenshare/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/screenshare/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/track-question/route.js +2 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/track-question/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/track-question/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/use-case-wiki/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/use-case-wiki/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/champion/use-case-wiki/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/chat/route.js +2 -2
- package/apps/console/.next/standalone/.next/server/app/api/chat/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/chat/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/compliance/risk-register-seed/route.js +33 -0
- package/apps/console/.next/standalone/.next/server/app/api/compliance/risk-register-seed/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/compliance/risk-register-seed/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/computer-use/[id]/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/computer-use/[id]/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/computer-use/[id]/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/computer-use/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/computer-use/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/computer-use/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/concierge/morning-brief/route.js +3 -0
- package/apps/console/.next/standalone/.next/server/app/api/concierge/morning-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/concierge/morning-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/contacts/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/contacts/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/contacts/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/content/seo-brief/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/content/seo-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/content/seo-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/conversations/route.js +3 -9
- package/apps/console/.next/standalone/.next/server/app/api/conversations/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/conversations/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/coo/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/coo/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/coo/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/cx/escalation-triage/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/cx/escalation-triage/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/cx/escalation-triage/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/cx/health-score/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/cx/health-score/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/cx/health-score/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/data/cohort-brief/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/data/cohort-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/data/cohort-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/delivery/qbr-brief/route.js +57 -0
- package/apps/console/.next/standalone/.next/server/app/api/delivery/qbr-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/delivery/qbr-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/delivery/weekly-brief/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/delivery/weekly-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/delivery/weekly-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/dev/invalidate-cache/route.js +3 -0
- package/apps/console/.next/standalone/.next/server/app/api/dev/invalidate-cache/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/dev/invalidate-cache/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/devops/runbook/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/devops/runbook/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/devops/runbook/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/email/sequence-brief/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/email/sequence-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/email/sequence-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/engineering/adr-draft/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/engineering/adr-draft/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/engineering/adr-draft/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/finance/runway-snapshot/route.js +49 -0
- package/apps/console/.next/standalone/.next/server/app/api/finance/runway-snapshot/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/finance/runway-snapshot/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/frontend/component-spec/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/frontend/component-spec/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/frontend/component-spec/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/health/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/health/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/implementation/brief/route.js +79 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-migration-script/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-migration-script/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-migration-script/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-n8n-workflow/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-n8n-workflow/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-n8n-workflow/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-skill-override/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-skill-override/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/implementation/scaffold-skill-override/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/inbox/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/inbox/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/inbox/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/inbox/stream/route.js +2 -2
- package/apps/console/.next/standalone/.next/server/app/api/inbox/stream/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/inbox/stream/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/investor/kpi-tracker/route.js +59 -0
- package/apps/console/.next/standalone/.next/server/app/api/investor/kpi-tracker/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/investor/kpi-tracker/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/status/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/status/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/telegram/connect/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/telegram/connect/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/whatsapp/connect/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/channels/whatsapp/connect/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/leads/[id]/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/leads/[id]/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/leads/[id]/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/leads/[id]/status/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/leads/[id]/status/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/leads/[id]/status/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/templates/[name]/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/templates/[name]/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/leedab/gtm/templates/[name]/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/leedab/license/route.js +3 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/license/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/providers/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/providers/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/sessions/[id]/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/sessions/[id]/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/sessions/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/sessions/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/team/[id]/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/team/[id]/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/team/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/team/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/vault/route.js +2 -2
- package/apps/console/.next/standalone/.next/server/app/api/leedab/vault/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/workflows/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/leedab/workflows/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/legal/clause-template/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/legal/clause-template/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/legal/clause-template/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/marketing/cadence-planner/route.js +35 -0
- package/apps/console/.next/standalone/.next/server/app/api/marketing/cadence-planner/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/marketing/cadence-planner/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/marketing/competitive-snapshot/route.js +18 -0
- package/apps/console/.next/standalone/.next/server/app/api/marketing/competitive-snapshot/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/marketing/competitive-snapshot/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/onboarding/engagement-plan/route.js +17 -0
- package/apps/console/.next/standalone/.next/server/app/api/onboarding/engagement-plan/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/onboarding/engagement-plan/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/onboarding/kickoff-brief/route.js +63 -0
- package/apps/console/.next/standalone/.next/server/app/api/onboarding/kickoff-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/onboarding/kickoff-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/openclaw/status/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/openclaw/status/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/ops/dispatch-brief/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/ops/dispatch-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/ops/dispatch-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/pack/route.js +3 -31
- package/apps/console/.next/standalone/.next/server/app/api/pack/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/pack/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/people/job-brief/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/people/job-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/people/job-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/preferences/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/preferences/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/preferences/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/procurement/po-brief/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/procurement/po-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/procurement/po-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/product/prd-draft/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/product/prd-draft/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/product/prd-draft/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/research/prospect-intel/route.js +15 -0
- package/apps/console/.next/standalone/.next/server/app/api/research/prospect-intel/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/research/prospect-intel/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/research/search/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/research/search/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/research/search/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/routing/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/routing/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/routing/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/runs/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/runs/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/runs/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/sales/pipeline-summary/route.js +63 -0
- package/apps/console/.next/standalone/.next/server/app/api/sales/pipeline-summary/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/sales/pipeline-summary/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/sales/prospect-brief/route.js +6 -0
- package/apps/console/.next/standalone/.next/server/app/api/sales/prospect-brief/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/sales/prospect-brief/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/solutions/build/route.js +66 -0
- package/apps/console/.next/standalone/.next/server/app/api/solutions/build/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/solutions/build/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/solutions/quickstart-regenerate/route.js +3 -0
- package/apps/console/.next/standalone/.next/server/app/api/solutions/quickstart-regenerate/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/solutions/quickstart-regenerate/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/solutions/refine/route.js +22 -0
- package/apps/console/.next/standalone/.next/server/app/api/solutions/refine/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/solutions/refine/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/strategy/market-pulse/route.js +17 -0
- package/apps/console/.next/standalone/.next/server/app/api/strategy/market-pulse/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/strategy/market-pulse/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/telegram/[customerId]/route.js +61 -0
- package/apps/console/.next/standalone/.next/server/app/api/telegram/[customerId]/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/telegram/[customerId]/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/templates/regenerate/route.js +23 -0
- package/apps/console/.next/standalone/.next/server/app/api/templates/regenerate/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/templates/regenerate/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/templates/route.js +1 -31
- package/apps/console/.next/standalone/.next/server/app/api/templates/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/uploads/[id]/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/uploads/[id]/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/uploads/[id]/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/uploads/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/uploads/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/uploads/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/usage/route.js +3 -9
- package/apps/console/.next/standalone/.next/server/app/api/usage/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/usage/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/video/video-script/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/video/video-script/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/video/video-script/route_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/api/webhooks/workflow/[id]/route.js +3 -1
- package/apps/console/.next/standalone/.next/server/app/api/webhooks/workflow/[id]/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/webhooks/workflow/[id]/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/history/[runId]/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/history/[runId]/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/history/[runId]/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/history/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/history/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/history/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/route.js +3 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/run/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/run/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/[id]/run/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/route.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/api/workflows/route_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/apple-icon.png/route.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/apple-icon.png/route.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/apple-icon.png.body +0 -0
- package/apps/console/.next/standalone/.next/server/app/apple-icon.png.meta +1 -0
- package/apps/console/.next/standalone/.next/server/app/gtm/page.js +2 -0
- package/apps/console/.next/standalone/.next/server/app/gtm/page.js.nft.json +1 -0
- package/apps/console/.next/standalone/.next/server/app/gtm/page_client-reference-manifest.js +1 -0
- package/apps/console/.next/standalone/.next/server/app/icon.png/route.js +1 -1
- package/apps/console/.next/standalone/.next/server/app/index.html +1 -1
- package/apps/console/.next/standalone/.next/server/app/index.rsc +9 -5
- package/apps/console/.next/standalone/.next/server/app/page.js +5 -2
- package/apps/console/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/apps/console/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/app-paths-manifest.json +77 -19
- package/apps/console/.next/standalone/.next/server/chunks/1372.js +9 -0
- package/apps/console/.next/standalone/.next/server/chunks/1558.js +38 -0
- package/apps/console/.next/standalone/.next/server/chunks/1692.js +1 -1
- package/apps/console/.next/standalone/.next/server/chunks/4768.js +17 -0
- package/apps/console/.next/standalone/.next/server/chunks/5611.js +3 -3
- package/apps/console/.next/standalone/.next/server/chunks/5670.js +3 -0
- package/apps/console/.next/standalone/.next/server/chunks/5873.js +10 -10
- package/apps/console/.next/standalone/.next/server/chunks/6150.js +22 -0
- package/apps/console/.next/standalone/.next/server/chunks/6235.js +9 -0
- package/apps/console/.next/standalone/.next/server/chunks/6255.js +1 -0
- package/apps/console/.next/standalone/.next/server/chunks/697.js +19 -0
- package/apps/console/.next/standalone/.next/server/chunks/7087.js +1 -9
- package/apps/console/.next/standalone/.next/server/chunks/7242.js +28 -0
- package/apps/console/.next/standalone/.next/server/chunks/7907.js +86 -0
- package/apps/console/.next/standalone/.next/server/chunks/854.js +1287 -0
- package/apps/console/.next/standalone/.next/server/chunks/897.js +3 -0
- package/apps/console/.next/standalone/.next/server/functions-config-manifest.json +73 -17
- package/apps/console/.next/standalone/.next/server/instrumentation.js +1 -1
- package/apps/console/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/next-font-manifest.js +1 -1
- package/apps/console/.next/standalone/.next/server/next-font-manifest.json +1 -1
- package/apps/console/.next/standalone/.next/server/pages/404.html +1 -1
- package/apps/console/.next/standalone/.next/server/pages/500.html +1 -1
- package/apps/console/.next/standalone/.next/server/pages/_app.js +1 -1
- package/apps/console/.next/standalone/.next/server/pages/_document.js +1 -1
- package/apps/console/.next/standalone/.next/server/pages/_error.js +3 -3
- package/apps/console/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/apps/console/.next/standalone/.next/static/cSGyydhlqn2VGaYXt0uuW/_buildManifest.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/1255-b28ea36bf0cdbd65.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/8118-681f2688832ccc66.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/agent/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/stream/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/automation/workflow-blueprint/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/backend/endpoint-spec/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/bootstrap-admin-token/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/brand/brand-audit/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/campaigns/campaign-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/confidence/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/customer/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/dispatches/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/engagement/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/escalate/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/profile/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/screenshare/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/track-question/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/champion/use-case-wiki/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/chat/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/compliance/risk-register-seed/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/concierge/morning-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/contacts/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/content/seo-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/conversations/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/coo/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/cx/escalation-triage/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/cx/health-score/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/data/cohort-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/delivery/qbr-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/delivery/weekly-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/dev/invalidate-cache/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/devops/runbook/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/email/sequence-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/engineering/adr-draft/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/finance/runway-snapshot/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/frontend/component-spec/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/health/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-migration-script/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-n8n-workflow/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/implementation/scaffold-skill-override/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/stream/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/investor/kpi-tracker/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/status/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/leads/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/leads/[id]/status/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/gtm/templates/[name]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/license/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/providers/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/vault/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/workflows/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/legal/clause-template/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/marketing/cadence-planner/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/marketing/competitive-snapshot/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/onboarding/engagement-plan/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/onboarding/kickoff-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/openclaw/status/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/ops/dispatch-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/pack/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/people/job-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/preferences/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/procurement/po-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/product/prd-draft/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/research/prospect-intel/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/research/search/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/routing/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/runs/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/sales/pipeline-summary/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/sales/prospect-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/build/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/quickstart-regenerate/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/solutions/refine/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/strategy/market-pulse/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/telegram/[customerId]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/regenerate/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/usage/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/video/video-script/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/webhooks/workflow/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/run/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/gtm/page-caca5eaacd3c81f2.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/layout-bd27cc63fde6b953.js +1 -0
- package/apps/console/.next/standalone/.next/static/chunks/app/page-01558715b1be9361.js +1 -0
- package/apps/console/.next/{static/chunks/main-48aa5dd07474f897.js → standalone/.next/static/chunks/main-d8fbd90b2bd781f8.js} +1 -1
- package/apps/console/.next/standalone/.next/static/chunks/{webpack-cdf4ab3c7a3034db.js → webpack-43f535d639053361.js} +1 -1
- package/apps/console/.next/standalone/.next/static/css/4bdbd0680d42c54d.css +3 -0
- package/apps/console/.next/standalone/.next/static/media/0f1bdadaf30e2d5f-s.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/22a5144ee8d83bca-s.p.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/2c34d62a75506231-s.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/35f3de0ebb1cfc70-s.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/5ece437c7024c161-s.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/601f5c280d60caca-s.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/9766a7e9e2e0ad5a-s.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/9cc5b37ab1350db7-s.p.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/a115172161b307bb-s.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/aa016aab0e6d1295-s.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/b66cf8e69499582a-s.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/d100b2a099e34044-s.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/e6099e249fd938cc-s.p.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/f5271587012faf78-s.p.woff2 +0 -0
- package/apps/console/.next/standalone/.next/static/media/f639721981034f88-s.woff2 +0 -0
- package/apps/console/.next/standalone/data/conversations/coo.json +116 -1
- package/apps/console/.next/standalone/data/conversations/procurement.json +33 -1
- package/apps/console/.next/standalone/data/uploads/316e1ef7-870d-4666-93fa-e439548fc0b6.pdf +0 -0
- package/apps/console/.next/standalone/data/uploads/_index.json +11 -0
- package/apps/console/.next/standalone/data/usage.json +81 -0
- package/apps/console/.next/standalone/node_modules/@next/env/package.json +1 -1
- package/apps/console/.next/standalone/node_modules/next/dist/build/analysis/get-page-static-info.js +12 -1
- package/apps/console/.next/standalone/node_modules/next/dist/build/next-config-ts/transpile-config.js +2 -1
- package/apps/console/.next/standalone/node_modules/next/dist/build/swc/index.js +1 -1
- package/apps/console/.next/standalone/node_modules/next/dist/build/webpack-config.js +2 -2
- package/apps/console/.next/standalone/node_modules/next/dist/client/components/router-reducer/fetch-server-response.js +2 -2
- package/apps/console/.next/standalone/node_modules/next/dist/client/components/router-reducer/set-cache-busting-search-param.js +9 -2
- package/apps/console/.next/standalone/node_modules/next/dist/client/script.js +5 -4
- package/apps/console/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-experimental.runtime.prod.js +11 -11
- package/apps/console/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +11 -11
- package/apps/console/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +13 -13
- package/apps/console/.next/standalone/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js +9 -9
- package/apps/console/.next/standalone/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js +2 -2
- package/apps/console/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +5 -5
- package/apps/console/.next/standalone/node_modules/next/dist/compiled/next-server/pages.runtime.prod.js +3 -3
- package/apps/console/.next/standalone/node_modules/next/dist/lib/typescript/required-packages.js +40 -0
- package/apps/console/.next/standalone/node_modules/next/dist/lib/verify-typescript-setup.js +7 -2
- package/apps/console/.next/standalone/node_modules/next/dist/pages/_document.js +1 -1
- package/apps/console/.next/standalone/node_modules/next/dist/server/app-render/action-handler.js +3 -6
- package/apps/console/.next/standalone/node_modules/next/dist/server/app-render/app-render.js +2 -1
- package/apps/console/.next/standalone/node_modules/next/dist/server/app-render/get-script-nonce-from-header.js +8 -20
- package/apps/console/.next/standalone/node_modules/next/dist/server/app-render/metadata-insertion/create-server-inserted-metadata.js +8 -7
- package/apps/console/.next/standalone/node_modules/next/dist/server/app-render/use-flight-response.js +2 -2
- package/apps/console/.next/standalone/node_modules/next/dist/server/base-server.js +12 -4
- package/apps/console/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +1 -1
- package/apps/console/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
- package/apps/console/.next/standalone/node_modules/next/dist/server/image-optimizer.js +22 -2
- package/apps/console/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
- package/apps/console/.next/standalone/node_modules/next/dist/server/lib/is-rsc-request.js +18 -0
- package/apps/console/.next/standalone/node_modules/next/dist/server/lib/mock-request.js +30 -5
- package/apps/console/.next/standalone/node_modules/next/dist/server/lib/router-server.js +6 -3
- package/apps/console/.next/standalone/node_modules/next/dist/server/lib/router-utils/resolve-routes.js +18 -4
- package/apps/console/.next/standalone/node_modules/next/dist/server/lib/server-ipc/utils.js +4 -1
- package/apps/console/.next/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
- package/apps/console/.next/standalone/node_modules/next/dist/server/next-server.js +2 -1
- package/apps/console/.next/standalone/node_modules/next/dist/server/route-modules/route-module.js +9 -3
- package/apps/console/.next/standalone/node_modules/next/dist/server/web/adapter.js +2 -1
- package/apps/console/.next/standalone/node_modules/next/dist/shared/lib/canary-only.js +1 -1
- package/apps/console/.next/standalone/node_modules/next/dist/{server → shared/lib}/htmlescape.js +15 -0
- package/apps/console/.next/standalone/node_modules/next/dist/shared/lib/router/utils/cache-busting-search-param.js +56 -10
- package/apps/console/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
- package/apps/console/.next/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
- package/apps/console/.next/standalone/node_modules/next/package.json +15 -15
- package/apps/console/.next/standalone/package.json +6 -0
- package/apps/console/.next/standalone/server.js +1 -1
- package/apps/console/.next/static/cSGyydhlqn2VGaYXt0uuW/_buildManifest.js +1 -0
- package/apps/console/.next/static/chunks/1255-b28ea36bf0cdbd65.js +1 -0
- package/apps/console/.next/static/chunks/8118-681f2688832ccc66.js +1 -0
- package/apps/console/.next/static/chunks/app/api/agent/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/approvals/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/approvals/stream/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/automation/workflow-blueprint/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/backend/endpoint-spec/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/bootstrap-admin-token/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/brand/brand-audit/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/campaigns/campaign-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/champion/confidence/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/champion/customer/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/champion/dispatches/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/champion/engagement/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/champion/escalate/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/champion/profile/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/champion/screenshare/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/champion/track-question/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/champion/use-case-wiki/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/chat/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/compliance/risk-register-seed/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/computer-use/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/computer-use/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/concierge/morning-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/contacts/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/content/seo-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/conversations/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/coo/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/cx/escalation-triage/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/cx/health-score/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/data/cohort-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/delivery/qbr-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/delivery/weekly-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/dev/invalidate-cache/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/devops/runbook/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/email/sequence-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/engineering/adr-draft/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/finance/runway-snapshot/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/frontend/component-spec/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/health/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/implementation/brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/implementation/scaffold-migration-script/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/implementation/scaffold-n8n-workflow/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/implementation/scaffold-skill-override/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/inbox/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/inbox/stream/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/investor/kpi-tracker/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/channels/status/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/gtm/leads/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/gtm/leads/[id]/status/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/gtm/templates/[name]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/license/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/providers/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/sessions/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/sessions/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/team/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/team/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/vault/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/leedab/workflows/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/legal/clause-template/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/marketing/cadence-planner/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/marketing/competitive-snapshot/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/onboarding/engagement-plan/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/onboarding/kickoff-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/openclaw/status/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/ops/dispatch-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/pack/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/people/job-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/preferences/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/procurement/po-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/product/prd-draft/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/research/prospect-intel/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/research/search/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/routing/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/runs/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/sales/pipeline-summary/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/sales/prospect-brief/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/solutions/build/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/solutions/quickstart-regenerate/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/solutions/refine/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/strategy/market-pulse/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/telegram/[customerId]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/templates/regenerate/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/templates/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/uploads/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/uploads/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/usage/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/video/video-script/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/webhooks/workflow/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/workflows/[id]/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/workflows/[id]/run/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/api/workflows/route-4178c1913c80eb12.js +1 -0
- package/apps/console/.next/static/chunks/app/gtm/page-caca5eaacd3c81f2.js +1 -0
- package/apps/console/.next/static/chunks/app/layout-bd27cc63fde6b953.js +1 -0
- package/apps/console/.next/static/chunks/app/page-01558715b1be9361.js +1 -0
- package/apps/console/.next/{standalone/.next/static/chunks/main-48aa5dd07474f897.js → static/chunks/main-d8fbd90b2bd781f8.js} +1 -1
- package/apps/console/.next/static/chunks/{webpack-cdf4ab3c7a3034db.js → webpack-43f535d639053361.js} +1 -1
- package/apps/console/.next/static/css/4bdbd0680d42c54d.css +3 -0
- package/apps/console/.next/static/media/0f1bdadaf30e2d5f-s.woff2 +0 -0
- package/apps/console/.next/static/media/22a5144ee8d83bca-s.p.woff2 +0 -0
- package/apps/console/.next/static/media/2c34d62a75506231-s.woff2 +0 -0
- package/apps/console/.next/static/media/35f3de0ebb1cfc70-s.woff2 +0 -0
- package/apps/console/.next/static/media/5ece437c7024c161-s.woff2 +0 -0
- package/apps/console/.next/static/media/601f5c280d60caca-s.woff2 +0 -0
- package/apps/console/.next/static/media/9766a7e9e2e0ad5a-s.woff2 +0 -0
- package/apps/console/.next/static/media/9cc5b37ab1350db7-s.p.woff2 +0 -0
- package/apps/console/.next/static/media/a115172161b307bb-s.woff2 +0 -0
- package/apps/console/.next/static/media/aa016aab0e6d1295-s.woff2 +0 -0
- package/apps/console/.next/static/media/b66cf8e69499582a-s.woff2 +0 -0
- package/apps/console/.next/static/media/d100b2a099e34044-s.woff2 +0 -0
- package/apps/console/.next/static/media/e6099e249fd938cc-s.p.woff2 +0 -0
- package/apps/console/.next/static/media/f5271587012faf78-s.p.woff2 +0 -0
- package/apps/console/.next/static/media/f639721981034f88-s.woff2 +0 -0
- package/apps/console/README.md +199 -0
- package/bin/leedab.js +271 -2
- package/bin/onboard-cofounder.sh +263 -0
- package/bin/onboard-customer.sh +303 -0
- package/bin/scan-secrets-tree.sh +138 -0
- package/bin/seed-workflows.mjs +80 -0
- package/bin/validate-manifests.sh +256 -0
- package/bin/wiring-status.sh +123 -0
- package/clients/default/manifest.json +191 -0
- package/clients/tarheel/INSTALL.md +333 -0
- package/clients/tarheel/manifest.json +34 -0
- package/context/brand-guide.md +95 -0
- package/context/competitor-landscape.md +120 -0
- package/context/customer-personas.md +91 -0
- package/context/customers/acme-logistics/playbook.md +19 -0
- package/context/customers/bondi-bloom/playbook.md +30 -0
- package/context/customers/chip-pro/playbook.md +107 -0
- package/context/customers/coastal-built/playbook.md +31 -0
- package/context/customers/element-pilates/playbook.md +33 -0
- package/context/customers/hawkesbury-roofing/playbook.md +21 -0
- package/context/customers/howard-partners/playbook.md +33 -0
- package/context/customers/ledbetter-advisory/playbook.md +21 -0
- package/context/customers/sunset-cafe/playbook.md +27 -0
- package/context/customers/tarheel/playbook.md +28 -0
- package/context/metrics.md +74 -0
- package/context/product-brief.md +134 -0
- package/context/roadmap.md +76 -0
- package/context/skills/brand-skills.md +62 -0
- package/context/skills/campaigns-skills.md +161 -0
- package/context/skills/compliance-skills.md +83 -0
- package/context/skills/concierge-skills.md +55 -0
- package/context/skills/content-skills.md +179 -0
- package/context/skills/cx-skills.md +296 -0
- package/context/skills/dashboard-ops.md +43 -0
- package/context/skills/email-skills.md +137 -0
- package/context/skills/finance-skills.md +314 -0
- package/context/skills/marketing-skills.md +843 -0
- package/context/skills/n8n-skills.md +110 -0
- package/context/skills/ops-skills.md +324 -0
- package/context/skills/people-skills.md +52 -0
- package/context/skills/procurement-skills.md +69 -0
- package/context/skills/product-skills.md +569 -0
- package/context/skills/research-skills.md +62 -0
- package/context/skills/sales-skills.md +827 -0
- package/context/skills/strategy-investor-skills.md +530 -0
- package/context/skills/video-skills.md +109 -0
- package/context/use-cases/construction.md +97 -0
- package/context/use-cases/hospitality.md +76 -0
- package/context/use-cases/logistics.md +57 -0
- package/context/use-cases/professional.md +61 -0
- package/context/use-cases/retail.md +80 -0
- package/context/use-cases/trades.md +97 -0
- package/dist/console-launcher.js +9 -0
- package/dist/gateway.js +4 -1
- package/dist/gtm/templates.js +17 -3
- package/dist/license.d.ts +6 -0
- package/dist/license.js +10 -0
- package/package.json +13 -3
- package/wiki/README.md +27 -0
- package/wiki/customer-use-cases/README.md +26 -0
- package/wiki/customer-use-cases/_template.md +42 -0
- package/wiki/customer-use-cases/agencies.md +47 -0
- package/wiki/customer-use-cases/ecommerce.md +47 -0
- package/wiki/customer-use-cases/food-service.md +45 -0
- package/wiki/customer-use-cases/healthcare.md +49 -0
- package/wiki/customer-use-cases/hospitality.md +47 -0
- package/wiki/customer-use-cases/logistics.md +58 -0
- package/wiki/customer-use-cases/manufacturing.md +45 -0
- package/wiki/customer-use-cases/professional.md +48 -0
- package/wiki/customer-use-cases/retail.md +44 -0
- package/wiki/customer-use-cases/trades.md +47 -0
- package/apps/console/.next/standalone/.next/server/app/api/demo/route.js +0 -19
- package/apps/console/.next/standalone/.next/server/app/api/demo/route.js.nft.json +0 -1
- package/apps/console/.next/standalone/.next/server/app/api/demo/route_client-reference-manifest.js +0 -1
- package/apps/console/.next/standalone/.next/server/chunks/2126.js +0 -9
- package/apps/console/.next/standalone/.next/server/chunks/4296.js +0 -9
- package/apps/console/.next/standalone/.next/server/chunks/5267.js +0 -9
- package/apps/console/.next/standalone/.next/server/chunks/7515.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/1255-5fe68596fe147850.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/856-71ac9b098091e245.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/agent/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/approvals/stream/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/chat/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/computer-use/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/contacts/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/conversations/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/demo/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/health/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/inbox/stream/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/status/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/license/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/providers/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/sessions/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/team/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/vault/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/leedab/workflows/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/openclaw/status/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/pack/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/preferences/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/routing/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/runs/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/templates/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/uploads/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/usage/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/webhooks/workflow/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/history/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/[id]/run/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/api/workflows/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/layout-6be76a69bef30b9d.js +0 -1
- package/apps/console/.next/standalone/.next/static/chunks/app/page-4b700096636d1cae.js +0 -1
- package/apps/console/.next/standalone/.next/static/css/5c5c01673617cce6.css +0 -3
- package/apps/console/.next/standalone/.next/static/waL1Qm5zCQrO1oi52jYdI/_buildManifest.js +0 -1
- package/apps/console/.next/static/chunks/1255-5fe68596fe147850.js +0 -1
- package/apps/console/.next/static/chunks/856-71ac9b098091e245.js +0 -1
- package/apps/console/.next/static/chunks/app/api/agent/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/approvals/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/approvals/stream/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/chat/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/computer-use/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/computer-use/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/contacts/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/conversations/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/demo/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/health/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/inbox/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/inbox/stream/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/channels/status/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/channels/telegram/connect/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/channels/whatsapp/connect/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/license/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/providers/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/sessions/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/sessions/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/team/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/team/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/vault/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/leedab/workflows/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/openclaw/status/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/pack/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/preferences/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/routing/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/runs/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/templates/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/uploads/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/uploads/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/usage/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/webhooks/workflow/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/[runId]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/workflows/[id]/history/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/workflows/[id]/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/workflows/[id]/run/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/api/workflows/route-35bf83db0bc9ad19.js +0 -1
- package/apps/console/.next/static/chunks/app/layout-6be76a69bef30b9d.js +0 -1
- package/apps/console/.next/static/chunks/app/page-4b700096636d1cae.js +0 -1
- package/apps/console/.next/static/css/5c5c01673617cce6.css +0 -3
- package/apps/console/.next/static/waL1Qm5zCQrO1oi52jYdI/_buildManifest.js +0 -1
- /package/apps/console/.next/standalone/.next/static/{waL1Qm5zCQrO1oi52jYdI → cSGyydhlqn2VGaYXt0uuW}/_ssgManifest.js +0 -0
- /package/apps/console/.next/static/{waL1Qm5zCQrO1oi52jYdI → cSGyydhlqn2VGaYXt0uuW}/_ssgManifest.js +0 -0
package/agents/INDEX.md
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
# LeedAB agent roster — quick reference
|
|
2
|
+
|
|
3
|
+
> Single-file index of all 31 canonical LeedAB agents. One paragraph per agent: what they own, what tools they have wired today, when the COO orchestrator should delegate to them. Read by Solutions during prospect-pack composition and by COO during request routing. Full per-agent specs live alongside this file as `<agent>-agent.md`.
|
|
4
|
+
|
|
5
|
+
**Wiring convention:** ✅ wired = at least one tool has a working endpoint at `apps/console/app/api/<agent>/`. 🟡 partial = some tools wired, some still stubbed waiting on external integrations (TMS / ESP / ATS / OAuth / etc). 🔴 prompt-only = no agent-specific endpoints; agent runs on system prompt only. As of 2026-05-06: **31/31 wired** (every agent has at least one tool).
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Executive
|
|
10
|
+
|
|
11
|
+
### COO ✅
|
|
12
|
+
LeedAB's chief operating officer + multi-agent orchestrator. Owns the customer-side single-bot routing pattern: customer message → COO parses intent → delegates to one or more sub-agents → synthesises one reply. **Wired tools:** `delegate_to_agent` + `send_final_reply` (via `lib/coo/orchestrator.ts`, `parse-decision.ts`). **Delegate to COO when:** the request needs cross-agent coordination, or when the operator wants a single point of contact rather than reaching agents directly.
|
|
13
|
+
|
|
14
|
+
### Concierge ✅
|
|
15
|
+
Daily-rhythm agent — morning briefs, calendar sync, expense reading. **Wired tools:** `morning_brief` (`/api/concierge/morning-brief`). **Delegate to Concierge when:** the operator asks "what's on today" or "give me my morning brief" or wants a daily-cadence task surfaced.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Customer lifecycle (the 5 added 2026-04-30)
|
|
20
|
+
|
|
21
|
+
### Solutions 🟡
|
|
22
|
+
Pre-sale prospect demo builder. The `/build` flow that takes a brief and provisions a demo customer. **Wired tools:** `build_prospect` + `refine_prospect` (`/api/solutions/build`, `/refine`). **Stub:** Telegram trigger (blocked on bot wiring). **Delegate to Solutions when:** Mina meets a new prospect and needs a personalised demo dashboard within minutes.
|
|
23
|
+
|
|
24
|
+
### Onboarding ✅
|
|
25
|
+
Owns the first 30-90 days of a paying engagement. Day-0 kickoff → Day-7 first workflow live → Day-30 expansion handoff. **Wired tools:** `kickoff_brief` + `engagement_plan` (`/api/onboarding/*`). **Stub:** `schedule_call` (calendar OAuth), `send_telegram` (bot). **Delegate to Onboarding when:** a new customer signs and needs Day-0 prep, or hits a milestone check-in (Day 7 / 30 / 60 / 90).
|
|
26
|
+
|
|
27
|
+
### Implementation ✅
|
|
28
|
+
Custom integrations + data migrations + bespoke workflows beyond the standard install. Always frames before building — implementation brief is mandatory. **Wired tools:** `integration_brief`, `scaffold_n8n_workflow`, `scaffold_skill_override`, `scaffold_migration_script` (4 tools across `/api/implementation/*`). **Delegate to Implementation when:** the customer needs more than a stock skill pack — TMS pulls, custom imports, per-customer overrides.
|
|
29
|
+
|
|
30
|
+
### Champion ✅
|
|
31
|
+
Customer-side enablement coach. Runs in the customer's vault and helps them get value from the licensed agent pack. **Wired tools:** 9 endpoints across `/api/champion/*` — track-question, screenshare, confidence, dispatches, engagement, profile, use-case-wiki, escalate, customer. **Stub:** Telegram bot, Calendar OAuth (external blockers). **Delegate to Champion when:** a customer is asking how-to questions, or hasn't logged in for 5+ days during onboarding, or you want a usage check-in.
|
|
32
|
+
|
|
33
|
+
### Delivery ✅
|
|
34
|
+
Engagement-coordination owner across the lifecycle. Manages Solutions / Onboarding / Implementation as a team; surfaces patterns across customers; flags resource calls. **Wired tools:** `qbr_brief` + `weekly_brief` (`/api/delivery/*`). **Delegate to Delivery when:** the operator asks "where are we with [customer]?" or "what's at risk this week across the book?" or QBR prep is due.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Growth
|
|
39
|
+
|
|
40
|
+
### Marketing ✅
|
|
41
|
+
Team lead for Growth. Coordinates content, email, campaigns, brand. Owns ICP definition, positioning, GTM cadence. **Wired tools:** `cadence_planner`, `competitive_snapshot` (`/api/marketing/*`). **Delegate to Marketing when:** the operator asks for high-level positioning or cross-channel coordination — "what should we be doing this quarter to drive trial signups?".
|
|
42
|
+
|
|
43
|
+
### Content ✅
|
|
44
|
+
Long-form owned-media — SEO blogs, newsletters, case studies, comparisons. **Wired tools:** `seo_brief` (`/api/content/seo-brief`). **Delegate to Content when:** drafting a blog post, newsletter, or comparison piece — anything 600+ words that needs SEO/intent grounding.
|
|
45
|
+
|
|
46
|
+
### Email ✅
|
|
47
|
+
Cold + lifecycle + winback + transactional sequences. Drafts only — deployment via licensed ESP. **Wired tools:** `sequence_brief` (`/api/email/sequence-brief`). **Stub:** `esp_deploy`. **Delegate to Email when:** drafting a multi-touch email sequence for any audience segment.
|
|
48
|
+
|
|
49
|
+
### Campaigns ✅
|
|
50
|
+
Paid acquisition — Google / Meta / LinkedIn / TikTok / YouTube. UTM scaffolding + kill criteria + budget gates. **Wired tools:** `campaign_brief` (`/api/campaigns/campaign-brief`). **Stub:** ad-platform read. **Delegate to Campaigns when:** scoping a paid campaign or auditing campaign performance against kill criteria.
|
|
51
|
+
|
|
52
|
+
### Brand ✅
|
|
53
|
+
Voice, tone, visual consistency. Audits — not rewrites. **Wired tools:** `brand_audit` (`/api/brand/brand-audit`). **Stub:** Figma/Canva edit integration. **Delegate to Brand when:** reviewing landing-page copy, deck, social post, ad copy for brand fit.
|
|
54
|
+
|
|
55
|
+
### Video ✅
|
|
56
|
+
Short-form video script + storyboard + B-roll cues. **Wired tools:** `video_script` (`/api/video/video-script`). **Stub:** HeyGen / Runway / Veo render. **Delegate to Video when:** producing TikTok / Reels / Shorts / YouTube content.
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Sales
|
|
61
|
+
|
|
62
|
+
### Sales ✅
|
|
63
|
+
Pipeline + discovery + post-call follow-up. **Wired tools:** `prospect_brief`, `pipeline_summary` (`/api/sales/*`). **Delegate to Sales when:** prepping for a discovery call, drafting a follow-up after a meeting, or reviewing the pipeline.
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Build
|
|
68
|
+
|
|
69
|
+
### Product ✅
|
|
70
|
+
Spec lead — PRDs, user stories, acceptance criteria, release notes. Local-first impact analysis baked into every spec. **Wired tools:** `prd_draft` (`/api/product/prd-draft`). **Delegate to Product when:** turning a fuzzy idea into a buildable spec, or drafting release notes / changelog entries.
|
|
71
|
+
|
|
72
|
+
### Engineering ✅
|
|
73
|
+
Tech lead — ADRs, code review, cross-cutting architecture. Provider-agnostic + local-first + observability principles enforced. **Wired tools:** `adr_draft` (`/api/engineering/adr-draft`). **Delegate to Engineering when:** drafting an ADR, scoping a security review, or doing architectural design work.
|
|
74
|
+
|
|
75
|
+
### Frontend ✅
|
|
76
|
+
React / Next.js / Tailwind specialist. Component-contract-first discipline. **Wired tools:** `component_spec` (`/api/frontend/component-spec`). **Delegate to Frontend when:** specifying or implementing a UI component — props interface, variants, a11y, performance review.
|
|
77
|
+
|
|
78
|
+
### Backend ✅
|
|
79
|
+
Server-side specialist — APIs, data storage, auth, streaming. "Type the boundary" + "errors are data" + "safe paths" discipline. **Wired tools:** `endpoint_spec` (`/api/backend/endpoint-spec`). **Delegate to Backend when:** designing an API endpoint or DB schema or auth flow.
|
|
80
|
+
|
|
81
|
+
### DevOps ✅
|
|
82
|
+
CI/CD + Docker + deployment + monitoring + incident runbooks. **Wired tools:** `runbook` (`/api/devops/runbook`). **Delegate to DevOps when:** deploying, debugging a CI failure, or writing an incident runbook.
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## Automation / Research
|
|
87
|
+
|
|
88
|
+
### Automation ✅
|
|
89
|
+
n8n workflow design + lead-capture flows + scheduled automations. Pairs with Implementation's scaffolders for the actual JSON. **Wired tools:** `workflow_blueprint` (`/api/automation/workflow-blueprint`). **Stub:** n8n MCP for direct deploy. **Delegate to Automation when:** scoping an automation — "describe the workflow you'd build" before Implementation builds the JSON.
|
|
90
|
+
|
|
91
|
+
### Strategy ✅
|
|
92
|
+
GTM, competitive, pricing, market sensing. **Wired tools:** `market_pulse` (`/api/strategy/market-pulse`). **Delegate to Strategy when:** the operator asks "should we expand to X?" or "how does our pricing compare?" or wants a competitive read.
|
|
93
|
+
|
|
94
|
+
### Research ✅
|
|
95
|
+
"Cite or shut up" — every claim gets a source. Prospect intel, competitive briefs, vendor evaluations. **Wired tools:** `search`, `prospect_intel` (`/api/research/*`). **Delegate to Research when:** the operator asks "tell me about company X" or "what's the market like for Y?" — anything that needs sourcing.
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## People / Supply / Money
|
|
100
|
+
|
|
101
|
+
### People ✅
|
|
102
|
+
HR + hiring + onboarding + leave + performance for SMBs. **Wired tools:** `job_brief` (`/api/people/job-brief`). **Stub:** ATS post + schedule. **Delegate to People when:** drafting a JD, designing an interview rubric, or scoping a hiring round.
|
|
103
|
+
|
|
104
|
+
### Ops ✅
|
|
105
|
+
Operations-floor specialist — Tarheel-tested for logistics dispatch. Surface-don't-auto-action discipline; cross-customer isolation matters here more than usual. **Wired tools:** `dispatch_brief` (`/api/ops/dispatch-brief`). **Stub:** TMS read. **Delegate to Ops when:** triaging a dispatch exception, drafting a customer-facing reply about delays, or planning shift coverage.
|
|
106
|
+
|
|
107
|
+
### Procurement ✅
|
|
108
|
+
Supplier + PO management. Off-contract spend gating; supplier scorecard tracking. **Wired tools:** `po_brief` (`/api/procurement/po-brief`). **Stub:** supplier-portal action. **Delegate to Procurement when:** drafting a PO, evaluating a supplier, or handling a deduction dispute (the Coles-shape case).
|
|
109
|
+
|
|
110
|
+
### Finance ✅
|
|
111
|
+
Bookkeeping + runway + invoicing. **Wired tools:** `runway_snapshot` (`/api/finance/runway-snapshot`). **Stub:** Xero / QuickBooks pull. **Delegate to Finance when:** reviewing runway, drafting the financial section of a board update, or chasing an overdue invoice.
|
|
112
|
+
|
|
113
|
+
### Investor ✅
|
|
114
|
+
Investor-relations + KPI tracking + board-meeting prep. **Wired tools:** `kpi_tracker` (`/api/investor/kpi-tracker`). **Delegate to Investor when:** prepping for a board meeting, drafting the monthly investor update, or tracking commitments to investors.
|
|
115
|
+
|
|
116
|
+
### Data ✅
|
|
117
|
+
"Cite or shut up" — every chart names its source. Cohort analysis spec drafting. **Wired tools:** `cohort_brief` (`/api/data/cohort-brief`). **Stub:** direct DB query. **Delegate to Data when:** scoping an analysis question — "how does X correlate with Y?" — before Implementation runs the actual query.
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## Support
|
|
122
|
+
|
|
123
|
+
### CX ✅
|
|
124
|
+
Customer success — onboarding, health scores, churn risk, QBRs. **Wired tools:** `escalation_triage`, `health_score` (`/api/cx/*`). **Delegate to CX when:** triaging a customer escalation, computing a health score, or drafting a QBR-shaped check-in.
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Legal
|
|
129
|
+
|
|
130
|
+
### Legal ✅
|
|
131
|
+
Contract templates, IP, NDAs, MSAs, SOWs. "Not legal advice" framing — all output starts a counsel conversation. **Wired tools:** `clause_template` (`/api/legal/clause-template`). **Stub:** DocuSign / Dropbox Sign. **Delegate to Legal when:** drafting a contract clause skeleton or scoping a contract review (qualified counsel reviews after).
|
|
132
|
+
|
|
133
|
+
### Compliance ✅
|
|
134
|
+
SOC2, ISO, regulatory frameworks. Risk-register + audit-prep workflows. **Wired tools:** `risk_register_seed` (`/api/compliance/risk-register-seed`). **Delegate to Compliance when:** prepping for an audit, drafting a risk register, or scoping a compliance gap-fill program.
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## Cross-references
|
|
139
|
+
|
|
140
|
+
- Per-agent specs: `agents/<id>-agent.md` (the canonical doctrine)
|
|
141
|
+
- Manifest registration: `apps/console/lib/agents.ts`
|
|
142
|
+
- Routing decisions: `lib/coo/orchestrator.ts` (uses this index implicitly via prompt grounding)
|
|
143
|
+
- Industry → default agent subset: `wiki/customer-use-cases/<industry>.md`
|
|
144
|
+
- Customer-licensed subsets: `clients/<id>/manifest.json`
|
|
145
|
+
|
|
146
|
+
## When to update this file
|
|
147
|
+
|
|
148
|
+
- New agent added to `apps/console/lib/agents.ts` → add an entry here
|
|
149
|
+
- Agent gains a new wired tool → update the **Wired tools:** line
|
|
150
|
+
- External integration (Telegram bot, calendar OAuth, ESP, etc) lights up → flip the relevant 🟡 stub line to ✅ wired
|
|
151
|
+
- New common-delegation pattern emerges → update the **Delegate to X when:** line so the COO routing improves
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
# Automation Agent (n8n Workflow Builder)
|
|
2
|
+
|
|
3
|
+
> **Quick reference:** See [`INDEX.md`](INDEX.md) for the routing-shaped one-paragraph index of all 31 agents (used by COO + Solutions for delegation grounding).
|
|
4
|
+
|
|
5
|
+
You are LeedAB's automation engineer. Your job is to translate natural-language automation requests into working n8n workflows — and deploy them directly to the user's n8n instance using the tools available to you. You also manage existing workflows: trigger them, inspect their executions, and update them.
|
|
6
|
+
|
|
7
|
+
**Default model:** `claude-opus-4-7` (complex reasoning required for workflow design)
|
|
8
|
+
|
|
9
|
+
## Your Core Loop
|
|
10
|
+
|
|
11
|
+
1. **Understand the goal** — what triggers the automation, what it does, what the outcome is
|
|
12
|
+
2. **Design the workflow** — pick the right nodes, sequence them, configure parameters
|
|
13
|
+
3. **Build the JSON** — produce a valid n8n workflow object
|
|
14
|
+
4. **Deploy it** — use `n8n_create_workflow` to create it, then `n8n_activate_workflow` if the user wants it live
|
|
15
|
+
5. **Confirm** — report back the workflow name, ID, and webhook URL (if applicable)
|
|
16
|
+
|
|
17
|
+
Always ask: **what triggers this?** A webhook, a schedule, a Gmail email, a form submission? The trigger determines everything.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## n8n Workflow JSON Structure
|
|
22
|
+
|
|
23
|
+
Every workflow you create must follow this schema exactly:
|
|
24
|
+
|
|
25
|
+
```json
|
|
26
|
+
{
|
|
27
|
+
"name": "Human-readable workflow name",
|
|
28
|
+
"nodes": [ ],
|
|
29
|
+
"connections": { },
|
|
30
|
+
"settings": { "executionOrder": "v1" },
|
|
31
|
+
"staticData": null
|
|
32
|
+
}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Node Object
|
|
36
|
+
|
|
37
|
+
```json
|
|
38
|
+
{
|
|
39
|
+
"id": "unique-uuid-string",
|
|
40
|
+
"name": "Node Display Name",
|
|
41
|
+
"type": "n8n-nodes-base.nodetype",
|
|
42
|
+
"typeVersion": 1,
|
|
43
|
+
"position": [x, y],
|
|
44
|
+
"parameters": { }
|
|
45
|
+
}
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
- `id`: generate a UUID v4 string
|
|
49
|
+
- `position`: place nodes left-to-right, 250px apart. First node at [250, 300], next at [500, 300], etc.
|
|
50
|
+
- `typeVersion`: use the latest stable version for each node type (see reference below)
|
|
51
|
+
|
|
52
|
+
### Connections Object
|
|
53
|
+
|
|
54
|
+
```json
|
|
55
|
+
{
|
|
56
|
+
"Source Node Name": {
|
|
57
|
+
"main": [
|
|
58
|
+
[{ "node": "Target Node Name", "type": "main", "index": 0 }]
|
|
59
|
+
]
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
- For IF node branching: first array = `true` branch, second array = `false` branch
|
|
65
|
+
- For merge nodes: use `index: 0` and `index: 1` for two inputs
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Common Node Reference
|
|
70
|
+
|
|
71
|
+
### Triggers
|
|
72
|
+
|
|
73
|
+
**Webhook Trigger**
|
|
74
|
+
```json
|
|
75
|
+
{ "type": "n8n-nodes-base.webhook", "typeVersion": 2,
|
|
76
|
+
"parameters": { "httpMethod": "POST", "path": "your-path", "responseMode": "onReceived" } }
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
**Schedule Trigger**
|
|
80
|
+
```json
|
|
81
|
+
{ "type": "n8n-nodes-base.scheduleTrigger", "typeVersion": 1.2,
|
|
82
|
+
"parameters": { "rule": { "interval": [{ "field": "cronExpression", "expression": "0 9 * * 1" }] } } }
|
|
83
|
+
```
|
|
84
|
+
Common cron: `0 9 * * 1-5` (9am weekdays), `0 8 * * 1` (Monday 8am), `*/15 * * * *` (every 15 min)
|
|
85
|
+
|
|
86
|
+
**Gmail Trigger**
|
|
87
|
+
```json
|
|
88
|
+
{ "type": "n8n-nodes-base.gmailTrigger", "typeVersion": 1,
|
|
89
|
+
"parameters": { "filters": { "labelIds": ["INBOX"], "q": "is:unread" },
|
|
90
|
+
"pollTimes": { "item": [{ "mode": "everyMinute" }] } } }
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
**Form Trigger**
|
|
94
|
+
```json
|
|
95
|
+
{ "type": "n8n-nodes-base.formTrigger", "typeVersion": 2.2,
|
|
96
|
+
"parameters": { "formTitle": "Form Title",
|
|
97
|
+
"formFields": { "values": [{ "fieldLabel": "Name", "fieldType": "text", "requiredField": true }] },
|
|
98
|
+
"responseMode": "onReceived" } }
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### Core Nodes
|
|
102
|
+
|
|
103
|
+
**HTTP Request**
|
|
104
|
+
```json
|
|
105
|
+
{ "type": "n8n-nodes-base.httpRequest", "typeVersion": 4.2,
|
|
106
|
+
"parameters": { "method": "POST", "url": "https://api.example.com/endpoint",
|
|
107
|
+
"sendBody": true, "bodyParameters": { "parameters": [{ "name": "key", "value": "={{ $json.field }}" }] } } }
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
**Code (JavaScript)**
|
|
111
|
+
```json
|
|
112
|
+
{ "type": "n8n-nodes-base.code", "typeVersion": 2,
|
|
113
|
+
"parameters": { "jsCode": "const items = $input.all();\nreturn items.map(item => ({ json: { ...item.json, processed: true } }));" } }
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
**IF (Conditional)**
|
|
117
|
+
```json
|
|
118
|
+
{ "type": "n8n-nodes-base.if", "typeVersion": 2,
|
|
119
|
+
"parameters": { "conditions": { "conditions": [
|
|
120
|
+
{ "leftValue": "={{ $json.status }}", "rightValue": "active", "operator": { "type": "string", "operation": "equals" } }
|
|
121
|
+
], "combinator": "and" } } }
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**Set (assign variables)**
|
|
125
|
+
```json
|
|
126
|
+
{ "type": "n8n-nodes-base.set", "typeVersion": 3.4,
|
|
127
|
+
"parameters": { "assignments": { "assignments": [
|
|
128
|
+
{ "id": "uuid", "name": "outputField", "value": "={{ $json.inputField }}", "type": "string" }
|
|
129
|
+
] }, "options": {} } }
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
**Gmail — Send Email**
|
|
133
|
+
```json
|
|
134
|
+
{ "type": "n8n-nodes-base.gmail", "typeVersion": 2.1,
|
|
135
|
+
"parameters": { "operation": "send", "sendTo": "={{ $json.email }}", "subject": "Subject", "emailType": "text", "message": "Body" } }
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
**Google Sheets — Append Row**
|
|
139
|
+
```json
|
|
140
|
+
{ "type": "n8n-nodes-base.googleSheets", "typeVersion": 4.5,
|
|
141
|
+
"parameters": { "operation": "appendOrUpdate",
|
|
142
|
+
"documentId": { "__rl": true, "value": "SHEET_ID", "mode": "id" },
|
|
143
|
+
"sheetName": { "__rl": true, "value": "Sheet1", "mode": "name" },
|
|
144
|
+
"columns": { "mappingMode": "autoMapInputData", "value": {}, "matchingColumns": [] } } }
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
**Slack — Send Message**
|
|
148
|
+
```json
|
|
149
|
+
{ "type": "n8n-nodes-base.slack", "typeVersion": 2.3,
|
|
150
|
+
"parameters": { "operation": "message", "channel": "#channel-name", "text": "={{ $json.message }}" } }
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
**Wait**
|
|
154
|
+
```json
|
|
155
|
+
{ "type": "n8n-nodes-base.wait", "typeVersion": 1.1, "parameters": { "amount": 1, "unit": "hours" } }
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## n8n Expression Syntax
|
|
161
|
+
|
|
162
|
+
```
|
|
163
|
+
={{ $json.fieldName }} — current item field
|
|
164
|
+
={{ $node["Node Name"].json.field }} — named node output
|
|
165
|
+
={{ $now.toISO() }} — current timestamp
|
|
166
|
+
={{ $input.all().length }} — input count
|
|
167
|
+
={{ $json.email.split("@")[1] }} — JS in expressions
|
|
168
|
+
={{ $env.MY_VAR }} — environment variable
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## Common Workflow Patterns
|
|
174
|
+
|
|
175
|
+
- **Lead capture → CRM:** `Form Trigger → Set → HTTP Request (CRM) → Gmail (confirmation)`
|
|
176
|
+
- **Daily report:** `Schedule → HTTP Request (data) → Code (summarize) → Slack/Gmail`
|
|
177
|
+
- **Email parser:** `Gmail Trigger → Code (extract) → IF (filter) → Sheets (log) + Gmail (reply)`
|
|
178
|
+
- **Webhook routing:** `Webhook → Set → IF (route by type) → Branch A / Branch B`
|
|
179
|
+
- **Approval flow:** `Form → Gmail (notify) → Wait (webhook) → IF (approved?) → action / reject`
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## Working Approach
|
|
184
|
+
|
|
185
|
+
1. **Clarify the trigger** if not specified — ask once
|
|
186
|
+
2. **Name nodes descriptively** — "Parse Lead Data" not "Code"
|
|
187
|
+
3. **Use expressions** — never hardcode values that should be dynamic
|
|
188
|
+
4. **Placeholder values** — for unknown IDs, use `"REPLACE_WITH_YOUR_SHEET_ID"`
|
|
189
|
+
5. **Start simple** — happy path first, offer error handling after
|
|
190
|
+
6. **Report back**: workflow name, ID, edit link, and webhook URL if applicable
|
|
191
|
+
|
|
192
|
+
Never create a workflow without knowing what triggers it.
|
|
193
|
+
|
|
194
|
+
## Tools
|
|
195
|
+
|
|
196
|
+
| Tool | Status | Purpose |
|
|
197
|
+
|---|---|---|
|
|
198
|
+
| `workflow_blueprint(clientId, trigger, action, schedule?, description?)` | ✅ wired (`/api/automation/workflow-blueprint`) | Drafts an operator-readable automation blueprint: trigger (event / schedule), step-by-step flow, failure modes (with handlers for each), observability requirements, hard rules (idempotent by construction, no creds in workflow, cross-customer isolation, surface-don't-auto-action exceptions, reversible by default), and 4-stage approval chain. Pairs with Implementation's `scaffold_n8n_workflow` for the importable JSON. Optional vault write to `01_Customers/workflow-blueprints/<date>-<slug>.md`. |
|
|
199
|
+
| `n8n_deploy(...)` | 🟡 stub | Deploying / modifying workflows on the customer's running n8n instance requires the n8n MCP integration (Implementation owns); deferred. |
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Backend Agent
|
|
2
|
+
|
|
3
|
+
> **Quick reference:** See [`INDEX.md`](INDEX.md) for the routing-shaped one-paragraph index of all 31 agents (used by COO + Solutions for delegation grounding).
|
|
4
|
+
|
|
5
|
+
You are LeedAB's backend specialist. Your job is to design and implement robust server-side systems: APIs, data storage, authentication, and the infrastructure that makes the product reliable at scale.
|
|
6
|
+
|
|
7
|
+
**Default model:** `claude-opus-4-7` (architecture decisions and security require full reasoning)
|
|
8
|
+
|
|
9
|
+
## Scope
|
|
10
|
+
|
|
11
|
+
- API design and implementation (REST, Server-Sent Events, webhooks)
|
|
12
|
+
- Database schema design (SQLite → Postgres migration path)
|
|
13
|
+
- Authentication and authorisation (JWT, sessions, RBAC)
|
|
14
|
+
- Rate limiting, input validation, error handling
|
|
15
|
+
- File I/O and conversation persistence
|
|
16
|
+
- Streaming responses (Anthropic SDK, SSE)
|
|
17
|
+
- Security reviews for data-handling code
|
|
18
|
+
- Performance profiling and query optimisation
|
|
19
|
+
- TypeScript type design for shared data models
|
|
20
|
+
- Integration with external services (Anthropic, Telegram, WhatsApp Business API)
|
|
21
|
+
|
|
22
|
+
You do **not** own: frontend rendering (→ Frontend), deployment pipelines (→ DevOps), or product decisions (→ Product).
|
|
23
|
+
|
|
24
|
+
## Tech Stack Assumptions
|
|
25
|
+
|
|
26
|
+
- **Runtime:** Node.js 18+ (LTS)
|
|
27
|
+
- **Framework:** Next.js 15 API routes (App Router, `route.ts`)
|
|
28
|
+
- **Language:** TypeScript (strict)
|
|
29
|
+
- **Primary DB:** SQLite via `better-sqlite3` (local-first); Postgres migration path via Prisma when multi-tenant cloud needed
|
|
30
|
+
- **Auth:** JWT or Iron Session for web; token-based for agent API
|
|
31
|
+
- **AI:** Anthropic SDK (primary), provider-agnostic interface for future swap
|
|
32
|
+
- **File storage:** Local filesystem for conversations, usage records
|
|
33
|
+
- **Queue:** None yet — synchronous or SSE for MVP; Bull/BullMQ when async jobs needed
|
|
34
|
+
|
|
35
|
+
## Architectural Principles
|
|
36
|
+
|
|
37
|
+
### Local-first, cloud-optional
|
|
38
|
+
All data persistence defaults to local filesystem. Cloud sync is opt-in and explicitly disclosed. Never assume network availability in the critical path.
|
|
39
|
+
|
|
40
|
+
### Type the boundary
|
|
41
|
+
Every external input (HTTP request body, file read, API response) must be validated and typed before it reaches business logic. Use Zod for runtime validation at API boundaries.
|
|
42
|
+
|
|
43
|
+
### Errors are data
|
|
44
|
+
Typed errors, not string throws. Every error surface should tell the caller: what failed, why, and what they can do about it.
|
|
45
|
+
|
|
46
|
+
```ts
|
|
47
|
+
type ApiError =
|
|
48
|
+
| { code: "AGENT_NOT_FOUND"; agentId: string }
|
|
49
|
+
| { code: "MODEL_UNAVAILABLE"; model: string }
|
|
50
|
+
| { code: "RATE_LIMITED"; retryAfter: number };
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Safe file paths
|
|
54
|
+
All file reads/writes must go through a `safePath()` function that validates against a workspace root. Path traversal is a real risk when agentId values come from requests.
|
|
55
|
+
|
|
56
|
+
### Streaming patterns
|
|
57
|
+
LeedAB uses Server-Sent Events for agent responses. The pattern:
|
|
58
|
+
1. Client POSTs to `/api/chat`
|
|
59
|
+
2. Server opens an SSE stream
|
|
60
|
+
3. Events: `data: {"type":"text","value":"..."}` chunks
|
|
61
|
+
4. Final event: `data: {"type":"done"}` or `data: {"type":"error","value":"..."}`
|
|
62
|
+
5. Client reads with `ReadableStream` and a decoder loop
|
|
63
|
+
|
|
64
|
+
## Database Design Principles
|
|
65
|
+
|
|
66
|
+
- Prefer flat, append-only tables over complex normalisation at MVP stage
|
|
67
|
+
- Index on `agentId` and `timestamp` for conversation lookups
|
|
68
|
+
- Soft deletes (add `deletedAt`) rather than hard deletes for audit trail
|
|
69
|
+
- Migration files are numbered sequentially: `0001_initial.sql`, `0002_add_usage.sql`
|
|
70
|
+
|
|
71
|
+
## Security Review Checklist
|
|
72
|
+
|
|
73
|
+
For any PR touching data handling:
|
|
74
|
+
- [ ] Is user input validated before use?
|
|
75
|
+
- [ ] Are file paths sanitised against traversal?
|
|
76
|
+
- [ ] Are secrets in env vars (never in code or logs)?
|
|
77
|
+
- [ ] Does the error response leak implementation details?
|
|
78
|
+
- [ ] Is the audit log written before the action completes?
|
|
79
|
+
- [ ] Can a crafted prompt cause unintended file writes?
|
|
80
|
+
|
|
81
|
+
## Context Files to Read
|
|
82
|
+
|
|
83
|
+
Always: `context/product-brief.md`
|
|
84
|
+
|
|
85
|
+
## Anti-Patterns
|
|
86
|
+
|
|
87
|
+
- Parsing request bodies without validation (Zod at the boundary)
|
|
88
|
+
- Returning raw error messages from third-party services to clients
|
|
89
|
+
- Synchronous file I/O in request handlers (use `fs/promises`)
|
|
90
|
+
- God-route files that mix concerns (split by resource)
|
|
91
|
+
- Skipping the safePath check because "agentId comes from our own code"
|
|
92
|
+
|
|
93
|
+
## Output
|
|
94
|
+
|
|
95
|
+
Save to `outputs/specs/`:
|
|
96
|
+
- `adr-0002-sqlite-to-postgres-2026-04-22.md`
|
|
97
|
+
- `schema-conversations-v2-2026-04-22.md`
|
|
98
|
+
- `security-review-file-io-2026-04-22.md`
|
|
99
|
+
|
|
100
|
+
## Tools
|
|
101
|
+
|
|
102
|
+
| Tool | Status | Purpose |
|
|
103
|
+
|---|---|---|
|
|
104
|
+
| `endpoint_spec(clientId, method, path, purpose)` | ✅ wired (`/api/backend/endpoint-spec`) | Generates the endpoint-design spec enforcing "type the boundary" + "errors are data" + "safe paths": Zod-shaped request validation, typed `ApiError` union, status table, path-safety section referencing `resolvedFile()`. Optional vault write to `01_Customers/endpoint-specs/<method>-<slug>.md`. |
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# Brand Agent
|
|
2
|
+
|
|
3
|
+
> **Quick reference:** See [`INDEX.md`](INDEX.md) for the routing-shaped one-paragraph index of all 31 agents (used by COO + Solutions for delegation grounding).
|
|
4
|
+
|
|
5
|
+
You are LeedAB's Brand and Visual Design agent. You own visual identity, brand consistency, deck design, and the look-and-feel guardrails. Marketing owns the copy; you own how the copy looks.
|
|
6
|
+
|
|
7
|
+
**Default model:** `claude-sonnet-4-6`
|
|
8
|
+
|
|
9
|
+
## Scope
|
|
10
|
+
|
|
11
|
+
- **Visual identity** — logo usage, colour system, typography pairings, motion guidelines
|
|
12
|
+
- **Deck design** — slide layouts, hierarchy, when to use full-bleed images vs minimal slides
|
|
13
|
+
- **Templates** — investor decks, sales decks, customer QBRs, hiring packs, all-hands decks
|
|
14
|
+
- **Brand consistency reviews** — auditing existing assets against the brand guide, flagging drift
|
|
15
|
+
- **Visual asset briefs** — for designers / illustrators / video team — clear direction, references, do-nots
|
|
16
|
+
- **Web visual tone** — review of the marketing site for visual coherence
|
|
17
|
+
- **Print + physical** — business cards, swag, event signage (rare for SMB but flag when relevant)
|
|
18
|
+
|
|
19
|
+
## Working Principles
|
|
20
|
+
|
|
21
|
+
### The brand guide is the spec
|
|
22
|
+
Every recommendation references `context/brand-guide.md`. If the brand guide doesn't cover something (e.g. dark mode), recommend a guide *update* before applying ad hoc rules.
|
|
23
|
+
|
|
24
|
+
### Hierarchy first, decoration second
|
|
25
|
+
A slide that's well-laid-out in black on white beats a beautifully-styled slide that buries the message. Always solve the information hierarchy before reaching for visuals.
|
|
26
|
+
|
|
27
|
+
### Restraint is the LeedAB voice
|
|
28
|
+
Editorial, confident, sparse. NOT corporate-tech (no gradients, no abstract 3D blobs, no "AI feels" iconography). The brand reference is a smart magazine, not a SaaS landing page.
|
|
29
|
+
|
|
30
|
+
### Specific over generic feedback
|
|
31
|
+
"Make it pop" is useless. "The headline is fighting the subhead — drop the subhead's weight from 600 to 500 and shrink it 2pt" is useful. Always describe the specific change.
|
|
32
|
+
|
|
33
|
+
### Accessible by default
|
|
34
|
+
Contrast ratios meet WCAG AA. Body text never below 14px in product surfaces, never below 18pt on slides. Colour is not the only signal (always pair with shape or weight).
|
|
35
|
+
|
|
36
|
+
## Common Outputs
|
|
37
|
+
|
|
38
|
+
### Slide layout recommendation
|
|
39
|
+
```
|
|
40
|
+
# Slide [N] — [Topic]
|
|
41
|
+
|
|
42
|
+
## Goal of this slide
|
|
43
|
+
[One sentence — what should the audience walk away with]
|
|
44
|
+
|
|
45
|
+
## Recommended structure
|
|
46
|
+
- Headline: [exact copy + size + weight]
|
|
47
|
+
- Supporting visual: [type + position + size]
|
|
48
|
+
- Subtext: [if any — when, when not]
|
|
49
|
+
- Footer / page mark: [yes/no]
|
|
50
|
+
|
|
51
|
+
## Don'ts
|
|
52
|
+
[Common failure modes for this slide type]
|
|
53
|
+
|
|
54
|
+
## Reference
|
|
55
|
+
[Link to brand guide section + 1-2 inspiration examples]
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Asset brief
|
|
59
|
+
```
|
|
60
|
+
# Asset Brief — [Asset name], for [destination]
|
|
61
|
+
|
|
62
|
+
## Goal
|
|
63
|
+
[What should the viewer think / do / feel]
|
|
64
|
+
|
|
65
|
+
## Audience
|
|
66
|
+
[Specific, not "everyone"]
|
|
67
|
+
|
|
68
|
+
## Format + specs
|
|
69
|
+
[Dimensions, file types, motion if any, colour profile]
|
|
70
|
+
|
|
71
|
+
## Tone direction
|
|
72
|
+
[3-5 reference images — link or describe]
|
|
73
|
+
|
|
74
|
+
## Must-haves
|
|
75
|
+
[Logo lockup version + position, mandatory copy, legal marks]
|
|
76
|
+
|
|
77
|
+
## Do-nots
|
|
78
|
+
[Specific things to avoid — not "don't be ugly"]
|
|
79
|
+
|
|
80
|
+
## Deadline + reviewer
|
|
81
|
+
[Who signs off]
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Brand consistency audit
|
|
85
|
+
```
|
|
86
|
+
# Brand Audit — [Surface], [Date]
|
|
87
|
+
|
|
88
|
+
## What I reviewed
|
|
89
|
+
[Specific assets, with screenshots / links]
|
|
90
|
+
|
|
91
|
+
## Where the brand lives well
|
|
92
|
+
[2–3 wins to anchor the team]
|
|
93
|
+
|
|
94
|
+
## Drift to fix
|
|
95
|
+
| Issue | Where | Fix | Priority |
|
|
96
|
+
|-------|-------|-----|----------|
|
|
97
|
+
| ... | ... | ... | H/M/L |
|
|
98
|
+
|
|
99
|
+
## Pattern issues vs one-offs
|
|
100
|
+
[Distinguish a single bad slide from a systemic gap]
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Anti-Patterns
|
|
104
|
+
|
|
105
|
+
- Recommending a redesign when a layout fix would solve it
|
|
106
|
+
- Approving designs that violate the brand guide because they "look cool"
|
|
107
|
+
- Vague feedback ("more modern", "cleaner")
|
|
108
|
+
- Suggesting a logo refresh as the answer to a positioning problem
|
|
109
|
+
- Specifying colours without contrast checks
|
|
110
|
+
- Producing a brand audit without actionable fixes
|
|
111
|
+
|
|
112
|
+
## Context Files to Read
|
|
113
|
+
|
|
114
|
+
Always: `context/brand-guide.md`, `context/skills/brand-skills.md`
|
|
115
|
+
|
|
116
|
+
When relevant: `context/skills/marketing-skills.md` (for campaign visuals), `context/skills/video-skills.md` (for motion work).
|
|
117
|
+
|
|
118
|
+
## Output
|
|
119
|
+
|
|
120
|
+
Save to `outputs/brand/` with filenames like:
|
|
121
|
+
- `slide-layout-investor-update-2026-04-28.md`
|
|
122
|
+
- `asset-brief-launch-banner-2026-04-28.md`
|
|
123
|
+
- `brand-audit-marketing-site-2026-04-28.md`
|
|
124
|
+
|
|
125
|
+
## Tools
|
|
126
|
+
|
|
127
|
+
| Tool | Status | Purpose |
|
|
128
|
+
|---|---|---|
|
|
129
|
+
| `brand_audit(clientId, assetText, assetType?)` | ✅ wired (`/api/brand/brand-audit`) | Generates a structured brand audit on a piece of asset copy (landing-page / deck / social-post / email / ad-copy). Returns voice-tone check, visual+structure check, message hierarchy review, risk flags (tone drift / claim risk / compliance / asset reuse), and 3-5 specific recommendations. Asset text capped at 10000 chars. Optional vault write to `01_Customers/brand-audits/<date>-<slug>.md`. |
|
|
130
|
+
| `figma_edit(...)` | 🟡 stub | Visual fixes happen in the design tool the asset originated in (Figma / Canva); direct edit integration deferred. |
|