Initial commit
This commit is contained in:
28
commands/code.md
Normal file
28
commands/code.md
Normal file
@@ -0,0 +1,28 @@
|
||||
---
|
||||
model: claude-sonnet-4-5-20250929
|
||||
description: Code the codebase based on the plan
|
||||
argument-hint: [path-to-plan]
|
||||
allowed-tools: Read, Write, Bash
|
||||
---
|
||||
|
||||
# Code
|
||||
Follow the `Workflow` to implement the `PATH_TO_PLAN` then `Report` the completed work.
|
||||
|
||||
## Variables
|
||||
PATH_TO_PLAN: $ARGUMENTS
|
||||
|
||||
## Workflow
|
||||
|
||||
- If no `PATH_TO_PLAN` is provided, STOP immediately and ask the user to provide it.
|
||||
- Read the plan at `PATH_TO_PLAN`. Think hard about the plan and implement it into the codebase.
|
||||
|
||||
## Quality Assurance
|
||||
- Run all quality checks (linters, static analysis, tests)
|
||||
- Fix ALL errors and warnings until all checks pass
|
||||
- Ensure the code is error-free before considering the task complete
|
||||
- DO NOT proceed to reporting until all quality checks are green
|
||||
|
||||
# Report
|
||||
- Confirm all quality checks have passed
|
||||
- Summarize the work you've just done in a concise bullet point list.
|
||||
- Report the files and total lines changed with `git diff —-stat`
|
||||
109
commands/context/load.md
Normal file
109
commands/context/load.md
Normal file
@@ -0,0 +1,109 @@
|
||||
---
|
||||
model: claude-sonnet-4-5-20250929
|
||||
allowed-tools: Bash, Read
|
||||
description: Charger un preset de contexte pour la session
|
||||
argument-hint: <preset>
|
||||
---
|
||||
|
||||
# Chargement Contexte
|
||||
|
||||
Charge un preset de contexte pour configurer la session selon le type de travail.
|
||||
|
||||
{{_templates/timing.md}}
|
||||
|
||||
## Presets Disponibles
|
||||
|
||||
- `default` - Contexte projet basique (structure + docs)
|
||||
- `elegant-objects` - Règles conception Elegant Objects
|
||||
- `ddd` - Principes Domain-Driven Design
|
||||
- `full` - Tous les presets combinés
|
||||
|
||||
## Variables
|
||||
|
||||
- PRESET: Nom du preset (argument utilisateur)
|
||||
|
||||
## Validation
|
||||
|
||||
Si PRESET non supporté :
|
||||
- Afficher liste presets disponibles
|
||||
- Arrêter
|
||||
|
||||
## Workflows par Preset
|
||||
|
||||
### default
|
||||
1. Exécuter `git ls-files`
|
||||
2. Lire `docs/README.md`
|
||||
3. Résumer compréhension projet
|
||||
|
||||
### elegant-objects
|
||||
1. Charger règles Elegant Objects de Yegor Bugayenko
|
||||
2. Appliquer à toute écriture/modification code
|
||||
3. Confirmer activation
|
||||
|
||||
**Règles principales :**
|
||||
- Classes `final`, 1-4 attributs max
|
||||
- Objets immuables privilégiés
|
||||
- Pas d'héritage implémentation
|
||||
- Constructeurs : affectations uniquement
|
||||
- Méthodes via interfaces
|
||||
- Jamais retourner `null`
|
||||
- Fail fast sur exceptions
|
||||
- Pas de getters/setters
|
||||
- Docblocks français UTF-8
|
||||
- Tests : 1 assertion par test
|
||||
- Pas de mocks, privilégier fakes
|
||||
|
||||
### ddd
|
||||
1. Charger principes Domain-Driven Design
|
||||
2. Structure : Entities, ValueObjects, Aggregates, Repositories, Services
|
||||
3. Confirmer activation
|
||||
|
||||
**Principes :**
|
||||
- Ubiquitous Language
|
||||
- Bounded Contexts
|
||||
- Aggregates avec invariants
|
||||
- Repositories pour persistance
|
||||
- Domain Events
|
||||
- Séparation domaine/infra
|
||||
|
||||
### full
|
||||
Charge tous les presets dans l'ordre : default → elegant-objects → ddd
|
||||
|
||||
## Rapport Format
|
||||
|
||||
```markdown
|
||||
## 🎯 Contexte Chargé : [PRESET]
|
||||
|
||||
### Éléments Activés
|
||||
- [Liste des règles/principes activés]
|
||||
|
||||
### Compréhension Projet
|
||||
[Si preset=default ou full]
|
||||
- Type projet : [description]
|
||||
- Stack technique : [liste]
|
||||
- Structure principale : [répertoires clés]
|
||||
|
||||
### Règles Appliquées
|
||||
[Si preset=elegant-objects ou full]
|
||||
- [Liste concise règles actives]
|
||||
|
||||
### Patterns DDD
|
||||
[Si preset=ddd ou full]
|
||||
- [Liste patterns disponibles]
|
||||
|
||||
```
|
||||
|
||||
## Exemples
|
||||
|
||||
```bash
|
||||
/context:load default
|
||||
/context:load elegant-objects
|
||||
/context:load ddd
|
||||
/context:load full
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- Presets cumulables manuellement : `/context:load default` puis `/context:load elegant-objects`
|
||||
- `full` équivaut à tous les presets en une fois
|
||||
- Contexte persiste pour toute la session
|
||||
171
commands/debug/error.md
Normal file
171
commands/debug/error.md
Normal file
@@ -0,0 +1,171 @@
|
||||
---
|
||||
model: claude-sonnet-4-5-20250929
|
||||
allowed-tools: Bash,Read,Write,Edit,Grep,Glob,TodoWrite,Task
|
||||
description: Analyser et résoudre une erreur (message simple ou stack trace)
|
||||
argument-hint: <message-erreur-ou-fichier-log>
|
||||
---
|
||||
|
||||
# Debug Error - Analyse et Résolution
|
||||
|
||||
Analyser une erreur (message ou stack trace) et proposer/appliquer résolution.
|
||||
|
||||
{{_templates/timing.md}}
|
||||
|
||||
## Variables
|
||||
|
||||
- ERROR_INPUT: Message erreur ou chemin fichier log
|
||||
- ERROR_TYPE: Type détecté (simple message vs stack trace)
|
||||
- CONTEXT_FILES: Fichiers pertinents
|
||||
- RESOLUTION_PLAN: Plan structuré si résolution demandée
|
||||
|
||||
## Détection Automatique
|
||||
|
||||
Le système détecte automatiquement :
|
||||
- **Stack trace** : Parsing + formatage + analyse approfondie
|
||||
- **Message simple** : Analyse directe + diagnostic
|
||||
|
||||
Patterns stack trace :
|
||||
- `Fatal error:`, `Uncaught`, `Exception`, `Error:`
|
||||
- Présence de `at <file>:<line>`
|
||||
- Multiple lignes avec indentation/numéros
|
||||
|
||||
## Workflow
|
||||
|
||||
### 1. Identification Type
|
||||
|
||||
**Si stack trace détectée** :
|
||||
- Parser trace (type, message, fichier:ligne, call stack)
|
||||
- Formater hiérarchiquement
|
||||
- Lire code source ligne incriminée
|
||||
- Générer rapport `/tmp/stack-trace-analysis-[timestamp].md`
|
||||
|
||||
**Si message simple** :
|
||||
- Catégoriser (syntaxe, runtime, logique, config)
|
||||
- Extraire infos contextuelles
|
||||
|
||||
### 2. Analyse Contexte
|
||||
|
||||
- Examiner fichiers mentionnés
|
||||
- Analyser logs récents corrélés
|
||||
- Vérifier environnement (deps, config)
|
||||
- Identifier changements récents (git)
|
||||
|
||||
### 3. Diagnostic
|
||||
|
||||
- Cause racine vs symptômes
|
||||
- Impact et criticité
|
||||
- Solutions possibles + trade-offs
|
||||
- Priorisation
|
||||
|
||||
### 4. Solutions
|
||||
|
||||
**Stack trace** : 3 niveaux
|
||||
1. **Quick Fix ⚡** : Rapide, symptôme
|
||||
2. **Recommandée ✅** : Équilibrée, cause
|
||||
3. **Long-terme 🎯** : Robuste, prévention
|
||||
|
||||
**Message simple** : Plan résolution
|
||||
- Étapes séquencées
|
||||
- Tests validation
|
||||
- Rollbacks prévus
|
||||
- Risques estimés
|
||||
|
||||
### 5. Exécution (optionnel)
|
||||
|
||||
Si utilisateur demande résolution :
|
||||
- Appliquer corrections pas à pas
|
||||
- Valider chaque modif
|
||||
- Vérifier résolution complète
|
||||
- Documenter changements
|
||||
|
||||
## Format Rapport
|
||||
|
||||
### Stack Trace
|
||||
```markdown
|
||||
# Stack Trace Analysis - [TIMESTAMP]
|
||||
|
||||
## Résumé
|
||||
- Type : [ERROR_TYPE]
|
||||
- Localisation : [FILE:LINE]
|
||||
- Cause racine : [ROOT_CAUSE]
|
||||
- Sévérité : [LEVEL]
|
||||
|
||||
## Stack Trace Formatée
|
||||
[Trace complète formatée]
|
||||
|
||||
## Analyse
|
||||
### Point origine
|
||||
- Fichier/Ligne/Méthode
|
||||
- Code context
|
||||
|
||||
### Contexte
|
||||
- Call stack simplifié
|
||||
- État probable
|
||||
- Dépendances
|
||||
|
||||
### Cause Racine
|
||||
[Explication]
|
||||
|
||||
## Solutions
|
||||
### 1. Quick Fix ⚡
|
||||
[Description + étapes]
|
||||
|
||||
### 2. Recommandée ✅
|
||||
[Description + étapes]
|
||||
|
||||
### 3. Long-terme 🎯
|
||||
[Description + étapes]
|
||||
|
||||
## Prochaines Étapes
|
||||
[Actions recommandées]
|
||||
```
|
||||
|
||||
### Message Simple
|
||||
```markdown
|
||||
## Analyse Erreur
|
||||
|
||||
### Type
|
||||
[Classification + sévérité]
|
||||
|
||||
### Localisation
|
||||
[Fichiers/lignes]
|
||||
|
||||
### Contexte
|
||||
[Environnement + conditions]
|
||||
|
||||
## Diagnostic
|
||||
- Cause racine
|
||||
- Impact
|
||||
- Recommandations
|
||||
|
||||
## Résolution
|
||||
[Si exécutée]
|
||||
- Actions effectuées
|
||||
- Validations
|
||||
- Suivi
|
||||
```
|
||||
|
||||
## Exemples
|
||||
|
||||
```bash
|
||||
# Stack trace PHP
|
||||
/debug:error "Fatal error: Call to undefined method User::getName()"
|
||||
|
||||
# Fichier log
|
||||
/debug:error /var/log/app.log
|
||||
|
||||
# Message NPM
|
||||
/debug:error "npm ERR! missing script: build"
|
||||
|
||||
# Stack trace JS
|
||||
/debug:error "TypeError: Cannot read property 'id' of undefined at main.js:156"
|
||||
```
|
||||
|
||||
## Best Practices
|
||||
|
||||
- Détecter type avant traiter
|
||||
- Parser intelligemment selon langage
|
||||
- Lire code source pour contexte
|
||||
- Solutions testables avec exemples
|
||||
- Corrections incrémentales si exécution
|
||||
- Validation systématique après chaque change
|
||||
167
commands/docker.md
Normal file
167
commands/docker.md
Normal file
@@ -0,0 +1,167 @@
|
||||
---
|
||||
allowed-tools:
|
||||
- Bash
|
||||
- Read
|
||||
- Grep
|
||||
- Glob
|
||||
description: Indique d'utiliser docker pour faire la ou les actions définies dans le prompt
|
||||
model: claude-sonnet-4-5-20250929
|
||||
---
|
||||
|
||||
# Contexte Docker
|
||||
|
||||
Active le mode Docker pour exécuter toutes les actions dans des conteneurs Docker plutôt que directement sur l'hôte.
|
||||
|
||||
## Purpose
|
||||
|
||||
Cette commande active un contexte spécial où Claude utilisera systématiquement Docker pour :
|
||||
- Exécuter des commandes système
|
||||
- Builder des projets
|
||||
- Lancer des tests
|
||||
- Gérer les dépendances
|
||||
- Toute autre opération technique
|
||||
|
||||
## Variables
|
||||
|
||||
- DOCKER_COMPOSE_FILE: Fichier docker-compose à utiliser (défaut: docker-compose.yml)
|
||||
- DOCKER_SERVICE: Service Docker à cibler pour les commandes (optionnel)
|
||||
- DOCKER_ENV: Environnement Docker (dev/staging/prod, défaut: dev)
|
||||
|
||||
## Relevant Files
|
||||
|
||||
- `docker-compose.yml` - Configuration Docker Compose
|
||||
- `Dockerfile` - Définition des images
|
||||
- `.dockerignore` - Fichiers exclus du build
|
||||
- `docker/` - Configurations Docker additionnelles
|
||||
|
||||
## Workflow
|
||||
|
||||
### Étape 1: Analyse de l'environnement Docker
|
||||
- Détecter le fichier docker-compose.yml ou Dockerfile
|
||||
- Identifier les services Docker disponibles
|
||||
- Vérifier l'état des conteneurs (docker ps)
|
||||
- Lister les services configurés
|
||||
|
||||
### Étape 2: Validation de Docker
|
||||
- Vérifier que Docker est installé et accessible
|
||||
- Confirmer que les conteneurs nécessaires sont démarrés ou peuvent l'être
|
||||
- Identifier le service principal si plusieurs services existent
|
||||
|
||||
### Étape 3: Configuration du contexte
|
||||
- Enregistrer le mode Docker comme actif pour la session
|
||||
- Déterminer le préfixe de commande à utiliser :
|
||||
- `docker exec [container]` pour conteneurs running
|
||||
- `docker-compose exec [service]` pour docker-compose
|
||||
- `docker run` pour images standalone
|
||||
- Mémoriser les paramètres pour les prochaines commandes
|
||||
|
||||
### Étape 4: Rapport de configuration
|
||||
- Afficher la configuration Docker détectée
|
||||
- Confirmer le mode actif
|
||||
- Indiquer comment les prochaines commandes seront exécutées
|
||||
|
||||
## Instructions pour Claude
|
||||
|
||||
**MODE DOCKER ACTIF**
|
||||
|
||||
À partir de maintenant et jusqu'à nouvel ordre :
|
||||
|
||||
1. **Toutes les commandes système** doivent être exécutées via Docker
|
||||
2. **Format des commandes** :
|
||||
- Avec Docker Compose : `docker compose exec [service] [commande]`
|
||||
- Sans Docker Compose : `docker exec [container] [commande]`
|
||||
- Pour les builds : `docker compose build` ou `docker build`
|
||||
|
||||
3. **Exemples de transformation** :
|
||||
```bash
|
||||
# Au lieu de : composer install
|
||||
# Utiliser : docker compose exec php composer install
|
||||
|
||||
# Au lieu de : npm run build
|
||||
# Utiliser : docker compose exec node npm run build
|
||||
|
||||
# Au lieu de : php bin/console cache:clear
|
||||
# Utiliser : docker compose exec php php bin/console cache:clear
|
||||
```
|
||||
|
||||
4. **Services communs à identifier** :
|
||||
- `php` / `app` - Application PHP
|
||||
- `node` / `frontend` - Build frontend
|
||||
- `web` / `nginx` - Serveur web
|
||||
- `db` / `database` - Base de données
|
||||
|
||||
5. **Gestion des erreurs** :
|
||||
- Si un conteneur n'est pas démarré → suggérer `docker compose up -d`
|
||||
- Si un service n'existe pas → lister les services disponibles
|
||||
- Si Docker n'est pas accessible → indiquer clairement l'erreur
|
||||
|
||||
6. **Persistance du contexte** :
|
||||
- Ce mode reste actif pour toute la session
|
||||
- Peut être désactivé avec une commande explicite de l'utilisateur
|
||||
- S'applique à toutes les opérations : build, test, deploy, etc.
|
||||
|
||||
## Report
|
||||
|
||||
```
|
||||
🐳 Mode Docker Activé
|
||||
|
||||
Configuration détectée :
|
||||
- Fichier : [docker-compose.yml / Dockerfile]
|
||||
- Services disponibles :
|
||||
• [service1] - [description]
|
||||
• [service2] - [description]
|
||||
• [service3] - [description]
|
||||
|
||||
État des conteneurs :
|
||||
- [X] [service1] - Running
|
||||
- [ ] [service2] - Stopped
|
||||
- [X] [service3] - Running
|
||||
|
||||
Format des commandes :
|
||||
docker compose exec [service] [commande]
|
||||
|
||||
Exemples :
|
||||
• composer install → docker compose exec php composer install
|
||||
• npm run build → docker compose exec node npm run build
|
||||
• php bin/console → docker compose exec php php bin/console
|
||||
|
||||
ℹ️ Toutes les prochaines commandes système seront exécutées via Docker.
|
||||
```
|
||||
|
||||
## Examples
|
||||
|
||||
### Activation basique
|
||||
```bash
|
||||
/docker
|
||||
```
|
||||
|
||||
### Avec projet Symfony + Docker Compose
|
||||
```
|
||||
🐳 Mode Docker Activé
|
||||
|
||||
Services disponibles : php, nginx, database, redis
|
||||
|
||||
Commandes transformées :
|
||||
• composer install → docker compose exec php composer install
|
||||
• symfony console cache:clear → docker compose exec php php bin/console cache:clear
|
||||
```
|
||||
|
||||
### Avec projet Node.js
|
||||
```
|
||||
🐳 Mode Docker Activé
|
||||
|
||||
Service : node
|
||||
|
||||
Commandes transformées :
|
||||
• npm install → docker compose exec node npm install
|
||||
• npm run dev → docker compose exec node npm run dev
|
||||
```
|
||||
|
||||
## Best Practices
|
||||
|
||||
- Toujours vérifier que Docker est accessible avant d'activer le mode
|
||||
- Identifier le service principal pour les commandes fréquentes
|
||||
- Proposer `docker compose up -d` si les conteneurs ne sont pas démarrés
|
||||
- Conserver le contexte Docker pour toute la session une fois activé
|
||||
- Adapter les commandes de manière transparente pour l'utilisateur
|
||||
- En cas d'échec Docker, expliquer clairement la raison et la solution
|
||||
5
commands/prepare.md
Normal file
5
commands/prepare.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
description: Creates a concise engineering implementation plan based on user requirements and saves it to specs directory
|
||||
---
|
||||
|
||||
Use the prepare skill exactly as written
|
||||
34
commands/question.md
Normal file
34
commands/question.md
Normal file
@@ -0,0 +1,34 @@
|
||||
---
|
||||
model: claude-sonnet-4-5-20250929
|
||||
allowed-tools: Bash(git ls-files:*), Read
|
||||
description: Répondre aux questions sur la structure du projet et la documentation sans coder
|
||||
---
|
||||
|
||||
# Question
|
||||
|
||||
Répondre à la question de l'utilisateur en analysant la structure du projet et la documentation. Cette invite est conçue pour fournir des informations et répondre aux questions sans apporter de modifications au code.
|
||||
|
||||
## Variables
|
||||
|
||||
$ARGUMENTS
|
||||
|
||||
## Instructions
|
||||
|
||||
- **IMPORTANT : Il s'agit uniquement d'une tâche de réponse à des questions - NE PAS écrire, éditer ou créer de fichiers**
|
||||
- **IMPORTANT : Se concentrer sur la compréhension et l'explication du code existant et de la structure du projet**
|
||||
- **IMPORTANT : Fournir des réponses claires et informatives basées sur l'analyse du projet**
|
||||
- **IMPORTANT : Si la question nécessite des modifications de code, expliquer ce qui devrait être fait conceptuellement sans implémenter**
|
||||
|
||||
## Workflow
|
||||
|
||||
- Examiner la structure du projet depuis !`git ls-files`
|
||||
- Comprendre l'objectif du projet depuis le @docs/README.md
|
||||
- Connecter la question aux parties pertinentes du projet
|
||||
- Fournir des réponses complètes basées sur l'analyse
|
||||
|
||||
## Format de réponse
|
||||
|
||||
- Réponse directe à la question
|
||||
- Preuves à l'appui de la structure du projet
|
||||
- Références à la documentation pertinente
|
||||
- Explications conceptuelles le cas échéant
|
||||
Reference in New Issue
Block a user