@the-bearded-bear/claude-craft 8.19.1 → 8.19.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.
Files changed (60) hide show
  1. package/Dev/i18n/base/Common/skills/documentation/SKILL.md +0 -19
  2. package/Dev/i18n/base/Common/skills/ecosystem-tools/SKILL.md +0 -12
  3. package/Dev/i18n/base/Common/skills/git-workflow/SKILL.md +0 -17
  4. package/Dev/i18n/base/Common/skills/kiss-dry-yagni/SKILL.md +0 -11
  5. package/Dev/i18n/base/Common/skills/parallel-worktrees/SKILL.md +0 -11
  6. package/Dev/i18n/base/Common/skills/security/SKILL.md +0 -20
  7. package/Dev/i18n/base/Common/skills/solid-principles/SKILL.md +0 -18
  8. package/Dev/i18n/base/Common/skills/testing/SKILL.md +0 -25
  9. package/Dev/i18n/base/Common/skills/workflow-analysis/SKILL.md +0 -10
  10. package/Dev/i18n/de/Common/agents/tdd-coach.md +1 -1
  11. package/Dev/i18n/de/Common/commands/getting-started.md +6 -8
  12. package/Dev/i18n/de/Common/templates/settings.json.template +4 -4
  13. package/Dev/i18n/de/QA/commands/fix.md +1 -1
  14. package/Dev/i18n/de/ReactNative/agents/reactnative-reviewer.md +4 -4
  15. package/Dev/i18n/de/ReactNative/rules/06-tooling.md +6 -6
  16. package/Dev/i18n/en/Common/agents/tdd-coach.md +1 -1
  17. package/Dev/i18n/en/Common/commands/getting-started.md +6 -8
  18. package/Dev/i18n/en/Common/templates/settings.json.template +4 -4
  19. package/Dev/i18n/en/QA/commands/fix.md +1 -1
  20. package/Dev/i18n/en/ReactNative/agents/reactnative-reviewer.md +4 -4
  21. package/Dev/i18n/en/ReactNative/rules/06-tooling.md +4 -4
  22. package/Dev/i18n/es/Common/agents/tdd-coach.md +1 -1
  23. package/Dev/i18n/es/Common/commands/getting-started.md +6 -8
  24. package/Dev/i18n/es/Common/templates/settings.json.template +4 -4
  25. package/Dev/i18n/es/QA/commands/fix.md +1 -1
  26. package/Dev/i18n/es/ReactNative/agents/reactnative-reviewer.md +4 -4
  27. package/Dev/i18n/es/ReactNative/rules/06-tooling.md +6 -6
  28. package/Dev/i18n/fr/Common/agents/tdd-coach.md +1 -1
  29. package/Dev/i18n/fr/Common/commands/getting-started.md +6 -8
  30. package/Dev/i18n/fr/Common/templates/settings.json.template +4 -4
  31. package/Dev/i18n/fr/QA/commands/fix.md +1 -1
  32. package/Dev/i18n/fr/ReactNative/agents/reactnative-reviewer.md +4 -4
  33. package/Dev/i18n/fr/ReactNative/rules/06-tooling.md +6 -6
  34. package/Dev/i18n/pt/Common/agents/tdd-coach.md +1 -1
  35. package/Dev/i18n/pt/Common/commands/getting-started.md +6 -8
  36. package/Dev/i18n/pt/Common/templates/settings.json.template +4 -4
  37. package/Dev/i18n/pt/QA/commands/fix.md +1 -1
  38. package/Dev/i18n/pt/ReactNative/agents/reactnative-reviewer.md +4 -4
  39. package/Dev/i18n/pt/ReactNative/rules/06-tooling.md +6 -6
  40. package/Project/i18n/de/scaffold/CLAUDE.md +208 -0
  41. package/Project/i18n/de/scaffold/project-management__README.md +40 -0
  42. package/Project/i18n/de/scaffold/project-management__backlog__index.md +58 -0
  43. package/Project/i18n/en/scaffold/CLAUDE.md +208 -0
  44. package/Project/i18n/en/scaffold/project-management__README.md +40 -0
  45. package/Project/i18n/en/scaffold/project-management__backlog__index.md +58 -0
  46. package/Project/i18n/es/scaffold/CLAUDE.md +208 -0
  47. package/Project/i18n/es/scaffold/project-management__README.md +40 -0
  48. package/Project/i18n/es/scaffold/project-management__backlog__index.md +58 -0
  49. package/Project/i18n/fr/scaffold/CLAUDE.md +208 -0
  50. package/Project/i18n/fr/scaffold/project-management__README.md +40 -0
  51. package/Project/i18n/fr/scaffold/project-management__backlog__index.md +58 -0
  52. package/Project/i18n/pt/scaffold/CLAUDE.md +208 -0
  53. package/Project/i18n/pt/scaffold/project-management__README.md +40 -0
  54. package/Project/i18n/pt/scaffold/project-management__backlog__index.md +58 -0
  55. package/Project/install-project-commands.sh +85 -312
  56. package/README.md +4 -4
  57. package/bundles/cursor/.cursorrules +3 -3
  58. package/bundles/windsurf/.windsurfrules +3 -3
  59. package/cli/lib/tech-registry.js +2 -2
  60. package/package.json +2 -2
@@ -81,7 +81,7 @@
81
81
  "hooks": [
82
82
  {
83
83
  "type": "command",
84
- "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env|\\.env\\.|credentials|secrets|private.*key|id_rsa)'; then echo \"BLOCKED: Cannot edit sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
84
+ "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env(\\.|$)|\\.envrc|credentials|secrets?|private.*key|id_(rsa|dsa|ecdsa|ed25519)|\\.pem$|\\.p(fx|12)$|\\.key$|\\.npmrc$|\\.netrc$|kubeconfig)'; then echo \"BLOCKED: Cannot edit sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
85
85
  }
86
86
  ]
87
87
  },
@@ -90,7 +90,7 @@
90
90
  "hooks": [
91
91
  {
92
92
  "type": "command",
93
- "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env|\\.env\\.|credentials|secrets|private.*key|id_rsa)'; then echo \"BLOCKED: Cannot write sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
93
+ "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env(\\.|$)|\\.envrc|credentials|secrets?|private.*key|id_(rsa|dsa|ecdsa|ed25519)|\\.pem$|\\.p(fx|12)$|\\.key$|\\.npmrc$|\\.netrc$|kubeconfig)'; then echo \"BLOCKED: Cannot write sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
94
94
  }
95
95
  ]
96
96
  }
@@ -101,7 +101,7 @@
101
101
  "hooks": [
102
102
  {
103
103
  "type": "command",
104
- "command": "OUTPUT_SIZE=$(jq -r '.tool_output // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Extract only the relevant information and summarize in under 20 lines.'; elif [ \"$OUTPUT_SIZE\" -gt 10000 ]; then echo 'NOTICE: Moderate output (>10KB). Focus on errors, warnings, and key results.'; fi; exit 0",
104
+ "command": "OUTPUT_SIZE=$(jq -r '.tool_response.stdout? // .tool_response? // .tool_result? // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Extract only the relevant information and summarize in under 20 lines.'; elif [ \"$OUTPUT_SIZE\" -gt 10000 ]; then echo 'NOTICE: Moderate output (>10KB). Focus on errors, warnings, and key results.'; fi; exit 0",
105
105
  "timeout": 3000
106
106
  }
107
107
  ]
@@ -111,7 +111,7 @@
111
111
  "hooks": [
112
112
  {
113
113
  "type": "command",
114
- "command": "OUTPUT_SIZE=$(jq -r '.tool_output // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Summarize key findings in under 20 lines.'; fi; exit 0",
114
+ "command": "OUTPUT_SIZE=$(jq -r '.tool_response.stdout? // .tool_response? // .tool_result? // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Summarize key findings in under 20 lines.'; fi; exit 0",
115
115
  "timeout": 3000
116
116
  }
117
117
  ]
@@ -279,7 +279,7 @@ resume_from:
279
279
  |-------|----------|
280
280
  | "Sesion no encontrada" | Verifique el ID de sesion en `.recette/sessions/` |
281
281
  | "Sin errores en la sesion" | La sesion no tiene errores a corregir |
282
- | "sprint-status.yaml no encontrado" | Inicialice BMAD con `/bmad:init` |
282
+ | "sprint-status.yaml no encontrado" | Inicialice BMAD con `/workflow:init` |
283
283
  | "Test RED no falla" | El bug puede que ya no exista, verificar manualmente |
284
284
 
285
285
  ## Mejores Practicas
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: reactnative-reviewer
3
- description: Especialista en revisión de código React Native 0.86 y Expo — New Architecture, navegación, rendimiento móvil, análisis de bundle
3
+ description: Especialista en revisión de código React Native 0.85 y Expo — New Architecture, navegación, rendimiento móvil, análisis de bundle
4
4
  model: haiku
5
5
  effort: low
6
6
  maxTurns: 6
@@ -10,11 +10,11 @@ permissionMode: default
10
10
  skills: [solid-principles, testing-reactnative, security-reactnative, architecture, navigation]
11
11
  ---
12
12
 
13
- # Agente Auditor React Native 0.86 / Expo
13
+ # Agente Auditor React Native 0.85 / Expo
14
14
 
15
15
  ## Identidad
16
16
 
17
- Soy un especialista en revisión de código React Native 0.86 y Expo. Mi enfoque se centra en los problemas específicos del móvil: la New Architecture (JSI, Fabric, TurboModules), la navegación con Expo Router, el rendimiento a 60 FPS, la gestión del tamaño del bundle, y los patrones de composición adaptados al móvil. No hago una auditoría genérica -- detecto lo que rompe, ralentiza o complejiza innecesariamente una aplicación React Native moderna que utiliza la New Architecture por defecto.
17
+ Soy un especialista en revisión de código React Native 0.85 y Expo. Mi enfoque se centra en los problemas específicos del móvil: la New Architecture (JSI, Fabric, TurboModules), la navegación con Expo Router, el rendimiento a 60 FPS, la gestión del tamaño del bundle, y los patrones de composición adaptados al móvil. No hago una auditoría genérica -- detecto lo que rompe, ralentiza o complejiza innecesariamente una aplicación React Native moderna que utiliza la New Architecture por defecto.
18
18
 
19
19
  ## Sistema de puntuación (100 puntos)
20
20
 
@@ -411,7 +411,7 @@ import { format } from 'date-fns';
411
411
  ## Formato de informe de auditoría
412
412
 
413
413
  ```markdown
414
- # Informe de auditoría React Native 0.86 / Expo
414
+ # Informe de auditoría React Native 0.85 / Expo
415
415
 
416
416
  ## Proyecto: [Nombre del proyecto]
417
417
  **Fecha:** [Fecha]
@@ -8,9 +8,9 @@ Este documento cubre las herramientas esenciales para el desarrollo de React Nat
8
8
 
9
9
  ## Requisitos del Sistema
10
10
 
11
- ### Node.js >= 22 LTS (requerido para RN 0.86)
11
+ ### Node.js >= 22 LTS (requerido para RN 0.85)
12
12
 
13
- React Native 0.86 requiere **Node.js 22.x LTS** mínimo (RN 0.85 requería Node 20). La versión recomendada es **Node.js 22.x active LTS**.
13
+ React Native 0.85 requiere **Node.js 22.x LTS** mínimo (RN 0.85 requería Node 20). La versión recomendada es **Node.js 22.x active LTS**.
14
14
 
15
15
  ```bash
16
16
  # Verificar versión
@@ -22,11 +22,11 @@ nvm use 22
22
22
  nvm alias default 22
23
23
  ```
24
24
 
25
- > Las versiones de Node < 22 ya no son compatibles con RN 0.86. Actualizar antes de migrar.
25
+ > Las versiones de Node < 22 ya no son compatibles con RN 0.85. Actualizar antes de migrar.
26
26
 
27
27
  ### React Native Gesture Handler 3.0.0 — Cambios Breaking
28
28
 
29
- RNGH 3.0.0 introduce cambios de ruptura con RN 0.86:
29
+ RNGH 3.0.0 introduce cambios de ruptura con RN 0.85:
30
30
 
31
31
  ```typescript
32
32
  // ✅ RNGH 3.0 — GestureHandlerRootView obligatorio a nivel raíz
@@ -230,7 +230,7 @@ rm -rf node_modules/.cache
230
230
 
231
231
  ---
232
232
 
233
- ## Metro TLS (0.85+ / 0.86+)
233
+ ## Metro TLS (0.85+ / 0.85+)
234
234
 
235
235
  Desde RN 0.85, Metro acepta un objeto `server.tls` en `metro.config.js`, habilitando HTTPS y WSS (WebSocket seguro para Fast Refresh) durante el desarrollo local.
236
236
 
@@ -246,7 +246,7 @@ Desde RN 0.85, Metro acepta un objeto `server.tls` en `metro.config.js`, habilit
246
246
  ### Configuración
247
247
 
248
248
  ```javascript
249
- // metro.config.js (bare RN 0.85+ / 0.86+)
249
+ // metro.config.js (bare RN 0.85+ / 0.85+)
250
250
  const { getDefaultConfig } = require('@react-native/metro-config');
251
251
  const fs = require('fs');
252
252
 
@@ -2,7 +2,7 @@
2
2
  name: tdd-coach
3
3
  description: Test-Driven Development coach
4
4
  model: opus
5
- effort: high
5
+ effort: medium
6
6
  maxTurns: 8
7
7
  tools: [Read, Glob, Grep, Edit, Write, Bash, WebFetch, WebSearch]
8
8
  permissionMode: default
@@ -8,7 +8,7 @@ allowed-tools: Read, Glob, Bash, Grep
8
8
 
9
9
  Bienvenue ! Ce guide vous aide à découvrir la valeur de Claude Craft en moins de 10 minutes.
10
10
 
11
- 211 commandes peuvent sembler intimidantes — trouvons les 3 qui comptent le plus pour VOTRE projet, maintenant.
11
+ 220 commandes peuvent sembler intimidantes — trouvons les 3 qui comptent le plus pour VOTRE projet, maintenant.
12
12
 
13
13
  ## Étape 1 : Détection de Votre Stack Projet (30 secondes)
14
14
 
@@ -21,9 +21,7 @@ Analyse de votre projet pour identifier la stack technologique...
21
21
  - `pyproject.toml` ou `requirements.txt` → Python
22
22
  - `pubspec.yaml` → Flutter/Dart
23
23
  - `*.csproj` ou `*.sln` → C# / .NET
24
- - `Cargo.toml` Rust (Paperclip)
25
- - `go.mod` → Go
26
- - `mix.exs` → Elixir
24
+ - Paperclip is Node.js/TypeScript not auto-detected; install explicitly with `--tech=paperclip`
27
25
 
28
26
  2. Pour les projets JavaScript/TypeScript, vérifier les dépendances pour déterminer le framework :
29
27
  - Chercher `react`, `@angular/core`, `vue`, `react-native` dans les dépendances package.json
@@ -117,7 +115,7 @@ Basé sur votre stack, ces 3 commandes vous donneront des insights immédiats :
117
115
  3. ✓ /[commande-3] — [Explication en 2 phrases de la valeur]
118
116
  Pourquoi maintenant ? [1 phrase sur le bénéfice TTFV]
119
117
 
120
- Choisissez une commande à exécuter (tapez le numéro 1-3), ou passez pour explorer les 211 commandes avec /help
118
+ Choisissez une commande à exécuter (tapez le numéro 1-3), ou passez pour explorer les 220 commandes avec /help
121
119
  ```
122
120
 
123
121
  ## Étape 3 : Exécuter avec Commentaire Pédagogique (5 minutes)
@@ -185,7 +183,7 @@ C. Rejoindre la communauté
185
183
 
186
184
  📚 Ressources :
187
185
  - Guide quickstart complet : @docs/QUICKSTART.md (section "First 10 Minutes")
188
- - Toutes les 211 commandes : /help
186
+ - Toutes les 220 commandes : /help
189
187
  - Guides spécifiques à votre technologie : @.claude/references/[votre-tech]/
190
188
 
191
189
  ✓ Vous avez terminé vos 10 premières minutes avec Claude Craft !
@@ -221,7 +219,7 @@ Basé sur votre stack, ces 3 commandes vous donneront des insights immédiats :
221
219
  3. ✓ /react:bundle-analyze — Identifier grandes dépendances qui alourdissent votre bundle
222
220
  Pourquoi maintenant ? Chaque 100KB coûte de l'argent aux utilisateurs et ralentit le chargement — gains rapides ici.
223
221
 
224
- Choisissez une commande à exécuter (tapez le numéro 1-3), ou passez pour explorer les 211 commandes avec /help
222
+ Choisissez une commande à exécuter (tapez le numéro 1-3), ou passez pour explorer les 220 commandes avec /help
225
223
  ```
226
224
 
227
225
  **L'Utilisateur Tape : 1**
@@ -276,7 +274,7 @@ C. Rejoindre la communauté
276
274
 
277
275
  📚 Ressources :
278
276
  - Guide quickstart complet : @docs/QUICKSTART.md (section "First 10 Minutes")
279
- - Toutes les 211 commandes : /help
277
+ - Toutes les 220 commandes : /help
280
278
  - Guides spécifiques React : @.claude/references/react/
281
279
 
282
280
  ✓ Vous avez terminé vos 10 premières minutes avec Claude Craft !
@@ -81,7 +81,7 @@
81
81
  "hooks": [
82
82
  {
83
83
  "type": "command",
84
- "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env|\\.env\\.|credentials|secrets|private.*key|id_rsa)'; then echo \"BLOCKED: Cannot edit sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
84
+ "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env(\\.|$)|\\.envrc|credentials|secrets?|private.*key|id_(rsa|dsa|ecdsa|ed25519)|\\.pem$|\\.p(fx|12)$|\\.key$|\\.npmrc$|\\.netrc$|kubeconfig)'; then echo \"BLOCKED: Cannot edit sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
85
85
  }
86
86
  ]
87
87
  },
@@ -90,7 +90,7 @@
90
90
  "hooks": [
91
91
  {
92
92
  "type": "command",
93
- "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env|\\.env\\.|credentials|secrets|private.*key|id_rsa)'; then echo \"BLOCKED: Cannot write sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
93
+ "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env(\\.|$)|\\.envrc|credentials|secrets?|private.*key|id_(rsa|dsa|ecdsa|ed25519)|\\.pem$|\\.p(fx|12)$|\\.key$|\\.npmrc$|\\.netrc$|kubeconfig)'; then echo \"BLOCKED: Cannot write sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
94
94
  }
95
95
  ]
96
96
  }
@@ -101,7 +101,7 @@
101
101
  "hooks": [
102
102
  {
103
103
  "type": "command",
104
- "command": "OUTPUT_SIZE=$(jq -r '.tool_output // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Extract only the relevant information and summarize in under 20 lines.'; elif [ \"$OUTPUT_SIZE\" -gt 10000 ]; then echo 'NOTICE: Moderate output (>10KB). Focus on errors, warnings, and key results.'; fi; exit 0",
104
+ "command": "OUTPUT_SIZE=$(jq -r '.tool_response.stdout? // .tool_response? // .tool_result? // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Extract only the relevant information and summarize in under 20 lines.'; elif [ \"$OUTPUT_SIZE\" -gt 10000 ]; then echo 'NOTICE: Moderate output (>10KB). Focus on errors, warnings, and key results.'; fi; exit 0",
105
105
  "timeout": 3000
106
106
  }
107
107
  ]
@@ -111,7 +111,7 @@
111
111
  "hooks": [
112
112
  {
113
113
  "type": "command",
114
- "command": "OUTPUT_SIZE=$(jq -r '.tool_output // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Summarize key findings in under 20 lines.'; fi; exit 0",
114
+ "command": "OUTPUT_SIZE=$(jq -r '.tool_response.stdout? // .tool_response? // .tool_result? // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Summarize key findings in under 20 lines.'; fi; exit 0",
115
115
  "timeout": 3000
116
116
  }
117
117
  ]
@@ -279,7 +279,7 @@ resume_from:
279
279
  |--------|----------|
280
280
  | "Session introuvable" | Verifiez l'ID de session dans `.recette/sessions/` |
281
281
  | "Aucune erreur dans la session" | La session n'a pas d'erreurs a corriger |
282
- | "Sprint-status.yaml introuvable" | Initialisez BMAD avec `/bmad:init` |
282
+ | "Sprint-status.yaml introuvable" | Initialisez BMAD avec `/workflow:init` |
283
283
  | "Test RED n'echoue pas" | Le bug n'est peut-etre plus present, verifier manuellement |
284
284
 
285
285
  ## Bonnes Pratiques
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: reactnative-reviewer
3
- description: Spécialiste de la revue de code React Native 0.86 et Expo — New Architecture, navigation, performance mobile, analyse de bundle
3
+ description: Spécialiste de la revue de code React Native 0.85 et Expo — New Architecture, navigation, performance mobile, analyse de bundle
4
4
  model: haiku
5
5
  effort: low
6
6
  maxTurns: 6
@@ -10,11 +10,11 @@ permissionMode: default
10
10
  skills: [solid-principles, testing-reactnative, security-reactnative, architecture, navigation]
11
11
  ---
12
12
 
13
- # Agent Auditeur React Native 0.86 / Expo
13
+ # Agent Auditeur React Native 0.85 / Expo
14
14
 
15
15
  ## Identité
16
16
 
17
- Je suis un spécialiste de la revue de code React Native 0.86 et Expo. Mon approche est centrée sur les problèmes spécifiques au mobile : la New Architecture (JSI, Fabric, TurboModules), la navigation avec Expo Router, les performances à 60 FPS, la gestion de la taille du bundle, et les patterns de composition adaptés au mobile. Je ne fais pas un audit générique -- je détecte ce qui casse, ralentit ou complexifie inutilement une application React Native moderne utilisant la New Architecture par défaut.
17
+ Je suis un spécialiste de la revue de code React Native 0.85 et Expo. Mon approche est centrée sur les problèmes spécifiques au mobile : la New Architecture (JSI, Fabric, TurboModules), la navigation avec Expo Router, les performances à 60 FPS, la gestion de la taille du bundle, et les patterns de composition adaptés au mobile. Je ne fais pas un audit générique -- je détecte ce qui casse, ralentit ou complexifie inutilement une application React Native moderne utilisant la New Architecture par défaut.
18
18
 
19
19
  ## Système de notation (100 points)
20
20
 
@@ -411,7 +411,7 @@ import { format } from 'date-fns';
411
411
  ## Format de rapport d'audit
412
412
 
413
413
  ```markdown
414
- # Rapport d'audit React Native 0.86 / Expo
414
+ # Rapport d'audit React Native 0.85 / Expo
415
415
 
416
416
  ## Projet : [Nom du projet]
417
417
  **Date :** [Date]
@@ -8,9 +8,9 @@ Ce document couvre les outils essentiels pour le développement React Native ave
8
8
 
9
9
  ## Prérequis Système
10
10
 
11
- ### Node.js >= 22 LTS (requis pour RN 0.86)
11
+ ### Node.js >= 22 LTS (requis pour RN 0.85)
12
12
 
13
- React Native 0.86 requiert **Node.js 22.x LTS** minimum (RN 0.85 nécessitait Node 20). La version recommandée est **Node.js 22.x active LTS**.
13
+ React Native 0.85 requiert **Node.js 22.x LTS** minimum (RN 0.85 nécessitait Node 20). La version recommandée est **Node.js 22.x active LTS**.
14
14
 
15
15
  ```bash
16
16
  # Vérifier la version
@@ -22,11 +22,11 @@ nvm use 22
22
22
  nvm alias default 22
23
23
  ```
24
24
 
25
- > Les versions Node < 22 ne sont plus supportées avec RN 0.86. Mettre à jour avant de migrer.
25
+ > Les versions Node < 22 ne sont plus supportées avec RN 0.85. Mettre à jour avant de migrer.
26
26
 
27
27
  ### React Native Gesture Handler 3.0.0 — Changements Breaking
28
28
 
29
- RNGH 3.0.0 introduit des changements de rupture avec RN 0.86 :
29
+ RNGH 3.0.0 introduit des changements de rupture avec RN 0.85 :
30
30
 
31
31
  ```typescript
32
32
  // ✅ RNGH 3.0 — GestureHandlerRootView obligatoire au niveau racine
@@ -230,7 +230,7 @@ rm -rf node_modules/.cache
230
230
 
231
231
  ---
232
232
 
233
- ## Metro TLS (0.85+ / 0.86+)
233
+ ## Metro TLS (0.85+ / 0.85+)
234
234
 
235
235
  Depuis RN 0.85, Metro accepte un objet `server.tls` dans `metro.config.js`, activant HTTPS et WSS (WebSocket sécurisé pour Fast Refresh) pendant le développement local.
236
236
 
@@ -246,7 +246,7 @@ Depuis RN 0.85, Metro accepte un objet `server.tls` dans `metro.config.js`, acti
246
246
  ### Configuration
247
247
 
248
248
  ```javascript
249
- // metro.config.js (bare RN 0.85+ / 0.86+)
249
+ // metro.config.js (bare RN 0.85+ / 0.85+)
250
250
  const { getDefaultConfig } = require('@react-native/metro-config');
251
251
  const fs = require('fs');
252
252
 
@@ -2,7 +2,7 @@
2
2
  name: tdd-coach
3
3
  description: Test-Driven Development coach
4
4
  model: opus
5
- effort: high
5
+ effort: medium
6
6
  maxTurns: 8
7
7
  tools: [Read, Glob, Grep, Edit, Write, Bash, WebFetch, WebSearch]
8
8
  permissionMode: default
@@ -8,7 +8,7 @@ allowed-tools: Read, Glob, Bash, Grep
8
8
 
9
9
  Welcome! This wizard helps you discover Claude Craft's value in under 10 minutes.
10
10
 
11
- 211 commands can feel overwhelming — let's find the 3 that matter most for YOUR project right now.
11
+ 220 commands can feel overwhelming — let's find the 3 that matter most for YOUR project right now.
12
12
 
13
13
  ## Step 1: Detect Your Project Stack (30 seconds)
14
14
 
@@ -21,9 +21,7 @@ Scanning your project to identify the technology stack...
21
21
  - `pyproject.toml` or `requirements.txt` → Python
22
22
  - `pubspec.yaml` → Flutter/Dart
23
23
  - `*.csproj` or `*.sln` → C# / .NET
24
- - `Cargo.toml` Rust (Paperclip)
25
- - `go.mod` → Go
26
- - `mix.exs` → Elixir
24
+ - Paperclip is Node.js/TypeScript not auto-detected; install explicitly with `--tech=paperclip`
27
25
 
28
26
  2. For JavaScript/TypeScript projects, check dependencies to determine framework:
29
27
  - Look for `react`, `@angular/core`, `vue`, `react-native` in package.json dependencies
@@ -117,7 +115,7 @@ Based on your stack, these 3 commands will give you immediate insights:
117
115
  3. ✓ /[command-3] — [2-sentence explanation of value]
118
116
  Why now? [1 sentence on TTFV benefit]
119
117
 
120
- Choose one to run (type the number 1-3), or skip to explore all 211 commands with /help
118
+ Choose one to run (type the number 1-3), or skip to explore all 220 commands with /help
121
119
  ```
122
120
 
123
121
  ## Step 3: Execute with Pedagogical Commentary (5 minutes)
@@ -185,7 +183,7 @@ C. Join the community
185
183
 
186
184
  📚 Resources:
187
185
  - Full quickstart guide: @docs/QUICKSTART.md (section "First 10 Minutes")
188
- - All 211 commands: /help
186
+ - All 220 commands: /help
189
187
  - Technology-specific guides: @.claude/references/[your-tech]/
190
188
 
191
189
  ✓ You've completed your first 10 minutes with Claude Craft!
@@ -221,7 +219,7 @@ Based on your stack, these 3 commands will give you immediate insights:
221
219
  3. ✓ /react:bundle-analyze — Identify large dependencies bloating your bundle
222
220
  Why now? Every 100KB costs users money and slows load time — quick wins here.
223
221
 
224
- Choose one to run (type the number 1-3), or skip to explore all 211 commands with /help
222
+ Choose one to run (type the number 1-3), or skip to explore all 220 commands with /help
225
223
  ```
226
224
 
227
225
  **User Types: 1**
@@ -276,7 +274,7 @@ C. Join the community
276
274
 
277
275
  📚 Resources:
278
276
  - Full quickstart guide: @docs/QUICKSTART.md (section "First 10 Minutes")
279
- - All 211 commands: /help
277
+ - All 220 commands: /help
280
278
  - React-specific guides: @.claude/references/react/
281
279
 
282
280
  ✓ You've completed your first 10 minutes with Claude Craft!
@@ -81,7 +81,7 @@
81
81
  "hooks": [
82
82
  {
83
83
  "type": "command",
84
- "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env|\\.env\\.|credentials|secrets|private.*key|id_rsa)'; then echo \"BLOCKED: Cannot edit sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
84
+ "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env(\\.|$)|\\.envrc|credentials|secrets?|private.*key|id_(rsa|dsa|ecdsa|ed25519)|\\.pem$|\\.p(fx|12)$|\\.key$|\\.npmrc$|\\.netrc$|kubeconfig)'; then echo \"BLOCKED: Cannot edit sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
85
85
  }
86
86
  ]
87
87
  },
@@ -90,7 +90,7 @@
90
90
  "hooks": [
91
91
  {
92
92
  "type": "command",
93
- "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env|\\.env\\.|credentials|secrets|private.*key|id_rsa)'; then echo \"BLOCKED: Cannot write sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
93
+ "command": "FILEPATH=$(jq -r '.tool_input.file_path // empty'); if printf '%s' \"$FILEPATH\" | grep -qE '(\\.env(\\.|$)|\\.envrc|credentials|secrets?|private.*key|id_(rsa|dsa|ecdsa|ed25519)|\\.pem$|\\.p(fx|12)$|\\.key$|\\.npmrc$|\\.netrc$|kubeconfig)'; then echo \"BLOCKED: Cannot write sensitive file: $FILEPATH\" >&2 && exit 2; fi; exit 0"
94
94
  }
95
95
  ]
96
96
  }
@@ -101,7 +101,7 @@
101
101
  "hooks": [
102
102
  {
103
103
  "type": "command",
104
- "command": "OUTPUT_SIZE=$(jq -r '.tool_output // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Extract only the relevant information and summarize in under 20 lines.'; elif [ \"$OUTPUT_SIZE\" -gt 10000 ]; then echo 'NOTICE: Moderate output (>10KB). Focus on errors, warnings, and key results.'; fi; exit 0",
104
+ "command": "OUTPUT_SIZE=$(jq -r '.tool_response.stdout? // .tool_response? // .tool_result? // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Extract only the relevant information and summarize in under 20 lines.'; elif [ \"$OUTPUT_SIZE\" -gt 10000 ]; then echo 'NOTICE: Moderate output (>10KB). Focus on errors, warnings, and key results.'; fi; exit 0",
105
105
  "timeout": 3000
106
106
  }
107
107
  ]
@@ -111,7 +111,7 @@
111
111
  "hooks": [
112
112
  {
113
113
  "type": "command",
114
- "command": "OUTPUT_SIZE=$(jq -r '.tool_output // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Summarize key findings in under 20 lines.'; fi; exit 0",
114
+ "command": "OUTPUT_SIZE=$(jq -r '.tool_response.stdout? // .tool_response? // .tool_result? // empty' | wc -c); if [ \"$OUTPUT_SIZE\" -gt 50000 ]; then echo 'NOTICE: Large output (>50KB). Summarize key findings in under 20 lines.'; fi; exit 0",
115
115
  "timeout": 3000
116
116
  }
117
117
  ]
@@ -279,7 +279,7 @@ resume_from:
279
279
  |------|---------|
280
280
  | "Sessao nao encontrada" | Verifique o ID de sessao em `.recette/sessions/` |
281
281
  | "Sem erros na sessao" | A sessao nao tem erros a corrigir |
282
- | "sprint-status.yaml nao encontrado" | Inicialize o BMAD com `/bmad:init` |
282
+ | "sprint-status.yaml nao encontrado" | Inicialize o BMAD com `/workflow:init` |
283
283
  | "Teste RED nao falha" | O bug pode nao existir mais, verificar manualmente |
284
284
 
285
285
  ## Melhores Praticas
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: reactnative-reviewer
3
- description: Especialista em revisao de codigo React Native 0.86 e Expo SDK 56 — New Architecture, navegacao, performance mobile, analise de bundle
3
+ description: Especialista em revisao de codigo React Native 0.85 e Expo SDK 56 — New Architecture, navegacao, performance mobile, analise de bundle
4
4
  model: haiku
5
5
  effort: low
6
6
  maxTurns: 6
@@ -10,11 +10,11 @@ permissionMode: default
10
10
  skills: [solid-principles, testing-reactnative, security-reactnative, architecture, navigation]
11
11
  ---
12
12
 
13
- # Agente Auditor React Native 0.86 / Expo
13
+ # Agente Auditor React Native 0.85 / Expo
14
14
 
15
15
  ## Identidade
16
16
 
17
- Sou um especialista em revisao de codigo React Native 0.86 e Expo. Minha abordagem e centrada nos problemas especificos do mobile: a New Architecture (JSI, Fabric, TurboModules), a navegacao com Expo Router, as performances a 60 FPS, a gestao do tamanho do bundle, e os padroes de composicao adaptados ao mobile. Nao faco uma auditoria generica -- detecto o que quebra, desacelera ou complexifica desnecessariamente uma aplicacao React Native moderna utilizando a New Architecture por padrao.
17
+ Sou um especialista em revisao de codigo React Native 0.85 e Expo. Minha abordagem e centrada nos problemas especificos do mobile: a New Architecture (JSI, Fabric, TurboModules), a navegacao com Expo Router, as performances a 60 FPS, a gestao do tamanho do bundle, e os padroes de composicao adaptados ao mobile. Nao faco uma auditoria generica -- detecto o que quebra, desacelera ou complexifica desnecessariamente uma aplicacao React Native moderna utilizando a New Architecture por padrao.
18
18
 
19
19
  ## Sistema de pontuacao (100 pontos)
20
20
 
@@ -411,7 +411,7 @@ import { format } from 'date-fns';
411
411
  ## Formato do relatorio de auditoria
412
412
 
413
413
  ```markdown
414
- # Relatorio de auditoria React Native 0.86 / Expo
414
+ # Relatorio de auditoria React Native 0.85 / Expo
415
415
 
416
416
  ## Projeto: [Nome do projeto]
417
417
  **Data:** [Data]
@@ -8,9 +8,9 @@ Este documento cobre as ferramentas essenciais para o desenvolvimento React Nati
8
8
 
9
9
  ## Requisitos do Sistema
10
10
 
11
- ### Node.js >= 22 LTS (obrigatório para RN 0.86)
11
+ ### Node.js >= 22 LTS (obrigatório para RN 0.85)
12
12
 
13
- React Native 0.86 requer **Node.js 22.x LTS** no mínimo (o RN 0.85 exigia Node 20). A versão recomendada é **Node.js 22.x active LTS**.
13
+ React Native 0.85 requer **Node.js 22.x LTS** no mínimo (o RN 0.85 exigia Node 20). A versão recomendada é **Node.js 22.x active LTS**.
14
14
 
15
15
  ```bash
16
16
  # Verificar versão
@@ -22,11 +22,11 @@ nvm use 22
22
22
  nvm alias default 22
23
23
  ```
24
24
 
25
- > Versões Node < 22 não são mais suportadas com RN 0.86. Atualizar antes de migrar.
25
+ > Versões Node < 22 não são mais suportadas com RN 0.85. Atualizar antes de migrar.
26
26
 
27
27
  ### React Native Gesture Handler 3.0.0 — Mudanças Breaking
28
28
 
29
- RNGH 3.0.0 introduz mudanças breaking com RN 0.86:
29
+ RNGH 3.0.0 introduz mudanças breaking com RN 0.85:
30
30
 
31
31
  ```typescript
32
32
  // ✅ RNGH 3.0 — GestureHandlerRootView obrigatório no nível raiz
@@ -230,7 +230,7 @@ rm -rf node_modules/.cache
230
230
 
231
231
  ---
232
232
 
233
- ## Metro TLS (0.85+ / 0.86+)
233
+ ## Metro TLS (0.85+ / 0.85+)
234
234
 
235
235
  Desde o RN 0.85, o Metro aceita um objeto `server.tls` no `metro.config.js`, habilitando HTTPS e WSS (WebSocket seguro para Fast Refresh) durante o desenvolvimento local.
236
236
 
@@ -246,7 +246,7 @@ Desde o RN 0.85, o Metro aceita um objeto `server.tls` no `metro.config.js`, hab
246
246
  ### Configuração
247
247
 
248
248
  ```javascript
249
- // metro.config.js (bare RN 0.85+ / 0.86+)
249
+ // metro.config.js (bare RN 0.85+ / 0.85+)
250
250
  const { getDefaultConfig } = require('@react-native/metro-config');
251
251
  const fs = require('fs');
252
252