tillerhand 3.43.0 → 3.47.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.
- package/.claude/agents/board-chair.md +20 -20
- package/.claude/agents/code-reviewer.md +20 -20
- package/.claude/agents/council-advisor.md +14 -14
- package/.claude/agents/security-auditor.md +30 -30
- package/.claude/agents/test-writer.md +22 -22
- package/.claude/board/board-ai.md +25 -25
- package/.claude/board/board-api.md +25 -25
- package/.claude/board/board-architect.md +28 -28
- package/.claude/board/board-devops.md +25 -25
- package/.claude/board/board-mobile.md +25 -25
- package/.claude/board/board-performance.md +24 -24
- package/.claude/board/board-privacy.md +25 -25
- package/.claude/board/board-product.md +26 -26
- package/.claude/board/board-qa.md +28 -28
- package/.claude/board/board-ux.md +26 -26
- package/.claude/board/council.md +76 -76
- package/.claude/board/rules.md +61 -61
- package/.claude/claude-security-guidance.md +10 -10
- package/.claude/commands/adopt.md +70 -69
- package/.claude/commands/ask-mode.md +9 -9
- package/.claude/commands/board.md +15 -15
- package/.claude/commands/build.md +47 -47
- package/.claude/commands/dashboard.md +17 -17
- package/.claude/commands/design.md +31 -31
- package/.claude/commands/findings-all.md +14 -14
- package/.claude/commands/findings-business.md +7 -7
- package/.claude/commands/findings-legal.md +7 -7
- package/.claude/commands/findings-perf.md +7 -7
- package/.claude/commands/findings-security.md +9 -9
- package/.claude/commands/findings-tech.md +7 -7
- package/.claude/commands/findings-ux.md +7 -7
- package/.claude/commands/fix-bug.md +15 -15
- package/.claude/commands/freeze.md +8 -8
- package/.claude/commands/handoff.md +38 -38
- package/.claude/commands/kit-update.md +17 -14
- package/.claude/commands/language.md +13 -0
- package/.claude/commands/maintain.md +19 -19
- package/.claude/commands/plan-task.md +32 -32
- package/.claude/commands/qa.md +17 -17
- package/.claude/commands/release.md +40 -40
- package/.claude/commands/research.md +31 -31
- package/.claude/commands/retro.md +32 -32
- package/.claude/commands/review-changes.md +15 -15
- package/.claude/commands/rollback.md +24 -24
- package/.claude/commands/start.md +116 -113
- package/.claude/commands/tools.md +11 -11
- package/.claude/commands/user-feedback.md +11 -11
- package/.claude/commands/wrap-up.md +18 -18
- package/.claude/findings/lenses/business.md +24 -24
- package/.claude/findings/lenses/legal.md +29 -29
- package/.claude/findings/lenses/perf.md +19 -19
- package/.claude/findings/lenses/security.md +30 -30
- package/.claude/findings/lenses/tech.md +23 -23
- package/.claude/findings/lenses/ux.md +19 -19
- package/.claude/findings/protocol.md +54 -54
- package/.claude/findings/report-template.md +30 -30
- package/.claude/hooks/budget.mjs +7 -7
- package/.claude/hooks/checkpoint.mjs +12 -12
- package/.claude/hooks/commit-gate.mjs +38 -37
- package/.claude/hooks/cost.mjs +2 -2
- package/.claude/hooks/council.mjs +3 -3
- package/.claude/hooks/dashboard-data.mjs +3 -2
- package/.claude/hooks/dashboard.mjs +164 -149
- package/.claude/hooks/destructive-guard.mjs +74 -64
- package/.claude/hooks/edit-rounds.mjs +3 -3
- package/.claude/hooks/flow.mjs +10 -10
- package/.claude/hooks/freeze-guard.mjs +27 -23
- package/.claude/hooks/gate.mjs +25 -25
- package/.claude/hooks/guard-secrets.mjs +11 -11
- package/.claude/hooks/lang.mjs +114 -0
- package/.claude/hooks/messages.mjs +495 -0
- package/.claude/hooks/models.mjs +14 -11
- package/.claude/hooks/notify.mjs +3 -2
- package/.claude/hooks/package-gate.mjs +17 -15
- package/.claude/hooks/plugins-sync.mjs +9 -9
- package/.claude/hooks/prefs.mjs +19 -19
- package/.claude/hooks/preview.mjs +11 -11
- package/.claude/hooks/progress.mjs +14 -14
- package/.claude/hooks/qa-report.mjs +11 -10
- package/.claude/hooks/reminder.mjs +6 -3
- package/.claude/hooks/session-start.mjs +23 -17
- package/.claude/hooks/shared.mjs +1 -1
- package/.claude/hooks/status-read.mjs +5 -4
- package/.claude/hooks/statusline.mjs +14 -11
- package/.claude/hooks/structure-guard.mjs +9 -9
- package/.claude/hooks/test-guard.mjs +12 -12
- package/.claude/hooks/tools.mjs +28 -29
- package/.claude/hooks/usage.mjs +18 -15
- package/.claude/output-styles/anlatici.md +28 -28
- package/.claude/security-patterns.json +3 -3
- package/.claude/settings.json +2 -0
- package/.claude/skills/logo-design/SKILL.md +42 -42
- package/.claude/skills/motion-video/SKILL.md +52 -52
- package/.claude/skills/source-research/SKILL.md +35 -35
- package/.claude/skills/ui-motion/SKILL.md +38 -38
- package/.github/workflows/kit-tests.yml +7 -7
- package/.github/workflows/npm-publish.yml +16 -16
- package/AGENTS.md +56 -56
- package/CHANGELOG.md +7 -7
- package/CLAUDE.md +5 -5
- package/README.md +199 -172
- package/README.tr.md +292 -0
- package/docs/architecture/overview.md +31 -31
- package/docs/architecture/stack.md +2 -2
- package/docs/archive/README.md +4 -4
- package/docs/decisions/adr-template.md +14 -14
- package/docs/decisions/log.md +10 -10
- package/docs/findings/README.md +13 -13
- package/docs/findings/config.md +13 -13
- package/docs/legal/privacy-kvkk.md +1 -1
- package/docs/operations/accounts.md +25 -25
- package/docs/operations/deploy-setup.md +64 -64
- package/docs/operations/feature-flags.md +17 -17
- package/docs/operations/maintenance.md +48 -48
- package/docs/operations/release-checklist.md +61 -61
- package/docs/operations/spend-alarms.md +28 -28
- package/docs/product/feedback.md +9 -8
- package/docs/product/glossary.md +16 -16
- package/docs/product/launch.md +28 -28
- package/docs/product/prd.md +43 -42
- package/docs/product/roadmap.md +31 -30
- package/docs/product/specs/_template.md +13 -12
- package/docs/product/unit-economics.md +23 -22
- package/docs/quality/metrics.md +14 -14
- package/docs/quality/retros.md +11 -11
- package/docs/quality/test-plan.md +48 -48
- package/docs/security/checklist.md +57 -57
- package/docs/workflow/board.md +7 -7
- package/docs/workflow/cost-log.md +4 -4
- package/docs/workflow/decision-protocol.md +70 -70
- package/docs/workflow/learning.md +4 -4
- package/docs/workflow/mcp-catalog.md +31 -31
- package/docs/workflow/models.md +35 -35
- package/docs/workflow/progress.md +7 -7
- package/docs/workflow/skills.md +108 -108
- package/docs/workflow/usage-limits.md +62 -62
- package/kit/CHANGELOG.md +876 -841
- package/kit/VERSION +1 -1
- package/kit/guide.html +713 -477
- package/kit/guide.tr.html +1328 -0
- package/kit/kit.mjs +56 -54
- package/kit/project/README.md +29 -29
- package/kit/project/gitignore +12 -12
- package/kit/templates/addons/ai/.env.example.append +5 -5
- package/kit/templates/addons/ai/ai/evals/README.md +11 -11
- package/kit/templates/addons/ai/ai/evals/cases.jsonl +2 -2
- package/kit/templates/addons/ai/ai/prompts/README.md +8 -8
- package/kit/templates/addons/ai/docs/ai/guide.md +56 -56
- package/kit/templates/backend/.claude/hooks/format.mjs +1 -1
- package/kit/templates/backend/.claude/structure.json +1 -1
- package/kit/templates/backend/.env.example +6 -6
- package/kit/templates/backend/.github/dependabot.yml +1 -1
- package/kit/templates/backend/.github/workflows/ci.yml +13 -13
- package/kit/templates/backend/.github/workflows/claude-ci-fix.yml +19 -19
- package/kit/templates/backend/.github/workflows/claude-maintenance.yml +18 -18
- package/kit/templates/backend/.github/workflows/live-monitoring.yml +14 -14
- package/kit/templates/backend/.pre-commit-config.yaml +3 -3
- package/kit/templates/backend/docs/architecture/stack.md +98 -98
- package/kit/templates/backend/docs/architecture/structure.md +34 -34
- package/kit/templates/mobile/.claude/structure.json +1 -1
- package/kit/templates/mobile/.env.example +6 -6
- package/kit/templates/mobile/.github/dependabot.yml +2 -2
- package/kit/templates/mobile/.github/workflows/ci.yml +18 -18
- package/kit/templates/mobile/.github/workflows/claude-ci-fix.yml +19 -19
- package/kit/templates/mobile/.github/workflows/claude-maintenance.yml +18 -18
- package/kit/templates/mobile/.gitignore.append +2 -2
- package/kit/templates/mobile/docs/architecture/stack.md +113 -113
- package/kit/templates/mobile/docs/architecture/structure.md +33 -33
- package/kit/templates/mobile/docs/design/design-guide.md +37 -37
- package/kit/templates/mobile/tests/security/rls.mjs +22 -22
- package/kit/templates/web-saas/.claude/structure.json +1 -1
- package/kit/templates/web-saas/.env.example +11 -11
- package/kit/templates/web-saas/.github/dependabot.yml +3 -3
- package/kit/templates/web-saas/.github/workflows/ci.yml +20 -20
- package/kit/templates/web-saas/.github/workflows/claude-ci-fix.yml +19 -19
- package/kit/templates/web-saas/.github/workflows/claude-maintenance.yml +18 -18
- package/kit/templates/web-saas/.github/workflows/live-monitoring.yml +12 -12
- package/kit/templates/web-saas/docs/architecture/stack.md +116 -116
- package/kit/templates/web-saas/docs/architecture/structure.md +44 -44
- package/kit/templates/web-saas/docs/design/design-guide.md +38 -38
- package/kit/templates/web-saas/tests/live/smoke.spec.ts +4 -4
- package/kit/templates/web-saas/tests/security/rls.mjs +22 -22
- package/kit/tools/codex/.codex/hooks.json +1 -1
- package/package.json +2 -2
- package/README.en.md +0 -267
package/README.tr.md
ADDED
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<picture>
|
|
3
|
+
<source media="(prefers-color-scheme: dark)" srcset="kit/assets/banner-dark.svg">
|
|
4
|
+
<img src="kit/assets/banner-light.svg" alt="TillerHand: Kodu AI yazar, dümen sende." width="100%">
|
|
5
|
+
</picture>
|
|
6
|
+
</p>
|
|
7
|
+
|
|
8
|
+
<p align="center">
|
|
9
|
+
<a href="kit/CHANGELOG.md"><img alt="Sürüm" src="https://img.shields.io/badge/s%C3%BCr%C3%BCm-3.47.0-2a78d6?style=flat-square"></a>
|
|
10
|
+
<a href="LICENSE"><img alt="Lisans: MIT" src="https://img.shields.io/badge/lisans-MIT-2a78d6?style=flat-square"></a>
|
|
11
|
+
<img alt="Claude Code" src="https://img.shields.io/badge/Claude%20Code-haz%C4%B1r-d97757?style=flat-square">
|
|
12
|
+
<img alt="Codex ve Antigravity" src="https://img.shields.io/badge/ayr%C4%B1ca-Codex%20%C2%B7%20Antigravity-5b6577?style=flat-square">
|
|
13
|
+
<img alt="Node.js 18+" src="https://img.shields.io/badge/Node.js-18%2B-3c873a?style=flat-square">
|
|
14
|
+
</p>
|
|
15
|
+
|
|
16
|
+
<p align="center">
|
|
17
|
+
<a href="README.md">English</a> · <b>Türkçe</b> · <a href="https://burakdogrul.github.io/TillerHand/kit/guide.tr.html"><b>Rehberi oku →</b></a>
|
|
18
|
+
</p>
|
|
19
|
+
|
|
20
|
+
<p align="center">
|
|
21
|
+
<a href="#hiç-bilmiyorsan-adım-adım">Adım adım</a> ·
|
|
22
|
+
<a href="#hızlı-başlangıç">Hızlı başlangıç</a> ·
|
|
23
|
+
<a href="#var-olan-proje-adopt">/adopt</a> ·
|
|
24
|
+
<a href="#nasıl-çalışır">Nasıl çalışır</a> ·
|
|
25
|
+
<a href="#uzman-kurulu">Kurul</a> ·
|
|
26
|
+
<a href="#koruma-katmanları">Korumalar</a> ·
|
|
27
|
+
<a href="#komutlar">Komutlar</a> ·
|
|
28
|
+
<a href="#lisans">Lisans</a>
|
|
29
|
+
</p>
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
**TillerHand**, [Claude Code](https://claude.com/claude-code) ile bir ürünü fikirden canlıya ve bakıma kadar götüren bir başlangıç kitidir. Kodu AI yazar, **kararları sen verirsin**: her önemli adımda seçenekleri, hangisinin ne zaman daha iyi olduğunu ve önerisini sunar. Bir **uzman kurulu** işi denetler, **koruma katmanları** tehlikeli işlemleri daha olmadan durdurur, proje her an **düzenli bir klasör yapısında** kalır.
|
|
34
|
+
|
|
35
|
+
> **Önce dil.** `/start` ve `/adopt` tek bir soruyla açılır: AI seninle hangi dilde konuşsun? Türkçe, İngilizce ya da başka bir dil. Bundan sonra sorular, cevaplar, raporlar, pano ve durum çubuğu o dilde gelir; `/language` ile sonradan değişir. Kitin içindeki her şey (komutlar, kurallar, ajanlar, hook'lar, belge şablonları) İngilizce yazılıdır; yalnızca isteğe bağlı Türkiye eki Türkçe kalır.
|
|
36
|
+
|
|
37
|
+
| | |
|
|
38
|
+
|---|---|
|
|
39
|
+
| **Soru odaklı** | Ürün, teknik, tasarım, veri, güvenlik ve maliyet kararları gerekçeli seçeneklerle sorulur. Tasarım soruları görsel önizlemeyle gelir. |
|
|
40
|
+
| **Senin dilinde** | `/start` ve `/adopt` önce hangi dilde konuşulacağını sorar: Türkçe, İngilizce ya da başka bir dil. Sorular, cevaplar, belgeler, pano ve durum çubuğu o dilde olur; `/language` ile değişir. |
|
|
41
|
+
| **Uzman kurulu** | Ürün, Mimar, Güvenlik, UX, KVKK, QA ve diğer üyeler planı, görevi, commit'i ve fazı denetler. |
|
|
42
|
+
| **Testi ayrı ajan yazar** | Kabul ve saldırgan testlerini kodu yazan değil, ayrı bir ajan koddan önce yazar ve önce kırmızı olur. Kodu yazan test dosyasına dokunamaz; dolaylı yoldan değişen test commit'e giremez. "Bitti" demeden çalıştığı gösterilir. |
|
|
43
|
+
| **Spec ve sapma kontrolü** | Büyük işte ve her hatada mevcut, beklenen ve değişmemesi gereken davranış yazılır; değişmemesi gerekenin testi yoksa kapı kırmızıdır. |
|
|
44
|
+
| **Bulgu raporları** | Teknik, iş, güvenlik, UX, performans ve hukuk için en önemli 20 bulgu; puanlı, düzeltme yöntemiyle. |
|
|
45
|
+
| **Koruma katmanları** | Sır, yıkıcı komut, onaysız prod deploy, zayıflatılan test ve harita dışı dosya daha olmadan durdurulur. |
|
|
46
|
+
| **Canlı önizleme** | Arayüz görevinde dev sunucu açılır, masaüstü ve mobil ekran görüntüsü alınır; `/qa` kabul kriterlerini gerçek tarayıcıda dener. |
|
|
47
|
+
| **Canlıya ve sonrasına** | `/release first` hosting, alan adı, yedek ve geri almayı sağlayıcı sağlayıcı kurdurur. Web ve backend projelerinde canlı site 3 saatte bir duman testiyle izlenir. |
|
|
48
|
+
| **Türkiye eki** | İsteğe bağlı. iyzico ve PayTR bildirimlerinin imza doğrulaması saldırgan testiyle gelir; KVKK yurt dışı aktarım, e-Fatura/e-Arşiv ve Türkçe İ/ı maddeleri birincil kaynağa bağlıdır. |
|
|
49
|
+
| **Kontrol paneli** | `dashboard.html`: durum, dikkat gerektirenler, kararlar, kurul, bulgular, kalite, operasyon, limit; komutlar tek tıkla kopyalanır. |
|
|
50
|
+
| **Limit farkındalığı** | 5 saatlik ve haftalık limit okunur, iş buna göre planlanır. Uyarı verir, işi durdurmaz. |
|
|
51
|
+
| **Doğru kaynak** | Değişebilen bilgi (sürüm, fiyat, mevzuat) birincil kaynaktan, kaynak ve tarihle doğrulanır. |
|
|
52
|
+
| **Geri alma** | `/rollback` son çalışan hale döner; geçmiş silinmez, yarım iş saklanır. |
|
|
53
|
+
| **Anlatıcı mod** | İstersen her değişikliği yazılım bilmeyen birine anlatır gibi sade bir dille açıklar. |
|
|
54
|
+
| **Seni tanır** | Nasıl çalışmak istediğini (konuşma, soru, rapor, kod tarzı) öğrenir. Onayladığın tercihler tüm projelerinde geçerli olur ve bilgisayarında kalır. |
|
|
55
|
+
| **Rol bazlı model** | Planlama, kod, test, inceleme ve doküman için modeli ve effort'u her görevin başında sen seçersin. Test rolüne koddan farklı bir model önerilir: aynı model aynı kör noktayı paylaşır. |
|
|
56
|
+
| **Hatadan öğrenir** | Aynı türden hata tekrar edince onu önleyecek tek bir kural önerir; sen onaylarsan eklenir. |
|
|
57
|
+
|
|
58
|
+
## Hiç bilmiyorsan: adım adım
|
|
59
|
+
|
|
60
|
+
Kod yazmayı bilmen gerekmez. Git, terminal ve kurulum işlerini Claude yapar; sen ne istediğini anlatır ve seçim yaparsın.
|
|
61
|
+
|
|
62
|
+
**1. Hazırlık (bir kez)**
|
|
63
|
+
- Hesaplar: [GitHub](https://github.com) (ücretsiz) ve Claude **Pro** veya **Max** aboneliği.
|
|
64
|
+
- Programlar: [Claude masaüstü uygulaması](https://claude.com/download), [Node.js](https://nodejs.org) (LTS), [Git](https://git-scm.com/downloads).
|
|
65
|
+
|
|
66
|
+
**2. Projeni oluştur**
|
|
67
|
+
1. Projen için bir klasör aç ve Claude masaüstü uygulamasında **Code** sekmesinde seç.
|
|
68
|
+
2. Kiti kur. İki yoldan birini seç:
|
|
69
|
+
- Claude'a yaz: `bu klasörde npx tillerhand init komutunu çalıştır`.
|
|
70
|
+
- TillerHand plugin'ini [bir kez kurduysan](#hızlı-başlangıç) Claude'a `/tillerhand:init` yaz.
|
|
71
|
+
3. Aynı klasörde **yeni oturum aç**. Kitin komutları ve korumaları yeni oturumda yüklenir.
|
|
72
|
+
|
|
73
|
+
**3. Başlat**
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
/start Serbest çalışanlar için fatura ve tahsilat takip uygulaması
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
İlk soru dildir: Türkçe, İngilizce ya da başka bir dil. Claude bundan sonra seninle o dilde konuşur ve sırayla soru sorar. **Her sorunun ilk seçeneği önerilendir**; emin değilsen onu seç. Var olan bir projen varsa `/start` yerine `/adopt` yaz: Claude kodu tarar, belgeleri koddan çıkarır ve projeyi adım adım kitin düzenine getirir.
|
|
80
|
+
|
|
81
|
+
**4. Her gün**
|
|
82
|
+
|
|
83
|
+
| Ne zaman | Ne yazarsın |
|
|
84
|
+
|---|---|
|
|
85
|
+
| Çalışmaya başlarken | `/build` (sıradaki görevi kendisi alır, test eder) |
|
|
86
|
+
| Durumu merak edersen | `ne durumdayız?` veya `/dashboard` |
|
|
87
|
+
| Bir şey bozulursa | `/rollback` |
|
|
88
|
+
| Bırakırken | `/wrap-up`, sonra `/clear` |
|
|
89
|
+
|
|
90
|
+
**Bilmen gerekenler**
|
|
91
|
+
- **Limit:** Pro'da 5 saatlik ve haftalık limit var. Claude %90, %95 ve %99'da uyarır; limit dolarsa yenilenince `/build` ile kaldığın yerden devam edersin.
|
|
92
|
+
- **Onay:** Veritabanı, tasarım, maliyet kararları sorulmadan verilmez. Veri silme, ödeme ve canlıya alma her zaman onay ister.
|
|
93
|
+
- **Devir:** Projeyi başkasına bırakacaksan `/handoff`; devralan `/handoff devral` ile aynı yerden devam eder.
|
|
94
|
+
|
|
95
|
+
## Hızlı başlangıç
|
|
96
|
+
|
|
97
|
+
**Gereksinimler:** [Claude Code](https://claude.com/claude-code), Git, Node.js 18+
|
|
98
|
+
|
|
99
|
+
Üç kurulum yolu var. Üçü de kiti projeye aynı şekilde kurar; birini seç.
|
|
100
|
+
|
|
101
|
+
**1. npm (önerilen):** terminalde en kısa yol.
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
mkdir yeni-proje && cd yeni-proje
|
|
105
|
+
npx tillerhand init
|
|
106
|
+
claude
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
**2. Claude Code plugin:** bilgisayara bir kez kurulur, sonra her yeni projede tek komut. Plugin yalnız kurulumu yapar; kit yine projeye dosya olarak kopyalanır ve her seferinde son sürüm gelir.
|
|
110
|
+
|
|
111
|
+
Bir kez, Claude Code'da (masaüstü uygulamasında `/plugin` açılmazsa terminalde `claude plugin marketplace add …` ve `claude plugin install …` olarak):
|
|
112
|
+
|
|
113
|
+
```text
|
|
114
|
+
/plugin marketplace add burakdogrul/TillerHand
|
|
115
|
+
/plugin install tillerhand@tillerhand
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Her yeni projede, proje klasöründe açılan oturumda:
|
|
119
|
+
|
|
120
|
+
```text
|
|
121
|
+
/tillerhand:init
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**3. git:** kitin kaynağını görmek, değiştirmek ya da katkı vermek için. Kit proje içinde `vibe-kit/` klasöründe durur ve `.gitignore`'a girer.
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
git clone https://github.com/burakdogrul/TillerHand.git vibe-kit
|
|
128
|
+
node vibe-kit/kit/kit.mjs init
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
- Açılışta Claude Code, kitin skill eklentilerini kurmayı önerir; kabul et.
|
|
132
|
+
- Kit başka bir klasördeyse: `node <kit>/kit/kit.mjs init --project <proje>`.
|
|
133
|
+
- Codex veya Antigravity için: `npx tillerhand init --tool codex` (birden fazlası: `--tool claude,codex`).
|
|
134
|
+
- Önerilen: kod haritası ([codebase-memory-mcp](https://github.com/DeusData/codebase-memory-mcp)). AI kodu dosya dosya okumak yerine sorgular, token tasarrufu sağlar. `/start` kurmayı sorar.
|
|
135
|
+
|
|
136
|
+
## Var olan proje: /adopt
|
|
137
|
+
|
|
138
|
+
Kodun zaten varsa kurulum aynı, başlangıç komutu farklı. Projenin kökünde `npx tillerhand init` çalıştır (dosyaların ezilmez; çakışan kit dosyası `.kit-new` olarak yanına konur), yeni oturum aç ve `/adopt` yaz.
|
|
139
|
+
|
|
140
|
+
1. **Tarar:** stack, klasör yapısı, testlerin durumu ve git geçmişi çıkarılır. Bu oturumda koda dokunulmaz.
|
|
141
|
+
2. **Belgeleri koddan çıkarır:** PRD, stack ve mimari taslak olarak yazılır; neyi beğenmediğin sorulur, eski `CLAUDE.md` kuralları tek tek sorulup `AGENTS.md`'ye taşınır.
|
|
142
|
+
3. **Kritik akışlara test:** giriş, ödeme gibi akışların doğru davranışı sana sorulur; test kodun bugünkü haline değil, senin cevabına göre yazılır.
|
|
143
|
+
4. **Uyum yol haritası:** güvenli zemin, yapıyı ayrı dalda özellik özellik taşıma, bulgular. Sonra her gün `/build`.
|
|
144
|
+
|
|
145
|
+
## Nasıl çalışır
|
|
146
|
+
|
|
147
|
+
```mermaid
|
|
148
|
+
flowchart LR
|
|
149
|
+
A["/start<br/>fikir → plan"] --> B["Faz 0<br/>kurulum, CI, ilk deploy"]
|
|
150
|
+
B --> C{"Her görev"}
|
|
151
|
+
C --> D["/plan-task<br/>kararlar + kurul"]
|
|
152
|
+
D --> E["/build<br/>önce kabul testleri"]
|
|
153
|
+
E --> F["/review-changes<br/>+ commit kapısı"]
|
|
154
|
+
F --> G["/wrap-up"]
|
|
155
|
+
G --> C
|
|
156
|
+
C -->|"faz sonu"| H["/findings-*<br/>/board convene<br/>/retro"]
|
|
157
|
+
H --> I["/release first"]
|
|
158
|
+
I --> J["/maintain"]
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
**`/start` sihirbazı** fikri dokuz adımda plana çevirir:
|
|
162
|
+
|
|
163
|
+
| Adım | Ne olur |
|
|
164
|
+
|---|---|
|
|
165
|
+
| 0 Hazırlık | Profil, planlama derinliği, pano, limit |
|
|
166
|
+
| 1 Fikir | Fikir sorgulanır, PRD yazılır |
|
|
167
|
+
| 2 Tip | Web/SaaS, mobil veya backend; AI özelliği var mı |
|
|
168
|
+
| 3 Kurulum | Seçilen tip ve klasör haritası yerleşir |
|
|
169
|
+
| 4 Teknoloji | Tipin karar kataloğu: veritabanı, kimlik, barındırma… |
|
|
170
|
+
| 5 Mimari | Veri modeli, roller, servisler, birim ekonomisi |
|
|
171
|
+
| 6 Kurul | Uzman kurulu kurulur (önce maliyeti söylenir) |
|
|
172
|
+
| 7 Tasarım | Görsel önizlemelerle stil, renk, yazı tipi |
|
|
173
|
+
| 8 Yol haritası | Kabul testi önce gelen, öncelikli görevler |
|
|
174
|
+
| 9 Kapanış | Özet ve ilk görev |
|
|
175
|
+
|
|
176
|
+
**Karar protokolü:** Her karar noktasında 2-4 seçenek gelir; önerilen ilk sıradadır ve her seçeneğin ne zaman daha iyi olduğu ve bedeli yazar. Geri dönüşü zor kararlarda (veritabanı, auth, ödeme, veri modeli) önce kurulun görüşü alınır. Kararlar `docs/decisions/log.md`'ye yazılır ve bir daha sorulmaz.
|
|
177
|
+
|
|
178
|
+
## Uzman kurulu
|
|
179
|
+
|
|
180
|
+
Ürün tipine göre projene özel kurul ajanları oluşturulur. Kurul danışmandır; kritik bulgu (RET) varsa iş bitmez, sana sorulur.
|
|
181
|
+
|
|
182
|
+
| Tip | Önerilen kurul |
|
|
183
|
+
|---|---|
|
|
184
|
+
| Web / SaaS | Ürün · Mimar · Güvenlik · UX · Performans · KVKK · QA |
|
|
185
|
+
| Mobil | Ürün · Mimar · Güvenlik · UX · Mobil Platform · KVKK · QA |
|
|
186
|
+
| Backend | Ürün · Mimar · Güvenlik · API · DevOps · QA |
|
|
187
|
+
|
|
188
|
+
| Toplantı | Ne zaman |
|
|
189
|
+
|---|---|
|
|
190
|
+
| Plan | `/plan-task` sonunda |
|
|
191
|
+
| Görev sonu | `/build` sonunda |
|
|
192
|
+
| Commit | Her commit'te (hafif, sadece değişiklik) |
|
|
193
|
+
| Faz sonu, canlıya alma | `/board convene`, `/release first` |
|
|
194
|
+
|
|
195
|
+
Önemli kararlarda **konsey** çalışır: farklı modeller aynı soruyu birbirinden habersiz cevaplar, birbirini anonim sıralar, başkan sonucu yazar. Sayımı kod yapar; son karar yine senindir.
|
|
196
|
+
|
|
197
|
+
## Bulgu raporları
|
|
198
|
+
|
|
199
|
+
Projeyi bir uzman gözüyle tarar, en önemli **20 bulguyu** kanıt, puan (0-100) ve düzeltme yöntemiyle `docs/findings/` altına yazar. Her rapor bir öncekiyle karşılaştırılır ve panoda eğilim olarak görünür.
|
|
200
|
+
|
|
201
|
+
| Komut | Bakış açısı | Örnek bulgu |
|
|
202
|
+
|---|---|---|
|
|
203
|
+
| `/findings-tech` | Kıdemli mimar | N+1 sorgu, tekrar eden yetki kontrolü |
|
|
204
|
+
| `/findings-business` | Sektörün uzmanı | Eksik iade kuralı, rakiplerin standart özelliği |
|
|
205
|
+
| `/findings-security` | Saldırgan | IDOR, istemciye sızan anahtar |
|
|
206
|
+
| `/findings-ux` | UX araştırmacısı | Boş durum yok, yetersiz kontrast |
|
|
207
|
+
| `/findings-perf` | Performans ve FinOps | Büyük paket, sınırsız AI maliyeti |
|
|
208
|
+
| `/findings-legal` | Uyum uzmanı | Eksik rıza, envanterde olmayan kişisel veri |
|
|
209
|
+
| `/findings-all` | Hepsi, paralel | Birleşik özet ve ortak düzeltme planı |
|
|
210
|
+
|
|
211
|
+
## Proje yapısı
|
|
212
|
+
|
|
213
|
+
Her proje bu düzende başlar ve bu düzende kalır. Kod özellik bazlıdır: bir özelliğe ait her şey `features/<özellik>/` altında durur.
|
|
214
|
+
|
|
215
|
+
```
|
|
216
|
+
.
|
|
217
|
+
├── .claude/ # komutlar, ajanlar, hook'lar, kurul, klasör haritası
|
|
218
|
+
├── .github/ # CI, Dependabot
|
|
219
|
+
├── docs/
|
|
220
|
+
│ ├── product/ # PRD, yol haritası, sözlük, lansman
|
|
221
|
+
│ ├── architecture/ # genel bakış, stack, yapı
|
|
222
|
+
│ ├── decisions/ # karar günlüğü ve ADR'ler
|
|
223
|
+
│ ├── quality/ # test planı, metrikler, retro
|
|
224
|
+
│ ├── security/ # güvenlik kontrol listesi
|
|
225
|
+
│ ├── operations/ # canlıya alma, dağıtım, bakım, hesaplar
|
|
226
|
+
│ └── findings/ # bulgu raporları
|
|
227
|
+
├── src/ veya app/ # özellik bazlı kod
|
|
228
|
+
├── tests/
|
|
229
|
+
└── AGENTS.md · CLAUDE.md · README.md · CHANGELOG.md
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
Harita dışı yeni dosya sorulur, `*.bak` ve `*-old.*` gibi dağınıklık dosyaları engellenir; CI her PR'da yapıyı denetler.
|
|
233
|
+
|
|
234
|
+
## Koruma katmanları
|
|
235
|
+
|
|
236
|
+
| Katman | Ne yapar |
|
|
237
|
+
|---|---|
|
|
238
|
+
| Sır engeli | Koda veya dokümana yazılan API anahtarını engeller |
|
|
239
|
+
| Yıkıcı komut kalkanı | `DROP`, koşulsuz `DELETE`, `db reset` engellenir; prod deploy ve geri alma sorulur |
|
|
240
|
+
| Paket kapısı | Var olmayan paketi engeller (kurulumda ve `npx`, `uvx` ile çalıştırmada); çok yeni veya popüler bir pakete benzeyeni sorar |
|
|
241
|
+
| Yapı koruyucu | Harita dışı dosyayı sorar, dağınıklık dosyalarını engeller |
|
|
242
|
+
| Test ayrımı | Test dosyasına yalnız `test-writer` ajanı yazar; ana oturum ve kod ajanı denerse engellenir |
|
|
243
|
+
| Test koruması | Silinen, atlanan veya gevşetilen testi sorar |
|
|
244
|
+
| Deterministik kapı | Lint, tip, test ve Semgrep çalışmadan commit açılmaz; koda yazılmış makineye özel yolu yakalar |
|
|
245
|
+
| Commit kapısı | Kurul denetimi ve yeşil kapı olmadan commit atılmaz; patch veya betikle değişen test dosyası da durur |
|
|
246
|
+
| Düzenleme kilidi | `/freeze <klasör>` açıkken AI sadece o klasöre yazar |
|
|
247
|
+
| Kapsam kalkanı | Onaylı planın dışındaki dosyaya yazım sorulur |
|
|
248
|
+
| Yapılandırma onayı | Kural ve koruma dosyaları onayın olmadan değişmez |
|
|
249
|
+
| Dev/prod ayrımı | AI ve yerel ortam sadece dev veritabanına bağlanır |
|
|
250
|
+
|
|
251
|
+
## Komutlar
|
|
252
|
+
|
|
253
|
+
| Komut | Ne yapar |
|
|
254
|
+
|---|---|
|
|
255
|
+
| `/start [fikir]` | Dokuz adımlı başlangıç sihirbazı |
|
|
256
|
+
| `/adopt` | Var olan projeyi kite alır, uyum yol haritası çıkarır |
|
|
257
|
+
| `/plan-task [görev]` | Kararları sorar, kurul görüşüyle plan çıkarır |
|
|
258
|
+
| `/build [görev]` | Önce kabul testleri, sonra kod, kanıt ve kurul denetimi |
|
|
259
|
+
| `/design` | Görsel önizlemeli tasarım kararları |
|
|
260
|
+
| `/review-changes` | Bağımsız inceleme ve güvenlik ajanları |
|
|
261
|
+
| `/fix-bug [belirti]` | Kök neden, kırmızı test, düzeltme |
|
|
262
|
+
| `/qa` | Arayüz kriterlerini gerçek tarayıcıda test eder |
|
|
263
|
+
| `/findings-<tür>` | Bulgu raporları |
|
|
264
|
+
| `/board` | Kurulu kurar, toplar; `council <soru>` ile konsey |
|
|
265
|
+
| `/dashboard` | Kontrol paneli |
|
|
266
|
+
| `/rollback` | Son çalışan hale döner |
|
|
267
|
+
| `/freeze <klasör>` | Düzenlemeyi tek klasöre kilitler |
|
|
268
|
+
| `/wrap-up` | Oturumu kapatır, ilerlemeyi kaydeder |
|
|
269
|
+
| `/release [first]` | Canlıya alma kontrolleri; `first` hosting, alan adı, yedek ve geri almayı adım adım kurdurur |
|
|
270
|
+
| `/maintain` | Haftalık, aylık, çeyreklik bakım |
|
|
271
|
+
| `/retro` | Dersleri projeye ve kite geri yazar |
|
|
272
|
+
| `/handoff` | Projeyi başkasına devreder veya devralır |
|
|
273
|
+
| `/kit-update` | Projeyi kitin son sürümüne günceller |
|
|
274
|
+
| `/language` | Konuşma dilini değiştirir |
|
|
275
|
+
|
|
276
|
+
Tüm komutlar, ayarlar, araçlar ve skill'ler **[rehberde](https://burakdogrul.github.io/TillerHand/kit/guide.tr.html)**.
|
|
277
|
+
|
|
278
|
+
## Codex ve Antigravity
|
|
279
|
+
|
|
280
|
+
Kit Claude Code için yazıldı; kurallar, komutlar ve korumalar OpenAI Codex ve Google Antigravity'de de çalışır. Kurul tek modelle yürür; soru arayüzü, durum çubuğu ve commit kapısı bu araçlarda yok. Bu araçlar ajan kimliği bildirmediği için test ayrımı orada kural metninde kalır. Kurulum: `node <kit>/kit/kit.mjs init --tool codex` (veya `antigravity`).
|
|
281
|
+
|
|
282
|
+
## Ölçüm
|
|
283
|
+
|
|
284
|
+
Aynı görevler kitli ve kitsiz `claude -p` ile koşuldu, gizli testlerle puanlandı (3.18.2, Sonnet, 6 görev, koşul başına 24 koşu):
|
|
285
|
+
|
|
286
|
+
- İki koşul da gizli testlerin hepsini geçti.
|
|
287
|
+
- Kitin yazdığı testler, koda bilerek eklenen hataların **%63**'ünü yakaladı; kitsiz koşunun testleri **%31**'ini.
|
|
288
|
+
- Kit her koşuda testi koddan önce yazdı; kitsiz koşu hiçbirinde yazmadı.
|
|
289
|
+
|
|
290
|
+
## Lisans
|
|
291
|
+
|
|
292
|
+
[MIT](LICENSE) © 2026 Burak Doğrul
|
|
@@ -1,66 +1,66 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Architecture
|
|
2
2
|
|
|
3
|
-
>
|
|
4
|
-
>
|
|
3
|
+
> Stage: written at the end of **0 - Idea**, updated throughout **2 - Development**.
|
|
4
|
+
> When the structure changes, this file changes too. If it is out of date, the AI makes wrong assumptions.
|
|
5
5
|
|
|
6
|
-
## 1.
|
|
6
|
+
## 1. Overview
|
|
7
7
|
|
|
8
8
|
```
|
|
9
|
-
[
|
|
9
|
+
[Client] ──HTTPS──> [App/API] ──> [Database]
|
|
10
10
|
│
|
|
11
|
-
├──> [Auth
|
|
12
|
-
├──> [
|
|
11
|
+
├──> [Auth provider]
|
|
12
|
+
├──> [Payment]
|
|
13
13
|
└──> [E-posta / AI API / Depolama]
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
-
## 2.
|
|
16
|
+
## 2. Technology choice
|
|
17
17
|
|
|
18
|
-
|
|
|
18
|
+
| Layer | Choice | Why | Alternative |
|
|
19
19
|
|---|---|---|---|
|
|
20
|
-
|
|
|
20
|
+
| Language | | | |
|
|
21
21
|
| Framework | | | |
|
|
22
|
-
|
|
|
22
|
+
| Database | | | |
|
|
23
23
|
| Auth | | | |
|
|
24
24
|
| Hosting | | | |
|
|
25
|
-
|
|
|
25
|
+
| Error tracking | | | |
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
Detailed rules: `docs/architecture/stack.md`.
|
|
28
28
|
|
|
29
|
-
## 3.
|
|
29
|
+
## 3. Folder structure
|
|
30
30
|
|
|
31
31
|
```
|
|
32
|
-
[
|
|
32
|
+
[Project root folder tree, main folders only + the job of each]
|
|
33
33
|
```
|
|
34
34
|
|
|
35
|
-
## 4.
|
|
35
|
+
## 4. Data model
|
|
36
36
|
|
|
37
|
-
|
|
|
37
|
+
| Table | Fields (the important ones) | Relations | Personal data? | Access rule |
|
|
38
38
|
|---|---|---|---|---|
|
|
39
|
-
| users | id, email, created_at | |
|
|
39
|
+
| users | id, email, created_at | | Yes | Only the user |
|
|
40
40
|
| | | | | |
|
|
41
41
|
|
|
42
|
-
## 5.
|
|
42
|
+
## 5. External services
|
|
43
43
|
|
|
44
|
-
|
|
|
44
|
+
| Service | Purpose | Environment variable | Price / limit | Account owner |
|
|
45
45
|
|---|---|---|---|---|
|
|
46
46
|
| | | | | |
|
|
47
47
|
|
|
48
|
-
## 6.
|
|
48
|
+
## 6. Authentication and authorization
|
|
49
49
|
|
|
50
|
-
- **
|
|
51
|
-
- **
|
|
52
|
-
- **
|
|
50
|
+
- **Sign-in methods:** [email+password / magic link / Google / Apple]
|
|
51
|
+
- **Roles:** [user, admin]
|
|
52
|
+
- **Where authorization is checked:** [server side / DB rules (RLS) / both]
|
|
53
53
|
|
|
54
|
-
## 7.
|
|
54
|
+
## 7. Environments
|
|
55
55
|
|
|
56
|
-
|
|
|
56
|
+
| Environment | URL | Database | How it is deployed |
|
|
57
57
|
|---|---|---|---|
|
|
58
|
-
|
|
|
59
|
-
|
|
|
60
|
-
| Prod | |
|
|
58
|
+
| Local | localhost | local/dev project | - |
|
|
59
|
+
| Preview/Staging | | separate | when a PR is opened |
|
|
60
|
+
| Prod | | separate | merge to `main` |
|
|
61
61
|
|
|
62
|
-
## 8.
|
|
62
|
+
## 8. Known technical debt
|
|
63
63
|
|
|
64
|
-
|
|
|
64
|
+
| What | Why it is this way | When it should be fixed |
|
|
65
65
|
|---|---|---|
|
|
66
66
|
| | | |
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
# Stack
|
|
2
2
|
|
|
3
|
-
>
|
|
4
|
-
>
|
|
3
|
+
> The project type is not chosen yet. `/start` asks for the type and replaces this file with the
|
|
4
|
+
> technology, rules and decision points file of the chosen type.
|
package/docs/archive/README.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Archive
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Docs that are no longer valid but must be kept. Instead of deleting, move them here and add this at the top of the file:
|
|
4
4
|
|
|
5
5
|
```
|
|
6
|
-
>
|
|
6
|
+
> Archived: YYYY-MM-DD · Reason: [...] · Replaced by: [docs/... or "none"]
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Docs in the archive are not context for the AI; current decisions are under `docs/decisions/`.
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
# ADR-NNNN: [
|
|
1
|
+
# ADR-NNNN: [Short title]
|
|
2
2
|
|
|
3
|
-
- **
|
|
4
|
-
- **
|
|
5
|
-
- **
|
|
6
|
-
- **
|
|
7
|
-
- **
|
|
3
|
+
- **Date:** YYYY-AA-GG
|
|
4
|
+
- **Status:** Proposed / Accepted / Superseded by: ADR-NNNN
|
|
5
|
+
- **Door:** one-way / two-way
|
|
6
|
+
- **Decision log:** #N (`docs/decisions/log.md`)
|
|
7
|
+
- **Board opinion:** [members who took part and the result]
|
|
8
8
|
|
|
9
|
-
##
|
|
9
|
+
## Context
|
|
10
10
|
|
|
11
|
-
[
|
|
11
|
+
[Which problem required this decision? What are the constraints?]
|
|
12
12
|
|
|
13
|
-
##
|
|
13
|
+
## Options
|
|
14
14
|
|
|
15
|
-
|
|
|
15
|
+
| Option | Pro | Con |
|
|
16
16
|
|---|---|---|
|
|
17
17
|
| | | |
|
|
18
18
|
|
|
19
|
-
##
|
|
19
|
+
## Decision
|
|
20
20
|
|
|
21
|
-
[
|
|
21
|
+
[What was chosen and why? The user's choice.]
|
|
22
22
|
|
|
23
|
-
##
|
|
23
|
+
## Consequences
|
|
24
24
|
|
|
25
|
-
[
|
|
25
|
+
[What does it make easier, what does it make harder, what does it make us depend on? What is the cost of going back?]
|
package/docs/decisions/log.md
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Decisions
|
|
2
2
|
|
|
3
|
-
>
|
|
4
|
-
> 1. **Karar
|
|
5
|
-
> 2. **
|
|
3
|
+
> There are two sections:
|
|
4
|
+
> 1. **Decision log ("Karar günlüğü"):** one line for every decision asked. Door: `tek` (one-way, costly to reverse) / `çift` (two-way, easy to reverse). Decided by: `kullanıcı` (user) or `otomatik` (automatic, when question mode is off).
|
|
5
|
+
> 2. **ADRs** (Architecture Decision Record): decisions that affect the architecture or the long term, and all one-way decisions, go in a separate file: `docs/decisions/adr-NNNN-kisa-ad.md` (template: `adr-template.md`).
|
|
6
6
|
>
|
|
7
|
-
>
|
|
8
|
-
>
|
|
7
|
+
> Look here before asking a decision: if it was made before, do not ask again, follow it.
|
|
8
|
+
> Decisions are never deleted; if one changes, a new line is added and "→ changed by #N" is written next to the old one.
|
|
9
9
|
|
|
10
10
|
## Karar günlüğü
|
|
11
11
|
|
|
12
|
-
`/dashboard`
|
|
12
|
+
`/dashboard` reads this table; do not change the columns.
|
|
13
13
|
|
|
14
|
-
| # |
|
|
14
|
+
| # | Date | Stage | Topic | Question | Chosen | Door | Decided by |
|
|
15
15
|
|---|---|---|---|---|---|---|---|
|
|
16
16
|
|
|
17
|
-
## ADR
|
|
17
|
+
## ADR list
|
|
18
18
|
|
|
19
|
-
| ADR |
|
|
19
|
+
| ADR | Title | Status | Log no |
|
|
20
20
|
|---|---|---|---|
|
package/docs/findings/README.md
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Findings
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Reports that scan the project through different expert eyes. Each report ranks at most the 20 most important findings with evidence, a 0-100 severity score and a fix method; it also gives a 0-100 health score for the area. Method: `.claude/findings/protocol.md`.
|
|
4
4
|
|
|
5
|
-
|
|
|
5
|
+
| Command | Viewpoint | Folder |
|
|
6
6
|
|---|---|---|
|
|
7
|
-
| `/findings-tech` |
|
|
8
|
-
| `/findings-business` |
|
|
9
|
-
| `/findings-security` |
|
|
10
|
-
| `/findings-ux` |
|
|
11
|
-
| `/findings-perf` |
|
|
12
|
-
| `/findings-legal` |
|
|
13
|
-
| `/findings-all` |
|
|
7
|
+
| `/findings-tech` | Senior architect: bugs, duplicate and unused code, structure, tests | `tech/` |
|
|
8
|
+
| `/findings-business` | Industry expert: workflows, business rules, revenue, competition | `business/` |
|
|
9
|
+
| `/findings-security` | Attacker: access, injection, secrets, dependencies | `security/` |
|
|
10
|
+
| `/findings-ux` | User and UX researcher: flows, accessibility, copy | `ux/` |
|
|
11
|
+
| `/findings-perf` | Performance and FinOps: slow paths, cost | `perf/` |
|
|
12
|
+
| `/findings-legal` | Compliance expert: KVKK, regulation, license (not legal advice) | `legal/` |
|
|
13
|
+
| `/findings-all` | All of the selected types + a combined summary | `summary-*.md` |
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
Each type's folder holds dated reports and a copy of the latest report (`latest.md`).
|
|
16
16
|
|
|
17
17
|
## Raporlar
|
|
18
18
|
|
|
19
|
-
`/dashboard`
|
|
19
|
+
The `/dashboard` dashboard reads this table; do not change the columns. Write health and the previous score in the `NN` format.
|
|
20
20
|
|
|
21
|
-
|
|
|
21
|
+
| Date | Type | Health | Previous | Findings | Critical | Report |
|
|
22
22
|
|---|---|---|---|---|---|---|
|
package/docs/findings/config.md
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Findings settings
|
|
2
2
|
|
|
3
|
-
> `/findings-*`
|
|
3
|
+
> The `/findings-*` commands read this file. The AI asks for the empty fields on the first run and fills them in.
|
|
4
4
|
|
|
5
5
|
## Business
|
|
6
6
|
|
|
7
|
-
**
|
|
8
|
-
**
|
|
9
|
-
**
|
|
10
|
-
**
|
|
11
|
-
**
|
|
12
|
-
**
|
|
7
|
+
**Sector:** -
|
|
8
|
+
**Subfield:** -
|
|
9
|
+
**Expert role:** -
|
|
10
|
+
**Market:** -
|
|
11
|
+
**Target customer:** -
|
|
12
|
+
**Competitors:** -
|
|
13
13
|
|
|
14
14
|
## Legal
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
**
|
|
18
|
-
**
|
|
16
|
+
**Relevant regulations:** -
|
|
17
|
+
**Personal data types:** -
|
|
18
|
+
**Countries where data is processed:** -
|
|
19
19
|
|
|
20
|
-
##
|
|
20
|
+
## General
|
|
21
21
|
|
|
22
|
-
**
|
|
22
|
+
**Excluded paths:** sandbox/, docs/archive/
|
|
@@ -47,7 +47,7 @@ Vercel, Supabase, AWS, OpenAI, Sentry gibi yurt dışı sunuculu servisler = yur
|
|
|
47
47
|
|
|
48
48
|
## 6. Mobil mağaza ek gereksinimleri
|
|
49
49
|
|
|
50
|
-
`docs/architecture/stack.md` (mobil) → "
|
|
50
|
+
`docs/architecture/stack.md` (mobil) → "Go live (extra)" bölümüne bak: App Store gizlilik etiketleri, Google Play Veri Güvenliği formu, uygulama içi hesap silme.
|
|
51
51
|
|
|
52
52
|
## 7. Gözden geçirme
|
|
53
53
|
|