claudeos-core 1.3.0 → 1.4.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.
Potentially problematic release.
This version of claudeos-core might be problematic. Click here for more details.
- package/CHANGELOG.md +35 -0
- package/README.de.md +75 -27
- package/README.es.md +75 -27
- package/README.fr.md +75 -27
- package/README.hi.md +76 -28
- package/README.ja.md +94 -28
- package/README.ko.md +94 -28
- package/README.md +93 -26
- package/README.ru.md +75 -27
- package/README.vi.md +75 -27
- package/README.zh-CN.md +76 -28
- package/bin/cli.js +38 -10
- package/bootstrap.sh +13 -2
- package/content-validator/index.js +18 -13
- package/manifest-generator/index.js +24 -1
- package/package.json +1 -1
- package/pass-prompts/templates/java-spring/pass1.md +1 -1
- package/pass-prompts/templates/java-spring/pass3.md +25 -5
- package/pass-prompts/templates/kotlin-spring/pass1.md +1 -1
- package/pass-prompts/templates/kotlin-spring/pass3.md +25 -5
- package/pass-prompts/templates/node-express/pass1.md +1 -1
- package/pass-prompts/templates/node-express/pass3.md +24 -5
- package/pass-prompts/templates/node-nextjs/pass1.md +1 -1
- package/pass-prompts/templates/node-nextjs/pass3.md +25 -5
- package/pass-prompts/templates/python-django/pass1.md +1 -1
- package/pass-prompts/templates/python-django/pass3.md +24 -5
- package/pass-prompts/templates/python-fastapi/pass1.md +1 -1
- package/pass-prompts/templates/python-fastapi/pass3.md +24 -5
- package/plan-installer/domain-grouper.js +3 -10
- package/plan-installer/prompt-generator.js +0 -5
- package/plan-installer/stack-detector.js +2 -2
- package/plan-installer/structure-scanner.js +58 -7
- package/plan-validator/index.js +4 -2
- package/sync-checker/index.js +4 -2
package/README.hi.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# ClaudeOS-Core
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**एकमात्र टूल जो पहले आपका सोर्स कोड पढ़ता है, deterministic एनालिसिस से स्टैक और पैटर्न कन्फर्म करता है, फिर आपके प्रोजेक्ट के लिए सटीक Claude Code रूल्स जेनरेट करता है।**
|
|
4
4
|
|
|
5
5
|
```bash
|
|
6
6
|
npx claudeos-core init
|
|
@@ -12,20 +12,50 @@ ClaudeOS-Core आपका कोडबेस पढ़ता है, हर प
|
|
|
12
12
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
|
-
##
|
|
15
|
+
## ClaudeOS-Core क्यों?
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
> इंसान प्रोजेक्ट का वर्णन करता है → LLM डॉक्यूमेंटेशन जेनरेट करता है
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
ClaudeOS-Core:
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
> कोड सोर्स का विश्लेषण करता है → कोड कस्टम प्रॉम्प्ट बनाता है → LLM डॉक्यूमेंटेशन जेनरेट करता है → कोड आउटपुट को वेरिफाई करता है
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
2. **गहन विश्लेषण** — कंट्रोलर पैटर्न, सर्विस लेयर्स, नेमिंग कन्वेंशन, एरर हैंडलिंग, सिक्योरिटी, टेस्टिंग और 50+ कैटेगरी
|
|
25
|
-
3. **जेनरेट** — `CLAUDE.md`, Standards (15–19 फाइलें), Rules, Skills, Guides (9 फाइलें), Master Plans, DB डॉक्स और MCP गाइड का पूरा डॉक्यूमेंटेशन इकोसिस्टम
|
|
26
|
-
4. **वैलिडेट** — 5 बिल्ट-इन वेरिफिकेशन टूल्स कंसिस्टेंसी सुनिश्चित करते हैं
|
|
23
|
+
### मूल समस्या: LLM अनुमान लगाता है। कोड कन्फर्म करता है।
|
|
27
24
|
|
|
28
|
-
|
|
25
|
+
जब आप Claude से "इस प्रोजेक्ट का विश्लेषण करो" कहते हैं, तो यह स्टैक, ORM, डोमेन स्ट्रक्चर का **अनुमान** लगाता है।
|
|
26
|
+
|
|
27
|
+
**ClaudeOS-Core अनुमान नहीं लगाता।** Claude Node.js:
|
|
28
|
+
|
|
29
|
+
- `build.gradle` / `package.json` / `pyproject.toml` → **confirmed**
|
|
30
|
+
- directory scan → **confirmed**
|
|
31
|
+
- Java 5 patterns, Kotlin CQRS/BFF, Next.js App Router/FSD → **classified**
|
|
32
|
+
- domain groups → **split**
|
|
33
|
+
- stack-specific prompt → **assembled**
|
|
34
|
+
|
|
35
|
+
### परिणाम
|
|
36
|
+
|
|
37
|
+
अन्य टूल "सामान्य रूप से अच्छा" डॉक्यूमेंटेशन बनाते हैं।
|
|
38
|
+
ClaudeOS-Core ऐसा डॉक्यूमेंटेशन बनाता है जो जानता है कि प्रोजेक्ट `ApiResponse.ok()` इस्तेमाल करता है — क्योंकि इसने वास्तविक कोड पढ़ा है।
|
|
39
|
+
|
|
40
|
+
### Before & After
|
|
41
|
+
|
|
42
|
+
**ClaudeOS-Core के बिना**:
|
|
43
|
+
```
|
|
44
|
+
❌ JPA repository (MyBatis)
|
|
45
|
+
❌ ResponseEntity.success() (ApiResponse.ok())
|
|
46
|
+
❌ order/controller/ (controller/order/)
|
|
47
|
+
→ 20 min fix per file
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
**ClaudeOS-Core के साथ**:
|
|
51
|
+
```
|
|
52
|
+
✅ MyBatis mapper + XML (build.gradle)
|
|
53
|
+
✅ ApiResponse.ok() (source code)
|
|
54
|
+
✅ controller/order/ (Pattern A)
|
|
55
|
+
→ immediate match
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
यह अंतर संचयी है। प्रतिदिन 10 कार्य × 20 मिनट बचत = **प्रतिदिन 3+ घंटे**।
|
|
29
59
|
|
|
30
60
|
---
|
|
31
61
|
|
|
@@ -79,6 +109,7 @@ Gradle मल्टी-मॉड्यूल संरचना वाले Kot
|
|
|
79
109
|
- **FSD (Feature-Sliced Design)**: `features/*/`, `widgets/*/`, `entities/*/`
|
|
80
110
|
- **RSC/Client split**: `client.tsx` पैटर्न डिटेक्ट, Server/Client कम्पोनेंट सेपरेशन ट्रैक
|
|
81
111
|
- **Config fallback**: `package.json` में न होने पर भी config फ़ाइलों से Next.js/Vite/Nuxt डिटेक्ट (monorepo सपोर्ट)
|
|
112
|
+
- **Deep directory fallback**: React/CRA/Vite/Vue/RN प्रोजेक्ट्स के लिए किसी भी गहराई पर `**/components/*/`, `**/views/*/`, `**/screens/*/`, `**/containers/*/`, `**/pages/*/`, `**/routes/*/`, `**/modules/*/`, `**/domains/*/` स्कैन
|
|
82
113
|
|
|
83
114
|
---
|
|
84
115
|
|
|
@@ -117,7 +148,7 @@ bash claudeos-core-tools/bootstrap.sh
|
|
|
117
148
|
|
|
118
149
|
### आउटपुट भाषा (10 भाषाएँ)
|
|
119
150
|
|
|
120
|
-
`--lang` के बिना `init` चलाने पर, एरो कीज़ से भाषा चुनने का इंटरैक्टिव सेलेक्टर दिखाई देगा:
|
|
151
|
+
`--lang` के बिना `init` चलाने पर, एरो कीज़ या नंबर कीज़ से भाषा चुनने का इंटरैक्टिव सेलेक्टर दिखाई देगा:
|
|
121
152
|
|
|
122
153
|
```
|
|
123
154
|
╔══════════════════════════════════════════════════╗
|
|
@@ -132,10 +163,10 @@ bash claudeos-core-tools/bootstrap.sh
|
|
|
132
163
|
❯ 7. hi — हिन्दी (Hindi)
|
|
133
164
|
...
|
|
134
165
|
|
|
135
|
-
↑↓ Move
|
|
166
|
+
↑↓ Move 1-0 Jump Enter Select ESC Cancel
|
|
136
167
|
```
|
|
137
168
|
|
|
138
|
-
|
|
169
|
+
सेलेक्शन मूव करने पर विवरण उस भाषा में बदलता है। सेलेक्टर स्किप करने के लिए:
|
|
139
170
|
|
|
140
171
|
```bash
|
|
141
172
|
npx claudeos-core init --lang hi # हिन्दी
|
|
@@ -387,16 +418,21 @@ ClaudeOS-Core द्वारा जेनरेट किए गए डॉक
|
|
|
387
418
|
| फाइल | कब | गारंटी |
|
|
388
419
|
|---|---|---|
|
|
389
420
|
| `CLAUDE.md` | हर कन्वर्सेशन शुरू होने पर | हमेशा |
|
|
390
|
-
| `.claude/rules
|
|
391
|
-
| `.claude/rules/
|
|
421
|
+
| `.claude/rules/00.core/*` | फाइल एडिट करते समय (`paths: ["**/*"]`) | हमेशा |
|
|
422
|
+
| `.claude/rules/10.backend/*` | फाइल एडिट करते समय (`paths: ["**/*"]`) | हमेशा |
|
|
423
|
+
| `.claude/rules/30.security-db/*` | फाइल एडिट करते समय (`paths: ["**/*"]`) | हमेशा |
|
|
424
|
+
| `.claude/rules/40.infra/*` | केवल config/infra फाइल एडिट करते समय (स्कोप्ड paths) | सशर्त |
|
|
425
|
+
| `.claude/rules/50.sync/*` | केवल claudeos-core फाइल एडिट करते समय (स्कोप्ड paths) | सशर्त |
|
|
392
426
|
|
|
393
|
-
###
|
|
427
|
+
### रूल रेफरेंस के ज़रिए ऑन-डिमांड पढ़ी जाने वाली फाइलें
|
|
394
428
|
|
|
395
|
-
|
|
429
|
+
हर रूल फाइल `## Reference` सेक्शन में संबंधित standard को लिंक करती है। Claude केवल वर्तमान कार्य से संबंधित standard पढ़ता है:
|
|
396
430
|
|
|
397
431
|
- `claudeos-core/standard/**` — कोडिंग पैटर्न, ✅/❌ उदाहरण, नेमिंग कन्वेंशन
|
|
398
432
|
- `claudeos-core/database/**` — DB स्कीमा (क्वेरी, मैपर, माइग्रेशन के लिए)
|
|
399
433
|
|
|
434
|
+
`00.standard-reference.md` बिना संबंधित रूल वाले standard की खोज के लिए एक डायरेक्टरी के रूप में कार्य करता है।
|
|
435
|
+
|
|
400
436
|
### न पढ़ी जाने वाली फाइलें (कॉन्टेक्स्ट बचत)
|
|
401
437
|
|
|
402
438
|
standard-reference रूल के `DO NOT Read` सेक्शन द्वारा स्पष्ट रूप से बाहर:
|
|
@@ -450,19 +486,31 @@ npx claudeos-core restore
|
|
|
450
486
|
|
|
451
487
|
## क्या अलग है?
|
|
452
488
|
|
|
453
|
-
| | ClaudeOS-Core |
|
|
454
|
-
|
|
455
|
-
|
|
|
456
|
-
|
|
|
457
|
-
|
|
|
458
|
-
| **
|
|
459
|
-
|
|
|
460
|
-
|
|
|
461
|
-
|
|
|
462
|
-
|
|
|
489
|
+
| | ClaudeOS-Core | Everything Claude Code (50K+ ⭐) | Harness | specs-generator | Claude `/init` |
|
|
490
|
+
|---|---|---|---|---|---|
|
|
491
|
+
| **Approach** | Code analyzes first, then LLM generates | Pre-built config presets | LLM designs agent teams | LLM generates spec docs | LLM writes CLAUDE.md |
|
|
492
|
+
| **Reads your source code** | ✅ Deterministic static analysis | ❌ | ❌ | ❌ (LLM reads) | ❌ (LLM reads) |
|
|
493
|
+
| **Stack detection** | Code confirms (ORM, DB, build tool, pkg manager) | N/A (stack-agnostic) | LLM guesses | LLM guesses | LLM guesses |
|
|
494
|
+
| **Domain detection** | Code confirms (Java 5 patterns, Kotlin CQRS, Next.js FSD) | N/A | LLM guesses | N/A | N/A |
|
|
495
|
+
| **Same project → Same result** | ✅ Deterministic analysis | ✅ (static files) | ❌ (LLM varies) | ❌ (LLM varies) | ❌ (LLM varies) |
|
|
496
|
+
| **Large project handling** | Domain group splitting (4 domains / 40 files per group) | N/A | No splitting | No splitting | Context window limit |
|
|
497
|
+
| **Output** | CLAUDE.md + Rules + Standards + Skills + Guides + Plans (40-50+ files) | Agents + Skills + Commands + Hooks | Agents + Skills | 6 spec documents | CLAUDE.md (1 file) |
|
|
498
|
+
| **Output location** | `.claude/rules/` (auto-loaded by Claude Code) | `.claude/` various | `.claude/agents/` + `.claude/skills/` | `.claude/steering/` + `specs/` | `CLAUDE.md` |
|
|
499
|
+
| **Post-generation verification** | ✅ 5 automated validators | ❌ | ❌ | ❌ | ❌ |
|
|
500
|
+
| **Multi-language output** | ✅ 10 languages | ❌ | ❌ | ❌ | ❌ |
|
|
501
|
+
| **Multi-stack** | ✅ Backend + Frontend simultaneous | ❌ Stack-agnostic | ❌ | ❌ | Partial |
|
|
502
|
+
| **Agent orchestration** | ❌ | ✅ 28 agents | ✅ 6 patterns | ❌ | ❌ |
|
|
463
503
|
|
|
464
|
-
|
|
504
|
+
### Key difference
|
|
465
505
|
|
|
506
|
+
**Other tools give Claude "generally good instructions." ClaudeOS-Core gives Claude "instructions extracted from your actual code."**
|
|
507
|
+
|
|
508
|
+
### Complementary, not competing
|
|
509
|
+
|
|
510
|
+
ClaudeOS-Core: **project-specific rules**. Other tools: **agent orchestration**.
|
|
511
|
+
Use both together.
|
|
512
|
+
|
|
513
|
+
---
|
|
466
514
|
## FAQ
|
|
467
515
|
|
|
468
516
|
**प्र: क्या यह मेरा सोर्स कोड मॉडिफाई करता है?**
|
package/README.ja.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# ClaudeOS-Core
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**ソースコードを先に読み、スタックとパターンを決定論的分析で確定してから、プロジェクトに正確に合った Claude Code ルールを生成する唯一のツール。**
|
|
4
4
|
|
|
5
5
|
```bash
|
|
6
6
|
npx claudeos-core init
|
|
@@ -12,20 +12,60 @@ ClaudeOS-Core はコードベースを読み取り、すべてのパターンを
|
|
|
12
12
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
|
-
##
|
|
15
|
+
## なぜ ClaudeOS-Core なのか?
|
|
16
16
|
|
|
17
|
-
Claude Code
|
|
17
|
+
他のすべての Claude Code ツールはこう動作します:
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
> **人間がプロジェクトを説明 → LLM がドキュメントを生成**
|
|
20
20
|
|
|
21
|
-
ClaudeOS-Core
|
|
21
|
+
ClaudeOS-Core はこう動作します:
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
2. **ディープ分析** — コントローラーパターン、サービス層、命名規則、エラーハンドリング、セキュリティ、テストなど 50+ カテゴリ
|
|
25
|
-
3. **生成** — `CLAUDE.md`、Standards(15–19 ファイル)、Rules、Skills、Guides(9 ファイル)、Master Plans、DB ドキュメント、MCP ガイドの完全な文書エコシステム
|
|
26
|
-
4. **検証** — 5 つの組み込み検証ツールが整合性を保証
|
|
23
|
+
> **コードがソースを分析 → コードがカスタムプロンプトを構築 → LLM がドキュメントを生成 → コードが出力を検証**
|
|
27
24
|
|
|
28
|
-
|
|
25
|
+
これは小さな違いではありません。
|
|
26
|
+
|
|
27
|
+
### 核心的な問題:LLM は推測する。コードは確定する。
|
|
28
|
+
|
|
29
|
+
Claude に「このプロジェクトを分析して」と頼むと、スタック、ORM、ドメイン構造を**推測**します。
|
|
30
|
+
`build.gradle` で `spring-boot` を見ても、MyBatis ではなく JPA と誤認する可能性があります。
|
|
31
|
+
`user/` ディレクトリを見ても、layer-first(Pattern A)か domain-first(Pattern B)か間違える可能性があります。
|
|
32
|
+
|
|
33
|
+
**ClaudeOS-Core は推測しません。** Claude がプロジェクトを見る前に、Node.js コードがすでに:
|
|
34
|
+
|
|
35
|
+
- `build.gradle` / `package.json` / `pyproject.toml` をパースしてスタック、ORM、DB、パッケージマネージャーを**確定**
|
|
36
|
+
- ディレクトリ構造をスキャンしてドメインリストとファイル数を**確定**
|
|
37
|
+
- プロジェクト構造を Java 5パターン、Kotlin CQRS/BFF、Next.js App Router/FSD のいずれかに**分類**
|
|
38
|
+
- Claude のコンテキストウィンドウに収まるようドメインを最適グループに**分割**
|
|
39
|
+
- 確定した事実が注入されたスタック固有のプロンプトを**構築**
|
|
40
|
+
|
|
41
|
+
Claude がプロンプトを受け取る時点で、推測の余地はありません。スタック確定。ドメイン確定。構造パターン確定。Claude は**確定された事実**に沿ったドキュメントを生成するだけです。
|
|
42
|
+
|
|
43
|
+
### 結果
|
|
44
|
+
|
|
45
|
+
他のツールは「一般的に良い」ドキュメントを生成します。
|
|
46
|
+
ClaudeOS-Core は、プロジェクトが `ApiResponse.ok()` を使用していること、MyBatis XML マッパーが `src/main/resources/mapper/{domain}/` にあること、パッケージ構造が `com.company.module.{domain}.controller` であることを知っているドキュメントを生成します — 実際のコードを読んだからです。
|
|
47
|
+
|
|
48
|
+
### Before & After
|
|
49
|
+
|
|
50
|
+
**ClaudeOS-Core なし** — Claude Code に注文 CRUD の作成を依頼すると:
|
|
51
|
+
```
|
|
52
|
+
❌ JPA スタイルの repository を使用(プロジェクトは MyBatis)
|
|
53
|
+
❌ ResponseEntity.success() を生成(ラッパーは ApiResponse.ok())
|
|
54
|
+
❌ order/controller/ にファイルを配置(プロジェクトは controller/order/)
|
|
55
|
+
❌ 英語コメントを生成(チームは日本語を使用)
|
|
56
|
+
→ 生成ファイルごとに20分の修正
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**ClaudeOS-Core 適用後** — `.claude/rules/` に確定されたパターンが存在:
|
|
60
|
+
```
|
|
61
|
+
✅ MyBatis マッパー + XML を生成(build.gradle から検出)
|
|
62
|
+
✅ ApiResponse.ok() を使用(実際のソースから抽出)
|
|
63
|
+
✅ controller/order/ にファイルを配置(構造スキャンで Pattern A 確定)
|
|
64
|
+
✅ 日本語コメント(--lang ja 適用)
|
|
65
|
+
→ 生成コードがプロジェクト規約と即座に一致
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
この差は蓄積されます。1日10タスク × 20分節約 = **1日3時間以上**。
|
|
29
69
|
|
|
30
70
|
---
|
|
31
71
|
|
|
@@ -79,6 +119,7 @@ Gradle マルチモジュール構造の Kotlin プロジェクト(例:CQRS
|
|
|
79
119
|
- **FSD(Feature-Sliced Design)**:`features/*/`、`widgets/*/`、`entities/*/`
|
|
80
120
|
- **RSC/Client分離**:`client.tsx` パターンを検出、サーバー/クライアントコンポーネントの分離を追跡
|
|
81
121
|
- **設定ファイルフォールバック**:`package.json` になくても設定ファイルから Next.js/Vite/Nuxt を検出(monorepo対応)
|
|
122
|
+
- **深層ディレクトリフォールバック**:React/CRA/Vite/Vue/RNプロジェクトで `**/components/*/`、`**/views/*/`、`**/screens/*/`、`**/containers/*/`、`**/pages/*/`、`**/routes/*/`、`**/modules/*/`、`**/domains/*/` を任意の深さでスキャン
|
|
82
123
|
|
|
83
124
|
---
|
|
84
125
|
|
|
@@ -117,7 +158,7 @@ bash claudeos-core-tools/bootstrap.sh
|
|
|
117
158
|
|
|
118
159
|
### 出力言語(10 言語対応)
|
|
119
160
|
|
|
120
|
-
`--lang` なしで `init`
|
|
161
|
+
`--lang` なしで `init` を実行すると、矢印キーまたは数字キーで言語を選択するインタラクティブ画面が表示されます:
|
|
121
162
|
|
|
122
163
|
```
|
|
123
164
|
╔══════════════════════════════════════════════════╗
|
|
@@ -133,10 +174,10 @@ bash claudeos-core-tools/bootstrap.sh
|
|
|
133
174
|
❯ 4. ja — 日本語 (Japanese)
|
|
134
175
|
...
|
|
135
176
|
|
|
136
|
-
↑↓ Move
|
|
177
|
+
↑↓ Move 1-0 Jump Enter Select ESC Cancel
|
|
137
178
|
```
|
|
138
179
|
|
|
139
|
-
|
|
180
|
+
選択を移動すると、説明が該当言語に切り替わります。セレクターをスキップするには `--lang` を直接指定してください:
|
|
140
181
|
|
|
141
182
|
```bash
|
|
142
183
|
npx claudeos-core init --lang ja # 日本語
|
|
@@ -388,16 +429,21 @@ ClaudeOS-Core が生成したドキュメントを Claude Code が実際に読
|
|
|
388
429
|
| ファイル | タイミング | 保証 |
|
|
389
430
|
|---|---|---|
|
|
390
431
|
| `CLAUDE.md` | 毎回の会話開始時 | 常に |
|
|
391
|
-
| `.claude/rules
|
|
392
|
-
| `.claude/rules/
|
|
432
|
+
| `.claude/rules/00.core/*` | ファイル編集時(`paths: ["**/*"]`) | 常に |
|
|
433
|
+
| `.claude/rules/10.backend/*` | ファイル編集時(`paths: ["**/*"]`) | 常に |
|
|
434
|
+
| `.claude/rules/30.security-db/*` | ファイル編集時(`paths: ["**/*"]`) | 常に |
|
|
435
|
+
| `.claude/rules/40.infra/*` | config/infraファイル編集時のみ(スコープ付きpaths) | 条件付き |
|
|
436
|
+
| `.claude/rules/50.sync/*` | claudeos-coreファイル編集時のみ(スコープ付きpaths) | 条件付き |
|
|
393
437
|
|
|
394
|
-
###
|
|
438
|
+
### ルール参照によるオンデマンド読み取り
|
|
395
439
|
|
|
396
|
-
|
|
440
|
+
各ルールファイル末尾の `## Reference` セクションが対応するstandardをリンクします。Claudeは現在のタスクに関連するstandardのみ読み取ります:
|
|
397
441
|
|
|
398
442
|
- `claudeos-core/standard/**` — コーディングパターン、✅/❌ 例、命名規則
|
|
399
443
|
- `claudeos-core/database/**` — DB スキーマ(クエリ、マッパー、マイグレーション用)
|
|
400
444
|
|
|
445
|
+
`00.standard-reference.md` は対応ルールのないstandardを発見するためのディレクトリです。
|
|
446
|
+
|
|
401
447
|
### 読み取らないファイル(コンテキスト節約)
|
|
402
448
|
|
|
403
449
|
standard-reference ルールの `DO NOT Read` セクションで明示的に除外されます:
|
|
@@ -451,19 +497,39 @@ npx claudeos-core restore
|
|
|
451
497
|
|
|
452
498
|
## 何が違うのか?
|
|
453
499
|
|
|
454
|
-
|
|
455
|
-
|---|---|---|---|---|
|
|
456
|
-
| **コードを読む** | ✅ ディープ分析(55–95 カテゴリ) | ❌ 動作注入 | ❌ 手動作成 | ❌ 既製テンプレート |
|
|
457
|
-
| **プロジェクト固有の出力** | ✅ すべてのファイルがあなたのパターンを反映 | ❌ 汎用コマンド | 部分的 | ❌ 画一的 |
|
|
458
|
-
| **マルチスタック** | ✅ 自動検出 + 個別分析 | ❌ スタック非依存 | 手動 | 不定 |
|
|
459
|
-
| **Kotlin + CQRS/BFF** | ✅ マルチモジュール、Command/Query分離 | ❌ | ❌ | ❌ |
|
|
460
|
-
| **多言語対応** | ✅ 10 言語、インタラクティブ選択 | ❌ | ❌ | ❌ |
|
|
461
|
-
| **自己検証** | ✅ 5 つの検証ツール | ❌ | ❌ | ❌ |
|
|
462
|
-
| **バックアップ / リストア** | ✅ Master Plan システム | ❌ | ❌ | ❌ |
|
|
463
|
-
| **セットアップ時間** | ~5–18分(自動) | ~5分(手動設定) | 数時間–数日 | ~5分 |
|
|
500
|
+
### 他の Claude Code ツールとの比較
|
|
464
501
|
|
|
465
|
-
|
|
502
|
+
| | ClaudeOS-Core | Everything Claude Code (50K+ ⭐) | Harness | specs-generator | Claude `/init` |
|
|
503
|
+
|---|---|---|---|---|---|
|
|
504
|
+
| **アプローチ** | コードが先に分析、LLMが生成 | 既製設定プリセット | LLMがエージェントチーム設計 | LLMがスペック文書生成 | LLMがCLAUDE.md作成 |
|
|
505
|
+
| **ソースコード直接分析** | ✅ Deterministic 静的分析 | ❌ | ❌ | ❌ (LLMが読む) | ❌ (LLMが読む) |
|
|
506
|
+
| **スタック検出** | コードが確定 (ORM, DB, ビルドツール, パッケージマネージャー) | N/A (スタック非依存) | LLMが推測 | LLMが推測 | LLMが推測 |
|
|
507
|
+
| **ドメイン検出** | コードが確定 (Java 5パターン, Kotlin CQRS, Next.js FSD) | N/A | LLMが推測 | N/A | N/A |
|
|
508
|
+
| **同じプロジェクト → 同じ結果** | ✅ Deterministic 分析 | ✅ (静的ファイル) | ❌ (LLM結果が変動) | ❌ (LLM結果が変動) | ❌ (LLM結果が変動) |
|
|
509
|
+
| **大規模プロジェクト** | ドメイングループ分割 (4 ドメイン / 40 ファイル) | N/A | 分割なし | 分割なし | コンテキストウィンドウ制限 |
|
|
510
|
+
| **出力** | CLAUDE.md + Rules + Standards + Skills + Guides + Plans (40-50+ ファイル) | Agents + Skills + Commands + Hooks | Agents + Skills | 6 スペック文書 | CLAUDE.md (1 ファイル) |
|
|
511
|
+
| **出力場所** | `.claude/rules/` (Claude Code自動ロード) | `.claude/` 各所 | `.claude/agents/` + `.claude/skills/` | `.claude/steering/` + `specs/` | `CLAUDE.md` |
|
|
512
|
+
| **生成後検証** | ✅ 5 自動検証ツール | ❌ | ❌ | ❌ | ❌ |
|
|
513
|
+
| **多言語出力** | ✅ 10 言語 | ❌ | ❌ | ❌ | ❌ |
|
|
514
|
+
| **マルチスタック** | ✅ バックエンド + フロントエンド同時 | ❌ スタック非依存 | ❌ | ❌ | 部分的 |
|
|
515
|
+
| **エージェントオーケストレーション** | ❌ | ✅ 28 エージェント | ✅ 6 パターン | ❌ | ❌ |
|
|
516
|
+
|
|
517
|
+
### 核心的な違い一言
|
|
466
518
|
|
|
519
|
+
**他のツールは Claude に「一般的に良い指示」を与えます。ClaudeOS-Core は Claude に「実際のコードから抽出した指示」を与えます。**
|
|
520
|
+
|
|
521
|
+
だから Claude Code が MyBatis プロジェクトで JPA コードを生成することがなくなり、
|
|
522
|
+
`success()` の代わりに `ok()` を使うミスがなくなり、
|
|
523
|
+
`controller/user/` 構造なのに `user/controller/` を作ることがなくなります。
|
|
524
|
+
|
|
525
|
+
### 競合ではなく補完
|
|
526
|
+
|
|
527
|
+
ClaudeOS-Core は**プロジェクト固有のルールと標準**に集中します。
|
|
528
|
+
他のツールは**エージェントオーケストレーションとワークフロー**に集中します。
|
|
529
|
+
|
|
530
|
+
ClaudeOS-Core でプロジェクトルールを生成し、その上に ECC や Harness を載せてエージェントチームとワークフロー自動化を構成できます。異なる問題を解決するツールです。
|
|
531
|
+
|
|
532
|
+
---
|
|
467
533
|
## FAQ
|
|
468
534
|
|
|
469
535
|
**Q:ソースコードは変更されますか?**
|
package/README.ko.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# ClaudeOS-Core
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**소스코드를 먼저 읽고, 스택과 패턴을 코드로 확정한 뒤, 프로젝트에 정확히 맞는 Claude Code 규칙을 생성하는 유일한 도구.**
|
|
4
4
|
|
|
5
5
|
```bash
|
|
6
6
|
npx claudeos-core init
|
|
@@ -13,20 +13,60 @@ ClaudeOS-Core는 코드베이스를 읽고, 발견한 모든 패턴을 추출하
|
|
|
13
13
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
|
-
##
|
|
16
|
+
## 왜 ClaudeOS-Core인가?
|
|
17
17
|
|
|
18
|
-
Claude Code
|
|
18
|
+
다른 모든 Claude Code 도구는 이렇게 작동합니다:
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
> **사람이 프로젝트를 설명 → LLM이 문서 생성**
|
|
21
21
|
|
|
22
|
-
ClaudeOS-Core
|
|
22
|
+
ClaudeOS-Core는 이렇게 작동합니다:
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
2. **분석** — 컨트롤러 패턴, 서비스 레이어, 명명 규칙, 에러 처리, 보안, 테스트 등 50개+ 카테고리 심층 분석
|
|
26
|
-
3. **생성** — `CLAUDE.md`, Standards (15–19개 파일), Rules, Skills, Guides (9개 파일), Master Plans, DB 문서, MCP 가이드 완전 생성
|
|
27
|
-
4. **검증** — 5개 내장 검증 도구로 일관성 자동 확인
|
|
24
|
+
> **코드가 소스를 분석 → 코드가 맞춤 프롬프트 조합 → LLM이 문서 생성 → 코드가 결과 검증**
|
|
28
25
|
|
|
29
|
-
|
|
26
|
+
이건 작은 차이가 아닙니다.
|
|
27
|
+
|
|
28
|
+
### 핵심 문제: LLM은 추측한다. 코드는 확정한다.
|
|
29
|
+
|
|
30
|
+
Claude에게 "이 프로젝트 분석해줘"라고 하면, 스택, ORM, 도메인 구조를 **추측**합니다.
|
|
31
|
+
`build.gradle`에서 `spring-boot`를 보고도 MyBatis가 아닌 JPA로 오인할 수 있습니다.
|
|
32
|
+
`user/` 디렉토리를 보고도 layer-first(Pattern A)인지 domain-first(Pattern B)인지 착각할 수 있습니다.
|
|
33
|
+
|
|
34
|
+
**ClaudeOS-Core는 추측하지 않습니다.** Claude가 프로젝트를 보기 전에, Node.js 코드가 이미:
|
|
35
|
+
|
|
36
|
+
- `build.gradle` / `package.json` / `pyproject.toml`을 파싱하여 스택, ORM, DB, 패키지 매니저를 **확정**
|
|
37
|
+
- 디렉토리 구조를 스캔하여 도메인 목록과 파일 수를 **확정**
|
|
38
|
+
- 프로젝트 구조를 Java 5패턴, Kotlin CQRS/BFF, Next.js App Router/FSD 중 하나로 **분류**
|
|
39
|
+
- Claude의 컨텍스트 윈도우에 맞게 도메인을 최적 그룹으로 **분할**
|
|
40
|
+
- 확정된 사실이 주입된 스택별 맞춤 프롬프트를 **조합**
|
|
41
|
+
|
|
42
|
+
Claude가 프롬프트를 받는 시점에는 추측할 것이 없습니다. 스택 확정. 도메인 확정. 구조 패턴 확정. Claude는 이 **확정된 사실**에 맞는 문서를 생성하기만 하면 됩니다.
|
|
43
|
+
|
|
44
|
+
### 결과
|
|
45
|
+
|
|
46
|
+
다른 도구는 "일반적으로 좋은" 문서를 생성합니다.
|
|
47
|
+
ClaudeOS-Core는 프로젝트가 `ApiResponse.ok()`를 쓴다는 것, MyBatis XML 매퍼가 `src/main/resources/mapper/{domain}/`에 있다는 것, 패키지 구조가 `com.company.module.{domain}.controller`라는 것을 아는 문서를 생성합니다 — 실제 코드를 읽었으니까요.
|
|
48
|
+
|
|
49
|
+
### Before & After
|
|
50
|
+
|
|
51
|
+
**ClaudeOS-Core 없이** — Claude Code에게 주문 CRUD 생성을 요청하면:
|
|
52
|
+
```
|
|
53
|
+
❌ JPA 스타일 repository 사용 (프로젝트는 MyBatis 사용)
|
|
54
|
+
❌ ResponseEntity.success() 생성 (프로젝트 래퍼는 ApiResponse.ok())
|
|
55
|
+
❌ order/controller/에 파일 배치 (프로젝트는 controller/order/ 구조)
|
|
56
|
+
❌ 영어 주석 생성 (팀은 한국어 주석 사용)
|
|
57
|
+
→ 생성된 파일마다 20분씩 수정
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
**ClaudeOS-Core 적용 후** — `.claude/rules/`에 확정된 패턴이 이미 존재:
|
|
61
|
+
```
|
|
62
|
+
✅ MyBatis 매퍼 + XML 생성 (build.gradle에서 감지)
|
|
63
|
+
✅ ApiResponse.ok() 사용 (실제 소스에서 추출)
|
|
64
|
+
✅ controller/order/에 파일 배치 (구조 스캔으로 Pattern A 확정)
|
|
65
|
+
✅ 한국어 주석 (--lang ko 적용)
|
|
66
|
+
→ 생성 코드가 프로젝트 컨벤션과 즉시 일치
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
이 차이는 누적됩니다. 하루 10개 작업 × 20분 절약 = **하루 3시간 이상**.
|
|
30
70
|
|
|
31
71
|
---
|
|
32
72
|
|
|
@@ -79,6 +119,7 @@ Gradle 멀티모듈 구조의 Kotlin 프로젝트(예: CQRS 모노레포)용:
|
|
|
79
119
|
- **FSD (Feature-Sliced Design)**: `features/*/`, `widgets/*/`, `entities/*/`
|
|
80
120
|
- **RSC/Client 분리**: `client.tsx` 패턴 감지, Server/Client 컴포넌트 분리 추적
|
|
81
121
|
- **설정 파일 폴백**: `package.json`에 없어도 `next.config.*`, `vite.config.*` 등에서 감지 (모노레포 지원)
|
|
122
|
+
- **깊은 디렉토리 폴백**: React/CRA/Vite/Vue/RN 프로젝트에서 `**/components/*/`, `**/views/*/`, `**/screens/*/`, `**/containers/*/`, `**/pages/*/`, `**/routes/*/`, `**/modules/*/`, `**/domains/*/`를 깊이 무관하게 스캔
|
|
82
123
|
|
|
83
124
|
---
|
|
84
125
|
|
|
@@ -117,7 +158,7 @@ bash claudeos-core-tools/bootstrap.sh
|
|
|
117
158
|
|
|
118
159
|
### 출력 언어 (10개 언어 지원)
|
|
119
160
|
|
|
120
|
-
`--lang` 없이 `init`을 실행하면 화살표 키로 언어를 선택하는 인터랙티브 화면이 나타납니다:
|
|
161
|
+
`--lang` 없이 `init`을 실행하면 화살표 키 또는 숫자 키로 언어를 선택하는 인터랙티브 화면이 나타납니다:
|
|
121
162
|
|
|
122
163
|
```
|
|
123
164
|
╔══════════════════════════════════════════════════╗
|
|
@@ -132,10 +173,10 @@ bash claudeos-core-tools/bootstrap.sh
|
|
|
132
173
|
3. zh-CN — 简体中文 (Chinese Simplified)
|
|
133
174
|
...
|
|
134
175
|
|
|
135
|
-
↑↓ Move
|
|
176
|
+
↑↓ Move 1-0 Jump Enter Select ESC Cancel
|
|
136
177
|
```
|
|
137
178
|
|
|
138
|
-
|
|
179
|
+
이동 시 설명이 해당 언어로 바뀝니다. 선택 화면을 건너뛰려면 `--lang`을 직접 지정하세요:
|
|
139
180
|
|
|
140
181
|
```bash
|
|
141
182
|
npx claudeos-core init --lang ko # 한국어
|
|
@@ -405,16 +446,21 @@ ClaudeOS-Core가 생성한 문서를 Claude Code가 실제로 읽는 방식입
|
|
|
405
446
|
| 파일 | 시점 | 보장 |
|
|
406
447
|
|---|---|---|
|
|
407
448
|
| `CLAUDE.md` | 매 대화 시작 시 | 항상 |
|
|
408
|
-
| `.claude/rules
|
|
409
|
-
| `.claude/rules/
|
|
449
|
+
| `.claude/rules/00.core/*` | 파일 편집 시 (`paths: ["**/*"]`) | 항상 |
|
|
450
|
+
| `.claude/rules/10.backend/*` | 파일 편집 시 (`paths: ["**/*"]`) | 항상 |
|
|
451
|
+
| `.claude/rules/30.security-db/*` | 파일 편집 시 (`paths: ["**/*"]`) | 항상 |
|
|
452
|
+
| `.claude/rules/40.infra/*` | config/infra 파일 편집 시만 (스코핑된 paths) | 조건부 |
|
|
453
|
+
| `.claude/rules/50.sync/*` | claudeos-core 파일 편집 시만 (스코핑된 paths) | 조건부 |
|
|
410
454
|
|
|
411
|
-
###
|
|
455
|
+
### rule 참조를 통해 온디맨드로 읽는 파일
|
|
412
456
|
|
|
413
|
-
`
|
|
457
|
+
각 rule 파일 하단의 `## Reference` 섹션이 대응하는 standard를 링크합니다. Claude는 현재 작업과 관련된 standard만 읽습니다:
|
|
414
458
|
|
|
415
459
|
- `claudeos-core/standard/**` — 코딩 패턴, ✅/❌ 예시, 네이밍 규칙
|
|
416
460
|
- `claudeos-core/database/**` — DB 스키마 (쿼리, 매퍼, 마이그레이션용)
|
|
417
461
|
|
|
462
|
+
`00.standard-reference.md`는 대응 rule이 없는 standard를 발견하기 위한 디렉토리 역할입니다.
|
|
463
|
+
|
|
418
464
|
### 읽지 않는 파일 (컨텍스트 절약)
|
|
419
465
|
|
|
420
466
|
standard-reference 규칙의 `DO NOT Read` 섹션으로 명시적으로 제외됩니다:
|
|
@@ -468,19 +514,39 @@ npx claudeos-core restore
|
|
|
468
514
|
|
|
469
515
|
## 무엇이 다른가?
|
|
470
516
|
|
|
471
|
-
|
|
472
|
-
|---|---|---|---|---|
|
|
473
|
-
| **코드 분석** | ✅ 심층 분석 (55–95 카테고리) | ❌ 행동 주입 | ❌ 수동 작성 | ❌ 사전 제작 템플릿 |
|
|
474
|
-
| **프로젝트 특화 출력** | ✅ 모든 파일이 실제 패턴 반영 | ❌ 제네릭 명령어 | 부분적 | ❌ 획일적 |
|
|
475
|
-
| **멀티스택** | ✅ 자동 감지 + 별도 분석 | ❌ 스택 무관 | 수동 | 다양 |
|
|
476
|
-
| **Kotlin + CQRS/BFF** | ✅ 멀티모듈, Command/Query 분리 | ❌ | ❌ | ❌ |
|
|
477
|
-
| **다국어 지원** | ✅ 10개 언어, 인터랙티브 선택 | ❌ | ❌ | ❌ |
|
|
478
|
-
| **자체 검증** | ✅ 5개 검증 도구 | ❌ | ❌ | ❌ |
|
|
479
|
-
| **백업 / 복원** | ✅ Master Plan 시스템 | ❌ | ❌ | ❌ |
|
|
480
|
-
| **설정 시간** | ~5–18분 (자동화) | ~5분 (수동 설정) | 수 시간–며칠 | ~5분 |
|
|
517
|
+
### 다른 Claude Code 도구와의 비교
|
|
481
518
|
|
|
482
|
-
|
|
519
|
+
| | ClaudeOS-Core | Everything Claude Code (50K+ ⭐) | Harness | specs-generator | Claude `/init` |
|
|
520
|
+
|---|---|---|---|---|---|
|
|
521
|
+
| **접근 방식** | 코드가 먼저 분석 후 LLM 생성 | 사전 제작된 설정 프리셋 | LLM이 에이전트 팀 설계 | LLM이 스펙 문서 생성 | LLM이 CLAUDE.md 작성 |
|
|
522
|
+
| **소스코드 직접 분석** | ✅ Deterministic 정적 분석 | ❌ | ❌ | ❌ (LLM이 읽음) | ❌ (LLM이 읽음) |
|
|
523
|
+
| **스택 감지** | 코드가 확정 (ORM, DB, 빌드 툴, 패키지 매니저) | N/A (스택 무관) | LLM이 추측 | LLM이 추측 | LLM이 추측 |
|
|
524
|
+
| **도메인 감지** | 코드가 확정 (Java 5패턴, Kotlin CQRS, Next.js FSD) | N/A | LLM이 추측 | N/A | N/A |
|
|
525
|
+
| **같은 프로젝트 → 같은 결과** | ✅ Deterministic 분석 | ✅ (정적 파일) | ❌ (LLM 결과 변동) | ❌ (LLM 결과 변동) | ❌ (LLM 결과 변동) |
|
|
526
|
+
| **대형 프로젝트 처리** | 도메인 그룹 분할 (4 도메인 / 40 파일) | N/A | 분할 없음 | 분할 없음 | 컨텍스트 윈도우 한계 |
|
|
527
|
+
| **출력물** | CLAUDE.md + Rules + Standards + Skills + Guides + Plans (40-50+ 파일) | Agents + Skills + Commands + Hooks | Agents + Skills | 6 스펙 문서 | CLAUDE.md (1 파일) |
|
|
528
|
+
| **출력 위치** | `.claude/rules/` (Claude Code 자동 로드) | `.claude/` 여러 위치 | `.claude/agents/` + `.claude/skills/` | `.claude/steering/` + `specs/` | `CLAUDE.md` |
|
|
529
|
+
| **생성 후 검증** | ✅ 5 자동 검증 도구 | ❌ | ❌ | ❌ | ❌ |
|
|
530
|
+
| **다국어 출력** | ✅ 10 언어 | ❌ | ❌ | ❌ | ❌ |
|
|
531
|
+
| **멀티 스택** | ✅ 백엔드 + 프론트엔드 동시 | ❌ 스택 무관 | ❌ | ❌ | 부분적 |
|
|
532
|
+
| **에이전트 오케스트레이션** | ❌ | ✅ 28 에이전트 | ✅ 6 패턴 | ❌ | ❌ |
|
|
533
|
+
|
|
534
|
+
### 핵심 차이 한 줄
|
|
483
535
|
|
|
536
|
+
**다른 도구는 Claude에게 "일반적으로 좋은 지침"을 줍니다. ClaudeOS-Core는 Claude에게 "실제 코드에서 추출한 지침"을 줍니다.**
|
|
537
|
+
|
|
538
|
+
그래서 Claude Code가 MyBatis 프로젝트에서 JPA 코드를 생성하는 일이 없어지고,
|
|
539
|
+
`success()`를 써야 할 곳에 `ok()`를 쓰는 일이 없어지고,
|
|
540
|
+
`controller/user/` 구조인데 `user/controller/`로 만드는 일이 없어집니다.
|
|
541
|
+
|
|
542
|
+
### 경쟁이 아닌 보완
|
|
543
|
+
|
|
544
|
+
ClaudeOS-Core는 **프로젝트별 규칙과 표준**에 집중합니다.
|
|
545
|
+
다른 도구들은 **에이전트 오케스트레이션과 워크플로우**에 집중합니다.
|
|
546
|
+
|
|
547
|
+
ClaudeOS-Core로 프로젝트 규칙을 생성한 뒤, ECC나 Harness를 그 위에 얹어 에이전트 팀과 워크플로우 자동화를 구성할 수 있습니다. 서로 다른 문제를 해결하는 도구입니다.
|
|
548
|
+
|
|
549
|
+
---
|
|
484
550
|
## FAQ
|
|
485
551
|
|
|
486
552
|
**Q: 소스코드를 수정하나요?**
|