Seu agente fica mudo quando trabalha (competitor não)
Tencent Gander: Agent fala ENQUANTO executa tarefas (cerebellum). Seu agente congela? Competitive disadvantage.
Equipe OpenClaw · Time de Engenharia & Produto
A Equipe OpenClaw é formada por engenheiros, designers e especialistas em IA dedicados a construir a melhor plataforma de agentes conversacionais para negócios brasileiros. Combinamos expertise…
Seu agente fica mudo quando trabalha (competitor não).
Você é founder de SaaS.
Seu agente está no WhatsApp.
Customer pergunta: "Qual é meu saldo?"
Agente:
- Conecta ao banco de dados (1 segundo)
- Busca saldo (0.5 segundos)
- Formata resposta (0.5 segundos)
- Envia: "Seu saldo é R$5.000"
- Total: 2 segundos
Customer experience: "Agente respondeu rápido, mas ficou mudo enquanto buscava."
Agora, pergunta mais complexa: "Qual é meu saldo E quais foram minhas últimas 10 transações?"
Agente:
- Busca saldo (1 segundo)
- Busca transações (3 segundos)
- Formata resposta (1 segundo)
- Total: 5 segundos (CONGELADO)
Customer:
- Segundo 0: "Qual é meu saldo E últimas transações?"
- Segundo 1: ... (esperando)
- Segundo 2: ... (esperando)
- Segundo 3: ... (esperando)
- Segundo 4: ... (esperando)
- Segundo 5: Resposta chega
Customer perception: "Agente morreu? Enviou 3 mensagens iguais pra verificar se estava funcionando."
Competitor seu:
Mesma pergunta, MAS agente está rodando Tencent Gander (arquitetura diferente).
Competitor agente:
- Segundo 0: "Buscando seu saldo..."
- Segundo 1: "Seu saldo é R$5.000. Agora buscando transações..."
- Segundo 2: "Encontrei 5 transações. Buscando mais..."
- Segundo 3: "Encontrei 10 transações. Formatando..."
- Segundo 4: "Último saldo E últimas 10 transações: [resposta completa]"
Customer perception: "Agente nunca fica mudo. Sempre me atualizando. Muito melhor que o outro."
Result:
Seu agente: Parece morto (5 segundos de silêncio).
Competitor: Parece vivo + responsive (atualizações contínuas).
Customer escolhe competitor.
Você perde deal.
Ontem, Tencent anunciou:
Gander: AI agent que fala ENQUANTO trabalha em background.
Arquitetura:
- "Cerebellum": Gerencia conversação (nunca fica mudo)
- "Brain": Executa tarefas (busca dados, escreve código, etc)
- Resultado: User nunca vê "carregando...", sempre recebe atualizações
Benchmark:
- Competitor interrompia user 25-30% das vezes ("por favor espere")
- Gander interrompe apenas 8% das vezes
- Improvement: 3-4x melhor na experiência de conversação
Implicação pra seu agente:
Se você não implementar concurrent processing, seu agente será obsoleto em 6-12 meses.
O problema: Arquitetura sequencial mata UX
Por que agentes convencionais congelam
=== TYPICAL AGENT ARCHITECTURE (SEQUENTIAL) ===
Flow:
- User sends message: "Qual é meu saldo + últimas transações?"
- Agent receives message
- Agent thinks: "Need to fetch balance + transactions"
- Agent connects to DB
- Agent fetches balance (1-3 seconds)
- Agent fetches transactions (2-5 seconds)
- Agent formats response (0.5 seconds)
- Agent sends response: "Seu saldo é R$5.000. Transações: ..."
- Total time: 3.5-8.5 seconds
- User experience: FROZEN for 3.5-8.5 seconds (feels broken)
=== USER PERCEPTION ===
Second 0: "Agent got my message" Second 1: "Is it processing? Or broken?" Second 2: "Why is it taking so long?" Second 3: "Let me send the message again" Second 4: "Oh wait, maybe it needs more time" Second 5: "Nope, sending again" Second 6: "This agent sucks" Second 7: "Let me try competitor's agent" Second 8: Agent finally responds
=== THE PROBLEM ===
Sequential processing: ├─ Blocks conversation while working ├─ User sees no activity (appears "dead") ├─ User gets anxious ("Is it working?") ├─ User sends duplicate messages ├─ User leaves (high churn) └─ Result: Bad UX → Customer loss
=== COMPARISON: Gander (CONCURRENT) ===
Flow:
- User sends message: "Qual é meu saldo + últimas transações?"
- Cerebellum receives message
- Cerebellum immediately responds: "Buscando seu saldo e transações..."
- Brain starts working in background: ├─ Fetches balance (1 second) ├─ Brain signals: "Saldo encontrado" └─ Cerebellum sends: "Seu saldo é R$5.000. Buscando transações..."
- Brain continues working: ├─ Fetches transactions (3 seconds) ├─ Brain signals: "Transações encontradas" └─ Cerebellum sends: "Transações: [data]"
- Total conversation updates: 3 (never silent)
- Total time: 4 seconds (but felt shorter because of updates)
- User experience: ENGAGED (always receiving updates)
=== USER PERCEPTION (CONCURRENT) ===
Second 0: "Agent got my message + immediately responded" Second 1: "Agent is working, I can see progress" Second 2: "Agent found my balance, now fetching transactions" Second 3: "Agent is still working, almost done" Second 4: "Agent sent complete response"
Result: Same total time (4 seconds), but feels 2x faster (because user sees progress)
=== KEY METRICS ===
Sequential processing: ├─ Time to first response: 3.5-8.5 seconds ├─ Time to final response: 3.5-8.5 seconds ├─ Number of updates: 1 (at the end) ├─ User perception: Broken/slow (appears frozen) ├─ Perceived time: 10+ seconds (feels like forever) └─ Churn risk: High (user gets frustrated)
Concurrent processing (Gander): ├─ Time to first response: 0.1 seconds ("I'm working") ├─ Time to final response: 4 seconds ├─ Number of updates: 3-4 (progress updates) ├─ User perception: Responsive/working (always updating) ├─ Perceived time: 4 seconds (feels reasonable) └─ Churn risk: Low (user sees progress)
Result: Same 4 seconds, but 10x better UX.
Solução: Arquitetura Cerebellum-Brain
Como implementar concurrent processing
=== GANDER ARCHITECTURE (CEREBELLUM + BRAIN) ===
Component 1: CEREBELLUM (Conversation Manager) ├─ Purpose: Manage real-time conversation ├─ Responsibilities: │ ├─ Receive user messages │ ├─ Send immediate acknowledgment ("Working on it...") │ ├─ Receive updates from Brain (async) │ ├─ Send updates to user (real-time) │ ├─ Handle interruptions ("Stop" or "Change task") │ └─ Never go silent (always respond) ├─ Latency requirement: <100ms (must feel instant) ├─ Tech: Fast LLM (small model like Llama2-7B) └─ Goal: User always sees activity (never frozen)
Component 2: BRAIN (Task Executor) ├─ Purpose: Execute complex tasks in background ├─ Responsibilities: │ ├─ Fetch data from databases │ ├─ Search files / knowledge base │ ├─ Write code / generate content │ ├─ Call external APIs │ ├─ Signal Cerebellum with updates (async) │ └─ Return results to Cerebellum (when done) ├─ Latency requirement: Variable (1-30 seconds OK) ├─ Tech: More capable LLM (Claude, GPT-4, or larger model) ├─ Flexibility: "Swappable brain" (easy to change model/logic) └─ Goal: Execute tasks correctly while Cerebellum keeps talking
Component 3: MESSAGE QUEUE (Async Communication) ├─ Purpose: Connect Cerebellum ↔ Brain ├─ Flow: │ ├─ Cerebellum → Queue: "Please fetch balance + transactions" │ ├─ Brain ← Queue: Read task │ ├─ Brain processes: (1-5 seconds) │ ├─ Brain → Queue: "Status update: balance found (R$5.000)" │ ├─ Cerebellum ← Queue: Read update │ ├─ Cerebellum → User: "Your balance is R$5.000. Fetching transactions..." │ ├─ Brain → Queue: "Status update: transactions found (10 items)" │ ├─ Cerebellum ← Queue: Read update │ ├─ Cerebellum → User: "Found 10 transactions: [data]" │ └─ Brain → Queue: "Task complete" ├─ Tech: RabbitMQ, Redis Streams, or AWS SQS └─ Benefit: Decoupled (Cerebellum never blocked)
=== IMPLEMENTATION ARCHITECTURE ===
┌─────────────┐ │ USER │ │ (WhatsApp) │ └──────┬──────┘ │ (message) ↓ ┌──────────────────────────────────────┐ │ CEREBELLUM (Conversation Layer) │ │ ├─ Fast LLM (Llama2-7B) │ │ ├─ Immediate responses (<100ms) │ │ ├─ Progress updates │ │ └─ Interrupt handling │ └────────┬──────────────────┬──────────┘ │ │ (task)│ │(updates) ↓ ↓ ┌─────────────────────────────────────┐ │ MESSAGE QUEUE (RabbitMQ/Redis) │ │ ├─ Decouples Cerebellum ↔ Brain │ │ └─ Async communication │ └─────────────────────────────────────┘ ↑ ↓ (updates) (task) │ │ ┌────────┴──────────────────┴─────────┐ │ BRAIN (Task Executor) │ │ ├─ Capable LLM (Claude/GPT-4) │ │ ├─ Database queries │ │ ├─ File search │ │ ├─ Code generation │ │ ├─ API calls │ │ └─ Swappable (easy to replace) │ └─────────────────────────────────────┘
=== EXAMPLE FLOW: "Fetch balance + transactions" ===
Time 0s: ├─ User: "Qual é meu saldo + últimas 10 transações?" ├─ Cerebellum receives (LLM: Llama2-7B) ├─ Cerebellum → Brain: {task: "fetch_balance_and_transactions"} ├─ Cerebellum → User: "Um momento, buscando suas informações..." └─ Response time: 50ms (instant)
Time 0.1s: ├─ Brain receives task ├─ Brain starts: Query balance + transactions (in parallel) └─ Status: Processing
Time 1s: ├─ Brain completes: Balance query → R$5.000 ├─ Brain → Queue: {status: "balance_found", value: "R$5.000"} ├─ Cerebellum reads update ├─ Cerebellum → User: "Seu saldo: R$5.000 ✓. Buscando transações..." └─ User sees progress (feels fast)
Time 3s: ├─ Brain completes: Transactions query → [10 items] ├─ Brain → Queue: {status: "transactions_found", items: [...]} ├─ Cerebellum reads update ├─ Cerebellum → User: "Transações: [formatted list]" └─ Conversation complete
Total time: 3 seconds Updates sent: 3 (progress feels fast, never silent) User satisfaction: High (always sees activity)
=== KEY ADVANTAGES ===
-
Never Silent: ├─ Cerebellum always responds within 100ms ├─ User never sees "loading..." └─ Perceived speed: 2-3x faster
-
Interruptible: ├─ User can say "Stop" mid-task ├─ User can say "Actually, just get balance (not transactions)" ├─ Brain cancels unnecessary work └─ Saves compute + improves UX
-
Scalable: ├─ Cerebellum: Lightweight (can handle 1000s of concurrent conversations) ├─ Brain: Heavy tasks (can take 30+ seconds if needed) ├─ Decoupled: Add more Brain workers as load increases └─ No blocking
-
Swappable: ├─ Brain can be Llama2 today ├─ Brain can be GPT-4 tomorrow (no Cerebellum changes) ├─ Easy A/B testing (different brains) └─ Easy to optimize
-
Graceful Degradation: ├─ If Brain is slow: Cerebellum sends progress ("Still working...") ├─ If Brain fails: Cerebellum can fallback ("Let me try a different approach") ├─ User never sees a broken agent └─ Reliability improves
Competência prática: Como implementar em 4 semanas
Roadmap: Arquitetura Sequential → Concurrent
=== WEEK 1: Design + Planning ===
Tasks: ├─ Audit current agent (sequential or concurrent?) ├─ Identify slow operations (database queries, API calls) ├─ Design message queue schema (task structure, update format) ├─ Choose queue tech (RabbitMQ, Redis, SQS) ├─ Design Cerebellum prompts (acknowledgment, progress updates) └─ Design Brain prompts (task execution)
Deliverables: ├─ Architecture diagram ├─ Queue schema (JSON) ├─ Prompt templates └─ Implementation timeline
Effort: 40-60 engineering hours
=== WEEK 2: Cerebellum (Conversation Layer) ===
Tasks: ├─ Implement fast LLM inference (Llama2-7B local or API) ├─ Build acknowledgment responses ("Working on it...") ├─ Build progress update responses ("Found X, searching for Y...") ├─ Connect to message queue (publish tasks) ├─ Connect to message queue (consume updates) ├─ Test with mock Brain (simulate 3-5 second delays) └─ Optimize latency (<100ms)
Deliverables: ├─ Cerebellum service (running) ├─ Integration with message queue ├─ Unit tests └─ Latency benchmarks
Effort: 60-80 engineering hours
=== WEEK 3: Brain (Task Executor) ===
Tasks: ├─ Implement capable LLM inference (Claude, GPT-4, or Llama-70B) ├─ Build database query handler ├─ Build file search handler ├─ Build API call handler ├─ Connect to message queue (consume tasks) ├─ Connect to message queue (publish updates) ├─ Test with real queries (database, files, APIs) └─ Optimize accuracy + speed
Deliverables: ├─ Brain service (running) ├─ Integration with message queue ├─ Unit tests ├─ Accuracy benchmarks └─ Latency benchmarks
Effort: 80-100 engineering hours
=== WEEK 4: Integration + Optimization ===
Tasks: ├─ End-to-end testing (user message → Cerebellum → Queue → Brain → Queue → Cerebellum → user response) ├─ Test interruption ("Stop" command) ├─ Test task changes ("Actually, just get balance") ├─ Load testing (concurrent conversations) ├─ Latency optimization (ensure <100ms for Cerebellum) ├─ Accuracy optimization (ensure Brain correctness) ├─ Deployment (production) └─ Monitor + iterate
Deliverables: ├─ Production deployment ├─ Monitoring dashboards ├─ Incident playbook └─ Performance metrics
Effort: 40-60 engineering hours
=== TOTAL EFFORT: 220-300 engineering hours (1 senior engineer, 6-8 weeks) ===
=== ROI ANALYSIS ===
Cost: ├─ Engineering: 250 hours × R$300/hour = R$75k ├─ Infrastructure (queue, compute): R$5k one-time + R$2k/month └─ Total: R$80k one-time
Benefits: ├─ Perceived speed: 2-3x faster (same actual latency, better UX) ├─ User satisfaction: +30-50 NPS points ├─ Churn reduction: -20-30% (less frustration) ├─ Competitive advantage: 6-12 months ahead of competitors ├─ Revenue impact: If churn reduction = -25% × R$100k MRR = +R$25k/month └─ Payback period: R$80k ÷ R$25k = 3.2 months
=== PRIORITY: HIGH ===
Implement immediately if: ├─ Your agent has tasks > 1 second ├─ Your customers complain about latency ├─ Your competitor is implementing this ├─ Your churn is > 5%/month └─ Your margins allow R$75k investment
Sinais: Seu agente precisa de concurrent processing
Checklist: Quando fazer upgrade
☐ Agent response time > 2 seconds for common queries └─ Action: Implement concurrent processing NOW
☐ Customers say: "Agent seems frozen" └─ Action: This is top priority (UX killer)
☐ Churn rate increased after deploying agent └─ Action: Latency + frozen agent = customers leaving
☐ Duplicate messages from users (sending same query 2-3x) └─ Action: Users think agent is broken (latency too high)
☐ Your competitor has agent that "never goes silent" └─ Action: They implemented concurrent processing (you're behind)
☐ Support tickets mention: "Agent is slow" or "Agent doesn't respond" └─ Action: This is competitive disadvantage
☐ Your agent uses synchronous architecture (seq)>uential execution) └─ Action: Upgrade to concurrent ASAP
☐ Your margin allows R$75k investment └─ Action: Do it (3-month payback)
If ANY are true: Plan concurrent processing implementation this month. If MULTIPLE are true: Start implementation THIS WEEK.
Conclusão
Tencent Gander insight: Concurrent processing = invisible speed boost (same latency, 2-3x faster perceived).
Before (sequential):
- User sends query
- Agent freezes for 3-5 seconds
- Agent responds with answer
- User perception: "Slow and broken"
- Churn risk: High
After (concurrent with Cerebellum-Brain):
- User sends query
- Agent immediately: "Working on it..."
- Agent sends progress updates (1-2 seconds, every 1 second)
- Agent sends final answer
- User perception: "Fast and responsive"
- Churn risk: Low
Same 3-5 second execution time, but 3x better UX.
What to do NOW:
- Audit your agent (sequential or concurrent?)
- Measure current latency + user satisfaction
- Model ROI of concurrent upgrade (likely 3-6 month payback)
- Allocate 250 eng hours (1 senior engineer, 6-8 weeks)
- Implement Cerebellum + Brain architecture
- Monitor: Latency, satisfaction, churn
- Expect: +30-50 NPS, -20-30% churn
Na OpenClaw, ajudamos SaaS builders implementar concurrent agent architecture:
- Agent Architecture Audit: Sequential vs concurrent? Where's your latency?
- Cerebellum-Brain Design: How to split conversation + execution?
- Message Queue Setup: RabbitMQ? Redis? SQS? Which is best for you?
- Fast LLM Integration: How to use Llama2-7B for instant responses?
- Progress Update Design: What updates should Cerebellum send?
- Interrupt Handling: How to let users change tasks mid-execution?
- Load Testing: Can your architecture handle 1000 concurrent conversations?
- Deployment Strategy: How to migrate from sequential → concurrent without downtime?
Implement Concurrent Agent Architecture (Cerebellum-Brain) | 3-Month ROI →
Publicado em 20 de setembro de 2026