fx : Um agente de codificação nativo, pequeno e aberto.

Um novo harness de agente de codificação open-source, o “fx”, da Vercel, escrito em Zig, pretende ser um CLI pequeno, rápido e em estilo Unix para trabalhar com assistentes de codificação por IA e incorporá-los em outros sistemas. Os comentários se dividem quanto a saber se o tamanho reduzido do binário, o desempenho e a capacidade de embutir via WASM realmente o diferenciam da crescente quantidade de ferramentas de agentes semelhantes, como Pi, OpenCode e Maki. Muitos também criticam seu forte acoplamento ao AI Gateway da Vercel e a integração inicial que dificulta o uso de modelos de terceiros ou locais, vendo-o como parte de uma tendência mais ampla de agentes com cara de fornecedor em um espaço já saturado.

Posicionamento do projeto e recursos

  • Descrito como um “tiny, embeddable agent harness and CLI” em vez de apenas mais um agente de codificação.
  • Principais alegações: binário nativo em Zig de 6 MiB, cold start muito rápido (10µs), linha de base de memória baixa, TUI minimalista (mais “Unix shell” do que “IDE no terminal”), saída com preservação de rolagem, design agnóstico de modelo e builds em wasm para incorporação.
  • Ênfase em um núcleo pequeno estendido por “skills/plugins/MCP”, prompt de sistema e conjunto de ferramentas mínimos para reduzir o custo em tokens e melhorar o tempo até o primeiro token.

Lock-in de fornecedor e integração inicial

  • Vários comentários observam que a UX atual empurra fortemente o Vercel AI Gateway: fx login e a chave do AI Gateway estão em destaque.
  • Alguns leitores consideram isso um impeditivo e chamam o projeto de “inútil” até que chaves genéricas compatíveis com OpenAI ou outras chaves de API diretas sejam claramente suportadas.
  • Há menção de suporte a assinaturas (por exemplo, Codex, Grok) “em breve”, mas o status exato e a configuração não estão claros.
  • Foi relatada confusão ao configurar provedores que não são da Vercel, apesar das alegações de que isso é possível.

Tamanho, desempenho e “minimalismo”

  • As opiniões divergem sobre se um CLI de 6 MiB é “pequeno”: alguns dizem que é grande para Zig e esperam centenas de kilobytes; outros comparam favoravelmente com Go, Node, Electron etc.
  • Um usuário relata um build inicial de 144 MB, reduzido para ~6 MB quando compilado com otimização para tamanho.
  • Alguns argumentam que o número de ferramentas embutidas (cerca de duas dezenas, incluindo operações granulares de arquivo) contradiz a दावा de “minimalista”; outros veem a riqueza de ferramentas como útil, especialmente para ambientes fora do terminal.

Comparações e alternativas

  • Frequentemente comparado com Pi (harness baseado em TypeScript), OpenCode, harness da DeepSeek, hax (C, binário menor, múltiplos provedores), Maki (Rust, plugins em Lua), 3code (Nim) e shells caseiros em C ou Python.
  • Temas: desejo por agentes pequenos, sem dependências ou embutíveis via wasm vs. sistemas mais ricos e “batteries-included”.

Discussão mais ampla: ecossistema de agent harness

  • Muitos comentários ampliam a discussão sobre por que existem tantos agentes: a atual “corrida do ouro” da IA, baixa barreira de entrada, experimentação antes que melhores práticas surjam, e os harnesses como uma camada-chave de otimização.
  • Debate sobre terminologia: “harness” vs “agent” vs “model”, com algumas decomposições propostas como model + harness (ferramentas/configuração) + instância de agente em execução.
  • Alguns estão entusiasmados com núcleos pequenos, componíveis e semelhantes ao Unix; outros estão cansados e veem a maioria dos novos agentes como “slop” indistinto.