Adam: C言語で書かれた埋め込み可能なクロスプラットフォームAIエージェントライブラリ

✍️ OpenClawRadar📅 公開日: May 7, 2026🔗 Source
Adam: C言語で書かれた埋め込み可能なクロスプラットフォームAIエージェントライブラリ
Ad

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, "What is the capital of France?"); printf("%s\n", r.final_response); // "The capital of France is Paris." 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)
Ad

主な機能

  • エージェントループ – 最終応答まで自動反復するツール呼び出し
  • 3つのプロバイダ – Anthropic、OpenAI、Google Gemini + 互換API + llama.cpp経由のローカルGGUF
  • ローカル視覚 – llama.cpp + mmprojによるマルチモーダル画像理解(Gemma 3、LLaVAなど)
  • 画像生成 – Gemini画像モデルによるネイティブ画像出力
  • データベース拡張 – AdamをSQL関数として埋め込むSQLiteおよびPostgreSQL拡張
  • 13の組み込みツール – ファイルI/O、シェル、電卓、SQL、Web取得/検索、HTTP POST、メモリ、リサーチ、マルチエージェント
  • 長期メモリ – SQLiteによるハイブリッドBM25 + ベクトル検索(sqlite-memory + sqlite-vector)
  • セッション永続化 – UUIDv7キーによる会話の保存/読み込み
  • Telegramボット – テキスト、音声、画像、ツール、メモリを備えたフル機能
  • 音声 – 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

Ad

👀 See Also

Reverse-Engineered Airtable内部APIがMCP経由で公開:Claude Code向け60以上のツール
Tools

Reverse-Engineered Airtable内部APIがMCP経由で公開:Claude Code向け60以上のツール

ある開発者がAirtableの内部APIをリバースエンジニアリングし、60以上のツールを備えたMCPサーバーを構築しました。これにより、Claude Codeや15以上のIDEがデータベースビュー、計算フィールド、拡張機能を制御できるようになります。すでに2000人以上のユーザーに利用されており、無料でオープンソースです。

OpenClawRadar
続:Claudeコードで繰り返されるワークフローを自動検出するツール
Tools

続:Claudeコードで繰り返されるワークフローを自動検出するツール

Zokuは、Claude Codeのイベントシステムにフックしてセッション間のツール操作を記録し、繰り返されるワークフローパターンを特定し、それらのパターンをClaudeに通知して積極的に提案または実行できるようにするローカルツールです。設定不要、依存関係なし、すべてのデータはローカルの~/.zoku/に保存されます。

OpenClawRadar
ノーションとMCPを使用した、コード不要のClaude用永続メモリシステム
Tools

ノーションとMCPを使用した、コード不要のClaude用永続メモリシステム

放射線科医がNotion内に「Cognitive Hub」を構築し、ClaudeがMCPを通じて読み書きすることで、構造化された知識ベースと、会話ごとに必要な情報のみを読み込むルーティングテーブルを実現。毎日使用して1ヶ月後には70ページ以上に成長。

OpenClawRadar
Claude Code as a Compiler: AI開発のための実践的な再構築
Tools

Claude Code as a Compiler: AI開発のための実践的な再構築

Redditの投稿によると、Claude Codeはアシスタントではなく、文字通りの意味でのコンパイラとして機能しているとのことです。英語を動作するソフトウェアに翻訳するコンパイラであり、これはグレース・ホッパーのA-0やFORTRANといった歴史的なコンピューティングのブレークスルーに類似しています。著者は、3段落の英語による説明から6ファイルにわたる約400行のコードを生成し、25分で2つの問題点を発見したと述べています。

OpenClawRadar