Adam: Uma Biblioteca de Agente de IA Multiplataforma Incorporável em C

✍️ OpenClawRadar📅 Publicado: May 7, 2026🔗 Source
Adam: Uma Biblioteca de Agente de IA Multiplataforma Incorporável em C
Ad

Adam é uma biblioteca de agente de IA incorporável escrita em C. Ela oferece um loop completo de agente — chamada de ferramentas, memória, sessões, voz, streaming, saída estruturada — como um único #include. Suporta APIs de nuvem (Anthropic, OpenAI, Google Gemini, Groq, Together, xAI) e modelos locais via llama.cpp através da mesma interface. Compila em macOS, Linux, Windows, iOS, Android e WASM.

Início Rápido

#include "adam.h"

int main(void) { adam_init(); adam_settings_t *s = adam_create_settings(); adam_settings_set_provider(s, ADAM_API_ANTHROPIC, getenv("ANTHROPIC_API_KEY"), "claude-sonnet-4-20250514"); adam_history_t *h = adam_history_create(); adam_run_result_t r = adam_run(s, h, "Qual é a capital da França?"); printf("%s\n", r.final_response); // "A capital da França é Paris." adam_run_result_free(&r); adam_history_destroy(h); adam_settings_destroy(s); adam_cleanup(); }

make deps     # compila llama.cpp + whisper.cpp
make all      # compila libadam.a
make test     # executa 161 testes (ASan + UBSan)
Ad

Principais Recursos

  • Loop de agente – chamada de ferramentas com iteração automática até a resposta final
  • Três provedores – Anthropic, OpenAI, Google Gemini + qualquer API compatível + GGUF local via llama.cpp
  • Visão local – compreensão multimodal de imagens via llama.cpp + mmproj (Gemma 3, LLaVA, etc.)
  • Geração de imagens – saída nativa de imagem via modelos de imagem Gemini
  • Extensões de banco de dados – extensões SQLite e PostgreSQL que incorporam Adam como funções SQL
  • 13 ferramentas embutidas – E/S de arquivo, shell, calculadora, SQL, busca/obtenção na web, POST HTTP, memória, pesquisa, multi-agente
  • Memória de longo prazo – busca híbrida BM25 + vetorial via SQLite (sqlite-memory + sqlite-vector)
  • Persistência de sessão – salvar/carregar conversas com chaves UUIDv7
  • Bot do Telegram – completo com texto, voz, imagens, ferramentas e memória
  • Voz – STT (Whisper nuvem/local) + TTS (nuvem/sistema) + pipeline de áudio completo
  • Streaming – entrega de tokens em tempo real via callback
  • Saída estruturada – adam_run_json() com validação e retentativa
  • Loop de evolução – agente auto-melhorável: iterar, pontuar, refinar estratégia
  • Modo de pesquisa – coleta autônoma de informações com múltiplas iterações e síntese de relatório
  • Multi-agente – Agente A invoca Agente B como ferramenta, com configurações/ferramentas independentes
  • Guardrails – callbacks de validação pré-envio e pós-recebimento
  • Cache de resposta – tabela hash LRU indexada por modelo + histórico de mensagens
  • Gerenciamento de histórico – clonar, resumir (compressão baseada em LLM), estimativa de tokens
  • Pool de threads – execução concorrente de agentes com fila de tarefas
  • Sandbox de sistema de arquivos – ferramentas restritas a diretórios explicitamente permitidos
  • Alocador Arena – memória sem vazamento por iteração com limpeza automática

Alvos de Compilação

make deps     # Compila llama.cpp, whisper.cpp (+ mbedtls/curl no Linux)
make all      # Compila libadam.a
make test     # Compila e executa testes unitários (ASan + UBSan)
make chat     # Chat de texto interativo (API de nuvem)
make chat GGUF=models/model.gguf   # Chat de texto interativo (local)
make vision GGUF=models/model.gguf MMPROJ=models/mmproj.gguf  # Teste de visão local
make talk     # Agente de voz (nuvem)
make talk LOCAL=1  # Agente de voz (totalmente local)
make memory   # Testes do sistema de memória
make clean    # Remove todos os artefatos de compilação

A documentação completa da API está disponível em API.md com todas as funções, tipos e callbacks.

📖 Leia o código-fonte completo: HN AI Agents

Ad

👀 See Also

Google Lança Sashiko: Agente de Revisão de Código com IA para Patches do Kernel Linux
Tools

Google Lança Sashiko: Agente de Revisão de Código com IA para Patches do Kernel Linux

Engenheiros do Google disponibilizaram como código aberto o Sashiko, um sistema de revisão de código com IA agentiva projetado para o kernel Linux. Ele encontrou 53% dos bugs em um conjunto não filtrado de 1.000 problemas recentes do upstream que foram perdidos por revisores humanos.

OpenClawRadar
mindpm: Um Servidor MCP Gratuito para Memória Persistente de Projetos com Claude
Tools

mindpm: Um Servidor MCP Gratuito para Memória Persistente de Projetos com Claude

mindpm é um servidor MCP gratuito e de código aberto que fornece ao Claude um banco de dados SQLite local para rastrear tarefas, decisões, notas e resumos de sessão entre conversas. A configuração leva 30 segundos com o comando: claude mcp add mindpm -e MINDPM_DB_PATH=~/.mindpm/memory.db -- npx -y mindpm.

OpenClawRadar
Clavis MCP Server: Gerenciamento Seguro de Credenciais para Claude Desktop
Tools

Clavis MCP Server: Gerenciamento Seguro de Credenciais para Claude Desktop

Clavis é um servidor MCP que gerencia chaves de API e tokens OAuth para o Claude Desktop, armazenando credenciais com criptografia AES-256 e fornecendo atualização automática de tokens para evitar erros de expiração no meio da conversa.

OpenClawRadar
Claude Operações: Painel de Navegador para Status ao Vivo e Rastreamento de Subagentes do Claude Code
Tools

Claude Operações: Painel de Navegador para Status ao Vivo e Rastreamento de Subagentes do Claude Code

Um painel gratuito e local para navegador macOS que rastreia o status ao vivo de sessões do Claude Code, ferramenta atual, subagentes gerados e envia notificações push do OS quando a entrada é necessária.

OpenClawRadar