L’espace de travail open source pour agents et bots : code, recherche, bureautique et tout le reste. Prêt à l’emploi, personnalisable jusqu’au bout, avec votre propre modèle.
macOS · Linux · Auto-hébergé avec Docker · Depuis un navigateur ou un téléphone
Défiler
01 · Équipe
Vous fixez le cap. Ils se partagent le travail.
L’agent principal découpe la tâche et la confie à ses coéquipiers : un Worker écrit l’implémentation, l’agent de recherche rassemble le contexte, le vérificateur lance les tests. Chaque membre a son nom, son avatar et sa propre conversation. Ils s’écrivent directement, se transmettent du code et rendent compte à qui leur a confié le travail. Suivez leurs échanges dans le panneau de collaboration et intervenez quand vous voulez.
Les membres avancent en parallèle, chacun dans son fil
Ils s’écrivent directement, sans tout faire passer par vous
Les transferts de code arrivent avec leur diff, fichier par fichier
Chacun rend compte une fois le travail terminé
ÉquipeAgent principal et 3 coéquipiers
Agent principal→Worker
Sépare le module de connexion en une couche session et une couche token. Ne touche pas à l’API publique.
Agent principal→Agent de recherche
Trouve tous les endroits qui lisent user.token directement.
Agent de recherche→Worker
Sept occurrences. Je t’ai envoyé la liste avec les numéros de ligne.
Worker→Vérificateur
C’est fait. Tu peux lancer la suite de tests ?
6 fichiers transmis +182−95
Vérificateur→Agent principal
Rapport · TerminéLes 412 tests passent. Rapport joint.
Écrire à @Worker
02 · Quatre façons de travailler
Quatre façons de travailler. Un seul espace.Le mode détermine les outils à portée de main et les coéquipiers présents.
ProgrammationCODE
Des outils pour travailler sur le code
Lire et modifier le code, lancer des commandes, ouvrir des terminaux. Chaque fichier modifié est sauvegardé à chaque tour, pour revenir en arrière à tout moment.
WorkerAgent de rechercheVérificateur
« Refactorise le module de connexion et préviens-moi quand les tests sont au vert. »
RechercheRESEARCH
Étudier des questions, comparer les explications, concevoir des expériences
Interroger OpenAlex et Semantic Scholar, lire articles et PDF, et faire avancer une expérience pas à pas.
WorkerAgent de recherchePartenaire de recherche
« Trouve les articles des deux dernières années sur ce sujet et fais-en un tableau comparatif filtrable. »
BureautiqueOFFICE
Documents, données, navigateur et outils de bureau
Word, Excel et PowerPoint, mais aussi le navigateur et les applications de votre ordinateur : il les manipule directement.
WorkerAgent de recherche
« Exporte les commandes du mois dernier dans un fichier Excel avec des graphiques. »
GénéralGENERAL
Des outils équilibrés pour le travail quotidien
Chercher une information, rédiger, créer un petit outil interactif. Tout ce que la journée apporte.
WorkerAgent de recherche
« Compare ces trois appareils photo et fais-moi un graphique réglable. »
03 · Bots
Un bot rien qu’à vous.
Un bot est un agent qui reste en poste. Il a son propre nom, sa personnalité, son modèle et son dossier de travail, mène plusieurs tâches de front et peut se voir attribuer un bureau d’ordinateur. Vous voyez tout ce dont il se souvient, vous pouvez le corriger ou le lui faire oublier. Mettez-le en veille et son travail est suspendu ; réveillez-le et il reprend exactement là où il s’était arrêté.
Son nom, ses instructions, son modèle et son dossier
Plusieurs tâches menées en parallèle
Une mémoire visible, corrigeable, effaçable
Veille et réveil sans perte de travail
zzz
NomMallowModèlePar défautDossier~/bots/mallow
Contrôle hebdo des dépendancesEn coursSuspenduReprise…
Mise au propre des notes de lectureEn coursSuspenduReprise…
Réponse aux commentaires de revueAttend votre avisSuspenduReprise…
Les rapports hebdo vont dans un tableauCorrigerOublierNe jamais pousser directement sur mainCorrigerOublier
04 · Harness
Le modèle réfléchit. Le harness va jusqu’au bout.
Le modèle est au centre. Chaque cellule autour de lui est quelque chose que Varin prépare pour lui : outils, contexte, exécution, collaboration et reprise. Placé ici, le même modèle mène des travaux plus longs et plus complexes.
Sorties lisiblesTaillées selon leur structure, originaux à portée
Préparé à l’avanceLe contexte se range en arrière-plan
Comptes exactsTokenizers locaux, calés sur l’usage réel
MémoireVoyez ce qu’il retient, et modifiez-le
Outils à la demandeLes courants sous la main, les autres sur demande
Contexte autogéréIl résume et garde les extraits clés
MCP, deux façonsExposé directement ou découvert au besoin
Copies isoléesChaque coéquipier code dans sa propre copie
Travail d’équipeConfier, échanger, transmettre, rendre compte
ModèleIl réfléchit. Vous le choisissez.
Exécution durableChaque étape notée, reprise après redémarrage
Questions sans blocageLe travail continue pendant qu’il attend
Multi-modèlesUne tâche, plusieurs modèles, en parallèle
Objectifs et relancesDes objectifs budgétés qui reprennent au bon moment
Jamais rejouéUn résultat incertain impose une vérification
Relances intelligentesBackoff intégré, règles à vous
Outils scriptésUn script, plusieurs outils, un arbre d’appels visible
Historique des fichiersRevenir par tour, et annuler ce retour
Règles d’accèsAutoriser, demander ou refuser, outil par outil
05 · Prêt, et à vous
Prêt dès le premier jour. À vous jusqu’au bout.
Prêt à l’emploi
Ajoutez une clé et commencez. Tout le reste est déjà en place.
outils natifs
~80
modes de travail
4
espaces de travail officiels
4
serveurs de langage intégrés
6
protocoles de modèle natifs
8
familles de thèmes, clair et sombre
21
langues d’interface
10
langues en dictée hors ligne
~100
Personnalisable jusqu’au bout
Sans écrire de code, chaque détail se règle à votre goût.
Changez le modèle, les instructions ou les outils de n’importe quel agent prédéfini, ou créez le vôtre
Des modèles distincts pour les titres, le contexte, la planification, les images et les embeddings
Instructions système et mémoire modifiables
Skills compatibles avec les dossiers .claude et .agents, installables depuis un dépôt Git
Serveurs MCP exposés directement ou découverts à la demande
Règles de permission par outil et règles de relance sur mesure
Apportez votre propre modèle.
Les clés restent sur votre propre Host. L’usage est enregistré par canal et par modèle, tour après tour. Aucun intermédiaire.
OpenAI Responses
OpenAI Chat
Anthropic
Gemini
Vertex AI
Azure OpenAI
Bedrock
Mistral
Alibaba Model Studio
Zhipu
StepFun
Ollama
LM Studio
Tout endpoint compatible
06 · Extensions
Même nos espaces de travail sont des extensions.
Les espaces Agent, IDE, Recherche et Bot, ainsi que le navigateur, Office, le contrôle de l’ordinateur et les serveurs de langage, sont tous enregistrés dans un même catalogue d’extensions, avec les mêmes contrats que les vôtres. Chacun peut être désactivé, et un espace de travail peut être remplacé entièrement.
import { defineHostExtension, provideTool } from'@varin/extension-sdk';import manifest from'./varin.extension.json'with { type: 'json' };export defaultdefineHostExtension({activate(context) {// Le service déclaré dans le manifeste : découverte et activation lisent une seule descriptionprovideTool(context, manifest.provides.services[0], async (input, call) => {// Appeler un outil intégré depuis le nouvel outil ; le reçu d’origine est conservéconst memory = await call.tools.invoke({ callId: 'memory', name: 'memory', arguments: input.memory, });return { memory }; }); },});
Manifeste extrait de examples/extensions/agent-authored-panel, schémas longs omis ; host.ts simplifié à partir de nested-tools.
Trois couches, de nombreux points d’ancrage
L’interface ne détient aucun privilège. Le travail privilégié reste du côté de confiance.
SurfaceINTERFACE
Reçoit des callbacks typés et des points de montage, rien de plus. Changer de shell ou d’éditeur n’apporte aucune permission supplémentaire.
DéclaratifGéréiframe / worker isoléNatif
Application HostHOST
Outils, serveurs de langage, débogueurs et tests tournent ici. Une extension brokered a son propre processus et son propre cycle de vie ; en cas d’échec, seule elle est récupérée.
Processus enfant brokeredNatif
Runtime RustRUNTIME
Fixe l’implémentation exacte de chaque appel. Identifiants, requêtes de modèle, historique d’exécution et reprise restent ici.
Répertoire d’outilsAdaptateurs de modèleRegistre de composition
Contributions d’interface16 types
Espace completScène de transitionVueÉditeurPanneauBarre latéralePagePage de réglagesCommandeRaccourciÉlément de menuAction de saisieÉlément de statutBadge de sessionRendu de messageRendu d’outil
Quel que soit le nombre d’extensions, l’espace de travail reste stable et sous votre contrôle.
Le manifeste fait contrat
Découverte, activation et revue lisent le même varin.extension.json. Une extension peut être trouvée, affichée et vérifiée avant qu’une seule ligne de son code ne s’exécute.
Lire l’espace de travail
Appeler des outils
Accès réseau · en attente
Demander n’est pas obtenir
Les permissions s’approuvent par version et par couche. Une mise à jour n’hérite jamais de nouvelles permissions, et une révocation prend effet immédiatement.
Préparé, puis publié d’un bloc
Tout ce que contient une mise à jour prend effet au même instant. En cas d’échec, la génération précédente reste en place ; rien n’est installé à moitié.
Les mises à jour n’interrompent rien
Les appels en cours restent sur l’implémentation avec laquelle ils ont démarré. Seuls les nouveaux appels utilisent la nouvelle version.
Des échecs bien délimités
Les extensions brokered tournent dans leur propre processus enfant : un échec ne récupère que cette extension. Si l’espace choisi ne démarre pas, un shell de secours prend le relais.
Extension écrite par un agentDésactivée · revue en attenteActivée par vous
Un agent écrit, il n’approuve pas
Un agent peut lire les contrats, écrire une extension et l’installer, mais une première installation reste désactivée jusqu’à votre revue.
SDKCLI : init · check · build · test7 modèles de projet16 exemplesKit de tests de conformitéEn attendant la publication du SDK, installez-le depuis le dépôt.Guide de création →Parcourir les exemples →
07 · Contrôle
Lâchez prise, gardez la main.
Les fichiers modifiés s’alignent sur une frise, tour par tour. Revenez en arrière en un geste, et annulez ce retour si besoin. Les fichiers que vous avez modifiés vous-même ne sont jamais écrasés, et une action au résultat incertain n’est jamais rejouée en silence.
08 · Partout
Reprenez de n’importe où.
Ordinateur, navigateur et téléphone se connectent au même Varin. Associez-les avec un QR code ; loin de votre réseau, un relais chiffré de bout en bout transporte la connexion sans voir votre contenu.
OrdinateurVarinNavigateur · Téléphone
Open source · AGPL-3.0
Open source. À vous.
Votre code, vos données, vos modèles, vos extensions.