Por Dentro do OpenClaw: A Arquitetura que a Wired Chamou de 'Taking Over Silicon Valley'

JSONL, não banco de dados. Filas seriais, não caos assíncrono. Descubra por que a arquitetura simples do OpenClaw supera sistemas enterprise. Diagrama técnico incluído.

Muita gente fala sobre o OpenClaw, mas poucos entendem como ele realmente funciona por dentro. Neste artigo, vamos mergulhar na arquitetura técnica do sistema.

Visão Geral

O OpenClaw é uma CLI escrita em TypeScript que funciona como um roteador de mensagens inteligente. Diferente de outros sistemas de agentes que usam processamento assíncrono caótico, o OpenClaw usa um sistema de filas baseado em lanes que mantém as coisas seriais por padrão.

Sistema de Memória

A memória do OpenClaw é surpreendentemente simples:

Histórico de Sessão
  • Formato: JSONL (JSON Lines)
  • Localização: Arquivos locais
  • Comportamento: Histórico antigo permanece, sem compressão automática
Memória Persistente
  • Formato: Arquivos Markdown que o próprio agente escreve
  • Arquivos principais:
    • MEMORY.md - Memória de longo prazo
    • memory/YYYY-MM-DD.md - Logs diários
    • SOUL.md - Personalidade e configuração
Busca Híbrida

O sistema combina dois tipos de busca:

  1. Busca Vetorial (SQLite) - Para correspondência semântica
  2. Busca por Palavras-chave (FTS5) - Para correspondência exata

Isso significa que você encontra tanto conteúdo semanticamente similar quanto matches exatos de termos específicos.

Segurança e SandboxExecução de Comandos

Por padrão, comandos rodam em um sandbox Docker com um sistema de allowlist similar ao Claude Code:

// ~/.openclaw/exec-approvals.json
{
  "agents": {
    "main": {
      "allowlist": [
        { "pattern": "/usr/bin/npm", "lastUsedAt": 1706644800 },
        { "pattern": "/opt/homebrew/bin/git", "lastUsedAt": 1706644900 }
      ]
    }
  }
}
Padrões Perigosos Bloqueados

Certos padrões são rejeitados automaticamente antes da execução:

# Rejeitados automaticamente:
npm install $(cat /etc/passwd)    # substituição de comando
cat file > /etc/hosts             # redirecionamento perigoso
rm -rf / || echo "failed"         # operadores encadeados
Automação de Browser

Uma das features mais interessantes é como o OpenClaw lida com automação de browser.

Snapshots Semânticos

Em vez de tirar screenshots e analisar pixels, o OpenClaw usa snapshots da árvore de acessibilidade:

- button "Sign In" [ref=1]
- textbox "Email" [ref=2]
- textbox "Password" [ref=3]
- link "Forgot password?" [ref=4]
Vantagens
  1. Eficiência de tokens - Muito menos dados que imagens
  2. Confiabilidade - Não depende de coordenadas de pixel
  3. Velocidade - Processamento mais rápido
  4. Acessibilidade - Funciona com qualquer layout
Filosofia de Design

O principal takeaway da arquitetura do OpenClaw é que ele prefere simplicidade explicável sobre complexidade inteligente.

  • Memória em arquivos de texto legíveis por humanos
  • Sistema de filas serial em vez de async caótico
  • Sandbox com allowlist explícito
  • Snapshots semânticos em vez de visão computacional

Isso significa que você pode:

  • Inspecionar e editar a memória manualmente
  • Entender exatamente o que o agente está fazendo
  • Debugar problemas facilmente
  • Confiar no sistema sem “mágica” opaca
Componentes Principais
ComponenteFunçãoTecnologia
CLIInterface principalTypeScript/Node.js
Message RouterRoteamento de mensagensSistema de lanes
MemoryPersistênciaJSONL + Markdown
SearchBusca híbridaSQLite + FTS5
SandboxExecução seguraDocker
BrowserAutomação webPlaywright + A11y tree
Conclusão

O OpenClaw não tenta ser o sistema de agentes mais sofisticado do mundo. Em vez disso, foca em ser:

  • Transparente - Você vê tudo que acontece
  • Seguro - Sandbox e allowlists por padrão
  • Simples - Arquitetura fácil de entender
  • Eficiente - Otimizado para tokens e performance

Para quem quer construir em cima do OpenClaw ou simplesmente entender como funciona, essa simplicidade é uma feature, não um bug.


Próximos Passos

Baseado em análise técnica compartilhada pela comunidade.