아담: C 언어로 제작된 임베디드 크로스 플랫폼 AI 에이전트 라이브러리

Adam은 C로 작성된 내장형 AI 에이전트 라이브러리입니다. 단일 #include로 툴 호출, 메모리, 세션, 음성, 스트리밍, 구조화된 출력 등 완전한 에이전트 루프를 제공합니다. 동일한 인터페이스를 통해 클라우드 API(Anthropic, OpenAI, Google Gemini, Groq, Together, xAI)와 llama.cpp를 통한 로컬 모델을 지원합니다. macOS, Linux, Windows, iOS, Android, WASM에서 컴파일됩니다.
빠른 시작
#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, "프랑스의 수도는 어디인가요?");
printf("%s\n", r.final_response); // "프랑스의 수도는 파리입니다."
adam_run_result_free(&r);
adam_history_destroy(h);
adam_settings_destroy(s);
adam_cleanup();
}
make deps # llama.cpp + whisper.cpp 빌드
make all # libadam.a 빌드
make test # 161개 테스트 실행 (ASan + UBSan)
주요 기능
- 에이전트 루프 – 최종 응답까지 자동 반복되는 툴 호출
- 세 가지 제공자 – Anthropic, OpenAI, Google Gemini + 호환 API + llama.cpp를 통한 로컬 GGUF
- 로컬 비전 – llama.cpp + mmproj(Gemma 3, LLaVA 등)를 통한 멀티모달 이미지 이해
- 이미지 생성 – Gemini 이미지 모델을 통한 네이티브 이미지 출력
- 데이터베이스 확장 – Adam을 SQL 함수로 내장하는 SQLite 및 PostgreSQL 확장
- 13가지 내장 툴 – 파일 I/O, 셸, 계산기, SQL, 웹 가져오기/검색, HTTP POST, 메모리, 연구, 멀티 에이전트
- 장기 메모리 – SQLite를 통한 하이브리드 BM25 + 벡터 검색(sqlite-memory + sqlite-vector)
- 세션 영속성 – UUIDv7 키를 사용한 대화 저장/불러오기
- 텔레그램 봇 – 텍스트, 음성, 이미지, 툴, 메모리를 갖춘 완전한 기능
- 음성 – STT(Whisper 클라우드/로컬) + TTS(클라우드/시스템) + 전체 오디오 파이프라인
- 스트리밍 – 콜백을 통한 실시간 토큰 전달
- 구조화된 출력 – 검증 및 재시도가 포함된
adam_run_json() - 진화 루프 – 자기 개선 에이전트: 반복, 점수 매기기, 전략 개선
- 연구 모드 – 자율적 다중 반복 정보 수집 및 보고서 종합
- 멀티 에이전트 – 에이전트 A가 독립적인 설정/툴을 가진 에이전트 B를 툴로 호출
- 가드레일 – 전송 전 및 수신 후 검증 콜백
- 응답 캐시 – 모델 + 메시지 기록을 키로 하는 LRU 해시 테이블
- 기록 관리 – 복제, 요약(LLM 기반 압축), 토큰 추정
- 스레드 풀 – 작업 큐를 통한 동시 에이전트 실행
- 파일 시스템 샌드박스 – 명시적으로 허용된 디렉터리로 제한된 툴
- 아레나 할당자 – 자동 정리를 통한 반복당 제로 누수 메모리
빌드 대상
make deps # llama.cpp, whisper.cpp 빌드 (Linux에서는 mbedtls/curl 추가)
make all # libadam.a 빌드
make test # 단위 테스트 빌드 및 실행 (ASan + UBSan)
make chat # 대화형 텍스트 채팅 (클라우드 API)
make chat GGUF=models/model.gguf # 대화형 텍스트 채팅 (로컬)
make vision GGUF=models/model.gguf MMPROJ=models/mmproj.gguf # 로컬 비전 테스트
make talk # 음성 에이전트 (클라우드)
make talk LOCAL=1 # 음성 에이전트 (완전 로컬)
make memory # 메모리 시스템 테스트
make clean # 모든 빌드 아티팩트 제거
전체 API 문서는 API.md에서 모든 함수, 타입, 콜백을 확인할 수 있습니다.
📖 전체 소스 읽기: HN AI Agents
👀 See Also

OpenClaw-superpowers는 운영 장애 모드에 대한 신뢰성 기능을 추가합니다.
openclaw-superpowers 저장소가 배포 전 검사, cron 실행 증명, 세션 재설정 복구, MCP 인증 수명 주기 관리 등 신뢰성에 초점을 맞춘 8가지 새로운 스킬로 확장되었습니다. 이로써 총 스킬 수는 60개가 되었으며, 그중 44개는 OpenClaw 네이티브 스킬이고 23개는 cron 스케줄링을 위해 설계되었습니다.

Logseq Brain v0.6.0: Claude Code를 위한 지속 메모리 플러그인, 여정 로그 및 섹션 타겟 읽기 추가
Logseq Brain v0.6.0은 모든 작업에 대한 여정 로그, 토큰 절감을 위한 섹션 타겟 읽기, 스킬 파일의 점진적 공개를 추가했습니다.

플렝: AI 기반 인프라 관리 기능을 갖춘 셀프 호스팅 클라우드 플랫폼
Pleng은 AGPL-3.0 라이선스로 제공되는 셀프 호스팅 클라우드 플랫폼으로, AI 에이전트(현재 Claude)를 사용하여 텔레그램 봇 명령어를 통해 인프라를 관리합니다. GitHub 저장소나 로컬 디렉토리에서 자동화된 Traefik 라우팅, Let's Encrypt SSL, 기본 분석 기능을 갖춘 상태로 배포합니다.

TypeScript, React, Next.js 패턴을 위한 오픈 소스 에이전트 스킬
한 개발자가 Claude Code와 같은 AI 에이전트가 TypeScript, React, Next.js 코드를 생성하거나 검토할 때 따를 수 있도록 설계된 4,000줄, 17개 파일로 구성된 구조화된 마크다운 레퍼런스를 공개했습니다. 이 레퍼런스는 부적절한 API 응답 검증과 'use client' 지시어 오용과 같은 일반적인 문제를 다룹니다.