Skip to content
En développement

Kova — moteur d'exécution persistante pour agents IA

Moteur d'agents WAL-First écrit en Rust, reprise automatique après crash, ordonnancement en 3μs

3.17μsOrdonnancement FIFOPipeline complet Criterion
315K ops/sDébit
178K LOCVolume de codeWorkspace de 21 crates
ZéroDépendances externesSans Redis / Postgres

Qu’est-ce que Kova ?

Kova est l’infrastructure d’agents IA au cœur de Lurus : un moteur d’exécution persistante haute performance construit en Rust, qui résout la question de savoir comment un agent peut s’exécuter de manière fiable sur de longues durées, restaurer son état après un crash et coordonner des workflows complexes. Les frameworks traditionnels (LangChain, CrewAI) s’exécutent en mémoire et perdent leur état dès que le processus se termine ; Kova adopte une architecture orientée WAL (Write-Ahead Log)WALWrite-Ahead Log (journal d'écriture anticipée). Tout changement d'état est d'abord écrit dans le journal puis exécuté, garantissant une reprise après crash à partir du journal.En savoir plus →, où chaque étape d’exécution est enregistrée de façon persistante, ce qui permet, même après un crash, de reprendre précisément au point d’interruption — sans rappeler le LLM, sans perdre la progression et sans générer de coûts supplémentaires.

Indicateurs clés

Latence du pipeline complet FIFOFIFOFirst In, First Out : file premier entré, premier sorti. L'ordonnancement des tâches de Kova utilise par défaut la stratégie FIFO. de 3.17μs (benchmark Criterion, voir docs/benchmark-report.md), débit de 315K ops/s, zéro dépendance à un service externe.

Capacités clés

Pourquoi choisir Kova

Persistance WAL-First, ordonnancement à la microseconde, déploiement sans dépendance, quatre modes d’intégration.

Reprise après crash via WAL

Journal en écriture anticipée à chaque étape + vérification CRC32 ; rejeu depuis le point d’interruption après un crash, sans rappeler le LLM

Latence d’ordonnancement de 3μs

Pipeline complet FIFO à 3.17μs (benchmark Criterion), débit de 315K ops/s

Zéro dépendance externe

Aucun besoin de Redis / Postgres ; un simple fichier WAL local suffit à fonctionner

Quatre modes d’intégration

Rust SDK / gRPC / REST / MCP, modularité sur un workspace de 21 crates

Persistance WAL-First

Toute modification d’état écrit d’abord dans le WAL avant exécution ; en cas de crash, le rejeu s’effectue depuis le WAL :

  1. Décision de l’agent — le moteur détermine l’action suivante

  2. Écriture WAL (CRC32) — enregistrement persistant + somme de contrôle contre la corruption

  3. Exécution — appel réel de l’outil / du LLM

  4. Confirmation de l’achèvement — l’étape est marquée comme aboutie ; en cas de crash, les étapes non confirmées sont automatiquement rejouées

La vérification CRC32 protège contre la corruption ; un tampon circulaire en puissance de 2 (Power-of-2) exploite efficacement le stockage ; l’ordre de verrouillage Buffer → Queue → Txn est strictement garanti pour éliminer tout interblocage.

Orchestration d’agents

ModeDescriptionCas d’usage
Agent uniqueExécution autonome d’une tâcheAutomatisation simple
WorkflowExécution ordonnée en plusieurs étapesPipelines de données, processus d’approbation
Intelligence collective (Swarm)Collaboration autonome entre plusieurs agentsRecherche complexe, simulation multi-rôles

Écosystème d’outils et multi-modèle

Écosystème d’outils

Outils intégrés (fichiers / HTTP / base de données / Shell), MCPMCPModel Context Protocol (protocole de contexte des modèles). Standard ouvert permettant aux agents IA d'appeler des outils et sources de données externes de façon unifiée.En savoir plus → (connexion à n’importe quel service d’outils compatible MCP, voir le catalogue d’intégrations), A2AA2AProtocole Agent-to-Agent, qui permet à plusieurs agents de communiquer directement, de déléguer des tâches et d'échanger des informations. (communication directe et délégation de tâches entre agents), outils personnalisés (extensions en Rust ou via API REST).

Prise en charge multi-modèle

Accès, via l'API Lurus, à tous les principaux LLM (DeepSeek au quotidien / GPT-4o pour le raisonnement / Claude pour les textes longs / Gemini pour le multimodal), avec basculement dynamique selon la tâche à l’exécution.


Architecture

Aperçu de l’architecture

Intégration REST/SDK/gRPC/MCP · ordonnancement par Kova Core · persistance et reprise via WAL.

Architecture d’exécution de Kova
Kova REST API (Axum: 35+ endpoints, WebSocket)
 → Kova Core: Agent Engine(单/多 Agent) + Workflow(有序编排)
              → WAL + Ring Buffer(持久化状态管理 CRC32)
              子 crate: kova-llm / kova-tools / kova-mcp

Kova est un workspace de 21 crates Rust, 178 284 lignes de code, plus de 1 565 tests (concurrence loom / proptest / chaos) + 4 cibles de fuzzing. Actuellement en pré-version v0.2.0 (en route vers la 1.0.0-beta.1), avec des lints stricts pleinement activés (#[deny(clippy::unwrap_used, clippy::panic, missing_docs)]).


Cas d’usage

Cas d’usage adaptés

Cas d’usageAtout de Kova
Agents s’exécutant sur de longues duréesPersistance WAL, reprise automatique après crash
Workflows complexesOrchestration multi-étapes, branches conditionnelles, exécution parallèle
Collaboration multi-agentsMode Swarm, communication directe entre agents
Déploiement en entreprisePerformance de Rust, faible consommation de ressources, sans pauses GC
Intégration d’outils MCPPrise en charge native du Model Context Protocol
Contextes sensibles à la sécuritéChiffrement optionnel (SM4/AES), vérification d’intégrité HMAC du WAL

Prise en main par rôle

  1. DéveloppeurDémarrer un agent persistant en 5 minutescargo add kova + 3 lignes de code
  2. ArchitecteRemplacer le Checkpointer de LangGraphUtiliser Kova pour stocker les checkpoints dans un projet LangGraph

Comparatif

Comparaison avec d’autres frameworks d’agents

CapacitéLangChainCrewAIAutoGenKova
LangagePythonPythonPythonRust
Persistance d’étatAucune (externe requise)AucuneAucuneWAL-First
Reprise après crashAucuneAucuneAucuneReprise automatique
PerformanceMoyenneMoyenneMoyenneTrès élevée
Efficacité mémoireFaibleFaibleFaibleTrès élevée
Prise en charge MCPTierceAucuneAucuneNative
Protocole A2AAucunAucunAucunNatif
Capacités de chiffrementAucuneAucuneAucuneSM4-GCM / ChaCha20
Multi-protocoleAucunAucunAucunQuatre modes d’intégration : Rust SDK / gRPC / REST / MCP
Forme de déploiementProcessus PythonProcessus PythonProcessus PythonBinaire unique / conteneur / bibliothèque embarquée

Étapes suivantes

Étapes suivantes

Powered by Lurus Technologies