Kiro Web s'intègre avec GitLab afin que vous puissiez ajouter un projet GitLab à une session, faire modifier le code par l'agent, et ouvrir une merge request en votre nom. Cette page explique comment vous connecter, ce à quoi l'agent peut accéder, et comment portée ses permissions.
Kiro Web se connecte à GitLab à l'aide d'un jeton d'accès personnel (PAT) :
Une fois connecté, vos projets GitLab sont disponibles à la sélection lorsque vous créez une session ou ajoutez un dépôt en cours de session.
Clone des projets
L'agent clone vos projets GitLab autorisés dans son environnement sandbox isolé, où il lit le code et effectue des modifications.
Crée des branches et des commits
Pour chaque tâche, l'agent crée une branche de fonctionnalité, effectue des commits avec des messages clairs, et pousse vers votre projet. L'agent agit en votre nom et vous inclut, vous et lui-même, comme coauteurs dans chaque commit.
Ouvre des merge requests
Après avoir terminé le travail, l'agent ouvre une merge request avec une description des modifications, l'approche d'implémentation, et les compromis considérés.
Vous pouvez ajouter des dépôts GitLab et GitHub à la même session. L'agent travaille sur tous les dépôts sélectionnés à la fois — lisant le code, effectuant des modifications, et ouvrant une merge request sur GitLab et une pull request sur GitHub selon le fournisseur approprié. Cela permet à l'agent de coordonner des modifications qui s'étendent sur des projets hébergés chez différents fournisseurs.
L'accès de l'agent à GitLab est déterminé par ce que vous accordez à votre jeton d'accès personnel. GitLab propose deux types de jetons.
Les jetons à granularité fine utilisent des permissions granulaires au lieu de portées, limitant le jeton à des ressources et des dépôts spécifiques. Lorsque vous créez un jeton à granularité fine, GitLab affiche les permissions dans deux sections. Sous Group and project access, vous sélectionnez les groupes ou projets auxquels le jeton peut accéder et ce qu'il peut faire. Sous User, vous accordez des permissions au niveau du compte.
Accordez les permissions suivantes :
| Section | Permissions requises |
|---|---|
| Group and project | Code (Download, Push) · Merge Request (Read, Create) · Work Item (Read) |
| User | Project (Read) · User (Read) |
Lors de la création du jeton, réglez le group and project access pour inclure les dépôts avec lesquels vous voulez que Kiro travaille.
Work Item (Read) couvre la lecture des issues et des commentaires de merge request.
Le sélecteur de projets liste tous les projets dont vous êtes membre, mais l'agent ne peut cloner et pousser que vers les dépôts inclus dans le group and project access du jeton. Un projet peut apparaître dans le sélecteur et échouer quand même au clonage s'il est en dehors de la sélection du jeton. Si cela se produit, modifiez le group and project access du jeton dans GitLab pour y inclure le projet.
Les jetons d'accès personnels GitLab peuvent avoir une date d'expiration. Lorsque votre jeton expire, Kiro Web perd l'accès à vos projets GitLab. Vous verrez une erreur de connexion en essayant d'utiliser GitLab dans une session.
Pour restaurer l'accès, générez un nouveau jeton dans GitLab avec les mêmes permissions et mettez-le à jour dans Settings > Agent.
Instances hébergées publiquement
Si votre instance GitLab est accessible depuis Internet public et utilise une liste blanche d'adresses IP ou des règles de pare-feu, vous devez autoriser le trafic entrant provenant des adresses IP sources Kiro Web suivantes.
US East (N. Virginia) (us-east-1) :
34.228.181.128 44.219.176.187 54.226.244.221
Instances hébergées de façon privée
Kiro Web ne prend pas encore en charge les instances GitLab qui ne sont accessibles que depuis l'intérieur d'un VPC AWS.
GitLab