Aller au contenu

Chat IA (ai-chat)

Assistant Claude en streaming : edge function (clé API côté serveur), historique Supabase, onglet Chat.

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

Assistant conversationnel Claude en streaming. Requiert auth.

  • Activer : bun daroms module add ai-chat (onglet Chat, migration ai_conversations / ai_messages, edge function ai-chat).
  • Secrets serveur (jamais dans l’app) : bunx supabase secrets set ANTHROPIC_API_KEY=...
    • AI_CHAT_MODEL (défaut claude-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).

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