Multi-Brand
Manage multiple products and brands with isolated connections, agents, and analytics.
Multi-Brand
Multi-Brand lets you manage multiple products or brands from a single Reeve account. Each brand gets its own connections, agents, analytics, and context — with a product switcher to move between them.
How It Works
Organization (MindFortress)
├── Product: Reeve ← own connectors, agents, dashboard
├── Product: Freya ← own connectors, agents, dashboard
└── Product: TextLands ← own connectors, agents, dashboardProduct Switcher
An iOS-style product switcher in the Cockpit sidebar lets you switch between brands:
┌──────────────────────┐
│ 🐓 Reeve ✓ │
│ 📝 Freya │
│ 🗡️ TextLands │
│ ──────────────────── │
│ + Add Product │
└──────────────────────┘Switching products changes the entire Cockpit context — dashboard, connectors, analytics, and agents all scope to the selected product.
Per-Product Isolation
| Resource | Scoped Per Product? |
|---|---|
| Connector tokens (Stripe, Meta, etc.) | ✅ Yes |
| Dashboard panels | ✅ Yes |
| Brand Intelligence | ✅ Yes |
| Agent workspaces | ✅ Yes |
| Goals | ✅ Yes |
| Org-level config | ❌ Shared |
| User preferences | ❌ Shared |
Architecture
Multi-brand is implemented across three repos:
- Frontend:
useWorkProduct()context provides the currentproduct_idto all components - Services:
productFetch()wrapper addsX-Product-IDheader to all API calls - Gateway: Org-level config shared, per-product agent workspaces separated
API calls carry the product context:
// Frontend: all API calls scoped to current product
const data = await productFetch<DashboardData>("/api/dashboard/summary");
// Automatically adds X-Product-ID header# Services: queries filtered by product_id
connectors = db.query(ConnectorToken).filter(
ConnectorToken.user_id == user.user_id,
ConnectorToken.product_id == product_id
).all()Setup
- Navigate to the product switcher in the Cockpit sidebar
- Click "+ Add Product"
- Enter the product name and optional branding (logo, colors)
- The new product context is created — start connecting services
Each product starts with a clean slate — no connectors, no dashboard data. Connect the relevant platforms for each brand independently.
Multi-brand is a cloud feature. Self-hosted single-user deployments don't need product switching — they operate as a single implicit product.