Salix

Salix

O Salix é o harness de agentes do Comma: o runtime distribuído e multilocatário que executa todos os agentes do Comma. Ele é escrito em Elixir e Lean.

Muitos agentes, poucos recursos

Um agente tradicional tem o próprio sandbox: um contêiner ou uma VM que fica ligado enquanto o agente trabalha. O Salix executa centenas de agentes com a CPU e a memória que um desses sandboxes usa.

O Salix coloca cada agente em um nó do cluster e move agentes entre nós quando o cluster muda. Ele entrega mensagens de um agente para outro entre nós. Um cluster pode ter centenas de nós.

O agente roda fora do sandbox

A maior parte do trabalho de um agente não precisa de um computador: ele lê, planeja, escreve e chama seus apps conectados. O Salix executa esse trabalho no próprio harness, e não em um sandbox.

Quando o agente precisa de um computador, o Salix acorda uma VM na nuvem para ele. A VM mantém o armazenamento entre os usos, então os arquivos e as ferramentas instaladas ficam onde o agente os deixou. Quando o trabalho termina, a VM pode voltar a dormir.

Feito com Elixir e Lean

O Salix roda sobre o Elixir e a máquina virtual do Erlang. Cada agente é um processo leve próprio. Quando uma parte do sistema falha, ela reinicia, e os outros agentes continuam rodando.

O núcleo do ciclo de agente é escrito em Lean. As decisões de controle dele, como o que acontece em seguida em um turno e para onde seus dados podem ir, rodam como código Lean com provas verificadas por máquina.

Os Loops rodam no Spinfoam, cujo compilador JIT é verificado formalmente para gerar código seguro em memória.

Sempre ativo, sem um sandbox sempre ligado

Um agente pode ficar de olho nos seus dados 24/7 com um Loop. Um Loop é um pequeno programa que roda no cluster. Ele só acorda o agente quando algo precisa dele, então uma hora tranquila não gasta tokens de modelo.

Suas máquinas e seus runtimes

Você pode conectar uma máquina Linux ou macOS ao Salix, e os agentes executam comandos e abrem arquivos nela. O Comma usa isso para trabalhar no seu Mac.

O Salix tem o próprio ciclo de agente. Um agente também pode usar um runtime de agente externo, como o Codex ou o Claude Code, em um dispositivo que você escolher.

Nesta seção

  • Loops: trabalho em segundo plano sempre ativo, compilado para eBPF.
  • Dispositivos: conectar suas próprias máquinas.
  • Runtimes de agentes: o ciclo de agente integrado, o Codex e o Claude Code.