ROOMKIT / CONVERSATION STUDY 02
New conversation

A LITTLE MORE POSSIBLE.

Where should
we start?

A thought, an image, a conversation.
Bring it here. We’ll work through it together.

Image

BRING IT INTO THE CONVERSATION

What would you like to share?

Choose a view. You can stop sharing at any time.

ROOMKIT · DIRECTION PRODUIT

Une conversation.
Plusieurs façons de se comprendre.

Le changement majeur : la conversation devient l’objet principal de RoomKit. La voix, le texte, les images et le partage visuel enrichissent le même échange.

Ce que je retiens de ta référence Gemini

L’espace, une invitation simple au centre, le modèle accessible en haut, puis un compositeur unique avec ajout de contexte, dictée et conversation vocale. J’adapte ce principe au bureau, avec un historique latéral et des images qu’on peut examiner à côté du fil.

Référence consultée dans Luge : « Identification de l’écran Gemini Flash sur téléphone », conversation bd171a6b-6fce-44fd-a4c0-bdc86e96b54d. La capture personnelle n’est pas embarquée dans cet artefact.

Les décisions structurantes

  1. Écrire sans démarrer un appel. L’entrée principale devient le compositeur. Le microphone de dictée remplit le brouillon ; Go Live démarre un échange vocal continu.
  2. Un fil persistant. Terminer le vocal, reconnecter ou changer de vue conserve messages, images et brouillon. « Nouvelle conversation » devient une action explicite.
  3. L’image fait partie du message. Aperçu avant envoi, retrait possible, image dans le fil, agrandissement et réponse visuelle. Une capture ponctuelle reste distincte d’un partage continu.
  4. Le Live accompagne le fil. Un panneau léger rend visibles écoute, réflexion, parole et pause. Le texte reste accessible ; interrompre la réponse et couper le micro sont deux actions distinctes.
  5. Le contexte se voit. La source partagée est nommée et son arrêt reste à portée. Les détails d’outils sont repliés, les résultats utiles restent dans le fil.
  6. Les capacités guident les actions. Un modèle sans vision explique l’indisponibilité. Changer de modèle ne jette jamais une image ou un brouillon en silence.

Ce que le prototype permet d’essayer

Les scénarios en haut montrent accueil, texte + image, Live, partage et reconnexion. Le compositeur accepte une image locale, un collage ou un glisser-déposer. Les réponses sont écrites à l’avance ; le micro, la caméra et l’écran sont simulés. Le clair/sombre et la navigation fonctionnent. Les échanges et brouillons de la démonstration restent disponibles tant que cette page est ouverte.

Du socle existant à l’expérience proposée

BesoinVérifié dans le codeTravail UI / orchestration
Texte + imageRoomKit 0.97 : TextContent, MediaContent, CompositeContent ; vision selon le provider.Compositeur, ingestion locale, messages à plusieurs contenus et rendu des images.
Conversation LiveRealtimeVoiceChannel.inject_text() et inject_image(). Le support image dépend du provider.Relier les entrées au contexte de la session ; afficher les capacités et les erreurs.
Caméra / écranBackends vidéo local et ScreenCaptureBackend présents dans RoomKit ; dépendances spécifiques.Sélection et permissions système, aperçu, cadence d’images et arrêt explicite.
Historique visibleUne mémoire SQLite existe déjà dans une room partagée. La fenêtre reste fixée à 420 px et réinitialise le fil visible à l’arrêt.Réutiliser SQLite, identifier chaque conversation et restaurer le fil visible indépendamment du cycle audio.
Réponse visuelleTypes de contenus média et composants MCP Apps existants.Rendu unifié des résultats. Génération d’images à raccorder à un provider/outil compatible.

Un ordre d’intégration vérifiable

01

Le nouveau fil

Fenêtre redimensionnable, conversations distinctes sur le stockage existant, saisie de texte et images. D’abord un parcours complet avec Gemini.

02

Le Live dans le fil

Session vocale, dictée distincte, interruption, reprise et erreurs. Conserver le contexte entre les modes.

03

Regarder ensemble

Caméra, partage d’écran, capacités par configuration et résultats visuels des outils.

Pour chaque lot : captures natives face à cet artefact, clair/sombre et largeur minimale, puis suppression des widgets remplacés. L’ancienne barre d’appel, le grand indicateur audio et le voile bloquant disparaissent lorsque leurs remplaçants sont intégrés.

Audit local : widgets/main_window.py, engine.py, memory.py et sources installées de RoomKit 0.97. Aucun comportement de ce prototype n’est encore raccordé au moteur.