claudeos-core 1.2.3 → 1.3.0

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 (44) hide show
  1. package/CHANGELOG.md +66 -1
  2. package/README.de.md +41 -6
  3. package/README.es.md +42 -6
  4. package/README.fr.md +42 -6
  5. package/README.hi.md +42 -6
  6. package/README.ja.md +43 -6
  7. package/README.ko.md +42 -6
  8. package/README.md +53 -11
  9. package/README.ru.md +42 -6
  10. package/README.vi.md +42 -6
  11. package/README.zh-CN.md +42 -6
  12. package/bin/cli.js +171 -36
  13. package/bootstrap.sh +72 -23
  14. package/content-validator/index.js +9 -4
  15. package/health-checker/index.js +4 -3
  16. package/lib/safe-fs.js +110 -0
  17. package/manifest-generator/index.js +16 -20
  18. package/package.json +4 -2
  19. package/pass-json-validator/index.js +3 -5
  20. package/pass-prompts/templates/java-spring/pass1.md +3 -0
  21. package/pass-prompts/templates/java-spring/pass2.md +3 -3
  22. package/pass-prompts/templates/java-spring/pass3.md +17 -0
  23. package/pass-prompts/templates/kotlin-spring/pass1.md +3 -0
  24. package/pass-prompts/templates/kotlin-spring/pass2.md +5 -5
  25. package/pass-prompts/templates/kotlin-spring/pass3.md +17 -0
  26. package/pass-prompts/templates/node-express/pass1.md +3 -0
  27. package/pass-prompts/templates/node-express/pass2.md +4 -1
  28. package/pass-prompts/templates/node-express/pass3.md +20 -1
  29. package/pass-prompts/templates/node-nextjs/pass1.md +13 -3
  30. package/pass-prompts/templates/node-nextjs/pass2.md +6 -4
  31. package/pass-prompts/templates/node-nextjs/pass3.md +20 -1
  32. package/pass-prompts/templates/python-django/pass1.md +3 -1
  33. package/pass-prompts/templates/python-django/pass2.md +4 -4
  34. package/pass-prompts/templates/python-django/pass3.md +18 -0
  35. package/pass-prompts/templates/python-fastapi/pass1.md +3 -0
  36. package/pass-prompts/templates/python-fastapi/pass2.md +4 -4
  37. package/pass-prompts/templates/python-fastapi/pass3.md +18 -0
  38. package/plan-installer/domain-grouper.js +74 -0
  39. package/plan-installer/index.js +43 -1303
  40. package/plan-installer/prompt-generator.js +99 -0
  41. package/plan-installer/stack-detector.js +326 -0
  42. package/plan-installer/structure-scanner.js +783 -0
  43. package/plan-validator/index.js +84 -20
  44. package/sync-checker/index.js +7 -3
package/CHANGELOG.md CHANGED
@@ -1,6 +1,71 @@
1
1
  # Changelog
2
2
 
3
- ## [1.2.3] — 2026-04-03
3
+ ## [1.3.0] — 2026-04-03
4
+
5
+ ### Added
6
+ - **`lib/safe-fs.js`** — Shared safe filesystem utilities (readFileSafe, readJsonSafe, existsSafe, ensureDir, writeFileSafe, statSafe)
7
+ - **plan-installer modularization** — Split into 4 sub-modules: stack-detector, structure-scanner, domain-grouper, prompt-generator
8
+ - **57 unit tests** across 4 test files: stack-detector (16), domain-grouper (12), plan-validator (11), structure-scanner (4)
9
+ - **Pass 3 CRITICAL directives** (all 6 stacks) — Package Manager/Build Tool Consistency, Cross-file Consistency (rules vs standards), CLAUDE.md Reference Table Completeness
10
+ - **Pass 1/2 EXACT capture** (all 6 stacks) — Exact import paths, component entry file patterns, styling utility imports, UI library package names, custom response wrapper method signatures
11
+ - **bootstrap.sh prerequisite checks** — Node.js v18+, Claude CLI, perl existence validation before execution
12
+ - **bootstrap.sh EXIT trap** — Automatic temp file cleanup on Ctrl+C, errors, or normal exit
13
+ - **plan-validator mode validation** — Rejects unknown modes (only --check/--refresh/--execute)
14
+ - **plan-validator stale-report.json integration** — Results now included in consolidated health report
15
+ - **sync-checker mappings guard** — Validates `sm.mappings` array exists before processing
16
+
17
+ ### Changed
18
+ - **`plan-validator` extractCodeBlocks** — Rewritten from regex to indexOf-based parser with nested code fence depth tracking (fixes false drift reports on files containing ``` blocks)
19
+ - **`plan-validator` replaceCodeBlock** — Rewritten fence detection: `[a-zA-Z]` language tag check instead of heuristic `trim().length > 0`; fixed off-by-one in searchPos that missed consecutive fences
20
+ - **`plan-validator` module.exports** — Now exports functions for testing; uses `require.main === module` guard
21
+ - **`plan-validator` content comparison** — `trimEnd()` → `replace(/\n+$/, "")` (normalize trailing newlines only, preserve trailing spaces)
22
+ - **Path traversal checks** — `startsWith(ROOT)` → `startsWith(ROOT + path.sep)` in plan-validator and sync-checker (prevents sibling directory bypass)
23
+ - **`stack-detector` h2 detection** — `includes("h2")` → `/\bh2\b/` word boundary in Gradle, Maven, and YAML (prevents oauth2/http2/cache2k false positives)
24
+ - **`stack-detector` regex fix** — `[^'")\\s]` → `[^'")\s]` in spring-boot-dependencies version pattern
25
+ - **`stack-detector` version extraction** — TypeScript and engines.node now use `match(/(\d+(?:\.\d+)*)/)` instead of `replace(/[^0-9.]/g, "")` (correctly handles range specifiers like `>=5.0 <6`)
26
+ - **`stack-detector` application*.yml ignore** — Added `**/build/**`, `**/target/**`, `**/.gradle/**` to prevent scanning build output
27
+ - **`stack-detector` vite.config fallback** — Removed redundant inner `!stack.frontend` check
28
+ - **`structure-scanner` [param] filter** — Next.js dynamic route directories (`[id]`, `[slug]`, `[...catchAll]`) excluded from frontend domains
29
+ - **`structure-scanner` lib prefix fix** — `startsWith(libName)` → `startsWith(libName + "/")` (prevents prefix overlap between shared-lib and shared-lib-utils)
30
+ - **`structure-scanner` -lib no-op removed** — `.replace(/-lib$/, "-lib")` (did nothing) removed
31
+ - **`structure-scanner` FastAPI fallback** — `app/*/` → `{app,src/app}/*/` for broader project structure support
32
+ - **`structure-scanner` Windows glob fix** — Added trailing slash normalization and backslash-to-forward-slash conversion for glob patterns from Windows glob results
33
+ - **`domain-grouper` pre-check** — Flush current group *before* adding domain if it would exceed MAX_FILES_PER_GROUP (prevents group overshoot)
34
+ - **`domain-grouper` isBackend** — Simplified from `!!stack.framework && !["nextjs","react","vue"].includes(stack.framework)` to `!!stack.framework` (frontend values are in `stack.frontend`, not `stack.framework`)
35
+ - **`prompt-generator` type detection** — Index-based type assignment prevents misclassification when backend and frontend use same template
36
+ - **`prompt-generator` data.fetch regex** — `data.fetch` → `data[.\-]fetch` (escaped regex dot)
37
+ - **`prompt-generator` m flag** — Removed unnecessary `m` flag from footer-stripping regex
38
+ - **`content-validator` table detection** — `!c.includes("|")` → `/\|.+\|.+\|/` markdown table pattern (previous check was always passing)
39
+ - **`content-validator` section keywords** — `includes()` → regex with word boundary `(^|#|\\s)` (prevents "running" matching "Run")
40
+ - **`health-checker` summary key** — `summary.status` → `summary.healthStatus` (avoids overwriting sync-checker's `status` key)
41
+ - **`manifest-generator` stale-report** — Merge-based init instead of overwrite; `totalIssues`/`status` reset to 0/"initial" each run
42
+ - **`cli.js` totalGroups validation** — Validates type, range, and existence before entering Pass 1 loop
43
+ - **`cli.js` pass1 JSON integrity** — Checks `analysisPerDomain` key exists before skipping; re-runs malformed files
44
+ - **`cli.js` pass2/pass3 prompt guard** — Validates prompt file exists with friendly error before reading
45
+ - **`cli.js` Windows path normalization** — `injectProjectRoot` converts backslashes to forward slashes for Claude prompts
46
+ - **`cli.js` symlink loop protection** — `countFiles` uses `visited` Set + `realpathSync` to prevent infinite recursion
47
+ - **`cli.js` dead code removal** — Removed unreachable `-h`/`-v` comparisons (already mapped by parseArgs)
48
+ - **`cli.js` bare catch** — `catch {}` → `catch (e)` for debuggability
49
+ - **`bootstrap.sh` stdin prompt delivery** — `claude -p "$PROMPT"` → `cat file | claude -p` (avoids ARG_MAX on large prompts)
50
+ - **`bootstrap.sh` dead code removal** — Removed unused `inject_project_root` function
51
+ - **`bootstrap.sh` --lang guard** — Validates `$2` exists before `shift 2`
52
+ - **`bootstrap.sh` read -rp** — Added `-r` flag to prevent backslash escape interpretation
53
+ - **`bootstrap.sh` dynamic language count** — Hardcoded `10` → `${#SUPPORTED_LANGS[@]}`
54
+ - **`bootstrap.sh` Node version check** — Added numeric validation before `-lt` comparison
55
+ - **`bootstrap.sh` file count** — Added `/generated/` and anchored `/node_modules/` exclusion (matches cli.js)
56
+ - **`bootstrap.sh` env cleanup** — `unset _DOMAIN_LIST _PASS_NUM _PROJECT_ROOT` after use
57
+ - **`pass-json-validator`** — Removed redundant `.filter(.endsWith(".json"))` after glob
58
+ - **`safe-fs.js` statSafe** — Read-first order (readFileSync before statSync) to reduce TOCTOU window
59
+ - **Box drawing alignment** — All 7 tool headers: border `╔═...═╗` width matched to `║...║` content width
60
+ - **All 10 READMEs** — `sed` → `perl` in manual steps, `find` command with `/generated/` exclusion, localized frontend comments, updated Contributing test count
61
+
62
+ ### Fixed
63
+ - **`plan-validator`**: `extractCodeBlocks` regex `[\s\S]*?` truncated at inner code fences → indexOf-based parser
64
+ - **`plan-validator`**: `replaceCodeBlock` misidentified closing fences with trailing text as opening fences
65
+ - **`plan-validator`**: off-by-one in `searchPos` (used `nextNewline + 1` instead of `nextNewline`) caused consecutive fences to be missed
66
+ - **`bootstrap.sh`**: Pass 1 failure left temp file behind (now cleaned on both success and failure paths)
67
+
68
+ ## [1.2.4] — 2026-04-03
4
69
 
5
70
  ### Changed
6
71
  - **50.sync/ rules role clarified** — no longer described as "hooks fallback"; now the primary sync reminder mechanism (`npx claudeos-core refresh`)
package/README.de.md CHANGED
@@ -107,9 +107,43 @@ npx claudeos-core init
107
107
 
108
108
  # Option D: git clone (für Entwicklung/Beiträge)
109
109
  git clone https://github.com/claudeos-core/claudeos-core.git claudeos-core-tools
110
+
111
+ # Plattformübergreifend (PowerShell, CMD, Bash, Zsh — jedes Terminal)
112
+ node claudeos-core-tools/bin/cli.js init
113
+
114
+ # Nur Linux/macOS (nur Bash)
110
115
  bash claudeos-core-tools/bootstrap.sh
111
116
  ```
112
117
 
118
+ ### Ausgabesprache (10 Sprachen)
119
+
120
+ Wenn Sie `init` ohne `--lang` ausführen, erscheint ein interaktiver Selektor mit Pfeiltasten:
121
+
122
+ ```
123
+ ╔══════════════════════════════════════════════════╗
124
+ ║ Select generated document language (required) ║
125
+ ╚══════════════════════════════════════════════════╝
126
+
127
+ Die generierten Dateien (CLAUDE.md, Standards, Rules,
128
+ Skills, Guides) werden auf Deutsch verfasst.
129
+
130
+ 1. en — English
131
+ ...
132
+ ❯ 10. de — Deutsch (German)
133
+
134
+ ↑↓ Move ↵ Select
135
+ ```
136
+
137
+ Die Beschreibung wechselt beim Navigieren in die entsprechende Sprache. Um den Selektor zu überspringen:
138
+
139
+ ```bash
140
+ npx claudeos-core init --lang de # Deutsch
141
+ npx claudeos-core init --lang en # English
142
+ npx claudeos-core init --lang ko # 한국어
143
+ ```
144
+
145
+ > **Hinweis:** Dies ändert nur die Sprache der generierten Dokumentationsdateien. Die Codeanalyse (Pass 1–2) läuft immer auf Englisch; nur das generierte Ergebnis (Pass 3) wird in der gewählten Sprache geschrieben.
146
+
113
147
  Das war's. Nach 5–18 Minuten ist die gesamte Dokumentation generiert und einsatzbereit.
114
148
 
115
149
  ### Manuelle Schritt-für-Schritt-Installation
@@ -171,12 +205,12 @@ cat claudeos-core/generated/domain-groups.json | node -e "
171
205
  "
172
206
 
173
207
  # Run Pass 1 for group 1:
174
- cat claudeos-core/generated/pass1-backend-prompt.md \
175
- | sed "s/{{DOMAIN_GROUP}}/user, order, product/g" \
176
- | sed "s/{{PASS_NUM}}/1/g" \
177
- | claude -p --dangerously-skip-permissions
208
+ cp claudeos-core/generated/pass1-backend-prompt.md /tmp/_pass1.md
209
+ DOMAIN_LIST="user, order, product" PASS_NUM=1 \
210
+ perl -pi -e 's/\{\{DOMAIN_GROUP\}\}/$ENV{DOMAIN_LIST}/g; s/\{\{PASS_NUM\}\}/$ENV{PASS_NUM}/g' /tmp/_pass1.md
211
+ cat /tmp/_pass1.md | claude -p --dangerously-skip-permissions
178
212
 
179
- # For frontend groups, use pass1-frontend-prompt.md instead
213
+ # Für Frontend-Gruppen verwenden Sie pass1-frontend-prompt.md
180
214
  ```
181
215
 
182
216
  **Prüfen:** `ls claudeos-core/generated/pass1-*.json` sollte pro Gruppe eine JSON zeigen.
@@ -218,7 +252,7 @@ node claudeos-core-tools/pass-json-validator/index.js # JSON format
218
252
  #### Step 8: Ergebnisse überprüfen
219
253
 
220
254
  ```bash
221
- find .claude claudeos-core -type f | grep -v node_modules | wc -l
255
+ find .claude claudeos-core -type f | grep -v node_modules | grep -v '/generated/' | wc -l
222
256
  head -30 CLAUDE.md
223
257
  ls .claude/rules/*/
224
258
  ```
@@ -421,6 +455,7 @@ npx claudeos-core restore
421
455
  | **Projektspezifische Ausgabe** | ✅ Jede Datei spiegelt Ihre Muster wider | ❌ Generische Befehle | Teilweise | ❌ Einheitsgröße |
422
456
  | **Multi-Stack** | ✅ Auto-Erkennung + separate Analyse | ❌ Stack-agnostisch | Manuell | Variiert |
423
457
  | **Kotlin + CQRS/BFF** | ✅ Multi-Modul, Command/Query-Trennung | ❌ | ❌ | ❌ |
458
+ | **Mehrsprachig** | ✅ 10 Sprachen, interaktiver Selektor | ❌ | ❌ | ❌ |
424
459
  | **Selbstverifizierung** | ✅ 5 Validierungstools | ❌ | ❌ | ❌ |
425
460
  | **Backup / Wiederherstellung** | ✅ Master Plan System | ❌ | ❌ | ❌ |
426
461
  | **Einrichtungszeit** | ~5–18 Min (automatisch) | ~5 Min (manuelle Konfig) | Stunden–Tage | ~5 Min |
package/README.es.md CHANGED
@@ -107,9 +107,44 @@ npx claudeos-core init
107
107
 
108
108
  # Opción D: git clone (para desarrollo/contribución)
109
109
  git clone https://github.com/claudeos-core/claudeos-core.git claudeos-core-tools
110
+
111
+ # Multiplataforma (PowerShell, CMD, Bash, Zsh — cualquier terminal)
112
+ node claudeos-core-tools/bin/cli.js init
113
+
114
+ # Solo Linux/macOS (solo Bash)
110
115
  bash claudeos-core-tools/bootstrap.sh
111
116
  ```
112
117
 
118
+ ### Idioma de salida (10 idiomas)
119
+
120
+ Al ejecutar `init` sin `--lang`, aparece un selector interactivo con teclas de flecha:
121
+
122
+ ```
123
+ ╔══════════════════════════════════════════════════╗
124
+ ║ Select generated document language (required) ║
125
+ ╚══════════════════════════════════════════════════╝
126
+
127
+ Los archivos generados (CLAUDE.md, Standards, Rules,
128
+ Skills, Guides) se escribirán en español.
129
+
130
+ 1. en — English
131
+ ...
132
+ ❯ 5. es — Español (Spanish)
133
+ ...
134
+
135
+ ↑↓ Move ↵ Select
136
+ ```
137
+
138
+ La descripción cambia al idioma seleccionado al navegar. Para saltar el selector:
139
+
140
+ ```bash
141
+ npx claudeos-core init --lang es # Español
142
+ npx claudeos-core init --lang en # English
143
+ npx claudeos-core init --lang ko # 한국어
144
+ ```
145
+
146
+ > **Nota:** Solo cambia el idioma de los archivos de documentación generados. El análisis de código (Pass 1–2) siempre se ejecuta en inglés; solo la salida generada (Pass 3) se escribe en el idioma elegido.
147
+
113
148
  Eso es todo. Después de 5–18 minutos, toda la documentación estará generada y lista para usar.
114
149
 
115
150
  ### Instalación Manual Paso a Paso
@@ -171,12 +206,12 @@ cat claudeos-core/generated/domain-groups.json | node -e "
171
206
  "
172
207
 
173
208
  # Run Pass 1 for group 1:
174
- cat claudeos-core/generated/pass1-backend-prompt.md \
175
- | sed "s/{{DOMAIN_GROUP}}/user, order, product/g" \
176
- | sed "s/{{PASS_NUM}}/1/g" \
177
- | claude -p --dangerously-skip-permissions
209
+ cp claudeos-core/generated/pass1-backend-prompt.md /tmp/_pass1.md
210
+ DOMAIN_LIST="user, order, product" PASS_NUM=1 \
211
+ perl -pi -e 's/\{\{DOMAIN_GROUP\}\}/$ENV{DOMAIN_LIST}/g; s/\{\{PASS_NUM\}\}/$ENV{PASS_NUM}/g' /tmp/_pass1.md
212
+ cat /tmp/_pass1.md | claude -p --dangerously-skip-permissions
178
213
 
179
- # For frontend groups, use pass1-frontend-prompt.md instead
214
+ # Para grupos frontend, use pass1-frontend-prompt.md
180
215
  ```
181
216
 
182
217
  **Verificar:** `ls claudeos-core/generated/pass1-*.json` debe mostrar un JSON por grupo.
@@ -218,7 +253,7 @@ node claudeos-core-tools/pass-json-validator/index.js # JSON format
218
253
  #### Step 8: Verificar los resultados
219
254
 
220
255
  ```bash
221
- find .claude claudeos-core -type f | grep -v node_modules | wc -l
256
+ find .claude claudeos-core -type f | grep -v node_modules | grep -v '/generated/' | wc -l
222
257
  head -30 CLAUDE.md
223
258
  ls .claude/rules/*/
224
259
  ```
@@ -421,6 +456,7 @@ npx claudeos-core restore
421
456
  | **Salida específica del proyecto** | ✅ Cada archivo refleja tus patrones | ❌ Comandos genéricos | Parcial | ❌ Talla única |
422
457
  | **Multi-stack** | ✅ Auto-detección + análisis separado | ❌ Agnóstico al stack | Manual | Variable |
423
458
  | **Kotlin + CQRS/BFF** | ✅ Multi-module, Command/Query split | ❌ | ❌ | ❌ |
459
+ | **Multi-idioma** | ✅ 10 idiomas, selector interactivo | ❌ | ❌ | ❌ |
424
460
  | **Auto-verificación** | ✅ 5 herramientas de validación | ❌ | ❌ | ❌ |
425
461
  | **Backup / Restauración** | ✅ Sistema Master Plan | ❌ | ❌ | ❌ |
426
462
  | **Tiempo de configuración** | ~5–18min (automático) | ~5min (config manual) | Horas–Días | ~5min |
package/README.fr.md CHANGED
@@ -107,9 +107,44 @@ npx claudeos-core init
107
107
 
108
108
  # Option D : git clone (pour développement/contribution)
109
109
  git clone https://github.com/claudeos-core/claudeos-core.git claudeos-core-tools
110
+
111
+ # Multiplateforme (PowerShell, CMD, Bash, Zsh — tout terminal)
112
+ node claudeos-core-tools/bin/cli.js init
113
+
114
+ # Linux/macOS uniquement (Bash uniquement)
110
115
  bash claudeos-core-tools/bootstrap.sh
111
116
  ```
112
117
 
118
+ ### Langue de sortie (10 langues)
119
+
120
+ En exécutant `init` sans `--lang`, un sélecteur interactif avec les touches fléchées apparaît :
121
+
122
+ ```
123
+ ╔══════════════════════════════════════════════════╗
124
+ ║ Select generated document language (required) ║
125
+ ╚══════════════════════════════════════════════════╝
126
+
127
+ Les fichiers générés (CLAUDE.md, Standards, Rules,
128
+ Skills, Guides) seront rédigés en français.
129
+
130
+ 1. en — English
131
+ ...
132
+ ❯ 9. fr — Français (French)
133
+ ...
134
+
135
+ ↑↓ Move ↵ Select
136
+ ```
137
+
138
+ La description change dans la langue correspondante lors de la navigation. Pour passer le sélecteur :
139
+
140
+ ```bash
141
+ npx claudeos-core init --lang fr # Français
142
+ npx claudeos-core init --lang en # English
143
+ npx claudeos-core init --lang ko # 한국어
144
+ ```
145
+
146
+ > **Note :** Ceci ne change que la langue des fichiers de documentation générés. L'analyse du code (Pass 1–2) s'exécute toujours en anglais ; seul le résultat généré (Pass 3) est écrit dans la langue choisie.
147
+
113
148
  C'est tout. Après 5–18 minutes, toute la documentation est générée et prête à l'emploi.
114
149
 
115
150
  ### Installation Manuelle Étape par Étape
@@ -171,12 +206,12 @@ cat claudeos-core/generated/domain-groups.json | node -e "
171
206
  "
172
207
 
173
208
  # Run Pass 1 for group 1:
174
- cat claudeos-core/generated/pass1-backend-prompt.md \
175
- | sed "s/{{DOMAIN_GROUP}}/user, order, product/g" \
176
- | sed "s/{{PASS_NUM}}/1/g" \
177
- | claude -p --dangerously-skip-permissions
209
+ cp claudeos-core/generated/pass1-backend-prompt.md /tmp/_pass1.md
210
+ DOMAIN_LIST="user, order, product" PASS_NUM=1 \
211
+ perl -pi -e 's/\{\{DOMAIN_GROUP\}\}/$ENV{DOMAIN_LIST}/g; s/\{\{PASS_NUM\}\}/$ENV{PASS_NUM}/g' /tmp/_pass1.md
212
+ cat /tmp/_pass1.md | claude -p --dangerously-skip-permissions
178
213
 
179
- # For frontend groups, use pass1-frontend-prompt.md instead
214
+ # Pour les groupes frontend, utilisez pass1-frontend-prompt.md
180
215
  ```
181
216
 
182
217
  **Vérifier :** `ls claudeos-core/generated/pass1-*.json` doit afficher un JSON par groupe.
@@ -218,7 +253,7 @@ node claudeos-core-tools/pass-json-validator/index.js # JSON format
218
253
  #### Step 8 : Vérifier les résultats
219
254
 
220
255
  ```bash
221
- find .claude claudeos-core -type f | grep -v node_modules | wc -l
256
+ find .claude claudeos-core -type f | grep -v node_modules | grep -v '/generated/' | wc -l
222
257
  head -30 CLAUDE.md
223
258
  ls .claude/rules/*/
224
259
  ```
@@ -421,6 +456,7 @@ npx claudeos-core restore
421
456
  | **Sortie spécifique au projet** | ✅ Chaque fichier reflète vos patterns | ❌ Commandes génériques | Partiel | ❌ Taille unique |
422
457
  | **Multi-stack** | ✅ Auto-détection + analyse séparée | ❌ Agnostique au stack | Manuel | Variable |
423
458
  | **Kotlin + CQRS/BFF** | ✅ Multi-module, Command/Query split | ❌ | ❌ | ❌ |
459
+ | **Multilingue** | ✅ 10 langues, sélecteur interactif | ❌ | ❌ | ❌ |
424
460
  | **Auto-vérification** | ✅ 5 outils de validation | ❌ | ❌ | ❌ |
425
461
  | **Sauvegarde / Restauration** | ✅ Système Master Plan | ❌ | ❌ | ❌ |
426
462
  | **Temps de configuration** | ~5–18 min (automatique) | ~5 min (config manuelle) | Heures–Jours | ~5 min |
package/README.hi.md CHANGED
@@ -107,9 +107,44 @@ npx claudeos-core init
107
107
 
108
108
  # विकल्प D: git clone (डेवलपमेंट/कॉन्ट्रिब्यूशन के लिए)
109
109
  git clone https://github.com/claudeos-core/claudeos-core.git claudeos-core-tools
110
+
111
+ # क्रॉस-प्लेटफ़ॉर्म (PowerShell, CMD, Bash, Zsh — कोई भी टर्मिनल)
112
+ node claudeos-core-tools/bin/cli.js init
113
+
114
+ # केवल Linux/macOS (केवल Bash)
110
115
  bash claudeos-core-tools/bootstrap.sh
111
116
  ```
112
117
 
118
+ ### आउटपुट भाषा (10 भाषाएँ)
119
+
120
+ `--lang` के बिना `init` चलाने पर, एरो कीज़ से भाषा चुनने का इंटरैक्टिव सेलेक्टर दिखाई देगा:
121
+
122
+ ```
123
+ ╔══════════════════════════════════════════════════╗
124
+ ║ Select generated document language (required) ║
125
+ ╚══════════════════════════════════════════════════╝
126
+
127
+ जनरेट की गई फ़ाइलें (CLAUDE.md, Standards, Rules,
128
+ Skills, Guides) हिन्दी में लिखी जाएंगी।
129
+
130
+ 1. en — English
131
+ ...
132
+ ❯ 7. hi — हिन्दी (Hindi)
133
+ ...
134
+
135
+ ↑↓ Move ↵ Select
136
+ ```
137
+
138
+ एरो से मूव करने पर विवरण उस भाषा में बदलता है। सेलेक्टर स्किप करने के लिए:
139
+
140
+ ```bash
141
+ npx claudeos-core init --lang hi # हिन्दी
142
+ npx claudeos-core init --lang en # English
143
+ npx claudeos-core init --lang ko # 한국어
144
+ ```
145
+
146
+ > **नोट:** यह केवल जनरेट होने वाली डॉक्यूमेंट फ़ाइलों की भाषा बदलता है। कोड एनालिसिस (Pass 1–2) हमेशा अंग्रेज़ी में चलता है; केवल जनरेट रिज़ल्ट (Pass 3) चुनी गई भाषा में लिखा जाता है।
147
+
113
148
  बस इतना ही। 5–18 मिनट बाद, सारा डॉक्यूमेंटेशन जेनरेट होकर उपयोग के लिए तैयार है।
114
149
 
115
150
  ### मैन्युअल स्टेप-बाय-स्टेप इंस्टॉलेशन
@@ -171,12 +206,12 @@ cat claudeos-core/generated/domain-groups.json | node -e "
171
206
  "
172
207
 
173
208
  # Run Pass 1 for group 1:
174
- cat claudeos-core/generated/pass1-backend-prompt.md \
175
- | sed "s/{{DOMAIN_GROUP}}/user, order, product/g" \
176
- | sed "s/{{PASS_NUM}}/1/g" \
177
- | claude -p --dangerously-skip-permissions
209
+ cp claudeos-core/generated/pass1-backend-prompt.md /tmp/_pass1.md
210
+ DOMAIN_LIST="user, order, product" PASS_NUM=1 \
211
+ perl -pi -e 's/\{\{DOMAIN_GROUP\}\}/$ENV{DOMAIN_LIST}/g; s/\{\{PASS_NUM\}\}/$ENV{PASS_NUM}/g' /tmp/_pass1.md
212
+ cat /tmp/_pass1.md | claude -p --dangerously-skip-permissions
178
213
 
179
- # For frontend groups, use pass1-frontend-prompt.md instead
214
+ # फ्रंटएंड ग्रुप के लिए pass1-frontend-prompt.md का उपयोग करें
180
215
  ```
181
216
 
182
217
  **सत्यापित करें:** `ls claudeos-core/generated/pass1-*.json` में प्रति ग्रुप एक JSON दिखना चाहिए।
@@ -218,7 +253,7 @@ node claudeos-core-tools/pass-json-validator/index.js # JSON format
218
253
  #### Step 8: रिज़ल्ट सत्यापित करें
219
254
 
220
255
  ```bash
221
- find .claude claudeos-core -type f | grep -v node_modules | wc -l
256
+ find .claude claudeos-core -type f | grep -v node_modules | grep -v '/generated/' | wc -l
222
257
  head -30 CLAUDE.md
223
258
  ls .claude/rules/*/
224
259
  ```
@@ -421,6 +456,7 @@ npx claudeos-core restore
421
456
  | **प्रोजेक्ट-स्पेसिफिक आउटपुट** | ✅ हर फाइल आपके पैटर्न रिफ्लेक्ट करती है | ❌ जेनेरिक कमांड | आंशिक | ❌ वन-साइज़-फिट्स-ऑल |
422
457
  | **मल्टी-स्टैक** | ✅ ऑटो-डिटेक्ट + अलग विश्लेषण | ❌ स्टैक-एग्नॉस्टिक | मैन्युअल | अनिश्चित |
423
458
  | **Kotlin + CQRS/BFF** | ✅ मल्टी-मॉड्यूल, Command/Query विभाजन | ❌ | ❌ | ❌ |
459
+ | **बहुभाषी** | ✅ 10 भाषाएँ, इंटरैक्टिव सेलेक्टर | ❌ | ❌ | ❌ |
424
460
  | **सेल्फ-वेरिफाइंग** | ✅ 5 वैलिडेशन टूल्स | ❌ | ❌ | ❌ |
425
461
  | **बैकअप / रीस्टोर** | ✅ Master Plan सिस्टम | ❌ | ❌ | ❌ |
426
462
  | **सेटअप समय** | ~5–18 मिनट (ऑटोमेटेड) | ~5 मिनट (मैन्युअल कॉन्फ़िग) | घंटे–दिन | ~5 मिनट |
package/README.ja.md CHANGED
@@ -107,9 +107,45 @@ npx claudeos-core init
107
107
 
108
108
  # 方法 D:git clone(開発・コントリビューション用)
109
109
  git clone https://github.com/claudeos-core/claudeos-core.git claudeos-core-tools
110
+
111
+ # クロスプラットフォーム(PowerShell、CMD、Bash、Zsh — すべてのターミナル)
112
+ node claudeos-core-tools/bin/cli.js init
113
+
114
+ # Linux/macOS のみ(Bash のみ)
110
115
  bash claudeos-core-tools/bootstrap.sh
111
116
  ```
112
117
 
118
+ ### 出力言語(10 言語対応)
119
+
120
+ `--lang` なしで `init` を実行すると、矢印キーで言語を選択するインタラクティブ画面が表示されます:
121
+
122
+ ```
123
+ ╔══════════════════════════════════════════════════╗
124
+ ║ Select generated document language (required) ║
125
+ ╚══════════════════════════════════════════════════╝
126
+
127
+ 生成されるファイル(CLAUDE.md、Standards、Rules、
128
+ Skills、Guides)は日本語で作成されます。
129
+
130
+ 1. en — English
131
+ 2. ko — 한국어 (Korean)
132
+ 3. zh-CN — 简体中文 (Chinese Simplified)
133
+ ❯ 4. ja — 日本語 (Japanese)
134
+ ...
135
+
136
+ ↑↓ Move ↵ Select
137
+ ```
138
+
139
+ 矢印キーで移動すると、説明が該当言語に切り替わります。セレクターをスキップするには `--lang` を直接指定してください:
140
+
141
+ ```bash
142
+ npx claudeos-core init --lang ja # 日本語
143
+ npx claudeos-core init --lang en # English
144
+ npx claudeos-core init --lang ko # 한국어
145
+ ```
146
+
147
+ > **注意:** この設定は生成されるドキュメントファイルの言語のみを変更します。コード分析(Pass 1–2)は常に英語で実行され、生成結果(Pass 3)のみ選択した言語で作成されます。コード例は元のプログラミング言語構文のまま維持されます。
148
+
113
149
  これだけです。5–18 分後、すべてのドキュメントが生成され、すぐに使えます。
114
150
 
115
151
  ### 手動ステップバイステップインストール
@@ -171,12 +207,12 @@ cat claudeos-core/generated/domain-groups.json | node -e "
171
207
  "
172
208
 
173
209
  # Run Pass 1 for group 1:
174
- cat claudeos-core/generated/pass1-backend-prompt.md \
175
- | sed "s/{{DOMAIN_GROUP}}/user, order, product/g" \
176
- | sed "s/{{PASS_NUM}}/1/g" \
177
- | claude -p --dangerously-skip-permissions
210
+ cp claudeos-core/generated/pass1-backend-prompt.md /tmp/_pass1.md
211
+ DOMAIN_LIST="user, order, product" PASS_NUM=1 \
212
+ perl -pi -e 's/\{\{DOMAIN_GROUP\}\}/$ENV{DOMAIN_LIST}/g; s/\{\{PASS_NUM\}\}/$ENV{PASS_NUM}/g' /tmp/_pass1.md
213
+ cat /tmp/_pass1.md | claude -p --dangerously-skip-permissions
178
214
 
179
- # For frontend groups, use pass1-frontend-prompt.md instead
215
+ # フロントエンドグループは pass1-frontend-prompt.md を使用してください
180
216
  ```
181
217
 
182
218
  **確認:** `ls claudeos-core/generated/pass1-*.json` でグループごとに1つの JSON があることを確認。
@@ -218,7 +254,7 @@ node claudeos-core-tools/pass-json-validator/index.js # JSON format
218
254
  #### Step 8:結果の確認
219
255
 
220
256
  ```bash
221
- find .claude claudeos-core -type f | grep -v node_modules | wc -l
257
+ find .claude claudeos-core -type f | grep -v node_modules | grep -v '/generated/' | wc -l
222
258
  head -30 CLAUDE.md
223
259
  ls .claude/rules/*/
224
260
  ```
@@ -421,6 +457,7 @@ npx claudeos-core restore
421
457
  | **プロジェクト固有の出力** | ✅ すべてのファイルがあなたのパターンを反映 | ❌ 汎用コマンド | 部分的 | ❌ 画一的 |
422
458
  | **マルチスタック** | ✅ 自動検出 + 個別分析 | ❌ スタック非依存 | 手動 | 不定 |
423
459
  | **Kotlin + CQRS/BFF** | ✅ マルチモジュール、Command/Query分離 | ❌ | ❌ | ❌ |
460
+ | **多言語対応** | ✅ 10 言語、インタラクティブ選択 | ❌ | ❌ | ❌ |
424
461
  | **自己検証** | ✅ 5 つの検証ツール | ❌ | ❌ | ❌ |
425
462
  | **バックアップ / リストア** | ✅ Master Plan システム | ❌ | ❌ | ❌ |
426
463
  | **セットアップ時間** | ~5–18分(自動) | ~5分(手動設定) | 数時間–数日 | ~5分 |
package/README.ko.md CHANGED
@@ -107,9 +107,44 @@ npx claudeos-core init
107
107
 
108
108
  # 방법 D: git clone (개발/기여용)
109
109
  git clone https://github.com/claudeos-core/claudeos-core.git claudeos-core-tools
110
+
111
+ # 크로스 플랫폼 (PowerShell, CMD, Bash, Zsh — 모든 터미널)
112
+ node claudeos-core-tools/bin/cli.js init
113
+
114
+ # Linux/macOS 전용 (Bash만)
110
115
  bash claudeos-core-tools/bootstrap.sh
111
116
  ```
112
117
 
118
+ ### 출력 언어 (10개 언어 지원)
119
+
120
+ `--lang` 없이 `init`을 실행하면 화살표 키로 언어를 선택하는 인터랙티브 화면이 나타납니다:
121
+
122
+ ```
123
+ ╔══════════════════════════════════════════════════╗
124
+ ║ Select generated document language (required) ║
125
+ ╚══════════════════════════════════════════════════╝
126
+
127
+ 생성되는 파일(CLAUDE.md, Standards, Rules,
128
+ Skills, Guides)이 한국어로 작성됩니다.
129
+
130
+ 1. en — English
131
+ ❯ 2. ko — 한국어 (Korean)
132
+ 3. zh-CN — 简体中文 (Chinese Simplified)
133
+ ...
134
+
135
+ ↑↓ Move ↵ Select
136
+ ```
137
+
138
+ 화살표 이동 시 설명이 해당 언어로 바뀝니다. 선택 화면을 건너뛰려면 `--lang`을 직접 지정하세요:
139
+
140
+ ```bash
141
+ npx claudeos-core init --lang ko # 한국어
142
+ npx claudeos-core init --lang en # English
143
+ npx claudeos-core init --lang ja # 日本語
144
+ ```
145
+
146
+ > **참고:** 이 설정은 생성되는 문서 파일의 언어만 변경합니다. 코드 분석(Pass 1–2)은 항상 영어로 실행되며, 생성 결과(Pass 3)만 선택한 언어로 작성됩니다. 코드 예시는 원래 프로그래밍 언어 구문 그대로 유지됩니다.
147
+
113
148
  이게 전부입니다. 5–18분 후 모든 문서가 생성되어 바로 사용 가능합니다.
114
149
 
115
150
  ### 수동 단계별 설치
@@ -171,12 +206,12 @@ cat claudeos-core/generated/domain-groups.json | node -e "
171
206
  "
172
207
 
173
208
  # Run Pass 1 for group 1:
174
- cat claudeos-core/generated/pass1-backend-prompt.md \
175
- | sed "s/{{DOMAIN_GROUP}}/user, order, product/g" \
176
- | sed "s/{{PASS_NUM}}/1/g" \
177
- | claude -p --dangerously-skip-permissions
209
+ cp claudeos-core/generated/pass1-backend-prompt.md /tmp/_pass1.md
210
+ DOMAIN_LIST="user, order, product" PASS_NUM=1 \
211
+ perl -pi -e 's/\{\{DOMAIN_GROUP\}\}/$ENV{DOMAIN_LIST}/g; s/\{\{PASS_NUM\}\}/$ENV{PASS_NUM}/g' /tmp/_pass1.md
212
+ cat /tmp/_pass1.md | claude -p --dangerously-skip-permissions
178
213
 
179
- # For frontend groups, use pass1-frontend-prompt.md instead
214
+ # 프론트엔드 그룹은 pass1-frontend-prompt.md 사용하세요
180
215
  ```
181
216
 
182
217
  **확인:** `ls claudeos-core/generated/pass1-*.json`으로 그룹당 하나의 JSON이 있는지 확인합니다.
@@ -218,7 +253,7 @@ node claudeos-core-tools/pass-json-validator/index.js # JSON format
218
253
  #### Step 8: 결과 확인
219
254
 
220
255
  ```bash
221
- find .claude claudeos-core -type f | grep -v node_modules | wc -l
256
+ find .claude claudeos-core -type f | grep -v node_modules | grep -v '/generated/' | wc -l
222
257
  head -30 CLAUDE.md
223
258
  ls .claude/rules/*/
224
259
  ```
@@ -439,6 +474,7 @@ npx claudeos-core restore
439
474
  | **프로젝트 특화 출력** | ✅ 모든 파일이 실제 패턴 반영 | ❌ 제네릭 명령어 | 부분적 | ❌ 획일적 |
440
475
  | **멀티스택** | ✅ 자동 감지 + 별도 분석 | ❌ 스택 무관 | 수동 | 다양 |
441
476
  | **Kotlin + CQRS/BFF** | ✅ 멀티모듈, Command/Query 분리 | ❌ | ❌ | ❌ |
477
+ | **다국어 지원** | ✅ 10개 언어, 인터랙티브 선택 | ❌ | ❌ | ❌ |
442
478
  | **자체 검증** | ✅ 5개 검증 도구 | ❌ | ❌ | ❌ |
443
479
  | **백업 / 복원** | ✅ Master Plan 시스템 | ❌ | ❌ | ❌ |
444
480
  | **설정 시간** | ~5–18분 (자동화) | ~5분 (수동 설정) | 수 시간–며칠 | ~5분 |