Markdown en tant que protocole pour les interfaces agentiques avec exécution en flux continu

✍️ OpenClawRadar📅 Publié: March 22, 2026🔗 Source
Markdown en tant que protocole pour les interfaces agentiques avec exécution en flux continu
Ad

Un développeur a construit un prototype explorant comment combiner une interface utilisateur générative avec l'exécution de code pour les agents d'IA en utilisant Markdown comme protocole unifié. Le système diffuse du texte, du code exécutable et des données dans une seule réponse, le code s'exécutant de manière incrémentielle à mesure qu'il arrive.

Le Protocole : Markdown avec Trois Types de Blocs

L'approche utilise la syntaxe Markdown standard que les LLM comprennent déjà, évitant ainsi d'avoir à enseigner de nouveaux formats. Elle définit trois types de blocs :

  • Blocs de texte : Un formatage Markdown simple qui est diffusé à l'utilisateur
  • Clôtures de code : ```tsx agent.run exécute du code TypeScript/JSX sur le serveur dans un contexte persistant
  • Clôtures de données : ```json agent.data => "id" diffuse des données JSON dans les composants d'interface utilisateur

Ces blocs peuvent être entrelacés dans n'importe quel ordre au sein d'une seule réponse. L'analyseur les traite de manière incrémentielle à mesure que les tokens arrivent du LLM.

Exécution en Flux

Le code s'exécute instruction par instruction à mesure que le LLM le génère, sans attendre la fermeture complète de la clôture de code. Cela permet aux appels d'API de démarrer, à l'interface de s'afficher et aux erreurs de remonter pendant que le LLM envoie encore des tokens. Le développeur a construit bun-streaming-exec pour gérer cela, en utilisant vm.Script avec un enrobage personnalisé car l'exécution en flux n'est pas une primitive standard du runtime.

Ad

Interface Agentique avec la Primitive mount()

Le système utilise React pour la génération d'interface car les LLM ont une grande exposition aux composants React et au JSX. La primitive centrale est mount() :

mount({
  ui: () => <Card>Bonjour de la part de l'agent !</Card>
});

Lorsque le LLM génère ce code et que le serveur l'exécute, mount() sérialise le composant React et l'envoie au client pour qu'il soit rendu dans l'interface de chat.

Modèles de Flux de Données

Le prototype implémente quatre modèles distincts pour le mouvement des données :

  1. Client → Serveur (formulaires) : L'agent peut attendre une saisie utilisateur via des formulaires
  2. Serveur → Client (données diffusées) : Les clôtures de données diffusent du JSON directement dans les interfaces montées
  3. Serveur → LLM (console.log) : La sortie de console.log et les exceptions sont renvoyées au LLM comme un nouveau tour
  4. LLM → Serveur → Client (boucle complète) : Des cycles complets où le LLM génère du code qui récupère des données et affiche une interface avec ces données

Boucle de Rétroaction

Le système utilise console.log comme mécanisme pour que l'agent se parle à lui-même. Lorsque le LLM génère du Markdown avec des blocs de code, le texte est diffusé à l'utilisateur tandis que le code s'exécute de manière incrémentielle. Toute sortie console.* ou exception est renvoyée au LLM comme un nouveau tour. S'il n'y a pas de sortie ou d'exception, le système attend une nouvelle requête utilisateur.

Cela permet à l'agent de réagir à sa propre exécution, par exemple en vérifiant le nombre de messages ou en faisant une pause pour attendre une saisie utilisateur avant de continuer.

📖 Read the full source: HN AI Agents

Ad

👀 See Also

Développeur Crée une Compétence IA Open Source pour Valider des Idées de Start-up, Tue sa Propre Idée en 10 Minutes
Tools

Développeur Crée une Compétence IA Open Source pour Valider des Idées de Start-up, Tue sa Propre Idée en 10 Minutes

Un développeur a créé une compétence IA open source appelée startup-design qui parcourt 8 phases de validation de startup, du brainstorming aux projections financières. En la testant sur sa propre idée de startup, la compétence a posé des questions difficiles qui ont révélé qu'il n'était pas le fondateur idéal pour ce concept particulier.

OpenClawRadar
Flux de travail d'agent IA local utilisant OpenCode, FastMCP et DeepSeek-r1
Tools

Flux de travail d'agent IA local utilisant OpenCode, FastMCP et DeepSeek-r1

Un développeur partage sa configuration d'agent IA locale utilisant OpenCode avec des fichiers AGENTS.md pour des prompts système déterministes, FastMCP pour exposer des fonctions locales, et DeepSeek-r1 via Ollama pour des sous-agents spécifiques comme les tests.

OpenClawRadar
TideSurf : l'outil de compression DOM réduit l'utilisation de tokens des agents web par 30, et accélère le TTFT par 12
Tools

TideSurf : l'outil de compression DOM réduit l'utilisation de tokens des agents web par 30, et accélère le TTFT par 12

TideSurf v0.3 convertit le DOM rendu en un format compressé de type markdown, réduisant la consommation de jetons par 32x sur les pages GitHub par rapport au DOM brut, tout en ajoutant 18 outils interactifs pour les agents LLM.

OpenClawRadar
iai-mcp : Un démon local pour une mémoire OpenClaw persistante entre sessions
Tools

iai-mcp : Un démon local pour une mémoire OpenClaw persistante entre sessions

iai-mcp est un démon open-source qui capture toutes les conversations OpenClaw, les stocke dans trois niveaux de mémoire avec des plongements neuronaux locaux et un chiffrement AES-256, et réinjecte le contexte pertinent lors de nouvelles sessions — rappel textuel >99 %, récupération <100 ms, coût de démarrage de session <3k tokens.

OpenClawRadar