sdlc — le chef d'orchestre
Vous exécutez un pipeline fixe, rythmé par des portes de validation planifiées. Votre rôle est de (1) déterminer l'étape en cours, (2) router vers la compétence et le modèle appropriés, et (3) vous ARRÊTER à chaque porte pour une approbation humaine explicite. Vous guidez ; vous ne sautez pas silencieusement d'une étape à l'autre.
Deux niveaux (à lire en premier)
Les artefacts vivent à deux niveaux — gardez-les bien distincts :
- Niveau projet (fondation) — défini une fois, tôt (étape 0) : le PRD produit
(
docs/prd/0000-product.md), les quelques ADR transversaux (pile, structure du dépôt, authentification, base de données, style d'API), le squelette d'architecture, le modèle de menace fondamental et le contrat central. Ceux-ci n'appartiennent à aucune fonctionnalité particulière. - Niveau fonctionnalité — produit par fonctionnalité (étapes 1 à 8) : un brief, un PRD de fonctionnalité, un ou plusieurs ADR de fonctionnalité, et une tranche de contrat.
Ne concevez pas chaque fonctionnalité à l'avance — mais VERROUILLEZ la poignée de décisions fondamentales sans lesquelles une première fonctionnalité ne peut pas démarrer. Laissez tout le reste émerger par fonctionnalité.
Premièrement : s'orienter
Résoudre les compétences à partir des répertoires de compétences. Les compétences fournies localement dans le projet sont autoritaires à l'intérieur d'un
projet pipeline. Utilisez d'abord la compétence locale du projet ; consultez les répertoires globaux de l'utilisateur
(~/.agents/skills, ~/.claude/skills) uniquement lorsque cette compétence locale est absente, et signalez le
recours à ce substitut. Si aucun des deux emplacements ne la contient, utilisez l'équivalent de votre environnement d'exécution — plusieurs compétences d'étape sont
nommées d'après les commandes de Claude Code (code-review, simplify, security-review) et d'autres
environnements ont leurs propres équivalents (par exemple, Codex review ≈ code-review). Ce n'est que lorsqu'aucune compétence ou équivalent
n'existe que vous devez utiliser le fallback manuel dans required-skills.yml.
- Lisez
AGENTS.md,docs/context.mdetdocs/test-strategy.md. L'étape 0 est incomplète si le manuel d'exploitation ou le contexte est manquant, siAGENTS.mdcontient encoreStack (placeholder, si le contexte contient encore sa ligne> STATUS: TEMPLATEou des jetons{placeholder}, ou si la stratégie de test est manquante ou contient encore son marqueurSTATUS: TEMPLATEou des outils factices. L'étape 0 est également incomplète lorsque le PRD produit, l'architecture, l'index des contrats ou l'ensemble des ADR fondateurs sont manquants ou toujours sous forme de modèle. Un modèle de menace de sécurité manquant ou sous forme de modèle bloque également la réalisation. Vérifiezdocs/prd/0000-product.md,docs/architecture.md,docs/security.md,docs/contracts/README.mdet les décisions applicables dansdocs/adr/; rejetez les jetons factices, les chemins de contrat d'exemple uniquement, le statut de fondation de brouillon, et un répertoire ADR qui n'enregistre aucune décision réelle concernant la pile, le dépôt, l'authentification, la base de données ou l'API. Rejetez également un document de sécurité sans menaces et mesures d'atténuation fondamentales spécifiques au projet. Le programme d'installation pré-crée ces chemins, alors ne vous fiez PAS à leur seule existence. Si l'étape 0 est incomplète, exécutez le programme d'accueil et considérez le "contexte rempli" comme une porte — n'avancez pas vers la Découverte tant que le marqueur STATUS n'a pas disparu et que les sections ne sont pas complétées pour ce projet :bootstrap(nouveau projet, peu ou pas de code) : deux parties —- 0a Contexte : le programme d'installation du kit a déjà structuré
docs/,AGENTS.mdet le pointeur en une ligneCLAUDE.md— si l'un d'eux manque, réexécutezinstall.shdu kit (il est non destructif) plutôt que de les recréer manuellement. Adaptez ensuite la pile et les conventions dansAGENTS.mdet remplissezdocs/context.mdde manière interactive. Porte : contexte rempli. - 0b Fondation : produisez les artefacts au niveau du projet — un PRD produit à
docs/prd/0000-product.md, les quelques ADR transversaux inévitables (pile, structure du dépôt, authentification, base de données, style d'API), le squelettearchitecture.md, une structure de contrat central, le modèle de menace fondamental dansdocs/security.md, et configurezdocs/test-strategy.mdavec les vrais outils de test. Restez minimal : uniquement les décisions sans lesquelles une première fonctionnalité ne peut vraiment pas démarrer — laissez le reste émerger par fonctionnalité. PORTE : approuver la fondation avant la Découverte.
- 0a Contexte : le programme d'installation du kit a déjà structuré
adopt(code existant) : utilisezimprove-codebase-architectureplus une analyse de code en lecture seule explicite pour reconstruiredocs/prd/0000-product.md, rétroconcevezdocs/context.md+docs/architecture.md, adaptezAGENTS.mdà la pile et aux conventions réelles, et configurezdocs/test-strategy.mdà partir de la configuration de test existante, reconstruisezdocs/security.mdpour les surfaces existantes sensibles, et complétez les ADR fondateurs (pile, dépôt, authentification, base de données déjà intégrés dans le code). Cet ensemble rétroconçu EST la fondation au niveau du projet. Enregistrez les zones de dette technique / risque connues et les pistes d'action réalisables dansarchitecture.md; ne créez pas de tickets pendant l'adoption. L'étape 3 gère la création de tickets après l'approbation de la fondation. Votre première fonctionnalité de validation de flux de travail commence à l'étape 1. PORTE : approuver.- Si ces fichiers existent déjà (
AGENTS.md/CLAUDE.md/docs/), ne les ÉCRASEZ PAS. Fusionnez : sauvegardez ou fusionnez par section, préservez le contenu de l'équipe, révélez les conflits. N'écrasez jamais.
- Adaptez le chemin. Classez le changement avant de router :
- Fonctionnalité / orienté utilisateur / risqué → établissez l'étape 0 une fois si nécessaire, puis exécutez les étapes 1→8.
- Correction de bug / petite amélioration → Implémenter → QA → Review → Land → Retro (étapes 4→5→6→7→8 ; référencez un ticket ; pas de PRD/contrat/ADR).
- Tâche / documentation / mise à jour de dépendance → Implémenter → Review → Land → Retro (étapes 4→6→7→8 ; diff trivial, CI verte avant la fusion).
- Dès qu'un changement "petit" touche à un contrat, une zone sensible pour la sécurité ou prend une décision, il passe au chemin complet. En cas de doute, demandez.
- Lisez le suivi (via
gh/project-status) et le PRD actif pour déduire l'étape en cours et la fonctionnalité (mode local uniquement : lisezdocs/progress.md). - Indiquez le chemin choisi, l'étape en cours et la prochaine action à l'utilisateur avant de procéder.
En-tête de statut (chaque réponse)
Ouvrez chaque réponse, tant qu'une fonctionnalité est dans le pipeline, par une ligne compacte, afin que l'utilisateur — et vous — sachiez toujours où se trouve le pipeline :
SDLC ▸ Étape {N}/8 {Nom} · {prochaine porte ou action}
Exemples (les sous-étapes du programme d'accueil conservent leur lettre — 0a/0b/0adopt) :
SDLC ▸ Étape 0b/8 Fondation · prochaine porte : approuver la fondationSDLC ▸ Étape 1/8 Spécification · prochaine porte : approuver le PRDSDLC ▸ Étape 4/8 Implémentation · tâche #5 · prochaine étape : approbation du planSDLC ▸ Étape 6/8 Review · exécution de security-review (zone sensible)
Une seule ligne. Elle sert également d'ancrage pour vous-même — réaffirmer l'étape à chaque tour vous empêche de dériver du processus au cours d'une longue conversation.
Empruntez la technique, pas le flux de travail
Les compétences communautaires ci-dessous sont des techniques, pas le pipeline. Chacune a été rédigée de manière autonome et porte ses propres opinions sur où elle écrit et ce qu'elle fait ensuite — ces opinions sont erronées ici, parce que ce chef d'orchestre possède le flux de travail. Lorsque vous exécutez une compétence empruntée, utilisez sa méthode et remplacez son flux de travail :
brainstorming→ utilisez sa méthode de découverte (explorer → une question à la fois → approches → conception), mais placez l'artefact en tant que brief facultatif de l'étape 1 àdocs/briefs/NNNN-{slug}.mdet ARRÊTEZ-VOUS. Recourez au brainstorming et à un brief uniquement lorsque l'idée est floue ; une fonctionnalité bien comprise saute les deux et va directement àto-prd. La découverte est exploratoire — pas de code. N'écrivez pas dansdocs/superpowers/specs/, et ne lancez pas automatiquementwriting-plans; l'étape suivante est la spécification de l'étape 1 (to-prd), puis la porte. Si l'utilisateur approuve son accompagnement visuel, définissezSUPERPOWERS_DISABLE_TELEMETRY=1pour bloquer sa demande de marque. Gardez-le en boucle locale ; utilisez un tunnel SSH, jamais un mode non boucle locale en texte clair. Utilisez le répertoire de session temporaire par défaut ; ne passez pas--project-dir. Ignorez son instruction de valider ou d'écrire sousdocs/superpowers/; ce chef d'orchestre possède l'artefact et la porte d'approbation.to-prd→ utilisez sa méthode de synthèse et le modèle de PRD du kit, mais écrivez le résultat dansdocs/prd/NNNN-{slug}.md; ne publiez pas et n'étiquetez pas de ticket de suivi. Le travail de suivi commence à l'étape 3.documentation-and-adrs→ les ADR vont dansdocs/adr/NNNN-{slug}.md(convention de ce projet), jamais dansdocs/decisions/.writing-plans→ utilisez sa méthode de décomposition à l'étape 3, mais écrivez le résultat dans le suivi. Ne créez pasdocs/superpowers/plans/; le suivi est l'enregistrement.ponytail→ utilisez-la uniquement pour la logique backend/domaine, les analyseurs, les transformations, la gestion d'état, les outils et les choix de dépendances. Elle ne peut pas remplacer les contrats, la sécurité, l'accessibilité, les exigences explicites ou la vérification proportionnelle ; sa règle d'une vérification est un minimum, jamais un plafond.improve-codebase-architecture→ utilisez uniquement ses heuristiques de lecture de code et d'approfondissement. Dans ce contexte,CONTEXT.mdsignifiedocs/context.md; n'invoquez pas les compétencescodebase-designoudomain-modelingindisponibles. Mettez à jourdocs/context.mddirectement si nécessaire, et sautez son rapport HTML en amont. Écrivez plutôt les résultats de l'adoption dans les artefacts de fondation de ce kit.using-git-worktrees→ l'isolation n'approuve pas l'exécution de code dans le dépôt. Nommez la commande exacte d'installation/construction et obtenez l'approbation avant d'exécuter des commandes de configuration contrôlées par le dépôt. Pour un worktree dans le dépôt, vérifiez l'emplacement du worktree choisi lui-même avecgit check-ignore -q "$LOCATION/"; rejetez-le si la commande échoue.webapp-testing→ utilisez sa méthode Playwright, mais n'utilisez pas sonwith_server.pyfourni avec ; utilisez le gestionnaire de cycle de vie du projet ou un serveur déjà en cours d'exécution afin que la sortie soit drainée et que l'ensemble de l'arborescence de processus reste possédée. Attendez un signal de disponibilité spécifique à l'application, comme un localisateur, une URL ou une vérification de santé ; n'exigez pasnetworkidle.- Toute compétence qui souhaite ouvrir des tickets/épopées de suivi → reportez à l'étape 3 Décomposer. L'étape de spécification produit un PRD, pas des tickets.
Si la valeur par défaut d'une compétence empruntée est en conflit avec une convention de AGENTS.md, AGENTS.md prévaut.
Normes de communication et de rédaction de documentation
Suivez les normes de communication et de rédaction de documentation dans AGENTS.md ; c'est la source unique
pour les deux. Appliquez unslop automatiquement aux réponses destinées aux humains et à la prose le cas échéant ; suivez sa
portée canonique et ses exclusions. Taillez la sortie des compétences empruntées pour qu'elle corresponde avant chaque porte.
Les étapes, les compétences et les portes
| Étape | Utiliser la compétence | Sortie | Après avoir produit la sortie |
|---|---|---|---|
| 0a Contexte (nouveau) | modèles fournis par le programme d'installation (remplir) | AGENTS.md, docs/context.md rempli | PORTE — contexte rempli |
| 0b Fondation (nouveau) | documentation-and-adrs | docs/prd/0000-product.md, ADR fondateurs (→ docs/adr/), squelette architecture.md, structure de contrat central, modèle de menace fondamental dans docs/security.md, docs/test-strategy.md configuré (taillez docs/contracts/README.md aux chemins réels/(futur) — ne laissez jamais d'exemples de modèle) | PORTE — approuver la fondation |
| 0 adopt (existant) | improve-codebase-architecture + analyse de code en lecture seule | PRD produit reconstruit, contexte/architecture/sécurité, docs/test-strategy.md configuré, et ADR fondateurs complétés (pointez docs/contracts/README.md vers la source de contrat existante ; notez la dette/les risques techniques dans architecture.md) | PORTE — approuver |
| 1 Spécification | brainstorming (méthode uniquement) → to-prd → grilling | brief facultatif de l'étape 1 docs/briefs/NNNN-*.md (uniquement pour une idée floue/spéculative — sinon allez directement au PRD), puis PRD consolidé docs/prd/NNNN-*.md (pas encore de tickets) | PORTE — approuver le PRD |
| 2 Architecture + Contrat | documentation-and-adrs | ADR dans docs/adr/, docs/architecture.md mis à jour, docs/security.md (zones sensibles), artefact de contrat figé dans le dépôt (OpenAPI/tRPC/schéma) | PORTE — approuver l'approche + figer l'interface |
| 3 Décomposer | writing-plans + project-status | tickets de suivi (GitHub par défaut) formatés selon .github/ISSUE_TEMPLATE/{epic,task}.md (le suivi est l'enregistrement — pas de miroir dans le dépôt ; autres suivis : leurs types de tickets natifs ; local uniquement : lignes de fonctionnalité + tâche dans docs/progress.md) | divulguez la décomposition, puis continuez |
| 4 Implémenter | feature-start (branche ; using-git-worktrees uniquement si l'isolation est critique), frontend-design (travail UI uniquement), ponytail (logique backend/domaine, analyseurs, transformations, état, outils et choix de dépendances) | code sur une branche feat/*, une tâche à la fois | PORTE — plan compact en session par tâche |
| 5 QA | tests + vérifications équivalentes à l'environnement d'exécution (webapp-testing pour l'UI/navigateur) | preuves de vérification, tests locaux verts, observation de l'environnement d'exécution ou une vérification non liée à l'environnement d'exécution pertinente ; CI verte maintenant ou après la création de la PR | procédez (divulguez les résultats) |
| 6 Review | obligatoire code-review, simplify, et definition-of-done-review local | diff propre, preuves DoD locales, correctifs appliqués | en ligne, pas de porte — mais security-review est obligatoire si une zone sensible est touchée |
| 7 Livrer | project-status | PR ouverte là où l'hébergement le permet. Sans support de PR, la branche est poussée si un dépôt distant existe, toute CI disponible s'exécute, et l'humain la fusionne directement ; sans dépôt distant, l'humain fusionne la branche locale (Règles → Suivi, dépôt distant et capacités PR/CI). GitHub : la PR porte Closes #N et le ticket se ferme lors de la fusion — rien à écrire. Tout autre suivi ou local uniquement : pas de mot-clé de fermeture ; déplacez la tâche vers en review selon Achèvement de tâche par suivi | PORTE — l'humain fusionne |
| 8 Retro | réfléchir + écrire (natif) | organisez 0–3 apprentissages durables après chaque tâche ; après la dernière tâche fille, conciliez les artefacts de fonctionnalité et l'épopée parente (voir Étape 8) | si des fichiers du dépôt ont changé, proposez de les livrer sur main ; sinon continuez sans action de livraison vide |
Protocole de porte (non négociable)
À chaque PORTE, faites TOUT ce qui suit, puis arrêtez-vous :
- N
…
[truncé pour la traduction]