Espaces de travail multi-racines dans Kiro : travaillez sur plusieurs projets, pas seulement dans un seul
Brooke Jamieson
Senior Developer Advocate
Normalement, un espace de travail Kiro est lié à un seul dossier de projet :
Mais - que se passe-t-il si vous travaillez sur my-app et une bibliothèque partagée dont il dépend, en même temps? Ou si vous gérez plusieurs microservices? Ou un monorepo avec plusieurs paquets? C'est là qu'interviennent les espaces de travail multi-racines, et vous pouvez les essayer dès aujourd'hui!
Avec le support multi-racines, vous pouvez amener plusieurs dossiers dans une seule fenêtre Kiro IDE. De cette façon, chacun reste indépendant, mais ils peuvent tous fonctionner ensemble :
De cette façon, vous n'avez pas besoin de vous soucier de la fusion ou des liens symboliques, et vous obtenez un accès côte à côte bien organisé.
Multi-racines est une bonne idée quand :
- Vous modifiez une fonctionnalité dans votre application qui nécessite des changements à une bibliothèque partagée
- Vous maintenez plusieurs services liés (p. ex. frontend + backend + authentification)
- Vous utilisez des sous-modules git ou des espaces de travail (comme les espaces de travail npm/yarn/pnpm)
- Vous voulez rechercher, naviguer ou refactoriser dans plusieurs projets à la fois.
Au lieu d'envoyer un message privé à vos collègues pour demander des solutions de contournement, ou de trouver comment garder plusieurs versions de Kiro ouvertes en même temps, vous pouvez maintenant garder tout votre contexte synchronisé dans un seul espace de travail pour votre projet. Cela facilite le travail sur des tâches qui s'étendent sur plusieurs racines avec Kiro.
Il y a 2 options, et elles sont toutes les deux faciles :
- Fichier → Ajouter un dossier à l'espace de travail... → choisissez le dossier
- Faites glisser et déposez un dossier dans Kiro
Kiro reconnaîtra alors chaque dossier comme une racine et commencera à charger les fichiers de configuration .kiro de chaque racine.
Chaque racine conserve sa propre identité, mais Kiro réunit tout pour vous.
Tous vos fichiers Steering apparaissent dans une seule liste sous « Workspace » dans le panneau Agent Steering, et chacun indique de quelle racine il provient. Quand vous créez un nouveau fichier Steering, Kiro vous donnera 3 options :
- Steering d'agent
my-app- S'applique uniquement dans cet espace de travail spécifique - Steering d'agent global - S'applique à tous les espaces de travail
- Fichiers Steering de base - Crée automatiquement des fichiers de base pour établir le contexte de base de l'espace de travail.
Les fichiers Steering avec la directive « Always Included » sont toujours chargés, quel que soit le dossier racine spécifique sur lequel l'agent travaille. Cependant, ceux avec une directive « Conditional Inclusion » ne sont chargés que si l'agent travaille sur un fichier défini dans cette même racine.
Pour les espaces de travail multi-racines, vous voudrez généralement la première option pour que votre Steering reste organisé.
Les Hooks sont listés ensemble, mais chacun est lié à sa racine. Ainsi, un Hook partagé dans shared-ui/.kiro/hooks/ ne se déclenchera que lorsque des fichiers dans shared-ui changent, ce qui garde tout bien contenu.
Toutes les définitions de serveurs MCP de chaque racine sont chargées au démarrage. Si 2 racines différentes ont des MCP avec le même nom, celui de la racine qui apparaît en dernier dans votre dossier d'espace de travail « gagne ». Alors, assurez-vous d'être stratégique et prudent avec les noms MCP pour éviter les conflits. Utilisez des préfixes comme frontend-github et backend-github au lieu de simplement github. Ensuite, quand vous ouvrez la configuration MCP, Kiro vous invitera à choisir la configuration de quelle racine vous voulez consulter.
#codebase effectue des recherches dans toutes les racines, et Kiro indexe automatiquement le code source, la documentation et les fichiers de configuration de chaque dossier racine dans votre espace de travail. Quand vous utilisez #file et qu'il y a des doublons (p. ex. utils/logger.ts dans 2 racines), Kiro vous montrera une liste avec les chemins complets pour que vous puissiez vous assurer de choisir le bon. Si vous voulez encore plus de contrôle, vous pouvez utiliser des plages de lignes pour concentrer le contexte, comme #file:src/index.ts:10-25.
Imaginez ce scénario :
Mettez à jour le composant
Buttondansshared-ui, puis mettez à jourmy-apppour utiliser la nouvelle propriétévariant.
Avec les espaces de travail multi-racines dans Kiro :
- Ouvrez à la fois
my-appetshared-uidans un seul espace de travail - Demandez à Kiro :
#spec:ui-update Add 'outline' variant to Button, then update my-app to use it - Kiro travaille sur les deux racines dans une seule conversation quand vous devez mettre à jour du code, exécuter des Hooks ou travailler avec des Specs.
Tout cela se passe dans un seul flux, donc vous n'avez pas besoin de changer de fenêtre ou de créer des conversations séparées.
Assurez-vous d'être à jour avec la dernière version de Kiro, puis faites simplement glisser un autre dossier de projet dans votre fenêtre Kiro, et vous êtes prêt à démarrer! Vous voulez voir ce qu'il y a de nouveau dans Kiro? Consultez notre article de blogue sur le lancement de la disponibilité générale, et le journal des modifications.