Markdown como Protocolo para Interface de Agente com Execução em Fluxo Contínuo

Um desenvolvedor construiu um protótipo explorando como combinar interface gerativa com execução de código para agentes de IA usando Markdown como um protocolo unificado. O sistema transmite texto, código executável e dados em uma única resposta, com o código sendo executado incrementalmente conforme chega.
O Protocolo: Markdown com Três Tipos de Blocos
A abordagem usa a sintaxe padrão do Markdown que os LLMs já entendem, evitando a necessidade de ensinar novos formatos. Ela define três tipos de blocos:
- Blocos de texto: Formatação simples de Markdown que é transmitida ao usuário
- Cercas de código:
```tsx agent.runexecuta código TypeScript/JSX no servidor em um contexto persistente - Cercas de dados:
```json agent.data => "id"transmite dados JSON para componentes de interface
Esses blocos podem ser intercalados em qualquer ordem dentro de uma única resposta. O analisador os processa incrementalmente conforme os tokens chegam do LLM.
Execução em Streaming
O código é executado instrução por instrução conforme o LLM o gera, sem esperar que a cerca de código completa seja fechada. Isso permite que chamadas de API comecem, a interface seja renderizada e erros surjam enquanto o LLM ainda está enviando tokens. O desenvolvedor construiu bun-streaming-exec para lidar com isso, usando vm.Script com encapsulamento personalizado, já que a execução em streaming não é um primitivo padrão de tempo de execução.
Interface Agêntica com o Primitivo mount()
O sistema usa React para geração de interface, pois os LLMs têm ampla exposição a componentes React e JSX. O primitivo central é mount():
mount({
ui: () => <Card>Olá do agente!</Card>
});Quando o LLM gera esse código e o servidor o executa, mount() serializa o componente React e o envia ao cliente para renderização dentro da interface de chat.
Padrões de Fluxo de Dados
O protótipo implementa quatro padrões distintos para movimentação de dados:
- Cliente → Servidor (formulários): O agente pode aguardar entrada do usuário por meio de formulários
- Servidor → Cliente (dados transmitidos): Cercas de dados transmitem JSON diretamente para interfaces montadas
- Servidor → LLM (console.log): A saída de
console.loge exceções são enviadas de volta ao LLM como um novo turno - LLM → Servidor → Cliente (ciclo completo): Ciclos completos onde o LLM gera código que busca dados e renderiza interface com esses dados
Ciclo de Feedback
O sistema usa console.log como mecanismo para o agente conversar consigo mesmo. Quando o LLM gera Markdown com blocos de código, o texto é transmitido ao usuário enquanto o código é executado incrementalmente. Qualquer saída de console.* ou exceções são enviadas de volta ao LLM como um novo turno. Se não houver saída ou exceções, o sistema aguarda uma nova consulta do usuário.
Isso permite que o agente reaja à sua própria execução, como verificar contagens de mensagens ou pausar para aguardar entrada do usuário antes de prosseguir.
📖 Read the full source: HN AI Agents
👀 See Also

Pacotes de Contexto de IA de Código Aberto para Questões Jurídicas, de Conformidade e Financeiras
Um desenvolvedor utilizou o Claude para pesquisar e construir 32 pacotes de contexto gratuitos e de código aberto que fornecem respostas específicas para perguntas jurídicas, de conformidade e financeiras, em vez de respostas genéricas do tipo 'consulte um advogado'. Os pacotes abrangem GDPR, contratos, cobrança de SaaS, Lei de IA da UE e mais.

Claude Code Adiciona Modo Automático para Decisões de Permissão
O Claude Code agora possui um modo automático que permite ao Claude tomar decisões de permissão em vez de exigir aprovação manual para cada gravação de arquivo e comando bash. Este modo inclui salvaguardas que verificam cada ação antes de executá-la, com um classificador revisando as chamadas de ferramentas para ações potencialmente destrutivas.

HostMyClaudeHTML: Compartilhamento com Um Clique para Artefatos HTML do Claude
Um desenvolvedor criou hostmyclaudehtml.com, uma ferramenta gratuita que permite compartilhar artefatos HTML gerados pelo Claude como URLs ativos arrastando e soltando o arquivo .html. Não é necessário criar conta para quem faz upload ou para quem visualiza.

Claude Code v2.1.144: Sessões em Segundo Plano, Escopo de /model e Timeout de Inicialização de 15s
O Claude Code v2.1.144 adiciona /resume para sessões em segundo plano, limita /model à sessão atual e corrige uma parada de 75s na inicialização quando api.anthropic.com está inacessível com um timeout de 15s.