Vayl について
Vaylは、変化する事実を調整して扱うAIエージェント向けのメモリレイヤーです。履歴を監査用に保持し、重要な変更には人の承認を求められます。デフォルトではローカルのSQLiteを使います。
主な機能
- 01更新・撤回された事実の調整
- 02監査チェーンによる履歴保持
- 03指定した変更の承認キュー
- 04古い事実や未確定の事実を行動前に確認
- 05デフォルトはSQLite、チーム向けにPostgres
活用シーン
- 01顧客アカウントの状態を最新に保つ
- 02服薬情報の変更に確認を求める
- 03エージェントの行動前に事実を確認する
MCP 対応
VaylはMCPサーバーとして動作し、MCPクライアントからメモリツールを利用できます。チーム共有メモリでは、vayl-serverをMCPまたはREST経由で呼び出せます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
32掲載時のツール一覧 · 1 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| text | string | はい | |
| run_id | string | いいえ | |
| source | string | いいえ | |
| user_id | string | いいえ | |
| agent_id | string | いいえ | |
| metadata | any | いいえ |
詳細
事実が変わると、多くのエージェント用メモリは両方のバージョンを保持し、どちらが最新なのかをモデルに推測させます。Vayl は古い値を置き換えて履歴に残し、重要度の高い変更は人が承認するまで保留できます。SQLite 上でローカルに動作し、Claude Code、Cursor、Claude Desktop、独自のエージェントなど、あらゆる MCP クライアントで利用できます。
gpt-6-luna と臨床プリセットを使った実際の実行例です。患者は架空の人物です。スクリプト:assets/demo/clinical_demo.py
特長
- 変更を整合します。 新しい値が古い値に取って代わり、「X をやめた」という情報は X を取り消します。廃止された事実が現在の情報として返されることはありません。
- 履歴を保持します。 現在の事実も、以前の事実も確認できます。すべての変更は、署名付きの改ざん検知可能な監査チェーンに記録されます。
- 必要な場面で人の承認を得られます。 薬などのスロットを確認必須に設定すると、変更はキューで保留されます。
check_before_actは、異議のある事実、古い事実、または変更直後の事実に依存するアクションをブロックします。 - 軽量でローカルに動作します。 デフォルトでは SQLite を使用し、チームでは Postgres を利用できます。事実の保存にモデル呼び出しを 1 回、回答に 1 回使用します。OpenAI 互換モデル、Anthropic、Groq、ローカルの Ollama モデルに対応しています。
- 臨床、サポート、金融、営業、コーディング、アシスタント用メモリの組み込みプリセットを利用できます。
インストール
pip install vayl-mcp
Claude Code に追加します。
claude mcp add vayl -e LLM_PROVIDER=openai -e OPENAI_API_KEY=sk-... -e VAYL_DB=$HOME/.vayl/vayl.db -- vayl-mcp
Cursor、Claude Desktop、その他のクライアントについては、クイックスタートをご覧ください。vayl-demo を実行すると、API キーなしで情報の整合を試せます。
コードから使用する
from vayl import Vayl
with Vayl(user_id="cust_5521") as m:
m.remember("Acme's invoice bounced. Account suspended until payment clears.")
print(m.recall("Is Acme's account in good standing?"))
# No. Acme's account is suspended until payment clears.
統合
エージェントフレームワーク。 バックエンドはフレームワーク独自のメモリに接続し、情報は各ターンで保存および呼び出されます。ツールアダプターを使うと、エージェントが呼び出せるメモリツールを利用できます。
| フレームワーク | インストール | 使用方法 |
|---|---|---|
| Google ADK | pip install 'vayl-mcp[adk]' | from vayl.integrations.adk import VaylMemoryService(メモリバックエンド) |
| LlamaIndex | pip install 'vayl-mcp[llamaindex]' | from vayl.integrations.llamaindex import VaylMemory(メモリブロック) |
| AutoGen | pip install 'vayl-mcp[autogen]' | from vayl.integrations.autogen import VaylMemory(メモリバックエンド) |
| LangGraph / LangChain | pip install 'vayl-mcp[langgraph]' | from vayl.integrations.langgraph import VaylMemory(ツール) |
| OpenAI Agents SDK | pip install 'vayl-mcp[openai-agents]' | from vayl.integrations.openai_agents import VaylMemory(ツール) |
| CrewAI | pip install 'vayl-mcp[crewai]' | from vayl.integrations.crewai import VaylMemory(ツール) |
| Pydantic AI | pip install vayl-mcp 'pydantic-ai-slim[openai,mcp]' | MCP 経由の MCPToolset。アダプター不要 |
| Agno | pip install vayl-mcp agno openai | MCP 経由の MCPTools。アダプター不要 |
| Vercel AI SDK | npm i @vayl.dev/client ai zod | import { vaylTools } from "@vayl.dev/client/vercel" |
| Mastra | npm i @vayl.dev/client @mastra/core zod | import { vaylTools } from "@vayl.dev/client/mastra" |
各フレームワークの例はエージェントフレームワークにあります。
MCP クライアント。 vayl-mcp をインストールし、クライアントに追加します:Claude Code · Cursor · VS Code · Windsurf · Zed · Cline · Continue · Codex CLI · Gemini CLI。チームで共有するメモリを使うには、vayl-server を実行し、MCP または REST 経由で呼び出します。
ドキュメント
| クイックスタート | クライアントをインストールして接続する |
| Vayl の仕組み | 抽出、調整、検索 |
| チュートリアル:病院の服薬アシスタント | 臨床向けプリセット、重要な情報、承認 |
| チュートリアル:カスタマーサポートアシスタント | アカウントの状態と安全性チェック |
| MCP ツール | 30 以上のすべてのツール |
| vayl-server のデプロイ | チームサーバー、認証、Docker、Postgres |
| ベンチマーク | Mem0 および Graphiti と比較した古い値と撤回の結果 |
コントリビューション
CONTRIBUTING.md を参照してください。ユニットテストは API キーなしでオフライン実行できます。最初に取り組むのに適した課題には、good first issue のラベルが付いています。
セキュリティ
データはデフォルトで保存時に暗号化されます。また、Vayl が送信するデータは、設定したモデルのエンドポイント宛てのみです。Vayl は臨床用途の認証を取得しておらず、第三者による監査も受けていません。SECURITY.md の手順に従って、脆弱性をご報告ください。
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。