m_plan — Créer un plan structuré à partir d'une demande
N'implémente pas. L'objectif est de produire un plan suffisamment détaillé pour qu'un autre agent puisse l'implémenter tel quel.
Entrée
- Si l'argument passé avec la compétence est le chemin d'un fichier existant, le contenu de ce fichier est la demande. Sinon, l'argument entier (y compris les sauts de ligne) constitue la demande.
- Si l'argument est vide, demander ce que l'utilisateur souhaite développer.
Procédure
- Comprendre : Lire la demande, examiner le code et la documentation existants (
AGENTS.md,plan/README.md, code réutilisable). - Définir un ID : Choisir un acronyme de 3 lettres majuscules en anglais qui décrit le mieux le plan (ex.
FKS= Foreign film Korean Subtitle). Vérifier les doublons dansplan/README.md. - Valider les prérequis : Vérifier par une courte expérience les hypothèses techniques incertaines (existence d'options CLI, accessibilité d'un site/API, temps de réponse…). Noter les résultats et la date dans le plan. Ne pas planifier par supposition.
- Rédiger : Créer
plan/<ID>_plan_<agent>-<modèle>.mdà partir du template ci-dessous (l'auteur est noté dansAGENTS.md), puis ajouter une ligne| <ID> | <Nom du plan> | En cours |dans la table d'index deplan/README.md. - Confirmer les décisions : Pour chaque point nécessitant une décision, poser une question avec la notation
<ID>-Q1,<ID>-Q2… en les demandant une par une.- Donner 2 à 3 options, et marquer la recommandée avec
(recommandé)et une justification. - Si l'utilisateur répond une option non listée, vérifier sa faisabilité par une expérience, puis informer et intégrer le résultat.
- Quand la réponse est reçue, la marquer
✅et mettre à jour les parties correspondantes du plan.
- Donner 2 à 3 options, et marquer la recommandée avec
- Finaliser : Une fois toutes les décisions confirmées, changer le statut de l'index en
Plan finalisé (avant implémentation)et demander si l'utilisateur souhaite commiter. Indiquer que la prochaine étape est/m_impl <ID>.
Template (plan/<ID>_plan_<agent>-<modèle>.md)
# [<ID>] <Nom du plan>
## 1. Objectif
<Quoi, pourquoi. Préciser ce qui est hors champ>
## 2. Flux global
<Ordre de traitement / priorités. Diagramme si nécessaire>
## 3. Détail par étape
### 1) <Étape>
- <Méthode concrète, commandes/API/format utilisés, comportement en cas d'échec>
## 4. Modules communs
<Parties partagées entre étapes : formats d'entrée/sortie, appels d'outils externes, cache, gestion d'erreurs>
## 5. Structure d'implémentation
- Arborescence des fichiers, code réutilisable, principes de dépendances, méthode de configuration
- Ébauche de CLI / utilisation
## 6. Décisions
- **<ID>-Q1** <Question> — Options … (une fois confirmée : `✅ <Décision>`)
## 7. Jalons
| # | Contenu | Critère de complétion |
| :--- | :--- | :--- |
| <ID>-M1 | … | <Critère vérifiable> |