ShenSeanChen/waku-agent
Waku Waku! Waku agent is your personal AI agent, on your own laptop, in code you can read in an afternoon — harness + loop + memory + eval
解決する課題
Waku-agent は、透明性と可読性を重視して設計されたローカルファーストな個人用 AI アシスタントです。コアループ、メモリシステム、および評価ハーネスが明示的かつシンプルであり、ユーザーが自身のマシン上で完全に所有できるコードベースを提供することで、「ブラックボックス」化した AI エージェントの問題を解決します。
仕組み
システムは、主に以下の4つの柱を中心に構築されています:
- The Loop: 「思考・行動・観察」のサイクルを処理するシンプルな Python 実装(約95行)で、エージェントがツールを呼び出し、最終的な回答に到達するまで反復することを可能にします。
- Memory: セマンティック、エピソード、および手続き的メモリのために、ローカルの SQLite データベース (
state.db) を使用する多層システム。バイアスとレイテンシを避けるために、ターンが実際にメモリへのアクセスを必要とするかどうかを判断する「リトリーバル・ゲート」が含まれています。 - Harness/Gateway: CLI、ローカルの Web ダッシュボード、Telegram、または音声コマンド(ウェイクワード検出付き)を介してエージェントにアクセスできるようにする統合インターフェース。
- LLM-Ops: 決定論的なユニットテスト(ツールが実行されたか?)と LLM-as-judge スコアリング(返答は役に立ったか?)を分離した組み込みの評価スイート。トレーシングとコスト追跡も備えています。
対象者
洗練された製品ではなく、本格的なエージェントが内部でどのように動作するかを示す読みやすい設計図を求める開発者や AI 愛好家、そしてローカルファーストのデータ所有権を好む人々のために設計されています。
ハイライト
- ローカルファースト・メモリ: すべてのメモリは単一の SQLite ファイルに保存され、人間が読める
MEMORY.mdファイルにミラーリングされます。 - ビジュアル・ダッシュボード: ツール呼び出し、メモリ検索、コストをリアルタイムで表示し、エージェントの思考プロセスをアニメーション化するローカルコックピット。
- マルチツール・チェイニング: ウェブで複数のイベントを検索し、それらすべてを一度のターンでカレンダーに予約するなど、複雑なタスクを実行可能です。
- 透明性の高い評価: デプロイ前に決定論的なテストが 100% 合格していることを保証する、統合されたリリースゲート。
- 柔軟な統合: 複数の LLM プロバイダー (Anthropic, OpenAI, Gemini など) をサポートし、Apple Calendar、Mail、Google Calendar と連携します。