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
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
#
|
|
3
|
+
# onboard-cofounder.sh — one-shot setup for a new LeedAB-OS contributor.
|
|
4
|
+
#
|
|
5
|
+
# Walks through:
|
|
6
|
+
# 1. Verify git identity + branch
|
|
7
|
+
# 2. Install dependencies (root + apps/console)
|
|
8
|
+
# 3. Install pre-commit secret scanner hook
|
|
9
|
+
# 4. Generate LEEDAB_ADMIN_TOKEN + write apps/console/.env.local
|
|
10
|
+
# 5. Run typecheck + unit tests
|
|
11
|
+
# 6. Run secret scanner over the tree
|
|
12
|
+
# 7. Print next steps (start dev server, read MUIEZ-ONBOARDING.md / HANDOFF.md)
|
|
13
|
+
#
|
|
14
|
+
# Idempotent: safe to re-run. Won't overwrite an existing .env.local
|
|
15
|
+
# without confirmation. Doesn't touch git config (cofounder sets their
|
|
16
|
+
# own identity). Doesn't push or commit anything.
|
|
17
|
+
#
|
|
18
|
+
# Usage:
|
|
19
|
+
# bash bin/onboard-cofounder.sh
|
|
20
|
+
|
|
21
|
+
set -euo pipefail
|
|
22
|
+
|
|
23
|
+
# ── Colors ──────────────────────────────────────────────────────────────
|
|
24
|
+
if [ -t 1 ]; then
|
|
25
|
+
GREEN='\033[0;32m'
|
|
26
|
+
YELLOW='\033[1;33m'
|
|
27
|
+
RED='\033[0;31m'
|
|
28
|
+
BLUE='\033[0;34m'
|
|
29
|
+
BOLD='\033[1m'
|
|
30
|
+
RESET='\033[0m'
|
|
31
|
+
else
|
|
32
|
+
GREEN=''; YELLOW=''; RED=''; BLUE=''; BOLD=''; RESET=''
|
|
33
|
+
fi
|
|
34
|
+
|
|
35
|
+
step() { echo -e "\n${BLUE}${BOLD}── $1 ──${RESET}"; }
|
|
36
|
+
ok() { echo -e " ${GREEN}✓${RESET} $1"; }
|
|
37
|
+
warn() { echo -e " ${YELLOW}⚠${RESET} $1"; }
|
|
38
|
+
fail() { echo -e " ${RED}✗${RESET} $1"; exit 1; }
|
|
39
|
+
info() { echo -e " $1"; }
|
|
40
|
+
|
|
41
|
+
# ── Locate the repo root ───────────────────────────────────────────────
|
|
42
|
+
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
43
|
+
cd "$ROOT"
|
|
44
|
+
|
|
45
|
+
if [ ! -f package.json ] || [ ! -d apps/console ]; then
|
|
46
|
+
fail "This doesn't look like the LeedAB-OS root. Run from the repo root."
|
|
47
|
+
fi
|
|
48
|
+
|
|
49
|
+
# Track verification state — final status reflects whether anything failed.
|
|
50
|
+
VERIFICATION_OK=1
|
|
51
|
+
|
|
52
|
+
echo -e "${BOLD}LeedAB-OS cofounder onboarding${RESET}"
|
|
53
|
+
echo -e "Working from: ${BLUE}$ROOT${RESET}"
|
|
54
|
+
echo
|
|
55
|
+
|
|
56
|
+
# ── Step 0: Preflight — required tools ─────────────────────────────────
|
|
57
|
+
step "0. Preflight tool check"
|
|
58
|
+
for tool in git node npm openssl; do
|
|
59
|
+
if ! command -v "$tool" > /dev/null 2>&1; then
|
|
60
|
+
fail "$tool not found in PATH — install it before re-running"
|
|
61
|
+
fi
|
|
62
|
+
done
|
|
63
|
+
# Node version: root package.json requires >=22.
|
|
64
|
+
node_major=$(node -v | sed 's/^v\([0-9]*\).*/\1/')
|
|
65
|
+
if [ -z "$node_major" ] || [ "$node_major" -lt 22 ]; then
|
|
66
|
+
fail "node $(node -v) found, but root package.json requires node >=22 — install Node 22+ and re-run"
|
|
67
|
+
fi
|
|
68
|
+
ok "git $(git --version | awk '{print $3}') · node $(node -v) · npm $(npm -v) · openssl present"
|
|
69
|
+
|
|
70
|
+
# ── Step 1: Git identity + branch ───────────────────────────────────────
|
|
71
|
+
step "1. Git identity + branch"
|
|
72
|
+
git_name=$(git config user.name 2>/dev/null || echo "")
|
|
73
|
+
git_email=$(git config user.email 2>/dev/null || echo "")
|
|
74
|
+
git_branch=$(git rev-parse --abbrev-ref HEAD 2>/dev/null || echo "")
|
|
75
|
+
|
|
76
|
+
if [ -z "$git_name" ] || [ -z "$git_email" ]; then
|
|
77
|
+
warn "git user.name or user.email is unset"
|
|
78
|
+
info "Set them now (these stamp every commit):"
|
|
79
|
+
info " git config user.name \"Your Real Name\""
|
|
80
|
+
info " git config user.email \"you@leedab.example\""
|
|
81
|
+
else
|
|
82
|
+
ok "git identity: $git_name <$git_email>"
|
|
83
|
+
fi
|
|
84
|
+
ok "branch: $git_branch"
|
|
85
|
+
|
|
86
|
+
# ── Step 2: Dependencies (npm ci — strict, lockfile-driven) ────────────
|
|
87
|
+
step "2. Install dependencies (root + apps/console)"
|
|
88
|
+
info "Note: uses npm ci (strict lockfile install) so node_modules matches the committed lockfile exactly. Network required."
|
|
89
|
+
if [ -d node_modules ]; then
|
|
90
|
+
ok "root node_modules exists (skipping — delete + re-run to refresh)"
|
|
91
|
+
else
|
|
92
|
+
info "running 'npm ci' at root..."
|
|
93
|
+
if npm ci --silent; then
|
|
94
|
+
ok "root deps installed"
|
|
95
|
+
else
|
|
96
|
+
VERIFICATION_OK=0
|
|
97
|
+
warn "root npm ci FAILED — check network + lockfile drift"
|
|
98
|
+
fi
|
|
99
|
+
fi
|
|
100
|
+
|
|
101
|
+
if [ -d apps/console/node_modules ]; then
|
|
102
|
+
ok "apps/console node_modules exists"
|
|
103
|
+
else
|
|
104
|
+
info "running 'npm ci' in apps/console/..."
|
|
105
|
+
if (cd apps/console && npm ci --silent); then
|
|
106
|
+
ok "apps/console deps installed"
|
|
107
|
+
else
|
|
108
|
+
VERIFICATION_OK=0
|
|
109
|
+
warn "apps/console npm ci FAILED — check network + lockfile drift"
|
|
110
|
+
fi
|
|
111
|
+
fi
|
|
112
|
+
|
|
113
|
+
# ── Step 2.5: Build dist/ (required for bin/leedab.js) ──────────────────
|
|
114
|
+
step "2.5 Build dist/ (compile TS to JS for the leedab CLI)"
|
|
115
|
+
info "running 'npm run build' at root (tsc + copy-templates)..."
|
|
116
|
+
if npm run build > /dev/null 2>&1; then
|
|
117
|
+
if [ -f dist/gateway.js ] && [ -f dist/openclaw.js ]; then
|
|
118
|
+
ok "dist/ built — bin/leedab.js will resolve its imports"
|
|
119
|
+
else
|
|
120
|
+
VERIFICATION_OK=0
|
|
121
|
+
warn "npm run build succeeded but dist/gateway.js or dist/openclaw.js missing — check tsconfig paths"
|
|
122
|
+
fi
|
|
123
|
+
else
|
|
124
|
+
VERIFICATION_OK=0
|
|
125
|
+
warn "npm run build FAILED — bin/leedab.js will die on first run with ERR_MODULE_NOT_FOUND"
|
|
126
|
+
fi
|
|
127
|
+
|
|
128
|
+
# ── Step 3: Pre-commit hook ─────────────────────────────────────────────
|
|
129
|
+
step "3. Install pre-commit secret-scanner hook"
|
|
130
|
+
info "Side effect: sets repo-local 'core.hooksPath' → .githooks/ (does not touch global git config)."
|
|
131
|
+
if [ -f .githooks/install.sh ]; then
|
|
132
|
+
if bash .githooks/install.sh; then
|
|
133
|
+
ok "pre-commit hook installed"
|
|
134
|
+
else
|
|
135
|
+
warn ".githooks/install.sh exited non-zero — run manually"
|
|
136
|
+
fi
|
|
137
|
+
else
|
|
138
|
+
warn ".githooks/install.sh not found — secret-scanner won't run on commit"
|
|
139
|
+
fi
|
|
140
|
+
|
|
141
|
+
# ── Step 4: LEEDAB_ADMIN_TOKEN + .env.local ────────────────────────────
|
|
142
|
+
step "4. Generate LEEDAB_ADMIN_TOKEN + write apps/console/.env.local"
|
|
143
|
+
ENV_FILE="apps/console/.env.local"
|
|
144
|
+
|
|
145
|
+
if [ -f "$ENV_FILE" ]; then
|
|
146
|
+
if grep -q '^LEEDAB_ADMIN_TOKEN=' "$ENV_FILE"; then
|
|
147
|
+
ok "LEEDAB_ADMIN_TOKEN already set in $ENV_FILE (file untouched)"
|
|
148
|
+
info "to rotate: openssl rand -hex 32, replace LEEDAB_ADMIN_TOKEN= line manually, restart console"
|
|
149
|
+
else
|
|
150
|
+
warn "$ENV_FILE exists but missing LEEDAB_ADMIN_TOKEN"
|
|
151
|
+
if [ -t 0 ]; then
|
|
152
|
+
printf " Append LEEDAB_ADMIN_TOKEN to existing $ENV_FILE? [y/N] "
|
|
153
|
+
read -r confirm
|
|
154
|
+
else
|
|
155
|
+
confirm="n"
|
|
156
|
+
info "(non-interactive run — refusing to modify existing $ENV_FILE; append the line manually)"
|
|
157
|
+
fi
|
|
158
|
+
if [ "$confirm" = "y" ] || [ "$confirm" = "Y" ]; then
|
|
159
|
+
TOKEN=$(openssl rand -hex 32)
|
|
160
|
+
{
|
|
161
|
+
echo ""
|
|
162
|
+
echo "# Added by bin/onboard-cofounder.sh on $(date -u +%Y-%m-%dT%H:%M:%SZ)"
|
|
163
|
+
echo "LEEDAB_ADMIN_TOKEN=$TOKEN"
|
|
164
|
+
} >> "$ENV_FILE"
|
|
165
|
+
unset TOKEN
|
|
166
|
+
ok "appended LEEDAB_ADMIN_TOKEN to existing $ENV_FILE (perms unchanged)"
|
|
167
|
+
fi
|
|
168
|
+
fi
|
|
169
|
+
else
|
|
170
|
+
TOKEN=$(openssl rand -hex 32)
|
|
171
|
+
cat > "$ENV_FILE" <<EOF
|
|
172
|
+
# Local console env. Gitignored via .env.*
|
|
173
|
+
# Generated by bin/onboard-cofounder.sh on $(date -u +%Y-%m-%dT%H:%M:%SZ)
|
|
174
|
+
# Required for license / vault / team / providers / channels / contacts /
|
|
175
|
+
# routing / workspace / preferences mutation routes.
|
|
176
|
+
# To rotate: openssl rand -hex 32, replace below, restart console.
|
|
177
|
+
LEEDAB_ADMIN_TOKEN=$TOKEN
|
|
178
|
+
|
|
179
|
+
# Uncomment + fill these as needed (see apps/console/.env.example):
|
|
180
|
+
# ANTHROPIC_API_KEY=
|
|
181
|
+
# LEEDAB_LICENSE_PUBKEY=
|
|
182
|
+
# LEEDAB_VAULT_KEY=
|
|
183
|
+
# LEEDAB_PROSPECT_REPO_PATH=
|
|
184
|
+
EOF
|
|
185
|
+
chmod 600 "$ENV_FILE"
|
|
186
|
+
unset TOKEN
|
|
187
|
+
ok "created $ENV_FILE with LEEDAB_ADMIN_TOKEN, chmod 600 (newly-created file only)"
|
|
188
|
+
fi
|
|
189
|
+
|
|
190
|
+
# ── Step 5: Typecheck + unit tests ──────────────────────────────────────
|
|
191
|
+
step "5. Typecheck + unit tests"
|
|
192
|
+
TEST_LOG=$(mktemp -t leedab-onboard-tests.XXXXXX)
|
|
193
|
+
|
|
194
|
+
info "running 'npx tsc --noEmit' in apps/console..."
|
|
195
|
+
if (cd apps/console && npx tsc --noEmit > /dev/null 2>&1); then
|
|
196
|
+
ok "typecheck clean"
|
|
197
|
+
else
|
|
198
|
+
VERIFICATION_OK=0
|
|
199
|
+
warn "typecheck FAILED — run 'cd apps/console && npx tsc --noEmit' to see errors"
|
|
200
|
+
fi
|
|
201
|
+
|
|
202
|
+
info "running 'npm run test:unit' in apps/console..."
|
|
203
|
+
if (cd apps/console && npm run test:unit > "$TEST_LOG" 2>&1); then
|
|
204
|
+
TEST_COUNT=$(grep -E '^ℹ tests' "$TEST_LOG" | head -1 | awk '{print $3}')
|
|
205
|
+
ok "unit tests pass (${TEST_COUNT:-?})"
|
|
206
|
+
else
|
|
207
|
+
VERIFICATION_OK=0
|
|
208
|
+
warn "unit tests FAILED — log saved at $TEST_LOG"
|
|
209
|
+
fi
|
|
210
|
+
|
|
211
|
+
# ── Step 6: Secret scanner ──────────────────────────────────────────────
|
|
212
|
+
step "6. Full-tree secret scanner"
|
|
213
|
+
if [ -f bin/scan-secrets-tree.sh ]; then
|
|
214
|
+
if bash bin/scan-secrets-tree.sh > /dev/null 2>&1; then
|
|
215
|
+
ok "no secrets found in tree"
|
|
216
|
+
else
|
|
217
|
+
VERIFICATION_OK=0
|
|
218
|
+
warn "secret scanner found something — run 'bash bin/scan-secrets-tree.sh' to see"
|
|
219
|
+
fi
|
|
220
|
+
else
|
|
221
|
+
warn "bin/scan-secrets-tree.sh not found"
|
|
222
|
+
fi
|
|
223
|
+
|
|
224
|
+
# ── Step 7: Next steps ──────────────────────────────────────────────────
|
|
225
|
+
step "7. Next steps"
|
|
226
|
+
cat <<EOF
|
|
227
|
+
|
|
228
|
+
${BOLD}You're set up.${RESET} What to do next:
|
|
229
|
+
|
|
230
|
+
1. ${BOLD}Read MUIEZ-ONBOARDING.md${RESET} (~10 min) — the 30-min orientation
|
|
231
|
+
2. ${BOLD}Read HANDOFF.md${RESET} (~15 min) — the post-codex security branch + Tarheel deploy plan
|
|
232
|
+
3. ${BOLD}Read CONTRIBUTING.md${RESET} (~5 min) — standard dev workflows
|
|
233
|
+
4. ${BOLD}Open the LeedAB Brain vault${RESET} in Obsidian, read .claude/WELCOME.md (~5 min)
|
|
234
|
+
5. ${BOLD}Start the dev server:${RESET}
|
|
235
|
+
cd apps/console && npm run dev
|
|
236
|
+
Then open http://127.0.0.1:3100 — the wizard prompts you for the
|
|
237
|
+
admin token (already in your .env.local) + license key.
|
|
238
|
+
|
|
239
|
+
${BOLD}Repos to clone separately${RESET} (Mina sends invites):
|
|
240
|
+
• LeedAB Brain (Obsidian vault) — Mina + Muiez canonical, Sync-distributed
|
|
241
|
+
• LeedAB-OS — you're already here
|
|
242
|
+
|
|
243
|
+
${BOLD}Standup command${RESET} (in the LeedAB Brain dir):
|
|
244
|
+
/leedab-standup # rolling 24h activity across all repos
|
|
245
|
+
|
|
246
|
+
${BOLD}Token references${RESET}:
|
|
247
|
+
• Your admin token lives in apps/console/.env.local (chmod 600)
|
|
248
|
+
• To grep: grep '^LEEDAB_ADMIN_TOKEN=' apps/console/.env.local | cut -d= -f2-
|
|
249
|
+
• Vault reference: LeedAB Brain/_secrets/leedab-os-admin-token.md
|
|
250
|
+
|
|
251
|
+
${BOLD}If anything feels broken${RESET}: Telegram Mina. Don't push uncertain
|
|
252
|
+
changes — every shared-repo push warrants a heads-up per team rules.
|
|
253
|
+
|
|
254
|
+
EOF
|
|
255
|
+
|
|
256
|
+
if [ "$VERIFICATION_OK" -eq 1 ]; then
|
|
257
|
+
ok "onboarding complete — verification clean"
|
|
258
|
+
else
|
|
259
|
+
echo
|
|
260
|
+
warn "onboarding finished with verification failures (see warnings above)"
|
|
261
|
+
warn "fix those before opening a PR; re-run this script to re-verify"
|
|
262
|
+
exit 1
|
|
263
|
+
fi
|
|
@@ -0,0 +1,303 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
#
|
|
3
|
+
# bin/onboard-customer.sh — provision a fresh customer brain + manifest.
|
|
4
|
+
#
|
|
5
|
+
# Takes a slug + industry + display name and produces:
|
|
6
|
+
# 1. clients/<slug>/manifest.json (LeedAB-OS-side, in this repo)
|
|
7
|
+
# 2. context/customers/<slug>/playbook.md (LeedAB-OS-side)
|
|
8
|
+
# 3. ~/leedab-brains/<slug>/ (per-customer Obsidian vault, git-init'd)
|
|
9
|
+
# — instantiated from _schema/customer-brain-template/
|
|
10
|
+
#
|
|
11
|
+
# Usage:
|
|
12
|
+
# bin/onboard-customer.sh <slug> <industry> "<display name>" [tier]
|
|
13
|
+
#
|
|
14
|
+
# Examples:
|
|
15
|
+
# bin/onboard-customer.sh acme-coffee hospitality "Acme Coffee Roasters"
|
|
16
|
+
# bin/onboard-customer.sh wattle-legal professional "Wattle Legal" starter
|
|
17
|
+
#
|
|
18
|
+
# Industry → default agent roster mapping mirrors apps/console/lib/solutions/
|
|
19
|
+
# parse-brief.ts. New industries default to a generic SMB roster.
|
|
20
|
+
#
|
|
21
|
+
# Per-target idempotency: re-runs create only missing artefacts. Each of
|
|
22
|
+
# the three targets (manifest / playbook / brain) is checked independently;
|
|
23
|
+
# anything that already exists is skipped with a logged note. --force
|
|
24
|
+
# overwrites everything regardless. --dry prints the plan without writing.
|
|
25
|
+
|
|
26
|
+
set -euo pipefail
|
|
27
|
+
|
|
28
|
+
# ─── Args ────────────────────────────────────────────────────────────────────
|
|
29
|
+
DRY=0
|
|
30
|
+
FORCE=0
|
|
31
|
+
ARGS=()
|
|
32
|
+
for a in "$@"; do
|
|
33
|
+
case "$a" in
|
|
34
|
+
--dry) DRY=1 ;;
|
|
35
|
+
--force) FORCE=1 ;;
|
|
36
|
+
*) ARGS+=("$a") ;;
|
|
37
|
+
esac
|
|
38
|
+
done
|
|
39
|
+
|
|
40
|
+
if [ "${#ARGS[@]}" -lt 3 ]; then
|
|
41
|
+
echo "Usage: $0 <slug> <industry> \"<display name>\" [tier] [--dry] [--force]" >&2
|
|
42
|
+
echo "" >&2
|
|
43
|
+
echo "Industries with defaults: logistics, hospitality, retail, trades, professional" >&2
|
|
44
|
+
echo "Tier: leave blank for prospect (license_key=null), or set 'logistics-pro' / 'starter' / 'founder'" >&2
|
|
45
|
+
exit 1
|
|
46
|
+
fi
|
|
47
|
+
|
|
48
|
+
SLUG="${ARGS[0]}"
|
|
49
|
+
INDUSTRY="${ARGS[1]}"
|
|
50
|
+
DISPLAY_NAME="${ARGS[2]}"
|
|
51
|
+
TIER="${ARGS[3]:-null}"
|
|
52
|
+
|
|
53
|
+
# ─── Validate slug ───────────────────────────────────────────────────────────
|
|
54
|
+
if ! [[ "$SLUG" =~ ^[a-z0-9]([a-z0-9-]{0,58}[a-z0-9])?$ ]]; then
|
|
55
|
+
echo "ERROR: slug must be lowercase alphanumeric + hyphens, 1-60 chars, no leading/trailing hyphen" >&2
|
|
56
|
+
exit 2
|
|
57
|
+
fi
|
|
58
|
+
|
|
59
|
+
# ─── Locate repo root ────────────────────────────────────────────────────────
|
|
60
|
+
SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd)
|
|
61
|
+
REPO_ROOT=$(cd "$SCRIPT_DIR/.." && pwd)
|
|
62
|
+
|
|
63
|
+
if [ ! -d "$REPO_ROOT/_schema/customer-brain-template" ]; then
|
|
64
|
+
echo "ERROR: _schema/customer-brain-template not found at $REPO_ROOT/_schema" >&2
|
|
65
|
+
exit 3
|
|
66
|
+
fi
|
|
67
|
+
|
|
68
|
+
# ─── Resolve agent roster from industry ──────────────────────────────────────
|
|
69
|
+
case "$INDUSTRY" in
|
|
70
|
+
logistics)
|
|
71
|
+
DEFAULT_TIER="logistics-pro"
|
|
72
|
+
AGENTS='["coo","concierge","ops","procurement","cx","finance","sales"]'
|
|
73
|
+
;;
|
|
74
|
+
hospitality)
|
|
75
|
+
DEFAULT_TIER="null"
|
|
76
|
+
AGENTS='["coo","concierge","cx","marketing","content","campaigns","people","ops","finance"]'
|
|
77
|
+
;;
|
|
78
|
+
retail)
|
|
79
|
+
DEFAULT_TIER="null"
|
|
80
|
+
AGENTS='["coo","concierge","cx","marketing","campaigns","ops","procurement","finance"]'
|
|
81
|
+
;;
|
|
82
|
+
trades|construction)
|
|
83
|
+
DEFAULT_TIER="null"
|
|
84
|
+
AGENTS='["coo","concierge","sales","finance","ops","cx","procurement"]'
|
|
85
|
+
;;
|
|
86
|
+
professional)
|
|
87
|
+
DEFAULT_TIER="null"
|
|
88
|
+
AGENTS='["coo","concierge","sales","marketing","content","email","finance","people","compliance","legal","cx"]'
|
|
89
|
+
;;
|
|
90
|
+
*)
|
|
91
|
+
DEFAULT_TIER="null"
|
|
92
|
+
AGENTS='["coo","concierge","ops","cx","sales","marketing","finance"]'
|
|
93
|
+
;;
|
|
94
|
+
esac
|
|
95
|
+
|
|
96
|
+
# Honour explicit tier arg over the default.
|
|
97
|
+
if [ "$TIER" = "null" ]; then
|
|
98
|
+
TIER="$DEFAULT_TIER"
|
|
99
|
+
fi
|
|
100
|
+
|
|
101
|
+
# ─── Paths ───────────────────────────────────────────────────────────────────
|
|
102
|
+
MANIFEST_DIR="$REPO_ROOT/clients/$SLUG"
|
|
103
|
+
MANIFEST_FILE="$MANIFEST_DIR/manifest.json"
|
|
104
|
+
CONTEXT_DIR="$REPO_ROOT/context/customers/$SLUG"
|
|
105
|
+
PLAYBOOK_FILE="$CONTEXT_DIR/playbook.md"
|
|
106
|
+
BRAIN_DIR="${LEEDAB_BRAINS_ROOT:-$HOME/leedab-brains}/$SLUG"
|
|
107
|
+
|
|
108
|
+
DATE_ISO=$(date +%Y-%m-%d)
|
|
109
|
+
|
|
110
|
+
# ─── Plan output (always shown, dry or not) ──────────────────────────────────
|
|
111
|
+
echo "──────────────────────────────────────────────"
|
|
112
|
+
echo " ONBOARD CUSTOMER PLAN"
|
|
113
|
+
echo "──────────────────────────────────────────────"
|
|
114
|
+
printf " slug: %s\n" "$SLUG"
|
|
115
|
+
printf " display_name: %s\n" "$DISPLAY_NAME"
|
|
116
|
+
printf " industry: %s\n" "$INDUSTRY"
|
|
117
|
+
printf " tier: %s\n" "$TIER"
|
|
118
|
+
printf " agents: %s\n" "$AGENTS"
|
|
119
|
+
echo ""
|
|
120
|
+
echo " Will write:"
|
|
121
|
+
echo " $MANIFEST_FILE"
|
|
122
|
+
echo " $PLAYBOOK_FILE"
|
|
123
|
+
echo " $BRAIN_DIR/ (full schema)"
|
|
124
|
+
echo ""
|
|
125
|
+
|
|
126
|
+
if [ "$DRY" -eq 1 ]; then
|
|
127
|
+
echo "(dry run — no files written)"
|
|
128
|
+
exit 0
|
|
129
|
+
fi
|
|
130
|
+
|
|
131
|
+
# ─── Per-target collision policy ─────────────────────────────────────────────
|
|
132
|
+
# Each target is independently checked. Existing targets are skipped with
|
|
133
|
+
# a logged note unless --force is passed. This lets the script repair a
|
|
134
|
+
# partial provisioning (e.g. brain created but playbook missing) without
|
|
135
|
+
# clobbering already-curated artefacts.
|
|
136
|
+
SKIP_MANIFEST=0
|
|
137
|
+
SKIP_PLAYBOOK=0
|
|
138
|
+
SKIP_BRAIN=0
|
|
139
|
+
if [ "$FORCE" -eq 0 ]; then
|
|
140
|
+
[ -f "$MANIFEST_FILE" ] && SKIP_MANIFEST=1
|
|
141
|
+
[ -f "$PLAYBOOK_FILE" ] && SKIP_PLAYBOOK=1
|
|
142
|
+
[ -d "$BRAIN_DIR" ] && SKIP_BRAIN=1
|
|
143
|
+
fi
|
|
144
|
+
|
|
145
|
+
if [ "$SKIP_MANIFEST" -eq 1 ] && [ "$SKIP_PLAYBOOK" -eq 1 ] && [ "$SKIP_BRAIN" -eq 1 ]; then
|
|
146
|
+
echo "All three targets already exist — nothing to do."
|
|
147
|
+
echo " manifest: $MANIFEST_FILE"
|
|
148
|
+
echo " playbook: $PLAYBOOK_FILE"
|
|
149
|
+
echo " brain: $BRAIN_DIR"
|
|
150
|
+
echo ""
|
|
151
|
+
echo "Pass --force to overwrite, or remove individual targets to re-provision them."
|
|
152
|
+
exit 0
|
|
153
|
+
fi
|
|
154
|
+
|
|
155
|
+
# ─── Write manifest (skip if exists, unless --force) ─────────────────────────
|
|
156
|
+
if [ "$SKIP_MANIFEST" -eq 1 ]; then
|
|
157
|
+
echo "↷ skipped $MANIFEST_FILE (already exists — pass --force to overwrite)"
|
|
158
|
+
else
|
|
159
|
+
mkdir -p "$MANIFEST_DIR"
|
|
160
|
+
TIER_JSON='null'
|
|
161
|
+
if [ "$TIER" != "null" ]; then
|
|
162
|
+
TIER_JSON="\"$TIER\""
|
|
163
|
+
fi
|
|
164
|
+
cat > "$MANIFEST_FILE" <<JSON
|
|
165
|
+
{
|
|
166
|
+
"schema_version": "1.0",
|
|
167
|
+
"client_id": "$SLUG",
|
|
168
|
+
"display_name": "$DISPLAY_NAME",
|
|
169
|
+
"industry": "$INDUSTRY",
|
|
170
|
+
"tier": $TIER_JSON,
|
|
171
|
+
"license_key": null,
|
|
172
|
+
"status": "prospect",
|
|
173
|
+
"agents": $AGENTS,
|
|
174
|
+
"overrides": {},
|
|
175
|
+
"playbook_files": ["context/customers/$SLUG/playbook.md"],
|
|
176
|
+
"template_ids": null
|
|
177
|
+
}
|
|
178
|
+
JSON
|
|
179
|
+
echo "✓ wrote $MANIFEST_FILE"
|
|
180
|
+
fi
|
|
181
|
+
|
|
182
|
+
# ─── Write playbook (skip if exists, unless --force) ─────────────────────────
|
|
183
|
+
if [ "$SKIP_PLAYBOOK" -eq 1 ]; then
|
|
184
|
+
echo "↷ skipped $PLAYBOOK_FILE (already exists — pass --force to overwrite)"
|
|
185
|
+
else
|
|
186
|
+
mkdir -p "$CONTEXT_DIR"
|
|
187
|
+
cat > "$PLAYBOOK_FILE" <<MD
|
|
188
|
+
# $DISPLAY_NAME — customer playbook
|
|
189
|
+
|
|
190
|
+
> Provisioned $DATE_ISO via \`bin/onboard-customer.sh\`. Industry: **$INDUSTRY**. Tier: **$TIER**.
|
|
191
|
+
|
|
192
|
+
## Profile
|
|
193
|
+
|
|
194
|
+
- **Industry:** $INDUSTRY
|
|
195
|
+
- **Stage:** prospect (license_key null)
|
|
196
|
+
- **Brain:** \`~/leedab-brains/$SLUG/\`
|
|
197
|
+
|
|
198
|
+
## Style + tone
|
|
199
|
+
|
|
200
|
+
(replace this stub — what does $DISPLAY_NAME's voice sound like?)
|
|
201
|
+
|
|
202
|
+
## Operational hooks
|
|
203
|
+
|
|
204
|
+
(replace this stub — what's their stack, who's the primary contact, what triggers escalation?)
|
|
205
|
+
|
|
206
|
+
## Champion
|
|
207
|
+
|
|
208
|
+
The Champion at $DISPLAY_NAME hasn't been designated yet. Set this during the kickoff call and update \`00_Org/champion-profile.md\` in the brain.
|
|
209
|
+
MD
|
|
210
|
+
echo "✓ wrote $PLAYBOOK_FILE"
|
|
211
|
+
fi
|
|
212
|
+
|
|
213
|
+
# ─── Provision brain (skip if exists, unless --force) ────────────────────────
|
|
214
|
+
TEMPLATE="$REPO_ROOT/_schema/customer-brain-template"
|
|
215
|
+
if [ "$SKIP_BRAIN" -eq 1 ]; then
|
|
216
|
+
echo "↷ skipped $BRAIN_DIR (already exists — pass --force to overwrite)"
|
|
217
|
+
else
|
|
218
|
+
if [ "$FORCE" -eq 1 ] && [ -d "$BRAIN_DIR" ]; then
|
|
219
|
+
rm -rf "$BRAIN_DIR"
|
|
220
|
+
fi
|
|
221
|
+
mkdir -p "$(dirname "$BRAIN_DIR")"
|
|
222
|
+
cp -R "$TEMPLATE" "$BRAIN_DIR"
|
|
223
|
+
|
|
224
|
+
# Substitute placeholders in the brain
|
|
225
|
+
# Use perl for cross-platform sed-with-binary-safety. (BSD sed in-place
|
|
226
|
+
# differs from GNU sed; perl is consistent.)
|
|
227
|
+
perl -pi -e "s/\\{\\{DISPLAY_NAME\\}\\}/$DISPLAY_NAME/g" \
|
|
228
|
+
"$BRAIN_DIR/CLAUDE.md" "$BRAIN_DIR/README.md" "$BRAIN_DIR/.gitignore" \
|
|
229
|
+
"$BRAIN_DIR/_secrets/README.md" "$BRAIN_DIR/_inbox/champion-day-0.md" \
|
|
230
|
+
"$BRAIN_DIR/01_Customers/engagement.md"
|
|
231
|
+
perl -pi -e "s/\\{\\{CLIENT_ID\\}\\}/$SLUG/g" \
|
|
232
|
+
"$BRAIN_DIR/CLAUDE.md" "$BRAIN_DIR/README.md" "$BRAIN_DIR/_inbox/champion-day-0.md" \
|
|
233
|
+
"$BRAIN_DIR/01_Customers/engagement.md"
|
|
234
|
+
perl -pi -e "s/\\{\\{INDUSTRY\\}\\}/$INDUSTRY/g" \
|
|
235
|
+
"$BRAIN_DIR/CLAUDE.md" "$BRAIN_DIR/README.md" \
|
|
236
|
+
"$BRAIN_DIR/01_Customers/engagement.md"
|
|
237
|
+
perl -pi -e "s/\\{\\{TIER\\}\\}/$TIER/g" \
|
|
238
|
+
"$BRAIN_DIR/CLAUDE.md" "$BRAIN_DIR/README.md" "$BRAIN_DIR/_inbox/champion-day-0.md"
|
|
239
|
+
perl -pi -e "s/\\{\\{PROVISIONED_DATE\\}\\}/$DATE_ISO/g" \
|
|
240
|
+
"$BRAIN_DIR/CLAUDE.md" "$BRAIN_DIR/README.md" "$BRAIN_DIR/_inbox/champion-day-0.md" \
|
|
241
|
+
"$BRAIN_DIR/01_Customers/engagement.md"
|
|
242
|
+
|
|
243
|
+
echo "✓ provisioned brain at $BRAIN_DIR"
|
|
244
|
+
|
|
245
|
+
# ─── Initialise git in the brain ───────────────────────────────────────────
|
|
246
|
+
(
|
|
247
|
+
cd "$BRAIN_DIR"
|
|
248
|
+
git init -q
|
|
249
|
+
git add -A
|
|
250
|
+
git commit -q -m "init: $DISPLAY_NAME brain (provisioned $DATE_ISO)" 2>/dev/null || true
|
|
251
|
+
)
|
|
252
|
+
echo "✓ git init'd brain at $BRAIN_DIR"
|
|
253
|
+
fi
|
|
254
|
+
|
|
255
|
+
# ─── Seed industry-shaped workflows into _Workflows/ ─────────────────────────
|
|
256
|
+
# Two paths:
|
|
257
|
+
# 1. Dev server reachable: use the HTTP /api/templates/regenerate endpoint
|
|
258
|
+
# (also exercises the route + cache layers, useful for verification).
|
|
259
|
+
# 2. Dev server not up: fall back to the offline CLI seeder
|
|
260
|
+
# (bin/seed-workflows.mjs) so provisioning still seeds workflows
|
|
261
|
+
# day-1. No HTTP, no Next.js server needed.
|
|
262
|
+
if curl -sf -m 2 "http://127.0.0.1:3200/api/usage" > /dev/null 2>&1; then
|
|
263
|
+
SEED_RES=$(curl -sf -X POST -m 30 "http://127.0.0.1:3200/api/templates/regenerate?client=$SLUG" 2>/dev/null || echo "")
|
|
264
|
+
if [ -n "$SEED_RES" ]; then
|
|
265
|
+
SEED_COUNT=$(echo "$SEED_RES" | python3 -c "import sys,json; print(json.load(sys.stdin).get('written', 0))" 2>/dev/null || echo "?")
|
|
266
|
+
echo "✓ seeded $SEED_COUNT industry workflow(s) into $BRAIN_DIR/_Workflows/ (via dev server)"
|
|
267
|
+
else
|
|
268
|
+
echo "⚠ workflow seeder reachable but errored — falling back to offline CLI"
|
|
269
|
+
if node --experimental-strip-types "$REPO_ROOT/bin/seed-workflows.mjs" "$SLUG" "$INDUSTRY" 2>&1 | grep -E "^(✓|⚠|✗)"; then
|
|
270
|
+
: # output already shown
|
|
271
|
+
else
|
|
272
|
+
echo "⚠ offline CLI also failed — run: node --experimental-strip-types $REPO_ROOT/bin/seed-workflows.mjs $SLUG $INDUSTRY"
|
|
273
|
+
fi
|
|
274
|
+
fi
|
|
275
|
+
else
|
|
276
|
+
echo "⚠ dev server not on :3200 — using offline CLI seeder"
|
|
277
|
+
if node --experimental-strip-types "$REPO_ROOT/bin/seed-workflows.mjs" "$SLUG" "$INDUSTRY" 2>&1 | grep -E "^(✓|⚠|✗)"; then
|
|
278
|
+
: # output already shown
|
|
279
|
+
else
|
|
280
|
+
echo "⚠ offline CLI failed — run: node --experimental-strip-types $REPO_ROOT/bin/seed-workflows.mjs $SLUG $INDUSTRY"
|
|
281
|
+
fi
|
|
282
|
+
fi
|
|
283
|
+
|
|
284
|
+
# ─── Next steps ──────────────────────────────────────────────────────────────
|
|
285
|
+
echo ""
|
|
286
|
+
echo "──────────────────────────────────────────────"
|
|
287
|
+
echo " NEXT STEPS"
|
|
288
|
+
echo "──────────────────────────────────────────────"
|
|
289
|
+
echo ""
|
|
290
|
+
echo " 1. Add to demo switcher (apps/console/app/components/DemoSwitcher.tsx)"
|
|
291
|
+
echo " — emoji + colour for $SLUG so you can flip to it on screen-shares."
|
|
292
|
+
echo ""
|
|
293
|
+
echo " 2. Smoke the manifest:"
|
|
294
|
+
echo " curl -s 'http://127.0.0.1:3200/api/pack?client=$SLUG' | python3 -m json.tool | head -10"
|
|
295
|
+
echo ""
|
|
296
|
+
echo " 3. (Customer install) When this prospect converts to paying:"
|
|
297
|
+
echo " a. Mint a license key via the agentmind backend"
|
|
298
|
+
echo " b. Set status='active' + license_key=<key> in $MANIFEST_FILE"
|
|
299
|
+
echo " c. Set up Obsidian Sync on the customer's Mac Mini pointing at $BRAIN_DIR"
|
|
300
|
+
echo ""
|
|
301
|
+
echo " 4. Brief the Champion: send them the URL to $BRAIN_DIR/_inbox/champion-day-0.md"
|
|
302
|
+
echo ""
|
|
303
|
+
echo "Done."
|