Exécuter Kiro CLI de façon programmatique : présentation du mode sans interface

Par
BR

Brian Beach

Tech Lead

Si vous avez déjà utilisé Kiro CLI, vous connaissez la routine — vous exécutez kiro-cli login, et un navigateur s'ouvre pour vous permettre de vous authentifier. Ça fonctionne très bien lorsque vous êtes devant votre portable. Mais qu'en est-il des endroits où il n'y a pas de navigateur? Les pipelines de CI/CD, les tâches cron, les constructions de conteneurs, les flux de travail automatisés.

C'est ce que le mode sans interface résout. Vous générez une clé API, vous la définissez comme variable d'environnement, et Kiro CLI s'exécute sans jamais avoir besoin d'un navigateur. Mêmes outils, mêmes agents, mêmes capacités.

Dans cet article, je vais expliquer comment fonctionne le mode sans interface, puis construire un exemple concret : un réviseur de code automatisé qui s'exécute à chaque poussée via GitHub Actions.

Obtenir votre clé API

Connectez-vous et générez une clé API à partir des paramètres de votre compte.

Chargement de l'image...Image

Lorsque la variable d'environnement KIRO_API_KEY est définie, Kiro CLI passe entièrement outre le processus de connexion basé sur le navigateur. C'est tout — cette seule variable d'environnement fait la différence entre le mode interactif et le mode sans interface.

Exemple : révisions de code automatisées avec GitHub Actions

Mettons le mode sans interface à l'œuvre. Nous allons créer un agent Kiro personnalisé qui révise le code pour détecter les problèmes de sécurité, les bogues et les bonnes pratiques, puis l'intégrer dans un flux de travail GitHub Actions afin qu'il s'exécute à chaque poussée.

Définir l'agent de révision de code

Kiro vous permet de définir un agent personnalisé. Un agent est une personnalité ayant une tâche précise, un ensemble d'outils et des instructions sur son comportement. Déposez ceci dans .kiro/agents/code-reviewer.json dans votre dépôt :

Loading code example...

Quelques éléments à souligner :

  • Le champ prompt est là où la magie se produit. Nous demandons à l'agent d'agir comme un réviseur senior et de catégoriser les constats par gravité. Ajustez ceci pour correspondre aux normes de votre équipe.
  • tools liste tout ce que l'agent peut utiliser. allowedTools est le sous-ensemble qu'il peut utiliser sans demander de confirmation. Puisque ceci s'exécute sans surveillance en CI, nous voulons que les outils en lecture seule soient préapprouvés.

Le flux de travail GitHub Actions

D'abord, stockez votre clé API comme un secret GitHub : allez dans Settings → Secrets and variables → Actions de votre dépôt, et ajoutez un nouveau secret de dépôt nommé KIRO_API_KEY.

Ensuite, ajoutez ce flux de travail à .github/workflows/kiro-code-review.yml :

Loading code example...

Trois étapes : vérification, installation, révision.

  • curl -fsSL https://cli.kiro.dev/install | bash installe l'interface de la même façon que vous le feriez sur n'importe quelle machine Linux ou macOS.
  • --no-interactive indique à Kiro d'imprimer sa réponse sur stdout et de quitter, plutôt que de démarrer une session de clavardage interactive. C'est ce que vous voulez en CI — obtenir la réponse et passer à autre chose.
  • La variable d'environnement KIRO_API_KEY est prise en compte automatiquement — aucun fichier de configuration requis.

Remarque : j'ai activé la protection des branches sur main. Si quelqu'un peut pousser directement vers main, il pourrait modifier la configuration de l'agent ou le flux de travail lui-même.

Chaque poussée vers votre dépôt déclenche maintenant une révision de code complète.

Voir ça en action

Pour montrer à quoi ça ressemble en pratique, j'ai pointé l'agent vers une application Flask d'exemple comportant quelques problèmes. L'agent a exploré la structure du dépôt, lu les fichiers source et les modèles, et est revenu avec un rapport catégorisé.

Il a trouvé 4 problèmes critiques, 6 avertissements et 5 suggestions — couvrant tout, d'une SECRET_KEY codée en dur et d'une vulnérabilité XSS via le filtre |safe de Jinja2, jusqu'à une coquille dans le HTML. Voici un aperçu du résultat :

Loading code example...

Au-delà des révisions de code

Ce flux de travail de révision de code n'est qu'un exemple. Le mode sans interface ouvre Kiro CLI à tout flux de travail automatisé auquel vous pouvez penser :

  • Génération de documentation — Exécutez un agent qui analyse votre base de code et génère ou met à jour la documentation à chaque fusion vers main.
  • Audits de dépendances — Faites réviser vos fichiers de dépendances par un agent et signalez les paquets obsolètes ou vulnérables.
  • Aide à la migration — Pointez un agent vers une base de code et demandez-lui d'identifier les motifs à mettre à jour pour une migration de cadre d'application.
  • Résumés de PR — Générez des résumés lisibles par un humain de ce qui a changé dans une pull request.

Le modèle est toujours le même : une clé API, une définition d'agent personnalisé et une seule ligne dans votre configuration de CI.

Commencer

Le mode sans interface amène Kiro CLI dans les endroits où les développeurs ne peuvent pas être — pipelines, tâches planifiées, flux de travail automatisés — avec rien de plus qu'une variable d'environnement. Définissez un agent, déposez-le dans votre configuration de CI, et laissez-le accomplir le travail qui attendait auparavant un humain. Qu'il s'agisse de révisions de code, de génération de documentation ou d'audits de dépendances, la configuration est la même : une clé API et une seule ligne. Lisez la documentation du mode sans interface pour commencer.