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.
Files changed (185) hide show
  1. package/.claude/agents/board-chair.md +20 -20
  2. package/.claude/agents/code-reviewer.md +20 -20
  3. package/.claude/agents/council-advisor.md +14 -14
  4. package/.claude/agents/security-auditor.md +30 -30
  5. package/.claude/agents/test-writer.md +22 -22
  6. package/.claude/board/board-ai.md +25 -25
  7. package/.claude/board/board-api.md +25 -25
  8. package/.claude/board/board-architect.md +28 -28
  9. package/.claude/board/board-devops.md +25 -25
  10. package/.claude/board/board-mobile.md +25 -25
  11. package/.claude/board/board-performance.md +24 -24
  12. package/.claude/board/board-privacy.md +25 -25
  13. package/.claude/board/board-product.md +26 -26
  14. package/.claude/board/board-qa.md +28 -28
  15. package/.claude/board/board-ux.md +26 -26
  16. package/.claude/board/council.md +76 -76
  17. package/.claude/board/rules.md +61 -61
  18. package/.claude/claude-security-guidance.md +10 -10
  19. package/.claude/commands/adopt.md +70 -69
  20. package/.claude/commands/ask-mode.md +9 -9
  21. package/.claude/commands/board.md +15 -15
  22. package/.claude/commands/build.md +47 -47
  23. package/.claude/commands/dashboard.md +17 -17
  24. package/.claude/commands/design.md +31 -31
  25. package/.claude/commands/findings-all.md +14 -14
  26. package/.claude/commands/findings-business.md +7 -7
  27. package/.claude/commands/findings-legal.md +7 -7
  28. package/.claude/commands/findings-perf.md +7 -7
  29. package/.claude/commands/findings-security.md +9 -9
  30. package/.claude/commands/findings-tech.md +7 -7
  31. package/.claude/commands/findings-ux.md +7 -7
  32. package/.claude/commands/fix-bug.md +15 -15
  33. package/.claude/commands/freeze.md +8 -8
  34. package/.claude/commands/handoff.md +38 -38
  35. package/.claude/commands/kit-update.md +17 -14
  36. package/.claude/commands/language.md +13 -0
  37. package/.claude/commands/maintain.md +19 -19
  38. package/.claude/commands/plan-task.md +32 -32
  39. package/.claude/commands/qa.md +17 -17
  40. package/.claude/commands/release.md +40 -40
  41. package/.claude/commands/research.md +31 -31
  42. package/.claude/commands/retro.md +32 -32
  43. package/.claude/commands/review-changes.md +15 -15
  44. package/.claude/commands/rollback.md +24 -24
  45. package/.claude/commands/start.md +116 -113
  46. package/.claude/commands/tools.md +11 -11
  47. package/.claude/commands/user-feedback.md +11 -11
  48. package/.claude/commands/wrap-up.md +18 -18
  49. package/.claude/findings/lenses/business.md +24 -24
  50. package/.claude/findings/lenses/legal.md +29 -29
  51. package/.claude/findings/lenses/perf.md +19 -19
  52. package/.claude/findings/lenses/security.md +30 -30
  53. package/.claude/findings/lenses/tech.md +23 -23
  54. package/.claude/findings/lenses/ux.md +19 -19
  55. package/.claude/findings/protocol.md +54 -54
  56. package/.claude/findings/report-template.md +30 -30
  57. package/.claude/hooks/budget.mjs +7 -7
  58. package/.claude/hooks/checkpoint.mjs +12 -12
  59. package/.claude/hooks/commit-gate.mjs +38 -37
  60. package/.claude/hooks/cost.mjs +2 -2
  61. package/.claude/hooks/council.mjs +3 -3
  62. package/.claude/hooks/dashboard-data.mjs +3 -2
  63. package/.claude/hooks/dashboard.mjs +164 -149
  64. package/.claude/hooks/destructive-guard.mjs +74 -64
  65. package/.claude/hooks/edit-rounds.mjs +3 -3
  66. package/.claude/hooks/flow.mjs +10 -10
  67. package/.claude/hooks/freeze-guard.mjs +27 -23
  68. package/.claude/hooks/gate.mjs +25 -25
  69. package/.claude/hooks/guard-secrets.mjs +11 -11
  70. package/.claude/hooks/lang.mjs +114 -0
  71. package/.claude/hooks/messages.mjs +495 -0
  72. package/.claude/hooks/models.mjs +14 -11
  73. package/.claude/hooks/notify.mjs +3 -2
  74. package/.claude/hooks/package-gate.mjs +17 -15
  75. package/.claude/hooks/plugins-sync.mjs +9 -9
  76. package/.claude/hooks/prefs.mjs +19 -19
  77. package/.claude/hooks/preview.mjs +11 -11
  78. package/.claude/hooks/progress.mjs +14 -14
  79. package/.claude/hooks/qa-report.mjs +11 -10
  80. package/.claude/hooks/reminder.mjs +6 -3
  81. package/.claude/hooks/session-start.mjs +23 -17
  82. package/.claude/hooks/shared.mjs +1 -1
  83. package/.claude/hooks/status-read.mjs +5 -4
  84. package/.claude/hooks/statusline.mjs +14 -11
  85. package/.claude/hooks/structure-guard.mjs +9 -9
  86. package/.claude/hooks/test-guard.mjs +12 -12
  87. package/.claude/hooks/tools.mjs +28 -29
  88. package/.claude/hooks/usage.mjs +18 -15
  89. package/.claude/output-styles/anlatici.md +28 -28
  90. package/.claude/security-patterns.json +3 -3
  91. package/.claude/settings.json +2 -0
  92. package/.claude/skills/logo-design/SKILL.md +42 -42
  93. package/.claude/skills/motion-video/SKILL.md +52 -52
  94. package/.claude/skills/source-research/SKILL.md +35 -35
  95. package/.claude/skills/ui-motion/SKILL.md +38 -38
  96. package/.github/workflows/kit-tests.yml +7 -7
  97. package/.github/workflows/npm-publish.yml +16 -16
  98. package/AGENTS.md +56 -56
  99. package/CHANGELOG.md +7 -7
  100. package/CLAUDE.md +5 -5
  101. package/README.md +199 -172
  102. package/README.tr.md +292 -0
  103. package/docs/architecture/overview.md +31 -31
  104. package/docs/architecture/stack.md +2 -2
  105. package/docs/archive/README.md +4 -4
  106. package/docs/decisions/adr-template.md +14 -14
  107. package/docs/decisions/log.md +10 -10
  108. package/docs/findings/README.md +13 -13
  109. package/docs/findings/config.md +13 -13
  110. package/docs/legal/privacy-kvkk.md +1 -1
  111. package/docs/operations/accounts.md +25 -25
  112. package/docs/operations/deploy-setup.md +64 -64
  113. package/docs/operations/feature-flags.md +17 -17
  114. package/docs/operations/maintenance.md +48 -48
  115. package/docs/operations/release-checklist.md +61 -61
  116. package/docs/operations/spend-alarms.md +28 -28
  117. package/docs/product/feedback.md +9 -8
  118. package/docs/product/glossary.md +16 -16
  119. package/docs/product/launch.md +28 -28
  120. package/docs/product/prd.md +43 -42
  121. package/docs/product/roadmap.md +31 -30
  122. package/docs/product/specs/_template.md +13 -12
  123. package/docs/product/unit-economics.md +23 -22
  124. package/docs/quality/metrics.md +14 -14
  125. package/docs/quality/retros.md +11 -11
  126. package/docs/quality/test-plan.md +48 -48
  127. package/docs/security/checklist.md +57 -57
  128. package/docs/workflow/board.md +7 -7
  129. package/docs/workflow/cost-log.md +4 -4
  130. package/docs/workflow/decision-protocol.md +70 -70
  131. package/docs/workflow/learning.md +4 -4
  132. package/docs/workflow/mcp-catalog.md +31 -31
  133. package/docs/workflow/models.md +35 -35
  134. package/docs/workflow/progress.md +7 -7
  135. package/docs/workflow/skills.md +108 -108
  136. package/docs/workflow/usage-limits.md +62 -62
  137. package/kit/CHANGELOG.md +876 -841
  138. package/kit/VERSION +1 -1
  139. package/kit/guide.html +713 -477
  140. package/kit/guide.tr.html +1328 -0
  141. package/kit/kit.mjs +56 -54
  142. package/kit/project/README.md +29 -29
  143. package/kit/project/gitignore +12 -12
  144. package/kit/templates/addons/ai/.env.example.append +5 -5
  145. package/kit/templates/addons/ai/ai/evals/README.md +11 -11
  146. package/kit/templates/addons/ai/ai/evals/cases.jsonl +2 -2
  147. package/kit/templates/addons/ai/ai/prompts/README.md +8 -8
  148. package/kit/templates/addons/ai/docs/ai/guide.md +56 -56
  149. package/kit/templates/backend/.claude/hooks/format.mjs +1 -1
  150. package/kit/templates/backend/.claude/structure.json +1 -1
  151. package/kit/templates/backend/.env.example +6 -6
  152. package/kit/templates/backend/.github/dependabot.yml +1 -1
  153. package/kit/templates/backend/.github/workflows/ci.yml +13 -13
  154. package/kit/templates/backend/.github/workflows/claude-ci-fix.yml +19 -19
  155. package/kit/templates/backend/.github/workflows/claude-maintenance.yml +18 -18
  156. package/kit/templates/backend/.github/workflows/live-monitoring.yml +14 -14
  157. package/kit/templates/backend/.pre-commit-config.yaml +3 -3
  158. package/kit/templates/backend/docs/architecture/stack.md +98 -98
  159. package/kit/templates/backend/docs/architecture/structure.md +34 -34
  160. package/kit/templates/mobile/.claude/structure.json +1 -1
  161. package/kit/templates/mobile/.env.example +6 -6
  162. package/kit/templates/mobile/.github/dependabot.yml +2 -2
  163. package/kit/templates/mobile/.github/workflows/ci.yml +18 -18
  164. package/kit/templates/mobile/.github/workflows/claude-ci-fix.yml +19 -19
  165. package/kit/templates/mobile/.github/workflows/claude-maintenance.yml +18 -18
  166. package/kit/templates/mobile/.gitignore.append +2 -2
  167. package/kit/templates/mobile/docs/architecture/stack.md +113 -113
  168. package/kit/templates/mobile/docs/architecture/structure.md +33 -33
  169. package/kit/templates/mobile/docs/design/design-guide.md +37 -37
  170. package/kit/templates/mobile/tests/security/rls.mjs +22 -22
  171. package/kit/templates/web-saas/.claude/structure.json +1 -1
  172. package/kit/templates/web-saas/.env.example +11 -11
  173. package/kit/templates/web-saas/.github/dependabot.yml +3 -3
  174. package/kit/templates/web-saas/.github/workflows/ci.yml +20 -20
  175. package/kit/templates/web-saas/.github/workflows/claude-ci-fix.yml +19 -19
  176. package/kit/templates/web-saas/.github/workflows/claude-maintenance.yml +18 -18
  177. package/kit/templates/web-saas/.github/workflows/live-monitoring.yml +12 -12
  178. package/kit/templates/web-saas/docs/architecture/stack.md +116 -116
  179. package/kit/templates/web-saas/docs/architecture/structure.md +44 -44
  180. package/kit/templates/web-saas/docs/design/design-guide.md +38 -38
  181. package/kit/templates/web-saas/tests/live/smoke.spec.ts +4 -4
  182. package/kit/templates/web-saas/tests/security/rls.mjs +22 -22
  183. package/kit/tools/codex/.codex/hooks.json +1 -1
  184. package/package.json +2 -2
  185. package/README.en.md +0 -267
@@ -1,103 +1,104 @@
1
1
  ---
2
- description: Var olan (ilerlemiş, beğenilmeyen veya iyileştirilecek) bir projeyi kite alır. Kodu tarar, belgeleri koddan çıkarır, soru sorarak doğrular, testleri ve yapıyı kitin düzenine getiren bir uyum yol haritası çıkarır.
3
- argument-hint: [boş | projeyle ilgili kısa not]
2
+ description: Brings an existing project (in progress, disliked or needing improvement) into the kit. Scans the code, derives the docs from the code, verifies by asking questions, and produces an alignment roadmap that brings tests and structure to the kit's layout.
3
+ argument-hint: [empty | short note about the project]
4
4
  ---
5
5
 
6
- Not: $ARGUMENTS
6
+ Note: $ARGUMENTS
7
7
 
8
- Bu bir **9 adımlı uyum sihirbazı** (0-9). `/start`'ın var olan kod için olan karşılığıdır. Fikirden değil koddan başlar, ama kararları yine kullanıcı verir: Her kararı `docs/workflow/decision-protocol.md`'ye göre sor ve verildiği anda `docs/decisions/log.md`'ye yaz. Bu oturumda uygulama kodunu değiştirme ve dosya taşıma. Taşıma ve düzeltmeler yol haritasındaki görevlerle, `/build` ile yapılır.
8
+ This is a **9-step alignment wizard** (0-9). It is the counterpart of `/start` for existing code. It starts from the code, not from an idea, but the user still makes the decisions: Ask every decision per `docs/workflow/decision-protocol.md` and write it to `docs/decisions/log.md` the moment it is made. Do not change application code or move files in this session. Moves and fixes are done with the roadmap tasks, through `/build`.
9
9
 
10
- **Önkoşul:** Kit bu klasöre `init` ile kurulmuş olmalı (`.kit.json` var, `type` boş). Kurulmamışsa kullanıcıya kurulum komutunu ver: `node <kit klasörü>/kit/kit.mjs init`. Kurulumdan sonra yeni oturum açılması gerekir.
10
+ **Prerequisite:** The kit must be installed in this folder with `init` (`.kit.json` exists, `type` empty). If not installed, give the user the install command: `node <kit folder>/kit/kit.mjs init`. A new session must be opened after installation.
11
11
 
12
- **Devam etme:** `docs/workflow/progress.md` → `**Aktif faz:** Başlangıç (uyum)` ve `**Başlangıç adımı:**` 0'dan büyükse kaldığın adımdan devam et. Her adım bitince bu satırı (`N/9`) ve `**Son güncelleme:**` satırını güncelle, sonra durum bloğunu yaz.
12
+ **Resuming:** If `docs/workflow/progress.md` → `**Aktif faz:** Başlangıç (uyum)` and `**Başlangıç adımı:**` is greater than 0, resume from that step. When a step ends, update this line (`N/9`) and the `**Son güncelleme:**` line, then write the status block.
13
13
 
14
- **Mevcut koda saygı:** Kurulum projenin dosyalarının üzerine yazmaz; kitin hali yanına `<dosya>.kit-new` olarak konur. Bunları Adım 2'de tek tek ele al.
14
+ **Respect existing code:** Installation does not overwrite the project's files; the kit's version is placed next to it as `<file>.kit-new`. Handle them one by one in Step 2.
15
15
 
16
16
  ---
17
17
 
18
- ## Adım 0: Hazırlık
18
+ ## Step 0: Preparation
19
19
 
20
+ 0. **Language (before anything else):** Apply the language question at the start of `/start` Step 0 exactly (question in English, Turkish / English / Other, `node .claude/hooks/lang.mjs --set <code>`, translation if needed). If a language is already chosen, do not ask again.
20
21
  1. `docs/workflow/progress.md` → `**Aktif faz:** Başlangıç (uyum)`, `**Başlangıç adımı:** 0/9`.
21
- 2. `/start` Adım 0'daki şu maddeleri aynen uygula: Profil (0), anlatıcı mod (0b), araç (0c), auto memory (0d), model ve effort (0e, `docs/workflow/models.md`), ortam kontrolü (1), eklentiler (2), caveman (3), kod haritası (5), bildirimler (6), pano (6b). Var olan projede kod haritası daha da faydalıdır; önerilen seçenek "Kur" olsun.
22
- 3. **Tarama derinliği:** Limiti oku ve sor. Tahmini maliyetleri göster:
23
- - **Hızlı tarama (Önerilen, Pro'da):** Yapı, stack, testler, git geçmişi, belgeler. 5 saatlik limitin yaklaşık %10-20'si.
24
- - **Derin tarama:** Hızlı taramaya ek olarak seçilen bulgu raporları (`/findings-tech`, `-security`, `-ux` vb.). Rapor başına yaklaşık %8-15 daha. Hangi raporların çalışacağını çoklu seçimle sor.
25
- Seçimi `**Profil:**` satırına ekle (örn. `Hafif · tarama: Hızlı`).
22
+ 2. Apply these items from `/start` Step 0 exactly: Profile (0), narrator mode (0b), tool (0c), auto memory (0d), model and effort (0e, `docs/workflow/models.md`), environment check (1), plugins (2), caveman (3), code map (5), notifications (6), dashboard (6b). The code map is even more useful in an existing project; make "Install" the recommended option.
23
+ 3. **Scan depth:** Read the limit and ask. Show the estimated costs:
24
+ - **Quick scan (Recommended, on Pro):** Structure, stack, tests, git history, docs. About 10-20% of the 5-hour limit.
25
+ - **Deep scan:** In addition to the quick scan, the selected findings reports (`/findings-tech`, `-security`, `-ux` etc.). About 8-15% more per report. Ask which reports to run with multi-select.
26
+ Append the choice to the `**Profil:**` line (e.g. `Hafif · scan: Hızlı`).
26
27
 
27
- ## Adım 1: Tara (salt okunur)
28
+ ## Step 1: Scan (read-only)
28
29
 
29
- Dosyaları toptan okuma: kod haritası bağlıysa önce onu kullan, yoksa paket dosyalarından, klasör ağacından ve giriş noktalarından başla. Çıkar:
30
- 1. **Stack:** Dil, framework, veritabanı, auth, hosting, paket yöneticisi. Kilit dosyası var mı? Çalışma ortamı sürümü sabit mi (`.nvmrc`, `.python-version`, `engines`)?
31
- 2. **Yapı:** Klasör ağacı (2-3 seviye), giriş noktaları, katmanlar. Kitin özellik bazlı yapısından (`features/<özellik>/`) ne kadar uzak?
32
- 3. **Özellikler:** Rotalar, ekranlar, API uçları ve modellerden kullanıcıya görünen özellik listesi.
33
- 4. **Testler:** Test altyapısı var mı? Testleri çalıştır, sonucu göster: kaç test, kaçı kırmızı, kapsanan alanlar. Doğrulama satırı olmayan ya da her şeyi taklitle (mock) geçen testleri ayrıca işaretle.
34
- 5. **Kurulabilirlik:** README'de kurulum adımı, `.env.example`, sistem bağımlılıkları.
35
- 6. **Git geçmişi:** Son 30 commit'in özeti, aktif dallar, en çok değişen dosyalar (riskli bölgeler).
36
- 7. **Mevcut belgeler:** README, eski `CLAUDE.md` ve `AGENTS.md` (yerinde duruyorlar; kitinkiler `.kit-new` uzantılı), varsa docs klasörü.
37
- 8. **Kaynağı olmayan parçalar:** Repoya girmiş derlenmiş paket, küçültülmüş JS, Electron ASAR veya kaynağı kayıp bağımlılık. Varsa listele. İçini anlamak gerekirse rea CLI öner (`docs/workflow/mcp-catalog.md` → rea): sadece projenin sahibi olduğu veya incelemeye yetkili olduğu parçalar için, lisansını kontrol ederek.
30
+ Do not read files in bulk: if the code map is connected, use it first; otherwise start from the package files, the folder tree and the entry points. Extract:
31
+ 1. **Stack:** Language, framework, database, auth, hosting, package manager. Is there a lock file? Is the runtime version pinned (`.nvmrc`, `.python-version`, `engines`)?
32
+ 2. **Structure:** Folder tree (2-3 levels), entry points, layers. How far is it from the kit's feature-based structure (`features/<feature>/`)?
33
+ 3. **Features:** The user-visible feature list from routes, screens, API endpoints and models.
34
+ 4. **Tests:** Is there a test setup? Run the tests and show the result: how many tests, how many red, which areas are covered. Also flag tests that have no verification line or that pass everything with mocks.
35
+ 5. **Installability:** Setup steps in the README, `.env.example`, system dependencies.
36
+ 6. **Git history:** Summary of the last 30 commits, active branches, most changed files (risky zones).
37
+ 7. **Existing docs:** README, the old `CLAUDE.md` and `AGENTS.md` (they stay in place; the kit's versions have the `.kit-new` extension), the docs folder if any.
38
+ 8. **Parts without source:** A compiled package, minified JS, an Electron ASAR or a dependency with lost source that entered the repo. List them if present. If their inside needs to be understood, suggest the rea CLI (`docs/workflow/mcp-catalog.md` → rea): only for parts the project owner owns or is authorized to inspect, checking the license.
38
39
 
39
- Bulguları kısa bir tablo halinde göster. Hızlı taramada kodun içine dalma: sadece yapı ve özet.
40
+ Show the findings as a short table. In a quick scan do not dive into the code: only structure and summary.
40
41
 
41
- ## Adım 2: Tip ve kurulum
42
+ ## Step 2: Type and installation
42
43
 
43
- 1. Taramaya göre tipi öner ve onaylat (web-saas / mobile / backend; AI özelliği var mı; Türkiye'de satış veya Türk kullanıcı varsa Türkiye eki `tr`, ayrıntı `/start` Adım 2).
44
- 2. Kur: `node <kit klasörü>/kit/kit.mjs install --type <tip> [--addons ai,tr] --project .` (kit klasörü `.kit.json` → `kit` alanında; alan `local` ise klasör git dışı `.kit.local.json` → `kit`'te, o dosya yoksa proje başka makinede açılmıştır: kullanıcıya kit klasörünü sor ya da `npx -y tillerhand@<.kit.json → version>` kullan; alan `npx:tillerhand@<sürüm>` ise `npx -y tillerhand@<sürüm> install ...`; sürüm tam olarak `1.2.3` biçiminde ve `.kit.json` → `version` ile aynı değilse dur ve sor). Araç `init`'te seçilmediyse Adım 0'daki seçimi `--tool <liste>` olarak ekle.
45
- 3. **`.kit-new` dosyaları:** Her biri için (`CLAUDE.md` ve `AGENTS.md` hariç, onlar Adım 4'te) farkı özetle ve karar olarak sor: kitinkini al / projeninkini koru / birleştir. Örnekler: `.env.example` genelde birleştirilir; `ci.yml` için mevcut CI'ın yaptıklarını kitinkiyle karşılaştır. Sonra `.kit-new` dosyasını sil.
44
+ 1. Propose the type based on the scan and get it approved (web-saas / mobile / backend; is there an AI feature; if there are sales in Turkey or Turkish users, the Turkey add-on `tr`, details in `/start` Step 2).
45
+ 2. Install: `node <kit folder>/kit/kit.mjs install --type <type> [--addons ai,tr] --project .` (the kit folder is in the `.kit.json` → `kit` field; if the field is `local`, the folder is in the git-ignored `.kit.local.json` → `kit`, and if that file is missing, the project was opened on another machine: ask the user for the kit folder or use `npx -y tillerhand@<.kit.json → version>`; if the field is `npx:tillerhand@<version>`, `npx -y tillerhand@<version> install ...`; if the version is not exactly in the form `1.2.3` and the same as `.kit.json` → `version`, stop and ask). If the tool was not chosen at `init`, add the choice from Step 0 as `--tool <list>`.
46
+ 3. **`.kit-new` files:** For each one (except `CLAUDE.md` and `AGENTS.md`, which are in Step 4), summarize the difference and ask as a decision: take the kit's / keep the project's / merge. Examples: `.env.example` is usually merged; for `ci.yml`, compare what the existing CI does with the kit's. Then delete the `.kit-new` file.
46
47
 
47
- ## Adım 3: Belgeleri koddan çıkar
48
+ ## Step 3: Derive the docs from the code
48
49
 
49
- Kodun söylediğini taslak olarak yaz, koddan anlaşılmayanı sor (AskUserQuestion, turlar halinde):
50
- 1. **`docs/product/prd.md`:** Problem, hedef kullanıcı, mevcut özellikler (koddan), kabul kriterleri taslağı. Sor: Projenin amacı ve kitlesi doğru anlaşıldı mı? **Neyi beğenmiyorsun, neyi iyileştirmek istiyorsun?** (çoklu seçim + serbest). Eksik veya yarım kalan özellikler hangileri?
51
- 2. **`docs/architecture/stack.md`:** "Seçilen teknolojiler" tablosunu mevcut stack'le doldur. Kitin kataloğundan farklı seçimler hata değildir; değiştirmeyi önermek ayrı bir karardır ve sadece ciddi bir sebep varsa sorulur (güvenlik, bakımı bitmiş sürüm, maliyet).
52
- 3. **`docs/architecture/overview.md`, `docs/product/glossary.md`:** Veri modeli, servisler, ana kavramlar.
53
- 3b. **Araştırma (pahalı adım, isteğe bağlı):** Benzer projeler ve rakiplerle karşılaştırma için `/research` öner (hızlı: limitin yaklaşık %10-15'i). Yap / Sonraya bırak. Seçilen özellikler Adım 8'de Faz 3'e girer.
54
- 4. **README:** Gereksinimler ve Kurulum bölümleri (`/start` Adım 4 madde 3a). Eksik kilit dosyası veya sürüm dosyası Adım 8'de ilk görevlerden biri olur.
50
+ Write what the code says as a draft, ask what cannot be understood from the code (AskUserQuestion, in rounds):
51
+ 1. **`docs/product/prd.md`:** Problem, target user, current features (from the code), draft acceptance criteria. Ask: Were the project's purpose and audience understood correctly? **What do you dislike, what do you want to improve?** (multi-select + free text). Which features are missing or unfinished?
52
+ 2. **`docs/architecture/stack.md`:** Fill the "Seçilen teknolojiler" (chosen technologies) table with the current stack. Choices different from the kit's catalog are not errors; proposing a change is a separate decision and is asked only if there is a serious reason (security, an end-of-life version, cost).
53
+ 3. **`docs/architecture/overview.md`, `docs/product/glossary.md`:** Data model, services, main concepts.
54
+ 3b. **Research (expensive step, optional):** Suggest `/research` for comparison with similar projects and competitors (quick: about 10-15% of the limit). Do it / Leave for later. Selected features go into Phase 3 in Step 8.
55
+ 4. **README:** The "Requirements" and "Installation" sections (`/start` Step 4 item 3a). A missing lock file or version file becomes one of the first tasks in Step 8.
55
56
 
56
- ## Adım 4: AGENTS.md ve CLAUDE.md'yi yeniden yaz
57
+ ## Step 4: Rewrite AGENTS.md and CLAUDE.md
57
58
 
58
- Ortak kurallar `AGENTS.md`'de (Claude Code, Codex, Antigravity okur); `CLAUDE.md` onu `@AGENTS.md` ile içe alır ve sadece Claude Code'a özel ekleri tutar.
59
+ The shared rules are in `AGENTS.md` (read by Claude Code, Codex, Antigravity); `CLAUDE.md` imports it with `@AGENTS.md` and keeps only Claude Code-specific additions.
59
60
 
60
- 1. Kitin `AGENTS.md` (veya `AGENTS.md.kit-new`) dosyasını temel al; proje adı, tek cümle tanım ve Komutlar bölümünü doldur. `CLAUDE.md` kitin `CLAUDE.md.kit-new` haline geçer. `init` projenin `AGENTS.md`'si yüzünden `CLAUDE.md`'ye `@AGENTS.md.kit-new` yazdıysa bu satırı `@AGENTS.md` yap.
61
- 2. Eski `CLAUDE.md`'yi (ve varsa eski `AGENTS.md`'yi) oku ve içindeki projeye özel kuralları listele (kod stili, yasak komutlar, paket yöneticisi, ortam notları, dikkat edilecek yerler). Kitin kurallarıyla aynı olanları ayıkla.
62
- 3. Kalanları **çoklu seçimle** sor: "Eski kurallardan hangileri yeni AGENTS.md'ye girsin?" Kitin kuralıyla çelişen varsa ayrıca belirt.
63
- 4. Seçilenleri `AGENTS.md`'ye `## Proje kuralları` bölümü olarak ekle ("Temel kurallar"dan sonra; sadece Claude Code'a özel olanlar `CLAUDE.md`'ye). Eskileri `docs/archive/claude-md-eski.md` (ve `agents-md-eski.md`) olarak sakla, `.kit-new` dosyalarını sil.
61
+ 1. Take the kit's `AGENTS.md` (or `AGENTS.md.kit-new`) as the base; fill the project name, the one-sentence description and the "Komutlar" (commands) section. `CLAUDE.md` becomes the kit's `CLAUDE.md.kit-new` version. If `init` wrote `@AGENTS.md.kit-new` into `CLAUDE.md` because of the project's `AGENTS.md`, change this line to `@AGENTS.md`.
62
+ 2. Read the old `CLAUDE.md` (and the old `AGENTS.md` if any) and list the project-specific rules in them (code style, forbidden commands, package manager, environment notes, places to be careful). Filter out those that are the same as the kit's rules.
63
+ 3. Ask the rest with **multi-select**: "Which of the old rules should go into the new AGENTS.md?" If any conflicts with a kit rule, point it out separately.
64
+ 4. Add the selected ones to `AGENTS.md` as a `## Project rules` section (after "Core rules"; only the Claude Code-specific ones go to `CLAUDE.md`). Keep the old ones as `docs/archive/claude-md-eski.md` (and `agents-md-eski.md`), delete the `.kit-new` files.
64
65
 
65
- ## Adım 5: Testler ve kritik akışlar
66
+ ## Step 5: Tests and critical flows
66
67
 
67
- 1. Adım 1'deki test sonucunu hatırlat. Kırmızı testler ve hiçbir şeyi doğrulamayan testler bulgu olarak kaydedilir.
68
- 2. Kritik akışları öner (giriş, ödeme, veri kaydı ve silme gibi; 3-7 akış) ve çoklu seçimle onaylat. `docs/quality/test-plan.md`'ye yaz.
69
- 3. **Her kritik akışın doğru davranışını kullanıcıya sor** ("Şifre yanlışsa ne olmalı?" gibi somut sorular). Kodun şu anki davranışı test için kaynak değildir: kod yanlış olabilir. Kod ile cevap çelişirse bunu bulgu olarak yaz ve düzeltme görevini Adım 8'e ekle.
70
- 4. Kural: Yapı taşınmadan önce bu akışlara uçtan uca test yazılır. Sonrasında her görev dokunduğu kodun testini kendisi yazar. Bütün projeye toplu test yazılmaz.
68
+ 1. Recall the test result from Step 1. Red tests and tests that verify nothing are recorded as findings.
69
+ 2. Propose the critical flows (such as sign-in, payment, data save and delete; 3-7 flows) and get them approved with multi-select. Write them to `docs/quality/test-plan.md`.
70
+ 3. **Ask the user the correct behavior of every critical flow** (concrete questions such as "What should happen if the password is wrong?"). The code's current behavior is not the source for tests: the code may be wrong. If the code and the answer conflict, write it as a finding and add the fix task to Step 8.
71
+ 4. Rule: Before the structure is moved, end-to-end tests are written for these flows. After that, each task writes the test of the code it touches. Tests are not written in bulk for the whole project.
71
72
 
72
- ## Adım 6: Derin tarama (seçildiyse)
73
+ ## Step 6: Deep scan (if chosen)
73
74
 
74
- Adım 0'da seçilen bulgu raporlarını çalıştır (`/findings-all <türler>` veya tek tek). Kritik ve yüksek bulguları Adım 8'deki yol haritasına aday olarak al.
75
+ Run the findings reports chosen in Step 0 (`/findings-all <types>` or one by one). Take the critical and high findings as candidates for the roadmap in Step 8.
75
76
 
76
- **İnsan için kod haritası (isteğe bağlı):** Kullanıcı kodu kendisi de görsel olarak keşfetmek isterse Understand-Anything öner (`yayin` paketi: `node .claude/hooks/tools.mjs --required yayin`). `/understand` ilk çalıştırmada bütün kodu okur, büyük projede pahalıdır: maliyeti söyle ve sor. Türkçe çıktı yok; `--language en` kullan. Sonra `/understand-dashboard`. Kod haritası (codebase-memory-mcp) ajan içindir, bu insan içindir; biri diğerinin yerine geçmez.
77
+ **Code map for humans (optional):** If the user wants to explore the code visually themselves, suggest Understand-Anything (`yayin` package: `node .claude/hooks/tools.mjs --required yayin`). `/understand` reads all the code on the first run and is expensive in a big project: state the cost and ask. There is no Turkish output; use `--language en`. Then `/understand-dashboard`. The code map (codebase-memory-mcp) is for the agent, this one is for humans; neither replaces the other.
77
78
 
78
- ## Adım 7: Kurul ve tasarım (isteğe bağlı)
79
+ ## Step 7: Board and design (optional)
79
80
 
80
- Pahalı adımlar: önce maliyeti söyle (`docs/workflow/usage-limits.md`), sonra sor: Yap / Hafif yap / Sonraya bırak.
81
- 1. **Kurul:** `/start` Adım 6.
82
- 2. **Tasarım** (arayüz varsa): Önce mevcut arayüzden `DESIGN.md` çıkar (`impeccable:impeccable` → extract); sonra sor: mevcut tasarımı koru / iyileştir / yeni yön (`/design genel`).
81
+ Expensive steps: state the cost first (`docs/workflow/usage-limits.md`), then ask: Do it / Do it light / Leave for later.
82
+ 1. **Board:** `/start` Step 6.
83
+ 2. **Design** (if there is a UI): First extract `DESIGN.md` from the existing UI (`impeccable:impeccable` → extract); then ask: keep the current design / improve / new direction (`/design general`).
83
84
 
84
- ## Adım 8: Uyum yol haritası → `docs/product/roadmap.md`
85
+ ## Step 8: Alignment roadmap → `docs/product/roadmap.md`
85
86
 
86
- Kitin "Faz 0" şablonunu bu projeye göre yeniden yaz. Sıra önemli:
87
- 1. **Faz 0: Güvenli zemin.** Kilit dosyası ve sürüm dosyası, README kurulum adımları, CI ve pre-commit, kırmızı testlerin durumu. Sonra her kritik akış için ayrı görev: "Ö-xx uçtan uca testi (doğru davranışa göre)".
88
- 2. **Faz 1: Yapıyı taşı.** Proje kitin klasör yapısına (`docs/architecture/structure.md`) taşınır. Her özellik ayrı görevdir (tek oturumluk). Kurallar:
89
- - Taşıma ayrı bir dalda yapılır (`uyum/yapi`).
90
- - Her görev sonunda testler ve uygulama çalışıyor olmalıdır. Testler yeşilse çalışan nokta kaydedilir (`checkpoint.mjs --save`). Bozulursa `/rollback` ile dönülür.
91
- - Taşıma bitene kadar eski klasörler `.claude/structure.json` → `allow` listesine geçici olarak eklenir (CI yapı denetimi kırmızı kalmasın). Bu bir yapı kararıdır: kullanıcıya sor. Faz 1'in son görevi bu geçici satırları silmektir.
92
- 3. **Faz 2: Bulgular.** Kullanıcının beğenmediği şeyler, kod ile doğru davranış arasındaki çelişkiler ve bulgu raporlarının kritik maddeleri, önem sırasıyla.
93
- 4. **Faz 3 ve sonrası:** Yeni özellikler (PRD'deki eksikler).
87
+ Rewrite the kit's "Faz 0" template (Phase 0) for this project. Order matters:
88
+ 1. **Phase 0: Safe ground.** Lock file and version file, README setup steps, CI and pre-commit, the state of the red tests. Then a separate task for each critical flow: "Ö-xx end-to-end test (by the correct behavior)".
89
+ 2. **Phase 1: Move the structure.** The project is moved to the kit's folder structure (`docs/architecture/structure.md`). Each feature is a separate task (single session). Rules:
90
+ - The move is done on a separate branch (`uyum/yapi`).
91
+ - At the end of each task the tests and the app must work. If the tests are green, the working point is saved (`checkpoint.mjs --save`). If it breaks, return with `/rollback`.
92
+ - Until the move ends, the old folders are temporarily added to the `.claude/structure.json` → `allow` list (so the CI structure check does not stay red). This is a structure decision: ask the user. The last task of Phase 1 is deleting these temporary lines.
93
+ 3. **Phase 2: Findings.** Things the user dislikes, conflicts between the code and the correct behavior, and the critical items of the findings reports, in order of importance.
94
+ 4. **Phase 3 and after:** New features (gaps in the PRD).
94
95
 
95
- Sor: "Faz 2'de önce hangisiyle başlayalım?" Yol haritasını özetle ve onay al.
96
+ Ask: "Which one should we start with in Phase 2?" Summarize the roadmap and get approval.
96
97
 
97
- ## Adım 9: Kapanış
98
+ ## Step 9: Closing
98
99
 
99
- 1. `docs/workflow/progress.md`: Aktif faz `Faz 0`, aktif görev `G-001`, başlangıç adımı `9/9`, sıradaki adım, bekleyen kararlar.
100
- 2. `node .claude/hooks/dashboard.mjs` çalıştır.
101
- 3. Özet ver: tip ve stack, mevcut test durumu, kritik akışlar, AGENTS.md'ye taşınan kurallar, yapı farkı, en önemli 3 bulgu, ilk görev, kalan limit.
102
- 4. Commit öner: `docs: kit uyumu (adopt)`.
103
- 5. Son satır: "Devam: `/build G-001`".
100
+ 1. `docs/workflow/progress.md`: Active phase `Faz 0`, active task `G-001`, start step `9/9`, next step, pending decisions.
101
+ 2. Run `node .claude/hooks/dashboard.mjs`.
102
+ 3. Give a summary: type and stack, current test state, critical flows, rules moved to AGENTS.md, structure gap, the 3 most important findings, first task, remaining limit.
103
+ 4. Suggest a commit: `docs: kit uyumu (adopt)`.
104
+ 5. Last line: "Continue: `/build G-001`".
@@ -1,15 +1,15 @@
1
1
  ---
2
- description: Soru modunu gösterir veya değiştirir (hangi konularda karar sorulacak).
3
- argument-hint: [boş | off <konu|hepsi> | on <konu|hepsi>]
2
+ description: Shows or changes the question mode (on which topics decisions are asked).
3
+ argument-hint: [empty | off <konu|hepsi> | on <konu|hepsi>]
4
4
  ---
5
5
 
6
- İstek: $ARGUMENTS
6
+ Request: $ARGUMENTS
7
7
 
8
- Konular: `urun`, `teknik`, `tasarim`, `icerik`, `veri`, `guvenlik`, `maliyet` (`docs/workflow/decision-protocol.md` §1).
8
+ Topics: `urun`, `teknik`, `tasarim`, `icerik`, `veri`, `guvenlik`, `maliyet` (`docs/workflow/decision-protocol.md` §1).
9
9
 
10
- - **Boşsa:** Mevcut soru modunu, kapalı konuları ve kapalıyken verilen otomatik kararları (`docs/decisions/log.md` → karar veren `otomatik`) göster.
11
- - **`off <konu|hepsi>`:** `docs/workflow/progress.md` → `**Soru modu:**` satırını güncelle. Örnek: `açık · kapalı konular: tasarim, icerik`. Hepsi kapalıysa: `kapalı · kapalı konular: hepsi`.
12
- - **`on <konu|hepsi>`:** Konuyu listeden çıkar. Liste boşalırsa: `açık · kapalı konular: yok`.
13
- - Konu adı listede yoksa en yakın konuyu öner ve sor.
10
+ - **Empty:** Show the current question mode, the closed topics and the automatic decisions made while closed (`docs/decisions/log.md` → deciding party `otomatik`).
11
+ - **`off <topic|hepsi>`:** Update the `**Soru modu:**` line in `docs/workflow/progress.md`. Example: `açık · kapalı konular: tasarim, icerik`. If all are closed: `kapalı · kapalı konular: hepsi`.
12
+ - **`on <topic|hepsi>`:** Remove the topic from the list. If the list becomes empty: `açık · kapalı konular: yok`.
13
+ - If the topic name is not in the list, propose the closest topic and ask.
14
14
 
15
- Değişikliği tek satırla onayla. Ayrıca hatırlat: Veri silme, prod deploy ve para harcatan işlemler soru modundan bağımsız olarak her zaman onay ister.
15
+ Confirm the change in one line. Also remind: Deleting data, prod deploys and actions that spend money always ask for approval, regardless of question mode.
@@ -1,23 +1,23 @@
1
1
  ---
2
- description: Uzman kurulunu kurar, değiştirir, toplar veya durumunu gösterir.
3
- argument-hint: [boş | setup | convene <plan|task|phase-end|release|konu> | council <soru>]
2
+ description: Sets up, changes, convenes or shows the status of the expert board.
3
+ argument-hint: [empty | setup | convene <plan|task|phase-end|release|konu> | council <soru>]
4
4
  ---
5
5
 
6
- İstek: $ARGUMENTS
6
+ Request: $ARGUMENTS
7
7
 
8
- Önce `.claude/board/rules.md` ve `docs/workflow/board.md`'yi oku.
8
+ First read `.claude/board/rules.md` and `docs/workflow/board.md`.
9
9
 
10
- - **Boş:** Kurulun durumunu göster: üyeler, inceleme rolünün modeli (`node .claude/hooks/models.mjs --show`), son 5 toplantı ve sonuçları, açık kritik bulgular, commit denetimi açık/kapalı. Kurul kurulmamışsa `/board setup` öner.
11
- - **`setup`:** rules.md §5'i uygula. Kurul zaten varsa, ne yapılacağını sor: üye ekle / üye çıkar / "Bu proje" bölümlerini güncel stack'e göre yenile. Model buradan değişmez: üyeler inceleme rolüyle çalışır (`docs/workflow/models.md`).
12
- - **`convene <tür>`:** rules.md §4'ü uygula.
13
- - `plan`: son onaylanmamış plan
14
- - `task`: aktif görevin değişiklikleri (`git diff`)
15
- - `phase-end`: aktif fazın tüm değişiklikleri (faz başlangıcından bu yana `git log` ve diff özeti)
16
- - `release`: tüm kod tabanı
17
- - Diğer metinler: kullanıcının verdiği konu (örn. "ödeme akışı")
10
+ - **Empty:** Show the board's status: members, the review role's model (`node .claude/hooks/models.mjs --show`), the last 5 meetings and their results, open critical findings, commit review on/off. If the board is not set up, propose `/board setup`.
11
+ - **`setup`:** Apply rules.md §5. If the board already exists, ask what to do: add a member / remove a member / refresh the "This project" sections for the current stack. The model does not change here: members work with the review role (`docs/workflow/models.md`).
12
+ - **`convene <type>`:** Apply rules.md §4.
13
+ - `plan`: the last unapproved plan
14
+ - `task`: the active task's changes (`git diff`)
15
+ - `phase-end`: all changes of the active phase (`git log` and diff summary since the phase start)
16
+ - `release`: the whole codebase
17
+ - Other texts: a topic given by the user (e.g. "payment flow")
18
18
 
19
- - **`council <soru>`:** Karar konseyi (`.claude/board/council.md`). Soruyu ve seçenekleri netleştir, eksikse önce kullanıcıya seçenekleri onaylat. Bitince başkanın önerisiyle kararı AskUserQuestion ile sor.
19
+ - **`council <soru>`:** Decision council (`.claude/board/council.md`). Clarify the question and the options; if options are missing, first have the user confirm them. When done, ask for the decision with AskUserQuestion, using the chair's recommendation.
20
20
 
21
- Toplantıdan önce limiti kontrol et (`node .claude/hooks/usage.mjs`). Tam kurul toplantısı pahalıdır. Seviye sarı veya kırmızıysa tahmini maliyeti tek satırla söyle (`docs/workflow/usage-limits.md` §3). Tam kurul isteğe bağlı bir toplantıysa üye sayısını azaltmayı öner; limit yüzünden toplantıyı durdurma.
21
+ Before a meeting, check the limit (`node .claude/hooks/usage.mjs`). A full board meeting is expensive. If the level is yellow or red, say the estimated cost in one line (`docs/workflow/usage-limits.md` §3). If the full board is an optional meeting, propose reducing the member count; do not stop the meeting because of the limit.
22
22
 
23
- Bitince: kurul sentezi, kullanıcıya sorulan kararlar, günlüğe eklenen satır, durum bloğu.
23
+ When done: board synthesis, decisions asked of the user, the line added to the log, status block.
@@ -1,51 +1,51 @@
1
1
  ---
2
- description: Yol haritasındaki sıradaki (veya verilen) görevi uygular, test eder, işaretler.
3
- argument-hint: [görev kodu, boşsa sıradaki görev]
2
+ description: Implements the next (or given) roadmap task, tests it, marks it done.
3
+ argument-hint: [task id, empty = next task]
4
4
  ---
5
5
 
6
- Görev: $ARGUMENTS
7
- Boşsa `docs/workflow/progress.md` → "Sıradaki adım" veya `docs/product/roadmap.md`'deki ilk işaretsiz görevi al.
6
+ Task: $ARGUMENTS
7
+ If empty, take `docs/workflow/progress.md` → "Sıradaki adım" (next step), or the first unchecked task in `docs/product/roadmap.md`.
8
8
 
9
- 0. **Limit ve bağlam:** Limiti oku ve başlangıcı kaydet: `node .claude/hooks/progress.mjs --start` (masaüstünde durum çubuğu yok: `--limit <5 saatlik %>`, `get_usage`'dan). Bağlam %50'yi geçmişse önce `/wrap-up` + `/clear` öner. Seviye sarı/kırmızıysa veya tahmin kalan payı aşıyorsa bunu tek satırla söyle ve başla (`docs/workflow/usage-limits.md` §3; soru sorma). `docs/workflow/progress.md` → "Kaldığı yer" doluysa oradan devam et.
10
- 0b. **Model ve effort** (`docs/workflow/models.md`): Son seçimi `node .claude/hooks/models.mjs --show` ile oku. Beş rol, rol başına tek soru (model ve effort birlikte, ör. "Sonnet · yüksek"; seçenekler models.md'de). İki AskUserQuestion çağrısı yap: önce plan, kod, test; sonra inceleme, doküman. Her soruda models.md'deki önerilen seçenek ilk sırada ve "(Önerilen)" etiketli; son seçim farklıysa o seçeneğin açıklamasına "son seçim" yaz. Test sorusunda önerilen, kod rolünün son seçiminden farklı modeldir (models.md). Cevabı `node .claude/hooks/models.mjs --set plan=<model>:<effort> code=… test=… review=… docs=…` ile kaydet; kod ve test aynı modelse betik uyarır, uyarıyı kullanıcıya ilet. Ana oturumun modeli veya effort'u plan rolünden farklıysa tek satırla `/model <ad>` ve `/effort <düzey>` öner. Soru modunda `maliyet` konusu kapalıysa sorma ve `--set` çalıştırma: son seçim geçerli kalır, durum bloğunda "otomatik" yaz.
11
- 1. Görevi ve kabul kriterlerini bana tek cümleyle tekrar et. `docs/workflow/progress.md` → aktif görevi güncelle.
12
- 2. Bu görev için onaylanmış bir plan yoksa ve 2'den fazla dosyaya dokunacaksa önce `/plan-task` adımlarını uygula (karar noktaları dahil), onay bekle.
13
- 2a. **Akış:** `node .claude/hooks/flow.mjs --files <plandaki dosya sayısı>` (masaüstünde durum çubuğu yok: `--context` ve `--limit`'i `get_usage`'dan ver). Çıktı kodun ve doküman işinin nerede yapılacağını (ana oturum / alt ajan), görev sonu kurulunun kaç üyeyle ve paralel mi sırayla mı toplanacağını söyler (6b'de yeniden çalıştır: değişen yollardan üyeleri adıyla önerir); 2c, 6b ve 8 buna uyar. "Önce /clear öner" derse tek satırla öner.
14
- 2b. **Önce testler, ayrı ajanla:** Testleri kodu yazan yazmaz (AGENTS.md kural 7). Akış ne derse desin `test-writer` alt ajanını test rolünün `model` ve `effort`'uyla çalıştır. İstemde yalnız: görev, kabul kriterleri, varsa spec, dokunulacak kodun dışa açık arayüzü (imzalar, API yolları). Onaylı planın uygulama ayrıntısını ve hazır test kodunu verme: test istenen davranışı sınar, planı değil. Ajan kabul testlerini (kimlik test adında: `Ö-01.1`) ve gerekiyorsa saldırgan testlerini yazar, çalıştırır ve **kırmızı** olduklarını gösterir; kırmızı çıktıyı bana göster. Belirsiz kriter raporlarsa soruyu sen sor. Test dosyalarına yalnız `test-writer` yazabilir: ana oturum ve kod ajanı denerse test koruması engeller.
15
- 2c. **Kod rolüne devret (2c ve 3):** Akış "Kod: ana oturum" diyorsa (küçük görev: alt ajanın soğuk başlangıcı kazandırdığından pahalı) kodu adım 3'e göre kendin yaz. Yoksa Agent aracıyla alt ajan çalıştır, çağrıda kod rolünün `model` ve `effort`'unu ver. İstemde: görev ve kabul kriterleri, onaylı plan, dokunulacak dosyalar, adım 3'teki kurallar, 2b'nin kırmızı testleri (hedef: yeşile çevirmek; test dosyalarına dokunmaz). Alt ajan kullanıcıya soru soramaz: karar noktasında durup soruyu ve seçenekleri raporlamasını iste; soruyu sen sor, kararı günlüğe yaz, alt ajanı cevapla devam ettir. Düzeltme veya devam için de aynı alt ajanı SendMessage ile sürdür; yeni ajan başlatma (dosyaları yeniden okur). Raporu kısa iste (en fazla ~15 satır: değişen dosyalar, test sonucu sayıyla, açık sorular; kod ve tam çıktı yok). Alt ajan bitince diff'i ve test çıktısını kendin oku; adım 4'ten sonrası ana oturumda. Kullanıcıya görünen metni (humanizer) son haline sen getir.
16
- **Test yanlış görünürse:** Kod tarafı testi değiştirmez. Nedenini raporlar; `test-writer`'ı SendMessage ile sürdür, kritere göre o karar versin. Kriter değişiyorsa bu bir karardır: kullanıcıya sor.
17
- 3. Uygula. Kurallar:
18
- - **Uygularken yeni bir karar noktası çıkarsa dur ve sor** (`docs/workflow/decision-protocol.md`). Tahmin edip devam etme.
19
- - Skill'ler (`docs/workflow/skills.md`): Kod için `ponytail:ponytail`, kritik akış için `mattpocock-skills:tdd`. Arayüz için seçilen yön skill'i + `impeccable:impeccable` (`DESIGN.md`'ye bağlı kal; yeni tasarım kararı gerekirse `/design`). Kullanıcıya görünen metin için `humanizer:humanizer`.
20
- - Sadece bu görevin kapsamı. Görev dışı sorunları düzeltme, `docs/workflow/progress.md` → "Açık sorunlar"a yaz.
21
- - Kod haritası bağlıysa keşfi onunla yap; dosyaları toptan okuma. Büyük dosyada önce ara (grep), sonra yalnız gereken satır aralığını oku.
22
- - Paket kurarken paket kapısı uyarırsa (uydurma / çok yeni / az kullanılan) kullanıcıya bildir; zorlamaya çalışma.
23
- - Plan bayrak gerektiriyorsa özelliği bayrak arkasına koy ve `docs/operations/feature-flags.md`'ye ekle.
24
- - Çalışırken limit %90 / %95 / %99'a gelirse `docs/workflow/usage-limits.md` §4'teki uyarıları ver; işi durdurma.
25
- - Projedeki mevcut kalıpları kullan.
26
- - Hata, boş ve yükleniyor durumlarını unutma.
27
- - Kritik akışa dokunuyorsan (`docs/quality/test-plan.md`) test ekle.
28
- - Yeni ortam değişkeni → `.env.example`.
29
- - Yeni paket → kilit dosyası commit'e girer. Yeni sistem bağımlılığı (veritabanı, ffmpeg vb.) veya kurulum adımı → `README.md` → Gereksinimler / Kurulum.
30
- 4. Doğrula: `node .claude/hooks/gate.mjs --run` (lint, tip kontrolü, test, Semgrep; görev sonu ve commit toplantısı bu çıktıyı kullanır). Kırmızı varsa düzelt. "Komut onayı gerekli" derse komutları bana göster; onaylarsam `node .claude/hooks/gate.mjs --approve`. Aynı hatada 2 denemede çözemezsen dur ve bana durumu anlat.
31
- 5. **Kanıt üret.** "Çalışıyor olmalı" yetmez; çalıştığını göster. Yöntem `docs/architecture/stack.md` → "Doğrulama" bölümünde:
32
- - Arayüz değişikliği → `node .claude/hooks/preview.mjs <görev kodu>`: dev sunucuyu açar, masaüstü (1440) ve mobil (390) ekran görüntüsünü `.previews/<görev kodu>/`'e yazar, sunucuyu kapatır. İlk çalıştırma Playwright indirmesi ve ilk derleme yüzünden birkaç dakika sürebilir: komuta 10 dakika zaman aşımı ver. Görüntüleri aç ve bana göster. Betik "komut onayı gerekli" derse komutları bana göster; onaylarsam `node .claude/hooks/gate.mjs --approve`. Başka bir hata verirse mesajı rapora yaz ve görüntüyü elle al. Sonra ilgili ekranda ana senaryoyu ve bir hata senaryosunu dene. Görevin arayüz kabul kriterlerini tarayıcıda kanıtlamak için raporda `/qa` öner.
33
- - API/iş mantığı → gerçek istek at veya testi çalıştır; isteği ve yanıtı göster.
34
- - Kanıt üretemiyorsan (cihaz, panel, ödeme gibi) bunu açıkça söyle ve benim yapmam gereken adımları yaz.
35
- 6. Arayüz değiştiyse `impeccable:impeccable` → `critique` çalıştır; önemli bulguları düzeltip düzeltmeyeceğimi sor.
36
- 6b. **Görev sonu kurul toplantısı** (`.claude/board/rules.md`; kurul kurulduysa). Bu, değişikliğin tek tam denetimidir: değişikliğe ilgili, akışın (2a) söylediği sayıda üye (en fazla 3) + `code-reviewer` (değişiklik auth, ödeme, kişisel veri gibi hassas bir yola dokunuyorsa `security-auditor` da), inceleme rolünün `model` ve `effort`'uyla. RET varsa görev bitmez; bulguyu ve seçenekleri sor. ONAY veya KOŞULLU ONAY ise ve kapı (adım 4) yeşilse `node .claude/hooks/commit-gate.mjs --approve "görev sonu: <katılanlar>"`: commit aynı değişiklikler için kurulu yeniden toplamaz, sonradan değişen dosyalar varsa yalnız onlar incelenir. Toplantıyı `docs/workflow/board.md` günlüğüne yaz. Kurul kurulmadıysa adım 9'da `/review-changes` öner.
37
- 7. `AGENTS.md` → "Bitti tanımı" listesini tek tek kontrol et.
38
- 8. Kapsam kalkanını kapat (komut kullanıcıya sorulur): `node .claude/hooks/freeze-guard.mjs --plan-end`. PRD'de sadece testi yeşil olan kriterleri işaretle. Testleri JUnit raporuyla çalıştır (`docs/architecture/stack.md` → Kabul testleri) ki pano güncellensin. Limiti tekrar oku. Roadmap, maliyet günlüğü ve progress yazımı mekaniktir, model çağrısı harcama; tek komutla yaz:
39
- `node .claude/hooks/progress.mjs --done <görev kodu> --cost "<görev kodu> <kısa ad>" <K|O|B> --task "-" --did "<görev kodu>: <tek satır ne yapıldı>" --next "<sıradaki görev>" --check`
40
- `--cost` başlangıcı adım 0'dan alır, bitişi ve süreyi kendisi hesaplar (masaüstünde `--limit <%>` ekle). `--check` progress.md'nin kalın etiketli satırlarını (durum çubuğu ve pano okur) denetler; bozuksa düzelt. Açık sorunlar ve bekleyen kararlar gibi düz metin bölümlerini gerekirse elle yaz.
41
- 9. Rapor ver:
42
- - Ne yapıldı (2-3 satır)
43
- - Bu görevde alınan kararlar (kullanıcı / otomatik)
44
- - Kanıt (ekran görüntüsü, istek/yanıt, test çıktısı)
45
- - Benim nasıl test edeceğim (adım adım)
46
- - Önerilen commit mesajı
47
- - Kontrol edemediğin veya şüpheli olduğun yerler
48
- - Görevde bir davranışını düzelttiysem ya da tercih söylediysem: aynı AskUserQuestion çağrısında ayrı bir çoklu seçim sorusu olarak "Tercih olarak kaydedeyim mi?" (AGENTS.md → kural 9, varsa; seçilenler `prefs.mjs --add`). Not yoksa sorma.
49
- - Sonra ne yapalım? AskUserQuestion ile sor: commit (Önerilen; görev sonu denetimi geçerli, kurul kurulmadıysa önce `/review-changes`) / sıradaki göreve geç / bu görevde değişiklik iste. Commit'te hafif kurul denetimi otomatik istenir (commit kapısı hook'u). Commit atıldıktan ve testler yeşilken çalışan nokta kaydet: `node .claude/hooks/checkpoint.mjs --save "<görev kodu> bitti, testler yeşil"` (`/rollback` buraya döner).
50
- - Commit atıldıysa: `docs/workflow/progress.md` → "Sıradaki adım" güncel mi bak, sonra tek satırla `/clear` öner (görev = oturum, `docs/workflow/usage-limits.md` §3; bağlam yüzdesinden bağımsız). Yeni oturum progress.md'den devam eder.
51
- - Durum bloğu
9
+ 0. **Limit and context:** Read the limit and record the start: `node .claude/hooks/progress.mjs --start` (the desktop has no status line: pass `--limit <5-hour %>`, taken from `get_usage`). If context is past 50%, first suggest `/wrap-up` + `/clear`. If the level is yellow/red or the estimate exceeds the remaining share, say so in one line and start (`docs/workflow/usage-limits.md` §3; do not ask). If `docs/workflow/progress.md` → "Kaldığı yer" (where we left off) is filled, continue from there.
10
+ 0b. **Model and effort** (`docs/workflow/models.md`): Read the last choice with `node .claude/hooks/models.mjs --show`. There are five roles, one question per role (model and effort together, e.g. "Sonnet · high"; options are in models.md). Make two AskUserQuestion calls: first plan, code, test; then review, docs. In each question put the recommended option from models.md first, labeled "(Recommended)". If the last choice differs, write "last choice" in that option's description. In the test question, the recommended model differs from the code role's last choice (models.md). Save the answer with `node .claude/hooks/models.mjs --set plan=<model>:<effort> code=… test=… review=… docs=…`. If code and test use the same model, the script warns: pass the warning to the user. If the main session's model or effort differs from the plan role, suggest `/model <name>` and `/effort <level>` in one line. If the `maliyet` topic is closed in question mode, do not ask and do not run `--set`: the last choice stays valid; write "automatic" in the status block.
11
+ 1. Restate the task and its acceptance criteria to me in one sentence. Update the active task in `docs/workflow/progress.md`.
12
+ 2. If there is no approved plan for this task and it touches more than 2 files, first apply the `/plan-task` steps (including decision points), then wait for approval.
13
+ 2a. **Flow:** `node .claude/hooks/flow.mjs --files <number of files in the plan>` (the desktop has no status line: pass `--context` and `--limit` from `get_usage`). The output says where code and docs work run (main session / subagent), and how many members the end-of-task board uses and whether they meet in parallel or in sequence (re-run it at 6b: it suggests members by name from the changed paths). Steps 2c, 6b and 8 follow it. If it says "Suggest /clear first", suggest it in one line.
14
+ 2b. **Tests first, with a separate agent:** The code writer does not write the tests (AGENTS.md rule 7). Whatever the flow says, run the `test-writer` subagent with the test role's `model` and `effort`. Give the prompt only: the task, the acceptance criteria, the spec if any, and the public interface of the code to be touched (signatures, API paths). Do not give the approved plan's implementation details or ready-made test code: a test checks the requested behavior, not the plan. The agent writes the acceptance tests (criterion id in the test name: `Ö-01.1`) and, if needed, adversarial tests, runs them and shows that they are **red**; show me the red output. If it reports an unclear criterion, ask me the question yourself. Only `test-writer` can write to test files: if the main session or the code agent tries, the test guard blocks it.
15
+ 2c. **Hand off to the code role (2c and 3):** If the flow says "Kod: ana oturum" (code: main session; a small task: the subagent's cold start costs more than it saves), write the code yourself per step 3. Otherwise run a subagent with the Agent tool and pass the code role's `model` and `effort` in the call. Prompt: the task and acceptance criteria, the approved plan, the files to touch, the rules in step 3, and the red tests from 2b (goal: turn them green; it does not touch test files). A subagent cannot ask the user: at a decision point it must stop and report the question and options; you ask the question, write the decision to the log, and continue the subagent with the answer. Resume the same subagent with SendMessage for fixes or continuation too; do not start a new agent (it would re-read the files). Ask for a short report (at most ~15 lines: changed files, test result as numbers, open questions; no code and no full output). When the subagent finishes, read the diff and the test output yourself; step 4 onward runs in the main session. Put the user-visible text (humanizer) into its final form yourself.
16
+ **If a test looks wrong:** The code side does not change the test. It reports the reason; resume `test-writer` with SendMessage and let it decide per the criterion. If the criterion changes, that is a decision: ask the user.
17
+ 3. Implement. Rules:
18
+ - **If a new decision point appears while implementing, stop and ask** (`docs/workflow/decision-protocol.md`). Do not guess and continue.
19
+ - Skills (`docs/workflow/skills.md`): `ponytail:ponytail` for code, `mattpocock-skills:tdd` for critical flows. For UI, the chosen direction skill + `impeccable:impeccable` (stay bound to `DESIGN.md`; if a new design decision is needed, `/design`). `humanizer:humanizer` for user-visible text.
20
+ - Only this task's scope. Do not fix problems outside the task; write them to `docs/workflow/progress.md` → "Açık sorunlar" (open issues).
21
+ - If the code map is connected, explore with it; do not read files wholesale. In a large file, search first (grep), then read only the needed line range.
22
+ - If the package gate warns while installing a package (made-up / too new / rarely used), tell the user; do not try to force it.
23
+ - If the plan needs a feature flag, put the feature behind a flag and add it to `docs/operations/feature-flags.md`.
24
+ - If the limit reaches 90% / 95% / 99% while working, give the warnings in `docs/workflow/usage-limits.md` §4; do not stop the work.
25
+ - Use the existing patterns in the project.
26
+ - Do not forget error, empty and loading states.
27
+ - If you touch a critical flow (`docs/quality/test-plan.md`), add a test.
28
+ - New environment variable → `.env.example`.
29
+ - New package → the lock file goes into the commit. New system dependency (database, ffmpeg, etc.) or setup step → `README.md` → Requirements / Installation.
30
+ 4. Verify: `node .claude/hooks/gate.mjs --run` (lint, type check, test, Semgrep; the end-of-task and commit meetings use this output). Fix anything red. If it says "komut onayı gerekli", show me the commands; if I approve, run `node .claude/hooks/gate.mjs --approve`. If you cannot fix the same error in 2 attempts, stop and explain the state to me.
31
+ 5. **Produce evidence.** "It should work" is not enough; show that it works. The method is in `docs/architecture/stack.md` → "Verification":
32
+ - UI change → `node .claude/hooks/preview.mjs <task id>`: it opens the dev server, writes desktop (1440) and mobile (390) screenshots to `.previews/<task id>/`, and closes the server. The first run can take a few minutes because of the Playwright download and the first build: give the command a 10-minute timeout. Open the images and show them to me. If the script says "komut onayı gerekli", show me the commands; if I approve, run `node .claude/hooks/gate.mjs --approve`. If it gives another error, write the message in the report and take the screenshot by hand. Then try the main scenario and one error scenario on the relevant screen. To prove the task's UI acceptance criteria in the browser, suggest `/qa` in the report.
33
+ - API/business logic → send a real request or run the test; show the request and the response.
34
+ - If you cannot produce evidence (device, panel, payment, etc.), say so clearly and write the steps I must do.
35
+ 6. If the UI changed, run `impeccable:impeccable` → `critique`; ask me whether to fix the important findings.
36
+ 6b. **End-of-task board meeting** (`.claude/board/rules.md`; if the board is set up). This is the only full review of the change: the board members relevant to the change, in the number the flow (2a) says (at most 3), + `code-reviewer` (+ `security-auditor` if the change touches a sensitive path such as auth, payment or personal data), with the review role's `model` and `effort`. If there is a RET, the task is not done; ask with the finding and the options. If the verdict is ONAY or KOŞULLU ONAY and the gate (step 4) is green, run `node .claude/hooks/commit-gate.mjs --approve "görev sonu: <attendees>"`: the commit does not convene the board again for the same changes; if files changed afterward, only those are reviewed. Write the meeting to the `docs/workflow/board.md` log. If the board is not set up, suggest `/review-changes` in step 9.
37
+ 7. Check the "done" list in `AGENTS.md` → "Definition of "done"" one by one.
38
+ 8. Close the scope shield (the command asks the user): `node .claude/hooks/freeze-guard.mjs --plan-end`. In the PRD, check off only the criteria whose tests are green. Run the tests with a JUnit report (`docs/architecture/stack.md` → Acceptance tests and feature flags) so the dashboard updates. Read the limit again. Writing the roadmap, the cost log and progress is mechanical: do not spend model calls; write it with one command:
39
+ `node .claude/hooks/progress.mjs --done <task id> --cost "<task id> <short name>" <K|O|B> --task "-" --did "<task id>: <one line on what was done>" --next "<next task>" --check`
40
+ `--cost` takes the start from step 0 and computes the end and the duration itself (on the desktop add `--limit <%>`). `--check` validates the bold-labeled lines of progress.md (the status line and the dashboard read them); fix them if broken. Write plain-text sections such as open issues and pending decisions by hand if needed.
41
+ 9. Give the report:
42
+ - What was done (2-3 lines)
43
+ - Decisions made in this task (user / automatic)
44
+ - Evidence (screenshot, request/response, test output)
45
+ - How I should test it (step by step)
46
+ - Suggested commit message
47
+ - Places you could not check or are unsure about
48
+ - If I corrected your behavior or stated a preference during the task: in the same AskUserQuestion call, a separate multi-select question "Save as a preference?" (AGENTS.md → rule 9, if present; save the selected ones with `prefs.mjs --add`). If there are no notes, do not ask.
49
+ - Ask "What next?" with AskUserQuestion: commit (Recommended; the end-of-task review is valid; if the board is not set up, `/review-changes` first) / move to the next task / ask for changes in this task. At commit, a light board review is requested automatically (commit gate hook). After the commit is made and the tests are green, save a working point: `node .claude/hooks/checkpoint.mjs --save "<task id> done, tests green"` (`/rollback` returns here).
50
+ - If the commit was made: check that `docs/workflow/progress.md` → "Sıradaki adım" (next step) is current, then suggest `/clear` in one line (task = session, `docs/workflow/usage-limits.md` §3; independent of the context percentage). The new session continues from progress.md.
51
+ - Status block
@@ -1,25 +1,25 @@
1
1
  ---
2
- description: Projenin ayrıntılı durum raporunu verir ve dashboard.html panosunu yeniler.
2
+ description: Gives the project's detailed status report and refreshes the dashboard.html dashboard.
3
3
  ---
4
4
 
5
- 1. `node .claude/hooks/cost.mjs` (son 30 günün token ve maliyeti, ccusage) ve `node .claude/hooks/dashboard.mjs` çalıştır. Bu komut `dashboard.html` kontrol panelini üretir (her Claude cevabından sonra Stop hook'u da otomatik üretir; sayfa açıkken 30 sn'de bir yenilenir). Sekmeler: Genel, Yol haritası, Kararlar, Kurul, Bulgular, Kalite, Aktivite, Ürün ve teknik, Operasyon, Limit ve maliyet. Token ayrıntısı (en pahalı istekler, önbellek) için `/session-report`.
6
- 2. Limiti oku (`docs/workflow/usage-limits.md` §1). `docs/workflow/progress.md`, `docs/product/roadmap.md`, `docs/decisions/log.md` ve `docs/workflow/board.md`'yi oku ve şu raporu ver:
5
+ 1. Run `node .claude/hooks/cost.mjs` (tokens and cost of the last 30 days, ccusage) and `node .claude/hooks/dashboard.mjs`. This command produces the `dashboard.html` control panel (the Stop hook also produces it automatically after every Claude answer; while the page is open it refreshes every 30 s). Tabs: Overview, Roadmap, Decisions, Board, Findings, Quality, Activity, Product and tech, Operations, Limit and cost. For token details (most expensive requests, cache) use `/session-report`.
6
+ 2. Read the limit (`docs/workflow/usage-limits.md` §1). Read `docs/workflow/progress.md`, `docs/product/roadmap.md`, `docs/decisions/log.md` and `docs/workflow/board.md`, and give this report:
7
7
 
8
8
  ```
9
- ## Durum: [proje] · [tarih]
10
- **Aşama:** [aktif faz] · **Görev:** [aktif görev] · **İlerleme:** [biten/toplam görev]
11
- **Soru modu:** [...] · **Limit:** [5s % (sıfırlanma) · hf %] · **Kurul:** [durum, üye sayısı]
9
+ ## Status: [project] · [date]
10
+ **Phase:** [active phase] · **Task:** [active task] · **Progress:** [done/total tasks]
11
+ **Question mode:** [...] · **Limit:** [5h % (reset) · weekly %] · **Board:** [state, member count]
12
12
 
13
- **Bu aşamada biten:** [...]
14
- **Kalan görevler (bu faz):** [...]
15
- **Bekleyen kararlar:** [...] ← varsa ilk sıraya koy
16
- **Açık sorunlar / riskler:** [...]
17
- **Son kararlar:** [son 5: soru → seçilen (kullanıcı/otomatik)]
18
- **Son kurul toplantıları:** [son 3: tür → sonuç, açık kritik]
19
- **Kaldığı yer:** [varsa]
20
- **Kontrol listeleri:** Güvenlik x/y · Canlıya alma x/y · KVKK x/y
21
- **Önerilen sıradaki adım:** [tek, somut komut]
13
+ **Done in this phase:** [...]
14
+ **Remaining tasks (this phase):** [...]
15
+ **Pending decisions:** [...] ← put first if any
16
+ **Open issues / risks:** [...]
17
+ **Latest decisions:** [last 5: question → chosen (user/automatic)]
18
+ **Latest board meetings:** [last 3: type → result, open criticals]
19
+ **Where we left off:** [if any]
20
+ **Checklists:** Security x/y · Go live x/y · KVKK x/y
21
+ **Suggested next step:** [one concrete command]
22
22
  ```
23
23
 
24
- 3. Tarayıcı aracın varsa `dashboard.html`'i aç. Yoksa dosya yolunu ver.
25
- 4. Bekleyen bir karar varsa raporun sonunda onu hemen sor.
24
+ 3. If you have a browser tool, open `dashboard.html`. Otherwise give the file path.
25
+ 4. If a decision is pending, ask it right away at the end of the report.