LITEOPSDOCS
Agents & SystèmesPilot

Architecture

Architecture technique de Pilot : Express API, React SPA, store, services externes.

REF-SPEC/AG001-ARCH v1.0 — 2026-04-09

1. Vue d'ensemble

Pilot est composé d'un backend Express.js et d'un frontend React/Vite séparés. Le backend expose une API REST avec streaming SSE pour les réponses IA. Aucune logique LLM n'est exécutée côté client.

┌─────────────────────────────────────────────────┐
│              Client (React + Vite)               │
│  WorkspaceContext ◄── API REST ──► Services       │
│  React Router          /api/*      externes       │
└───────────────────────┬─────────────────────────┘

         ┌──────────────┼──────────────┐
         │              │              │
    ┌────▼────┐   ┌─────▼─────┐  ┌────▼────┐
    │  SQLite │   │ Anthropic │  │ Mistral │
    │ (libsql)│   │  Claude   │  │   API   │
    └─────────┘   └───────────┘  └─────────┘

                  ┌─────▼─────┐
                  │  Ollama   │
                  │  (local)  │
                  └───────────┘

2. Backend — Modules

ModuleFichierResponsabilité
Serveur principalserver/index.js60+ routes API, upload, parsing, transformation
Matérialiseurserver/materializer.jsPré-calcul des 4 vues analytiques
Query builderserver/query-builder.jsConversion specs IA → requêtes SQL
Streamingserver/stream.jsWrapper SSE pour réponses IA
Planificateurserver/scheduler.jsGestion cron (node-cron)

3. Frontend — Structure

CoucheResponsabilité
PagesHomePage, DashboardPage, ChatPage, ReportEditorPage, AdminPage, SchedulePage
Composants25 composants React organisés par fonctionnalité
ContexteWorkspaceProvider + useWorkspace hook
Client APIlib/api.js — factory createWorkspaceApi(slug)
GraphiquesRecharts (bar, pie, composed, area, table)
ÉditeurTipTap + @dnd-kit

4. Navigation

HomePage (/)
  ↓ (sélection workspace)
WorkspaceShell (/:slug/*)
  ├── /dashboard         — Liste rapports + vue d'ensemble
  ├── /editor/new        — Nouveau rapport vierge
  ├── /editor/:id        — Édition rapport existant
  ├── /report/:id        — Vue rapport plein écran
  ├── /chat              — Chat explorateur IA
  ├── /schedules         — Plannings récurrents
  ├── /admin             — Contexte et statistiques
  └── /trash             — Rapports supprimés

5. Modes IA

Pilot supporte un double mode IA basculable à chaud :

Mode Premium (par défaut)

PrioritéModèleUsage
1Claude claude-sonnet-4-20250514Génération principale
2Mistral 3B (cloud)Fallback si Claude indisponible
3Ollama (local)Dernier recours

Mode Local (offline)

ModèleUsage
Ollama + Ministral 3B100% local, aucune donnée envoyée au cloud

Le mode est sélectionnable depuis la sidebar. Le changement s'applique immédiatement à toutes les opérations IA.

6. Services externes

ServiceUsageCoût estimé
Anthropic ClaudeGénération rapports, chat, suggestionsVariable
Mistral APIFallback LLM cloudNégligeable
OllamaMode offlineGratuit (local)

On this page