Les Agent Hooks prennent en charge divers types de déclencheurs, chacun étant conçu pour des scénarios d'automatisation précis. Comprendre ces types vous aide à choisir la bonne approche selon les besoins de votre flux de travail.
Tous les déclencheurs de Hooks ne sont pas disponibles sur chaque surface. Certains déclencheurs sont spécifiques à l'IDE (exécution de tâche, début de session) ou à la CLI (création d'agent). Le tableau ci-dessous montre ce qui est pris en charge, et où.
| Déclencheur | IDE | CLI | Web |
|---|---|---|---|
| Prompt Submit | ✓ | ✓ | — |
| Agent Stop | ✓ | ✓ | — |
| Session Start | ✓ | — | — |
| Agent Spawn | — | ✓ | — |
| Pre Tool Use | ✓ | ✓ | — |
| Post Tool Use | ✓ | ✓ | — |
| File Create | ✓ | — | — |
| File Save | ✓ | — | — |
| File Delete | ✓ | — | — |
| Pre Task Execution | ✓ | — | — |
| Post Task Execution | ✓ | — | — |
| Legacy Manual Hook | Legacy only | — | — |
Se déclenche lorsque l'utilisateur soumet une requête.
Lorsque vous utilisez l'action de commande shell, la requête de l'utilisateur peut être consultée via la variable d'environnement USER_PROMPT.
Cas d'utilisation :
Se déclenche lorsque l'agent a terminé son tour et fini de répondre à l'utilisateur.
Ceci est utile pour exécuter des tâches de post-traitement comme la compilation de code, les tests, le formatage ou le nettoyage après la réponse de l'agent.
Cas d'utilisation :
Se déclenche lorsqu'une nouvelle session de clavardage commence dans l'IDE.
Cas d'utilisation :
S'exécute lorsque l'agent est activé pour la première fois. Aucun contexte d'outil n'est fourni.
{ "hook_event_name": "agentSpawn", "cwd": "/current/working/directory", "session_id": "abc123-def456-789" }
Comportement du code de sortie :
Cas d'utilisation :
Se déclenche lorsque l'agent est sur le point d'invoquer un outil. Peut valider et bloquer l'utilisation de l'outil.
Dans le champ Tool name, fournissez les noms des outils précis pour lesquels ce Hook doit s'exécuter. Vous pouvez spécifier plusieurs entrées. Les catégories intégrées suivantes sont prises en charge :
Vous pouvez aussi utiliser des filtres de préfixe pour cibler les outils par source :
Les préfixes commençant par @ sont mis en correspondance par expression régulière, vous pouvez donc utiliser des motifs comme @mcp.*sql.* pour cibler des outils MCP précis par nom.
Vous pouvez demander à Kiro les noms des outils disponibles.
Cas d'utilisation :
Se déclenche après que l'agent a invoqué un outil, avec accès aux résultats de l'outil.
Pour plus de détails sur le champ Tool name, consultez la section Pre Tool Use ci-dessus.
Cas d'utilisation :
Se déclenche lorsque l'agent crée de nouveaux fichiers correspondant à des motifs précis dans votre espace de travail.
Cas d'utilisation :
Se déclenche lorsque l'agent enregistre ou modifie des fichiers correspondant à des motifs précis.
Cas d'utilisation :
Se déclenche lorsque l'agent supprime des fichiers correspondant à des motifs précis.
Cas d'utilisation :
Se déclenche avant qu'une tâche de Spec commence son exécution, lorsque son statut passe à in_progress.
Cas d'utilisation :
Se déclenche après qu'une tâche de Spec a terminé son exécution, lorsque son statut passe à completed.
Cas d'utilisation :
Les Hooks manuels créés dans l'IDE 0.x continuent d'apparaître dans le panneau des Agent Hooks avec une étiquette legacy. Les Hooks manuels legacy activés restent exécutables à l'aide du bouton de lecture à côté du nom du Hook ou de Start Hook dans la vue du Hook.
Les Hooks manuels legacy n'ont pas d'équivalent de déclencheur v1, et vous ne pouvez pas créer un nouveau Hook à déclenchement manuel. Pour un nouveau flux de travail à la demande, créez un fichier Steering à inclusion manuelle; il s'exécute comme une commande à barre oblique /<filename>.
Pour les outils MCP, le nom de l'outil comprend le format complet avec espace de noms, incluant le nom du serveur MCP :
{ "hook_event_name": "preToolUse", "cwd": "/current/working/directory", "session_id": "abc123-def456-789", "tool_name": "@postgres/query", "tool_input": { "sql": "SELECT * FROM orders LIMIT 10;" } }
Ceci s'applique aux Hooks Pre Tool Use et Post Tool Use lorsqu'ils ciblent des outils de serveur MCP.
Types de Hooks