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]