quvyta
Langue: Français

quvyta-code

qcode

Des agents de code dans des conteneurs, depuis le terminal. Réglez un profil une fois, connectez-le, et ouvrez ensuite cet agent dans n’importe lequel de vos espaces de travail en quelques secondes, en passant des agents aux shells comme d’un onglet à l’autre.

curl -fsSL https://raw.githubusercontent.com/quvyta/quvyta/main/install.sh | sh -s -- code

Bêta. qcode fonctionne sous Linux avec Podman comme avec Docker. L’interface, les fichiers qu’il écrit et les noms de ses images et de ses conteneurs peuvent encore changer d’une version à l’autre.

Un espace de travail ouvert dans qcode : un onglet shell à côté de deux onglets d'agent, et le panneau latéral avec l'arbre de fichiers, l'espace de travail et ses conteneurs

Les agents qu’il lance

Amenez l’agent que vous payez déjà.

AgentSe connecte avec
Claude Codeun abonnement, une clé d’API ou votre propre fournisseur
opencodesans compte, un abonnement, une clé d’API ou votre propre fournisseur
Gemini CLIune clé d’API
Codex CLIun abonnement ou une clé d’API
Antigravity IDEsa propre connexion Google, dans une fenêtre à l'intérieur de son conteneur

Chaque agent est installé à partir de ce que ses éditeurs publient quand l'image d'un profil est construite ; qcode n'en fournit ni n'en modifie aucun. Les agents en ligne de commande peuvent reprendre une conversation depuis la liste des nouveaux onglets de qcode. Antigravity IDE est une application de bureau : sa fenêtre s'ouvre depuis un conteneur qui lui est propre, et son onglet indique où en est la fenêtre. Sa page de connexion s'ouvre dans une petite fenêtre à l'intérieur de ce conteneur, pour que la réponse de Google revienne et que la connexion se termine ; vous vous connectez à Google une seule fois pour chaque profil.

L’approche

C’est le conteneur qui tient le travail à part.

  • Un conteneur par agent

    Chaque agent tourne dans un conteneur bâti à partir d’une image faite pour lui. Il voit le dossier de l’espace de travail et, si vous l’autorisez, son dossier de matériel et le réseau.

  • Libre de travailler

    Comme c’est le conteneur qui tient le travail loin de votre machine, l’agent est réglé pour travailler sans s’arrêter pour demander la permission.

  • Une connexion, une copie par espace de travail

    Un profil se connecte une seule fois, par le parcours propre à l’agent. Chaque espace de travail reçoit sa copie de la connexion, pour que l’historique, la mémoire et les réglages ne passent jamais de l’un à l’autre.

  • Arrêté quand vous avez fini

    Quand le dernier qcode se ferme, les conteneurs qu’il a lancés s’arrêtent. Un service d’arrière-plan facultatif fait de même après un plantage. Les conteneurs que vous avez lancés vous-même ne sont jamais touchés.

  • Podman ou Docker

    Les deux moteurs conviennent. qcode le détecte et signale s'il manque ou n'est pas en cours d'exécution. Si aucun des deux n'est présent sur la machine, l'assistant de première exécution propose d'en installer un : il affiche la commande pour votre système, et soit vous l'exécutez vous-même, soit qcode exécute cette même commande dans un terminal de l'assistant, sous vos yeux. qcode n'élève jamais ses propres privilèges. Quand le moteur refuse pour une raison que qcode connaît, comme un service non démarré ou un compte absent du groupe docker, vous lisez une phrase simple et la ligne qui corrige le problème, avec les propres mots du moteur en dessous.

  • Changer de moteur, garder vos affaires

    Basculez entre Podman et Docker dans les Réglages, ou laissez qcode constater que le moteur enregistré ne répond plus et que l'autre répond : une page liste les profils dont le nouveau moteur ne possède pas les images, chacun avec Construire, et propose de copier le home de chaque profil, où vivent ses réglages et ses connexions. Rien n'est supprimé de l'ancien moteur, vous pouvez donc revenir en arrière. Un onglet dont l'image manque le signale et propose La construire maintenant, affiche la construction et s'ouvre quand elle est terminée.

  • Le système sous l'agent

    L'image d'un profil est construite sur Debian, la valeur par défaut et celle recommandée, ou sur Arch Linux, Ubuntu 24.04 LTS ou Alpine, et l'assistant affiche la taille de chacune. Alpine est la plus petite et marquée non recommandée : elle est bâtie sur musl plutôt que sur glibc, donc Gemini CLI ne s'y exécute pas. Antigravity IDE n'est construit que sur Debian. Lorsqu'un système manque d'un outil, l'assistant le signale ; les fichiers que vous ouvrez depuis l'arbre s'ouvrent toujours dans le conteneur Debian propre à l'espace de travail, rien ne change donc de ce côté.

  • Rien de plus sur votre machine

    Une adresse git est clonée dans un conteneur, et les fichiers s’ouvrent dans le petit conteneur de base de l’espace de travail : ni git ni un éditeur n’ont besoin d’être installés.

  • Des onglets qui se donnent du travail

    Un agent dans un onglet peut voir les autres onglets de son espace de travail et confier une tâche à l'un d'eux. Le message est saisi dans le prompt de cet agent dès que personne n'y écrit et que l'agent a cessé d'écrire, l'onglet émetteur étant nommé ; cela a été observé en fonctionnement avec Claude Code et opencode. Antigravity IDE peut donner du travail aux onglets mais ne peut pas en recevoir, car sa fenêtre n'a pas de prompt où saisir. Les messages vont d'onglet à onglet sans vous le demander ; Demander avant le premier message, sous Messages entre onglets dans les Réglages, fait revenir la question. Quel que soit votre choix, un onglet sans réseau n'envoie jamais à un onglet qui en a, et un échange entre onglets a une fin, pour que deux agents ne puissent pas se répondre indéfiniment ; quand il se termine, les deux onglets le signalent.

  • Votre propre fournisseur

    Sur la page Fournisseurs, vous ajoutez les services de modèles que vous avez déjà, un serveur ollama sur votre propre réseau ou OpenRouter, vous essayez la connexion et vous lisez les modèles que chacun propose. Un profil Claude Code ou opencode peut ensuite tourner sur l’un d’eux. La clé n’entre jamais dans le conteneur : l’onglet parle au fournisseur par un relais que qcode fait tourner sur votre machine, si bien que même un conteneur sans réseau peut utiliser un serveur de modèles de votre réseau. La clé est gardée dans un fichier que vous seul pouvez lire, et la page dit où.

  • La place qu’un serveur donne vraiment

    La fiche d’un modèle peut promettre plus de place que le serveur n’en accepte vraiment, et un serveur qui jette en silence le début d’une longue invite fait paraître un agent distrait sans raison visible. qcode mesure ce que le serveur accepte vraiment, l’affiche à côté de ce que le modèle annonce et indique à l’agent la taille mesurée.

  • QCode basic et QCode high

    Deux réglages prêts à l’emploi pour un profil. QCode basic, le recommandé, prépare l’agent comme qcode le lance, si bien qu’un nouvel onglet s’ouvre directement sur son invite. QCode high ajoute graphify (une carte de votre code que l’agent consulte avant de lire les fichiers), des extensions choisies pour Claude Code, oh-my-openagent pour opencode et, dans le fichier d’instructions de chaque agent, une courte section sur la façon de joindre les autres onglets, en laissant le reste du fichier tel quel. Chaque partie peut être désactivée, et l’assistant dit ce qui sera téléchargé.

  • Ce qu'il envoie, et quand

    qcode ne conserve aucune statistique et n'envoie rien sur vous ni sur votre travail. Il pose une question de sa propre initiative : au démarrage, au plus une fois par jour, il demande à crates.io la dernière version publiée de qcode, et le signale quand la vôtre est plus ancienne. La requête transporte le nom du paquet et la version de votre qcode, rien sur vous ni sur votre machine. C'est activé par défaut, et Signaler les mises à jour, dans les Réglages, le désactive d'un coup pour toutes les applications Quvyta ; tant que c'est désactivé, rien n'est demandé. À part cela, qcode n'accède au réseau lui-même qu'après que vous avez ajouté un fournisseur, et uniquement vers ce fournisseur : quand vous appuyez sur un bouton de la page Fournisseurs, ou tant qu'un onglet qui l'utilise est ouvert. Mesurer une fenêtre envoie quelques prompts, qu'un fournisseur payant facture. Les agents parlent à leurs éditeurs comme ils l'ont toujours fait, et construire une image télécharge ce dont l'image est faite.

  • Neuf langues

    Chaque mot à l’écran vient d’un fichier de langue, dans les neuf mêmes langues que ce site. qcode demande la vôtre dès son premier écran, et les Réglages la changent.

Écrans

Chaque écran, au clavier comme à la souris.

Installer

L’installateur de Quvyta construit qcode depuis crates.io avec cargo. Il demande avant chaque étape et installe Rust avec rustup s’il manque. Il n’utilise sudo que pour installer un éditeur de liens C manquant, et seulement lorsque vous répondez oui dans le terminal.

Le programme est installé comme qcode et aussi comme quvyta-code. Pour Windows et pour toutes les autres voies, voyez Installer.

Linux et macOS

curl -fsSL https://raw.githubusercontent.com/quvyta/quvyta/main/install.sh | sh -s -- code

Ou avec cargo

cargo install quvyta-code

Ce qu’il faut

  • Un moteur de conteneurs

    Podman (sans root, sans service d’arrière-plan) ou Docker avec son démon en marche. Si aucun n’est installé, l’assistant du premier lancement propose d’en installer un.

  • Un compte, ou votre propre serveur de modèles

    Un abonnement ou une clé d’API des auteurs de l’agent ou, pour Claude Code et opencode, un fournisseur que vous avez ajouté. opencode tourne aussi sans compte, avec ses modèles gratuits.

  • De l’espace disque et une connexion réseau

    Pour les premières images : une base Debian avec Node.js, et l'agent de chaque profil par-dessus. Un profil peut être construit sur Arch Linux, Ubuntu ou Alpine à la place, et l'assistant indique la taille de chacune.

  • Linux

    qcode est développé et testé sous Linux. macOS et Windows sont prévus dans le code mais pas encore essayés.