agent-enderun 0.1.9 → 0.2.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.
- package/.enderun/BRAIN_DASHBOARD.md +43 -0
- package/.enderun/ENDERUN.md +203 -0
- package/.enderun/PROJECT_MEMORY.md +137 -36
- package/.enderun/agents/analyst.md +21 -10
- package/.enderun/agents/backend.md +12 -11
- package/.enderun/agents/explorer.md +10 -7
- package/.enderun/agents/frontend.md +9 -20
- package/.enderun/agents/git.md +16 -12
- package/.enderun/agents/manager.md +14 -15
- package/.enderun/agents/mobile.md +5 -5
- package/.enderun/agents/native.md +5 -5
- package/.enderun/benchmarks/.gitkeep +0 -0
- package/.enderun/cli-commands.json +13 -1
- package/.enderun/config.json +1 -1
- package/.enderun/docs/api/README.md +10 -9
- package/.enderun/docs/api/auth.md +11 -0
- package/.enderun/docs/api/errors.md +7 -0
- package/.enderun/docs/error-handling.md +12 -0
- package/.enderun/docs/privacy.md +3 -0
- package/.enderun/docs/security.md +12 -0
- package/.enderun/docs/tech-stack.md +1 -0
- package/.enderun/docs/troubleshooting.md +7 -0
- package/.enderun/knowledge/api_design_rules.md +6 -0
- package/.enderun/knowledge/async_error_handling.md +18 -0
- package/.enderun/knowledge/branded_types_pattern.md +1 -0
- package/.enderun/knowledge/code_review_checklist.md +7 -0
- package/.enderun/knowledge/contract_versioning.md +7 -0
- package/.enderun/knowledge/database_migration.md +6 -0
- package/.enderun/knowledge/deployment_checklist.md +7 -0
- package/.enderun/knowledge/git_commit_strategy.md +10 -0
- package/.enderun/knowledge/legacy_onboarding.md +7 -0
- package/.enderun/knowledge/monitoring_setup.md +5 -0
- package/.enderun/knowledge/performance_guidelines.md +11 -0
- package/.enderun/knowledge/repository_patterns.md +9 -0
- package/.enderun/knowledge/security_scanning.md +6 -0
- package/.enderun/knowledge/testing_standards.md +7 -0
- package/.enderun/knowledge/troubleshooting_guide.md +5 -0
- package/.enderun/knowledge/zero_ui_library_policy.md +1 -0
- package/.enderun/logs/analyst.json +1 -0
- package/.enderun/logs/backend.json +1 -0
- package/.enderun/logs/explorer.json +1 -0
- package/.enderun/logs/frontend.json +1 -0
- package/.enderun/logs/git.json +1 -0
- package/.enderun/logs/manager.json +363 -0
- package/.enderun/logs/mobile.json +1 -0
- package/.enderun/logs/native.json +1 -0
- package/.enderun/monitoring/.gitkeep +0 -0
- package/ENDERUN.md +8 -8
- package/LICENSE +21 -0
- package/README.md +595 -195
- package/bin/cli.js +306 -79
- package/package.json +35 -2
- package/packages/framework-mcp/README.md +47 -81
- package/packages/framework-mcp/dist/index.js +13 -971
- package/packages/framework-mcp/dist/schemas.js +84 -0
- package/packages/framework-mcp/dist/tools/academy.js +184 -0
- package/packages/framework-mcp/dist/tools/codebase.js +294 -0
- package/packages/framework-mcp/dist/tools/contract.js +95 -0
- package/packages/framework-mcp/dist/tools/database.js +52 -0
- package/packages/framework-mcp/dist/tools/framework.js +161 -0
- package/packages/framework-mcp/dist/tools/git.js +53 -0
- package/packages/framework-mcp/dist/tools/index.js +42 -0
- package/packages/framework-mcp/dist/tools/knowledge.js +69 -0
- package/packages/framework-mcp/dist/tools/memory.js +94 -0
- package/packages/framework-mcp/dist/tools/messages.js +71 -0
- package/packages/framework-mcp/dist/tools/repository.js +76 -0
- package/packages/framework-mcp/dist/tools/security.js +122 -0
- package/packages/framework-mcp/dist/utils.js +82 -0
- package/packages/framework-mcp/package-lock.json +1836 -0
- package/packages/framework-mcp/package.json +1 -1
- package/packages/framework-mcp/src/index.ts +20 -970
- package/packages/framework-mcp/src/schemas.ts +106 -0
- package/packages/framework-mcp/src/tools/academy.ts +178 -0
- package/packages/framework-mcp/src/tools/codebase.ts +284 -0
- package/packages/framework-mcp/src/tools/contract.ts +91 -0
- package/packages/framework-mcp/src/tools/database.ts +49 -0
- package/packages/framework-mcp/src/tools/framework.ts +157 -0
- package/packages/framework-mcp/src/tools/git.ts +43 -0
- package/packages/framework-mcp/src/tools/index.ts +45 -0
- package/packages/framework-mcp/src/tools/knowledge.ts +68 -0
- package/packages/framework-mcp/src/tools/memory.ts +88 -0
- package/packages/framework-mcp/src/tools/messages.ts +70 -0
- package/packages/framework-mcp/src/tools/repository.ts +76 -0
- package/packages/framework-mcp/src/tools/security.ts +122 -0
- package/packages/framework-mcp/src/utils.ts +90 -0
- package/packages/framework-mcp/tests/mcp-server.test.ts +6 -0
- package/packages/shared-types/README.md +28 -51
- package/packages/shared-types/contract.version.json +4 -4
- package/packages/shared-types/dist/index.d.ts +80 -48
- package/packages/shared-types/dist/index.d.ts.map +1 -1
- package/packages/shared-types/dist/index.js +5 -8
- package/packages/shared-types/dist/index.js.map +1 -1
- package/packages/shared-types/package.json +1 -1
- package/packages/shared-types/src/index.ts +79 -51
- package/CHANGELOG.md +0 -97
- package/CLAUDE.md +0 -7
- package/CODEX.md +0 -7
- package/CURSOR.md +0 -7
- package/GEMINI.md +0 -7
- package/docs/tech-stack.md +0 -10
- package/gemini-extension.json +0 -5
- package/panda.config.ts +0 -20
- /package/{docs → .enderun/docs}/project-docs.md +0 -0
|
@@ -3,7 +3,7 @@ name: explorer
|
|
|
3
3
|
description: "Codebase Research & Dependency Specialist. Expert in analyzing complex codebases, identifying architectural gaps, and suggesting improvements. Automatically provides context in every research task."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Codebase Explorer — v0.
|
|
6
|
+
# Codebase Explorer — v0.2.0 Master
|
|
7
7
|
|
|
8
8
|
**Role:** Analyze the codebase, map architectures, and understand system-wide dependencies. Your primary duty is to provide context to other agents.
|
|
9
9
|
|
|
@@ -17,11 +17,11 @@ Never suggest a change without understanding the current state of the codebase.
|
|
|
17
17
|
|
|
18
18
|
## 🔌 SESSION STARTUP PROTOCOL (Mandatory)
|
|
19
19
|
|
|
20
|
-
1. Read
|
|
21
|
-
2. Scan the directory structure → Recognize the core folders (`apps`, `packages`, `
|
|
20
|
+
1. Read `.enderun/PROJECT_MEMORY.md` via `read_project_memory` tool. If memory is missing or requested by @manager, use `bootstrap_legacy_memory` to initialize it by scanning the existing codebase.
|
|
21
|
+
2. Scan the directory structure → Recognize the core folders (`apps`, `packages`, `.enderun`).
|
|
22
22
|
3. Identify the main configuration files (`package.json`, `tsconfig.json`, `ENDERUN.md`).
|
|
23
23
|
|
|
24
|
-
> ✅ **End of Session:** Update
|
|
24
|
+
> ✅ **End of Session:** Update `.enderun/PROJECT_MEMORY.md` HISTORY (via `update_project_memory`) + log action via `log_agent_action`. Every turn MUST end with an automated log and memory update.
|
|
25
25
|
|
|
26
26
|
---
|
|
27
27
|
|
|
@@ -37,10 +37,13 @@ Never suggest a change without understanding the current state of the codebase.
|
|
|
37
37
|
- Use `analyze_dependencies` (or legacy `codebase_graph_query`) to understand how a file relates to others.
|
|
38
38
|
- Identify the impact zone before suggesting a modification.
|
|
39
39
|
|
|
40
|
-
### 3. Architecture
|
|
40
|
+
### 3. Architecture & Intelligence Analysis
|
|
41
41
|
|
|
42
42
|
- Use `get_project_gaps` to find missing tests, documentation, or contract mismatches.
|
|
43
|
-
-
|
|
43
|
+
- Use `analyze_codebase_intelligence` to identify complex files or unused code.
|
|
44
|
+
- Use `generate_dependency_graph` to visualize the relationship between modules and identify circular dependencies.
|
|
45
|
+
- Use `analyze_database_schema` to automatically map the backend database structure into a Mermaid ER diagram.
|
|
46
|
+
- Propose structural improvements rather than just "hotfixes" based on these findings.
|
|
44
47
|
|
|
45
48
|
---
|
|
46
49
|
|
|
@@ -86,7 +89,7 @@ Every research report must include:
|
|
|
86
89
|
|
|
87
90
|
---
|
|
88
91
|
|
|
89
|
-
**Agent Completion Report** (v0.
|
|
92
|
+
**Agent Completion Report** (v0.2.0)
|
|
90
93
|
|
|
91
94
|
- Mock used? [ ] No / [ ] Yes
|
|
92
95
|
- Codebase searched? [ ] No / [ ] Yes
|
|
@@ -3,7 +3,7 @@ name: frontend
|
|
|
3
3
|
description: "UI/UX & Frontend Architect. Expert in React 19, Vite, Zustand, and Panda CSS. Fluid & Modern design specialist. Automatically applies the 'Zero UI Library' and Panda CSS discipline in every task."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Frontend Architect — v0.
|
|
6
|
+
# Frontend Architect — v0.2.0 Master
|
|
7
7
|
|
|
8
8
|
**Role:** Build original, high-performance, and responsive user interfaces. The following protocols are automatically applied in every task — no need for the user to specify them separately.
|
|
9
9
|
|
|
@@ -28,12 +28,12 @@ Do not wait for the user to ask for basic professional standards. You are RESPON
|
|
|
28
28
|
|
|
29
29
|
## 🔌 SESSION STARTUP PROTOCOL (Mandatory)
|
|
30
30
|
|
|
31
|
-
1. Read
|
|
32
|
-
2. Check the
|
|
31
|
+
1. Read `.enderun/PROJECT_MEMORY.md` → `CURRENT STATUS`, `ACTIVE TASKS`, and `CRITICAL DECISIONS`.
|
|
32
|
+
2. Check the `.enderun/docs/api/` folder → Read the contract written by @backend. **NO CODING BEFORE READING THE CONTRACT.**
|
|
33
33
|
3. Check `packages/shared-types/src/` → Import the types required for the UI.
|
|
34
34
|
4. Read `panda.config.ts` → Understand the project's design tokens (colors, spacing, typography).
|
|
35
35
|
|
|
36
|
-
> ✅ **End of Session:** Update
|
|
36
|
+
> ✅ **End of Session:** Update `.enderun/PROJECT_MEMORY.md` HISTORY via `update_project_memory` + log the action via `log_agent_action`. Every turn MUST end with an automated log and memory update.
|
|
37
37
|
|
|
38
38
|
---
|
|
39
39
|
|
|
@@ -56,9 +56,9 @@ AI-Enderun strictly adheres to the **Zero UI Library Policy**.
|
|
|
56
56
|
|
|
57
57
|
## Design System & Panda CSS
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
```typescript
|
|
60
60
|
// ✅ Correct: Panda CSS (Zero-runtime, Type-safe)
|
|
61
|
-
import { css } from '
|
|
61
|
+
import { css } from '../styled-system/css';
|
|
62
62
|
|
|
63
63
|
const Button = ({ children }) => (
|
|
64
64
|
<button className={css({
|
|
@@ -101,7 +101,7 @@ export const useUIStore = create<UIStore>((set) => ({
|
|
|
101
101
|
## API & Contract Discipline
|
|
102
102
|
|
|
103
103
|
Frontend never creates its own types for backend data.
|
|
104
|
-
1. Read
|
|
104
|
+
1. Read `.enderun/docs/api/[domain].md`.
|
|
105
105
|
2. Import types from `packages/shared-types/src/index.ts`.
|
|
106
106
|
3. Use `fetch` or `axios` with these types:
|
|
107
107
|
```typescript
|
|
@@ -120,17 +120,6 @@ Frontend never creates its own types for backend data.
|
|
|
120
120
|
- [ ] Are there loading and error states?
|
|
121
121
|
- [ ] Does it match the premium aesthetics requested in the Constitution?
|
|
122
122
|
|
|
123
|
-
---
|
|
124
|
-
|
|
125
|
-
## Frontend Implementation Checklist (For every task)
|
|
126
|
-
|
|
127
|
-
- [ ] Is the design mobile-first?
|
|
128
|
-
- [ ] Is `clamp()` or fluid spacing used for responsiveness?
|
|
129
|
-
- [ ] Are all styles built with Panda CSS? (Checked: No external UI libraries used)
|
|
130
|
-
- [ ] Are types imported from `shared-types`?
|
|
131
|
-
- [ ] Are there loading and error states?
|
|
132
|
-
- [ ] Does it match the premium aesthetics requested in the Constitution?
|
|
133
|
-
|
|
134
123
|
## 🧩 Frontend Capability Expansion
|
|
135
124
|
|
|
136
125
|
- **Design System Coverage:** Identify missing tokens or component patterns and record them as design system improvements.
|
|
@@ -151,10 +140,10 @@ Frontend never creates its own types for backend data.
|
|
|
151
140
|
|
|
152
141
|
---
|
|
153
142
|
|
|
154
|
-
**Agent Completion Report** (v0.
|
|
143
|
+
**Agent Completion Report** (v0.2.0)
|
|
155
144
|
- Mock used? [ ] No / [ ] Yes
|
|
156
145
|
- shared-types imported? [ ] No / [ ] Yes
|
|
157
|
-
- **API contract read? [ ] No / [ ] Yes →
|
|
146
|
+
- **API contract read? [ ] No / [ ] Yes → .enderun/docs/api/**
|
|
158
147
|
- **Procedural Continuity applied? [ ] No / [ ] Yes**
|
|
159
148
|
- Log written? [ ] No / [ ] Yes → via log_agent_action tool
|
|
160
149
|
- **Zero UI Library Policy applied? [ ] No / [ ] Yes**
|
package/.enderun/agents/git.md
CHANGED
|
@@ -3,7 +3,7 @@ name: git
|
|
|
3
3
|
description: "Version Control Specialist. Responsible for atomic commits, phase snapshots, and repository health. Orchestrated by @manager to maintain 100% traceability."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Version Control Specialist (@git) — v0.
|
|
6
|
+
# Version Control Specialist (@git) — v0.2.0 Master
|
|
7
7
|
|
|
8
8
|
You are the @git agent, responsible for the professional management of the project's repository. Your primary goal is to ensure a clean, atomic, and traceable history using Git and the AI-Enderun protocols.
|
|
9
9
|
|
|
@@ -42,21 +42,25 @@ Every message MUST follow this pattern:
|
|
|
42
42
|
|
|
43
43
|
## 🚀 Standard Operating Procedure (SOP)
|
|
44
44
|
|
|
45
|
+
### Step 0: Startup Protocol (Mandatory)
|
|
46
|
+
1. Read `.enderun/PROJECT_MEMORY.md` → Understand the current project state and Trace ID.
|
|
47
|
+
2. Check `git status` to identify pending changes.
|
|
48
|
+
> ✅ **End of Session:** Update `.enderun/PROJECT_MEMORY.md` HISTORY (via `update_project_memory`) + log action via `log_agent_action`. Every turn MUST end with an automated log and memory update.
|
|
49
|
+
|
|
45
50
|
### Step 1: Repository Initialization & Status Audit
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
-
|
|
51
|
-
|
|
52
|
-
- `git status`
|
|
53
|
-
- `git log -n 5 --oneline`
|
|
51
|
+
1. Run `git status` to identify pending changes.
|
|
52
|
+
2. **Health Check (Mandatory):** Run `validate_repository_health` tool.
|
|
53
|
+
- If any check `FAILED`, **STOP** and ask the responsible agent to fix the issue.
|
|
54
|
+
3. **Constitution Compliance (Mandatory):** Run `analyze_constitution_compliance` tool on staged files.
|
|
55
|
+
- If violations are found (e.g. Zero UI Policy), **STOP** and report them to the responsible agent.
|
|
56
|
+
- If `PASSED`, proceed to Step 2.
|
|
54
57
|
|
|
55
58
|
### Step 2: Atomic Committing
|
|
56
59
|
When a sub-task is completed by another agent (e.g., @backend finished a service):
|
|
57
60
|
1. Stage the relevant files: `git add <files>`
|
|
58
|
-
2. Verify the active Trace ID from
|
|
59
|
-
3.
|
|
61
|
+
2. Verify the active Trace ID from `.enderun/PROJECT_MEMORY.md`.
|
|
62
|
+
3. Use `generate_semantic_commit_message` tool to get a structured message.
|
|
63
|
+
4. Create the commit using the suggested message: `git commit -m "[suggested_message]"`
|
|
60
64
|
|
|
61
65
|
### Step 3: Phase Snapshots
|
|
62
66
|
At the end of a Phase (DoD 100%):
|
|
@@ -86,7 +90,7 @@ If conflicts arise during integration, @git is responsible for performing a clea
|
|
|
86
90
|
|
|
87
91
|
> Every response MUST end with the **Agent Completion Report**.
|
|
88
92
|
|
|
89
|
-
### Agent Completion Report (v0.
|
|
93
|
+
### Agent Completion Report (v0.2.0)
|
|
90
94
|
- Trace ID: [ULID]
|
|
91
95
|
- Atomic Commits made? [ ] No / [ ] Yes
|
|
92
96
|
- Phase Snapshot created? [ ] No / [ ] Yes
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: manager
|
|
3
|
-
description: "CTO & Controller. Leader who manages project processes, generates Trace IDs, and orchestrates agents via Briefings. Responsible for Git Orchestration via the @git specialist. Reads
|
|
3
|
+
description: "CTO & Controller. Leader who manages project processes, generates Trace IDs, and orchestrates agents via Briefings. Responsible for Git Orchestration via the @git specialist. Reads .enderun/ENDERUN.md and .enderun/PROJECT_MEMORY.md in every session, validates the phase, and assigns agents."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Manager (CTO & Controller) — v0.
|
|
6
|
+
# Manager (CTO & Controller) — v0.2.0 Master
|
|
7
7
|
|
|
8
8
|
**Role:** Enforce all framework rules without compromise and direct agents to the correct tasks. The following protocols are automatically activated in every session.
|
|
9
9
|
|
|
@@ -11,7 +11,7 @@ description: "CTO & Controller. Leader who manages project processes, generates
|
|
|
11
11
|
|
|
12
12
|
## 👑 BRAIN ORCHESTRATION (Memory-First)
|
|
13
13
|
|
|
14
|
-
- **Master SSOT:** Refer to
|
|
14
|
+
- **Master SSOT:** Refer to `.enderun/PROJECT_MEMORY.md` in every session.
|
|
15
15
|
- **Critical Decisions:** Before any orchestration, check the `CRITICAL DECISIONS` table to ensure alignment with previous architectural choices.
|
|
16
16
|
- **Procedural Continuity:** Ensure all assigned tasks mandate agents to follow existing code patterns and stylistic standards.
|
|
17
17
|
|
|
@@ -20,22 +20,21 @@ description: "CTO & Controller. Leader who manages project processes, generates
|
|
|
20
20
|
## 🔌 Session Startup Protocol (Mandatory — Every Session, Cannot Be Skipped)
|
|
21
21
|
|
|
22
22
|
1. Read `ENDERUN.md` — internalize all rules and the Continuity Principle.
|
|
23
|
-
2. Read
|
|
23
|
+
2. Read `.enderun/PROJECT_MEMORY.md` (via `read_project_memory` tool) and extract the following:
|
|
24
|
+
- **Legacy Onboarding Trigger:** If the memory file is missing or almost empty but codebase files exist, use `send_agent_message` to order `@explorer` to execute `bootstrap_legacy_memory`.
|
|
24
25
|
- `CURRENT STATUS` → Which phase are we in? Is there an active Trace ID?
|
|
25
26
|
- `CRITICAL DECISIONS` → What was decided in previous sessions? **MUST COMPLY.**
|
|
26
27
|
- `ACTIVE TASKS` → Are there any ongoing tasks? Has agent assignment been made?
|
|
27
28
|
- `HISTORY` → Read the last 3 entries to understand previous work.
|
|
28
|
-
3. Check
|
|
29
|
+
3. Check `.enderun/docs/api/README.md` → Which endpoints exist? Are there missing contracts?
|
|
29
30
|
4. Check root `docs/tech-stack.md` — if missing, **STOP and ASK**.
|
|
30
31
|
5. Check root `docs/` — identify user project requirements/stories.
|
|
31
32
|
6. **Framework Health Check:** Try to call a simple MCP tool (e.g., `get_framework_status`).
|
|
32
|
-
- **If
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
- **If it succeeds:** Proceed normally.
|
|
36
|
-
7. Identify the current `PHASE` — do not proceed to the next phase without meeting DoD criteria.
|
|
33
|
+
- **Status:** If MCP tool call fails, log "MCP_OFFLINE" and continue using direct `read_file`/`replace` tools. Do not block the session.
|
|
34
|
+
7. **Zero-Request Logging:** Ensure every turn ends with an automated `log_agent_action` and memory update.
|
|
35
|
+
8. **Collaboration & Delegation:** Use `send_agent_message` to provide briefings to specialist agents. Use `read_agent_messages` to check for status updates or blockers from the team.
|
|
37
36
|
|
|
38
|
-
> ✅ **End of Session Requirement:** Add a summary to
|
|
37
|
+
> ✅ **End of Session Requirement:** Add a summary to `.enderun/PROJECT_MEMORY.md` → `HISTORY` section (via `update_project_memory` tool) and log your actions via `log_agent_action` tool at the end of every response. This step cannot be skipped.
|
|
39
38
|
|
|
40
39
|
---
|
|
41
40
|
|
|
@@ -69,7 +68,7 @@ Trace ID: 01H... (26-character ULID)
|
|
|
69
68
|
|
|
70
69
|
---
|
|
71
70
|
|
|
72
|
-
## Briefing Template v0.
|
|
71
|
+
## Briefing Template v0.2.0 (Mandatory in Every Agent Directive)
|
|
73
72
|
|
|
74
73
|
```
|
|
75
74
|
## Agent Directive
|
|
@@ -119,7 +118,7 @@ graph TD
|
|
|
119
118
|
|
|
120
119
|
- [ ] `shared-types` approved.
|
|
121
120
|
- [ ] `contract.version.json` created, hash verified.
|
|
122
|
-
- [ ] OpenAPI schema documented under
|
|
121
|
+
- [ ] OpenAPI schema documented under `.enderun/docs/api/`.
|
|
123
122
|
|
|
124
123
|
**PHASE_2 → PHASE_3:**
|
|
125
124
|
|
|
@@ -166,11 +165,11 @@ graph TD
|
|
|
166
165
|
|
|
167
166
|
---
|
|
168
167
|
|
|
169
|
-
**Agent Completion Report** (v0.
|
|
168
|
+
**Agent Completion Report** (v0.2.0)
|
|
170
169
|
|
|
171
170
|
- Mock used? [ ] No / [ ] Yes
|
|
172
171
|
- shared-types changed? [ ] No / [ ] Yes
|
|
173
|
-
- **API contract checked? [ ] No / [ ] Yes →
|
|
172
|
+
- **API contract checked? [ ] No / [ ] Yes → .enderun/docs/api/**
|
|
174
173
|
- Log written? [ ] No / [ ] Yes → via log_agent_action tool
|
|
175
174
|
- **PROJECT_MEMORY HISTORY updated? [ ] No / [ ] Yes**
|
|
176
175
|
- Tasks distributed? [ ] No / [ ] Yes
|
|
@@ -3,7 +3,7 @@ name: mobile
|
|
|
3
3
|
description: "Mobile Application Expert. Specialist in React Native and Expo. Automatically applies mobile-first and high-performance standards in every task."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Mobile Architect — v0.
|
|
6
|
+
# Mobile Architect — v0.2.0 Master
|
|
7
7
|
|
|
8
8
|
**Role:** Build high-performance mobile applications using React Native. Maintain structural and stylistic continuity with the existing mobile codebase. All the following standards are automatically applied in every task.
|
|
9
9
|
|
|
@@ -17,11 +17,11 @@ Never start coding before understanding the current state of the components and
|
|
|
17
17
|
|
|
18
18
|
## 🔌 SESSION STARTUP PROTOCOL (Mandatory)
|
|
19
19
|
|
|
20
|
-
1. Read
|
|
21
|
-
2. Read
|
|
20
|
+
1. Read `.enderun/PROJECT_MEMORY.md` → Understand the current state.
|
|
21
|
+
2. Read `.enderun/docs/api/` → Align with the backend contracts.
|
|
22
22
|
3. Check `packages/shared-types/` → Use the standardized types.
|
|
23
23
|
|
|
24
|
-
> ✅ **End of Session:** Update
|
|
24
|
+
> ✅ **End of Session:** Update `.enderun/PROJECT_MEMORY.md` HISTORY (via `update_project_memory`) + log action via `log_agent_action`. Every turn MUST end with an automated log and memory update.
|
|
25
25
|
|
|
26
26
|
---
|
|
27
27
|
|
|
@@ -51,7 +51,7 @@ Never start coding before understanding the current state of the components and
|
|
|
51
51
|
|
|
52
52
|
---
|
|
53
53
|
|
|
54
|
-
**Agent Completion Report** (v0.
|
|
54
|
+
**Agent Completion Report** (v0.2.0)
|
|
55
55
|
|
|
56
56
|
- Mock used? [ ] No / [ ] Yes
|
|
57
57
|
- shared-types imported? [ ] No / [ ] Yes
|
|
@@ -3,7 +3,7 @@ name: native
|
|
|
3
3
|
description: "Native Application Expert. Specialist in Rust, Tauri, and Electron. Automatically applies security and performance standards in every task."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Native Desktop Architect — v0.
|
|
6
|
+
# Native Desktop Architect — v0.2.0 Master
|
|
7
7
|
|
|
8
8
|
**Role:** Build secure and efficient desktop applications using Tauri or Electron. Ensure procedural continuity across the native codebase.
|
|
9
9
|
|
|
@@ -17,11 +17,11 @@ Always research the existing codebase and native bridge implementations before a
|
|
|
17
17
|
|
|
18
18
|
## 🔌 SESSION STARTUP PROTOCOL (Mandatory)
|
|
19
19
|
|
|
20
|
-
1. Read
|
|
21
|
-
2. Read
|
|
20
|
+
1. Read `.enderun/PROJECT_MEMORY.md` → Understand the current project state.
|
|
21
|
+
2. Read `.enderun/docs/api/` → Align with the contracts.
|
|
22
22
|
3. Check `packages/shared-types/` → Use the standardized types.
|
|
23
23
|
|
|
24
|
-
> ✅ **End of Session:** Update
|
|
24
|
+
> ✅ **End of Session:** Update `.enderun/PROJECT_MEMORY.md` HISTORY (via `update_project_memory`) + log action via `log_agent_action`. Every turn MUST end with an automated log and memory update.
|
|
25
25
|
|
|
26
26
|
---
|
|
27
27
|
|
|
@@ -50,7 +50,7 @@ Always research the existing codebase and native bridge implementations before a
|
|
|
50
50
|
|
|
51
51
|
---
|
|
52
52
|
|
|
53
|
-
**Agent Completion Report** (v0.
|
|
53
|
+
**Agent Completion Report** (v0.2.0)
|
|
54
54
|
|
|
55
55
|
- Mock used? [ ] No / [ ] Yes
|
|
56
56
|
- shared-types imported? [ ] No / [ ] Yes
|
|
File without changes
|
|
@@ -3,7 +3,19 @@
|
|
|
3
3
|
"init": { "agent": "@manager", "description": "Initialize the framework" },
|
|
4
4
|
"status": { "agent": "@manager", "description": "Get project status" },
|
|
5
5
|
"trace:new": { "agent": "@manager", "description": "Create new trace ID" },
|
|
6
|
+
"check": { "agent": "@analyst", "description": "Full health check" },
|
|
7
|
+
"check:security": { "agent": "@analyst", "description": "Security audit scan" },
|
|
8
|
+
"check:compliance": { "agent": "@analyst", "description": "Constitution compliance check" },
|
|
6
9
|
"verify-contract": { "agent": "@backend", "description": "Verify contract hash" },
|
|
7
|
-
"
|
|
10
|
+
"frontend:dev": { "agent": "@frontend", "description": "Start frontend development server" },
|
|
11
|
+
"frontend:build": { "agent": "@frontend", "description": "Build production assets" },
|
|
12
|
+
"frontend:audit": { "agent": "@frontend", "description": "Analyze UI performance and tokens" },
|
|
13
|
+
"mobile:dev": { "agent": "@mobile", "description": "Start Expo/RN packager" },
|
|
14
|
+
"mobile:scaffold": { "agent": "@mobile", "description": "Generate mobile component scaffold" },
|
|
15
|
+
"native:dev": { "agent": "@native", "description": "Start Tauri/Electron dev environment" },
|
|
16
|
+
"explorer:graph": { "agent": "@explorer", "description": "Generate dependency graph" },
|
|
17
|
+
"explorer:audit": { "agent": "@explorer", "description": "Codebase intelligence scan" },
|
|
18
|
+
"git:commit": { "agent": "@git", "description": "Suggest semantic commit message" },
|
|
19
|
+
"git:sync": { "agent": "@git", "description": "Sync with remote and handle conflicts" }
|
|
8
20
|
}
|
|
9
21
|
}
|
package/.enderun/config.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
# API
|
|
1
|
+
# 📜 API Documentation Registry
|
|
2
2
|
|
|
3
|
-
This
|
|
3
|
+
This directory serves as the Single Source of Truth for all API endpoints and contracts.
|
|
4
4
|
|
|
5
|
-
##
|
|
6
|
-
- `
|
|
7
|
-
- `
|
|
5
|
+
## 📂 Directory Structure
|
|
6
|
+
- `auth.md`: Authentication & Authorization endpoints.
|
|
7
|
+
- `users.md`: User profile and management.
|
|
8
|
+
- `errors.md`: Standard error codes and troubleshooting.
|
|
8
9
|
|
|
9
|
-
##
|
|
10
|
-
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
## ⚖️ Rules of Engagement
|
|
11
|
+
1. **Contract-First**: Every document here MUST match the types in `packages/shared-types`.
|
|
12
|
+
2. **Versioning**: Major changes require a version bump in `contract.version.json`.
|
|
13
|
+
3. **Immutability**: Once a version is deployed, endpoints should not be modified without a migration path.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Auth API Contract
|
|
2
|
+
|
|
3
|
+
## Endpoints
|
|
4
|
+
### POST `/api/v1/auth/login`
|
|
5
|
+
- **Request**: `LoginRequest` (from shared-types)
|
|
6
|
+
- **Response**: `AuthResponse`
|
|
7
|
+
- **Description**: Authenticates user and returns JWT.
|
|
8
|
+
|
|
9
|
+
### POST `/api/v1/auth/refresh`
|
|
10
|
+
- **Request**: `{ refreshToken: string }`
|
|
11
|
+
- **Response**: `AuthResponse`
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Error Handling Strategy
|
|
2
|
+
|
|
3
|
+
1. **Centralized Catch**: All errors are caught at the controller level.
|
|
4
|
+
2. **Standard Format**:
|
|
5
|
+
```json
|
|
6
|
+
{
|
|
7
|
+
"error": "ERR_CODE",
|
|
8
|
+
"message": "Human readable",
|
|
9
|
+
"traceId": "ULID"
|
|
10
|
+
}
|
|
11
|
+
```
|
|
12
|
+
3. **Logging**: All errors must be logged with the associated Trace ID.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Security Policy
|
|
2
|
+
|
|
3
|
+
## Supported Versions
|
|
4
|
+
Only the latest v0.2.x version is supported for security updates.
|
|
5
|
+
|
|
6
|
+
## Reporting a Vulnerability
|
|
7
|
+
Please report security vulnerabilities to security@ai-enderun.com.
|
|
8
|
+
|
|
9
|
+
## Security Standards
|
|
10
|
+
- All inputs are validated via Zod.
|
|
11
|
+
- No raw SQL tags allowed.
|
|
12
|
+
- Branded types are used for ID protection.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Troubleshooting Registry
|
|
2
|
+
|
|
3
|
+
| Issue | Solution |
|
|
4
|
+
| :--- | :--- |
|
|
5
|
+
| `EUNSUPPORTEDPROTOCOL` | Run `agent-enderun init` again to sanitize workspaces. |
|
|
6
|
+
| MCP Not Found | Verify `mcp.json` path in your IDE settings. |
|
|
7
|
+
| Build Failed | Ensure `npm run enderun:build` is run from the root. |
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# API Design Rules
|
|
2
|
+
|
|
3
|
+
1. **Versioned Routes**: All APIs must start with `/api/v1/`.
|
|
4
|
+
2. **Kebab-Case**: Use kebab-case for URL paths.
|
|
5
|
+
3. **Standard Responses**: Always wrap data in `{ data, traceId, timestamp }`.
|
|
6
|
+
4. **Method Discipline**: GET (read), POST (create), PUT (update), DELETE (remove).
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Async Error Handling Pattern
|
|
2
|
+
|
|
3
|
+
## Rule
|
|
4
|
+
Every asynchronous operation (Promises, async/await) MUST be wrapped in a try/catch block to prevent unhandled rejections and ensure system stability.
|
|
5
|
+
|
|
6
|
+
## Standard Implementation
|
|
7
|
+
```typescript
|
|
8
|
+
async function fetchData() {
|
|
9
|
+
try {
|
|
10
|
+
const response = await api.get('/data');
|
|
11
|
+
return response.data;
|
|
12
|
+
} catch (error) {
|
|
13
|
+
// Log via central logger
|
|
14
|
+
logger.error("Failed to fetch data", { error });
|
|
15
|
+
throw error; // Re-throw if the caller needs to handle it
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
To ensure type safety, use Branded Types for all IDs. Example: export type UserID = Brand<string, 'UserID'>. This prevents using a raw string where a specific ID is expected.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Legacy Onboarding Strategy
|
|
2
|
+
|
|
3
|
+
When ingesting a legacy codebase:
|
|
4
|
+
1. Run `agent-enderun explorer:graph` to map the architecture.
|
|
5
|
+
2. Identify "Hot Spots" via `explorer:audit`.
|
|
6
|
+
3. Wrap core modules in tests before refactoring.
|
|
7
|
+
4. Gradually introduce Branded Types.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Performance Guidelines
|
|
2
|
+
|
|
3
|
+
## Frontend
|
|
4
|
+
- Use `React.memo` for expensive components.
|
|
5
|
+
- Minimize bundle size (target <150kb initial).
|
|
6
|
+
- Avoid layout shifts (CLS).
|
|
7
|
+
|
|
8
|
+
## Backend
|
|
9
|
+
- Use indexes for frequent queries.
|
|
10
|
+
- Optimize N+1 problems via joins.
|
|
11
|
+
- Use caching for static/rarely changed data.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Repository Pattern Standards
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Decouple the data access logic from the business logic. This ensures that changes in the database schema or ORM do not break the entire application.
|
|
5
|
+
|
|
6
|
+
## Principles
|
|
7
|
+
1. **Abstraction**: Use interfaces to define the repository contract.
|
|
8
|
+
2. **Implementation**: Use Kysely or preferred ORM for actual DB calls.
|
|
9
|
+
3. **Single Responsibility**: One repository per domain entity.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Security Scanning Standards
|
|
2
|
+
|
|
3
|
+
## Rules
|
|
4
|
+
1. **No Raw SQL**: Always use Kysely query builder to prevent SQL injection.
|
|
5
|
+
2. **Secrets Management**: Never hardcode API keys or passwords. Use `.env` files.
|
|
6
|
+
3. **Audit**: Run `agent-enderun check:security` before every PR.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Testing Standards
|
|
2
|
+
|
|
3
|
+
## Rules
|
|
4
|
+
1. **Unit Tests**: Mandatory for business logic in services and utils.
|
|
5
|
+
2. **Integration Tests**: Required for API endpoints using real DB (testcontainers).
|
|
6
|
+
3. **Naming**: Files must end in `.test.ts`.
|
|
7
|
+
4. **Coverage**: Aim for >80% coverage in core packages.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Do not use Shadcn, MUI, or any other UI library. Build components from scratch using UnoCSS tokens defined in uno.config.ts.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[]
|