Partilho a peça que fechei este domingo: um assistente pessoal multimodal em Telegram
(texto e voz, em ambas as direcções) ligado a Gmail, Calendar e ao histórico de actividade
do Drive. Ponto de partida: o template Telegram Bot Assistant dos OsGémeos (Módulo 4).
Resultado final: 19 nodes, 5 tools no AI Agent, memória conversacional de 10 turns por
chat.
O PDF tem três partes. A primeira é a arquitectura e as nove armadilhas que apareceram pelo
caminho, com timestamps. A segunda apresenta três princípios de diagnóstico que ficaram da
sessão. O anexo (páginas 4 a 7) reúne os quatro trechos de código que valem a pena copiar
— Normalizar Update defensivo, Safe Output com cross-node lookup do chatId, branch TTS
completo, e Calendar via HTTP Request com defaults sensatos. Está pensado para adaptação a
outros bots/agentes.
Três pontos transferíveis para outros casos:
1. Bugs stateless têm prioridade de diagnóstico. Quando a confirmação de um turn não
dispara a acção, suspeitar primeiro da memória.
2. A escolha de infra-estrutura segue o constraint, não a preferência. Tentei Postgres em
três configurações antes de optar por Window Buffer in-memory. Persistência fica para
quando houver requisito real.
3. Modelos diferentes para tarefas diferentes. Sonnet para tarefas paralelas no sistema de
ficheiros, Opus 4.7 para diagnóstico arquitectural e re-design.
O esqueleto Telegram Trigger → Normalizar → Switch → AI Agent → Safe Output → Send é
universal. Trocar os tools, o system message e os filtros default adapta a Notion, Sheets,
Linear, ou qualquer API REST.
Quem estiver a construir algo parecido e quiser comparar notas, comente.
[PDF anexo]