Integrations
Tout ce qui est encore simulé dans cette maquette, rangé par sprint. Chaque ligne correspond à un marqueur pointillé dans l'interface et à un commentaire BRANCHEMENT dans le code.
Règle de budget : le temps de dev est séparé des 3 h d'apprentissage quotidiennes. La routine sans app (EF SET, mode vocal Claude, dictées) continue quoi qu'il arrive.
S1 Memory loop (text)
Fini quand : Une erreur faite lundi réapparaît et doit être réemployée mardi.
Supabase
Today
Charger le plan du jour depuis `plans` (dernier plan calculé après débrief).
src/lib/services/supabase.tsts-fsrs
Session, bloc Rappel
Sélection des cartes dues (plafond 15 min) et mise à jour Card après notation 1–4.
src/lib/services/fsrs.tsSupabase
Session, bloc Rappel
Insérer `srs_reviews` (rating, confidence, response_ms) et mettre à jour `srs_cards`.
src/lib/services/supabase.tsAPI Claude
Mission vocale
Streaming du tuteur (system prompt §11.1 + constructeur de contexte §8.5, prompt caching).
src/lib/services/claude.tsAPI Claude
Bloc Écrit
Corriger le message, expliquer en français, extraire les erreurs en JSON.
src/lib/services/claude.tsAPI Claude
Fin de session
Analyse post-session (§11.2) renvoyant PostSessionAnalysis.
src/lib/services/claude.tsZod
Fin de session
Valider le JSON avant toute écriture en base (D8).
src/lib/schemas/post-session.tsSupabase
Fin de session
Mettre à jour error_memory, mastery, srs_cards, sessions, plans.
src/lib/services/supabase.tsSupabase
Mistakes
Lire error_memory et son cycle de vie active → reusing → resolved.
src/lib/services/supabase.tsSupabase
Profile
personal_context : projets, clients, collègues, situations (validé avant écriture).
src/lib/services/supabase.tsSupabase
Shell
Auth Supabase (compte unique), middleware de session.
src/lib/services/supabase.ts
S2 Local voice
Fini quand : Mission M02 jouable à la voix, latence < 1,5 s.
faster-whisper
Tous les boutons micro
Envoyer l'audio au service Python local et recevoir { text, words[{w,start,end,probability}] }.
src/lib/services/stt.ts@ricky0123/vad-web
Mission vocale
Fin de parole automatique + barge-in (couper la voix de Claude quand tu parles).
src/lib/services/stt.tsKokoro-82M (ou ElevenLabs)
Mission vocale, jeux
Synthèse phrase par phrase des répliques de Claude, lecture de la 1re phrase immédiatement. Aperçu actuel : speechSynthesis du navigateur.
src/lib/services/tts.tsfaster-whisper
Mission vocale, Progress
Calcul débit, pauses > 1 s, fillers, probabilité moyenne des mots → `speech_metrics`.
src/lib/services/stt.ts
S3 Engine & games
Fini quand : Session de 45 min générée sans intervention.
Supabase
Today
Moteur « quoi maintenant » : SRS dus, nœud prioritaire, modalités, difficulté. Tourne côté serveur sur les données Supabase.
src/lib/engine/*Audio humain réel
Bloc Compréhension, dictée
Servir un clip humain réel du palier courant (L1–L5) à la vitesse calibrée.
src/lib/services/audio.tsAPI Claude
Jeux
Générer une manche (§11.3) à partir de tes erreurs réelles et du nœud du jour.
src/lib/services/claude.ts
S4 Measurement & projection
Fini quand : Écran de projection 3 horizons fonctionnel.
Supabase
Fin de session, Progress
Fourchette ETA sur 14 jours glissants, affichée seulement après 5 sessions.
src/lib/engine/projection.tsSupabase
Progress
Benchmark interne du samedi + consolidation mémoire (appel Claude dédié).
src/lib/services/supabase.ts
S5 Extensions
Fini quand : Missions M03–M12, Azure, import de messages réels.
Azure Pronunciation Assessment
Say it right, diagnostic
Score par phonème (option). Proxy actuel : probabilité Whisper.
src/lib/services/pronunciation.tsYouGlish
Curriculum, cartes
Ouvrir le mot ou chunk dans YouGlish.
src/components/ui/Hook.tsxImport Slack / Gmail
Bloc Écrit
Importer un vrai message Slack / email à corriger.
src/lib/services/claude.ts
Services
- Supabase
- Postgres + Auth + RLS : mémoire, SRS, métriques, plans
- API Claude
- Sans état : contexte reconstruit à chaque appel (Haiku 4.5 / Sonnet 5 temps réel, Sonnet 5 / Opus 5 analyse)
- faster-whisper
- STT local Python, distil-large-v3, word_timestamps, vad_filter
- Kokoro-82M (ou ElevenLabs)
- TTS local Apache 2.0 pour les répliques de Claude. ElevenLabs reste l'alternative cloud.
- @ricky0123/vad-web
- Détection de fin de parole et barge-in dans le navigateur
- ts-fsrs
- Planification des cartes, request_retention 0.9 (Node ≥ 20)
- Azure Pronunciation Assessment
- Option : score par phonème
- Zod
- Validation de tout JSON renvoyé par Claude avant persistance
- Audio humain réel
- Clips 30–60 s (BBC, ELLLO, podcasts tech, YouTube) pour dictée et shadowing, jamais de TTS
- YouGlish
- Prononciation d'un mot ou chunk dans des vidéos réelles
- Import Slack / Gmail
- Tes vrais messages pour la piste écrit (décision ouverte)