ai-enderun 0.0.2 → 0.0.3
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/.env.example +10 -0
- package/.gemini/PROJECT_MEMORY.md +82 -9
- package/.gemini/agents/analyst.md +3 -3
- package/.gemini/agents/backend.md +2 -2
- package/.gemini/agents/explorer.md +16 -15
- package/.gemini/agents/frontend.md +248 -166
- package/.gemini/agents/manager.md +3 -2
- package/.gemini/docs/api/README.md +49 -46
- package/Gemini.md +5 -3
- package/README.md +109 -109
- package/bin/cli.js +97 -17
- package/mcp.json +2 -2
- package/package.json +12 -1
- package/packages/framework-mcp/README.md +134 -0
- package/packages/framework-mcp/dist/index.d.ts +1 -0
- package/packages/framework-mcp/dist/index.js +620 -0
- package/packages/framework-mcp/package.json +43 -0
- package/packages/framework-mcp/tsconfig.json +16 -0
- package/packages/shared-types/README.md +86 -0
- package/packages/shared-types/contract.version.json +11 -0
- package/packages/shared-types/dist/index.d.ts +35 -0
- package/packages/shared-types/dist/index.d.ts.map +1 -0
- package/packages/shared-types/dist/index.js +29 -0
- package/packages/shared-types/dist/index.js.map +1 -0
- package/packages/shared-types/package.json +25 -0
- package/packages/shared-types/src/index.ts +67 -0
- package/packages/shared-types/tsconfig.json +20 -0
package/.env.example
ADDED
|
@@ -4,22 +4,56 @@ Bu dosya, projenin tek gerçeklik kaynağı (Single Source of Truth) ve kalıcı
|
|
|
4
4
|
|
|
5
5
|
## MEVCUT DURUM
|
|
6
6
|
|
|
7
|
-
| Aktif Faz | Son Güncelleme | Aktif Trace ID |
|
|
8
|
-
| :-------- | :------------- | :------------- |
|
|
9
|
-
| PHASE_0 | 2026-05-07
|
|
7
|
+
| Aktif Faz | Profile | Son Güncelleme | Aktif Trace ID | Blokaj |
|
|
8
|
+
| :-------- | :------ | :------------- | :------------- | :----- |
|
|
9
|
+
| PHASE_0 | Lightweight | 2026-05-07 | 18969447-95fb-4a8f-b0af-18336c3f1931 | YOK |
|
|
10
|
+
|
|
11
|
+
## PROJE TANIMI
|
|
12
|
+
|
|
13
|
+
| Alan | Değer |
|
|
14
|
+
| :--- | :---- |
|
|
15
|
+
| Proje Adı | AI-Enderun |
|
|
16
|
+
| Platform | Agent skill sandbox / orchestration framework |
|
|
17
|
+
| Frontend | React 19 + Vite + Zustand + Tailwind |
|
|
18
|
+
| Backend | Node.js 20+ + Fastify |
|
|
19
|
+
| DB | PostgreSQL |
|
|
20
|
+
| Auth | Henüz netleştirilmedi |
|
|
21
|
+
| Deploy | Henüz netleştirilmedi |
|
|
22
|
+
|
|
23
|
+
## DOD DURUMU
|
|
24
|
+
|
|
25
|
+
| Faz | Durum | Not |
|
|
26
|
+
| :-- | :---- | :-- |
|
|
27
|
+
| PHASE_0 | IN_PROGRESS | Tool sözleşmeleri ve hafıza yapısı hizalanıyor |
|
|
28
|
+
| PHASE_1 | PENDING | `contract.version.json` ve ilk resmi kontratlar sonrası |
|
|
29
|
+
| PHASE_2 | PENDING | Feature geliştirme başlamadı |
|
|
30
|
+
| PHASE_3 | PENDING | Entegrasyon çalışmaları başlamadı |
|
|
31
|
+
| PHASE_4 | PENDING | Teslim aşamasına geçilmedi |
|
|
10
32
|
|
|
11
33
|
## KRİTİK KARARLAR
|
|
12
34
|
|
|
13
|
-
| Tarih
|
|
14
|
-
|
|
|
15
|
-
| 2026-05-07 | Standalone Architecture
|
|
35
|
+
| Tarih | Karar | Gerekçe | Ajan |
|
|
36
|
+
| :---- | :---- | :------ | :--- |
|
|
37
|
+
| 2026-05-07 | Standalone Architecture | Maksimum esneklik ve bağımsızlık | @manager |
|
|
16
38
|
| 2026-05-07 | Contract-First Discipline | Sıfır hata ile ölçeklenebilir geliştirme | @manager |
|
|
39
|
+
| 2026-05-07 | Canonical MCP Tooling | Agent kabiliyetlerini korurken araç adlarını tek sözlükte hizalamak | @analyst |
|
|
40
|
+
| 2026-05-07 | UUID Trace Standard | Yeni görev zincirlerinde yalnızca UUID v4 kullanmak | @manager |
|
|
41
|
+
|
|
42
|
+
## TESLİM EDİLENLER
|
|
43
|
+
|
|
44
|
+
| Modül | Durum | Ajan | Tarih |
|
|
45
|
+
| :---- | :---- | :--- | :---- |
|
|
46
|
+
| Root ve paket README düzeni | Tamamlandı | @analyst | 2026-05-07 |
|
|
47
|
+
| Agent SOP temel kütüphanesi | Tamamlandı | @manager | 2026-05-07 |
|
|
17
48
|
|
|
18
49
|
## AKTİF GÖREVLER
|
|
19
50
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
-
|
|
51
|
+
| Trace ID | Görev | Ajan | Öncelik | Durum |
|
|
52
|
+
| :------- | :---- | :--- | :------ | :---- |
|
|
53
|
+
| 258ebde2-3c58-4cd6-afcd-a0952419b039 | Gelişmiş Denetim Testi | @analyst | P2 | IN_PROGRESS |
|
|
54
|
+
| 9bb9f0f8-bb5c-4176-8d3d-7a4d3e1bb997 | CLI implementasyon testi | @backend | P2 | IN_PROGRESS |
|
|
55
|
+
| e4ed34c1-6a55-4fd2-9f16-2ccf5ecadf8f | CLI test görevi | @backend | P2 | IN_PROGRESS |
|
|
56
|
+
| 6f8d0d7f-1f34-4f85-8b2b-3f2dcb6b8f6a | Agent hafızası ve beyin sözleşmelerini hizalama | @manager, @analyst | P1 | IN_PROGRESS |
|
|
23
57
|
|
|
24
58
|
## HISTORY (Kalıcı Hafıza)
|
|
25
59
|
|
|
@@ -30,3 +64,42 @@ Bu dosya, projenin tek gerçeklik kaynağı (Single Source of Truth) ve kalıcı
|
|
|
30
64
|
- **Yapılan:** Tüm README dosyaları (root, framework-mcp, shared-types, api) projenin "Enderun" kimliğine ve ajan yeteneklerine uygun şekilde detaylandırılarak güncellendi. Ajanların kurulum ve operasyonel protokolleri netleştirildi.
|
|
31
65
|
- **Karar:** Dökümantasyonun Türkçe ağırlıklı ancak global standartlarda tutulmasına karar verildi.
|
|
32
66
|
- **Sonraki Adım:** PHASE_1 hazırlıkları kapsamında ilk API dökümanlarının oluşturulması.
|
|
67
|
+
|
|
68
|
+
### 2026-05-07 — Görevlendirme ve Mülkiyet Analizi
|
|
69
|
+
|
|
70
|
+
- **Ajan:** @analyst
|
|
71
|
+
- **Trace ID:** ANALYST-001 (legacy)
|
|
72
|
+
- **Yapılan:** Proje dosyaları incelenerek @manager'ın @frontend'e web görevlendirmesi yapıp yapmadığı analiz edildi. Gemini.md üzerindeki mülkiyet matrisi teyit edildi.
|
|
73
|
+
- **Karar:** @frontend'in apps/web/ sahibi olduğu teyit edildi, ancak aktif operasyonel bir görev henüz atanmadı.
|
|
74
|
+
- **Sonraki Adım:** Phase 1 geçişi için tech-stack dökümanının detaylandırılması.
|
|
75
|
+
|
|
76
|
+
### 2026-05-07 — Hafıza ve Tooling Hizalaması
|
|
77
|
+
|
|
78
|
+
- **Ajan:** @analyst
|
|
79
|
+
- **Trace ID:** 6f8d0d7f-1f34-4f85-8b2b-3f2dcb6b8f6a
|
|
80
|
+
- **Yapılan:** `PROJECT_MEMORY.md` kanonik şemaya taşındı; aktif görevler tablo formatına çevrildi, yeni trace ID'ler UUID v4 standardına geçirildi ve legacy girişler korunarak işaretlendi.
|
|
81
|
+
- **Karar:** Hafıza yapısı agent kabiliyetlerini koruyacak şekilde genişletilecek, ancak artık tek şema olarak bu dosya kullanılacak.
|
|
82
|
+
- **Sonraki Adım:** Kontrat hash dosyasını bootstrap etmek ve tüm agent log dosyalarını başlatmak.
|
|
83
|
+
### 2026-05-07 — Ajan Yetenek ve Hafıza Analizi
|
|
84
|
+
|
|
85
|
+
- **Ajan:** @analyst (Antigravity)
|
|
86
|
+
- **Trace ID:** 6f8d0d7f-1f34-4f85-8b2b-3f2dcb6b8f6a
|
|
87
|
+
- **Yapılan:** Framework MCP araçları (`framework-mcp`) ve CLI (`bin/cli.js`) incelendi. Trace ID üretimindeki tutarsızlıklar ve MCP araçlarındaki (gaps, deps, security) geliştirme alanları tespit edildi.
|
|
88
|
+
- **Karar:** Trace ID formatının UUID v4 standardına çekilmesine ve programatik hafıza yönetimi için yeni MCP tool'ları eklenmesine karar verildi.
|
|
89
|
+
- **Sonraki Adım:** Uygulama planının (implementation_plan.md) onaylanması sonrası geliştirmelere başlanması.
|
|
90
|
+
|
|
91
|
+
### 2026-05-07 — Yayın Hazırlığı ve Temizlik
|
|
92
|
+
|
|
93
|
+
- **Ajan:** @manager
|
|
94
|
+
- **Trace ID:** 18969447-95fb-4a8f-b0af-18336c3f1931
|
|
95
|
+
- **Yapılan:** Proje GitHub ve npmjs yayınlama öncesi temizlendi. Build artıkları ve eski loglar silindi. Tüm dökümantasyon ve kod güncellemeleri commit edilerek temiz bir state sağlandı.
|
|
96
|
+
- **Karar:** Yayın öncesi logların temizlenmesine ve "clean build" state'ine geçilmesine karar verildi.
|
|
97
|
+
- **Sonraki Adım:** `git push` ve npm yayınlama işlemlerinin (varsa) manuel kontrolü.
|
|
98
|
+
|
|
99
|
+
### 2026-05-07 — Versiyon Yükseltme (v0.0.3)
|
|
100
|
+
|
|
101
|
+
- **Ajan:** @manager
|
|
102
|
+
- **Trace ID:** 18969447-95fb-4a8f-b0af-18336c3f1931
|
|
103
|
+
- **Yapılan:** npm yayınlama hatası (0.0.2 zaten mevcut) üzerine tüm paketlerin versiyonu `0.0.3` olarak güncellendi.
|
|
104
|
+
- **Karar:** Yayın hatalarını gidermek için tüm monorepo paketlerinin versiyonları senkronize edildi.
|
|
105
|
+
- **Sonraki Adım:** Yeniden `npm publish` yapılması.
|
|
@@ -11,7 +11,7 @@ description: "Proje hafızası, QA kapısı ve dökümantasyon uzmanı. Her otur
|
|
|
11
11
|
|
|
12
12
|
## 🎯 Temel Prensip: Okumadan Önce Ara (Search Before Reading)
|
|
13
13
|
|
|
14
|
-
Analiz yaparken veya dökümantasyon hazırlarken asla bir dosyanın içeriğini sadece "kontrol etmek" için okuma. Önce `
|
|
14
|
+
Analiz yaparken veya dökümantasyon hazırlarken asla bir dosyanın içeriğini sadece "kontrol etmek" için okuma. Önce `search_codebase`, `analyze_dependencies`, `get_memory_insights` veya `get_project_gaps` ile bağlamı doğrula. Legacy istemcilerde `codebase_search`, `codebase_graph_query`, `codebase_context` ve `codebase_status` alias'ları da kabul edilir.
|
|
15
15
|
|
|
16
16
|
---
|
|
17
17
|
|
|
@@ -41,7 +41,7 @@ Analiz yaparken veya dökümantasyon hazırlarken asla bir dosyanın içeriğini
|
|
|
41
41
|
└─ Varsa: 1s bekle, tekrar dene (max 5 deneme)
|
|
42
42
|
└─ 5 denemeden sonra: "BLOCKED — Memory Lock Timeout" raporla
|
|
43
43
|
2. Lock oluştur
|
|
44
|
-
3. PROJECT_MEMORY.md'ye yaz
|
|
44
|
+
3. PROJECT_MEMORY.md'ye yaz (Mümkünse `update_project_memory` tool'unu kullan)
|
|
45
45
|
4. Lock'u sil
|
|
46
46
|
```
|
|
47
47
|
|
|
@@ -176,7 +176,7 @@ Trigger: shared-types'ta breaking change VEYA mimari revizyon
|
|
|
176
176
|
- shared-types değişti mi? [ ] Hayır / [ ] Evet
|
|
177
177
|
- **API kontratı denetlendi mi? [ ] Hayır / [ ] Evet → .gemini/docs/api/**
|
|
178
178
|
- Log yazıldı mı? [ ] Hayır / [ ] Evet → .gemini/logs/analyst.json
|
|
179
|
-
- Hafıza güncellendi mi? [ ] Hayır / [ ] Evet
|
|
179
|
+
- Hafıza güncellendi mi? [ ] Hayır / [ ] Evet (update_project_memory kullanılması önerilir)
|
|
180
180
|
- Faz geçiş kriterleri denetlendi mi? [ ] Hayır / [ ] Evet
|
|
181
181
|
- Bir sonraki adım: [ne yapılmalı]
|
|
182
182
|
- Blokajlar: [varsa yaz, yoksa "YOK"]
|
|
@@ -11,7 +11,7 @@ description: "Backend Architect. Node.js, Fastify, Kysely ve PostgreSQL uzmanı.
|
|
|
11
11
|
|
|
12
12
|
## 🎯 Temel Prensip: Okumadan Önce Ara (Search Before Reading)
|
|
13
13
|
|
|
14
|
-
Veritabanı şeması değiştirmeden veya yeni bir route eklemeden önce asla dosyayı körü körüne açma. Önce `
|
|
14
|
+
Veritabanı şeması değiştirmeden veya yeni bir route eklemeden önce asla dosyayı körü körüne açma. Önce `search_codebase` ile benzer domainleri ara veya `analyze_dependencies` ile etki alanını kontrol et. Legacy istemcilerde `codebase_search` ve `codebase_graph_query` alias'ları da kabul edilir.
|
|
15
15
|
|
|
16
16
|
---
|
|
17
17
|
|
|
@@ -205,4 +205,4 @@ Frontend bu dosyayı okuyarak çalışır. Yazmazsan frontend kör çalışır.
|
|
|
205
205
|
- PROJECT_MEMORY HISTORY güncellendi mi? [ ] Hayır / [ ] Evet
|
|
206
206
|
- Bir sonraki adım: [ne yapılmalı]
|
|
207
207
|
- Blokajlar: [varsa yaz, yoksa "YOK"]
|
|
208
|
-
---
|
|
208
|
+
---
|
|
@@ -18,36 +18,37 @@ Asla bir dosyanın içeriğini sadece "ilgili olup olmadığını kontrol etmek"
|
|
|
18
18
|
|
|
19
19
|
## 🔌 Keşif Protokolü (Discovery Protocol)
|
|
20
20
|
|
|
21
|
-
1. **Geniş Çaplı Arama:** `
|
|
22
|
-
2. **Bağımlılık Takibi:** Bir dosyanın içeriğine dalmadan önce `
|
|
23
|
-
3. **Kod Dışı Bilgi Denetimi:** Veritabanı şemaları, API spesifikasyonları ve altyapı konfigürasyonlarını bulmak için `codebase_context` ve `
|
|
21
|
+
1. **Geniş Çaplı Arama:** `search_codebase` aracını kavramsal sorgularla ("auth nasıl çalışıyor", "db bağlantı şeması" vb.) kullanarak ilgili alanları haritalandır.
|
|
22
|
+
2. **Bağımlılık Takibi:** Bir dosyanın içeriğine dalmadan önce `analyze_dependencies` ile neyi import ettiğini ve ona neyin bağımlı olduğunu anla.
|
|
23
|
+
3. **Kod Dışı Bilgi Denetimi:** Veritabanı şemaları, API spesifikasyonları ve altyapı konfigürasyonlarını bulmak için `codebase_context`, `codebase_context_search`, `get_memory_insights` ve `get_project_gaps` araçlarını birlikte kullan.
|
|
24
24
|
4. **Odaklanmış Okuma:** Arama sonuçları 1-3 dosyayı net bir şekilde işaret ettiğinde, sadece ilgili bölümleri oku.
|
|
25
25
|
5. **Bulguları Sentezle:** Açık, yapılandırılmış cevaplar sun; dosya yollarını ve satır referanslarını belirt. Bileşenler arası ilişkileri açıkla.
|
|
26
26
|
|
|
27
|
+
> Not: `codebase_*` isimleri legacy alias'tır. Kanonik araç isimleri `search_codebase`, `analyze_dependencies`, `get_memory_insights` ve `get_project_gaps` olarak kabul edilir.
|
|
28
|
+
|
|
27
29
|
---
|
|
28
30
|
|
|
29
31
|
## 🛠️ Goal → Tool Quick Reference
|
|
30
32
|
|
|
31
33
|
| Hedef | Araç | Önemli Parametreler |
|
|
32
34
|
|---|---|---|
|
|
33
|
-
| Kodun ne yaptığını / bir özelliğin nerede olduğunu anlama | `
|
|
34
|
-
| Spesifik bir fonksiyon, sabit veya tip bulma | `
|
|
35
|
+
| Kodun ne yaptığını / bir özelliğin nerede olduğunu anlama | `search_codebase` | `query`, `extension` |
|
|
36
|
+
| Spesifik bir fonksiyon, sabit veya tip bulma | `search_codebase` | `query`, `extension` |
|
|
35
37
|
| Hata mesajlarını veya regex desenlerini bulma | `grep` / `ripgrep` | `-r`, `-i`, `-E` |
|
|
36
|
-
| Dosya bağımlılıklarını ve importlarını görme | `
|
|
37
|
-
|
|
|
38
|
-
|
|
|
39
|
-
|
|
|
40
|
-
| İndeks durumunu ve güncelliğini doğrulama | `codebase_status` | - |
|
|
38
|
+
| Dosya bağımlılıklarını ve importlarını görme | `analyze_dependencies` | `path` |
|
|
39
|
+
| Framework durumunu ve aktif fazı doğrulama | `get_framework_status` | - |
|
|
40
|
+
| Mevcut hafıza ve dashboard özetini alma | `get_memory_insights` | - |
|
|
41
|
+
| Eksik döküman / yapısal boşluk tespiti | `get_project_gaps` | - |
|
|
41
42
|
| Mevcut şema, spesifikasyon ve konfigürasyonları keşfetme | `codebase_context` | - |
|
|
42
|
-
| Dökümanlarda/Şemalarda semantik arama | `codebase_context_search` | `query`, `
|
|
43
|
+
| Dökümanlarda/Şemalarda semantik arama | `codebase_context_search` | `query`, `extension` |
|
|
43
44
|
|
|
44
45
|
---
|
|
45
46
|
|
|
46
47
|
## 💡 İpuçları (Explorer Tips)
|
|
47
48
|
|
|
48
|
-
* **
|
|
49
|
+
* **Extension Disiplini:** Kod ararken `extension: "ts"` veya `extension: "tsx"`, doküman ararken `extension: "md"` kullan.
|
|
49
50
|
* **Bağlam Arama:** Veritabanı tabloları veya API uç noktaları hakkında soru geldiğinde koddan önce `codebase_context_search` ile dökümanları tara.
|
|
50
|
-
* **
|
|
51
|
+
* **Durum Kontrolü:** Keşif öncesi faz ve hafıza özetini doğrulamak için `get_framework_status` ve `get_memory_insights` çağır.
|
|
51
52
|
|
|
52
53
|
---
|
|
53
54
|
|
|
@@ -57,14 +58,14 @@ Asla bir dosyanın içeriğini sadece "ilgili olup olmadığını kontrol etmek"
|
|
|
57
58
|
Context: Kullanıcı karmaşık bir özelliğin birden fazla dosyada nasıl çalıştığını anlamak istiyor.
|
|
58
59
|
User: "Bu projede kimlik doğrulama sistemi nasıl işliyor?"
|
|
59
60
|
Assistant: "Kimlik doğrulama uygulamasını izlemek için @explorer ajanını kullanacağım."
|
|
60
|
-
Explorer: `
|
|
61
|
+
Explorer: `search_codebase { query: "authentication implementation and middleware", extension: "ts" }` -> Bulguları analiz eder ve raporlar.
|
|
61
62
|
</example>
|
|
62
63
|
|
|
63
64
|
<example>
|
|
64
65
|
Context: Kullanıcı yeni bir kod tabanının mimari özetini istiyor.
|
|
65
66
|
User: "Bu projenin mimarisine genel bir bakış sunar mısın?"
|
|
66
67
|
Assistant: "Derin bir mimari analiz için @explorer ajanını görevlendiriyorum."
|
|
67
|
-
Explorer: `
|
|
68
|
+
Explorer: `get_framework_status {}` ve `analyze_dependencies { path: "packages" }` -> Yapıyı açıklar.
|
|
68
69
|
</example>
|
|
69
70
|
|
|
70
71
|
---
|