agent-enderun 1.1.1 โ 1.1.2
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/STATUS.md +2 -2
- package/.enderun/agents/analyst.json +4 -4
- package/.enderun/agents/backend.json +4 -4
- package/.enderun/agents/database.json +4 -4
- package/.enderun/agents/devops.json +4 -4
- package/.enderun/agents/explorer.json +4 -4
- package/.enderun/agents/frontend.json +4 -4
- package/.enderun/agents/git.json +4 -4
- package/.enderun/agents/manager.json +4 -6
- package/.enderun/agents/mobile.json +4 -4
- package/.enderun/agents/native.json +4 -4
- package/.enderun/agents/quality.json +4 -4
- package/.enderun/agents/security.json +4 -4
- package/.enderun/config.json +3 -2
- package/.enderun/logs/manager.json +4 -0
- package/.enderun/memory/PROJECT_MEMORY.md +38 -0
- package/CLAUDE.md +5 -4
- package/GEMINI.md +5 -4
- package/GROK.md +3 -3
- package/README.md +2 -2
- package/agent.md +6 -6
- package/bin/cli.js +3 -4
- package/bin/compile.js +22 -0
- package/bin/test-init-run.js +136 -0
- package/dist/framework-mcp/src/index.js +1 -1
- package/dist/framework-mcp/src/tools/definitions.js +3 -1
- package/dist/framework-mcp/src/tools/definitions.js.map +1 -1
- package/dist/framework-mcp/src/tools/file_system/read_file.js +20 -0
- package/dist/framework-mcp/src/tools/file_system/read_file.js.map +1 -1
- package/dist/framework-mcp/src/tools/messaging/send_message.js +37 -14
- package/dist/framework-mcp/src/tools/messaging/send_message.js.map +1 -1
- package/dist/src/cli/adapters.d.ts +3 -1
- package/dist/src/cli/adapters.js +13 -11
- package/dist/src/cli/adapters.js.map +1 -1
- package/dist/src/cli/commands/check.js +12 -1
- package/dist/src/cli/commands/check.js.map +1 -1
- package/dist/src/cli/commands/init.js +21 -11
- package/dist/src/cli/commands/init.js.map +1 -1
- package/dist/src/cli/commands/orchestrate.d.ts +15 -0
- package/dist/src/cli/commands/orchestrate.js +45 -1
- package/dist/src/cli/commands/orchestrate.js.map +1 -1
- package/dist/src/cli/index.js +84 -19
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/utils/memory.js +4 -0
- package/dist/src/cli/utils/memory.js.map +1 -1
- package/dist/src/cli/utils/pkg.js +5 -1
- package/dist/src/cli/utils/pkg.js.map +1 -1
- package/dist/tests/adapter.test.js +10 -8
- package/dist/tests/adapter.test.js.map +1 -1
- package/dist/tests/gemini.test.js +8 -7
- package/dist/tests/gemini.test.js.map +1 -1
- package/dist/vitest.config.js +1 -1
- package/dist/vitest.config.js.map +1 -1
- package/docs/project_analysis_report.md +1 -1
- package/eslint.config.js +2 -2
- package/framework-mcp/dist/src/index.js +1 -1
- package/framework-mcp/dist/src/tools/definitions.js +3 -1
- package/framework-mcp/dist/src/tools/file_system/read_file.js +20 -0
- package/framework-mcp/package.json +2 -2
- package/framework-mcp/src/index.ts +1 -1
- package/framework-mcp/src/tools/definitions.ts +3 -1
- package/framework-mcp/src/tools/file_system/read_file.ts +24 -0
- package/package.json +10 -8
- package/src/cli/adapters.ts +10 -10
- package/src/cli/commands/check.ts +13 -1
- package/src/cli/commands/init.ts +12 -11
- package/src/cli/commands/orchestrate.ts +1 -1
- package/src/cli/utils/memory.ts +4 -0
- package/src/cli/utils/pkg.ts +5 -1
- package/tsconfig.json +0 -2
- package/.enderun/ARCHITECTURE.md +0 -1
- package/.enderun/SECURITY.md +0 -1
- package/bin/init-check.js +0 -86
- package/bin/update-contract.js +0 -93
- package/dist/apps/backend/src/types/index.d.ts +0 -9
- package/dist/apps/backend/src/types/index.js +0 -5
- package/dist/apps/backend/src/types/index.js.map +0 -1
- package/dist/apps/web/src/main.d.ts +0 -1
- package/dist/apps/web/src/main.js +0 -9
- package/dist/apps/web/src/main.js.map +0 -1
- package/dist/apps/web/vite.config.d.ts +0 -2
- package/dist/apps/web/vite.config.js +0 -6
- package/dist/apps/web/vite.config.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/index.d.ts +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/index.js +0 -71
- package/dist/tests/framework-init-test/framework-mcp/src/index.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/definitions.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/definitions.js +0 -111
- package/dist/tests/framework-init-test/framework-mcp/src/tools/definitions.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/patch_file.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/patch_file.js +0 -19
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/patch_file.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/read_file.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/read_file.js +0 -8
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/read_file.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/replace_text.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/replace_text.js +0 -32
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/replace_text.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/write_file.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/write_file.js +0 -10
- package/dist/tests/framework-init-test/framework-mcp/src/tools/file_system/write_file.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/get_status.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/get_status.js +0 -6
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/get_status.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/orchestrate.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/orchestrate.js +0 -6
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/orchestrate.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/update_contract_hash.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/update_contract_hash.js +0 -6
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/update_contract_hash.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/update_memory.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/update_memory.js +0 -9
- package/dist/tests/framework-init-test/framework-mcp/src/tools/framework/update_memory.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/index.d.ts +0 -5
- package/dist/tests/framework-init-test/framework-mcp/src/tools/index.js +0 -26
- package/dist/tests/framework-init-test/framework-mcp/src/tools/index.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/messaging/log_action.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/messaging/log_action.js +0 -23
- package/dist/tests/framework-init-test/framework-mcp/src/tools/messaging/log_action.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/messaging/send_message.d.ts +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/messaging/send_message.js +0 -24
- package/dist/tests/framework-init-test/framework-mcp/src/tools/messaging/send_message.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/tools/types.d.ts +0 -47
- package/dist/tests/framework-init-test/framework-mcp/src/tools/types.js +0 -2
- package/dist/tests/framework-init-test/framework-mcp/src/tools/types.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/utils/cli.d.ts +0 -5
- package/dist/tests/framework-init-test/framework-mcp/src/utils/cli.js +0 -21
- package/dist/tests/framework-init-test/framework-mcp/src/utils/cli.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/src/utils/security.d.ts +0 -12
- package/dist/tests/framework-init-test/framework-mcp/src/utils/security.js +0 -54
- package/dist/tests/framework-init-test/framework-mcp/src/utils/security.js.map +0 -1
- package/dist/tests/framework-init-test/framework-mcp/tests/tools/file_system/replace_text.test.d.ts +0 -1
- package/dist/tests/framework-init-test/framework-mcp/tests/tools/file_system/replace_text.test.js +0 -69
- package/dist/tests/framework-init-test/framework-mcp/tests/tools/file_system/replace_text.test.js.map +0 -1
- package/dist/tests/framework-init-test/panda.config.d.ts +0 -4
- package/dist/tests/framework-init-test/panda.config.js +0 -95
- package/dist/tests/framework-init-test/panda.config.js.map +0 -1
- package/dist/tests/framework-init-test/vitest.config.d.ts +0 -2
- package/dist/tests/framework-init-test/vitest.config.js +0 -19
- package/dist/tests/framework-init-test/vitest.config.js.map +0 -1
package/.enderun/STATUS.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# ๐๏ธ AGENT ENDERUN โ ARMY COMMAND DASHBOARD
|
|
2
|
-
> v1.1.
|
|
2
|
+
> v1.1.2 | Clean Release (low-usage items marked as reference) | Memory Graph: Online | Bloat Removed (KENTฤฐM + SYSTEM_MAP)
|
|
3
3
|
|
|
4
4
|
**Nihai Sรผrรผm Notu:** Proje dรผลรผk kullanฤฑmlฤฑ referans materyalleri (bazฤฑ knowledge dosyalarฤฑ, demo scriptler, observability placeholders) ile dรผzenlendi. Yapฤฑsal boล dizinler ve reference-only dosyalar kasฤฑtlฤฑ olarak korundu (token economy + full army capability iรงin). Karmaลฤฑk kurumsal projeler iรงin hazฤฑr (corporate-governance SOP'larฤฑ ile).
|
|
5
5
|
## ๐ค Agent Status
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
|
|
26
26
|
| Metric | Value |
|
|
27
27
|
| :--- | :--- |
|
|
28
|
-
| **Framework Version** | v1.
|
|
28
|
+
| **Framework Version** | v1.1.2 (Final Clean) |
|
|
29
29
|
| **System Health** | ๐ข GREEN (Build & Contract Validated) |
|
|
30
30
|
| **Major Governance Audit** | COMPLETED |
|
|
31
31
|
| **Active Tasks** | 0 (All Genesis Issues Resolved) |
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "analyst",
|
|
3
3
|
"displayName": "Contract Verification & Business Analyst",
|
|
4
4
|
"description": "Validates business specifications, tests database contract integrity, and audits constitutional compliance.",
|
|
5
|
+
"role": "Contract Verification & Business Analyst",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "backend",
|
|
3
3
|
"displayName": "Domain Logic & Databases Specialist",
|
|
4
4
|
"description": "Responsible for core business logic, database migrations, security standards, API contracts, and server architecture.",
|
|
5
|
+
"role": "Domain Logic & Databases Specialist",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "database",
|
|
3
3
|
"displayName": "Database Migrations & Tuning Specialist",
|
|
4
4
|
"description": "Designs SQL schemas, manages migration scripts via Kysely, optimizes queries, indexes, and seeding logic.",
|
|
5
|
+
"role": "Database Migrations & Tuning Specialist",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "devops",
|
|
3
3
|
"displayName": "Infrastructure & CI/CD Specialist",
|
|
4
4
|
"description": "Handles deployment pipelines, environment variables, system containerization, logging & telemetry integrations.",
|
|
5
|
+
"role": "Infrastructure & CI/CD Specialist",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "explorer",
|
|
3
3
|
"displayName": "Codebase Discovery Specialist",
|
|
4
4
|
"description": "Maps code dependencies, performs project scans, identifies architectural gaps, and supports legacy onboarding.",
|
|
5
|
+
"role": "Codebase Discovery Specialist",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "frontend",
|
|
3
3
|
"displayName": "Fluid Responsive UI Specialist",
|
|
4
4
|
"description": "Builds responsive fluid user interfaces, manages styling tokens with Panda CSS, and implements state machines.",
|
|
5
|
+
"role": "Fluid Responsive UI Specialist",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
package/.enderun/agents/git.json
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "git",
|
|
3
3
|
"displayName": "Version Control Specialist",
|
|
4
4
|
"description": "Manages commit histories, branches, Trace ID alignment, semantic tagging, and merge conflicts.",
|
|
5
|
+
"role": "Version Control Specialist",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"displayName": "Orchestration & Governance (Team-Lead)",
|
|
4
4
|
"description": "CTO, Lead Architect, and Orchestrator for Agent Enderun.",
|
|
5
5
|
"role": "Orchestration & Governance",
|
|
6
|
-
"capability":
|
|
6
|
+
"capability": 9,
|
|
7
7
|
"hidden": false,
|
|
8
8
|
"stateMachine": {
|
|
9
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"systemPromptSections": [
|
|
17
17
|
{
|
|
18
18
|
"title": "Instructions",
|
|
19
|
-
"content": "You are the
|
|
19
|
+
"content": "You are the manager agent. Orchestrate workspace tasks, manage DAG dependency graphs, handle phase transitions, and enforce architectural standards.\n\n๐ NON-NEGOTIABLE CORE RULES:\n- Single Point of Authority: You are the sole entry point. No specialist acts without your briefing.\n- Traceability: Every action MUST inherit the active Trace ID.\n- Memory Discipline: MUST update PROJECT_MEMORY.md and log actions at the end of EVERY turn."
|
|
20
20
|
}
|
|
21
21
|
],
|
|
22
22
|
"toolNames": [
|
|
@@ -25,10 +25,8 @@
|
|
|
25
25
|
"write_to_file",
|
|
26
26
|
"run_command",
|
|
27
27
|
"grep_search",
|
|
28
|
-
"list_dir"
|
|
29
|
-
"send_agent_message",
|
|
30
|
-
"orchestrate_loop"
|
|
28
|
+
"list_dir"
|
|
31
29
|
]
|
|
32
30
|
}
|
|
33
31
|
}
|
|
34
|
-
}
|
|
32
|
+
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "mobile",
|
|
3
3
|
"displayName": "Mobile App Specialist",
|
|
4
4
|
"description": "Develops cross-platform mobile apps using React Native and Expo with clean component states.",
|
|
5
|
+
"role": "Mobile App Specialist",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "native",
|
|
3
3
|
"displayName": "Native OS Integration Specialist",
|
|
4
4
|
"description": "Builds lightweight desktop wrappers and system integrations using Tauri or Electron.",
|
|
5
|
+
"role": "Native OS Integration Specialist",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "quality",
|
|
3
3
|
"displayName": "Automated Testing & Quality Specialist",
|
|
4
4
|
"description": "Verifies test coverage, audits compliance with the constitution, conducts AST scanning, and verifies CI/CD status.",
|
|
5
|
+
"role": "Automated Testing & Quality Specialist",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
"name": "security",
|
|
3
3
|
"displayName": "Security & Cryptography Specialist",
|
|
4
4
|
"description": "Enforces authentication flows, CSP policies, credential rotation, RLS constraints, and cryptographic safety.",
|
|
5
|
+
"role": "Security & Cryptography Specialist",
|
|
6
|
+
"capability": 9,
|
|
5
7
|
"hidden": false,
|
|
6
8
|
"stateMachine": {
|
|
7
9
|
"schemaRef": "../schema/agent-lifecycle-schema.json"
|
|
@@ -26,7 +28,5 @@
|
|
|
26
28
|
"list_dir"
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
"capability": 9
|
|
32
|
-
}
|
|
31
|
+
}
|
|
32
|
+
}
|
package/.enderun/config.json
CHANGED
|
@@ -2,11 +2,12 @@
|
|
|
2
2
|
"logLevel": "info",
|
|
3
3
|
"outputFormat": "text",
|
|
4
4
|
"defaultProfile": "Lightweight",
|
|
5
|
-
"version": "1.1.
|
|
5
|
+
"version": "1.1.2",
|
|
6
6
|
"paths": {
|
|
7
7
|
"backend": "apps/backend",
|
|
8
8
|
"frontend": "apps/web",
|
|
9
9
|
"docs": "docs",
|
|
10
10
|
"tests": "tests"
|
|
11
|
-
}
|
|
11
|
+
},
|
|
12
|
+
"_comment": "paths.backend and paths.frontend define WHERE apps will be scaffolded via create-app"
|
|
12
13
|
}
|
|
@@ -46,3 +46,7 @@
|
|
|
46
46
|
}
|
|
47
47
|
]
|
|
48
48
|
{"timestamp":"2026-06-03T15:36:38.637Z","agent":"@manager","action":"v1.1.1-release-synchronization","requestId":"01HGT8J5E2N0W0W0W0W0W0W0W5","status":"SUCCESS","summary":"Synchronized all package descriptors, source codes, configurations, dashboards, memory, and README files to release version 1.1.1.","findings":["root package.json bumped","mcp package and source bumped","apps/web package bumped","config.json and STATUS.md bumped","README.md all mentions updated","PROJECT_MEMORY.md updated"]}
|
|
49
|
+
{"timestamp":"2026-06-03T15:49:59.717Z","agent":"@manager","action":"stream-error-analysis","requestId":"01HGT8J5E2N0W0W0W0W0W0W0W5","status":"SUCCESS","summary":"Analyzed the codebase_investigator InvalidStreamError and provided troubleshooting steps.","findings":["analyzed stream error source and parsed causes including JSON truncation and tool schema mismatches"]}
|
|
50
|
+
{"timestamp":"2026-06-03T15:51:15.243Z","agent":"@manager","action":"mcp-read-file-truncation-safety-fix","requestId":"01HGT8J5E2N0W0W0W0W0W0W0W5","status":"SUCCESS","summary":"Updated the read_file MCP tool to support optional startLine/endLine parameters and default to a 1000-line safety limit to protect against stream truncation/JSON formatting errors.","findings":["read_file schema updated","startLine/endLine parsing added","1000-line default truncation threshold enforced"]}
|
|
51
|
+
{"timestamp":"2026-06-03T18:27:33.798Z","agent":"@manager","action":"ANALYZE_DUPLICATES","requestId":"01HGT8J5E2N0W0W0W0W0W0W0W5","status":"SUCCESS","summary":"Analyzed the project for duplicate files and identified redundant configurations and directories.","findings":["Found duplicate .agents folder","redundant mcp.json variants","and duplicated architecture/security documents."]}
|
|
52
|
+
{"timestamp":"2026-06-03T18:31:20.178Z","agent":"@manager","action":"CLEANUP_COMPLETE","requestId":"01HGT8J5E2N0W0W0W0W0W0W0W5","status":"SUCCESS","summary":"Completed proejct clean-up and centralized all configuration under .enderun.","findings":["Successfully deleted legacy .agents/ folder and duplicate ARCHITECTURE.md/SECURITY.md in .enderun/. Verified using git status."]}
|
|
@@ -19,6 +19,44 @@
|
|
|
19
19
|
|
|
20
20
|
## HISTORY
|
|
21
21
|
|
|
22
|
+
### 2026-06-03 โ CLI & Build Stabilization
|
|
23
|
+
|
|
24
|
+
- **Agent:** @manager
|
|
25
|
+
- **Trace ID:** 01HGT8J5E2N0W0W0W0W0W0W0W5
|
|
26
|
+
- **Action:** Stabilized the CLI publish configuration and compiler flow. Updated `bin/cli.js` to run the compiled JS entrypoint `dist/src/cli/index.js` directly with standard Node, removing the runtime dependency on `tsx` in production. Added a root `build` script (`tsc && npm run build --prefix framework-mcp`) to root `package.json` and updated `prepublishOnly` to guarantee compilation of all packages before npm publish. Cleared out duplicate compiled directories and files (`dist/cli/`, `dist/orchestrate.*`, `dist/vitest.config.*`). Standardized case-sensitivity test expectations in `tests/gemini.test.ts` and `tests/adapter.test.ts` to expect uppercase `"GEMINI.md"` and `"GROK.md"`. Fixed an undefined reference to `targetDir` in `src/cli/commands/init.ts` by passing it down to `scaffoldCoreAgents`.
|
|
27
|
+
|
|
28
|
+
### 2026-06-03 โ OS & Sandbox Verification and Sync
|
|
29
|
+
|
|
30
|
+
- **Agent:** @manager
|
|
31
|
+
- **Trace ID:** 01HGT8J5E2N0W0W0W0W0W0W0W5
|
|
32
|
+
- **Action:** Synchronized all compiled files under `dist/cli/` to fix missing exports (`sendMessage` in `orchestrate.js`) and dynamic path resolutions. Corrected a Linux-specific case-sensitivity bug where `gemini.md` and `grok.md` shim references were mapped as lowercase, mismatching the actual uppercase filenames `GEMINI.md` and `GROK.md` on disk. Evaluated `targetDir` dynamically inside `initCommand` to allow multi-directory programmatic executions. Resolved macOS Sandbox TCC and Node.js directory EPERM blocks inside the integration test script (`bin/test-init-run.js`) by relocating tests to `dist/init-adapters` and conditionally skipping sandbox-sensitive user directory generations during test runs.
|
|
33
|
+
|
|
34
|
+
### 2026-06-03 โ Realistic Adapter Verification & Path Fix
|
|
35
|
+
|
|
36
|
+
- **Agent:** @manager
|
|
37
|
+
- **Trace ID:** 01HGT8J5E2N0W0W0W0W0W0W0W5
|
|
38
|
+
- **Action:** Fixed a critical bug in src/cli/commands/init.ts where sourceDir resolved incorrectly in production/dist builds; converted it to use getPackageRoot() from utils/pkg.ts. Audited and verified all 7 adapters (gemini, claude, cursor, codex, grok, antigravity, antigravity-cli) inside test subdirectories, verifying folder remapping, shim rules, and AL compliance.
|
|
39
|
+
|
|
40
|
+
### 2026-06-03 โ Adapter Link Fixes and Dynamic Prompting
|
|
41
|
+
|
|
42
|
+
- **Agent:** @manager
|
|
43
|
+
- **Trace ID:** 01HGT8J5E2N0W0W0W0W0W0W0W5
|
|
44
|
+
- **Action:** Fixed broken links in GEMINI.md and CLAUDE.md pointing to .enderun/ARCHITECTURE.md and .enderun/SECURITY.md (changed to point to .enderun/knowledge/ instead). Added Dynamic Identity Adjustment directive to shim files, enabling agents to adopt specialist roles. Corrected print statement extension format in orchestrate.ts from .md to .json.
|
|
45
|
+
|
|
46
|
+
### 2026-06-03 โ Project Clean-up and Standardization
|
|
47
|
+
|
|
48
|
+
- **Agent:** @manager
|
|
49
|
+
- **Trace ID:** 01HGT8J5E2N0W0W0W0W0W0W0W5
|
|
50
|
+
- **Action:** Cleaned up the codebase by deleting the legacy .agents/ folder and removing duplicate ARCHITECTURE.md and SECURITY.md files from .enderun/. Centralized all active configurations under the .enderun/ directory.
|
|
51
|
+
|
|
52
|
+
### 2026-06-03 โ Duplicate File Analysis
|
|
53
|
+
|
|
54
|
+
- **Agent:** @manager
|
|
55
|
+
- **Trace ID:** 01HGT8J5E2N0W0W0W0W0W0W0W5
|
|
56
|
+
- **Action:** Analyzed the project codebase for duplicate and redundant files. Identified .agents as a legacy framework directory, and noted identical/redundant files like root mcp.json/mcp_config.json variants and duplicate architecture/security rules.
|
|
57
|
+
|
|
58
|
+
- **MCP Read File Safety Prevention (v1.1.1):** Configured optional `startLine` and `endLine` parameters in the `read_file` tool schema and handler, and set a default safety limit of 1000 lines to prevent JSON truncation and stream format errors when handling large files. (Trace 01HGT8J5E2N0W0W0W0W0W0W0W5)
|
|
59
|
+
- **Stream Error Analysis (v1.1.1):** Diagnosed `InvalidStreamError` where an agent stream ends in a malformed function call. Documented main causes (truncation, formatting, schema drift) and troubleshooting steps for workspace developers. (Trace 01HGT8J5E2N0W0W0W0W0W0W0W5)
|
|
22
60
|
- **Dynamic Scaffold Path Resolution Fix (v1.1.1):** Updated `initCommand` in `src/cli/commands/init.ts` to dynamically map the target folder name for `scaffoldCoreAgents` (e.g., `skills` for `antigravity`, `plugins` for `grok`). This prevents folder clutter by keeping agent profiles inside the adapter's expected subdirectories. (Trace 01HGT8J5E2N0W0W0W0W0W0W0W5)
|
|
23
61
|
- **Monorepo Version Synchronization (v1.1.1):** Synchronized framework configurations, server code, status boards, and package descriptors across all workspace packages (`framework-mcp`, `apps/web`, `.enderun/config.json`, and `.enderun/STATUS.md`) to align with the root version `1.1.1`. (Trace 01HGT8J5E2N0W0W0W0W0W0W0W5)
|
|
24
62
|
- **MCP Project Root Configuration Fix (v1.1.1):** Surgically updated `buildMcpServerEntry` in `src/cli/adapters.ts` to include the absolute `ENDERUN_PROJECT_ROOT` environment variable in the generated configurations during `init`, resolving relative path mismatches for external AI runtimes. (Trace 01HGT8J5E2N0W0W0W0W0W0W0W5)
|
package/CLAUDE.md
CHANGED
|
@@ -3,15 +3,16 @@
|
|
|
3
3
|
You are the **Architect** of the Agent Enderun Army. While the **Commander** (@manager) orchestrates, you focus on structural integrity and code excellence.
|
|
4
4
|
|
|
5
5
|
### ๐๏ธ Hierarchy of Authority
|
|
6
|
-
1. **Supreme Law:** [.
|
|
7
|
-
2. **Global Rules:** [ARCHITECTURE.md](.
|
|
8
|
-
3. **Project Memory:** [.
|
|
6
|
+
1. **Supreme Law:** [.claude/ENDERUN.md](.claude/ENDERUN.md)
|
|
7
|
+
2. **Global Rules:** [ARCHITECTURE.md](.claude/knowledge/ARCHITECTURE.md), [SECURITY.md](.claude/knowledge/SECURITY.md)
|
|
8
|
+
3. **Project Memory:** [.claude/memory/](.claude/memory/) (Decisions, Lessons, Status)
|
|
9
9
|
|
|
10
10
|
### ๐ค Architect Directive (Role: QUALITY & REFACTOR)
|
|
11
11
|
1. **Manager Coordination:** Receive your briefings from @manager. You are part of a coordinated army.
|
|
12
12
|
2. **Enforce Surgical Precision:** All code changes must use `replace_text` or `patch_file`. No full file rewrites.
|
|
13
13
|
3. **Contract & Type Integrity:** Verify that backend contracts and branded types are respected.
|
|
14
|
-
4. **
|
|
14
|
+
4. **Dynamic Identity Adjustment:** If you are executing a delegated task for a specialist role (e.g. backend, frontend, database, qa) as per the active tasks in `.claude/memory/PROJECT_MEMORY.md`, temporarily adopt that identity by loading its specific rules from `.claude/agents/{agent}.json` and follow them strictly.
|
|
15
|
+
5. **Maintain State:** Update `.claude/memory/PROJECT_MEMORY.md` and log actions at the end of EVERY turn.
|
|
15
16
|
|
|
16
17
|
### ๐ก๏ธ Core Mandates (Enterprise 1.0)
|
|
17
18
|
- **Zero UI Library Policy:** Enforce hand-crafted components with Panda CSS.
|
package/GEMINI.md
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
You are the **Commander** (@manager), the Supreme Orchestrator of the Agent Enderun Army. Your primary role is strategic orchestration, intent analysis, and final approval.
|
|
4
4
|
|
|
5
5
|
### ๐๏ธ Hierarchy of Authority
|
|
6
|
-
1. **Supreme Law:** [.
|
|
7
|
-
2. **Global Rules:** [ARCHITECTURE.md](.
|
|
8
|
-
3. **Project Memory:** [.
|
|
6
|
+
1. **Supreme Law:** [.gemini/ENDERUN.md](.gemini/ENDERUN.md)
|
|
7
|
+
2. **Global Rules:** [ARCHITECTURE.md](.gemini/knowledge/ARCHITECTURE.md), [SECURITY.md](.gemini/knowledge/SECURITY.md)
|
|
8
|
+
3. **Project Memory:** [.gemini/memory/](.gemini/memory/) (Decisions, Lessons, Status)
|
|
9
9
|
|
|
10
10
|
### ๐ค Commander Directive (Role: @manager)
|
|
11
11
|
1. **Analyze Intent:** Act as the **Router**. Every request must be processed by you first. Break down user requests into a task DAG.
|
|
@@ -13,7 +13,8 @@ You are the **Commander** (@manager), the Supreme Orchestrator of the Agent Ende
|
|
|
13
13
|
- **How to Delegate:** Use the `send_agent_message` tool to assign tasks to other agents (e.g., `@backend`, `@frontend`).
|
|
14
14
|
- **How to Sync:** Use the `orchestrate_loop` tool after delegating to update the system state and `STATUS.md`.
|
|
15
15
|
3. **Verify:** Review all specialist outputs against the **Architectural Decisions (DECISIONS.md)**.
|
|
16
|
-
4. **
|
|
16
|
+
4. **Dynamic Identity Adjustment:** If you are executing a delegated task for a specialist role (e.g. backend, frontend, database) as per the active tasks in `.gemini/memory/PROJECT_MEMORY.md`, temporarily adopt that identity by loading its specific rules from `.gemini/agents/{agent}.json` and follow them strictly.
|
|
17
|
+
5. **Maintain State:** Update `.gemini/memory/PROJECT_MEMORY.md` and log actions at the end of EVERY turn.
|
|
17
18
|
|
|
18
19
|
### ๐ก๏ธ Core Mandates (Enterprise 1.0)
|
|
19
20
|
- **Role-Based:** You are not just a model; you are the **Commander**.
|
package/GROK.md
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
You are the **Researcher** and **Intelligence Specialist** of the Agent Enderun Army. Your primary role is technology scouting, trend analysis, and deep analysis.
|
|
4
4
|
|
|
5
5
|
### ๐๏ธ Hierarchy of Authority
|
|
6
|
-
1. **Supreme Law:** [.
|
|
7
|
-
2. **Lessons Learned:** [.
|
|
8
|
-
3. **Business Context:** [.
|
|
6
|
+
1. **Supreme Law:** [.grok/ENDERUN.md](.grok/ENDERUN.md)
|
|
7
|
+
2. **Lessons Learned:** [.grok/memory/LESSONS_LEARNED.md](.grok/memory/LESSONS_LEARNED.md)
|
|
8
|
+
3. **Business Context:** [.grok/memory/BUSINESS_CONTEXT.md](.grok/memory/BUSINESS_CONTEXT.md)
|
|
9
9
|
|
|
10
10
|
### ๐ค Researcher Directive (Role: ANALYTICAL)
|
|
11
11
|
1. **Trend Analysis:** Identify modern alternatives for libraries and patterns.
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# ๐๏ธ Agent Enderun โ Enterprise AI Governance & Autonomous Orchestration Framework
|
|
2
2
|
|
|
3
|
-
> **Stable Release:** v1.1.
|
|
3
|
+
> **Stable Release:** v1.1.2 (Enterprise Orchestration Ready) โ Build Compile: Clean | Type-Safety: 100% Verified | AL Compliance: 12/12 Agents
|
|
4
4
|
|
|
5
5
|
> **Author:** Yusuf BEKAR
|
|
6
6
|
> **Trace ID:** `01HGT8J5E2N0W0W0W0W0W0W0W5`
|
|
@@ -30,7 +30,7 @@ Yapay zeka kodlama yardฤฑmcฤฑlarฤฑ (Claude Code, Gemini CLI, Grok Build vb.) gel
|
|
|
30
30
|
|
|
31
31
|
### ๐ฆ Gรผncel Sรผrรผm / Current Release
|
|
32
32
|
|
|
33
|
-
**v1.1.
|
|
33
|
+
**v1.1.2** โ Enterprise 1.0 kararlฤฑ sรผrรผm (@-mentions, NL Routing, Hermes Lock Protocol, CWD/Scaffold fix). Detaylฤฑ sรผrรผm geรงmiลi git log ve รถnceki commit'lerde bulunur; kalฤฑbฤฑmฤฑz (bilingual TR/EN yapฤฑ, tablolar, bรถlรผmler) korunmuลtur.
|
|
34
34
|
|
|
35
35
|
---
|
|
36
36
|
|
package/agent.md
CHANGED
|
@@ -2,24 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
This is the primary entry point when using Agent Enderun within the Antigravity (IDE & CLI) ecosystem.
|
|
4
4
|
|
|
5
|
-
The framework operates under a unified governance structure located in the .
|
|
5
|
+
The framework operates under a unified governance structure located in the .agent/ directory.
|
|
6
6
|
|
|
7
7
|
### Primary Constitution
|
|
8
8
|
All governance rules, agent checklists, and project memory live here:
|
|
9
9
|
|
|
10
|
-
๐ **[.
|
|
10
|
+
๐ **[.agent/ENDERUN.md](.agent/ENDERUN.md)**
|
|
11
11
|
|
|
12
12
|
### ๐ค Agent Directive
|
|
13
13
|
You are operating under the Agent Enderun governance framework.
|
|
14
14
|
|
|
15
15
|
At the **start of every session**, before any work:
|
|
16
|
-
1. **Restore Memory:** Read `.
|
|
17
|
-
2. **Load Identity:** Read the relevant agent definition under `.
|
|
18
|
-
3. **Internalize Knowledge:** Reference the `.
|
|
16
|
+
1. **Restore Memory:** Read `.agent/PROJECT_MEMORY.md` to restore state, active Trace ID, and history.
|
|
17
|
+
2. **Load Identity:** Read the relevant agent definition under `.agent/skills/{agent}.json` (default to `@manager`).
|
|
18
|
+
3. **Internalize Knowledge:** Reference the `.agent/rules/` base for architectural and coding standards.
|
|
19
19
|
|
|
20
20
|
### ๐ก๏ธ Core Mandates
|
|
21
21
|
- **Surgical Edits:** Use `replace_text` or `patch_file` via MCP for precise changes.
|
|
22
22
|
- **Traceability:** Every action must inherit the active Trace ID from memory.
|
|
23
23
|
- **Contract First:** No implementation without verified types.
|
|
24
24
|
|
|
25
|
-
All paths and references inside the project must comply with the Supreme Constitution located at `.
|
|
25
|
+
All paths and references inside the project must comply with the Supreme Constitution located at `.agent/ENDERUN.md`.
|
package/bin/cli.js
CHANGED
|
@@ -6,11 +6,10 @@ import { dirname, join } from "node:path";
|
|
|
6
6
|
const __filename = fileURLToPath(import.meta.url);
|
|
7
7
|
const __dirname = dirname(__filename);
|
|
8
8
|
|
|
9
|
-
const cliPath = join(__dirname, "../src/cli/index.
|
|
9
|
+
const cliPath = join(__dirname, "../dist/src/cli/index.js");
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
const
|
|
13
|
-
const child = spawn(cmd, ["tsx", cliPath, ...process.argv.slice(2)], {
|
|
11
|
+
const cmd = "node";
|
|
12
|
+
const child = spawn(cmd, [cliPath, ...process.argv.slice(2)], {
|
|
14
13
|
stdio: "inherit",
|
|
15
14
|
shell: false
|
|
16
15
|
});
|
package/bin/compile.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import fs from 'fs';
|
|
3
|
+
import path from 'path';
|
|
4
|
+
|
|
5
|
+
const configJson = JSON.parse(fs.readFileSync('tsconfig.json', 'utf8'));
|
|
6
|
+
const parsedConfig = ts.parseJsonConfigFileContent(configJson, ts.sys, '.');
|
|
7
|
+
const program = ts.createProgram(parsedConfig.fileNames, parsedConfig.options);
|
|
8
|
+
const emitResult = program.emit();
|
|
9
|
+
|
|
10
|
+
const allDiagnostics = ts
|
|
11
|
+
.getPreEmitDiagnostics(program)
|
|
12
|
+
.concat(emitResult.diagnostics);
|
|
13
|
+
|
|
14
|
+
allDiagnostics.forEach(diagnostic => {
|
|
15
|
+
if (diagnostic.file) {
|
|
16
|
+
let { line, character } = ts.getLineAndCharacterOfPosition(diagnostic.file, diagnostic.start);
|
|
17
|
+
let message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n');
|
|
18
|
+
console.log(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);
|
|
19
|
+
} else {
|
|
20
|
+
console.log(ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n'));
|
|
21
|
+
}
|
|
22
|
+
});
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { initCommand } from '../dist/src/cli/commands/init.js';
|
|
4
|
+
|
|
5
|
+
const adapters = [
|
|
6
|
+
{ id: "gemini", dir: ".enderun", shim: "GEMINI.md" },
|
|
7
|
+
{ id: "claude", dir: ".enderun", shim: "CLAUDE.md" },
|
|
8
|
+
{ id: "cursor", dir: ".enderun", shim: ".cursor/rules/global.mdc" },
|
|
9
|
+
{ id: "codex", dir: ".enderun", shim: ".github/copilot-instructions.md" },
|
|
10
|
+
{ id: "grok", dir: ".enderun", shim: "GROK.md" },
|
|
11
|
+
{ id: "antigravity", dir: ".enderun", shim: "agent.md" },
|
|
12
|
+
{ id: "antigravity-cli", dir: ".enderun", shim: "agent.md" }
|
|
13
|
+
];
|
|
14
|
+
|
|
15
|
+
const projectRoot = process.cwd();
|
|
16
|
+
const testBase = path.join(projectRoot, "dist", "init-adapters");
|
|
17
|
+
|
|
18
|
+
// Redirect HOME to a mock directory inside the permitted workspace
|
|
19
|
+
const mockHome = path.join(testBase, "mock-home");
|
|
20
|
+
process.env.HOME = mockHome;
|
|
21
|
+
process.env.USERPROFILE = mockHome;
|
|
22
|
+
|
|
23
|
+
// Pre-create the directory structure and file for Claude Desktop config so the post-init step successfully runs
|
|
24
|
+
const claudeConfigDir = path.join(mockHome, "Library", "Application Support", "Claude");
|
|
25
|
+
fs.mkdirSync(claudeConfigDir, { recursive: true });
|
|
26
|
+
fs.writeFileSync(path.join(claudeConfigDir, "claude_desktop_config.json"), JSON.stringify({ mcpServers: {} }));
|
|
27
|
+
|
|
28
|
+
console.log("๐ Starting Realistic Programmatic Validation of Adapter Init Commands...");
|
|
29
|
+
|
|
30
|
+
let failed = 0;
|
|
31
|
+
|
|
32
|
+
for (const adapter of adapters) {
|
|
33
|
+
console.log(`\n--------------------------------------------`);
|
|
34
|
+
console.log(`๐งช Testing Adapter: ${adapter.id}`);
|
|
35
|
+
|
|
36
|
+
const targetDir = path.join(testBase, adapter.id);
|
|
37
|
+
if (!fs.existsSync(targetDir)) {
|
|
38
|
+
fs.mkdirSync(targetDir, { recursive: true });
|
|
39
|
+
}
|
|
40
|
+
// Write a mock package.json to act as project root
|
|
41
|
+
const mockPkgPath = path.join(targetDir, "package.json");
|
|
42
|
+
if (!fs.existsSync(mockPkgPath)) {
|
|
43
|
+
fs.writeFileSync(mockPkgPath, JSON.stringify({
|
|
44
|
+
name: `mock-project-${adapter.id}`,
|
|
45
|
+
version: "1.0.0",
|
|
46
|
+
type: "module"
|
|
47
|
+
}, null, 2));
|
|
48
|
+
}
|
|
49
|
+
// Pre-create .git directory to prevent initCommand from invoking 'git init' (which is blocked by the sandbox)
|
|
50
|
+
const mockGitDir = path.join(targetDir, ".git");
|
|
51
|
+
if (!fs.existsSync(mockGitDir)) {
|
|
52
|
+
fs.mkdirSync(mockGitDir, { recursive: true });
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
try {
|
|
56
|
+
// Change process CWD to target directory to simulate running init there
|
|
57
|
+
process.chdir(targetDir);
|
|
58
|
+
|
|
59
|
+
// Temporarily bypass the CLI check and validations in init.ts (which would try to run validate-agent-army)
|
|
60
|
+
process.env.ENDERUN_SKIP_INSTALL = "1";
|
|
61
|
+
|
|
62
|
+
// Execute the initCommand programmatically
|
|
63
|
+
await initCommand(adapter.id, false);
|
|
64
|
+
|
|
65
|
+
// Restore CWD
|
|
66
|
+
process.chdir(projectRoot);
|
|
67
|
+
|
|
68
|
+
// 1. Check framework directory
|
|
69
|
+
const frameworkPath = path.join(targetDir, adapter.dir);
|
|
70
|
+
if (fs.existsSync(frameworkPath)) {
|
|
71
|
+
console.log(`โ
Framework directory created: ${adapter.dir}`);
|
|
72
|
+
} else {
|
|
73
|
+
console.log(`โ Framework directory MISSING: ${adapter.dir}`);
|
|
74
|
+
failed++;
|
|
75
|
+
continue;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
// 2. Check shim file
|
|
79
|
+
const shimPath = path.join(targetDir, adapter.shim);
|
|
80
|
+
if (fs.existsSync(shimPath)) {
|
|
81
|
+
console.log(`โ
Shim file created: ${adapter.shim}`);
|
|
82
|
+
} else {
|
|
83
|
+
console.log(`โ Shim file MISSING: ${adapter.shim}`);
|
|
84
|
+
failed++;
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// 3. Check memory initialization
|
|
89
|
+
const memoryPath = fs.existsSync(path.join(frameworkPath, "memory/PROJECT_MEMORY.md"))
|
|
90
|
+
? path.join(frameworkPath, "memory/PROJECT_MEMORY.md")
|
|
91
|
+
: path.join(frameworkPath, "PROJECT_MEMORY.md");
|
|
92
|
+
|
|
93
|
+
if (fs.existsSync(memoryPath)) {
|
|
94
|
+
console.log(`โ
PROJECT_MEMORY.md created successfully.`);
|
|
95
|
+
} else {
|
|
96
|
+
console.log(`โ PROJECT_MEMORY.md is MISSING!`);
|
|
97
|
+
failed++;
|
|
98
|
+
continue;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// 4. Check agents folder
|
|
102
|
+
let agentFolder = "agents";
|
|
103
|
+
if (adapter.id === "antigravity") {
|
|
104
|
+
agentFolder = "skills";
|
|
105
|
+
} else if (adapter.id === "grok") {
|
|
106
|
+
agentFolder = "plugins";
|
|
107
|
+
}
|
|
108
|
+
const agentsPath = path.join(frameworkPath, agentFolder);
|
|
109
|
+
if (fs.existsSync(agentsPath)) {
|
|
110
|
+
const files = fs.readdirSync(agentsPath);
|
|
111
|
+
const agentCount = files.filter(f => f.endsWith(".json")).length;
|
|
112
|
+
console.log(`โ
Agent configurations created: ${agentsPath} (${agentCount} agents found)`);
|
|
113
|
+
if (agentCount === 0) {
|
|
114
|
+
console.log(`โ No agent configuration files found in folder!`);
|
|
115
|
+
failed++;
|
|
116
|
+
}
|
|
117
|
+
} else {
|
|
118
|
+
console.log(`โ Agents directory MISSING: ${agentsPath}`);
|
|
119
|
+
failed++;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
} catch (error) {
|
|
123
|
+
// Ensure CWD is restored in case of error
|
|
124
|
+
process.chdir(projectRoot);
|
|
125
|
+
console.error(`โ Init failed with error:`, error.message);
|
|
126
|
+
failed++;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
console.log(`\n--------------------------------------------`);
|
|
131
|
+
if (failed > 0) {
|
|
132
|
+
console.error(`โ Validation FAILED. ${failed} checks failed.`);
|
|
133
|
+
process.exit(1);
|
|
134
|
+
} else {
|
|
135
|
+
console.log(`๐ SUCCESS! All ${adapters.length} adapters initialized programmatically and passed checks.`);
|
|
136
|
+
}
|
|
@@ -5,7 +5,7 @@ import { TOOLS, toolHandlers } from "./tools/index.js";
|
|
|
5
5
|
// โโโ Server Setup โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
6
6
|
const server = new Server({
|
|
7
7
|
name: "@agent-enderun/mcp",
|
|
8
|
-
version: "1.
|
|
8
|
+
version: "1.1.2",
|
|
9
9
|
}, {
|
|
10
10
|
capabilities: {
|
|
11
11
|
tools: {},
|