kwa/ workflows
Imposé ou suggéré

Ce qui est imposé, ce qui est suggéré

Un texte que le modèle lit le guide ; seul ce que l'outil, le système ou GitHub exécute le contraint. Les workflows de Kwa sont agentiques : l'enchaînement est suggéré, les points de passage sont imposés par les gardes.

MécanismeQui l'exécuteCe qu'il garantitPar défautCe qui le contourneNature
AGENTS.md, CLAUDE.mdLe modèle, qui les litRien : c'est du contexteChargés à chaque sessionLe modèle peut s'en écartersuggéré
Règles communes de KwaLe modèle ; un hook les injecte au démarrageRien de plus qu'une consigneActivesIdemsuggéré
Rappel de routage (skills-router)Un hook l'injecte, le modèle le litQue la table « quand → skill » est dans le contexteActifLe modèle n'appelle pas la skillsuggéré
Skills (/kwa:tdd, /kwa:ship…)Le modèle, qui suit la procédureRien : une étape peut être sautéeAppelées par le modèle ou par vousUne étape oubliée ; la relecture la rattrapesuggéré
Sous-agent kwa:reviewerLancé par le modèle ; readonly-bash le garde en lecture seuleQu'il ne modifie rien par les commandes reconnuesAvec /kwa:review et /kwa:agentsUne commande assemblée à l'exécutionmixte
Gardes (guard-git, guard-write, guard-secrets…)Claude Code ou Codex, avant les outils surveillésRefus ou confirmation sur les commandes et chemins reconnusActifs dans un projet qui a une politique Kwa et le moduleIls lisent le texte : nom calculé, glob, script écrit puis lancéimposé
guard-github (preuve)L'outil, avant gh pr create et gh pr merge lancés par l'agent« Closes #N » présent, une image ou une section « Preuve » non videActif avec le module issue-flowUne fusion faite par une personne sur GitHub ; il vérifie que la preuve existe, pas qu'elle est justeimposé
verify-stopL'outil, quand l'agent veut rendre la mainPas de fin de réponse sur des vérifications rougesDésactivé : KWA_STOP_VERIFY=1 pour l'activerClaude Code rend la main après 8 blocages d'affiléeimposé si activé
permissions.deny de Claude CodeClaude Code, avant l'outil nomméQue cet outil refuse (Read(./.env))À écrire dans settings.jsonUn autre outil : python3 -c dans le shell, sauf avec le bac à sableimposé, sur un outil
Bac à sable (/sandbox)Le système d'exploitation, pendant la commandeLes commandes shell n'atteignent que les fichiers et domaines permis, règles Read et Edit deny comprisesDésactivéLes hooks, serveurs MCP et outils de fichiers tournent hors du bac à sable ; Claude peut demander une relance hors du bac à sablebarrière
Protection de branche et CI obligatoireGitHub, hors de la machinePas de fusion sans relecture ni CI verteÀ configurer sur le dépôtUn administrateur du dépôtbarrière

Sous Codex, c'est expérimental : les mêmes gardes passent par kwa hook, une confirmation que Codex ne sait pas demander devient un refus, et ces adaptations sont vérifiées par des tests, pas encore dans une vraie session. Sources : hooks, permissions, bac à sable de Claude Code.