@atlashub/smartstack-cli 1.5.1 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.documentation/css/styles.css +2168 -2168
- package/.documentation/js/app.js +794 -794
- package/config/default-config.json +86 -86
- package/config/settings.json +53 -53
- package/config/settings.local.example.json +16 -16
- package/dist/index.js +0 -0
- package/dist/index.js.map +1 -1
- package/package.json +88 -88
- package/templates/agents/action.md +36 -36
- package/templates/agents/efcore/conflicts.md +84 -84
- package/templates/agents/efcore/db-deploy.md +51 -51
- package/templates/agents/efcore/db-reset.md +59 -59
- package/templates/agents/efcore/db-seed.md +56 -56
- package/templates/agents/efcore/db-status.md +64 -64
- package/templates/agents/efcore/migration.md +85 -85
- package/templates/agents/efcore/rebase-snapshot.md +62 -62
- package/templates/agents/efcore/scan.md +90 -90
- package/templates/agents/efcore/squash.md +67 -67
- package/templates/agents/explore-codebase.md +65 -65
- package/templates/agents/explore-docs.md +97 -97
- package/templates/agents/fix-grammar.md +49 -49
- package/templates/agents/gitflow/abort.md +45 -45
- package/templates/agents/gitflow/cleanup.md +85 -85
- package/templates/agents/gitflow/commit.md +40 -40
- package/templates/agents/gitflow/exec.md +48 -48
- package/templates/agents/gitflow/finish.md +92 -92
- package/templates/agents/gitflow/init.md +139 -139
- package/templates/agents/gitflow/merge.md +62 -62
- package/templates/agents/gitflow/plan.md +42 -42
- package/templates/agents/gitflow/pr.md +78 -78
- package/templates/agents/gitflow/review.md +49 -49
- package/templates/agents/gitflow/start.md +61 -61
- package/templates/agents/gitflow/status.md +32 -32
- package/templates/agents/snipper.md +36 -36
- package/templates/agents/websearch.md +46 -46
- package/templates/commands/_resources/formatting-guide.md +124 -124
- package/templates/commands/ai-prompt.md +315 -315
- package/templates/commands/apex/1-analyze.md +100 -100
- package/templates/commands/apex/2-plan.md +145 -145
- package/templates/commands/apex/3-execute.md +171 -171
- package/templates/commands/apex/4-examine.md +116 -116
- package/templates/commands/apex/5-tasks.md +209 -209
- package/templates/commands/apex.md +76 -76
- package/templates/commands/application/create.md +362 -362
- package/templates/commands/application/templates-backend.md +463 -463
- package/templates/commands/application/templates-frontend.md +517 -517
- package/templates/commands/application/templates-i18n.md +478 -478
- package/templates/commands/application/templates-seed.md +362 -362
- package/templates/commands/application.md +303 -303
- package/templates/commands/business-analyse/0-orchestrate.md +640 -640
- package/templates/commands/business-analyse/1-init.md +269 -269
- package/templates/commands/business-analyse/2-discover.md +520 -520
- package/templates/commands/business-analyse/3-analyse.md +408 -408
- package/templates/commands/business-analyse/4-specify.md +598 -598
- package/templates/commands/business-analyse/5-validate.md +326 -326
- package/templates/commands/business-analyse/6-handoff.md +746 -746
- package/templates/commands/business-analyse/7-doc-html.md +602 -602
- package/templates/commands/business-analyse/bug.md +325 -325
- package/templates/commands/business-analyse/change-request.md +368 -368
- package/templates/commands/business-analyse/hotfix.md +200 -200
- package/templates/commands/business-analyse.md +640 -640
- package/templates/commands/controller/create.md +216 -216
- package/templates/commands/controller/postman-templates.md +528 -528
- package/templates/commands/controller/templates.md +600 -600
- package/templates/commands/controller.md +337 -337
- package/templates/commands/create/agent.md +138 -138
- package/templates/commands/create/command.md +166 -166
- package/templates/commands/create/hook.md +234 -234
- package/templates/commands/create/plugin.md +329 -329
- package/templates/commands/create/project.md +507 -507
- package/templates/commands/create/skill.md +199 -199
- package/templates/commands/create.md +220 -220
- package/templates/commands/debug.md +95 -95
- package/templates/commands/documentation/module.md +202 -202
- package/templates/commands/documentation/templates.md +432 -432
- package/templates/commands/documentation.md +190 -190
- package/templates/commands/efcore/_env-check.md +153 -153
- package/templates/commands/efcore/conflicts.md +186 -186
- package/templates/commands/efcore/db-deploy.md +193 -193
- package/templates/commands/efcore/db-reset.md +426 -426
- package/templates/commands/efcore/db-seed.md +326 -326
- package/templates/commands/efcore/db-status.md +226 -226
- package/templates/commands/efcore/migration.md +400 -400
- package/templates/commands/efcore/rebase-snapshot.md +264 -264
- package/templates/commands/efcore/scan.md +198 -198
- package/templates/commands/efcore/squash.md +298 -298
- package/templates/commands/efcore.md +224 -224
- package/templates/commands/epct.md +69 -69
- package/templates/commands/explain.md +186 -186
- package/templates/commands/explore.md +45 -45
- package/templates/commands/feature-full.md +267 -267
- package/templates/commands/gitflow/1-init.md +1038 -1038
- package/templates/commands/gitflow/10-start.md +768 -768
- package/templates/commands/gitflow/11-finish.md +457 -457
- package/templates/commands/gitflow/12-cleanup.md +276 -276
- package/templates/commands/gitflow/13-sync.md +216 -216
- package/templates/commands/gitflow/14-rebase.md +251 -251
- package/templates/commands/gitflow/2-status.md +277 -277
- package/templates/commands/gitflow/3-commit.md +344 -344
- package/templates/commands/gitflow/4-plan.md +145 -145
- package/templates/commands/gitflow/5-exec.md +147 -147
- package/templates/commands/gitflow/6-abort.md +344 -344
- package/templates/commands/gitflow/7-pull-request.md +453 -355
- package/templates/commands/gitflow/8-review.md +240 -176
- package/templates/commands/gitflow/9-merge.md +451 -365
- package/templates/commands/gitflow.md +128 -128
- package/templates/commands/implement.md +663 -663
- package/templates/commands/init.md +567 -567
- package/templates/commands/mcp-integration.md +330 -330
- package/templates/commands/notification.md +129 -129
- package/templates/commands/oneshot.md +57 -57
- package/templates/commands/quick-search.md +72 -72
- package/templates/commands/ralph-loop/cancel-ralph.md +18 -18
- package/templates/commands/ralph-loop/help.md +126 -126
- package/templates/commands/ralph-loop/ralph-loop.md +18 -18
- package/templates/commands/review.md +106 -106
- package/templates/commands/utils/test-web-config.md +160 -160
- package/templates/commands/utils/test-web.md +151 -151
- package/templates/commands/validate.md +233 -233
- package/templates/commands/workflow.md +193 -193
- package/templates/gitflow/config.json +138 -138
- package/templates/hooks/ef-migration-check.md +139 -139
- package/templates/hooks/hooks.json +25 -25
- package/templates/hooks/stop-hook.sh +177 -177
- package/templates/skills/ai-prompt/SKILL.md +778 -778
- package/templates/skills/application/SKILL.md +563 -563
- package/templates/skills/application/templates-backend.md +450 -450
- package/templates/skills/application/templates-frontend.md +531 -531
- package/templates/skills/application/templates-i18n.md +520 -520
- package/templates/skills/application/templates-seed.md +647 -647
- package/templates/skills/business-analyse/SKILL.md +191 -191
- package/templates/skills/business-analyse/questionnaire.md +283 -283
- package/templates/skills/business-analyse/templates-frd.md +477 -477
- package/templates/skills/business-analyse/templates-react.md +580 -580
- package/templates/skills/controller/SKILL.md +240 -240
- package/templates/skills/controller/postman-templates.md +614 -614
- package/templates/skills/controller/templates.md +1468 -1468
- package/templates/skills/documentation/SKILL.md +133 -133
- package/templates/skills/documentation/templates.md +476 -476
- package/templates/skills/feature-full/SKILL.md +838 -838
- package/templates/skills/notification/SKILL.md +555 -555
- package/templates/skills/ui-components/SKILL.md +870 -870
- package/templates/skills/workflow/SKILL.md +582 -582
- package/templates/test-web/api-health.json +38 -38
- package/templates/test-web/minimal.json +19 -19
- package/templates/test-web/npm-package.json +46 -46
- package/templates/test-web/seo-check.json +54 -54
|
@@ -1,267 +1,267 @@
|
|
|
1
|
-
# /feature-full - Creation Feature Complete OneShot
|
|
2
|
-
|
|
3
|
-
> **Synergie Skill/Commande:**
|
|
4
|
-
> - **Skill** (`templates/skills/feature-full/`) → Invocation automatique par Claude
|
|
5
|
-
> - **Commande** (`/feature-full`) → Invocation manuelle par l'utilisateur
|
|
6
|
-
>
|
|
7
|
-
> Ce skill orchestre tous les autres skills pour une experience de developpement optimale.
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## ARGUMENTS
|
|
12
|
-
|
|
13
|
-
```
|
|
14
|
-
/feature-full <entity> [options]
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
| Option | Description |
|
|
18
|
-
|--------|-------------|
|
|
19
|
-
| `--area` | Zone de navigation (platform, business, personal) |
|
|
20
|
-
| `--module` | Module parent |
|
|
21
|
-
| `--notifications` | Activer les notifications (defaut: oui) |
|
|
22
|
-
| `--workflows` | Activer les workflows/emails (defaut: non) |
|
|
23
|
-
| `--ai` | Activer l'assistance IA (defaut: non) |
|
|
24
|
-
| `--crud` | Operations CRUD (defaut: all) |
|
|
25
|
-
|
|
26
|
-
---
|
|
27
|
-
|
|
28
|
-
## WORKFLOW ONESHOT
|
|
29
|
-
|
|
30
|
-
### PHASE 1: ANALYSE (2 min)
|
|
31
|
-
|
|
32
|
-
```
|
|
33
|
-
AskUserQuestion: {
|
|
34
|
-
questions: [
|
|
35
|
-
{
|
|
36
|
-
header: "Entity",
|
|
37
|
-
question: "Quel est le nom de l'entite principale ?",
|
|
38
|
-
options: [
|
|
39
|
-
{ label: "Saisie libre", description: "Ex: Product, Order, Customer" }
|
|
40
|
-
]
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
header: "Area",
|
|
44
|
-
question: "Dans quelle zone de navigation ?",
|
|
45
|
-
options: [
|
|
46
|
-
{ label: "platform", description: "Administration systeme" },
|
|
47
|
-
{ label: "business", description: "Fonctionnalites metier" },
|
|
48
|
-
{ label: "personal", description: "Espace personnel" }
|
|
49
|
-
]
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
header: "Integrations",
|
|
53
|
-
question: "Quelles integrations activer ?",
|
|
54
|
-
multiSelect: true,
|
|
55
|
-
options: [
|
|
56
|
-
{ label: "Notifications", description: "In-app + SignalR (Recommended)" },
|
|
57
|
-
{ label: "Workflows", description: "Emails automatiques" },
|
|
58
|
-
{ label: "AI", description: "Assistance IA" }
|
|
59
|
-
]
|
|
60
|
-
}
|
|
61
|
-
]
|
|
62
|
-
}
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
### PHASE 2: GENERATION (30 min)
|
|
66
|
-
|
|
67
|
-
Execute automatiquement dans l'ordre :
|
|
68
|
-
|
|
69
|
-
```
|
|
70
|
-
1. DOMAIN LAYER
|
|
71
|
-
→ Entity + Enums + Factory Methods
|
|
72
|
-
→ /application templates-backend
|
|
73
|
-
|
|
74
|
-
2. APPLICATION LAYER
|
|
75
|
-
→ Interface + DTOs + Permissions
|
|
76
|
-
→ /application templates-backend
|
|
77
|
-
|
|
78
|
-
3. INFRASTRUCTURE LAYER
|
|
79
|
-
→ EF Core Configuration + Service
|
|
80
|
-
→ /application templates-backend
|
|
81
|
-
→ /efcore:migration
|
|
82
|
-
|
|
83
|
-
4. API LAYER
|
|
84
|
-
→ Controller + Authorize + Swagger
|
|
85
|
-
→ /controller:create
|
|
86
|
-
|
|
87
|
-
5. WEB LAYER
|
|
88
|
-
→ Pages + Hooks + i18n + Routes
|
|
89
|
-
→ /application templates-frontend
|
|
90
|
-
→ /ui-components
|
|
91
|
-
|
|
92
|
-
6. NOTIFICATIONS (si active)
|
|
93
|
-
→ NotificationType + Service injection
|
|
94
|
-
→ /notification add
|
|
95
|
-
|
|
96
|
-
7. WORKFLOWS (si active)
|
|
97
|
-
→ Trigger + Workflow + Template
|
|
98
|
-
→ /workflow create
|
|
99
|
-
|
|
100
|
-
8. AI (si active)
|
|
101
|
-
→ Prompt + Schema + Service
|
|
102
|
-
→ /ai-prompt create
|
|
103
|
-
|
|
104
|
-
9. VALIDATION
|
|
105
|
-
→ dotnet build
|
|
106
|
-
→ npm run build
|
|
107
|
-
→ npm run lint
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
### PHASE 3: RESUME (1 min)
|
|
111
|
-
|
|
112
|
-
Affiche le resume de tout ce qui a ete cree.
|
|
113
|
-
|
|
114
|
-
---
|
|
115
|
-
|
|
116
|
-
## EXEMPLE COMPLET
|
|
117
|
-
|
|
118
|
-
```bash
|
|
119
|
-
/feature-full Product --area business --notifications --workflows --ai
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
**Genere automatiquement :**
|
|
123
|
-
|
|
124
|
-
| Layer | Fichiers |
|
|
125
|
-
|-------|----------|
|
|
126
|
-
| Domain | `Product.cs`, `ProductStatus.cs` |
|
|
127
|
-
| Application | `IProductService.cs`, `ProductDto.cs`, `Permissions.cs` |
|
|
128
|
-
| Infrastructure | `ProductConfiguration.cs`, `ProductService.cs`, `PermissionConfiguration.cs` |
|
|
129
|
-
| API | `ProductsController.cs` |
|
|
130
|
-
| Web | `ProductsPage.tsx`, `useProducts.ts`, `productsApi.ts`, i18n (4 langues) |
|
|
131
|
-
| Notifications | `NotificationType.ProductCreated`, SignalR integration |
|
|
132
|
-
| Workflows | `product.created` trigger, email template |
|
|
133
|
-
| AI | `product-analyzer` prompt, `ProductAnalysisResult` |
|
|
134
|
-
|
|
135
|
-
---
|
|
136
|
-
|
|
137
|
-
## TEMPLATES ORCHESTRATION
|
|
138
|
-
|
|
139
|
-
### Template Execution Order
|
|
140
|
-
|
|
141
|
-
```typescript
|
|
142
|
-
// 1. Domain
|
|
143
|
-
await generateDomainLayer(entity, config);
|
|
144
|
-
|
|
145
|
-
// 2. Application
|
|
146
|
-
await generateApplicationLayer(entity, config);
|
|
147
|
-
|
|
148
|
-
// 3. Infrastructure
|
|
149
|
-
await generateInfrastructureLayer(entity, config);
|
|
150
|
-
await runCommand('/efcore:migration', `Add${entity}`);
|
|
151
|
-
|
|
152
|
-
// 4. API
|
|
153
|
-
await runCommand('/controller:create', entity);
|
|
154
|
-
|
|
155
|
-
// 5. Web
|
|
156
|
-
await generateWebLayer(entity, config);
|
|
157
|
-
|
|
158
|
-
// 6. Integrations
|
|
159
|
-
if (config.notifications) {
|
|
160
|
-
await runCommand('/notification', `add ${entity}`);
|
|
161
|
-
}
|
|
162
|
-
if (config.workflows) {
|
|
163
|
-
await runCommand('/workflow', `create ${entity}.created`);
|
|
164
|
-
}
|
|
165
|
-
if (config.ai) {
|
|
166
|
-
await runCommand('/ai-prompt', `create ${entity}-analyzer`);
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
// 7. Validation
|
|
170
|
-
await runCommand('dotnet', 'build');
|
|
171
|
-
await runCommand('npm', 'run build');
|
|
172
|
-
await runCommand('npm', 'run lint');
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
---
|
|
176
|
-
|
|
177
|
-
## CHECKLIST AUTOMATIQUE
|
|
178
|
-
|
|
179
|
-
```
|
|
180
|
-
DOMAIN LAYER
|
|
181
|
-
✓ Entity {Entity}.cs avec Factory Method
|
|
182
|
-
✓ Enum {Entity}Status.cs
|
|
183
|
-
✓ IAuditableEntity implemente
|
|
184
|
-
|
|
185
|
-
APPLICATION LAYER
|
|
186
|
-
✓ Interface I{Entity}Service.cs
|
|
187
|
-
✓ DTOs: {Entity}Dto, Create/Update Requests
|
|
188
|
-
✓ Permissions dans Permissions.cs
|
|
189
|
-
✓ Permissions dans PermissionConfiguration.cs
|
|
190
|
-
|
|
191
|
-
INFRASTRUCTURE LAYER
|
|
192
|
-
✓ {Entity}Configuration.cs (EF Core)
|
|
193
|
-
✓ {Entity}Service.cs implementation
|
|
194
|
-
✓ DbSet<{Entity}> dans ApplicationDbContext
|
|
195
|
-
✓ DI registration
|
|
196
|
-
✓ Migration EF Core
|
|
197
|
-
|
|
198
|
-
API LAYER
|
|
199
|
-
✓ {Entity}Controller.cs
|
|
200
|
-
✓ [Authorize] + [RequirePermission]
|
|
201
|
-
✓ [ProducesResponseType]
|
|
202
|
-
✓ Logging
|
|
203
|
-
|
|
204
|
-
WEB LAYER
|
|
205
|
-
✓ {module}Api.ts
|
|
206
|
-
✓ use{Module}.ts (avec SignalR si notifications)
|
|
207
|
-
✓ {Module}Page.tsx
|
|
208
|
-
✓ {Module}Form.tsx
|
|
209
|
-
✓ {Module}DetailPage.tsx
|
|
210
|
-
✓ i18n: fr, en, it, de
|
|
211
|
-
✓ Routes dans App.tsx
|
|
212
|
-
|
|
213
|
-
NOTIFICATIONS (si active)
|
|
214
|
-
✓ NotificationType ajoute
|
|
215
|
-
✓ SendNotificationAsync dans service
|
|
216
|
-
✓ useSignalR dans hook
|
|
217
|
-
|
|
218
|
-
WORKFLOWS (si active)
|
|
219
|
-
✓ Trigger cree
|
|
220
|
-
✓ Workflow cree
|
|
221
|
-
✓ Email template
|
|
222
|
-
✓ TriggerAsync dans service
|
|
223
|
-
|
|
224
|
-
AI (si active)
|
|
225
|
-
✓ Prompt cree
|
|
226
|
-
✓ OutputSchema
|
|
227
|
-
✓ DTO Result
|
|
228
|
-
✓ ExecutePromptAsync dans service
|
|
229
|
-
✓ Bouton IA frontend
|
|
230
|
-
|
|
231
|
-
VALIDATION
|
|
232
|
-
✓ dotnet build OK
|
|
233
|
-
✓ npm run build OK
|
|
234
|
-
✓ npm run lint OK
|
|
235
|
-
```
|
|
236
|
-
|
|
237
|
-
---
|
|
238
|
-
|
|
239
|
-
## REGLES ABSOLUES
|
|
240
|
-
|
|
241
|
-
1. **TOUJOURS** suivre l'ordre des phases
|
|
242
|
-
2. **TOUJOURS** valider chaque phase avant la suivante
|
|
243
|
-
3. **TOUJOURS** utiliser les skills specialises
|
|
244
|
-
4. **TOUJOURS** respecter l'architecture en couches
|
|
245
|
-
5. **TOUJOURS** creer les 4 langues i18n
|
|
246
|
-
6. **TOUJOURS** ajouter les permissions dans les 2 fichiers
|
|
247
|
-
7. **JAMAIS** sauter une phase
|
|
248
|
-
8. **JAMAIS** generer du code sans validation
|
|
249
|
-
9. **JAMAIS** oublier les integrations demandees
|
|
250
|
-
|
|
251
|
-
---
|
|
252
|
-
|
|
253
|
-
## SKILLS ORCHESTRES
|
|
254
|
-
|
|
255
|
-
| Skill | Phase | Action |
|
|
256
|
-
|-------|-------|--------|
|
|
257
|
-
| `/application` | 1-5 | Generation full-stack |
|
|
258
|
-
| `/controller` | 4 | Controller API |
|
|
259
|
-
| `/ui-components` | 5 | Composants UI |
|
|
260
|
-
| `/notification` | 6 | Notifications |
|
|
261
|
-
| `/workflow` | 7 | Workflows/Emails |
|
|
262
|
-
| `/ai-prompt` | 8 | IA |
|
|
263
|
-
| `/efcore:migration` | 3 | Migration DB |
|
|
264
|
-
|
|
265
|
-
---
|
|
266
|
-
|
|
267
|
-
User: $ARGUMENTS
|
|
1
|
+
# /feature-full - Creation Feature Complete OneShot
|
|
2
|
+
|
|
3
|
+
> **Synergie Skill/Commande:**
|
|
4
|
+
> - **Skill** (`templates/skills/feature-full/`) → Invocation automatique par Claude
|
|
5
|
+
> - **Commande** (`/feature-full`) → Invocation manuelle par l'utilisateur
|
|
6
|
+
>
|
|
7
|
+
> Ce skill orchestre tous les autres skills pour une experience de developpement optimale.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## ARGUMENTS
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
/feature-full <entity> [options]
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
| Option | Description |
|
|
18
|
+
|--------|-------------|
|
|
19
|
+
| `--area` | Zone de navigation (platform, business, personal) |
|
|
20
|
+
| `--module` | Module parent |
|
|
21
|
+
| `--notifications` | Activer les notifications (defaut: oui) |
|
|
22
|
+
| `--workflows` | Activer les workflows/emails (defaut: non) |
|
|
23
|
+
| `--ai` | Activer l'assistance IA (defaut: non) |
|
|
24
|
+
| `--crud` | Operations CRUD (defaut: all) |
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## WORKFLOW ONESHOT
|
|
29
|
+
|
|
30
|
+
### PHASE 1: ANALYSE (2 min)
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
AskUserQuestion: {
|
|
34
|
+
questions: [
|
|
35
|
+
{
|
|
36
|
+
header: "Entity",
|
|
37
|
+
question: "Quel est le nom de l'entite principale ?",
|
|
38
|
+
options: [
|
|
39
|
+
{ label: "Saisie libre", description: "Ex: Product, Order, Customer" }
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
header: "Area",
|
|
44
|
+
question: "Dans quelle zone de navigation ?",
|
|
45
|
+
options: [
|
|
46
|
+
{ label: "platform", description: "Administration systeme" },
|
|
47
|
+
{ label: "business", description: "Fonctionnalites metier" },
|
|
48
|
+
{ label: "personal", description: "Espace personnel" }
|
|
49
|
+
]
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
header: "Integrations",
|
|
53
|
+
question: "Quelles integrations activer ?",
|
|
54
|
+
multiSelect: true,
|
|
55
|
+
options: [
|
|
56
|
+
{ label: "Notifications", description: "In-app + SignalR (Recommended)" },
|
|
57
|
+
{ label: "Workflows", description: "Emails automatiques" },
|
|
58
|
+
{ label: "AI", description: "Assistance IA" }
|
|
59
|
+
]
|
|
60
|
+
}
|
|
61
|
+
]
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### PHASE 2: GENERATION (30 min)
|
|
66
|
+
|
|
67
|
+
Execute automatiquement dans l'ordre :
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
1. DOMAIN LAYER
|
|
71
|
+
→ Entity + Enums + Factory Methods
|
|
72
|
+
→ /application templates-backend
|
|
73
|
+
|
|
74
|
+
2. APPLICATION LAYER
|
|
75
|
+
→ Interface + DTOs + Permissions
|
|
76
|
+
→ /application templates-backend
|
|
77
|
+
|
|
78
|
+
3. INFRASTRUCTURE LAYER
|
|
79
|
+
→ EF Core Configuration + Service
|
|
80
|
+
→ /application templates-backend
|
|
81
|
+
→ /efcore:migration
|
|
82
|
+
|
|
83
|
+
4. API LAYER
|
|
84
|
+
→ Controller + Authorize + Swagger
|
|
85
|
+
→ /controller:create
|
|
86
|
+
|
|
87
|
+
5. WEB LAYER
|
|
88
|
+
→ Pages + Hooks + i18n + Routes
|
|
89
|
+
→ /application templates-frontend
|
|
90
|
+
→ /ui-components
|
|
91
|
+
|
|
92
|
+
6. NOTIFICATIONS (si active)
|
|
93
|
+
→ NotificationType + Service injection
|
|
94
|
+
→ /notification add
|
|
95
|
+
|
|
96
|
+
7. WORKFLOWS (si active)
|
|
97
|
+
→ Trigger + Workflow + Template
|
|
98
|
+
→ /workflow create
|
|
99
|
+
|
|
100
|
+
8. AI (si active)
|
|
101
|
+
→ Prompt + Schema + Service
|
|
102
|
+
→ /ai-prompt create
|
|
103
|
+
|
|
104
|
+
9. VALIDATION
|
|
105
|
+
→ dotnet build
|
|
106
|
+
→ npm run build
|
|
107
|
+
→ npm run lint
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### PHASE 3: RESUME (1 min)
|
|
111
|
+
|
|
112
|
+
Affiche le resume de tout ce qui a ete cree.
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## EXEMPLE COMPLET
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
/feature-full Product --area business --notifications --workflows --ai
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
**Genere automatiquement :**
|
|
123
|
+
|
|
124
|
+
| Layer | Fichiers |
|
|
125
|
+
|-------|----------|
|
|
126
|
+
| Domain | `Product.cs`, `ProductStatus.cs` |
|
|
127
|
+
| Application | `IProductService.cs`, `ProductDto.cs`, `Permissions.cs` |
|
|
128
|
+
| Infrastructure | `ProductConfiguration.cs`, `ProductService.cs`, `PermissionConfiguration.cs` |
|
|
129
|
+
| API | `ProductsController.cs` |
|
|
130
|
+
| Web | `ProductsPage.tsx`, `useProducts.ts`, `productsApi.ts`, i18n (4 langues) |
|
|
131
|
+
| Notifications | `NotificationType.ProductCreated`, SignalR integration |
|
|
132
|
+
| Workflows | `product.created` trigger, email template |
|
|
133
|
+
| AI | `product-analyzer` prompt, `ProductAnalysisResult` |
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## TEMPLATES ORCHESTRATION
|
|
138
|
+
|
|
139
|
+
### Template Execution Order
|
|
140
|
+
|
|
141
|
+
```typescript
|
|
142
|
+
// 1. Domain
|
|
143
|
+
await generateDomainLayer(entity, config);
|
|
144
|
+
|
|
145
|
+
// 2. Application
|
|
146
|
+
await generateApplicationLayer(entity, config);
|
|
147
|
+
|
|
148
|
+
// 3. Infrastructure
|
|
149
|
+
await generateInfrastructureLayer(entity, config);
|
|
150
|
+
await runCommand('/efcore:migration', `Add${entity}`);
|
|
151
|
+
|
|
152
|
+
// 4. API
|
|
153
|
+
await runCommand('/controller:create', entity);
|
|
154
|
+
|
|
155
|
+
// 5. Web
|
|
156
|
+
await generateWebLayer(entity, config);
|
|
157
|
+
|
|
158
|
+
// 6. Integrations
|
|
159
|
+
if (config.notifications) {
|
|
160
|
+
await runCommand('/notification', `add ${entity}`);
|
|
161
|
+
}
|
|
162
|
+
if (config.workflows) {
|
|
163
|
+
await runCommand('/workflow', `create ${entity}.created`);
|
|
164
|
+
}
|
|
165
|
+
if (config.ai) {
|
|
166
|
+
await runCommand('/ai-prompt', `create ${entity}-analyzer`);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
// 7. Validation
|
|
170
|
+
await runCommand('dotnet', 'build');
|
|
171
|
+
await runCommand('npm', 'run build');
|
|
172
|
+
await runCommand('npm', 'run lint');
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## CHECKLIST AUTOMATIQUE
|
|
178
|
+
|
|
179
|
+
```
|
|
180
|
+
DOMAIN LAYER
|
|
181
|
+
✓ Entity {Entity}.cs avec Factory Method
|
|
182
|
+
✓ Enum {Entity}Status.cs
|
|
183
|
+
✓ IAuditableEntity implemente
|
|
184
|
+
|
|
185
|
+
APPLICATION LAYER
|
|
186
|
+
✓ Interface I{Entity}Service.cs
|
|
187
|
+
✓ DTOs: {Entity}Dto, Create/Update Requests
|
|
188
|
+
✓ Permissions dans Permissions.cs
|
|
189
|
+
✓ Permissions dans PermissionConfiguration.cs
|
|
190
|
+
|
|
191
|
+
INFRASTRUCTURE LAYER
|
|
192
|
+
✓ {Entity}Configuration.cs (EF Core)
|
|
193
|
+
✓ {Entity}Service.cs implementation
|
|
194
|
+
✓ DbSet<{Entity}> dans ApplicationDbContext
|
|
195
|
+
✓ DI registration
|
|
196
|
+
✓ Migration EF Core
|
|
197
|
+
|
|
198
|
+
API LAYER
|
|
199
|
+
✓ {Entity}Controller.cs
|
|
200
|
+
✓ [Authorize] + [RequirePermission]
|
|
201
|
+
✓ [ProducesResponseType]
|
|
202
|
+
✓ Logging
|
|
203
|
+
|
|
204
|
+
WEB LAYER
|
|
205
|
+
✓ {module}Api.ts
|
|
206
|
+
✓ use{Module}.ts (avec SignalR si notifications)
|
|
207
|
+
✓ {Module}Page.tsx
|
|
208
|
+
✓ {Module}Form.tsx
|
|
209
|
+
✓ {Module}DetailPage.tsx
|
|
210
|
+
✓ i18n: fr, en, it, de
|
|
211
|
+
✓ Routes dans App.tsx
|
|
212
|
+
|
|
213
|
+
NOTIFICATIONS (si active)
|
|
214
|
+
✓ NotificationType ajoute
|
|
215
|
+
✓ SendNotificationAsync dans service
|
|
216
|
+
✓ useSignalR dans hook
|
|
217
|
+
|
|
218
|
+
WORKFLOWS (si active)
|
|
219
|
+
✓ Trigger cree
|
|
220
|
+
✓ Workflow cree
|
|
221
|
+
✓ Email template
|
|
222
|
+
✓ TriggerAsync dans service
|
|
223
|
+
|
|
224
|
+
AI (si active)
|
|
225
|
+
✓ Prompt cree
|
|
226
|
+
✓ OutputSchema
|
|
227
|
+
✓ DTO Result
|
|
228
|
+
✓ ExecutePromptAsync dans service
|
|
229
|
+
✓ Bouton IA frontend
|
|
230
|
+
|
|
231
|
+
VALIDATION
|
|
232
|
+
✓ dotnet build OK
|
|
233
|
+
✓ npm run build OK
|
|
234
|
+
✓ npm run lint OK
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
## REGLES ABSOLUES
|
|
240
|
+
|
|
241
|
+
1. **TOUJOURS** suivre l'ordre des phases
|
|
242
|
+
2. **TOUJOURS** valider chaque phase avant la suivante
|
|
243
|
+
3. **TOUJOURS** utiliser les skills specialises
|
|
244
|
+
4. **TOUJOURS** respecter l'architecture en couches
|
|
245
|
+
5. **TOUJOURS** creer les 4 langues i18n
|
|
246
|
+
6. **TOUJOURS** ajouter les permissions dans les 2 fichiers
|
|
247
|
+
7. **JAMAIS** sauter une phase
|
|
248
|
+
8. **JAMAIS** generer du code sans validation
|
|
249
|
+
9. **JAMAIS** oublier les integrations demandees
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
## SKILLS ORCHESTRES
|
|
254
|
+
|
|
255
|
+
| Skill | Phase | Action |
|
|
256
|
+
|-------|-------|--------|
|
|
257
|
+
| `/application` | 1-5 | Generation full-stack |
|
|
258
|
+
| `/controller` | 4 | Controller API |
|
|
259
|
+
| `/ui-components` | 5 | Composants UI |
|
|
260
|
+
| `/notification` | 6 | Notifications |
|
|
261
|
+
| `/workflow` | 7 | Workflows/Emails |
|
|
262
|
+
| `/ai-prompt` | 8 | IA |
|
|
263
|
+
| `/efcore:migration` | 3 | Migration DB |
|
|
264
|
+
|
|
265
|
+
---
|
|
266
|
+
|
|
267
|
+
User: $ARGUMENTS
|