clenv – Gestionnaire de profils pour Claude Code
(github.com/Imchaemin)À mesure que j’utilisais Claude Code, j’ai eu de plus en plus le sentiment qu’il devenait difficile de gérer les paramètres comme les skills, les MCP, etc. Au début, je pensais qu’il suffisait de mettre au niveau utilisateur uniquement les skills et paramètres MCP qui gagneraient à être appliqués simplement à tous les environnements de développement, mais peu à peu j’ai eu l’impression que les réglages se mélangeaient entre mon rôle de développeur FE en entreprise et celui de développeur full stack sur mes projets perso.
Il y avait l’inconvénient de devoir refaire à chaque fois la configuration du projet pour chaque dépôt, le fait qu’avec une base marketplace et plugins il fallait configurer les choses selon qu’on les utilise ou non était pénible, et le processus qui consistait à essayer puis supprimer des réglages expérimentaux était lui aussi fastidieux..
Au-delà de ces désagréments, en avançant dans le développement via des agents, j’ai aussi le sentiment que mes personae de développeur se multiplient progressivement.
Je pense qu’il est naturel que la diversité de mes rôles entraîne une diversité de personae, et j’en suis arrivé à la conclusion qu’il me fallait un système permettant de séparer et d’isoler clairement ces personae.
Et si l’environnement Claude Code pouvait lui aussi basculer entre des profils, comme avec nvm ou pyenv ?
C’est ainsi qu’est né clenv.
Implémentation clé : les liens symboliques
Le principe consiste à faire de ~/.claude un lien symbolique au lieu d’un répertoire réel, puis à changer la cible pointée par ce lien. Claude Code continue de lire ~/.claude tel quel, mais en réalité il s’agit d’un répertoire complètement différent. Chaque répertoire de profil est initialisé comme dépôt git afin de gérer l’historique des modifications.
Comme il s’agit d’un outil qui gère l’environnement Claude Code lui-même, il fallait qu’il fonctionne de manière totalement indépendante de Claude Code, et je trouvais pertinent de pouvoir l’installer et le gérer via brew.
GitHub: https://github.com/Imchaemin/clenv
Détails du processus d’implémentation (y compris les galères) : https://blog.chaemin.im/clenv
2 commentaires
Moi aussi, j’en ressentais le besoin et j’étais en train de travailler dessus, merci.
Oh, merci beaucoup !!