Kova — AI Agent 永続実行エンジン
Rust で構築した WAL-First Agent エンジン、クラッシュ時に自動復旧、3μs スケジューリング
Kova とは?
Kova は Lurus のコア AI エージェント基盤であり、Rust で構築された高性能な永続化実行エンジンです。エージェントをいかに信頼性高く長時間稼働させ、クラッシュ後に状態を復旧し、複雑なワークフローを協調させるか という課題を解決します。従来のフレームワーク(LangChain、CrewAI)はメモリ上で動作し、プロセスが終了すると状態を失います。Kova は WAL(Write-Ahead Log)WALWrite-Ahead Log、先行書き込みログ。すべての状態変更をまずログに書いてから実行することで、クラッシュ後にログから復旧できることを保証します。詳しく見る → 優先アーキテクチャを採用し、各ステップの実行を永続的に記録するため、クラッシュしても中断地点まで正確に復旧できます——LLM を再呼び出しせず、進捗を失わず、追加費用も発生しません。
コア指標
docs/benchmark-report.md 参照)、スループット 315K ops/s、外部サービス依存ゼロ。Kova を選ぶ理由
WAL-First 永続化、マイクロ秒級スケジューリング、依存ゼロのデプロイ、4 種類の接続方式。
WAL クラッシュ復旧
各ステップ実行前にログを先行書き込み + CRC32 検証。クラッシュ後は中断地点から再生し、LLM を再呼び出ししない
3μs スケジューリング遅延
FIFO 完全パイプラインの Criterion ベンチマークで 3.17μs、315K ops/s スループット
外部依存ゼロ
Redis / Postgres は不要。ローカルの WAL ファイルだけで動作
4 種類の接続方式
Rust SDK / gRPC / REST / MCP、21 workspace crate のモジュール構成
WAL-First 永続化
すべての状態変更は実行前にまず WAL へ書き込み、クラッシュ時は WAL から再生します:
エージェントの判断 — エンジンが次のアクションを決定
WAL 書き込み(CRC32) — 永続的な記録 + チェックサムで破損を防止
実行 — 実際にツール / LLM を呼び出す
完了確認 — 当該ステップが反映済みとマーク。クラッシュ時、未確認のステップは自動的に再生される
CRC32 検証で破損を防止。Power-of-2 リングバッファでストレージを効率的に利用。ロック順序 Buffer → Queue → Txn を厳格に保証し、デッドロックを完全に排除します。
エージェントのオーケストレーション
| モード | 説明 | 適用シーン |
|---|---|---|
| 単一エージェント | 単独でタスクを実行 | シンプルな自動化 |
| ワークフロー | 複数ステップを順序立てて実行 | データパイプライン、承認フロー |
| 群知能 (Swarm) | 複数エージェントが自律的に協調 | 複雑なリサーチ、多役割シミュレーション |
ツールエコシステムとマルチモデル
組み込みツール(ファイル / HTTP / データベース / Shell)、MCPMCPModel Context Protocol、モデルコンテキストプロトコル。AI Agent が外部ツールやデータソースを統一的な方法で呼び出せるようにするオープン標準です。詳しく見る →(MCP 互換のあらゆるツールサービスに接続、統合カタログ参照)、A2AA2AAgent-to-Agent プロトコル。複数の Agent が直接通信し、タスクを委譲して情報を交換できるようにします。(エージェント間の直接通信とタスク委譲)、カスタムツール(Rust または REST API での拡張)。
Lurus API 経由で主要な LLM をすべて利用(DeepSeek 日常用 / GPT-4o 推論 / Claude 長文 / Gemini マルチモーダル)、実行時にタスクに応じて動的に切り替え。
アーキテクチャ概要
REST/SDK/gRPC/MCP で接続 · Kova Core でスケジューリング · WAL で永続化と復旧。
Kova REST API (Axum: 35+ endpoints, WebSocket)
→ Kova Core: Agent Engine(单/多 Agent) + Workflow(有序编排)
→ WAL + Ring Buffer(持久化状态管理 CRC32)
子 crate: kova-llm / kova-tools / kova-mcpKova は 21 個の Rust crate で構成されるワークスペースで、178,284 行のコード、1,565+ のテスト(loom 並行性 / proptest / chaos)+ 4 個の fuzz target を備えます。現在は v0.2.0 プレリリース(1.0.0-beta.1 に向けて)で、厳格な lint を全面的に有効化しています(#[deny(clippy::unwrap_used, clippy::panic, missing_docs)])。
適用シーン
| シーン | Kova の強み |
|---|---|
| 長時間稼働するエージェント | WAL 永続化により、クラッシュ後に自動復旧 |
| 複雑なワークフロー | 複数ステップのオーケストレーション、条件分岐、並列実行 |
| 複数エージェントの協調 | Swarm モード、エージェント間の直接通信 |
| エンタープライズ級デプロイ | Rust の性能、低リソース消費、GC 停止なし |
| MCP ツール統合 | Model Context Protocol をネイティブにサポート |
| セキュリティ重視のシーン | オプションの暗号化 (SM4/AES)、WAL HMAC 完全性検証 |
役割別に始める
他のエージェントフレームワークとの比較
| 能力 | LangChain | CrewAI | AutoGen | Kova |
|---|---|---|---|---|
| 言語 | Python | Python | Python | Rust |
| 状態の永続化 | なし(外部が必要) | なし | なし | WAL-First |
| クラッシュ復旧 | なし | なし | なし | 自動復旧 |
| 性能 | 中 | 中 | 中 | 極めて高い |
| メモリ効率 | 低 | 低 | 低 | 極めて高い |
| MCP 対応 | サードパーティ | なし | なし | ネイティブ |
| A2A プロトコル | なし | なし | なし | ネイティブ |
| 暗号化機能 | なし | なし | なし | SM4-GCM / ChaCha20 |
| マルチプロトコル | なし | なし | なし | 4 種類の接続方式:Rust SDK / gRPC / REST / MCP |
| デプロイ形態 | Python プロセス | Python プロセス | Python プロセス | 単一バイナリ / コンテナ / 組み込みライブラリ |