agent-enderun 0.6.5 → 0.6.6
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/.enderun/BRAIN_DASHBOARD.md +12 -12
- package/.enderun/PROJECT_MEMORY.md +15 -123
- package/.enderun/STATUS.md +13 -13
- package/.enderun/agents/README.md +40 -0
- package/.enderun/agents/analyst.md +178 -58
- package/.enderun/agents/backend.md +224 -58
- package/.enderun/agents/explorer.md +123 -50
- package/.enderun/agents/frontend.md +216 -26
- package/.enderun/agents/git.md +146 -72
- package/.enderun/agents/manager.md +23 -3
- package/.enderun/agents/mobile.md +136 -66
- package/.enderun/agents/native.md +176 -63
- package/.enderun/blueprints/README.md +82 -0
- package/.enderun/docs/README.md +50 -0
- package/.enderun/docs/phase1-reference-app-execution-plan.md +177 -0
- package/.enderun/docs/structure-audit-2026-05-24.md +72 -0
- package/.enderun/knowledge/README.md +22 -0
- package/.enderun/knowledge/database_governance_guidelines.md +118 -0
- package/.enderun/knowledge/deployment_checklist.md +132 -6
- package/.enderun/knowledge/documentation_ownership.md +122 -0
- package/.enderun/knowledge/documentation_ownership_status.md +122 -0
- package/.enderun/knowledge/enterprise_capabilities_reference.md +149 -0
- package/.enderun/knowledge/enterprise_frontend_adaptation.md +232 -0
- package/.enderun/knowledge/enterprise_project_adaptation.md +168 -0
- package/.enderun/knowledge/frontend_professionalization_guidelines.md +20 -17
- package/.enderun/knowledge/frontend_real_battle_test_protocol.md +162 -0
- package/.enderun/knowledge/hermes_live_test_guidelines.md +5 -5
- package/.enderun/knowledge/manager_authority_audit_enforcement.md +8 -8
- package/.enderun/knowledge/project_scaffold_guidelines.md +4 -4
- package/.enderun/knowledge/reference_application_guidelines.md +6 -6
- package/ENDERUN.md +13 -6
- package/README.md +98 -183
- package/bin/hermes-sandbox.js +136 -0
- package/docs/action-plan-2026.md +119 -0
- package/docs/getting-started.md +12 -238
- package/docs/roadmap.md +15 -73
- package/framework-mcp/README.md +1 -1
- package/framework-mcp/dist/schemas.js +6 -0
- package/framework-mcp/dist/tools/database.js +7 -2
- package/framework-mcp/dist/tools/framework.js +4 -4
- package/framework-mcp/dist/tools/knowledge.js +1 -1
- package/framework-mcp/dist/tools/memory.js +2 -2
- package/framework-mcp/dist/tools/messages.js +71 -11
- package/framework-mcp/dist/utils.js +1 -1
- package/framework-mcp/package.json +1 -1
- package/framework-mcp/src/tools/database.ts +7 -2
- package/framework-mcp/src/tools/framework.ts +4 -4
- package/framework-mcp/src/tools/knowledge.ts +1 -1
- package/framework-mcp/src/tools/memory.ts +2 -2
- package/framework-mcp/src/tools/messages.ts +4 -4
- package/framework-mcp/src/utils.ts +18 -1
- package/framework-mcp/tsconfig.json +1 -1
- package/package.json +3 -3
- package/.enderun/messages/2026-05-23-backend-to-manager-auth-errors-reply.json +0 -23
- package/.enderun/messages/2026-05-23-manager-to-backend-auth-errors.json +0 -26
- /package/.enderun/blueprints/backend/errors/{blueprint.json → config/meta.json} +0 -0
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
# Agent Enderun — Strategic Action Plan 2026 (v0.6.6+) / Stratejik Eylem Planı
|
|
2
|
+
|
|
3
|
+
**Owner / Sorumlu:** @manager
|
|
4
|
+
**Status / Durum:** APPROVED & ACTIVE
|
|
5
|
+
**Strategic Focus:** Moving from "Governance on Paper" to "Governance in Practice"
|
|
6
|
+
|
|
7
|
+
[English](#english) | [Türkçe](#türkçe)
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# English
|
|
12
|
+
|
|
13
|
+
This strategic document defines the concrete, week-by-week implementation plan to address the critical gaps identified in the v0.6.6 Gap Analysis. It focuses on the three highest-priority phases: building the reference application, executing the Hermes protocol live tests, and professionalizing the frontend/backend engineering standards.
|
|
14
|
+
|
|
15
|
+
## Phase 1: Production-Grade Reference Application (`apps/`)
|
|
16
|
+
**Timeline:** Weeks 1–3
|
|
17
|
+
**Goal:** Prove the constitutional governance framework and kurumsal (enterprise) CRUD constraints in a functional full-stack monorepo application.
|
|
18
|
+
|
|
19
|
+
### 📂 Directory Architecture
|
|
20
|
+
```text
|
|
21
|
+
apps/
|
|
22
|
+
├── backend/ # Fastify API Server
|
|
23
|
+
│ ├── src/
|
|
24
|
+
│ │ ├── index.ts # App entry point
|
|
25
|
+
│ │ ├── types/ # Generated Type Contracts (Branded)
|
|
26
|
+
│ │ ├── db/ # Kysely Migrations & Schema
|
|
27
|
+
│ │ ├── routes/ # Normal CRUD & High-Risk Admin Routes
|
|
28
|
+
│ │ └── plugins/ # Auth & managerApproval Verification
|
|
29
|
+
│ └── contract.version.json # Generated contract hash & version
|
|
30
|
+
│
|
|
31
|
+
└── web/ # React + Vite Client (Zero UI Library)
|
|
32
|
+
├── src/
|
|
33
|
+
│ ├── main.tsx
|
|
34
|
+
│ ├── styled-system/ # Panda CSS zero-runtime styles
|
|
35
|
+
│ ├── types/ # Local copies of API Type Contracts
|
|
36
|
+
│ ├── components/ui/ # Resuable Panda CSS components (no external libs)
|
|
37
|
+
│ ├── hooks/ #useListPage, useDetailPage, useFormPage
|
|
38
|
+
│ └── pages/ # Layouts and logic
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### 🛠️ Concrete Feature Scope
|
|
42
|
+
To keep the scope narrow but technically exhaustive, the reference application will implement a **User & Permissions Management Dashboard**:
|
|
43
|
+
|
|
44
|
+
1. **Normal CRUD (Standard Business Logic):**
|
|
45
|
+
- User profile update, view active tasks, and change preferences.
|
|
46
|
+
- Requires regular authentication token and standard agent checklists.
|
|
47
|
+
|
|
48
|
+
2. **High-Risk Administrative Action (Enforced Governance):**
|
|
49
|
+
- **Action:** Upgrading a user's system role to `SuperAdmin` or resetting the system configurations.
|
|
50
|
+
- **Enforcement:** The backend API **must** require:
|
|
51
|
+
- The `isHighRiskAdminAction: true` flag in the payload.
|
|
52
|
+
- A valid `managerApproval` object signed dynamically by `@manager` during the briefing.
|
|
53
|
+
- **UI Warning:** The frontend must render a prominent security modal, coordinate the briefing request via Hermes, and append the approval payload before dispatching the request.
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## Phase 2: Hermes Messaging Protocol Live Test Program
|
|
58
|
+
**Timeline:** Weeks 4–6
|
|
59
|
+
**Goal:** Battle-test multi-agent autonomous coordination across 4 mandatory scenarios in the local `messages/` sandbox.
|
|
60
|
+
|
|
61
|
+
```mermaid
|
|
62
|
+
sequenceDiagram
|
|
63
|
+
autonumber
|
|
64
|
+
actor Developer
|
|
65
|
+
participant Manager as @manager
|
|
66
|
+
participant Backend as @backend
|
|
67
|
+
participant Frontend as @frontend
|
|
68
|
+
|
|
69
|
+
Developer->>Manager: "Upgrade User 42 to Admin" (High-Risk)
|
|
70
|
+
activate Manager
|
|
71
|
+
Manager->>Backend: Hermes msg: Assess database schema & role payload
|
|
72
|
+
activate Backend
|
|
73
|
+
Backend-->>Manager: Hermes msg: Type contract generated & verified
|
|
74
|
+
deactivate Backend
|
|
75
|
+
Manager->>Frontend: Hermes msg: Dispatch UI component & slot specs
|
|
76
|
+
activate Frontend
|
|
77
|
+
Frontend-->>Manager: Hermes msg: Responsive layout & accessibility check complete
|
|
78
|
+
deactivate Frontend
|
|
79
|
+
Manager-->>Developer: Final Briefing + managerApproval signed token
|
|
80
|
+
deactivate Manager
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### 🧪 The 4 Mandatory Scenarios
|
|
84
|
+
1. **Scenario 1: Autonomously Delegating Features**
|
|
85
|
+
- `@manager` receives a trace, generates the architectural plan, and dispatches precise, localized briefings to `@backend` and `@frontend` with zero manual intervention.
|
|
86
|
+
2. **Scenario 2: Coordinating High-Risk Operations**
|
|
87
|
+
- `@backend` refuses to write a delete endpoint until `@manager` explicitly logs the `managerApproval` briefing token in `PROJECT_MEMORY.md`.
|
|
88
|
+
3. **Scenario 3: Resolving API Contract Drift**
|
|
89
|
+
- `@backend` modifies a property in the API schema; `@analyst` detects the drift, notifies `@frontend` via Hermes, and `@frontend` surgically updates the local types to match.
|
|
90
|
+
4. **Scenario 4: Live Knowledge Sharing**
|
|
91
|
+
- `@explorer` discovers a performance bottleneck or accessibility violation in `apps/web/` and directly updates the agent knowledge base, which `@frontend` immediately adopts in the next turn.
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## Phase 3: `@frontend` & `@backend` Professionalization & Testing
|
|
96
|
+
**Timeline:** Weeks 7–9
|
|
97
|
+
**Goal:** Elevate engineering maturity levels from 6.5 to $\ge 9.0$ through mandatory quality gates.
|
|
98
|
+
|
|
99
|
+
### ♿ @frontend Standards Enforcement
|
|
100
|
+
- **Accessibility (WCAG 2.2 AA) Audit Gate:** All components must pass the visual focus rings, logical tab order, 44x44px touch targets, and semantic ARIA landmarks checks.
|
|
101
|
+
- **Performance Budgets Gate:** Verify that Largest Contentful Paint (LCP) is `< 2.5s`, Cumulative Layout Shift (CLS) is `< 0.1`, and initial gzipped bundle size remains `< 250KB`.
|
|
102
|
+
|
|
103
|
+
### 🧪 Test Coverage & Quality Gates
|
|
104
|
+
- **Shared Components Coverage:** Minimum **70%** code coverage using Vitest + React Testing Library.
|
|
105
|
+
- **Custom Business Hooks Coverage:** Minimum **85%** code coverage.
|
|
106
|
+
- **Contract Integration Tests:** Automated Vitest checks to verify that `apps/backend/contract.version.json` matches the hashes of frontend type copies on every PR.
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
# Türkçe
|
|
111
|
+
|
|
112
|
+
Bu stratejik belge, v0.6.6 Gap Analizinde tespit edilen kritik eksiklikleri kapatmak üzere hazırlanmış haftalık somut eylem planıdır.
|
|
113
|
+
|
|
114
|
+
**Özet:**
|
|
115
|
+
- Faz 1: Referans uygulama + Kurumsal CRUD + Hermes kanıtı
|
|
116
|
+
- Faz 2: 4 zorunlu Hermes Live Test senaryosu
|
|
117
|
+
- Faz 3: @frontend ve @backend profesyonelleşme + kalite kapıları
|
|
118
|
+
|
|
119
|
+
Detaylı plan ve teknik kapsam İngilizce bölümde yer almaktadır.
|
package/docs/getting-started.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
This guide is prepared for developers and engineering teams who want to set up Agent Enderun **from scratch** on a new project. It provides a step-by-step, practical walkthrough.
|
|
10
10
|
|
|
11
|
-
> **Primary recommended installation command from v0.6.
|
|
11
|
+
> **Primary recommended installation command from v0.6.6:** **`npx agent-enderun init` (generic framework setup)**
|
|
12
12
|
|
|
13
13
|
---
|
|
14
14
|
|
|
@@ -100,7 +100,7 @@ npx agent-enderun check
|
|
|
100
100
|
Expected output:
|
|
101
101
|
|
|
102
102
|
```
|
|
103
|
-
✅ Framework active (v0.6.
|
|
103
|
+
✅ Framework active (v0.6.6)
|
|
104
104
|
✅ MCP Server ready
|
|
105
105
|
✅ Shared types compiled
|
|
106
106
|
✅ Agent logs initialized
|
|
@@ -253,245 +253,19 @@ As a next step, we recommend defining **the core contracts of your first real pr
|
|
|
253
253
|
|
|
254
254
|
# Türkçe
|
|
255
255
|
|
|
256
|
-
Bu rehber, Agent Enderun'u **sıfırdan** yeni bir projeye kurmak isteyen geliştiriciler
|
|
256
|
+
Bu rehber, Agent Enderun'u **sıfırdan** yeni bir projeye kurmak isteyen geliştiriciler için hazırlanmıştır.
|
|
257
257
|
|
|
258
|
-
> **v0.6.
|
|
258
|
+
> **v0.6.6 itibarıyla önerilen birincil başlatma komutu:** `npx agent-enderun init`
|
|
259
259
|
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
## 1. Giriş
|
|
263
|
-
|
|
264
|
-
Agent Enderun, yapay zeka destekli yazılım geliştirme süreçlerinde **kontrol, disiplin ve izlenebilirlik** sağlayan bir yönetişim framework'üdür.
|
|
265
|
-
|
|
266
|
-
Bu rehberi tamamladığınızda:
|
|
267
|
-
- Framework'ü projenize kurmuş olacaksınız
|
|
268
|
-
- Temel yapılandırmayı yapmış olacaksınız
|
|
269
|
-
- İlk görevinizi oluşturmuş ve ajanlarla çalışmaya başlamış olacaksınız
|
|
270
|
-
|
|
271
|
-
---
|
|
272
|
-
|
|
273
|
-
## 2. Ön Gereksinimler
|
|
274
|
-
|
|
275
|
-
- **Node.js** 20+ (LTS önerilir)
|
|
276
|
-
- **npm** 9+
|
|
277
|
-
- **Git** (proje klasöründe başlatılmış olmalı)
|
|
278
|
-
|
|
279
|
-
Kontrol etmek için:
|
|
280
|
-
|
|
281
|
-
```bash
|
|
282
|
-
node --version
|
|
283
|
-
npm --version
|
|
284
|
-
git --version
|
|
285
|
-
```
|
|
286
|
-
|
|
287
|
-
---
|
|
288
|
-
|
|
289
|
-
## 3. Adım Adım Kurulum
|
|
290
|
-
|
|
291
|
-
### Adım 1: Yeni Proje Klasörü Oluştur
|
|
292
|
-
|
|
293
|
-
```bash
|
|
294
|
-
mkdir my-new-project
|
|
295
|
-
cd my-new-project
|
|
296
|
-
git init
|
|
297
|
-
```
|
|
298
|
-
|
|
299
|
-
### Adım 2: Framework'ü Başlat
|
|
300
|
-
|
|
301
|
-
Temel framework yapısını temiz bir şekilde kurmak için (kurulumdan önce herhangi bir yapay zeka veya adaptör adı hardcode edilmeden):
|
|
302
|
-
|
|
303
|
-
```bash
|
|
304
|
-
npx agent-enderun init
|
|
305
|
-
```
|
|
306
|
-
|
|
307
|
-
Bu komut:
|
|
308
|
-
- Varsayılan olarak `.enderun/` klasörünü oluşturur
|
|
309
|
-
- Tüm yönetişim dosyalarını (`ENDERUN.md`, `PROJECT_MEMORY.md`, ajanlar, knowledge vb.) kurar
|
|
310
|
-
- Temel framework yapısını projenize ekler
|
|
311
|
-
|
|
312
|
-
#### 💡 İsteğe Bağlı: Özel Bir Adaptör ile Kurulum
|
|
313
|
-
Eğer belirli bir yapay zeka asistan ortamını veya adaptörünü (örneğin Antigravity, Claude, Cursor, Codex, Gemini) yapılandırmak istiyorsanız, bunu parametre olarak belirtebilirsiniz:
|
|
314
|
-
|
|
315
|
-
```bash
|
|
316
|
-
npx agent-enderun init antigravity
|
|
317
|
-
# veya
|
|
318
|
-
npx agent-enderun init claude
|
|
319
|
-
# veya
|
|
320
|
-
npx agent-enderun init cursor
|
|
321
|
-
# veya
|
|
322
|
-
npx agent-enderun init codex
|
|
323
|
-
# veya
|
|
324
|
-
npx agent-enderun init gemini
|
|
325
|
-
```
|
|
326
|
-
|
|
327
|
-
- Eğer `init antigravity` çalıştırırsanız, `.enderun/` yerine `.antigravitycli/` klasörünü oluşturur ve proje köküne `antigravity.md` ekler.
|
|
328
|
-
- Eğer `init claude` çalıştırırsanız, `.enderun/` yerine `.claude/` klasörünü oluşturur ve Claude Desktop MCP ayarlarını otomatik yapılandırır.
|
|
329
|
-
- Eğer `init cursor` çalıştırırsanız, `.cursor/` klasörünü oluşturur ve cursor kurallarını kopyalar.
|
|
330
|
-
- Eğer `init gemini` çalıştırırsanız, `.enderun/` yerine `.gemini/` klasörünü oluşturur ve proje köküne `gemini.md` ekler.
|
|
331
|
-
|
|
332
|
-
---
|
|
333
|
-
|
|
334
|
-
### Adım 3: Bağımlılıkları Yükle ve Derle
|
|
335
|
-
|
|
336
|
-
```bash
|
|
337
|
-
npm install
|
|
338
|
-
npm run enderun:build
|
|
339
|
-
```
|
|
340
|
-
|
|
341
|
-
### Adım 4: Kurulumu Doğrula
|
|
342
|
-
|
|
343
|
-
```bash
|
|
344
|
-
npx agent-enderun check
|
|
345
|
-
```
|
|
346
|
-
|
|
347
|
-
Beklenen çıktı:
|
|
348
|
-
|
|
349
|
-
```
|
|
350
|
-
✅ Framework active (v0.6.5)
|
|
351
|
-
✅ MCP Server ready
|
|
352
|
-
✅ Shared types compiled
|
|
353
|
-
✅ Agent logs initialized
|
|
354
|
-
✅ PROJECT_MEMORY.md found
|
|
355
|
-
```
|
|
356
|
-
|
|
357
|
-
---
|
|
358
|
-
|
|
359
|
-
## 4. Temel Yapılandırma (En Kritik Adım)
|
|
360
|
-
|
|
361
|
-
Framework kurulduktan sonra **mutlaka** aşağıdaki dosyaları doldurmalısınız.
|
|
362
|
-
|
|
363
|
-
### 4.1 `docs/tech-stack.md`
|
|
364
|
-
|
|
365
|
-
Bu dosya **zorunludur**. Ajanlar projenizin hangi teknolojileri kullandığını buradan öğrenir.
|
|
366
|
-
|
|
367
|
-
Örnek doldurma:
|
|
368
|
-
|
|
369
|
-
```markdown
|
|
370
|
-
# TECH STACK
|
|
371
|
-
|
|
372
|
-
## Platform
|
|
373
|
-
- Web (React + Vite)
|
|
374
|
-
- Backend (Node.js + Fastify)
|
|
375
|
-
|
|
376
|
-
## Database
|
|
377
|
-
- PostgreSQL + Kysely
|
|
378
|
-
|
|
379
|
-
## Auth
|
|
380
|
-
- JWT + Refresh Token
|
|
381
|
-
|
|
382
|
-
## Deployment
|
|
383
|
-
- Vercel (Frontend) + Railway (Backend)
|
|
384
|
-
```
|
|
385
|
-
|
|
386
|
-
> **Uyarı:** Bu dosya boş bırakılırsa ajanlar çalışamaz.
|
|
387
|
-
|
|
388
|
-
### 4.2 `docs/project-docs.md`
|
|
389
|
-
|
|
390
|
-
Projenizin amacını, hedef kitlesini ve ana gereksinimleri buraya yazın.
|
|
391
|
-
|
|
392
|
-
### 4.3 `.enderun/PROJECT_MEMORY.md`
|
|
393
|
-
|
|
394
|
-
İlk kurulumda otomatik oluşturulur. İçeriğini inceleyin. *(Not: Özel bir adaptör ile kurulum yaptıysanız bu dosya o adaptörün klasöründe olacaktır, örn. `.antigravitycli/PROJECT_MEMORY.md`)*
|
|
395
|
-
|
|
396
|
-
---
|
|
397
|
-
|
|
398
|
-
## 5. İlk Görev Oluşturma
|
|
399
|
-
|
|
400
|
-
Artık ilk gerçek görevinizi oluşturabilirsiniz:
|
|
401
|
-
|
|
402
|
-
```bash
|
|
403
|
-
npx agent-enderun trace:new "User Registration and Login System" backend P1
|
|
404
|
-
```
|
|
405
|
-
|
|
406
|
-
Bu komut:
|
|
407
|
-
- Yeni bir Trace ID üretir
|
|
408
|
-
- `PROJECT_MEMORY.md` içindeki **ACTIVE TASKS** bölümünü günceller
|
|
409
|
-
- @manager ajanını göreve atar
|
|
410
|
-
|
|
411
|
-
---
|
|
412
|
-
|
|
413
|
-
## 6. Ajanlarla Çalışma Temelleri
|
|
414
|
-
|
|
415
|
-
### Otomatik @manager Davranışı
|
|
416
|
-
|
|
417
|
-
Her yeni oturumda (sohbet başladığında) ajanlar otomatik olarak:
|
|
260
|
+
Tüm teknik adımlar, ön gereksinimler, yapılandırma ve ajanlarla çalışma kuralları **İngilizce bölümde** detaylı olarak açıklanmıştır.
|
|
418
261
|
|
|
419
|
-
|
|
420
|
-
2. `PROJECT_MEMORY.md` dosyasını okur
|
|
421
|
-
3. Aktif fazı ve görevi öğrenir
|
|
262
|
+
Türkçe kısa özet:
|
|
422
263
|
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
-
|
|
426
|
-
-
|
|
427
|
-
|
|
428
|
-
```markdown
|
|
429
|
-
@backend Implement the user model and auth services using Kysely.
|
|
430
|
-
```
|
|
431
|
-
|
|
432
|
-
### Önemli Kurallar
|
|
433
|
-
|
|
434
|
-
- Her zaman `docs/tech-stack.md` dosyasını güncel tutun.
|
|
435
|
-
- Yeni kararlar aldığınızda `PROJECT_MEMORY.md` içindeki **CRITICAL DECISIONS** bölümünü güncelleyin.
|
|
436
|
-
- Her görev için Trace ID kullanın.
|
|
437
|
-
|
|
438
|
-
---
|
|
439
|
-
|
|
440
|
-
## 7. İlk Gerçek Senaryo Örneği
|
|
441
|
-
|
|
442
|
-
Aşağıdaki akışı deneyebilirsiniz:
|
|
443
|
-
|
|
444
|
-
1. `docs/tech-stack.md` dosyasını doldurun
|
|
445
|
-
2. `docs/project-docs.md` içine basit bir gereksinim yazın
|
|
446
|
-
3. Şu komutu çalıştırın:
|
|
447
|
-
|
|
448
|
-
```bash
|
|
449
|
-
npx agent-enderun trace:new "User Registration and Login" backend P1
|
|
450
|
-
```
|
|
451
|
-
|
|
452
|
-
4. Sonra şunu yazın:
|
|
453
|
-
|
|
454
|
-
> @manager Lütfen bu gereksinimi analiz et ve gerekli backend yapısını öner.
|
|
455
|
-
|
|
456
|
-
Ajanlar otomatik olarak:
|
|
457
|
-
- Kod analizi yapacak
|
|
458
|
-
- Kontrat önerecek
|
|
459
|
-
- Gerekirse blueprint kullanacak
|
|
460
|
-
|
|
461
|
-
---
|
|
462
|
-
|
|
463
|
-
## 8. Sık Yapılan Hatalar ve İpuçları
|
|
464
|
-
|
|
465
|
-
| Hata | Sonuç | Çözüm |
|
|
466
|
-
| :--- | :--- | :--- |
|
|
467
|
-
| `docs/tech-stack.md` dosyasını boş bırakmak | Ajanlar ne yapacağını bilemez | Mutlaka doldurun |
|
|
468
|
-
| Doğrudan kod yazdırmak | Düzensiz ve denetimsiz kod | Önce @manager ile plan yaptırın |
|
|
469
|
-
| Trace ID kullanmamak | İşler karışır | Her yeni özellik için `trace:new` kullanın |
|
|
470
|
-
| PROJECT_MEMORY.md'yi güncellememek | Ajanlar eski durumu hatırlar | Yeni kararları mutlaka yazın |
|
|
471
|
-
|
|
472
|
-
---
|
|
473
|
-
|
|
474
|
-
## 9. Sonraki Adımlar
|
|
475
|
-
|
|
476
|
-
Rehberi tamamladıktan sonra şu konuları inceleyin:
|
|
477
|
-
|
|
478
|
-
- **Contract-First Geliştirme** → `apps/backend/src/types` yapısını inceleyin
|
|
479
|
-
- **Blueprint Kullanımı** → `.enderun/blueprints/` klasörüne bakın
|
|
480
|
-
- **Güvenlik ve Denetim** → `npx agent-enderun check:security`
|
|
481
|
-
- **Ajanlar Arası İletişim** → Hermes protokolü (`messages/` klasörü)
|
|
482
|
-
|
|
483
|
-
---
|
|
484
|
-
|
|
485
|
-
## 10. Yardım ve Destek
|
|
486
|
-
|
|
487
|
-
Sorun yaşarsanız:
|
|
488
|
-
|
|
489
|
-
1. `npx agent-enderun status` komutunu çalıştırın
|
|
490
|
-
2. `PROJECT_MEMORY.md` dosyasını kontrol edin
|
|
491
|
-
3. Hata mesajlarını ve son 3 HISTORY girdisini inceleyin
|
|
492
|
-
|
|
493
|
-
---
|
|
264
|
+
- `npx agent-enderun init` ile framework'ü kurun.
|
|
265
|
+
- `docs/tech-stack.md` ve `docs/project-docs.md` dosyalarını doldurun.
|
|
266
|
+
- `npx agent-enderun trace:new` ile ilk görevi oluşturun.
|
|
267
|
+
- Her oturumda @manager otomatik olarak yönetir.
|
|
494
268
|
|
|
495
|
-
|
|
269
|
+
Detaylı kurulum adımları, adaptör seçenekleri, hata önleme ipuçları ve örnek akışlar için lütfen İngilizce bölümü okuyun.
|
|
496
270
|
|
|
497
|
-
|
|
271
|
+
**Tebrikler!** Artık Agent Enderun ile disiplinli yazılım geliştirmeye başlayabilirsiniz.
|
package/docs/roadmap.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# Agent Enderun — Development Roadmap (v0.6.
|
|
1
|
+
# Agent Enderun — Development Roadmap (v0.6.6+) / Geliştirme Yol Haritası
|
|
2
2
|
|
|
3
|
-
**Last Updated / Son Güncelleme:** 23 May 2026 / 23
|
|
3
|
+
**Last Updated / Son Güncelleme:** 23 May 2026 / 23 May 2026
|
|
4
4
|
**Owner / Sorumlu:** @manager
|
|
5
5
|
|
|
6
6
|
[English](#english) | [Türkçe](#türkçe)
|
|
@@ -9,11 +9,11 @@
|
|
|
9
9
|
|
|
10
10
|
# English
|
|
11
11
|
|
|
12
|
-
This document outlines the development roadmap for the Agent Enderun framework **v0.6.
|
|
12
|
+
This document outlines the development roadmap for the Agent Enderun framework **v0.6.6 and beyond**. All items are prioritized logically based on actual project needs and corporate governance principles.
|
|
13
13
|
|
|
14
|
-
## Current Status (
|
|
14
|
+
## Current Status (24 May 2026)
|
|
15
15
|
|
|
16
|
-
- **Version:** v0.6.
|
|
16
|
+
- **Version:** v0.6.6 (ready for npm release)
|
|
17
17
|
- **System Health:** 🟢 GREEN
|
|
18
18
|
- **Key Accomplishments:**
|
|
19
19
|
- Full support for the Antigravity adapter (primary recommended adapter)
|
|
@@ -42,7 +42,7 @@ This program systematically audits current agent maturity levels and runs struct
|
|
|
42
42
|
| **@explorer** | 6.5 | 8.5 | High / Stable. Highly capable in dependency analysis and codebase intelligence. |
|
|
43
43
|
| **@analyst** | 6.5 | 8.5 | Medium / Stable. Handles system health metrics and compliance audits. |
|
|
44
44
|
| **@git** | 6.0 | 8.0 | Medium / Stable. Coordinates PRs, semantic commits, and version compliance. |
|
|
45
|
-
| **@mobile & @native** | 2.0 | 7.5 | Low /
|
|
45
|
+
| **@mobile & @native** | 2.0 | 7.5 | Low / Dormant. Foundational blueprints and Hermes safety rules added. |
|
|
46
46
|
|
|
47
47
|
> **Note:** `@frontend` is currently the highest risk to enterprise onboarding and is the top priority.
|
|
48
48
|
|
|
@@ -98,7 +98,7 @@ This program systematically audits current agent maturity levels and runs struct
|
|
|
98
98
|
### 3. Expand Getting Started Documentation
|
|
99
99
|
- **Description:** Enrich the new guide based on developer feedback. Add more real-world scenarios, troubleshooting tips, and best practices.
|
|
100
100
|
- **Complexity:** Low-Medium
|
|
101
|
-
- **Status:** In Progress (Getting started guide updated to v0.6.
|
|
101
|
+
- **Status:** In Progress (Getting started guide updated to v0.6.6)
|
|
102
102
|
|
|
103
103
|
---
|
|
104
104
|
|
|
@@ -127,74 +127,16 @@ This program systematically audits current agent maturity levels and runs struct
|
|
|
127
127
|
|
|
128
128
|
# Türkçe
|
|
129
129
|
|
|
130
|
-
Bu belge, Agent Enderun framework
|
|
130
|
+
Bu belge, Agent Enderun framework’ünün **v0.6.6 sonrası** geliştirme yol haritasını içerir.
|
|
131
131
|
|
|
132
|
-
## Mevcut Durum (
|
|
132
|
+
## Mevcut Durum (May 2026)
|
|
133
133
|
|
|
134
|
-
- **Versiyon:** v0.6.
|
|
135
|
-
- **Sistem Sağlığı:** 🟢 GREEN
|
|
136
|
-
- **
|
|
137
|
-
- Antigravity adapter tam desteği (birincil adapter)
|
|
138
|
-
- Gemini adapter tamamen kaldırıldı
|
|
139
|
-
- Lint teknik borcu temizlendi (43 → 0 problem)
|
|
140
|
-
- `docs/getting-started.md` rehberi yayınlandı
|
|
141
|
-
- Hafıza ve proje hijyeni güncellendi
|
|
134
|
+
- **Versiyon:** v0.6.6
|
|
135
|
+
- **Sistem Sağlığı:** 🟢 GREEN (build ve test altyapısı onarım altında)
|
|
136
|
+
- **v0.6.6 Odak:** Tüm framework’ün profesyonel İngilizceye dönüştürülmesi ve yönetişim boşluklarının dürüstçe analiz edilmesi.
|
|
142
137
|
|
|
143
|
-
|
|
138
|
+
## Özet
|
|
144
139
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
## Agent Olgunluk ve Profesyonelleşme Programı (En Kritik Stratejik İnisiyatif)
|
|
148
|
-
|
|
149
|
-
Agent Enderun’un kurumsal ve büyük ölçekli projelerde gerçekten kullanılabilir hale gelmesi için ajanların **kıdemli yazılım mühendisi** seviyesine çıkarılması zorunludur.
|
|
150
|
-
|
|
151
|
-
Bu program, mevcut ajanların olgunluk seviyelerini analiz edip her birini sistematik şekilde profesyonel/kurumsal seviyeye taşımayı hedefler.
|
|
152
|
-
|
|
153
|
-
### Ajan Olgunluk Hedefleri
|
|
154
|
-
|
|
155
|
-
| Ajan Personası | Mevcut Seviye | Hedef Seviye | Öncelik / Risk Durumu |
|
|
156
|
-
| :--- | :--- | :--- | :--- |
|
|
157
|
-
| **@manager** | 8.0 | 9.5 | Yüksek / İstikrarlı. Yönetim yeteneği güçlüdür. |
|
|
158
|
-
| **@backend** | 7.5 | 9.0 | Yüksek / Kararlı. Kysely ve Fastify kalıplarını iyi bilir, test yazımı güçlendirilmelidir. |
|
|
159
|
-
| **@frontend** | 6.5 | 9.0 | **Kritik / Yüksek Risk**. Bileşen taslakları, slots, composition pattern'leri, WCAG 2.2 erişilebilirlik ve performans mühendisliğinde büyük takviye gereklidir. |
|
|
160
|
-
| **@explorer** | 6.5 | 8.5 | Yüksek / Bağımlılık analizi ve kod zekasında yetkindir. |
|
|
161
|
-
| **@analyst** | 6.5 | 8.5 | Orta / Sağlık metrikleri ve uygunluk denetiminde rol alır. |
|
|
162
|
-
| **@git** | 6.0 | 8.0 | Orta / PR ve versiyon takibini koordine eder. |
|
|
163
|
-
| **@mobile & @native** | 2.0 | 7.5 | Düşük / Taslak halinde; olgunlaşması gerekecektir. |
|
|
164
|
-
|
|
165
|
-
> **Not:** `@frontend` şu anda kurumsal entegrasyonun önündeki en büyük risktir ve birinci önceliğimizdir.
|
|
166
|
-
|
|
167
|
-
---
|
|
168
|
-
|
|
169
|
-
## Yol Haritası Genel Bakış
|
|
170
|
-
|
|
171
|
-
| Faz | Zaman Dilimi | Odak | Öncelik |
|
|
172
|
-
| :--- | :--- | :--- | :--- |
|
|
173
|
-
| **Agent Maturity Program** | 1–4 Ay | Tüm ajanları profesyonel kurumsal seviyeye çıkarma | **En Yüksek** |
|
|
174
|
-
| **Phase 1** | 1–6 Hafta | Temel Kullanılabilirlik + Otomasyon + CLI | Yüksek |
|
|
175
|
-
| **Phase 2** | 1–3 Ay | Zeka ve Hermes Protokol Olgunluğu | Yüksek |
|
|
176
|
-
| **Phase 3** | 3+ Ay | Ölçeklenebilirlik ve Referans Uygulama | Orta |
|
|
177
|
-
|
|
178
|
-
---
|
|
179
|
-
|
|
180
|
-
## Agent Maturity Program — Phase 1 (1–8 Hafta)
|
|
181
|
-
|
|
182
|
-
### 1. @frontend Ajanının Profesyonelleşmesi (Kritik)
|
|
183
|
-
- Component Architecture (Compound Components, Slots, Composition Patterns)
|
|
184
|
-
- Accessibility (WCAG 2.2 AA standartları)
|
|
185
|
-
- Performance Engineering (Core Web Vitals, virtualization, code splitting)
|
|
186
|
-
- Testing Strategy (Hook + Component + Integration test)
|
|
187
|
-
- Error Boundaries & Resilience
|
|
188
|
-
- Design System Governance
|
|
189
|
-
|
|
190
|
-
### 2. @backend Ajanının Güçlendirilmesi
|
|
191
|
-
- Profesyonel Test Kültürü (Unit + Integration + Contract + E2E)
|
|
192
|
-
- Observability (Structured Logging + Metrics + Tracing)
|
|
193
|
-
- Resilience Patterns (Idempotency, Retry, Circuit Breaker)
|
|
194
|
-
- Query Optimization ve Caching Stratejisi
|
|
140
|
+
Ajan Olgunluk Programı devam etmektedir. @frontend en yüksek riskli ajan olmaya devam ediyor. Hermes protokolünün canlı test edilmesi ve referans uygulamanın üretilmesi önümüzdeki ana hedeflerdir.
|
|
195
141
|
|
|
196
|
-
|
|
197
|
-
- Teknik Borç Yönetimi ve Kayıt Sistemi
|
|
198
|
-
- Risk Değerlendirme Çerçevesi
|
|
199
|
-
- Kapasite Planlaması ve Sürdürülebilir Teslimat
|
|
200
|
-
- Architecture Decision Records (ADR) Disiplini
|
|
142
|
+
Detaylı plan ve risk takibi İngilizce bölümde yer almaktadır.
|
package/framework-mcp/README.md
CHANGED
|
@@ -26,12 +26,18 @@ export const LOG_AGENT_ACTION_ARGS_SCHEMA = z.object({
|
|
|
26
26
|
details: z.record(z.any()).default({}),
|
|
27
27
|
});
|
|
28
28
|
export const SEND_AGENT_MESSAGE_ARGS_SCHEMA = z.object({
|
|
29
|
+
from: z.string().min(1),
|
|
29
30
|
to: z.string().min(1),
|
|
30
31
|
message: z.string().min(1),
|
|
31
32
|
traceId: z.string().min(1),
|
|
32
33
|
category: z.enum(["ACTION", "DELEGATION", "INFO", "ALERT"]).default("INFO"),
|
|
33
34
|
priority: z.enum(["LOW", "MEDIUM", "HIGH", "URGENT"]).default("MEDIUM"),
|
|
34
35
|
});
|
|
36
|
+
export const UPDATE_AGENT_MESSAGE_STATUS_ARGS_SCHEMA = z.object({
|
|
37
|
+
agent: z.string().min(1),
|
|
38
|
+
traceId: z.string().min(1),
|
|
39
|
+
newStatus: z.enum(["ACKNOWLEDGED", "COMPLETED", "REJECTED"]),
|
|
40
|
+
});
|
|
35
41
|
export const SEARCH_KNOWLEDGE_BASE_ARGS_SCHEMA = z.object({
|
|
36
42
|
query: z.string().min(1),
|
|
37
43
|
});
|
|
@@ -29,13 +29,18 @@ export const databaseHandlers = {
|
|
|
29
29
|
for (const sourceFile of tsProject.getSourceFiles()) {
|
|
30
30
|
const text = sourceFile.getFullText();
|
|
31
31
|
const tableMatches = Array.from(text.matchAll(/\.createTable\(['"]([^'"]+)['"]\)/g));
|
|
32
|
-
for (
|
|
32
|
+
for (let i = 0; i < tableMatches.length; i++) {
|
|
33
|
+
const match = tableMatches[i];
|
|
33
34
|
const tableName = match[1];
|
|
34
35
|
tablesFound++;
|
|
35
36
|
mermaid += ` ${tableName} {\n`;
|
|
37
|
+
const startIndex = match.index ?? 0;
|
|
38
|
+
const nextMatch = tableMatches[i + 1];
|
|
39
|
+
const endIndex = nextMatch ? (nextMatch.index ?? text.length) : text.length;
|
|
40
|
+
const tableBlockText = text.substring(startIndex, endIndex);
|
|
36
41
|
const colRegex = /\.addColumn\(['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]/g;
|
|
37
42
|
let colMatch;
|
|
38
|
-
while ((colMatch = colRegex.exec(
|
|
43
|
+
while ((colMatch = colRegex.exec(tableBlockText)) !== null) {
|
|
39
44
|
mermaid += ` ${colMatch[2].replace(/[^a-zA-Z0-9]/g, '_')} ${colMatch[1]}\n`;
|
|
40
45
|
}
|
|
41
46
|
mermaid += ` }\n`;
|
|
@@ -77,7 +77,7 @@ export const frameworkHandlers = {
|
|
|
77
77
|
return { content: [{ type: "text", text: `Legacy Codebase Bootstrap complete. Detected Stack: ${techStack}.` }] };
|
|
78
78
|
}
|
|
79
79
|
catch {
|
|
80
|
-
return { content: [{ type: "text", text: "Failed to
|
|
80
|
+
return { content: [{ type: "text", text: "Failed to bootstrap legacy memory." }] };
|
|
81
81
|
}
|
|
82
82
|
},
|
|
83
83
|
get_framework_status: async (args, projectRoot) => {
|
|
@@ -93,7 +93,7 @@ export const frameworkHandlers = {
|
|
|
93
93
|
};
|
|
94
94
|
}
|
|
95
95
|
catch {
|
|
96
|
-
return { content: [{ type: "text", text: "Failed to get
|
|
96
|
+
return { content: [{ type: "text", text: "Failed to get framework status." }] };
|
|
97
97
|
}
|
|
98
98
|
},
|
|
99
99
|
get_project_gaps: async (args, projectRoot) => {
|
|
@@ -148,7 +148,7 @@ export const frameworkHandlers = {
|
|
|
148
148
|
};
|
|
149
149
|
}
|
|
150
150
|
catch {
|
|
151
|
-
return { content: [{ type: "text", text: "Failed to get
|
|
151
|
+
return { content: [{ type: "text", text: "Failed to get memory insights." }] };
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
154
|
codebase_context: async (args, projectRoot) => {
|
|
@@ -162,7 +162,7 @@ export const frameworkHandlers = {
|
|
|
162
162
|
};
|
|
163
163
|
}
|
|
164
164
|
catch {
|
|
165
|
-
return { content: [{ type: "text", text: "Failed to
|
|
165
|
+
return { content: [{ type: "text", text: "Failed to gather codebase context." }] };
|
|
166
166
|
}
|
|
167
167
|
},
|
|
168
168
|
get_system_time: async () => {
|
|
@@ -90,7 +90,7 @@ export const knowledgeHandlers = {
|
|
|
90
90
|
if (!fs.existsSync(kbDir))
|
|
91
91
|
fs.mkdirSync(kbDir, { recursive: true });
|
|
92
92
|
const fileName = parsed.data.topic.replace(/[^a-z0-9]/gi, "_").toLowerCase() + ".md";
|
|
93
|
-
const tags = parsed.data.tags;
|
|
93
|
+
const tags = parsed.data.tags || [];
|
|
94
94
|
let finalContent = parsed.data.content;
|
|
95
95
|
if (!finalContent.startsWith("---")) {
|
|
96
96
|
const frontmatter = `---\ntitle: ${parsed.data.topic}\ntags: [${tags.join(", ")}]\nlast_updated: ${new Date().toISOString()}\n---\n\n`;
|
|
@@ -76,7 +76,7 @@ export const memoryHandlers = {
|
|
|
76
76
|
return { content: [{ type: "text", text: `Section ${section} updated successfully.` }] };
|
|
77
77
|
}
|
|
78
78
|
catch {
|
|
79
|
-
return { content: [{ type: "text", text: "Failed to
|
|
79
|
+
return { content: [{ type: "text", text: "Failed to update project memory." }] };
|
|
80
80
|
}
|
|
81
81
|
},
|
|
82
82
|
read_project_memory: async (args, projectRoot) => {
|
|
@@ -88,7 +88,7 @@ export const memoryHandlers = {
|
|
|
88
88
|
return { content: [{ type: "text", text: fs.readFileSync(memoryPath, "utf-8") }] };
|
|
89
89
|
}
|
|
90
90
|
catch {
|
|
91
|
-
return { content: [{ type: "text", text: "Failed to
|
|
91
|
+
return { content: [{ type: "text", text: "Failed to read project memory." }] };
|
|
92
92
|
}
|
|
93
93
|
},
|
|
94
94
|
};
|