Rivet, un orchestrateur open-source créé par une équipe YC W23, introduit une primitive d’acteur légère pour les charges de travail d’agents IA. Au lieu de lancer une sandbox ou un conteneur par agent, Rivet exécute chaque agent sous forme d’Actor — un processus à longue durée de vie qui partage un processus de nœud, utilise 72 Ko de RAM et démarre en 4,99 ms au p99 [1][5]. Le projet compte 6,6k étoiles sur GitHub et 6 318 commits, signe d’un développement actif [3].
Pourquoi le modèle d’acteurs change l’économie des agents
Les plateformes d’agents traditionnelles allouent une sandbox complète (≈512 Mo) par session d’agent. Les Actors de Rivet partagent un seul processus worker, permettant ainsi à un serveur d’héberger des centaines de milliers d’Actors au lieu de quelques centaines de sandboxes [1][2]. La mémoire par Actor est mesurée à une augmentation de 72,4 Ko RSS via le SDK Rust [1]. Le démarrage à froid passe de 1,7 seconde pour une sandbox à 4,99 ms p99 pour un Actor Rivet sur un cluster à trois zones [1][5].
Un état durable sans serveur de base de données
Chaque Actor dispose de sa propre base de données SQLite. Les écritures sont envoyées vers des SSD locaux dans deux des trois zones de disponibilité, puis regroupées vers S3 en arrière-plan — S3 ne se trouve jamais sur le chemin d’écriture synchrone [6]. Les lectures s’effectuent sur le cache SSD lorsqu’il est chaud et basculent vers S3 lorsqu’il est froid. Résultat : des écritures durables à 1,07 ms p99 et des lectures à 1,36 ms p99 sur une base de données de 50 Mo [1]. Les coûts de stockage sont environ 10,4 fois inférieurs à ceux de trois volumes EBS gp3 répliqués, selon les tarifs publics d’AWS us-east-1 [1].
Hibernation et réveil à la demande
Les Actors inactifs écrivent leur état et se déchargent, consommant 0 Mo pendant l’hibernation. La requête suivante réveille l’Actor avec son état en mémoire et sa base de données SQLite intacts [1][3]. Aucun ordonnanceur séparé n’est nécessaire ; la planification cron et par horodatage est intégrée au plan de contrôle [1].
Architecture opérationnelle : un binaire unique, sans opérateur Kubernetes
Le plan de contrôle est livré sous la forme d’un seul binaire Rust statique sans dépendances externes. Il communique en HTTP simple au sein de votre VPC derrière un équilibreur de charge — sans CRD, sans opérateur, ni service mesh [1]. Les Actors s’adressent les uns aux autres par clé et s’appellent à travers le cluster comme s’ils étaient locaux [1]. Le placement multi-région route les requêtes vers l’endroit où chaque Actor réside actuellement [1].
Expérience développeur : SDK typés et hooks React
Les définitions d’Actor génèrent des types clients, ainsi un changement de signature provoque une erreur à la compilation plutôt qu’en production [1]. Des hooks React natifs permettent aux composants de s’abonner à l’état d’un Actor et de rester à jour lors de ses modifications [1]. Des SDK pour TypeScript, Rust, Python, Swift et Effect sont disponibles [2]. L’observabilité émet des traces, des métriques et des logs OpenTelemetry vers votre collecteur existant [1].
Migration depuis Cloudflare Durable Objects
Amp a migré une charge de travail Durable Object vers Rivet en un week-end et l’utilise désormais pour orchestrer des agents multijoueurs [5]. Le modèle de programmation est similaire — des objets durables avec WebSockets — mais Rivet s’exécute sur votre propre infrastructure, utilise S3 pour la durabilité et évite l’enfermement propriétaire (vendor lock-in) [1][5].
Quand utiliser Rivet
Envisagez Rivet lorsque vous avez besoin de nombreux agents à longue durée de vie avec une mémoire durable, du multijoueur en temps réel ou des workflows devant survivre aux redémarrages. Il convient aux agents de codage, aux agents d’entreprise sur données privées, aux assistants personnels et aux applications collaboratives [1]. Si votre charge de travail correspond à une fonction sans état de type requête-réponse, une plateforme serverless plus simple peut suffire.
Mise en route
Installez le pack de compétences pour votre agent de codage : npx skills add rivet-dev/skills. Demandez ensuite à l’agent de créer la structure d’un projet Rivet localement [1][2]. Le guide de démarrage rapide crée un Actor avec SQLite, diffusion WebSocket et actions typées en quelques dizaines de lignes [2][4].
Sources
- Rivet - The Orchestrator for Agentic Workloads
- Launch HN: Rivet orchestrates agents… · AGI Hunt
- GitHub - rivet-dev/rivet: The orchestrator for agentic workloads. A …
- GitHub - danm-gh/rivet-dev-rivet: The orchestrator for agentic …
- SQLite Storage for Rivet Actors - Rivet
- Rivet gives each AI agent a 72 KB Actor · Hacker News | Zeli
- GitHub - rivet-dev/rivet: Rivet Actors are the primitive for stateful …
- State Management | rivet-dev/rivet | DeepWiki