agent-enderun 0.5.8 → 0.6.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 (75) hide show
  1. package/.enderun/PROJECT_MEMORY.md +16 -151
  2. package/.enderun/STATUS.md +19 -10
  3. package/.enderun/agents/analyst.md +19 -6
  4. package/.enderun/agents/backend.md +66 -48
  5. package/.enderun/agents/explorer.md +14 -2
  6. package/.enderun/agents/frontend.md +59 -14
  7. package/.enderun/agents/git.md +1 -1
  8. package/.enderun/agents/manager.md +10 -2
  9. package/.enderun/agents/mobile.md +1 -1
  10. package/.enderun/agents/native.md +1 -1
  11. package/.enderun/blueprints/backend/errors/domain-error.ts +84 -0
  12. package/.enderun/blueprints/backend/middleware/error-handler.ts +24 -0
  13. package/.enderun/blueprints/backend/types/api.ts +20 -0
  14. package/.enderun/blueprints/backend/types/brands.ts +12 -0
  15. package/.enderun/blueprints/backend/types/constants.ts +34 -0
  16. package/.enderun/blueprints/backend/types/index.ts +49 -0
  17. package/.enderun/blueprints/backend/types/logs.ts +16 -0
  18. package/.enderun/blueprints/backend/types/models.ts +65 -0
  19. package/.enderun/blueprints/frontend/ui/Button.tsx +60 -0
  20. package/.enderun/blueprints/frontend/ui/Input.tsx +43 -0
  21. package/.enderun/docs/api/README.md +7 -12
  22. package/.enderun/docs/project-docs.md +17 -7
  23. package/.enderun/knowledge/blueprint_driven_construction.md +22 -0
  24. package/.enderun/knowledge/code_review_checklist.md +1 -1
  25. package/.enderun/knowledge/contract_versioning.md +5 -5
  26. package/ENDERUN.md +29 -6
  27. package/README.md +45 -23
  28. package/bin/cli.js +205 -27
  29. package/bin/update-contract.js +3 -0
  30. package/{packages/framework-mcp → framework-mcp}/dist/index.js +0 -0
  31. package/{packages/framework-mcp → framework-mcp}/dist/schemas.js +12 -0
  32. package/{packages/framework-mcp → framework-mcp}/dist/tools/contract.js +16 -10
  33. package/{packages/framework-mcp → framework-mcp}/dist/tools/framework.js +5 -3
  34. package/{packages/framework-mcp → framework-mcp}/dist/tools/git.js +2 -4
  35. package/{packages/framework-mcp → framework-mcp}/dist/tools/index.js +3 -0
  36. package/{packages/framework-mcp → framework-mcp}/dist/tools/knowledge.js +1 -1
  37. package/{packages/framework-mcp → framework-mcp}/dist/tools/repository.js +1 -1
  38. package/framework-mcp/dist/tools/scaffold.js +129 -0
  39. package/{packages/framework-mcp → framework-mcp}/dist/utils.js +1 -1
  40. package/{packages/framework-mcp → framework-mcp}/package.json +4 -1
  41. package/{packages/framework-mcp → framework-mcp}/src/schemas.ts +15 -0
  42. package/{packages/framework-mcp → framework-mcp}/src/tools/contract.ts +22 -9
  43. package/{packages/framework-mcp → framework-mcp}/src/tools/framework.ts +6 -4
  44. package/{packages/framework-mcp → framework-mcp}/src/tools/git.ts +2 -3
  45. package/{packages/framework-mcp → framework-mcp}/src/tools/index.ts +3 -0
  46. package/{packages/framework-mcp → framework-mcp}/src/tools/knowledge.ts +6 -6
  47. package/{packages/framework-mcp → framework-mcp}/src/tools/repository.ts +1 -1
  48. package/framework-mcp/src/tools/scaffold.ts +147 -0
  49. package/{packages/framework-mcp → framework-mcp}/src/utils.ts +1 -1
  50. package/package.json +8 -12
  51. package/panda.config.ts +79 -5
  52. package/.enderun/logs/manager.json +0 -18
  53. package/packages/shared-types/README.md +0 -61
  54. package/packages/shared-types/contract.version.json +0 -12
  55. package/packages/shared-types/dist/index.d.ts +0 -92
  56. package/packages/shared-types/dist/index.js +0 -8
  57. package/packages/shared-types/dist/index.js.map +0 -1
  58. package/packages/shared-types/package.json +0 -33
  59. package/packages/shared-types/src/index.ts +0 -102
  60. package/packages/shared-types/tsconfig.json +0 -9
  61. /package/{packages/framework-mcp → framework-mcp}/README.md +0 -0
  62. /package/{packages/framework-mcp → framework-mcp}/dist/tools/academy.js +0 -0
  63. /package/{packages/framework-mcp → framework-mcp}/dist/tools/codebase.js +0 -0
  64. /package/{packages/framework-mcp → framework-mcp}/dist/tools/database.js +0 -0
  65. /package/{packages/framework-mcp → framework-mcp}/dist/tools/memory.js +0 -0
  66. /package/{packages/framework-mcp → framework-mcp}/dist/tools/messages.js +0 -0
  67. /package/{packages/framework-mcp → framework-mcp}/dist/tools/security.js +0 -0
  68. /package/{packages/framework-mcp → framework-mcp}/src/index.ts +0 -0
  69. /package/{packages/framework-mcp → framework-mcp}/src/tools/academy.ts +0 -0
  70. /package/{packages/framework-mcp → framework-mcp}/src/tools/codebase.ts +0 -0
  71. /package/{packages/framework-mcp → framework-mcp}/src/tools/database.ts +0 -0
  72. /package/{packages/framework-mcp → framework-mcp}/src/tools/memory.ts +0 -0
  73. /package/{packages/framework-mcp → framework-mcp}/src/tools/messages.ts +0 -0
  74. /package/{packages/framework-mcp → framework-mcp}/src/tools/security.ts +0 -0
  75. /package/{packages/framework-mcp → framework-mcp}/tsconfig.json +0 -0
package/panda.config.ts CHANGED
@@ -1,24 +1,98 @@
1
- import { defineConfig } from "@pandacss/dev"
1
+ import { defineConfig } from "@pandacss/dev";
2
2
 
3
3
  export default defineConfig({
4
4
  // Whether to use css reset
5
5
  preflight: true,
6
-
6
+
7
7
  // Where to look for your css declarations
8
8
  include: [
9
9
  "./src/**/*.{js,jsx,ts,tsx}",
10
10
  "./pages/**/*.{js,jsx,ts,tsx}",
11
11
  "./apps/**/*.{js,jsx,ts,tsx}",
12
+ "./packages/ui/src/**/*.{ts,tsx}",
12
13
  ],
13
14
 
14
15
  // Files to exclude
15
16
  exclude: [],
16
17
 
17
- // Useful for theme customization
18
+ // Conditions for Dark Mode and other states
19
+ conditions: {
20
+ extend: {
21
+ dark: ".dark &, [data-theme='dark'] &",
22
+ light: ".light &, [data-theme='light'] &",
23
+ },
24
+ },
25
+
26
+ // Theme Customization
18
27
  theme: {
19
- extend: {}
28
+ extend: {
29
+ // Base Tokens (Absolute Values)
30
+ tokens: {
31
+ colors: {
32
+ brand: {
33
+ 50: { value: "#eef2ff" },
34
+ 100: { value: "#e0e7ff" },
35
+ 200: { value: "#c7d2fe" },
36
+ 300: { value: "#a5b4fc" },
37
+ 400: { value: "#818cf8" },
38
+ 500: { value: "#6366f1" },
39
+ 600: { value: "#4f46e5" },
40
+ 700: { value: "#4338ca" },
41
+ 800: { value: "#3730a3" },
42
+ 900: { value: "#312e81" },
43
+ 950: { value: "#1e1b4b" },
44
+ },
45
+ },
46
+ spacing: {
47
+ container: { value: "1200px" },
48
+ },
49
+ },
50
+ // Semantic Tokens (Theme Aware)
51
+ semanticTokens: {
52
+ colors: {
53
+ bg: {
54
+ canvas: {
55
+ value: { base: "{colors.white}", _dark: "{colors.brand.950}" },
56
+ },
57
+ surface: {
58
+ value: { base: "{colors.gray.50}", _dark: "{colors.brand.900}" },
59
+ },
60
+ muted: {
61
+ value: { base: "{colors.gray.100}", _dark: "{colors.brand.800}" },
62
+ },
63
+ },
64
+ text: {
65
+ default: {
66
+ value: { base: "{colors.gray.900}", _dark: "{colors.white}" },
67
+ },
68
+ muted: {
69
+ value: { base: "{colors.gray.500}", _dark: "{colors.gray.400}" },
70
+ },
71
+ brand: {
72
+ value: { base: "{colors.brand.600}", _dark: "{colors.brand.400}" },
73
+ },
74
+ },
75
+ accent: {
76
+ default: {
77
+ value: { base: "{colors.brand.500}", _dark: "{colors.brand.500}" },
78
+ },
79
+ emphasis: {
80
+ value: { base: "{colors.brand.600}", _dark: "{colors.brand.400}" },
81
+ },
82
+ fg: {
83
+ value: { base: "{colors.white}", _dark: "{colors.white}" },
84
+ },
85
+ },
86
+ border: {
87
+ default: {
88
+ value: { base: "{colors.gray.200}", _dark: "{colors.brand.800}" },
89
+ },
90
+ },
91
+ },
92
+ },
93
+ },
20
94
  },
21
95
 
22
96
  // The output directory for your css system
23
97
  outdir: "styled-system",
24
- })
98
+ });
@@ -1,18 +0,0 @@
1
- [
2
- {
3
- "timestamp": "2026-05-19T14:14:17.722Z",
4
- "agent": "manager",
5
- "action": "Fixing framework persistence and configuration",
6
- "requestId": "01KR6EJA6GG3RPS849097KS37Q",
7
- "status": "SUCCESS",
8
- "summary": "Updated gemini-extension.json, gemini.md and resolved ENDERUN.md placeholders."
9
- },
10
- {
11
- "timestamp": "2026-05-19T14:46:49.828Z",
12
- "agent": "manager",
13
- "action": "Framework Restoration",
14
- "requestId": "01KR6EJA6GG3RPS849097KS37Q",
15
- "status": "SUCCESS",
16
- "summary": "Restored framework-mcp and verified via link test."
17
- }
18
- ]
@@ -1,61 +0,0 @@
1
- # AI-Enderun Shared Types (v0.3.4)
2
-
3
- English | [Türkçe](#türkçe)
4
-
5
- The `@ai-enderun/shared-types` package is the "Supreme Law" of data within the Agent Enderun framework. It ensures perfect synchronization between backend and frontend through a **Contract-First** approach.
6
-
7
- ## English
8
-
9
- ### Core Principles
10
-
11
- - **Zero Drift:** Backend and frontend implementation must strictly follow these types.
12
- - **Branded Types:** We use the "Branded Types" pattern to ensure type safety for domain identifiers (e.g., `UserID` vs. `ProjectID`).
13
- - **Atomic Versioning:** Every change to this package triggers a hash mismatch in the framework, forcing a contract verification step.
14
-
15
- ### Key Components
16
-
17
- #### Branded Identifiers
18
- Prevents accidental usage of a UserID where a ProjectID is expected.
19
- ```typescript
20
- export type UserID = string & { readonly __brand: "UserID" };
21
- export type ProjectID = string & { readonly __brand: "ProjectID" };
22
- ```
23
-
24
- #### API Contracts
25
- Standardized shapes for requests and responses.
26
- ```typescript
27
- export interface ApiResponse<T> {
28
- data: T;
29
- traceId: string;
30
- timestamp: string;
31
- }
32
- ```
33
-
34
- ### Contract Workflow
35
-
36
- 1. **Modify**: Update `src/index.ts` with new DTOs or Types.
37
- 2. **Build**: `npm run build`
38
- 3. **Verify**: Run `agent-enderun verify-contract` to detect changes.
39
- 4. **Sync**: Update `contract.version.json` with the new hash using the MCP tool `update_contract_hash`.
40
-
41
- ## Türkçe
42
-
43
- `@ai-enderun/shared-types`, Agent Enderun çerçevesindeki verilerin "Yüce Yasası"dır. **Kontrat Öncelikli** (Contract-First) yaklaşımıyla backend ve frontend arasında kusursuz bir uyum sağlar.
44
-
45
- ### Temel Özellikler
46
-
47
- - **Branded Types:** Kimlik karışıklıklarını önlemek için özel tipler kullanılır.
48
- - **API Sözleşmeleri:** Tüm istek ve yanıtlar için standart şablonlar.
49
- - **Hash Doğrulama:** Tip değişiklikleri merkezi bir hash üzerinden takip edilir.
50
-
51
- ### Geliştirme
52
-
53
- ```bash
54
- npm install
55
- npm run build
56
- npm run typecheck
57
- ```
58
-
59
- ## License
60
-
61
- MIT
@@ -1,12 +0,0 @@
1
- {
2
- "version": "0.1.11",
3
- "last_updated": "2026-05-16T16:47:16.000Z",
4
- "contract_hash": "8574144a23e68351f48365f5ccb3d69dc11629af54ec9c1ed0fffd57f967b777",
5
- "breaking_changes": [
6
- {
7
- "version": "0.1.11",
8
- "description": "Extended shared types for Enderun Brain Dashboard"
9
- }
10
- ],
11
- "deprecated_versions": []
12
- }
@@ -1,92 +0,0 @@
1
- /**
2
- * Agent Enderun — Shared Types
3
- *
4
- * This file is the Single Source of Truth for all Backend and Frontend communication.
5
- * All IDs use the Branded Types pattern for type safety.
6
- */
7
- /**
8
- * Branded Type Utility
9
- */
10
- export type Brand<K, T> = K & {
11
- __brand: T;
12
- };
13
- /**
14
- * Entity IDs (Branded)
15
- */
16
- export type TraceID = Brand<string, "TraceID">;
17
- export type AgentID = Brand<string, "AgentID">;
18
- export type ProjectID = Brand<string, "ProjectID">;
19
- export type UserID = Brand<string, "UserID">;
20
- /**
21
- * Domain Models
22
- */
23
- export interface User {
24
- id: UserID;
25
- email: string;
26
- fullName: string;
27
- role: "ADMIN" | "DEVELOPER" | "VIEWER";
28
- createdAt: string;
29
- }
30
- export interface UserProfile extends User {
31
- avatarUrl?: string;
32
- bio?: string;
33
- preferences: Record<string, unknown>;
34
- }
35
- /**
36
- * Project Status Types
37
- */
38
- export type ProjectPhase = "PHASE_0" | "PHASE_1" | "PHASE_2" | "PHASE_3" | "PHASE_4";
39
- export type ExecutionProfile = "Lightweight" | "Full";
40
- export interface ProjectStatus {
41
- phase: ProjectPhase;
42
- profile: ExecutionProfile;
43
- lastUpdate: string;
44
- activeTraceId: TraceID | null;
45
- blockers: string[];
46
- }
47
- /**
48
- * Task Management Types
49
- */
50
- export type TaskPriority = "P0" | "P1" | "P2" | "P3";
51
- export type TaskStatus = "PENDING" | "IN_PROGRESS" | "BLOCKED" | "COMPLETED" | "FAILED";
52
- export interface Task {
53
- id: TraceID;
54
- description: string;
55
- agent: AgentID;
56
- priority: TaskPriority;
57
- status: TaskStatus;
58
- createdAt: string;
59
- updatedAt: string;
60
- }
61
- /**
62
- * Audit & Agent Logging Types
63
- */
64
- export type ActionType = "CREATE" | "MODIFY" | "DELETE" | "RESEARCH" | "ORCHESTRATE";
65
- export type ActionStatus = "SUCCESS" | "FAILURE" | "WAITING";
66
- export interface AgentActionLog {
67
- timestamp: string;
68
- agent: AgentID;
69
- action: ActionType;
70
- requestId: TraceID | "—";
71
- status: ActionStatus;
72
- summary: string;
73
- files?: string[];
74
- details?: Record<string, unknown>;
75
- }
76
- /**
77
- * API Response Wrappers
78
- */
79
- export interface ApiResponse<T> {
80
- data: T;
81
- meta?: {
82
- requestId: TraceID;
83
- timestamp: string;
84
- };
85
- }
86
- export interface ApiError {
87
- error: {
88
- code: string;
89
- message: string;
90
- details?: unknown;
91
- };
92
- }
@@ -1,8 +0,0 @@
1
- /**
2
- * Agent Enderun — Shared Types
3
- *
4
- * This file is the Single Source of Truth for all Backend and Frontend communication.
5
- * All IDs use the Branded Types pattern for type safety.
6
- */
7
- export {};
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -1,33 +0,0 @@
1
- {
2
- "name": "@agent-enderun/shared-types",
3
- "version": "0.5.8",
4
- "description": "Shared TypeScript types for AI-Enderun Framework. Ensures Contract-First synchronization between agents.",
5
- "author": "Yusuf BEKAR",
6
- "license": "MIT",
7
- "readme": "README.md",
8
- "type": "module",
9
- "repository": {
10
- "type": "git",
11
- "url": "git+https://github.com/ysf-bkr/Agent-Enderun.git"
12
- },
13
- "bugs": {
14
- "url": "https://github.com/ysf-bkr/Agent-Enderun/issues"
15
- },
16
- "homepage": "https://github.com/ysf-bkr/Agent-Enderun#readme",
17
- "main": "dist/index.js",
18
- "module": "dist/index.js",
19
- "types": "dist/index.js",
20
- "files": [
21
- "src",
22
- "dist",
23
- "README.md"
24
- ],
25
- "scripts": {
26
- "build": "tsc -p tsconfig.json",
27
- "build:watch": "tsc -p tsconfig.json --watch",
28
- "typecheck": "tsc -p tsconfig.json --noEmit"
29
- },
30
- "devDependencies": {
31
- "typescript": "^5.9.3"
32
- }
33
- }
@@ -1,102 +0,0 @@
1
- /**
2
- * Agent Enderun — Shared Types
3
- *
4
- * This file is the Single Source of Truth for all Backend and Frontend communication.
5
- * All IDs use the Branded Types pattern for type safety.
6
- */
7
-
8
- /**
9
- * Branded Type Utility
10
- */
11
- export type Brand<K, T> = K & { __brand: T };
12
-
13
- /**
14
- * Entity IDs (Branded)
15
- */
16
- export type TraceID = Brand<string, "TraceID">;
17
- export type AgentID = Brand<string, "AgentID">;
18
- export type ProjectID = Brand<string, "ProjectID">;
19
- export type UserID = Brand<string, "UserID">;
20
-
21
- /**
22
- * Domain Models
23
- */
24
- export interface User {
25
- id: UserID;
26
- email: string;
27
- fullName: string;
28
- role: "ADMIN" | "DEVELOPER" | "VIEWER";
29
- createdAt: string;
30
- }
31
-
32
- export interface UserProfile extends User {
33
- avatarUrl?: string;
34
- bio?: string;
35
- preferences: Record<string, unknown>;
36
- }
37
-
38
- /**
39
- * Project Status Types
40
- */
41
- export type ProjectPhase = "PHASE_0" | "PHASE_1" | "PHASE_2" | "PHASE_3" | "PHASE_4";
42
- export type ExecutionProfile = "Lightweight" | "Full";
43
-
44
- export interface ProjectStatus {
45
- phase: ProjectPhase;
46
- profile: ExecutionProfile;
47
- lastUpdate: string;
48
- activeTraceId: TraceID | null;
49
- blockers: string[];
50
- }
51
-
52
- /**
53
- * Task Management Types
54
- */
55
- export type TaskPriority = "P0" | "P1" | "P2" | "P3";
56
- export type TaskStatus = "PENDING" | "IN_PROGRESS" | "BLOCKED" | "COMPLETED" | "FAILED";
57
-
58
- export interface Task {
59
- id: TraceID;
60
- description: string;
61
- agent: AgentID;
62
- priority: TaskPriority;
63
- status: TaskStatus;
64
- createdAt: string;
65
- updatedAt: string;
66
- }
67
-
68
- /**
69
- * Audit & Agent Logging Types
70
- */
71
- export type ActionType = "CREATE" | "MODIFY" | "DELETE" | "RESEARCH" | "ORCHESTRATE";
72
- export type ActionStatus = "SUCCESS" | "FAILURE" | "WAITING";
73
-
74
- export interface AgentActionLog {
75
- timestamp: string;
76
- agent: AgentID;
77
- action: ActionType;
78
- requestId: TraceID | "—";
79
- status: ActionStatus;
80
- summary: string;
81
- files?: string[];
82
- details?: Record<string, unknown>;
83
- }
84
-
85
- /**
86
- * API Response Wrappers
87
- */
88
- export interface ApiResponse<T> {
89
- data: T;
90
- meta?: {
91
- requestId: TraceID;
92
- timestamp: string;
93
- };
94
- }
95
-
96
- export interface ApiError {
97
- error: {
98
- code: string;
99
- message: string;
100
- details?: unknown;
101
- };
102
- }
@@ -1,9 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.json",
3
- "compilerOptions": {
4
- "outDir": "./dist",
5
- "rootDir": "./src"
6
- },
7
- "include": ["src/**/*"],
8
- "exclude": ["node_modules", "dist"]
9
- }