Claude Code + Multica = La configuration d'agent IA ultime

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00Okay, Multicore prétend être l'outil capable de transformer vos agents en véritables coéquipiers,
00:00:05donc Claude Code, OpenCode, Codex CLI, Hermes et bien d'autres peuvent être configurés avec leur propre système
00:00:11de prompts et leurs propres compétences, se voir assigner des tâches avec des mises à jour de statut, et vous alerter
00:00:16s'ils ont besoin de votre aide, planifier des tâches récurrentes, et vous pouvez parler directement à votre agent.
00:00:21Mais est-ce que cette version open-source des routines Claude et des agents gérés en vaut vraiment la peine ?
00:00:27Abonnez-vous et découvrons-le.
00:00:32La façon prévue d'utiliser Multicore est de l'installer sur votre machine de travail, qui idéalement
00:00:37dispose d'un agent de codage en terminal comme Claude Code ou OpenCode, puis de le connecter à l'
00:00:42interface cloud Multicore.
00:00:44Mais nous n'allons pas faire ça, nous allons choisir l'option complètement auto-hébergée.
00:00:48Nous installerons donc Multicore sur un VPS, et j'expliquerai pourquoi plus tard.
00:00:52En fait, j'ai l'habitude de sauter toute l'étape de configuration, mais pour l'auto-hébergement avec Multicore, il y a
00:00:58quelques choses que j'ai dû découvrir et qui n'étaient pas dans la documentation.
00:01:01Nous allons donc passer par là d'abord, avant de voir quelques exemples sur la façon de l'utiliser.
00:01:05J'ai donc déjà configuré Multicore sur un VPS Hetzner tout neuf en lançant cette commande, et cela
00:01:10utilisera Docker pour installer Multicore.
00:01:12Assurez-vous donc d'avoir Docker installé sur votre VPS.
00:01:15Et quand vous lancez tout, vous avez simplement trois conteneurs exécutant le backend Multicore,
00:01:19qui je crois est écrit en Go, le frontend Multicore, qui est en TypeScript et Next.js,
00:01:24et la base de données Postgres utilisée pour stocker les informations de session.
00:01:27Vous devez ensuite lancer la configuration auto-hébergée de Multicore.
00:01:30Mais j'ai eu quelques problèmes avec cela.
00:01:31Donc, si nous lançons Multicore self-host, et si je devais réinitialiser ma configuration actuelle et
00:01:35mon espace de travail, vous verrez qu'il me demande de m'authentifier avec cette URL, ce qui vous amènera
00:01:39à cet écran.
00:01:40Et si vous ajoutez votre adresse e-mail et cliquez sur continuer, vous devrez entrer un code de renvoi.
00:01:45J'ai eu beaucoup de problèmes avec cette section.
00:01:48Je vous recommande donc d'éviter complètement le côté renvoi en allant dans le
00:01:53répertoire .multicore server, en ouvrant le fichier env, assurez-vous que l'environnement de l'application est défini
00:01:58sur développement, et assurez-vous également que la valeur pour la clé API de renvoi est vide.
00:02:02Cela rendra le code cette valeur.
00:02:04Une fois que vous avez fait cela, restez dans ce répertoire et lancez cette commande pour redémarrer les conteneurs
00:02:09avec le fichier de variables d'environnement mis à jour.
00:02:11Et après avoir fait cela, vous devriez pouvoir vous connecter avec six huit.
00:02:15Nous n'avons pas tout à fait fini pour autant.
00:02:17À partir de là, allez dans runtimes, et vous pouvez voir que j'ai deux runtimes différents installés,
00:02:21mais vous ne devriez rien avoir car cela n'a pas été configuré.
00:02:24Si vous lancez Multicore Daemon Status, vous pouvez voir qu'en ce moment le mien est en cours d'exécution et utilise ces
00:02:28agents avec un espace de travail, mais le vôtre devrait avoir une erreur.
00:02:32Et c'est parce qu'il faut d'abord avoir un outil de codage en terminal installé sur votre VPS.
00:02:36J'ai donc Claude Code et Open Code installés.
00:02:39Et pour connecter ce runtime à votre instance Multicore, vous devez aller dans les paramètres,
00:02:44puis dans les jetons API, créer un nouveau jeton API, puis lancer Multicore login avec l'indicateur de jeton
00:02:50et coller votre jeton ici.
00:02:52Ensuite, si vous avez un démon Multicore en cours d'exécution, arrêtez-le avant de le redémarrer.
00:02:56Le démon dans Multicore recherche les binaires de harnais installés, interroge Multicore pour obtenir des tâches
00:03:01à donner aux agents et génère plusieurs agents en utilisant des arborescences de travail afin d'accomplir ces tâches.
00:03:07faites.
00:03:08Une fois que vous avez fait cela, le démon devrait maintenant afficher vos runtimes disponibles.
00:03:11Et la beauté de le connecter de cette façon est que vous pouvez ajouter plusieurs machines à votre
00:03:15instance Multicore.
00:03:16Donc, si vous avez plusieurs VPS, vous pouvez installer Multicore sur tous et les connecter
00:03:20à une seule interface utilisateur en utilisant vos différents jetons API.
00:03:23Ok, une fois la configuration terminée, passons en revue quelques tâches simples avec Multicore.
00:03:28Et je ne vais pas parcourir tout le potentiel.
00:03:30Avoir plusieurs agents avec plusieurs projets et ajouter plusieurs tâches, je veux juste vous montrer
00:03:35les fonctionnalités individuelles afin que vous puissiez imaginer à quel point Multicore est puissant, si c'est la façon
00:03:39dont vous aimeriez travailler.
00:03:40Avant de pouvoir faire quoi que ce soit avec Multicore, vous devez créer un agent.
00:03:43Et j'en ai déjà créé un ici appelé Medibot, mais vous pouvez en faire un en cliquant sur ce bouton plus
00:03:48et en suivant les instructions.
00:03:50Ce robot médical est similaire ou possède le même système de prompt que celui que j'ai fait dans la vidéo
00:03:56des agents gérés par Claude, qui récupère simplement mes informations médicales depuis un dépôt GitHub privé, et
00:04:02je peux lui parler via Slack.
00:04:04Maintenant, parce que j'ai un peu plus de liberté avec Multicore dans le sens où j'ai mon propre VPS
00:04:08et je peux le gérer directement, au lieu de demander à cet agent de cloner ce dépôt depuis
00:04:12GitHub, je suis allé de l'avant et je l'ai cloné moi-même dans ce répertoire.
00:04:16Maintenant, ainsi que les invites système, vous pouvez donner à votre agent des compétences personnalisées.
00:04:19Notez que l'agent aura accès aux compétences que vous avez installées sur votre CLI, mais vous pouvez
00:04:24ajouter des compétences directement dans l'interface utilisateur si vous le souhaitez ici, ce que j'ai fait en tant que compétence de test, mais
00:04:29je ne vais pas l'ajouter à l'agent.
00:04:30Il y a aussi des environnements et aussi des arguments personnalisés.
00:04:33Comme les agents utilisent l'outil CLI, dans ce cas, il va utiliser open code run, je peux
00:04:37ajouter des drapeaux personnalisés si je veux que cet agent n'utilise qu'un modèle spécifique, et ainsi de suite.
00:04:42Mais par défaut, l'agent utilisera le modèle que vous avez dans votre CLI.
00:04:46Donc, si je lance open code maintenant, vous pouvez voir qu'il utilise le gros modèle pickle d'OpenCodeZen.
00:04:50Maintenant, je peux créer une tâche ou un problème en cliquant ici, et je vais appeler cela un problème médical
00:04:54avec une consigne du type peux-tu vérifier mes informations médicales et me dire si je peux
00:04:59manger des calamars.
00:05:00Maintenant, si vous avez déjà utilisé un outil de suivi de problèmes, cela semblera très familier.
00:05:04Vous pouvez définir des priorités, assigner des personnes, ajouter des dates limites, et ainsi de suite.
00:05:08Mais je vous recommanderais fortement de toujours créer le problème avant d'assigner quelqu'un, car
00:05:13dès que vous assignez un bot à ce problème, il commence à travailler dessus immédiatement.
00:05:17Pour vous assurer que vous êtes à l'aise avec tout ce que vous avez écrit, vérifiez deux fois.
00:05:21Et une fois que vous avez terminé, assignez-le à un bot.
00:05:23Donc je vais l'assigner à Medibot et créer le problème.
00:05:26Et à partir de là, le bot commencera à travailler dessus.
00:05:28Je peux garder une trace de cela dans les problèmes ici.
00:05:30Et si nous cliquons sur le problème, nous pouvons voir que Medibot travaille tout de suite.
00:05:34Maintenant, pendant que cela se passe, je vais cliquer sur pilotage automatique.
00:05:36Et c'est la version open source des routines Claude.
00:05:39Nous pouvons cliquer sur commencer à partir de zéro et nous pouvons sélectionner un agent et nous pouvons définir à quelle fréquence nous
00:05:44voulons que cette tâche s'exécute.
00:05:45Maintenant, contrairement aux routines Claude, il n'y a pas d'option pour les déclencheurs API ou les déclencheurs d'événements GitHub.
00:05:51Peut-être que cela viendra à l'avenir.
00:05:53Mais je vais donner à cela une consigne similaire à la vidéo sur les routines Claude pour récupérer les dernières
00:05:57nouvelles de ces trois newsletters via RSS.
00:06:00Et une fois que vous obtenez ces problèmes, trouvez les 10 meilleurs articles qui peuvent être utilisés dans une vidéo YouTube.
00:06:05Cela se produira quotidiennement à 9h, heure de Londres.
00:06:08Et idéalement, vous voudriez un agent spécialisé dans la recherche qui est bon pour choisir des sujets pour YouTube.
00:06:14Mais pour l'instant, nous resterons avec Medibot et nous cliquerons sur créer.
00:06:17Ensuite, nous pouvons cliquer sur ce pilotage automatique et cliquer sur exécuter maintenant juste pour le voir en action.
00:06:21Il créera un nouveau problème dans à faire.
00:06:23Et nous laisserons cela tourner pendant quelques minutes et vérifierons notre autre problème, qui a
00:06:28maintenant été déplacé en cours d'examen par l'agent.
00:06:30Donc ici, il dit que sur la base de mes dossiers médicaux, j'ai une allergie aux crustacés, ce qui est vrai et
00:06:35ne devrait pas manger de calamars et donne ensuite plus d'informations ici sur mon allergie.
00:06:40Et nous pouvons aussi cliquer ici pour voir exactement ce que l'agent a fait.
00:06:43Nous pouvons donc développer l'historique d'exécution et voir qu'il a fait quelques appels d'outils bash.
00:06:48En fait, beaucoup d'appels d'outils bash pour chercher le répertoire d'informations médicales et le laisser fouiller
00:06:53tout le répertoire personnel avant de le trouver et de vérifier mes informations médicales pour donner à l'agent
00:06:59les bonnes informations.
00:07:00Génial.
00:07:01Et à partir de là, je peux même répondre, merci pour l'information.
00:07:04Pourquoi as-tu mis cela en examen au lieu de le déplacer dans fait ?
00:07:07Donc nous laisserons cela avec l'agent.
00:07:09Et si vous ne voulez pas garder une trace manuelle de ce que dit l'agent, vous pouvez aussi obtenir
00:07:12des notifications de l'agent.
00:07:14Voici donc la réponse de l'agent médical.
00:07:16Et j'ai aussi obtenu une mise à jour de notre pilotage automatique.
00:07:19En voici une qui s'est exécutée automatiquement il y a une heure, mais en voici une que nous venons de déclencher et elle vient
00:07:22juste de se terminer.
00:07:23Donc nous pouvons voir ici que c'est la consigne que je lui ai donnée, elle a parcouru la consigne et elle me
00:07:27donne une réponse.
00:07:28Voici donc les 10 meilleurs choix avec barn, l'API temporelle, et ainsi de suite.
00:07:33Maintenant, ce qui est intéressant ici, c'est qu'un agent ne déplacera pas une tâche une fois qu'elle est en examen de retour
00:07:37en cours et à faire, vous en tant qu'humain pourriez bien sûr le faire automatiquement.
00:07:41Je peux donc déplacer cela en cours ou déplacer cela en bloqué si je le voulais.
00:07:45Mais même si j'ai posé une question à l'agent médical, il n'est pas revenu en cours
00:07:49pendant qu'il répondait à la question.
00:07:51Il reste juste en examen et donc j'ai besoin de cliquer dessus pour savoir quand c'est fini et nous pouvons voir
00:07:55pourquoi il l'a déplacé en examen puisque c'est l'étape standard du flux de travail au lieu de le déplacer
00:08:00en fait.
00:08:01Il attend donc moi, l'humain, pour le déplacer en fait, ce qui a un certain sens.
00:08:05À partir de là, je peux continuer à parler à l'agent, laisser une réponse, laisser des commentaires, attacher
00:08:09des fichiers et des emojis, ou si je voulais juste poser une question unique sans passer par tout le
00:08:14processus de suivi de problèmes, je pourrais cliquer ici et parler directement à mon agent.
00:08:18Maintenant, pour être honnête, je ne suis pas le plus grand fan de communiquer avec des agents en assignant
00:08:22des tâches et en les regardant progresser à travers un tableau Kanban.
00:08:25C'est pourquoi je n'ai pas essayé des projets comme Paperclip ou Vibe Kanban.
00:08:29Je ne me soucie pas vraiment des priorités ou des dates limites, j'ai tendance à travailler sur un ou peut-être deux projets
00:08:34à la fois avec des agents et j'aime avoir plus de dialogue avec mes agents, voir réellement
00:08:39ce qu'ils font, les outils qu'ils utilisent et les problèmes qu'ils rencontrent afin que je puisse aider à déboguer avec eux.
00:08:45Mais cela ne veut pas dire que je n'aime pas l'idée de Malteka, en fait j'aime la fonctionnalité des tâches programmées,
00:08:50j'aime le fait que vous puissiez le complètement auto-héberger et je pense aussi que c'est un outil très solide
00:08:55qui est beaucoup moins cher si vous utilisez un modèle différent que d'utiliser certains des agents gérés par Claude
00:08:59ou des routines Claude.
00:09:02Mais je dirai que c'est assez technique dans son processus de configuration, vous devez en quelque sorte savoir ce que
00:09:06vous faites, surtout si vous voulez garder les choses sécurisées et c'est l'avantage des
00:09:11agents gérés ou des routines qui prennent soin de toutes ces choses pour vous en hébergeant des choses
00:09:16sur une infrastructure de sujets et le fait que vous puissiez utiliser des connecteurs pour communiquer avec
00:09:20votre agent rend les choses un peu plus faciles parce que si vous vouliez faire la même chose dans Malteka,
00:09:24ok vous pourriez utiliser le site réactif sur votre téléphone mais vous devriez mettre manuellement les choses
00:09:29ensemble si vous voulez utiliser Slack, Telegram ou Discord.
00:09:33Et c'est pourquoi je suis allé vers la route auto-hébergée purement à cause de la sécurité, si quelque chose
00:09:37est connecté à internet alors c'est certainement piratable, je veux dire que vous pourriez utiliser Malteka complètement
00:09:41localement donc installez-le sur votre machine locale et lancez l'interface utilisateur localement donc il ne sera pas connecté
00:09:46à internet mais si vous voulez le connecter à internet je recommande d'emprunter la
00:09:50route auto-hébergée en utilisant Tailscale afin que votre serveur ne soit pas complètement exposé et en vous assurant que vous êtes
00:09:55toujours à jour avec les dernières versions.

Key Takeaway

Multicore permet d'orchestrer des agents IA auto-hébergés sur une infrastructure propre, offrant un contrôle total sur les données et les coûts au prix d'une configuration technique plus complexe que les solutions managées.

Highlights

Multicore propose une alternative open-source permettant d'héberger localement ou sur un VPS des agents IA basés sur des outils CLI comme Claude Code ou OpenCode.

L'installation sur un VPS nécessite Docker pour exécuter trois conteneurs distincts : le backend en Go, le frontend en Next.js et la base de données Postgres.

La configuration auto-hébergée permet de connecter plusieurs machines (VPS) à une seule interface utilisateur centrale via des jetons API uniques.

Le système de pilotage automatique exécute des tâches récurrentes selon un calendrier précis, comme la veille quotidienne de newsletters à 9h00.

Les agents utilisent les outils CLI installés sur la machine hôte pour effectuer des appels bash, parcourir des répertoires et manipuler des fichiers de données.

L'intégration avec des plateformes de messagerie comme Slack ou Discord nécessite une configuration manuelle, contrairement aux solutions d'agents gérés clé en main.

Timeline

Configuration de l'infrastructure Multicore

  • L'installation repose sur Docker pour déployer le backend, le frontend et la base de données Postgres sur un VPS.
  • Le contournement du système d'authentification par défaut s'effectue en modifiant les variables d'environnement dans le répertoire .multicore server.
  • Le démon Multicore communique avec les outils CLI installés, tels que Claude Code ou OpenCode, pour exécuter les tâches.
  • Plusieurs instances de machines distantes peuvent se centraliser sous une interface unique via des jetons API dédiés.

L'installation sur un VPS garantit une sécurité accrue et une autonomie totale. Le processus demande de désactiver le système de parrainage via le fichier .env et de connecter manuellement les runtimes de codage via des jetons API générés dans les paramètres du tableau de bord.

Gestion des agents et automatisation

  • Les agents se voient attribuer des tâches spécifiques au sein d'un tableau Kanban avec des statuts de suivi.
  • Le pilotage automatique permet de définir des routines récurrentes sans nécessiter d'intervention humaine constante.
  • Les agents accèdent aux répertoires locaux et exécutent des commandes bash pour traiter les informations fournies.
  • Les interactions incluent la possibilité de converser directement avec l'agent en dehors du flux de travail des tâches.

La création d'agents personnalisés, comme un assistant médical, permet d'extraire des données de dépôts GitHub privés pour répondre à des requêtes. Le suivi automatique permet de déléguer des tâches complexes, bien que le déplacement des tickets entre les états 'En examen' et 'Fait' nécessite une validation humaine.

Évaluation de l'outil et recommandations

  • L'auto-hébergement constitue une solution plus économique que les services d'agents managés.
  • La complexité technique est le principal obstacle par rapport aux solutions prêtes à l'emploi.
  • L'utilisation de Tailscale est préconisée pour sécuriser l'accès aux serveurs auto-hébergés exposés sur internet.
  • Le dialogue direct avec l'agent est préféré à la gestion rigide par tickets pour le débogage et le travail itératif.

Bien que le workflow par tickets Kanban soit moins adapté au développement itératif, les fonctionnalités d'automatisation et de contrôle local font de Multicore un outil solide. La sécurité repose sur la gestion rigoureuse des mises à jour et l'utilisation de tunnels sécurisés pour éviter l'exposition directe du serveur.

Community Posts

View all posts