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

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)
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
👀 See Also

RCFlow: Orquestrador open-source para Claude Code, Codex e OpenCode com gerenciamento de múltiplas sessões
RCFlow é um orquestrador AGPL v3 para agentes de codificação de IA (Claude Code, Codex, OpenCode) que fornece uma interface unificada para gerenciar sessões paralelas em várias máquinas, com suporte a worktrees, planejamento de tarefas, rastreamento de artefatos e telemetria ao vivo.

GLM-5.1 vs MiniMax M2.7: Comparação de desempenho para agentes de IA de codificação
O GLM-5.1 alcança pontuações de 77,8 no SWE-bench-Verified e 56,2 no Terminal Bench 2.0, as mais altas entre os modelos de código aberto, enquanto o MiniMax M2.7 oferece respostas rápidas com baixo TTFT e alta taxa de transferência, ideal para bots de CI e edições em lote.

O Servidor MCP Tredict Permite que o Claude Crie e Envie Planos de Treino para Relógios Esportivos
Um desenvolvedor criou um Servidor Tredict MCP para Claude.ai e Claude Code que gera planos complexos de treinamento de resistência por meio de prompts e envia automaticamente treinos estruturados para relógios Garmin, Coros, Suunto e Wahoo. O servidor inclui um Aplicativo MCP para feedback visual dentro do chat do Claude.

VSCode-Perplexity-MCP: Use Sua Conta Perplexity para Pesquisa AI Gratuita no VS Code
Um servidor MCP de código aberto que permite conectar sua conta do Perplexity.ai ao VS Code, dando ao Clawbot capacidades de pesquisa, raciocínio e computação sem pagar por requisição de API.