Architecture
Comment MyBotBox est construit — le modèle C4, le pipeline de requêtes, la multi-location et le flux de données d'exécution.
MyBotBox est une plateforme multi-locataire pour créer, déployer et exécuter des workflows d'agents IA. Cette section constitue la référence de conception du système : comment les composants s'articulent, comment une requête est authentifiée et autorisée, comment les locataires sont isolés, et comment un workflow s'exécute concrètement.
Ces pages décrivent l'architecture hébergée. Le même code source peut être auto-hébergé — chaque dépendance externe (base de données, cache, file d'attente, stockage, e-mail, fournisseur LLM) se trouve derrière un port interchangeable, ce qui vous permet de le connecter à votre propre infrastructure.
En un coup d'œil
graph LR
subgraph BUILD ["Build"]
A[Visual Canvas] --> B[190 Blocks]
end
subgraph ENGINE ["Engine"]
C[Serializer] --> D[Executor DAG]
D --> E[30 Block Handlers]
end
subgraph DEPLOY ["Deploy"]
F[REST API]
G[Webhook]
H[Schedule / Poll]
I[Chat]
end
B --> C
E --> F & G & H & IUn workflow est conçu sur un canvas ReactFlow, sérialisé en graphe d'exécution, exécuté par un exécuteur DAG topologique qui distribue chaque nœud vers un gestionnaire typé, et déployé sous forme de version immuable accessible par API, webhook, planification, interrogation ou chat.
Dans cette section
Modèle C4
Vues Contexte → Conteneur → Déploiement → Composant → Code de la plateforme.
Pipeline de requêtes
Les contrôles d'authentification, d'autorisation et de limitation de débit que chaque appel API doit franchir.
Multi-location
Organisations, espaces de travail, workflows, le modèle de permissions et l'identifiant YID.
Exécution et flux de données
Comment une exécution progresse du déclencheur aux gestionnaires, jusqu'aux journaux et à la mesure des coûts.
Technologies
| Couche | Technologie |
|---|---|
| Runtime | Bun, monorepo Turborepo |
| Framework | Next.js 16 (App Router), React 19, TypeScript (strict) |
| Base de données | PostgreSQL 17 (Cloud SQL) + pgvector, Drizzle ORM (90 tables) |
| Cache / limitation de débit | Memorystore Redis 7 (fenêtre glissante), repli en mémoire |
| File d'attente | Cloud Tasks + Cloud Functions (dispatch asynchrone, interrogation) |
| Auth | Firebase Auth (OAuth, SSO/SAML, TOTP), cookie de session JWT |
| IA | 17 adaptateurs de fournisseurs (OpenAI, Anthropic, Gemini, Bedrock, …) |
| Paiements | Stripe (abonnements + mesure de l'utilisation) |
| Hébergement | Google Cloud Run (déploiement canari bleu-vert) |
| Observabilité | OpenTelemetry, Sentry, Datadog |