Chat IA (ai-chat)
Assistant Claude en streaming : edge function (clé API côté serveur), historique Supabase, onglet Chat.
Fiche technique
Section intitulée « Fiche technique »| Paquet | @daroms/module-ai-chat |
| Activer | bun daroms module add ai-chat |
| Requiert | auth |
| Dépendances natives | aucune |
| Routes ajoutées | app/(tabs)/chat.tsx (ChatScreen) |
| Onglets | chat (icône Sparkles) |
| Migrations | migrations/ai_chat.sql |
| Edge functions | functions/ai-chat |
| Variables d’environnement | aucune |
| Gate de navigation | non |
| Section de réglages | non |
Mise en place et usage
Section intitulée « Mise en place et usage »Assistant conversationnel Claude en streaming. Requiert auth.
- Activer :
bun daroms module add ai-chat(onglet Chat, migrationai_conversations/ai_messages, edge functionai-chat). - Secrets serveur (jamais dans l’app) :
bunx supabase secrets set ANTHROPIC_API_KEY=...AI_CHAT_MODEL(défautclaude-opus-5-5),AI_CHAT_SYSTEM(prompt système),AI_CHAT_DAILY_LIMIT(défaut 50 messages / 24 h).
- Déployer :
bunx supabase functions deploy ai-chat. - Effort
low(réponses rapides) ; repli automatique côté serveur si le modèle décline (fallbacks: "default"), sinon message « ne peut pas répondre ». - Config app :
suggestions(clés i18n affichées quand la conversation est vide).
Configuration
Section intitulée « Configuration »Dans app.manifest.ts > modules['ai-chat'], validée par modules/ai-chat/config.ts au démarrage.
| Clé | Schéma zod | Rôle |
|---|---|---|
suggestions |
z.array(z.string()).default([]) |
Clés i18n (namespace app) des suggestions affichées quand la conversation est vide. |
Valeurs écrites par module add :
{ "suggestions": [ "aiChat.suggestion1", "aiChat.suggestion2" ]}import { ChatScreen, streamReply } from '@daroms/module-ai-chat'-
Valeurs :
ChatScreen,streamReply -
Types :
ChatMessage