YC vient de mettre en open source son harness multijoueur

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00vous vous souvenez quand un nouveau framework JavaScript sortait chaque semaine ? Eh bien, c'est la même chose
00:00:04qui se reproduit, mais avec les environnements d'agents. Et cette fois, ceux qui brassent généralement l'argent
00:00:09ont vraiment touché un clavier et écrit du code — bon, en vrai, c'est sûrement Claude qui l'a fait, mais
00:00:14l'accélérateur de startup Y Combinator a sorti son propre environnement d'agent, Qm, qu'ils qualifient
00:00:19d'environnement d'agent multijoueur pour travailler sur Slack et sur le web, et il possède quelques
00:00:24fonctionnalités intéressantes, en plus d'être spécialement conçu pour les startups. Donc, si vous dirigez une entreprise qui dégage zéro
00:00:29bénéfice, c'est peut-être l'outil qu'il vous faut. Alors, c'est quoi exactement Qm ? Si vous avez parcouru le dépôt GitHub,
00:00:39vous en êtes probablement ressorti avec plus de questions que de réponses, car il explique assez mal
00:00:44son propre fonctionnement. Le mot “environnement” (harness) fait penser à un autre Claude Code, quelque chose qu'on installe sur
00:00:49son ordinateur portable et qu'on lance dans son terminal. En réalité, c'est une application web full-stack que les entreprises
00:00:54déploient sur leur propre infrastructure, et chaque membre de l'organisation y dispose de son espace de travail isolé.
00:01:00En dessous, vous disposez d'un backend sans interface gérant les boucles d'agents et de Postgres contenant
00:01:05qui conserve l'historique des sessions. Rien ne réside donc sur votre machine. Il se connecte à Slack pour que tout le monde
00:01:10puisse l'utiliser là où il travaille déjà, ou vous pouvez le piloter directement depuis l'interface web. Ainsi, si vous souhaitez le configurer
00:01:15une bonne fois pour toutes et l'oublier, c'est possible. Et si vous voulez rester à la page avec les derniers
00:01:19outils, abonnez-vous à Better Stack. Alors, pourquoi utiliser ce truc ? Voyons ça de plus près. Qm s'exécute
00:01:26dans le cloud, pas sur votre machine. Cela signifie que l'agent et les appels d'outils se font hors de l'appareil, et vous
00:01:32pouvez y accéder depuis n'importe quel appareil connecté au web. Chaque espace de travail a son propre conteneur doté
00:01:38de son propre espace de stockage, de sorte que tout ce que l'agent installe reste installé. Demandez-lui de configurer un environnement Python
00:01:44lundi, il y sera toujours vendredi, avec les fichiers et tout ce qu'il a cloné. Chaque espace de travail
00:01:50est donc une vraie machine qui conserve son propre état. Vient ensuite le contexte partagé : vous pouvez créer un projet et y ajouter
00:01:56des coéquipiers afin de partager mémoire, fichiers, applications et connecteurs au sein de l'organisation. Cela signifie que
00:02:02vous configurez les choses une fois et tout le monde en profite. Par défaut, chacun dispose d'un espace personnel, qui est en fait
00:02:09un projet défini sur privé, ce qui vous permet de configurer uniquement ce auquel vous avez accès et de paramétrer en toute sécurité
00:02:15des éléments tels que des identifiants sans les partager. Cependant, si vous souhaitez que plusieurs membres de l'équipe aient accès
00:02:20aux mêmes outils, fichiers ou identifiants, c'est également possible. L'interface web fait d'ailleurs un travail assez lamentable
00:02:26pour vous indiquer dans quel contexte vous vous trouvez, avec pratiquement rien à l'écran pour vous faire savoir où vous configurez
00:02:32les choses. Vous pouvez voir ici que je clique sur mon projet partagé et, dans les fichiers, j'ai un petit indicateur pour
00:02:37me dire que je télécharge dans ce projet, mais dans d'autres onglets, je ne vois aucun indicateur. Je m'attendrais à voir
00:02:43un élément d'interface persistant pour m'indiquer mon contexte actuel, mais nul doute que cela sera ajouté bientôt. L'avantage suivant,
00:02:49ce sont les environnements (harnesses). Si vous aimez particulièrement la façon dont fonctionne un certain outil comme Claude Code par exemple,
00:02:54vous pouvez le configurer pour qu'il s'exécute à l'intérieur de Qm. Vous pouvez voir ici que l'environnement par défaut est Pi, mais je peux basculer sur Claude
00:03:01et je ferai tourner exactement le même environnement Claude Code dont j'ai l'habitude, mais dans un environnement cloud.
00:03:06Intégrer Claude Code dans cette liste a demandé un peu de recherche, et c'est l'administrateur qui décide quels environnements
00:03:11tout le monde est autorisé à choisir. Par défaut, vous obtenez uniquement celui avec lequel votre déploiement a démarré,
00:03:16donc mon menu déroulant a commencé avec seulement Pi et rien d'autre. Il n'y a aucune option pour ça dans le panneau
00:03:21d'administration, j'ai donc dû le configurer via un appel API : un PUT sur l'endpoint des environnements avec les identifiants des
00:03:27deux environnements que je veux, et après un rafraîchissement, les deux apparaissent. L'avantage suivant, c'est qu'il possède une surface
00:03:32d'outils vraiment réduite. C'est quelque chose que j'ai beaucoup apprécié : l'agent dispose seulement de sept outils (exécution, lecture,
00:03:38écriture, publication, mémoire, historique et arrière-plan). Tout le reste n'est qu'une commande shell
00:03:43à l'intérieur de son propre bac à sable (sandbox). Ainsi, au lieu de brancher une pile de serveurs MCP en espérant que le modèle choisisse le bon,
00:03:49vous pouvez simplement lui confier une machine et le laisser travailler comme vous le feriez. C'est la même approche
00:03:53qu'adopte Claude Code, et il est agréable de voir que c'est intégré au cœur de la conception. Alors, comment lâcher
00:03:58un agent sur les données de l'entreprise sans que cela tourne au vinaigre ? Il existe un paramètre global à l'organisation pour cela,
00:04:03avec trois niveaux. En mode strict, quasiment chaque appel d'outil se met en pause et attend qu'un humain l'approuve. Le mode auto
00:04:09est celui par défaut : il passe les données externes et les résultats d'outils au crible d'un classificateur avant qu'ils n'atteignent le modèle.
00:04:16Et en mode dangereux, il n'y a aucun filtrage ni pause. Une équipe peut renforcer ce niveau pour son propre périmètre, mais
00:04:21elle ne peut pas l'assouplir au-delà de ce que l'organisation a choisi. Il y a aussi une politique de commandes qui s'applique quel que soit
00:04:27le mode actif, de sorte que les suppressions récursives et le SQL destructeur sont bloqués, même en mode
00:04:33dangereux. On a envie d'avoir ce genre de sécurité avant de placer un agent devant toute l'entreprise,
00:04:36ce qu'on n'obtient pas quand tout le monde fait tourner ses propres agents en local. Globalement, je vois Qm
00:04:42comme un outil puissant pour les équipes ayant un accès partagé à la documentation de l'entreprise, car en tant qu'administrateur, vous pouvez
00:04:47configurer un accès granulaire aux outils externes via des identifiants, choisir d'inclure des fichiers ou
00:04:52une mémoire sur la façon d'exécuter divers processus. Vous pouvez même créer des compétences partagées accessibles à tous les membres de votre projet.
00:04:58Ainsi, plutôt que des configurations isolées comme nous l'avons aujourd'hui avec nos outils CLI, cela permet aux organisations
00:05:04de bénéficier du travail acharné de chacun. Personnellement, je pense que ça vaut le coup d'œil : il a déjà récolté 13 000
00:05:09étoiles sur GitHub, mais je dirais qu'il y a encore beaucoup à faire concernant l'UI et l'UX. Pour être juste envers
00:05:14les développeurs, le projet n'a que deux semaines, il n'est donc littéralement pas mature. Cependant, le potentiel ici
00:05:18est énorme. C'est open source et vous pouvez contrôler et modifier absolument tout, y compris changer le
00:05:24code source si nécessaire. Vous pouvez donc y jeter un œil sur le dépôt GitHub lié dans la description,
00:05:29et si vous avez aimé, n'oubliez pas de vous abonner à Better Stack et je vous dis à la prochaine !

Key Takeaway

Qm centralise l'exécution d'agents IA dans le cloud avec des conteneurs persistants et un contrôle de sécurité global, rassemblant treize mille étoiles sur GitHub en deux semaines.

Highlights

  • Qm est un environnement d'agent multijoueur open source développé par Y Combinator et déployé sur l'infrastructure cloud de l'entreprise.

  • Chaque espace de travail dispose d'un conteneur persistant qui conserve son état et ses fichiers d'un jour à l'autre.

  • L'agent utilise une surface réduite de sept outils principaux, reposant sur des commandes shell dans un bac à sable.

  • Le paramètre de sécurité mondial propose trois niveaux (strict, auto et dangereux) pour filtrer les appels d'outils et les données externes.

  • Le projet a atteint treize mille étoiles sur GitHub deux semaines seulement après son lancement.

Timeline

Présentation de Qm

  • Qm est un environnement d'agent multijoueur conçu par Y Combinator.
  • L'application s'exécute sur l'infrastructure cloud de l'entreprise et non sur la machine locale.
  • Le système se connecte à Slack et propose une interface web pour centraliser le travail.

Les environnements d'agents se multiplient à l'image des frameworks JavaScript par le passé. Y Combinator propose ici une application web full-stack gérant des boucles d'agents via un backend sans interface et une base Postgres pour l'historique des sessions. L'accès s'effectue directement depuis Slack ou l'interface web dédiée.

Fonctionnalités et persistance du cloud

  • Chaque espace de travail fonctionne sur une machine virtuelle distincte dotée de son propre stockage.
  • Les environnements conservent les installations et les fichiers clonés d'une session à l'autre.
  • Le contexte partagé permet à plusieurs coéquipiers d'utiliser les mêmes fichiers et connecteurs.

L'exécution dans le cloud permet d'accéder aux agents depuis n'importe quel appareil. Les conteneurs conservent leur état, ce qui évite de reconfigurer les environnements de travail à chaque connexion. Les projets partagés facilitent la collaboration au sein de l'organisation, malgré des indicateurs d'interface encore perfectibles pour identifier clairement le contexte actif.

Gestion des environnements et surface d'outils

  • Les utilisateurs peuvent basculer entre différents environnements comme Claude Code.
  • L'agent dispose d'une base restreinte de sept outils principaux.
  • Toutes les opérations complexes s'exécutent via des commandes shell dans un bac à sable.

L'administrateur définit les environnements autorisés accessibles via un menu déroulant, nécessitant parfois un appel API de configuration. La limitation à sept outils de base (exécution, lecture, écriture, publication, mémoire, historique et arrière-plan) simplifie le fonctionnement de l'agent sans multiplier les serveurs MCP.

Sécurité, administration et adoption

  • Trois niveaux de sécurité globaux régissent les appels d'outils et les données externes.
  • Une politique de commandes bloque les actions destructrices comme le SQL dangereux.
  • Le dépôt GitHub rassemble treize mille étoiles deux semaines après sa sortie.

Le mode strict impose une validation humaine pour chaque action, le mode auto filtre les résultats via un classificateur, et le mode dangereux supprime les filtres tout en conservant les interdictions de commandes destructrices. Malgré une interface encore jeune, le projet open source offre un potentiel élevé pour mutualiser les configurations au sein des équipes.

Community Posts

View all posts