id3-cli 0.9.1

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 (114) hide show
  1. package/README.ja-JP.md +769 -0
  2. package/README.ko-KR.md +769 -0
  3. package/README.md +769 -0
  4. package/README.tr-TR.md +769 -0
  5. package/README.zh-CN.md +769 -0
  6. package/dist/bin/cli.d.ts +2 -0
  7. package/dist/bin/cli.js +40 -0
  8. package/dist/bin/cli.js.map +1 -0
  9. package/dist/scripts/build-hooks.d.ts +1 -0
  10. package/dist/scripts/build-hooks.js +58 -0
  11. package/dist/scripts/build-hooks.js.map +1 -0
  12. package/dist/src/hooks/auto-audit.d.ts +4 -0
  13. package/dist/src/hooks/auto-audit.js +47 -0
  14. package/dist/src/hooks/auto-audit.js.map +1 -0
  15. package/dist/src/hooks/claude-pretool-entry.d.ts +1 -0
  16. package/dist/src/hooks/claude-pretool-entry.js +36 -0
  17. package/dist/src/hooks/claude-pretool-entry.js.map +1 -0
  18. package/dist/src/hooks/claude-stop-entry.d.ts +1 -0
  19. package/dist/src/hooks/claude-stop-entry.js +7 -0
  20. package/dist/src/hooks/claude-stop-entry.js.map +1 -0
  21. package/dist/src/hooks/post-commit-entry.d.ts +1 -0
  22. package/dist/src/hooks/post-commit-entry.js +7 -0
  23. package/dist/src/hooks/post-commit-entry.js.map +1 -0
  24. package/dist/src/hooks/pre-commit-entry.d.ts +1 -0
  25. package/dist/src/hooks/pre-commit-entry.js +16 -0
  26. package/dist/src/hooks/pre-commit-entry.js.map +1 -0
  27. package/dist/src/hooks/rule-check.d.ts +8 -0
  28. package/dist/src/hooks/rule-check.js +101 -0
  29. package/dist/src/hooks/rule-check.js.map +1 -0
  30. package/dist/src/hooks/schema-drift.d.ts +17 -0
  31. package/dist/src/hooks/schema-drift.js +151 -0
  32. package/dist/src/hooks/schema-drift.js.map +1 -0
  33. package/dist/src/hooks/shared.d.ts +43 -0
  34. package/dist/src/hooks/shared.js +98 -0
  35. package/dist/src/hooks/shared.js.map +1 -0
  36. package/dist/src/init.d.ts +20 -0
  37. package/dist/src/init.js +193 -0
  38. package/dist/src/init.js.map +1 -0
  39. package/dist/src/preview/mockup-generator.d.ts +56 -0
  40. package/dist/src/preview/mockup-generator.js +402 -0
  41. package/dist/src/preview/mockup-generator.js.map +1 -0
  42. package/dist/src/preview/renderer.d.ts +30 -0
  43. package/dist/src/preview/renderer.js +145 -0
  44. package/dist/src/preview/renderer.js.map +1 -0
  45. package/dist/src/preview/server.d.ts +9 -0
  46. package/dist/src/preview/server.js +55 -0
  47. package/dist/src/preview/server.js.map +1 -0
  48. package/dist/src/preview/ui-auditor.d.ts +27 -0
  49. package/dist/src/preview/ui-auditor.js +141 -0
  50. package/dist/src/preview/ui-auditor.js.map +1 -0
  51. package/dist/src/preview/ui-gate.d.ts +66 -0
  52. package/dist/src/preview/ui-gate.js +210 -0
  53. package/dist/src/preview/ui-gate.js.map +1 -0
  54. package/dist/src/utils/ascii.d.ts +7 -0
  55. package/dist/src/utils/ascii.js +41 -0
  56. package/dist/src/utils/ascii.js.map +1 -0
  57. package/dist/src/utils/fs.d.ts +6 -0
  58. package/dist/src/utils/fs.js +39 -0
  59. package/dist/src/utils/fs.js.map +1 -0
  60. package/dist/templates/hooks/iddd-auto-audit.js +121 -0
  61. package/dist/templates/hooks/iddd-schema-drift.js +279 -0
  62. package/dist/templates/hooks/post-commit +121 -0
  63. package/dist/templates/hooks/pre-commit +348 -0
  64. package/package.json +37 -0
  65. package/templates/.agents/skills/.gitkeep +0 -0
  66. package/templates/.claude/hooks/.gitkeep +0 -0
  67. package/templates/.claude/hooks/hook-config.json +34 -0
  68. package/templates/.claude/skills/.gitkeep +0 -0
  69. package/templates/.codex/.gitkeep +0 -0
  70. package/templates/.codex/hooks.json +40 -0
  71. package/templates/.iddd/commit-count +1 -0
  72. package/templates/.iddd/preview/.gitkeep +0 -0
  73. package/templates/AGENTS.md +204 -0
  74. package/templates/CLAUDE.md +215 -0
  75. package/templates/README.md +476 -0
  76. package/templates/docs/.gitkeep +0 -0
  77. package/templates/docs/business-rules.md +14 -0
  78. package/templates/docs/domain-glossary.md +8 -0
  79. package/templates/docs/info-debt.md +17 -0
  80. package/templates/docs/model-changelog.md +12 -0
  81. package/templates/hooks/.gitkeep +0 -0
  82. package/templates/hooks/iddd-auto-audit.js +121 -0
  83. package/templates/hooks/iddd-schema-drift.js +279 -0
  84. package/templates/hooks/post-commit +121 -0
  85. package/templates/hooks/pre-commit +348 -0
  86. package/templates/skills/id3-design-information/SKILL.md +170 -0
  87. package/templates/skills/id3-design-information/references/phase2-procedure.md +241 -0
  88. package/templates/skills/id3-design-ui/.gitkeep +0 -0
  89. package/templates/skills/id3-design-ui/SKILL.md +200 -0
  90. package/templates/skills/id3-design-ui/references/.gitkeep +0 -0
  91. package/templates/skills/id3-design-ui/references/step1-structure-derivation.md +177 -0
  92. package/templates/skills/id3-design-ui/references/step2-visual-contract.md +257 -0
  93. package/templates/skills/id3-design-ui/references/step3-gate-and-mockup.md +177 -0
  94. package/templates/skills/id3-design-ui/references/step4-implementation.md +244 -0
  95. package/templates/skills/id3-identify-entities/SKILL.md +239 -0
  96. package/templates/skills/id3-identify-entities/references/.gitkeep +0 -0
  97. package/templates/skills/id3-identify-entities/references/phase0-brownfield.md +377 -0
  98. package/templates/skills/id3-identify-entities/references/phase1-greenfield.md +319 -0
  99. package/templates/skills/id3-info-audit/.gitkeep +0 -0
  100. package/templates/skills/id3-info-audit/SKILL.md +191 -0
  101. package/templates/skills/id3-preview/.gitkeep +0 -0
  102. package/templates/skills/id3-preview/SKILL.md +168 -0
  103. package/templates/skills/id3-spawn-team/.gitkeep +0 -0
  104. package/templates/skills/id3-spawn-team/SKILL.md +213 -0
  105. package/templates/specs/.gitkeep +0 -0
  106. package/templates/specs/data-model.md +26 -0
  107. package/templates/specs/entity-catalog.md +22 -0
  108. package/templates/specs/ui-design-contract.md +54 -0
  109. package/templates/specs/ui-inventory.md +24 -0
  110. package/templates/specs/ui-structure.md +32 -0
  111. package/templates/src/.gitkeep +0 -0
  112. package/templates/steering/.gitkeep +0 -0
  113. package/templates/steering/data-conventions.md +42 -0
  114. package/templates/steering/product.md +38 -0
@@ -0,0 +1,769 @@
1
+ <div align="center">
2
+
3
+ [English](README.md) · [한국어](README.ko-KR.md) · [简体中文](README.zh-CN.md) · [日本語](README.ja-JP.md) · **Türkçe**
4
+
5
+ </div>
6
+
7
+ ```
8
+ ╔════════════════════════════════════════════════════════════════════════════════════════╗
9
+ ║ ║
10
+ ║ ██╗██████╗ ██████╗ ██████╗ ║
11
+ ║ ██║██╔══██╗██╔══██╗██╔══██╗ Information Design-Driven Development ║
12
+ ║ ██║██║ ██║██║ ██║██║ ██║ ║
13
+ ║ ██║██║ ██║██║ ██║██║ ██║ "What information exists?" ║
14
+ ║ ██║██████╔╝██████╔╝██████╔╝ -- always the first question. ║
15
+ ║ ╚═╝╚═════╝ ╚═════╝ ╚═════╝ v0.9.1 ║
16
+ ║ ║
17
+ ║ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ║
18
+ ║ ║
19
+ ║ ┌─────────────────────────┐ ┌─────────────────────────┐ ║
20
+ ║ │ │ │ │ ║
21
+ ║ │ INFORMATION │ │ AGENT │ ║
22
+ ║ │ MODEL │──────────>│ HARNESS │ ║
23
+ ║ │ │ │ │ ║
24
+ ║ │ - Entity Catalog │ │ - Hook Enforcement │ ║
25
+ ║ │ - Data Model │ │ - Drift Detection │ ║
26
+ ║ │ - Business Rules │ │ - Auto Audit │ ║
27
+ ║ │ - Domain Glossary │ │ - Version Tracking │ ║
28
+ ║ │ │ │ │ ║
29
+ ║ └─────────────────────────┘ └────────────┬────────────┘ ║
30
+ ║ │ ║
31
+ ║ v ║
32
+ ║ ┌─────────────────────────┐ ║
33
+ ║ │ │ ║
34
+ ║ │ AI AGENT │ ║
35
+ ║ │ (Constrained) │ ║
36
+ ║ │ │ ║
37
+ ║ │ Agent = Model │ ║
38
+ ║ │ + Harness │ ║
39
+ ║ │ │ ║
40
+ ║ └─────────────────────────┘ ║
41
+ ║ ║
42
+ ╚════════════════════════════════════════════════════════════════════════════════════════╝
43
+ ```
44
+
45
+ **"Hangi bilgi mevcut?" ile başlayın -- "Hangi özellikleri geliştirmeliyiz?" ile değil.**
46
+
47
+ IDDD, **bilgi modelini** tüm yazılım geliştirmenin merkezine yerleştiren bir geliştirme metodolojisi ve yapay zeka ajan beceri paketidir. Herhangi bir teknoloji seçimi yapılmadan *önce* titiz bir Entity kataloğu, veri modeli, iş kuralları ve alan sözlüğü oluşturarak, IDDD uygulama davranışının %80'inin mantıksal model aşamasında zaten tanımlanmış olmasını sağlar. Bilgi modeli daha sonra gereksinimler, API sözleşmeleri, ekran tasarımları ve doğrulama kurallarının sistematik olarak türetildiği üretken merkez haline gelir.
48
+
49
+ Bu paket, IDDD'yi bir dizi yapay zeka ajan becerisi, Harness Hook'ları ve belge şablonları olarak yükler; böylece kodlama ajanınız tüm geliştirme yaşam döngüsü boyunca bilgi-öncelikli disiplini uygular.
50
+
51
+ ---
52
+
53
+ ## IDDD Nedir?
54
+
55
+ Çoğu yazılım projesi *"Hangi özellikleri geliştirmeliyiz?"* sorusunu sorarak başlar ve doğrudan uygulamaya geçer. IDDD bunu tersine çevirir. **"Bu alanda hangi bilgi mevcut?"** sorusundan yola çıkar ve bilgi modelini spesifikasyonun bir bölümü olarak değil, diğer tüm geliştirme çıktılarının türetildiği **tek doğru kaynak** olarak ele alır.
56
+
57
+ ### Temel İlkeler
58
+
59
+ 1. **Bilgi modeli üretken merkezdir.** Tüm kod, API'ler, kullanıcı arayüzü ve testler Entity kataloğu ve veri modelinden türetilir. Kod spesifikasyonla uyuşmazsa, spesifikasyon kazanır.
60
+ 2. **Entity-öncelikli tanımlama.** Herhangi bir kod yazmadan önce Entity'ler tanımlanmalı ve belgelenmelidir. Yeni özellikler "hangi endpoint'lere ihtiyacımız var?" ile değil, "hangi Entity'ler ilgili?" ile başlar.
61
+ 3. **Veri modeli izlenebilirliği.** Kod tabanındaki her sütun, kısıtlama ve Relationship, Entity kataloğundaki bir girdiye kadar izlenebilir olmalıdır. İzlenmeyen şema öğeleri sapma olarak kabul edilir.
62
+ 4. **Çıktı-öncelikli tasarım.** Kullanıcıların *gördüğü* şeyleri (gösterge panelleri, raporlar, listeler) girdilerden (formlar, API'ler) önce tasarlayın. Çıktı görüntüsü bilgi modelini yönlendirir.
63
+ 5. **İş kuralları açıktır.** Her doğrulama, kısıtlama ve türetim kuralı bir BR-xxx tanımlayıcısı ile kayıt altına alınır. Yalnızca kodda bulunan kurallar borç olarak kabul edilir.
64
+
65
+ ### Yazılım Geliştirmeye Eşlenen Üç Aşamalı Veri Modelleme
66
+
67
+ IDDD, klasik üç aşamalı veri modelleme sürecini doğrudan yazılım geliştirme aşamalarına eşler:
68
+
69
+ ```
70
+ ┌───────────────────────────────────────────┐ ┌───────────────────────────────────────────┐
71
+ │ Conceptual Model │ │ Gereksinimler / Kapsam Tanımı │
72
+ │ "Hangi bilgi mevcut?" │────────>│ Entity tanımlama, kullanıcı hikayeleri │
73
+ └───────────────────────────────────────────┘ └───────────────────────────────────────────┘
74
+
75
+ v
76
+ ┌───────────────────────────────────────────┐ ┌───────────────────────────────────────────┐
77
+ │ Logical Model │ │ API Sözleşmeleri / Doğrulama / İş Mantığı│
78
+ │ "Nasıl yapılandırılmış?" │────────>│ Davranışın %80'i burada tanımlanır │
79
+ └───────────────────────────────────────────┘ └───────────────────────────────────────────┘
80
+
81
+ v
82
+ ┌───────────────────────────────────────────┐ ┌───────────────────────────────────────────┐
83
+ │ Physical Model │ │ Uygulama Kararları │
84
+ │ "Nasıl depolanır/çalıştırılır?" │────────>│ Teknoloji seçimleri, depolama, dağıtım │
85
+ └───────────────────────────────────────────┘ └───────────────────────────────────────────┘
86
+ ```
87
+
88
+ Bilgi modelinin her öğesi otomatik olarak geliştirme çıktılarını ima eder:
89
+
90
+ | Bilgi Modeli Öğesi | Türetilen Çıktı |
91
+ |--------------------------------|------------------------------------------------------------|
92
+ | Entity tanımlama | Gereksinim kapsamı, kullanıcı hikayeleri |
93
+ | Relationship'ler ve Cardinality| API endpoint yapısı, navigasyon |
94
+ | Attribute'lar ve veri tipleri | Form alanları, doğrulama kuralları, DTO'lar |
95
+ | Kısıtlamalar | Girdi doğrulama, tip tanımları |
96
+ | Türetilmiş Attribute'lar | İş mantığı, hesaplama kuralları |
97
+ | Durum geçişleri | İş akışları, durum yönetimi |
98
+ | Toplama / ilişki kuralları | İşlem sınırları, tutarlılık kuralları |
99
+
100
+ **Mantıksal model tamamlandığında, uygulama davranışının %80'i zaten tanımlanmıştır -- herhangi bir teknoloji seçimi yapılmadan önce.**
101
+
102
+ ---
103
+
104
+ ## Desteklenen Platformlar
105
+
106
+ | Platform | Ajan Sistemi | Çoklu Ajan Stratejisi |
107
+ |--------------|-------------------------|------------------------------------------------------|
108
+ | Claude Code | Claude Agent Teams | Eşler arası mesajlaşma, bağımsız worktree'ler |
109
+ | OpenAI Codex | Codex Agents SDK | MCP Server üzerinden Handoff deseni |
110
+
111
+ ---
112
+
113
+ ## Ön Koşullar
114
+
115
+ | Gereksinim | Detaylar |
116
+ |------------------|------------------------------------------------------|
117
+ | Node.js | **18+** (npm veya uyumlu bir paket yöneticisi ile) |
118
+ | Claude Code | **Claude Max** üyeliği + Agent Teams etkinleştirilmiş|
119
+ | OpenAI Codex | **ChatGPT Plus** veya üstü (Pro/Business/Enterprise) |
120
+
121
+ `npx` yükleyicisi için Node.js'e ihtiyacınız var. Yapay zeka platform aboneliği, hangi platformu kullanıyorsanız onun için gereklidir.
122
+
123
+ ---
124
+
125
+ ## Kurulum
126
+
127
+ ```bash
128
+ npx id3@latest
129
+ ```
130
+
131
+ Alt komuta gerek yoktur -- `id3` başlatma sürecini doğrudan çalıştırır. Şunları yapacaktır:
132
+
133
+ 1. Tüm IDDD şablonlarını (spesifikasyonlar, belgeler, yönlendirme, beceriler, Hook'lar) projenize kopyalar.
134
+ 2. Platforma özgü sembolik bağlantılar (`.claude/skills/` veya `.agents/skills/`) oluşturarak orijinal `skills/` dizinine işaret eder.
135
+ 3. Harness Hook'larını platformunuzun yapılandırma dosyasına kaydeder.
136
+ 4. `.iddd/` durum dizinini başlatır (commit sayacı, önizleme çıktısı).
137
+
138
+ ### Seçenekler
139
+
140
+ | Seçenek | Açıklama |
141
+ |-----------------|-------------------------------------------------------------|
142
+ | `[target-dir]` | Hedef dizin (varsayılan olarak mevcut dizin `.`) |
143
+ | `--no-symlink` | Sembolik bağlantı yerine beceri dosyalarını kopyalar (Windows'ta kullanışlıdır) |
144
+ | `--platform` | Platformu zorla: `claude`, `codex` veya `all` |
145
+
146
+ ### Üzerine Yazma Algılama
147
+
148
+ Hedef dizinde `CLAUDE.md` zaten mevcutsa, `id3` şu soruyu sorar:
149
+
150
+ ```
151
+ "IDDD appears to be already installed. Overwrite? (y/N)"
152
+ ```
153
+
154
+ ### Kurulum Sonrası Çıktı
155
+
156
+ ```
157
+ ┌── IDDD installed ─────────────────────────────────────────┐
158
+ │ │
159
+ │ Next steps: │
160
+ │ │
161
+ │ 1. Fill in steering/product.md │
162
+ │ 2. Run /id3-identify-entities to start │
163
+ │ 3. Customize steering/data-conventions.md │
164
+ │ │
165
+ │ Skills: │
166
+ │ ├── id3-identify-entities (Phase 0/1) │
167
+ │ ├── id3-design-information (Phase 2) │
168
+ │ ├── id3-design-ui (Phase 2.5) │
169
+ │ ├── id3-spawn-team (Phase 3-5) │
170
+ │ ├── id3-info-audit (Audit) │
171
+ │ └── id3-preview (Visual Preview) │
172
+ │ │
173
+ └───────────────────────────────────────────────────────────┘
174
+ ```
175
+
176
+ ---
177
+
178
+ ## Kurulumdan Sonra Dizin Yapısı
179
+
180
+ `npx id3@latest` komutunu çalıştırdıktan sonra projeniz aşağıdaki yapıya sahip olur:
181
+
182
+ ```
183
+ your-project/
184
+
185
+ │ ===== Paylaşılan (tüm platformlar) =====
186
+
187
+ ├── skills/ Beceri orijinalleri (tek doğru kaynak)
188
+ │ ├── id3-identify-entities/ Phase 0/1: Entity tanımlama
189
+ │ │ ├── SKILL.md
190
+ │ │ └── references/
191
+ │ │ ├── phase0-brownfield.md Mevcut koddan tersine çıkarma
192
+ │ │ └── phase1-greenfield.md Yeni projeler için yapılandırılmış görüşme
193
+ │ ├── id3-design-information/ Phase 2: Bilgi yapılandırma
194
+ │ │ ├── SKILL.md
195
+ │ │ └── references/
196
+ │ │ └── phase2-procedure.md İyileştirme prosedürü
197
+ │ ├── id3-design-ui/ Phase 2.5: UI tasarımı ve uygulaması
198
+ │ │ ├── SKILL.md
199
+ │ │ └── references/
200
+ │ │ ├── step1-structure-derivation.md
201
+ │ │ ├── step2-visual-contract.md
202
+ │ │ ├── step3-gate-and-mockup.md
203
+ │ │ └── step4-implementation.md
204
+ │ ├── id3-spawn-team/ Çoklu ajan uygulamasını dağıtma
205
+ │ ├── id3-info-audit/ Entropi denetimi (sapma algılama)
206
+ │ └── id3-preview/ Bilgi modelinin görsel önizlemesi
207
+
208
+ ├── specs/ Bilgi modeli çıktıları
209
+ │ ├── entity-catalog.md Entity envanteri + özet tablosu
210
+ │ ├── data-model.md Mermaid ERD + tasarım kararları
211
+ │ ├── ui-inventory.md Ekran envanteri + eşleme matrisi
212
+ │ ├── ui-structure.md Ekran envanteri + navigasyon (Phase 2.5)
213
+ │ └── ui-design-contract.md Tasarım token'ları + bileşen eşleme (Phase 2.5)
214
+
215
+ ├── docs/ Destekleyici belgeler
216
+ │ ├── business-rules.md BR-xxx indeksli iş kuralları
217
+ │ ├── domain-glossary.md Terim / İngilizce / tanım / notlar
218
+ │ ├── info-debt.md Tutarsızlık takipçisi
219
+ │ └── model-changelog.md Keep a Changelog formatı
220
+
221
+ ├── steering/ Proje düzeyinde kurallar
222
+ │ ├── product.md Ürün vizyonu ve kapsamı (kullanıcı tarafından yazılır)
223
+ │ └── data-conventions.md PK stratejisi, adlandırma, zaman damgaları vb.
224
+
225
+ ├── hooks/ Harness Hook betikleri (derlenmiş JS paketleri)
226
+ │ ├── iddd-schema-drift.js schema-drift algılama
227
+ │ ├── iddd-rule-check.js İş kuralı takibi
228
+ │ ├── iddd-auto-audit.js Otomatik entropi denetimi
229
+ │ ├── pre-commit Git Hook (schema-drift + rule-check)
230
+ │ └── post-commit Git Hook (auto-audit)
231
+
232
+ ├── .iddd/ IDDD dahili durum
233
+ │ ├── commit-count auto-audit aralık sayacı
234
+ │ └── preview/ Oluşturulan önizleme HTML'leri
235
+
236
+ │ ===== Platform: Claude Code =====
237
+
238
+ ├── CLAUDE.md Lider ajan bağlam belgesi
239
+ ├── .claude/
240
+ │ ├── settings.local.json Hook kaydı (init tarafından enjekte edilir)
241
+ │ ├── skills/ -> skills/ skills/ orijinallerine sembolik bağlantılar
242
+ │ └── hooks/
243
+ │ └── hook-config.json IDDD Hook ayarları
244
+
245
+ │ ===== Platform: OpenAI Codex =====
246
+
247
+ ├── AGENTS.md Platformlar arası ajan talimatları
248
+ ├── .agents/
249
+ │ └── skills/ -> skills/ skills/ orijinallerine sembolik bağlantılar
250
+ └── .codex/
251
+ └── hooks.json Codex Hook yapılandırması
252
+ ```
253
+
254
+ ### Beceri Dosyası Paylaşım Stratejisi
255
+
256
+ Beceri içeriği tek bir kanonik konumda (`skills/`) tutulur. Platforma özgü yollar (`.claude/skills/`, `.agents/skills/`) `init` CLI tarafından dinamik olarak oluşturulan sembolik bağlantılardır. Bu, tüm platformlarda tek bir bakım noktası sağlar. Windows'ta kopyalar oluşturmak için `--no-symlink` kullanın.
257
+
258
+ ---
259
+
260
+ ## İş Akışı
261
+
262
+ ```
263
+ ╔══════════════════════════════════════════════════════════════════════════╗
264
+ ║ IDDD WORKFLOW OVERVIEW ║
265
+ ╚══════════════════════════════════════════════════════════════════════════╝
266
+
267
+ ┌──────────────┐ ┌──────────────┐
268
+ │ │<--- diyalog ---->│ │
269
+ │ Kullanıcı │ │ Lider Ajan │
270
+ │ │ │ │
271
+ └──────────────┘ └──────┬───────┘
272
+
273
+ ┌──────────────────┴──────────────────┐
274
+ │ │
275
+ v v
276
+ ┌────────────────────┐ ┌────────────────────┐
277
+ │ Mevcut kod var mı?│ │ Mevcut kod yok mu?│
278
+ └─────────┬──────────┘ └─────────┬──────────┘
279
+ │ │
280
+ v v
281
+ ┌──────────────────────────────────┐ ┌──────────────────────────────────┐
282
+ │ Phase 0: Tersine Çıkarma │ │ Phase 1: Yapılandırılmış Görüşme│
283
+ │ │ │ │
284
+ │ - ORM / şema dosyalarını tara │ │ "Alanınız hangi bilgileri │
285
+ │ - Entity'leri çıkar │ │ yönetiyor?" │
286
+ │ - Relationship'leri çıkar │ │ - Temel Entity'leri tanımla │
287
+ │ - Doğrulama görüşmesi │ │ - Relationship'leri keşfet │
288
+ └────────────────┬─────────────────┘ └────────────────┬─────────────────┘
289
+ │ │
290
+ v v
291
+ ┌─────────────────────────────────────────────────────┐
292
+ │ Entity Kataloğu Üretildi │
293
+ └─────────────────────────┬───────────────────────────┘
294
+
295
+ v
296
+ ┌────────────────────────────────────────────────────────────────────┐
297
+ │ Phase 2: Bilgi Tasarımı │
298
+ │ │
299
+ │ - Conceptual --> Logical Model │
300
+ │ - İş kurallarını türet (BR-xxx) │
301
+ │ - Hook'ları ve sürüm başlıklarını kaydet │
302
+ └─────────────────────────────────┬──────────────────────────────────┘
303
+
304
+ v
305
+ ┌────────────────────────────────────────────────────────────────────┐
306
+ │ Phase 2.5: UI Design (id3-design-ui) │
307
+ │ │
308
+ │ - Entity --> Screen auto-derivation │
309
+ │ - Visual design contract (tokens, components) │
310
+ │ - 7-Pillar gate + 3-level mockup preview │
311
+ │ - Agent Teams implementation + post-audit │
312
+ └─────────────────────────────────┬──────────────────────────────────┘
313
+
314
+ v
315
+ ┌─────────────────────────────────────────────────────┐
316
+ │ /id3-spawn-team │
317
+ └─────────────────────────┬───────────────────────────┘
318
+
319
+ ┌──────────────┴──────────────┐
320
+ │ │
321
+ v v
322
+ ┌────────────────────────────────┐ ┌────────────────────────────────┐
323
+ │ Claude Code: Agent Teams │ │ Codex: Agents SDK │
324
+ │ │ │ │
325
+ │ ┌────────┐ ┌──────┐ ┌────┐ │ │ ┌──────────────────────────┐ │
326
+ │ │ spec │ │ impl │ │ qa │ │ │ │ Handoff Deseni │ │
327
+ │ └───┬────┘ └──┬───┘ └─┬──┘ │ │ │ MCP Server üzerinden │ │
328
+ │ │ │ │ │ │ └──────────────────────────┘ │
329
+ │ └── mesajlaşma ───┘ │ │ │
330
+ │ (eşler arası) │ │ spec -> impl -> qa │
331
+ │ │ │ (sıralı handoff) │
332
+ └────────────────────────────────┘ └────────────────────────────────┘
333
+ ```
334
+
335
+ ### Phase Adım Adım
336
+
337
+ **Phase 0/1 -- Entity Tanımlama:**
338
+ Yapay zeka kodlama ajanınızı açın ve `/id3-identify-entities` komutunu çalıştırın. Ajan, mevcut bir kod tabanınız (brownfield) olup olmadığını veya sıfırdan mı başladığınızı (greenfield) otomatik olarak algılar, ardından uygun tanımlama akışını çalıştırır.
339
+
340
+ **Phase 2 -- Bilgi Tasarımı:**
341
+ `/id3-design-information` komutunu çalıştırın. Ajan kavramsal modeli mantıksal modele dönüştürür, iş kurallarını türetir ve sürüm başlıkları ile Hook yapılandırmalarını ayarlar.
342
+
343
+ **Phase 2.5 -- UI Tasarımı:**
344
+ `/id3-design-ui` komutunu çalıştırın. Ajan, Entity kataloğundan ekran yapısını türetir, tasarım token'ları ile görsel tasarım sözleşmesi oluşturur, etkileşimli mockup önizlemesi ile 7-Pillar kalite kapısı çalıştırır ve ardından paralel ekran uygulaması için Agent Teams oluşturarak uygulama sonrası denetim gerçekleştirir.
345
+
346
+ **Phase 3-5 -- Agent Teams ile Uygulama:**
347
+ `/id3-spawn-team` komutunu çalıştırın. Ajan, sonlandırılmış bilgi modelini okur ve sistemi paralel olarak uygulamak için özelleşmiş ajanlardan oluşan bir takım (spec-generator, implementer, qa-reviewer) oluşturur.
348
+
349
+ ---
350
+
351
+ ## Beceriler
352
+
353
+ ### id3-identify-entities (Phase 0/1)
354
+
355
+ IDDD iş akışının giriş noktası. Bu beceri brownfield ve greenfield yolları arasında **otomatik olarak dallanır**.
356
+
357
+ **Tetikleme anahtar kelimeleri:** `identify entities`, `information analysis`, `domain analysis`, `new project`, `entity identification`
358
+
359
+ **Otomatik algılama mantığı:** Beceri, proje kök dizinini ORM/şema dosyaları (Prisma, Drizzle, Django models, TypeORM entities, SQL migrations, Sequelize configs) için tarar. Bulunursa Phase 0'a girer; aksi halde Phase 1'e.
360
+
361
+ #### Phase 0: Brownfield -- Bilgi Modelini Tersine Çıkarma
362
+
363
+ Mevcut kod tabanları için ajan, örtük bilgi modelini sistematik olarak dört katmandan çıkarır:
364
+
365
+ | Katman | Kaynak | İncelenen | Güvenilirlik |
366
+ |--------|------------------|--------------------------------------------------------|--------------|
367
+ | L1 | Veritabanı Şeması| Tablolar, sütunlar, FK, indeksler, kısıtlamalar | En Yüksek |
368
+ | L2 | ORM / Modeller | Sanal alanlar, türetilmiş Attribute'lar, soft delete, durum | Yüksek |
369
+ | L3 | API Sözleşmeleri | Endpoint'ler, DTO'lar, doğrulama mantığı | Orta |
370
+ | L4 | Ön Yüz | Rotalar, bileşenler, form alanları | Referans |
371
+
372
+ L4 araştırması kapsamlıdır: ekran-Entity eşleme matrisleri içeren eksiksiz bir kullanıcı arayüzü envanteri (`specs/ui-inventory.md`) oluşturmak için dosya tabanlı yönlendirmeyi (Next.js `app/`, `pages/`), React Router, Vue Router vb. tarar.
373
+
374
+ Bulgular **eşleşme** (katmanlar arasında tutarlı), **uyumsuzluk** (`docs/info-debt.md`'de kaydedilir) veya **örtük** (kod mantığında gizli, açık iş kuralları olarak ortaya çıkarılır) şeklinde sınıflandırılır.
375
+
376
+ Çıkarma işleminden sonra, bir **doğrulama görüşmesi** doğruluğu kullanıcıyla teyit eder.
377
+
378
+ **Üretilen çıktılar:** `specs/entity-catalog.md`, `specs/data-model.md`, `specs/ui-inventory.md`, `docs/business-rules.md`, `docs/info-debt.md`
379
+
380
+ #### Phase 1: Greenfield -- Yapılandırılmış Görüşme
381
+
382
+ Yeni projeler için ajan, alan bilgisini keşfetmek üzere yapılandırılmış bir görüşme yapar:
383
+
384
+ 1. **Bilgi tanımlama** -- "Bu sistem hangi temel 'şeyleri' (isimleri) yönetiyor?"
385
+ 2. **Relationship keşfi** -- "Bu şeyler nasıl ilişkili? Bire-çok mu yoksa çoka-çok mu?"
386
+ 3. **Kural keşfi** -- "Hangi kurallar uygulanmalı? Herhangi bir durum geçişi var mı?"
387
+ 4. **Silverston evrensel desen kontrol listesi** -- Ajan, keşfedilen Entity'leri kanıtlanmış desenlere karşı çapraz referanslar: Party, Product/Service, Order/Transaction, Classification, Status/Lifecycle, Hierarchy, Contact Mechanism, Document/Content.
388
+
389
+ **Üretilen çıktılar:** `specs/entity-catalog.md`, `specs/data-model.md`, `docs/business-rules.md`
390
+
391
+ ---
392
+
393
+ ### id3-design-information (Phase 2)
394
+
395
+ Kavramsal modeli bir **mantıksal modele** dönüştürür. İş kuralları, geçerlilik kısıtlamaları ve türetim kuralları bilgi modelinden otomatik olarak türetilir.
396
+
397
+ **Tetikleme anahtar kelimeleri:** `design information`, `refine model`, `logical model`, `schema design`, `information structuring`
398
+
399
+ **Ön koşul:** `specs/entity-catalog.md` en az 2 tanımlanmış Entity ile mevcut olmalıdır.
400
+
401
+ **Prosedür:**
402
+
403
+ 1. **Attribute iyileştirme** -- Somut veri tipleri (UUID, TEXT, INTEGER, TIMESTAMP, JSONB vb.), NOT NULL / DEFAULT / UNIQUE kısıtlamaları ve indeks gereksinimleri atanır.
404
+ 2. **Relationship somutlaştırma** -- FK yerleşimi, silme/güncelleme kuralları (CASCADE, SET NULL, RESTRICT) belirlenir ve çoka-çok Relationship'ler için birleştirme tabloları tanımlanır.
405
+ 3. **Otomatik iş kuralı türetme:**
406
+ - NOT NULL kısıtlaması --> "Bu alan zorunludur" (BR-xxx)
407
+ - UNIQUE kısıtlaması --> "Yinelenenlere izin verilmez" (BR-xxx)
408
+ - FK + CASCADE --> "Üst öğeyi silmek alt öğeleri de siler" (BR-xxx)
409
+ - Durum geçişleri --> "İzin verilen geçiş yolları" (BR-xxx)
410
+ - Türetilmiş Attribute'lar --> "Hesaplama kuralı" (BR-xxx)
411
+ 4. **Tasarım kararı soruları** -- Ajan, kullanıcıya büyük veri depolama stratejisi, soft delete kapsamı, çok kiracılılık, denetim izi ihtiyaçları vb. hakkında sorular sorar.
412
+ 5. **Çıktı sonlandırma** -- Tüm spesifikasyon dosyalarını sürüm başlıkları ve Hook yapılandırmaları ile günceller.
413
+
414
+ **Güncellenen çıktılar:** `specs/entity-catalog.md`, `specs/data-model.md`, `docs/business-rules.md`
415
+
416
+ ---
417
+
418
+ ### id3-design-ui (Phase 2.5)
419
+
420
+ Bilgi modelinden UI yapısı ve görsel tasarım türetir, ardından Agent Teams kullanarak ekranları uygular.
421
+
422
+ **Tetikleme anahtar kelimeleri:** `design ui`, `ui design`, `screen design`, `phase 2.5`, `ui structure`
423
+
424
+ **Ön koşul:** Phase 2 tamamlanmış (`entity-catalog.md` version >= `"1.0"`).
425
+
426
+ **4 Adımlı Pipeline:**
427
+
428
+ 1. **UI Yapı Türetme** -- 9 türetme kuralı (entity -> list/detail/form/dashboard) kullanarak Entity'leri ekranlara otomatik eşler. 12 tip tabanlı kural ile Attribute'ları Widget'lara eşler. "Çıktı önce, girdi sonra" ilkesini uygular.
429
+ 2. **Görsel Tasarım Sözleşmesi** -- Mevcut frontend framework'ü (React, Vue, Svelte vb.) ve UI kütüphanesini algılar. 5 tasarım token alanı oluşturur: spacing, typography, color, copywriting, component registry.
430
+ 3. **Uygulama Öncesi Kapı** -- 7-Pillar doğrulama (yapı bütünlüğü, spacing, typography, color, copywriting, component registry, traceability) çalıştırır. Örnek verilerle 3 seviyeli HTML mockup (wireframe, styled, interactive) oluşturur.
431
+ 4. **Uygulama + Sonrası Denetim** -- Paralel ekran uygulaması için Agent Teams oluşturur. Uygulama sonrası görsel denetim her Pillar'ı 1-4 olarak puanlar ve en önemli 3 düzeltmeyi türetir.
432
+
433
+ **Çıktılar:** `specs/ui-structure.md`, `specs/ui-design-contract.md`, `.iddd/preview/mockup-*.html`, `.iddd/preview/ui-audit.html`
434
+
435
+ ---
436
+
437
+ ### id3-spawn-team (Phase 3-5)
438
+
439
+ Sonlandırılmış bilgi modeline dayalı olarak sistemi uygulamak için özelleşmiş ajanlardan oluşan bir takım oluşturur.
440
+
441
+ **Ön koşul:** `specs/entity-catalog.md` ve `specs/data-model.md` Phase 2 tamamlanmış olarak mevcut olmalıdır.
442
+
443
+ #### Claude Code: Agent Teams
444
+
445
+ Her biri bağımsız bağlam pencereleri ve bağımsız Git worktree'leri olan üç takım üyesi oluşturulur:
446
+
447
+ | Takım Üyesi | Rol |
448
+ |--------------------|---------------------------------------------------------------|
449
+ | spec-generator | Bilgi modelini requirements.md ve api-contracts.md'ye dönüştürür |
450
+ | implementer | Spesifikasyonlardan kod oluşturur, Entity başına atomik commit |
451
+ | qa-reviewer | Uygulamayı bilgi modeline karşı doğrular; başarısızlık durumunda implementer'a doğrudan mesaj gönderir |
452
+
453
+ **Görev oluşturma kuralları:**
454
+ - Entity başına bir görev oluşturmak için Entity kataloğu okunur (model + migration + API + doğrulama + testler).
455
+ - Veri modelindeki FK bağımlılıkları bağımlılık grafiğini belirler.
456
+ - Bağımsız Entity'ler paralel çalışır; bağımlı Entity'ler üst öğelerini bekler.
457
+
458
+ #### OpenAI Codex: Agents SDK + Handoff Deseni
459
+
460
+ Codex'te, çoklu ajan çalışması Agents SDK handoff desenini kullanır. Codex bir MCP Server olarak başlatılır (`codex --mcp-server`) ve bir Proje Yöneticisi ajanı, aynı üç role (spec-generator, implementer, qa-reviewer) görevleri handoff'lar aracılığıyla dağıtmak için Entity kataloğunu okur.
461
+
462
+ ---
463
+
464
+ ### id3-info-audit
465
+
466
+ Sapma ve entropiyi algılamak için kod tabanını bilgi modeline karşı denetler.
467
+
468
+ **Tetikleme anahtar kelimeleri:** `info audit`, `information audit`, `model audit`, `drift check`
469
+
470
+ **Prosedür:**
471
+
472
+ 1. `specs/entity-catalog.md`'den Entity listesini okur.
473
+ 2. Kod tabanını şunlar için tarar:
474
+ - Uygulanmamış Entity'ler / tanımlanmamış modeller
475
+ - `docs/business-rules.md`'de olup koda yansımayan iş kuralları
476
+ - Veri tipi / kısıtlama uyumsuzlukları
477
+ 3. `specs/ui-structure.md` ve `specs/ui-design-contract.md`'ye karşı kullanıcı arayüzü tutarlılığını kontrol eder:
478
+ - Uygulanmamış ekranlar / tanımlanmamış ekranlar
479
+ - Form alanı ile Attribute eşleme uyumsuzlukları
480
+ - Eksik navigasyon yolları
481
+ 4. Sürüm başlıklarını günceller (`last_verified`, `audit_status`).
482
+ 5. Hook atlama geçmişini kontrol eder (`.iddd/skip-history.log`).
483
+ 6. Görsel göstergelerle Entity bazında durum raporu çıktılar.
484
+
485
+ **Görsel çıktı:** Denetim sonuçları `.iddd/preview/audit-{date}.html` içinde etkileşimli bir HTML gösterge paneli olarak oluşturulur.
486
+
487
+ ---
488
+
489
+ ### id3-preview
490
+
491
+ Bilgi modelini ve denetim sonuçlarını tarayıcıda görüntülemek için hafif bir yerel HTTP sunucusu başlatır.
492
+
493
+ **Tetikleme anahtar kelimeleri:** `preview`, `show erd`, `show model`, `visual preview`
494
+
495
+ Sunucu `listen(0)` (işletim sistemi tarafından atanan port) kullanır ve şunları sunar:
496
+ - **ERD Önizlemesi** -- Entity'ye tıklayarak katalog detaylarına giden etkileşimli Mermaid ERD
497
+ - **Kullanıcı Arayüzü Mockup'ı** -- `specs/ui-structure.md` ve `specs/ui-design-contract.md`'den türetilen wireframe düzenleri
498
+ - **Denetim Gösterge Paneli** -- İş kuralı kapsamı ile Entity bazında durum kartları
499
+
500
+ Tüm HTML dosyaları `.iddd/preview/` içinde kalıcıdır ve sunucu olmadan bile doğrudan tarayıcıda açılabilir.
501
+
502
+ ---
503
+
504
+ ## Harness Hook Sistemi
505
+
506
+ IDDD, otomatik Hook'lar aracılığıyla bilgi-öncelikli disiplini uygular. Felsefe "lütfen süreci takip edin" değil, **"takip etmezseniz commit engellenir"** şeklindedir.
507
+
508
+ ### Hook Genel Bakış
509
+
510
+ | Hook | Tetikleyici | Eylem | Önem Derecesi |
511
+ |----------------|------------------|------------------------------------------------------|---------------|
512
+ | schema-drift | pre-commit | Şema değişikliklerinin entity-catalog.md ile eşleştiğini doğrular | **BLOCK** (commit reddedilir) |
513
+ | rule-check | pre-commit | Yeni doğrulama mantığını business-rules.md'ye karşı kontrol eder | **WARN** (commit izin verilir, mesaj gösterilir) |
514
+ | auto-audit | post-commit | Her N commit'te bir info-audit çalıştırır | **INFO** (rapor oluşturulur) |
515
+
516
+ ### schema-drift (BLOCK)
517
+
518
+ Şema ile ilgili dosyaları (Prisma, Drizzle, Django models, TypeORM entities, SQL migrations vb.) değiştirdiğinizde, Hook `specs/entity-catalog.md`'nin buna uygun olarak güncellenip güncellenmediğini kontrol eder. Güncellenmemişse commit **reddedilir**. Bilgi modeli her zaman koddan *önce* güncellenmelidir.
519
+
520
+ **İzlenen dosya desenleri** (yapılandırılabilir):
521
+ ```
522
+ prisma/schema.prisma, drizzle/**/*.ts, **/migrations/*.sql,
523
+ **/models.py, **/entities/*.ts, **/entities/*.java, schema.sql
524
+ ```
525
+
526
+ ### rule-check (WARN)
527
+
528
+ Doğrulama mantığı (Zod, Yup, Joi, Pydantic vb.) eklediğinizde veya değiştirdiğinizde, Hook `docs/business-rules.md`'de karşılık gelen bir `BR-xxx` girdisi arar. Eksikse bir uyarı verilir. Commit devam eder, ancak eksik kural işaretlenir.
529
+
530
+ **İzlenen dosya desenleri** (yapılandırılabilir):
531
+ ```
532
+ *.schema.ts, *.validator.*, **/validators/**
533
+ ```
534
+
535
+ ### auto-audit (INFO)
536
+
537
+ Her N commit'te bir (varsayılan: 10, yapılandırılabilir), Harness otomatik olarak kod tabanını bilgi modeline karşı karşılaştıran bir info-audit çalıştırır. Commit sayacı `.iddd/commit-count` içinde saklanır. Sonuçlar `.iddd/preview/audit-{date}.html` dosyasına yazılır.
538
+
539
+ ### Hook Yapılandırması
540
+
541
+ Tüm Hook ayarları `.claude/hooks/hook-config.json` (Claude Code) veya `.codex/hooks.json` (Codex) içinde bulunur.
542
+
543
+ ```json
544
+ {
545
+ "enabled": true,
546
+ "hooks": {
547
+ "pre-commit": {
548
+ "schema-drift": {
549
+ "enabled": true,
550
+ "severity": "block",
551
+ "monitored_patterns": [
552
+ "prisma/schema.prisma",
553
+ "drizzle/**/*.ts",
554
+ "**/migrations/*.sql",
555
+ "**/models.py",
556
+ "**/entities/*.ts",
557
+ "**/entities/*.java"
558
+ ]
559
+ },
560
+ "rule-check": {
561
+ "enabled": true,
562
+ "severity": "warn",
563
+ "validation_patterns": [
564
+ "*.schema.ts",
565
+ "*.validator.*",
566
+ "**/validators/**"
567
+ ]
568
+ }
569
+ },
570
+ "post-commit": {
571
+ "auto-audit": {
572
+ "enabled": true,
573
+ "interval_commits": 10
574
+ }
575
+ }
576
+ }
577
+ }
578
+ ```
579
+
580
+ Tüm IDDD Hook'larını devre dışı bırakmak için üst düzeyde `"enabled": false` olarak ayarlayın. Tek bir Hook'u devre dışı bırakmak için ilgili Hook'un `"enabled"` değerini `false` yapın. auto-audit sıklığını değiştirmek için `"interval_commits"` değerini ayarlayın.
581
+
582
+ ### Hook Atlama
583
+
584
+ Tüm Hook'ları geçici olarak atlamak için `IDDD_SKIP_HOOKS=1` ayarlayın. Atlamalar `.iddd/skip-history.log` dosyasına kaydedilir ve denetimler sırasında gözden geçirilir.
585
+
586
+ ---
587
+
588
+ ## Entropi Yönetimi
589
+
590
+ Zaman içinde bilgi modelleri koddan uzaklaşır. IDDD, entropiyle üç mekanizma aracılığıyla mücadele eder:
591
+
592
+ ### Sürüm Başlıkları
593
+
594
+ `specs/entity-catalog.md` ve `specs/data-model.md`, model durumunu izleyen YAML ön bilgi içerir:
595
+
596
+ ```yaml
597
+ ---
598
+ version: "1.0"
599
+ last_verified: "2026-04-05"
600
+ phase: "Phase 2 Complete"
601
+ entity_count: 12
602
+ rule_count: 19
603
+ audit_status: "clean"
604
+ ---
605
+ ```
606
+
607
+ **Kurallar:**
608
+ - `version` her Phase tamamlandığında artırılır (Phase 1: `"0.1"`, Phase 2: `"1.0"`, sonraki: `"1.1"`, `"1.2"`, ...).
609
+ - `last_verified` model denetlendiğinde veya doğrulandığında güncellenir.
610
+ - `last_verified` **7 günden eski** ise, ajan yeni çalışmaya devam etmeden önce `/id3-info-audit` çalıştırmanızı isteyecektir. Eski modeller sapmaya yol açar.
611
+
612
+ ### Değişiklik Günlüğü
613
+
614
+ Tüm model değişiklikleri `docs/model-changelog.md` içinde [Keep a Changelog](https://keepachangelog.com/) formatıyla kaydedilir:
615
+
616
+ ```markdown
617
+ ## [1.0] -- 2026-04-05
618
+ ### Phase 2 Complete
619
+ - 12 entities finalized in logical model
620
+ - 19 business rules derived
621
+ - Design decisions: D-01 (S3 separation), D-02 (multi-tenant reservation), D-03 (soft delete scope)
622
+ - UI proposals: 6 screens generated
623
+ ```
624
+
625
+ ### Otomatik Denetim
626
+
627
+ `auto-audit` Hook'u (post-commit), sapma birikmeden önce yakalamak için her N commit'te bir tam bilgi denetimi çalıştırır.
628
+
629
+ ---
630
+
631
+ ## Özelleştirme Rehberi
632
+
633
+ IDDD, projenizin kurallarına uyarlanacak şekilde tasarlanmıştır. Neyi ve nerede özelleştireceğiniz aşağıda belirtilmiştir:
634
+
635
+ | Neyi özelleştirmeli | Düzenlenecek dosya |
636
+ |------------------------------------------------|------------------------------------|
637
+ | Ürün vizyonu ve kapsamı | `steering/product.md` |
638
+ | Adlandırma kuralları, PK stratejisi, zaman damgaları, soft-delete politikası, ENUM vs referans tabloları | `steering/data-conventions.md` |
639
+ | Entity tanımları | `specs/entity-catalog.md` |
640
+ | Veri modeli (ERD) | `specs/data-model.md` |
641
+ | İş kuralları | `docs/business-rules.md` |
642
+ | Alan sözlüğü | `docs/domain-glossary.md` |
643
+ | Kullanıcı arayüzü ekran envanteri | `specs/ui-inventory.md` |
644
+ | UI yapısı (ekran türetme) | `specs/ui-structure.md` |
645
+ | UI tasarım sözleşmesi (token'lar, bileşenler) | `specs/ui-design-contract.md` |
646
+ | Hook davranışı (etkinleştirme/devre dışı bırakma, önem derecesi) | `.claude/hooks/hook-config.json` |
647
+ | Hook'lar için izlenen dosya desenleri | `.claude/hooks/hook-config.json` |
648
+ | auto-audit commit aralığı | `.claude/hooks/hook-config.json` |
649
+ | Codex Hook yapılandırması | `.codex/hooks.json` |
650
+
651
+ **İpucu:** Tüm `specs/` ve `docs/` dosyaları sürüm başlıkları içeren YAML ön bilgi kullanır. IDDD Harness'ı entropi sapmasını algılamak için bu sürümleri izler. Bir spesifikasyon dosyasını değiştirdiğinizde her zaman sürüm başlığını güncelleyin.
652
+
653
+ ---
654
+
655
+ ## Kullanım Örnekleri
656
+
657
+ ### Örnek 1: Yeni Bir Proje Başlatma (Greenfield)
658
+
659
+ ```
660
+ $ mkdir my-saas && cd my-saas && git init
661
+ $ npx id3@latest
662
+
663
+ IDDD installed. Next: fill in steering/product.md
664
+
665
+ $ claude
666
+ > /id3-identify-entities
667
+
668
+ Agent: "What core 'things' does your system manage?"
669
+ You: "Users, Organizations, Subscriptions, Invoices, and Features."
670
+ Agent: "How are Users related to Organizations?"
671
+ You: "Many-to-many through a Membership entity with a role attribute."
672
+ ...
673
+
674
+ Entity catalog produced: specs/entity-catalog.md (5 entities, 7 relationships)
675
+
676
+ > /id3-design-information
677
+
678
+ Agent refines attributes, derives 14 business rules.
679
+ specs/entity-catalog.md updated (version: 1.0)
680
+ docs/business-rules.md updated (BR-001 through BR-014)
681
+
682
+ > /id3-design-ui
683
+
684
+ Step 1: Deriving UI structure from 5 entities... 8 screens mapped
685
+ Step 2: Design contract established (React + Tailwind detected)
686
+ Step 3: 7-Pillar gate passed. Mockup preview: http://localhost:52341
687
+ Step 4: Spawning Agent Teams for screen implementation...
688
+ Post-audit: all 7 pillars scored 3+/4
689
+
690
+ specs/ui-structure.md generated
691
+ specs/ui-design-contract.md generated
692
+
693
+ > /id3-spawn-team
694
+
695
+ Spawning Agent Teams:
696
+ - spec-generator: generating requirements.md, api-contracts.md
697
+ - implementer: building User -> Organization -> Membership -> ...
698
+ - qa-reviewer: verifying against information model
699
+ ```
700
+
701
+ ### Örnek 2: Mevcut Bir Projeye Uygulama (Brownfield)
702
+
703
+ ```
704
+ $ cd existing-django-project
705
+ $ npx id3@latest
706
+
707
+ Detected: Django models (models.py), PostgreSQL migrations
708
+ IDDD installed.
709
+
710
+ $ claude
711
+ > /id3-identify-entities
712
+
713
+ Phase 0 (Brownfield) activated.
714
+ Scanning L1 (DB schema)... 23 tables found
715
+ Scanning L2 (Django models)... 19 models found
716
+ Scanning L3 (API contracts)... DRF serializers analyzed
717
+ Scanning L4 (Frontend)... React routes mapped
718
+
719
+ Discrepancies found:
720
+ - 4 tables have no corresponding Django model (logged in info-debt.md)
721
+ - 3 implicit business rules surfaced from view logic
722
+
723
+ Agent: "Does this information model accurately reflect your codebase?"
724
+ You: "Yes, but the legacy_audit table is deprecated -- remove it."
725
+
726
+ Entity catalog produced: 19 entities, 11 info-debt items
727
+
728
+ > /id3-design-information
729
+
730
+ Refining existing model...
731
+ New business rules derived from Django validators: BR-015 through BR-023
732
+
733
+ > /id3-design-ui
734
+
735
+ Step 1: Deriving UI structure... comparing with existing ui-inventory.md
736
+ Change summary: 2 new screens proposed, 3 existing screens updated
737
+ Step 2-4: Design contract, gate, and implementation...
738
+ ```
739
+
740
+ ---
741
+
742
+ ## Entelektüel Köken
743
+
744
+ IDDD, çeşitli entelektüel geleneklerden fikirleri sentezler:
745
+
746
+ - **Peter Chen'in ER Modeli (1976)** -- "Gerçek dünya Entity'lerden ve Relationship'lerden oluşur." Bilgi yapısının uygulama mantığından önce geldiğine dair temel içgörü.
747
+ - **Len Silverston'ın Evrensel Veri Modelleri** -- Keşfedilen Entity'lerin doğrulandığı bir kontrol listesi olarak hizmet eden yeniden kullanılabilir bilgi desenleri (Party, Product, Order, Hierarchy).
748
+ - **Eric Evans'ın Domain-Driven Design'ı (2003)** -- Bounded Context, Ubiquitous Language ve Aggregate desenleri. IDDD, alan diline ve açık sınırlara verilen önemi miras alır.
749
+ - **Sophia Prater'ın OOUX'u (Object-Oriented UX)** -- "Etkileşimlerden önce nesneleri tasarlayın." ORCA çerçevesi (Objects, Relationships, CTAs, Attributes) doğrudan IDDD'nin çıktı-öncelikli kullanıcı arayüzü türetmesini bilgilendirir.
750
+ - **Jamie Lord'un "Data First, Code Second" (2024)** -- "Bilgiyi veriye katla." Unix Temsil Kuralı'nın modern yazılım geliştirmeye uygulanması.
751
+ - **Mitchell Hashimoto'nun Harness Mühendisliği (2026)** -- `Agent = Model + Harness`. Yapay zeka ajanlarının zaman içinde etkin kalabilmeleri için mimari kısıtlamalara, bağlam mühendisliğine ve entropi yönetimine ihtiyaç duyduğu içgörüsü. IDDD'nin Hook sistemi, sürüm başlıkları ve auto-audit'i Harness mühendisliği ilkelerinin doğrudan uygulamalarıdır.
752
+
753
+ **Temel içgörü:** *Mantıksal model tamamlandığında, uygulama davranışının %80'i zaten tanımlanmıştır -- herhangi bir teknoloji seçimi yapılmadan önce. Ve bu bilgi modelinin kendisi, yapay zeka ajanları için en iyi Harness'tır.*
754
+
755
+ ---
756
+
757
+ ## Lisans
758
+
759
+ MIT
760
+
761
+ ---
762
+
763
+ ```
764
+ ┌──────────────────────────────────────────────────────────────────┐
765
+ │ │
766
+ │ "Hangi bilgi mevcut?" -- her zaman ilk soru. │
767
+ │ │
768
+ └──────────────────────────────────────────────────────────────────┘
769
+ ```