agent-enderun 1.1.2 → 1.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{.enderun/ENDERUN.md → ENDERUN.md} +25 -25
- package/README.md +6 -6
- package/bin/compile.js +13 -14
- package/bin/enderun-dashboard.js +866 -0
- package/bin/generate-cursor-rules.js +78 -0
- package/bin/test-init-run.js +37 -26
- package/bin/validate-agent-army.js +65 -67
- package/bin/watch-memory.js +54 -0
- package/dist/framework-mcp/src/index.js +1 -1
- package/dist/framework-mcp/src/tools/control_plane/locking.d.ts +15 -0
- package/dist/framework-mcp/src/tools/control_plane/locking.js +65 -0
- package/dist/framework-mcp/src/tools/control_plane/locking.js.map +1 -0
- package/dist/framework-mcp/src/tools/control_plane/registry.d.ts +12 -0
- package/dist/framework-mcp/src/tools/control_plane/registry.js +35 -0
- package/dist/framework-mcp/src/tools/control_plane/registry.js.map +1 -0
- package/dist/framework-mcp/src/tools/definitions.js +46 -7
- package/dist/framework-mcp/src/tools/definitions.js.map +1 -1
- package/dist/framework-mcp/src/tools/file_system/write_file.js +16 -2
- package/dist/framework-mcp/src/tools/file_system/write_file.js.map +1 -1
- package/dist/framework-mcp/src/tools/index.d.ts +1 -1
- package/dist/framework-mcp/src/tools/index.js +5 -0
- package/dist/framework-mcp/src/tools/index.js.map +1 -1
- package/dist/framework-mcp/src/tools/messaging/send_message.d.ts +1 -1
- package/dist/framework-mcp/src/tools/messaging/send_message.js +2 -4
- package/dist/framework-mcp/src/tools/messaging/send_message.js.map +1 -1
- package/dist/framework-mcp/src/utils/metrics.d.ts +10 -0
- package/dist/framework-mcp/src/utils/metrics.js +39 -0
- package/dist/framework-mcp/src/utils/metrics.js.map +1 -0
- package/dist/framework-mcp/src/utils/security.js +7 -3
- package/dist/framework-mcp/src/utils/security.js.map +1 -1
- package/dist/init-adapters/antigravity-cli/.agents/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/antigravity-cli/.agents/STATUS.md +3 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/analyst/agent.json +28 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/architect/agent.json +30 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/backend/agent.json +30 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/database/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/devops/agent.json +28 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/explorer/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/frontend/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/git/agent.json +28 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/manager/agent.json +30 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/mobile/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/native/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/quality/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/security/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/cli-commands.json +32 -0
- package/dist/init-adapters/antigravity-cli/.agents/config.json +12 -0
- package/dist/init-adapters/antigravity-cli/.agents/mcp_config.json +13 -0
- package/dist/init-adapters/antigravity-cli/.agents/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/antigravity-cli/.agents/skills/discovery.md +3 -0
- package/dist/init-adapters/antigravity-cli/.agents/skills/editing.md +3 -0
- package/dist/init-adapters/antigravity-cli/.agents/skills/execution.md +4 -0
- package/dist/init-adapters/antigravity-cli/.agents/skills/file_system.md +4 -0
- package/dist/init-adapters/antigravity-cli/.agents/skills/orchestration.md +3 -0
- package/dist/init-adapters/antigravity-cli/AGENTS.md +1 -0
- package/dist/init-adapters/antigravity-cli/ENDERUN.md +263 -0
- package/dist/init-adapters/antigravity-cli/mcp.json +13 -0
- package/dist/init-adapters/antigravity-cli/package.json +5 -0
- package/dist/init-adapters/antigravity-cli/panda.config.ts +2 -0
- package/dist/init-adapters/claude/.claude/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/claude/.claude/STATUS.md +3 -0
- package/dist/init-adapters/claude/.claude/agents/analyst.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/architect.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/backend.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/database.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/devops.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/explorer.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/frontend.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/git.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/manager.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/mobile.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/native.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/quality.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/security.md +15 -0
- package/dist/init-adapters/claude/.claude/cli-commands.json +32 -0
- package/dist/init-adapters/claude/.claude/config.json +12 -0
- package/dist/init-adapters/claude/.claude/mcp_config.json +13 -0
- package/dist/init-adapters/claude/.claude/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/claude/.claude/skills/discovery.md +3 -0
- package/dist/init-adapters/claude/.claude/skills/editing.md +3 -0
- package/dist/init-adapters/claude/.claude/skills/execution.md +4 -0
- package/dist/init-adapters/claude/.claude/skills/file_system.md +4 -0
- package/dist/init-adapters/claude/.claude/skills/orchestration.md +3 -0
- package/dist/init-adapters/claude/.mcp.json +13 -0
- package/dist/init-adapters/claude/CLAUDE.md +1 -0
- package/dist/init-adapters/claude/ENDERUN.md +263 -0
- package/dist/init-adapters/claude/mcp.json +13 -0
- package/dist/init-adapters/claude/package.json +5 -0
- package/dist/init-adapters/claude/panda.config.ts +2 -0
- package/dist/init-adapters/codex/.github/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/codex/.github/STATUS.md +3 -0
- package/dist/init-adapters/codex/.github/agents/analyst.md +15 -0
- package/dist/init-adapters/codex/.github/agents/architect.md +15 -0
- package/dist/init-adapters/codex/.github/agents/backend.md +15 -0
- package/dist/init-adapters/codex/.github/agents/database.md +15 -0
- package/dist/init-adapters/codex/.github/agents/devops.md +15 -0
- package/dist/init-adapters/codex/.github/agents/explorer.md +15 -0
- package/dist/init-adapters/codex/.github/agents/frontend.md +15 -0
- package/dist/init-adapters/codex/.github/agents/git.md +15 -0
- package/dist/init-adapters/codex/.github/agents/manager.md +15 -0
- package/dist/init-adapters/codex/.github/agents/mobile.md +15 -0
- package/dist/init-adapters/codex/.github/agents/native.md +15 -0
- package/dist/init-adapters/codex/.github/agents/quality.md +15 -0
- package/dist/init-adapters/codex/.github/agents/security.md +15 -0
- package/dist/init-adapters/codex/.github/cli-commands.json +32 -0
- package/dist/init-adapters/codex/.github/config.json +12 -0
- package/dist/init-adapters/codex/.github/mcp_config.json +13 -0
- package/dist/init-adapters/codex/.github/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/codex/.github/skills/discovery.md +3 -0
- package/dist/init-adapters/codex/.github/skills/editing.md +3 -0
- package/dist/init-adapters/codex/.github/skills/execution.md +4 -0
- package/dist/init-adapters/codex/.github/skills/file_system.md +4 -0
- package/dist/init-adapters/codex/.github/skills/orchestration.md +3 -0
- package/dist/init-adapters/codex/.mcp.json +13 -0
- package/dist/init-adapters/codex/.vscode/mcp.json +13 -0
- package/dist/init-adapters/codex/ENDERUN.md +263 -0
- package/dist/init-adapters/codex/copilot-instructions.md +1 -0
- package/dist/init-adapters/codex/mcp.json +13 -0
- package/dist/init-adapters/codex/package.json +5 -0
- package/dist/init-adapters/codex/panda.config.ts +2 -0
- package/dist/init-adapters/cursor/.cursor/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/cursor/.cursor/STATUS.md +3 -0
- package/dist/init-adapters/cursor/.cursor/agents/analyst.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/architect.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/backend.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/database.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/devops.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/explorer.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/frontend.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/git.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/manager.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/mobile.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/native.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/quality.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/security.md +15 -0
- package/dist/init-adapters/cursor/.cursor/cli-commands.json +32 -0
- package/dist/init-adapters/cursor/.cursor/config.json +12 -0
- package/dist/init-adapters/cursor/.cursor/mcp.json +13 -0
- package/dist/init-adapters/cursor/.cursor/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/cursor/.cursor/skills/discovery.md +3 -0
- package/dist/init-adapters/cursor/.cursor/skills/editing.md +3 -0
- package/dist/init-adapters/cursor/.cursor/skills/execution.md +4 -0
- package/dist/init-adapters/cursor/.cursor/skills/file_system.md +4 -0
- package/dist/init-adapters/cursor/.cursor/skills/orchestration.md +3 -0
- package/dist/init-adapters/cursor/CURSOR.md +1 -0
- package/dist/init-adapters/cursor/ENDERUN.md +263 -0
- package/dist/init-adapters/cursor/mcp.json +13 -0
- package/dist/init-adapters/cursor/package.json +5 -0
- package/dist/init-adapters/cursor/panda.config.ts +2 -0
- package/dist/init-adapters/gemini/.gemini/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/gemini/.gemini/STATUS.md +3 -0
- package/dist/init-adapters/gemini/.gemini/agents/analyst.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/architect.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/backend.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/database.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/devops.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/explorer.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/frontend.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/git.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/manager.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/mobile.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/native.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/quality.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/security.md +15 -0
- package/dist/init-adapters/gemini/.gemini/cli-commands.json +32 -0
- package/dist/init-adapters/gemini/.gemini/config.json +12 -0
- package/dist/init-adapters/gemini/.gemini/mcp.json +13 -0
- package/dist/init-adapters/gemini/.gemini/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/gemini/.gemini/skills/discovery.md +3 -0
- package/dist/init-adapters/gemini/.gemini/skills/editing.md +3 -0
- package/dist/init-adapters/gemini/.gemini/skills/execution.md +4 -0
- package/dist/init-adapters/gemini/.gemini/skills/file_system.md +4 -0
- package/dist/init-adapters/gemini/.gemini/skills/orchestration.md +3 -0
- package/dist/init-adapters/gemini/ENDERUN.md +263 -0
- package/dist/init-adapters/gemini/GEMINI.md +1 -0
- package/dist/init-adapters/gemini/mcp.json +13 -0
- package/dist/init-adapters/gemini/package.json +5 -0
- package/dist/init-adapters/gemini/panda.config.ts +2 -0
- package/dist/init-adapters/grok/.grok/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/grok/.grok/STATUS.md +3 -0
- package/dist/init-adapters/grok/.grok/agents/analyst.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/architect.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/backend.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/database.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/devops.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/explorer.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/frontend.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/git.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/manager.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/mobile.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/native.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/quality.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/security.md +15 -0
- package/dist/init-adapters/grok/.grok/cli-commands.json +32 -0
- package/dist/init-adapters/grok/.grok/config.json +12 -0
- package/{.enderun → dist/init-adapters/grok/.grok}/mcp_config.json +4 -2
- package/dist/init-adapters/grok/.grok/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/grok/.grok/skills/discovery.md +3 -0
- package/dist/init-adapters/grok/.grok/skills/editing.md +3 -0
- package/dist/init-adapters/grok/.grok/skills/execution.md +4 -0
- package/dist/init-adapters/grok/.grok/skills/file_system.md +4 -0
- package/dist/init-adapters/grok/.grok/skills/orchestration.md +3 -0
- package/dist/init-adapters/grok/ENDERUN.md +263 -0
- package/dist/init-adapters/grok/GROK.md +1 -0
- package/{mcp.json → dist/init-adapters/grok/mcp.json} +4 -2
- package/dist/init-adapters/grok/package.json +5 -0
- package/dist/init-adapters/grok/panda.config.ts +2 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/mcp.json +13 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/mcp_config.json +13 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/analyst/agent.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/analyst.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/architect/agent.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/architect.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/backend/agent.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/backend.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/database/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/database.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/devops/agent.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/devops.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/explorer/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/explorer.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/frontend/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/frontend.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/git/agent.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/git.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/manager/agent.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/manager.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/mobile/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/mobile.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/native/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/native.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/quality/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/quality.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/security/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/security.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/hooks.json +4 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/mcp.json +13 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/mcp_config.json +13 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/plugin.json +5 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/analyst.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/architect.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/backend.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/database.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/devops.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/explorer.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/frontend.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/git.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/manager.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/mobile.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/native.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/quality.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/security.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/discovery.md +3 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/editing.md +3 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/execution.md +4 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/file_system.md +4 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/orchestration.md +3 -0
- package/dist/init-adapters/mock-home/Library/Application Support/Claude/claude_desktop_config.json +13 -0
- package/dist/src/cli/adapters/types.d.ts +14 -0
- package/dist/src/cli/adapters/types.js +2 -0
- package/dist/src/cli/adapters/types.js.map +1 -0
- package/dist/src/cli/adapters.d.ts +4 -22
- package/dist/src/cli/adapters.js +123 -141
- package/dist/src/cli/adapters.js.map +1 -1
- package/dist/src/cli/commands/check.d.ts +0 -5
- package/dist/src/cli/commands/check.js +64 -76
- package/dist/src/cli/commands/check.js.map +1 -1
- package/dist/src/cli/commands/init.d.ts +1 -1
- package/dist/src/cli/commands/init.js +154 -319
- package/dist/src/cli/commands/init.js.map +1 -1
- package/dist/src/cli/commands/log.d.ts +1 -0
- package/dist/src/cli/commands/log.js.map +1 -1
- package/dist/src/cli/commands/memory.js +2 -69
- package/dist/src/cli/commands/memory.js.map +1 -1
- package/dist/src/cli/commands/orchestrate.d.ts +19 -9
- package/dist/src/cli/commands/orchestrate.js +56 -77
- package/dist/src/cli/commands/orchestrate.js.map +1 -1
- package/dist/src/cli/index.js +112 -30
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/utils/app.d.ts +1 -2
- package/dist/src/cli/utils/app.js +2 -2
- package/dist/src/cli/utils/app.js.map +1 -1
- package/dist/src/cli/utils/config-schema.d.ts +139 -0
- package/dist/src/cli/utils/config-schema.js +43 -0
- package/dist/src/cli/utils/config-schema.js.map +1 -0
- package/dist/src/cli/utils/fs.d.ts +2 -4
- package/dist/src/cli/utils/fs.js +9 -26
- package/dist/src/cli/utils/fs.js.map +1 -1
- package/dist/src/cli/utils/memory.d.ts +4 -3
- package/dist/src/cli/utils/memory.js +135 -116
- package/dist/src/cli/utils/memory.js.map +1 -1
- package/dist/src/cli/utils/pkg.js +4 -4
- package/dist/src/cli/utils/pkg.js.map +1 -1
- package/dist/src/cli/utils/ui.d.ts +30 -0
- package/dist/src/cli/utils/ui.js +56 -0
- package/dist/src/cli/utils/ui.js.map +1 -0
- package/dist/src/modules/adapters/antigravity-cli.d.ts +3 -0
- package/dist/src/modules/adapters/antigravity-cli.js +21 -0
- package/dist/src/modules/adapters/antigravity-cli.js.map +1 -0
- package/dist/src/modules/adapters/claude.d.ts +3 -0
- package/dist/src/modules/adapters/claude.js +36 -0
- package/dist/src/modules/adapters/claude.js.map +1 -0
- package/dist/src/modules/adapters/codex.d.ts +3 -0
- package/dist/src/modules/adapters/codex.js +20 -0
- package/dist/src/modules/adapters/codex.js.map +1 -0
- package/dist/src/modules/adapters/cursor.d.ts +3 -0
- package/dist/src/modules/adapters/cursor.js +20 -0
- package/dist/src/modules/adapters/cursor.js.map +1 -0
- package/dist/src/modules/adapters/gemini.d.ts +3 -0
- package/dist/src/modules/adapters/gemini.js +23 -0
- package/dist/src/modules/adapters/gemini.js.map +1 -0
- package/dist/src/modules/adapters/grok.d.ts +3 -0
- package/dist/src/modules/adapters/grok.js +18 -0
- package/dist/src/modules/adapters/grok.js.map +1 -0
- package/dist/src/modules/adapters/shared.d.ts +1 -0
- package/dist/src/modules/adapters/shared.js +79 -0
- package/dist/src/modules/adapters/shared.js.map +1 -0
- package/dist/src/modules/adapters/types.d.ts +14 -0
- package/dist/src/modules/adapters/types.js +2 -0
- package/dist/src/modules/adapters/types.js.map +1 -0
- package/dist/src/modules/agents/definitions.d.ts +13 -0
- package/dist/src/modules/agents/definitions.js +169 -0
- package/dist/src/modules/agents/definitions.js.map +1 -0
- package/dist/src/modules/skills/definitions.d.ts +31 -0
- package/dist/src/modules/skills/definitions.js +32 -0
- package/dist/src/modules/skills/definitions.js.map +1 -0
- package/dist/src/shared/fs.d.ts +3 -0
- package/dist/src/shared/fs.js +24 -0
- package/dist/src/shared/fs.js.map +1 -0
- package/eslint.config.js +1 -0
- package/framework-mcp/dist/src/index.js +1 -1
- package/framework-mcp/dist/src/tools/control_plane/locking.js +64 -0
- package/framework-mcp/dist/src/tools/control_plane/registry.js +34 -0
- package/framework-mcp/dist/src/tools/definitions.js +46 -7
- package/framework-mcp/dist/src/tools/file_system/write_file.js +16 -2
- package/framework-mcp/dist/src/tools/index.js +5 -0
- package/framework-mcp/dist/src/tools/messaging/send_message.js +2 -4
- package/framework-mcp/dist/src/utils/metrics.js +38 -0
- package/framework-mcp/dist/src/utils/security.js +7 -3
- package/framework-mcp/dist/tests/tools/file_system/file_system_tools.test.js +147 -0
- package/framework-mcp/package.json +1 -1
- package/framework-mcp/src/index.ts +1 -1
- package/framework-mcp/src/tools/control_plane/locking.ts +77 -0
- package/framework-mcp/src/tools/control_plane/registry.ts +44 -0
- package/framework-mcp/src/tools/definitions.ts +46 -7
- package/framework-mcp/src/tools/file_system/write_file.ts +19 -2
- package/framework-mcp/src/tools/index.ts +6 -1
- package/framework-mcp/src/tools/messaging/send_message.ts +2 -3
- package/framework-mcp/src/utils/metrics.ts +53 -0
- package/framework-mcp/src/utils/security.ts +8 -3
- package/framework-mcp/tests/tools/file_system/file_system_tools.test.ts +164 -0
- package/framework-mcp/tsconfig.json +2 -1
- package/package.json +12 -11
- package/src/cli/adapters/types.ts +16 -0
- package/src/cli/adapters.ts +130 -156
- package/src/cli/commands/check.ts +61 -77
- package/src/cli/commands/init.ts +163 -312
- package/src/cli/commands/log.ts +1 -1
- package/src/cli/commands/memory.ts +3 -80
- package/src/cli/commands/orchestrate.ts +76 -90
- package/src/cli/index.ts +121 -29
- package/src/cli/utils/app.ts +3 -3
- package/src/cli/utils/config-schema.ts +48 -0
- package/src/cli/utils/fs.ts +10 -27
- package/src/cli/utils/memory.ts +143 -112
- package/src/cli/utils/pkg.ts +4 -4
- package/src/cli/utils/ui.ts +63 -0
- package/src/modules/adapters/antigravity-cli.ts +25 -0
- package/src/modules/adapters/claude.ts +36 -0
- package/src/modules/adapters/codex.ts +22 -0
- package/src/modules/adapters/cursor.ts +22 -0
- package/src/modules/adapters/gemini.ts +27 -0
- package/src/modules/adapters/grok.ts +20 -0
- package/src/modules/adapters/shared.ts +90 -0
- package/src/modules/adapters/types.ts +16 -0
- package/src/modules/agents/definitions.ts +182 -0
- package/src/modules/skills/definitions.ts +32 -0
- package/src/shared/fs.ts +25 -0
- package/.enderun/BRAIN_DASHBOARD.md +0 -46
- package/.enderun/STATUS.md +0 -61
- package/.enderun/agents/agent_army_schema.json +0 -101
- package/.enderun/agents/analyst.json +0 -32
- package/.enderun/agents/backend.json +0 -32
- package/.enderun/agents/database.json +0 -32
- package/.enderun/agents/devops.json +0 -32
- package/.enderun/agents/explorer.json +0 -32
- package/.enderun/agents/frontend.json +0 -32
- package/.enderun/agents/git.json +0 -32
- package/.enderun/agents/manager.json +0 -32
- package/.enderun/agents/mobile.json +0 -32
- package/.enderun/agents/native.json +0 -32
- package/.enderun/agents/quality.json +0 -32
- package/.enderun/agents/schema/agent-lifecycle-schema.json +0 -41
- package/.enderun/agents/security.json +0 -32
- package/.enderun/benchmarks/.gitkeep +0 -0
- package/.enderun/cli-commands.json +0 -76
- package/.enderun/config.json +0 -13
- package/.enderun/knowledge/ARCHITECTURE.md +0 -1
- package/.enderun/knowledge/SECURITY.md +0 -1
- package/.enderun/knowledge/SHIM_TEMPLATE.md +0 -36
- package/.enderun/knowledge/analyst_reference_guide.md +0 -31
- package/.enderun/knowledge/async_error_handling.md +0 -27
- package/.enderun/knowledge/backend_reference_guide.md +0 -165
- package/.enderun/knowledge/blueprint_driven_construction.md +0 -22
- package/.enderun/knowledge/context_boundary_rules.md +0 -57
- package/.enderun/knowledge/corporate-governance/analyst-contract-integrity-guide.md +0 -92
- package/.enderun/knowledge/corporate-governance/audit-logging-standard.md +0 -59
- package/.enderun/knowledge/corporate-governance/backend-high-risk-endpoint-guide.md +0 -125
- package/.enderun/knowledge/corporate-governance/branded-types-law.md +0 -77
- package/.enderun/knowledge/corporate-governance/contract-drift-detection-simulation.md +0 -92
- package/.enderun/knowledge/corporate-governance/corporate-governance-playbook.md +0 -89
- package/.enderun/knowledge/corporate-governance/corporate-project-kickoff-checklist.md +0 -56
- package/.enderun/knowledge/corporate-governance/corporate-project-kickoff-simulation.md +0 -144
- package/.enderun/knowledge/corporate-governance/corporate-project-scaffolding-sop.md +0 -103
- package/.enderun/knowledge/corporate-governance/domain-error-handling-standard.md +0 -75
- package/.enderun/knowledge/corporate-governance/frontend-high-risk-modal-guide.md +0 -211
- package/.enderun/knowledge/corporate-governance/governance-baseline-briefing-template.md +0 -54
- package/.enderun/knowledge/corporate-governance/high-risk-action-approval-flow-simulation.md +0 -167
- package/.enderun/knowledge/corporate-governance/high-risk-action-approval-flow.md +0 -29
- package/.enderun/knowledge/corporate-governance/high-risk-actions-managerapproval.md +0 -76
- package/.enderun/knowledge/corporate-governance/high-risk-security-modal-hermes-flow.md +0 -49
- package/.enderun/knowledge/corporate-governance/manager-first-30-days-guide.md +0 -112
- package/.enderun/knowledge/corporate-governance/manager-first-three-briefings.md +0 -79
- package/.enderun/knowledge/database_reference_guide.md +0 -38
- package/.enderun/knowledge/devops_reference_guide.md +0 -43
- package/.enderun/knowledge/documentation_ownership.md +0 -53
- package/.enderun/knowledge/eslint-standards.md +0 -63
- package/.enderun/knowledge/evaluation_engine.md +0 -26
- package/.enderun/knowledge/explorer_reference_guide.md +0 -34
- package/.enderun/knowledge/framework_vs_user_project_boundary.md +0 -52
- package/.enderun/knowledge/frontend_professionalization_guidelines.md +0 -108
- package/.enderun/knowledge/frontend_reference_guide.md +0 -64
- package/.enderun/knowledge/git_reference_guide.md +0 -51
- package/.enderun/knowledge/hermes_live_test_guidelines.md +0 -90
- package/.enderun/knowledge/hermes_protocol.md +0 -59
- package/.enderun/knowledge/legacy_onboarding.md +0 -18
- package/.enderun/knowledge/lessons-learned.md +0 -14
- package/.enderun/knowledge/manager_authority_audit_enforcement.md +0 -104
- package/.enderun/knowledge/manager_reference_guide.md +0 -55
- package/.enderun/knowledge/mobile_reference_guide.md +0 -35
- package/.enderun/knowledge/native_reference_guide.md +0 -34
- package/.enderun/knowledge/project_scaffold_guidelines.md +0 -110
- package/.enderun/knowledge/quality_reference_guide.md +0 -42
- package/.enderun/knowledge/reference_application_guidelines.md +0 -101
- package/.enderun/knowledge/responsive_design_standards.md +0 -27
- package/.enderun/knowledge/router_logic.md +0 -29
- package/.enderun/knowledge/security_reference_guide.md +0 -35
- package/.enderun/knowledge/token_economy_and_memory.md +0 -129
- package/.enderun/knowledge/zero_ui_library_policy.md +0 -13
- package/.enderun/logs/manager.json +0 -52
- package/.enderun/memory/BUSINESS_CONTEXT.md +0 -17
- package/.enderun/memory/DECISIONS.md +0 -24
- package/.enderun/memory/LESSONS_LEARNED.md +0 -12
- package/.enderun/memory/PATTERNS.md +0 -17
- package/.enderun/memory/PROJECT_MEMORY.md +0 -69
- package/.enderun/memory-graph/agent-contexts/analyst.json +0 -1
- package/.enderun/memory-graph/agent-contexts/backend.json +0 -1
- package/.enderun/memory-graph/agent-contexts/devops.json +0 -1
- package/.enderun/memory-graph/agent-contexts/explorer.json +0 -1
- package/.enderun/memory-graph/agent-contexts/frontend.json +0 -1
- package/.enderun/memory-graph/agent-contexts/git.json +0 -1
- package/.enderun/memory-graph/agent-contexts/manager.json +0 -1
- package/.enderun/memory-graph/agent-contexts/mobile.json +0 -1
- package/.enderun/memory-graph/agent-contexts/native.json +0 -1
- package/.enderun/memory-graph/agent-contexts/quality.json +0 -1
- package/.enderun/memory-graph/agent-contexts/security.json +0 -1
- package/.enderun/memory-graph/graph.json +0 -133
- package/.enderun/memory-graph/shared-facts.json +0 -46
- package/.enderun/monitoring/.gitkeep +0 -0
- package/.enderun/observability/AUDIT_LOG.md +0 -9
- package/.enderun/observability/METRICS.md +0 -10
- package/.enderun/observability/README.md +0 -19
- package/.enderun/observability/TRACE_LOG.md +0 -10
- package/.enderun/queue/README.md +0 -36
- package/.enderun/registry/agents.yaml +0 -69
- package/.enderun/skills/agent_handshake.md +0 -37
- package/.enderun/skills/multi_agent_coordination.md +0 -64
- package/.enderun/skills/subagent_lifecycle.md +0 -48
- package/CLAUDE.md +0 -21
- package/GEMINI.md +0 -24
- package/GROK.md +0 -20
- package/agent.md +0 -25
- package/dist/.keep +0 -1
- package/dist/tests/adapter.test.d.ts +0 -1
- package/dist/tests/adapter.test.js +0 -82
- package/dist/tests/adapter.test.js.map +0 -1
- package/dist/tests/gemini.test.d.ts +0 -1
- package/dist/tests/gemini.test.js +0 -39
- package/dist/tests/gemini.test.js.map +0 -1
- package/dist/tests/initial.test.d.ts +0 -1
- package/dist/tests/initial.test.js +0 -7
- package/dist/tests/initial.test.js.map +0 -1
- package/docs/project_analysis_report.md +0 -69
- package/framework-mcp/dist/index.js +0 -70
- package/framework-mcp/dist/tests/tools/file_system/replace_text.test.js +0 -68
- package/framework-mcp/dist/tools/definitions.js +0 -110
- package/framework-mcp/dist/tools/file_system/patch_file.js +0 -18
- package/framework-mcp/dist/tools/file_system/read_file.js +0 -7
- package/framework-mcp/dist/tools/file_system/replace_text.js +0 -31
- package/framework-mcp/dist/tools/file_system/write_file.js +0 -9
- package/framework-mcp/dist/tools/framework/get_status.js +0 -5
- package/framework-mcp/dist/tools/framework/orchestrate.js +0 -5
- package/framework-mcp/dist/tools/framework/update_contract_hash.js +0 -5
- package/framework-mcp/dist/tools/framework/update_memory.js +0 -8
- package/framework-mcp/dist/tools/index.js +0 -25
- package/framework-mcp/dist/tools/messaging/log_action.js +0 -22
- package/framework-mcp/dist/tools/messaging/send_message.js +0 -23
- package/framework-mcp/dist/tools/types.js +0 -1
- package/framework-mcp/dist/utils/cli.js +0 -20
- package/framework-mcp/dist/utils/security.js +0 -53
- package/framework-mcp/node_modules/@types/node/LICENSE +0 -21
- package/framework-mcp/node_modules/@types/node/README.md +0 -15
- package/framework-mcp/node_modules/@types/node/assert/strict.d.ts +0 -111
- package/framework-mcp/node_modules/@types/node/assert.d.ts +0 -1078
- package/framework-mcp/node_modules/@types/node/async_hooks.d.ts +0 -603
- package/framework-mcp/node_modules/@types/node/buffer.buffer.d.ts +0 -472
- package/framework-mcp/node_modules/@types/node/buffer.d.ts +0 -1934
- package/framework-mcp/node_modules/@types/node/child_process.d.ts +0 -1476
- package/framework-mcp/node_modules/@types/node/cluster.d.ts +0 -578
- package/framework-mcp/node_modules/@types/node/compatibility/disposable.d.ts +0 -14
- package/framework-mcp/node_modules/@types/node/compatibility/index.d.ts +0 -9
- package/framework-mcp/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
- package/framework-mcp/node_modules/@types/node/compatibility/iterators.d.ts +0 -20
- package/framework-mcp/node_modules/@types/node/console.d.ts +0 -452
- package/framework-mcp/node_modules/@types/node/constants.d.ts +0 -21
- package/framework-mcp/node_modules/@types/node/crypto.d.ts +0 -4545
- package/framework-mcp/node_modules/@types/node/dgram.d.ts +0 -600
- package/framework-mcp/node_modules/@types/node/diagnostics_channel.d.ts +0 -578
- package/framework-mcp/node_modules/@types/node/dns/promises.d.ts +0 -503
- package/framework-mcp/node_modules/@types/node/dns.d.ts +0 -923
- package/framework-mcp/node_modules/@types/node/domain.d.ts +0 -170
- package/framework-mcp/node_modules/@types/node/events.d.ts +0 -976
- package/framework-mcp/node_modules/@types/node/fs/promises.d.ts +0 -1295
- package/framework-mcp/node_modules/@types/node/fs.d.ts +0 -4461
- package/framework-mcp/node_modules/@types/node/globals.d.ts +0 -172
- package/framework-mcp/node_modules/@types/node/globals.typedarray.d.ts +0 -38
- package/framework-mcp/node_modules/@types/node/http.d.ts +0 -2089
- package/framework-mcp/node_modules/@types/node/http2.d.ts +0 -2721
- package/framework-mcp/node_modules/@types/node/https.d.ts +0 -579
- package/framework-mcp/node_modules/@types/node/index.d.ts +0 -97
- package/framework-mcp/node_modules/@types/node/inspector.d.ts +0 -253
- package/framework-mcp/node_modules/@types/node/inspector.generated.d.ts +0 -4052
- package/framework-mcp/node_modules/@types/node/module.d.ts +0 -891
- package/framework-mcp/node_modules/@types/node/net.d.ts +0 -1076
- package/framework-mcp/node_modules/@types/node/os.d.ts +0 -506
- package/framework-mcp/node_modules/@types/node/package.json +0 -145
- package/framework-mcp/node_modules/@types/node/path.d.ts +0 -200
- package/framework-mcp/node_modules/@types/node/perf_hooks.d.ts +0 -968
- package/framework-mcp/node_modules/@types/node/process.d.ts +0 -2084
- package/framework-mcp/node_modules/@types/node/punycode.d.ts +0 -117
- package/framework-mcp/node_modules/@types/node/querystring.d.ts +0 -152
- package/framework-mcp/node_modules/@types/node/readline/promises.d.ts +0 -161
- package/framework-mcp/node_modules/@types/node/readline.d.ts +0 -594
- package/framework-mcp/node_modules/@types/node/repl.d.ts +0 -428
- package/framework-mcp/node_modules/@types/node/sea.d.ts +0 -153
- package/framework-mcp/node_modules/@types/node/sqlite.d.ts +0 -721
- package/framework-mcp/node_modules/@types/node/stream/consumers.d.ts +0 -38
- package/framework-mcp/node_modules/@types/node/stream/promises.d.ts +0 -90
- package/framework-mcp/node_modules/@types/node/stream/web.d.ts +0 -622
- package/framework-mcp/node_modules/@types/node/stream.d.ts +0 -1687
- package/framework-mcp/node_modules/@types/node/string_decoder.d.ts +0 -67
- package/framework-mcp/node_modules/@types/node/test.d.ts +0 -2163
- package/framework-mcp/node_modules/@types/node/timers/promises.d.ts +0 -108
- package/framework-mcp/node_modules/@types/node/timers.d.ts +0 -287
- package/framework-mcp/node_modules/@types/node/tls.d.ts +0 -1319
- package/framework-mcp/node_modules/@types/node/trace_events.d.ts +0 -197
- package/framework-mcp/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -468
- package/framework-mcp/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -34
- package/framework-mcp/node_modules/@types/node/ts5.6/index.d.ts +0 -97
- package/framework-mcp/node_modules/@types/node/tty.d.ts +0 -208
- package/framework-mcp/node_modules/@types/node/url.d.ts +0 -984
- package/framework-mcp/node_modules/@types/node/util.d.ts +0 -2606
- package/framework-mcp/node_modules/@types/node/v8.d.ts +0 -920
- package/framework-mcp/node_modules/@types/node/vm.d.ts +0 -1000
- package/framework-mcp/node_modules/@types/node/wasi.d.ts +0 -181
- package/framework-mcp/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -34
- package/framework-mcp/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
- package/framework-mcp/node_modules/@types/node/web-globals/events.d.ts +0 -97
- package/framework-mcp/node_modules/@types/node/web-globals/fetch.d.ts +0 -55
- package/framework-mcp/node_modules/@types/node/web-globals/navigator.d.ts +0 -22
- package/framework-mcp/node_modules/@types/node/web-globals/storage.d.ts +0 -24
- package/framework-mcp/node_modules/@types/node/worker_threads.d.ts +0 -784
- package/framework-mcp/node_modules/@types/node/zlib.d.ts +0 -747
- package/framework-mcp/node_modules/typescript/LICENSE.txt +0 -55
- package/framework-mcp/node_modules/typescript/README.md +0 -50
- package/framework-mcp/node_modules/typescript/SECURITY.md +0 -41
- package/framework-mcp/node_modules/typescript/ThirdPartyNoticeText.txt +0 -193
- package/framework-mcp/node_modules/typescript/bin/tsc +0 -2
- package/framework-mcp/node_modules/typescript/bin/tsserver +0 -2
- package/framework-mcp/node_modules/typescript/lib/_tsc.js +0 -133818
- package/framework-mcp/node_modules/typescript/lib/_tsserver.js +0 -659
- package/framework-mcp/node_modules/typescript/lib/_typingsInstaller.js +0 -222
- package/framework-mcp/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/de/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/es/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/it/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/lib.d.ts +0 -22
- package/framework-mcp/node_modules/typescript/lib/lib.decorators.d.ts +0 -384
- package/framework-mcp/node_modules/typescript/lib/lib.decorators.legacy.d.ts +0 -22
- package/framework-mcp/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +0 -41
- package/framework-mcp/node_modules/typescript/lib/lib.dom.d.ts +0 -39429
- package/framework-mcp/node_modules/typescript/lib/lib.dom.iterable.d.ts +0 -571
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.collection.d.ts +0 -147
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.core.d.ts +0 -597
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.d.ts +0 -28
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.generator.d.ts +0 -77
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.iterable.d.ts +0 -605
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.promise.d.ts +0 -81
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.proxy.d.ts +0 -128
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.reflect.d.ts +0 -144
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.symbol.d.ts +0 -46
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -326
- package/framework-mcp/node_modules/typescript/lib/lib.es2016.array.include.d.ts +0 -116
- package/framework-mcp/node_modules/typescript/lib/lib.es2016.d.ts +0 -21
- package/framework-mcp/node_modules/typescript/lib/lib.es2016.full.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.es2016.intl.d.ts +0 -31
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +0 -21
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.d.ts +0 -26
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.date.d.ts +0 -31
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.full.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.intl.d.ts +0 -44
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.object.d.ts +0 -49
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +0 -135
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.string.d.ts +0 -45
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +0 -53
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -77
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +0 -53
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.intl.d.ts +0 -83
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.promise.d.ts +0 -30
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.regexp.d.ts +0 -37
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.array.d.ts +0 -79
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.intl.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.object.d.ts +0 -33
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.string.d.ts +0 -37
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.symbol.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.bigint.d.ts +0 -765
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.d.ts +0 -27
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.date.d.ts +0 -42
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.intl.d.ts +0 -474
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.number.d.ts +0 -28
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.promise.d.ts +0 -47
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +0 -99
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.string.d.ts +0 -44
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -41
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.intl.d.ts +0 -166
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.promise.d.ts +0 -48
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.string.d.ts +0 -33
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.weakref.d.ts +0 -78
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.array.d.ts +0 -121
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.d.ts +0 -25
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.error.d.ts +0 -75
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.intl.d.ts +0 -145
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.object.d.ts +0 -26
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.regexp.d.ts +0 -39
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.string.d.ts +0 -25
- package/framework-mcp/node_modules/typescript/lib/lib.es2023.array.d.ts +0 -924
- package/framework-mcp/node_modules/typescript/lib/lib.es2023.collection.d.ts +0 -21
- package/framework-mcp/node_modules/typescript/lib/lib.es2023.d.ts +0 -22
- package/framework-mcp/node_modules/typescript/lib/lib.es2023.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2023.intl.d.ts +0 -56
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +0 -65
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.collection.d.ts +0 -29
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.d.ts +0 -26
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.object.d.ts +0 -29
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.promise.d.ts +0 -35
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.regexp.d.ts +0 -25
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +0 -68
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.string.d.ts +0 -29
- package/framework-mcp/node_modules/typescript/lib/lib.es5.d.ts +0 -4601
- package/framework-mcp/node_modules/typescript/lib/lib.es6.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.array.d.ts +0 -35
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.collection.d.ts +0 -96
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.d.ts +0 -29
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.decorators.d.ts +0 -28
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.disposable.d.ts +0 -193
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.error.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.float16.d.ts +0 -445
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.intl.d.ts +0 -21
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.iterator.d.ts +0 -148
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.promise.d.ts +0 -34
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +0 -25
- package/framework-mcp/node_modules/typescript/lib/lib.scripthost.d.ts +0 -322
- package/framework-mcp/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +0 -41
- package/framework-mcp/node_modules/typescript/lib/lib.webworker.d.ts +0 -13150
- package/framework-mcp/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.webworker.iterable.d.ts +0 -340
- package/framework-mcp/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/tsc.js +0 -8
- package/framework-mcp/node_modules/typescript/lib/tsserver.js +0 -8
- package/framework-mcp/node_modules/typescript/lib/tsserverlibrary.d.ts +0 -17
- package/framework-mcp/node_modules/typescript/lib/tsserverlibrary.js +0 -21
- package/framework-mcp/node_modules/typescript/lib/typesMap.json +0 -497
- package/framework-mcp/node_modules/typescript/lib/typescript.d.ts +0 -11437
- package/framework-mcp/node_modules/typescript/lib/typescript.js +0 -200276
- package/framework-mcp/node_modules/typescript/lib/typingsInstaller.js +0 -8
- package/framework-mcp/node_modules/typescript/lib/watchGuard.js +0 -53
- package/framework-mcp/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/package.json +0 -120
- package/framework-mcp/node_modules/undici-types/LICENSE +0 -21
- package/framework-mcp/node_modules/undici-types/README.md +0 -6
- package/framework-mcp/node_modules/undici-types/agent.d.ts +0 -31
- package/framework-mcp/node_modules/undici-types/api.d.ts +0 -43
- package/framework-mcp/node_modules/undici-types/balanced-pool.d.ts +0 -29
- package/framework-mcp/node_modules/undici-types/cache.d.ts +0 -36
- package/framework-mcp/node_modules/undici-types/client.d.ts +0 -108
- package/framework-mcp/node_modules/undici-types/connector.d.ts +0 -34
- package/framework-mcp/node_modules/undici-types/content-type.d.ts +0 -21
- package/framework-mcp/node_modules/undici-types/cookies.d.ts +0 -28
- package/framework-mcp/node_modules/undici-types/diagnostics-channel.d.ts +0 -66
- package/framework-mcp/node_modules/undici-types/dispatcher.d.ts +0 -256
- package/framework-mcp/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -21
- package/framework-mcp/node_modules/undici-types/errors.d.ts +0 -149
- package/framework-mcp/node_modules/undici-types/eventsource.d.ts +0 -61
- package/framework-mcp/node_modules/undici-types/fetch.d.ts +0 -209
- package/framework-mcp/node_modules/undici-types/file.d.ts +0 -39
- package/framework-mcp/node_modules/undici-types/filereader.d.ts +0 -54
- package/framework-mcp/node_modules/undici-types/formdata.d.ts +0 -108
- package/framework-mcp/node_modules/undici-types/global-dispatcher.d.ts +0 -9
- package/framework-mcp/node_modules/undici-types/global-origin.d.ts +0 -7
- package/framework-mcp/node_modules/undici-types/handlers.d.ts +0 -15
- package/framework-mcp/node_modules/undici-types/header.d.ts +0 -4
- package/framework-mcp/node_modules/undici-types/index.d.ts +0 -71
- package/framework-mcp/node_modules/undici-types/interceptors.d.ts +0 -17
- package/framework-mcp/node_modules/undici-types/mock-agent.d.ts +0 -50
- package/framework-mcp/node_modules/undici-types/mock-client.d.ts +0 -25
- package/framework-mcp/node_modules/undici-types/mock-errors.d.ts +0 -12
- package/framework-mcp/node_modules/undici-types/mock-interceptor.d.ts +0 -93
- package/framework-mcp/node_modules/undici-types/mock-pool.d.ts +0 -25
- package/framework-mcp/node_modules/undici-types/package.json +0 -55
- package/framework-mcp/node_modules/undici-types/patch.d.ts +0 -33
- package/framework-mcp/node_modules/undici-types/pool-stats.d.ts +0 -19
- package/framework-mcp/node_modules/undici-types/pool.d.ts +0 -39
- package/framework-mcp/node_modules/undici-types/proxy-agent.d.ts +0 -28
- package/framework-mcp/node_modules/undici-types/readable.d.ts +0 -65
- package/framework-mcp/node_modules/undici-types/retry-agent.d.ts +0 -8
- package/framework-mcp/node_modules/undici-types/retry-handler.d.ts +0 -116
- package/framework-mcp/node_modules/undici-types/util.d.ts +0 -18
- package/framework-mcp/node_modules/undici-types/webidl.d.ts +0 -228
- package/framework-mcp/node_modules/undici-types/websocket.d.ts +0 -150
- package/framework-mcp/tests/tools/file_system/replace_text.test.js +0 -68
- package/framework-mcp/tests/tools/file_system/replace_text.test.ts +0 -77
- package/panda.config.ts +0 -100
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
# Corporate Project Kickoff Simulation
|
|
2
|
-
|
|
3
|
-
**Purpose**: This document provides a realistic, step-by-step simulation of how @manager should conduct the first sessions when a user starts a new corporate/enterprise project using Agent Enderun.
|
|
4
|
-
|
|
5
|
-
**Scenario**: A company wants to build an internal "Enterprise User & Access Management" platform. The project will have normal CRUD operations plus high-risk administrative actions (role elevation, system configuration changes).
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Session 1 – Initial Contact & Governance Baseline
|
|
10
|
-
|
|
11
|
-
**User**:
|
|
12
|
-
"Hi, I need to build a user management system for our company. It should support roles like User, Admin, and SuperAdmin. Admins should be able to promote users, but promoting to SuperAdmin should be very controlled."
|
|
13
|
-
|
|
14
|
-
**@manager (after loading all corporate-governance knowledge)**:
|
|
15
|
-
|
|
16
|
-
Thank you. Before we discuss any features or technology, we need to establish the governance foundation for this project.
|
|
17
|
-
|
|
18
|
-
This appears to be a corporate/enterprise project involving privileged operations. Therefore, we will follow Agent Enderun’s corporate standards from day one.
|
|
19
|
-
|
|
20
|
-
The non-negotiable pillars are:
|
|
21
|
-
|
|
22
|
-
1. **Branded Types** for all identifiers (see `branded-types-law.md`)
|
|
23
|
-
2. **High-Risk Administrative Actions** protected by explicit `managerApproval` + Hermes coordination (see `high-risk-actions-managerapproval.md`)
|
|
24
|
-
3. **Contract-first development** — types before implementation
|
|
25
|
-
4. **Audit logging** for all privileged operations (see `audit-logging-standard.md`)
|
|
26
|
-
5. **Typed Domain Errors** instead of generic exceptions (see `domain-error-handling-standard.md`)
|
|
27
|
-
|
|
28
|
-
These standards exist to make the system safe, auditable, and maintainable at scale.
|
|
29
|
-
|
|
30
|
-
I have prepared the **Corporate Project Kickoff Checklist**. We will go through the relevant parts together over the next sessions.
|
|
31
|
-
|
|
32
|
-
Do you accept these operating rules for this project?
|
|
33
|
-
|
|
34
|
-
**User**:
|
|
35
|
-
"Yes, that makes sense. We need proper controls especially around SuperAdmin promotions."
|
|
36
|
-
|
|
37
|
-
**@manager**:
|
|
38
|
-
Excellent. Acknowledgment recorded.
|
|
39
|
-
|
|
40
|
-
We will now begin Phase 0 and Phase 1 of the Corporate Project Scaffolding SOP.
|
|
41
|
-
|
|
42
|
-
First action: We will establish the type foundation before writing any feature code.
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## Session 2 – Contract & Type Foundation
|
|
47
|
-
|
|
48
|
-
**@manager** (briefing to @backend and @frontend):
|
|
49
|
-
|
|
50
|
-
Team,
|
|
51
|
-
|
|
52
|
-
We are now in Phase 1 of the Corporate Project Scaffolding SOP.
|
|
53
|
-
|
|
54
|
-
Required immediate deliverables:
|
|
55
|
-
|
|
56
|
-
**@backend**:
|
|
57
|
-
- Create `apps/backend/src/types/brand.ts`
|
|
58
|
-
- Create `apps/backend/src/types/identifiers.ts` with `UserID`, `RoleID`, `ApprovalID`, `TraceID`
|
|
59
|
-
- Create `apps/backend/src/types/approval.ts` with `ManagerApproval` and `HighRiskActionPayload`
|
|
60
|
-
- Create `apps/backend/src/types/errors.ts` including `HighRiskActionRequiresApprovalError`
|
|
61
|
-
- Initialize `apps/backend/contract.version.json`
|
|
62
|
-
|
|
63
|
-
**@frontend**:
|
|
64
|
-
- Create matching type copies in `apps/web/src/types/api-contracts.ts`
|
|
65
|
-
- Begin designing the base `HighRiskSecurityModal` component structure (implementation will come in Phase 2)
|
|
66
|
-
|
|
67
|
-
**@analyst**:
|
|
68
|
-
- Establish contract integrity verification process
|
|
69
|
-
|
|
70
|
-
No backend routes or frontend pages may be implemented until these contracts are defined and approved by me.
|
|
71
|
-
|
|
72
|
-
Please confirm when the type foundation is ready for review.
|
|
73
|
-
|
|
74
|
-
---
|
|
75
|
-
|
|
76
|
-
## Session 3 – High-Risk Governance Infrastructure
|
|
77
|
-
|
|
78
|
-
**User**:
|
|
79
|
-
"We need to implement the 'Promote to SuperAdmin' feature soon."
|
|
80
|
-
|
|
81
|
-
**@manager**:
|
|
82
|
-
|
|
83
|
-
Understood. However, according to the Corporate Project Scaffolding SOP (Phase 2), we must build the high-risk governance infrastructure **before** implementing any privileged feature.
|
|
84
|
-
|
|
85
|
-
This means:
|
|
86
|
-
|
|
87
|
-
- @backend must implement strict validation that rejects any role elevation request unless `isHighRiskAdminAction: true` + valid `managerApproval` is present.
|
|
88
|
-
- @frontend must build a prominent, non-dismissible Security Modal that forces the user to provide a reason before initiating the Hermes briefing to me (@manager).
|
|
89
|
-
- Audit logging must be designed for every high-risk action (see `audit-logging-standard.md`).
|
|
90
|
-
|
|
91
|
-
Only after these two layers exist will we proceed to implement the actual promotion feature.
|
|
92
|
-
|
|
93
|
-
@backend and @frontend — I am now issuing the official briefing for Phase 2.
|
|
94
|
-
|
|
95
|
-
Please reference:
|
|
96
|
-
- `high-risk-actions-managerapproval.md`
|
|
97
|
-
- `high-risk-security-modal-hermes-flow.md`
|
|
98
|
-
- `domain-error-handling-standard.md`
|
|
99
|
-
|
|
100
|
-
Confirm when the infrastructure design is ready for my approval.
|
|
101
|
-
|
|
102
|
-
---
|
|
103
|
-
|
|
104
|
-
## Session 4 – Delegation Example (After Infrastructure Approval)
|
|
105
|
-
|
|
106
|
-
**@manager** (to @backend):
|
|
107
|
-
|
|
108
|
-
@backend,
|
|
109
|
-
|
|
110
|
-
The high-risk infrastructure has been approved.
|
|
111
|
-
|
|
112
|
-
You may now implement the following:
|
|
113
|
-
|
|
114
|
-
**Feature**: `POST /api/v1/users/:id/role`
|
|
115
|
-
|
|
116
|
-
Requirements:
|
|
117
|
-
- Must use branded types only (`UserID`, `RoleID`, `ApprovalID`)
|
|
118
|
-
- Must reject the request with `HighRiskActionRequiresApprovalError` if the high-risk payload is missing or invalid
|
|
119
|
-
- Must create an audit log entry using the `AuditLog` domain (see `audit-logging-standard.md`)
|
|
120
|
-
- Must follow the contract defined in `apps/backend/src/types/api-contracts.ts`
|
|
121
|
-
|
|
122
|
-
Reference files:
|
|
123
|
-
- `high-risk-actions-managerapproval.md`
|
|
124
|
-
- `branded-types-law.md`
|
|
125
|
-
- `domain-error-handling-standard.md`
|
|
126
|
-
|
|
127
|
-
Do not proceed with any other privileged features until this endpoint is complete and reviewed.
|
|
128
|
-
|
|
129
|
-
---
|
|
130
|
-
|
|
131
|
-
## Key Behaviors Demonstrated in This Simulation
|
|
132
|
-
|
|
133
|
-
- @manager never allows feature work before governance foundation
|
|
134
|
-
- @manager consistently references the knowledge files
|
|
135
|
-
- @manager uses the Corporate Project Kickoff Checklist and Scaffolding SOP as the operating process
|
|
136
|
-
- @manager educates the user while protecting the standards
|
|
137
|
-
- All delegations are precise and reference the corporate governance documents
|
|
138
|
-
|
|
139
|
-
This is the expected behavior for any corporate project.
|
|
140
|
-
|
|
141
|
-
---
|
|
142
|
-
|
|
143
|
-
**Note for Agents**:
|
|
144
|
-
When conducting real sessions, adapt the language but never skip the governance steps. Shortcuts at the beginning create expensive problems later.
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
# Corporate Enterprise Project Scaffolding SOP (for @manager)
|
|
2
|
-
|
|
3
|
-
**Version:** 1.1
|
|
4
|
-
**Purpose**: This is the mandatory standard process that @manager must follow when a user initiates a new project with corporate, enterprise, or regulated characteristics.
|
|
5
|
-
|
|
6
|
-
**Core Philosophy**:
|
|
7
|
-
Agent Enderun does **not** ship pre-built reference applications inside `apps/`.
|
|
8
|
-
Our value is in internalizing governance standards into the agents so that we can **guide the user** to build correctly, step by step, from the very first file.
|
|
9
|
-
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
## Phase 0 – Discovery & Governance Baseline (Non-Negotiable First Step)
|
|
13
|
-
|
|
14
|
-
Before any code is written or any feature is discussed in detail:
|
|
15
|
-
|
|
16
|
-
1. **Load Corporate Governance Knowledge** (mandatory reads):
|
|
17
|
-
- `branded-types-law.md`
|
|
18
|
-
- `high-risk-actions-managerapproval.md`
|
|
19
|
-
- `high-risk-security-modal-hermes-flow.md`
|
|
20
|
-
- `audit-logging-standard.md`
|
|
21
|
-
- `governance-baseline-briefing-template.md`
|
|
22
|
-
- `audit-logging-standard.md` (when created)
|
|
23
|
-
|
|
24
|
-
2. **Assess Project Context**:
|
|
25
|
-
- Does the project involve multiple users, roles, permissions, or privileged operations?
|
|
26
|
-
- Is there any requirement for audit trails, compliance, or high-risk administrative actions?
|
|
27
|
-
- Default assumption: Treat every new project as enterprise-grade unless the user explicitly states it is a simple internal prototype with no privileged actions.
|
|
28
|
-
|
|
29
|
-
3. **Establish the Governance Contract** (before any technical discussion):
|
|
30
|
-
- Clearly communicate that the project will follow Agent Enderun corporate standards.
|
|
31
|
-
- Introduce the non-negotiable pillars:
|
|
32
|
-
- Branded Types for all domain identifiers
|
|
33
|
-
- High-risk actions protected exclusively by `managerApproval` + Hermes coordination
|
|
34
|
-
- Contract-first development (types before implementation)
|
|
35
|
-
- Comprehensive audit logging for privileged operations
|
|
36
|
-
- Obtain explicit user acknowledgment.
|
|
37
|
-
|
|
38
|
-
4. **Document the Baseline Decision** in `docs/architecture/decisions/`.
|
|
39
|
-
|
|
40
|
-
**Rule**: No feature work, no architecture discussion, and no delegation may begin until Phase 0 is complete and acknowledged.
|
|
41
|
-
|
|
42
|
-
---
|
|
43
|
-
|
|
44
|
-
## Phase 1 – Foundation Layer (Contracts Before Any Implementation)
|
|
45
|
-
|
|
46
|
-
1. **Create the Type System First** (`apps/backend/src/types`):
|
|
47
|
-
- `brand.ts` – Generic `Brand<T, Name>` utility
|
|
48
|
-
- `identifiers.ts` – `UserID`, `RoleID`, `ApprovalID`, `TraceID`, etc.
|
|
49
|
-
- `approval.ts` – `ManagerApproval` and `HighRiskActionPayload`
|
|
50
|
-
- `errors.ts` – DomainError base + concrete errors (including `HighRiskActionRequiresApprovalError`)
|
|
51
|
-
- `user.ts` / `role.ts` – Core domain entities
|
|
52
|
-
- `api-contracts.ts` – Initial request/response shapes for the first feature
|
|
53
|
-
|
|
54
|
-
2. **Initialize Contract Versioning**:
|
|
55
|
-
- Create `apps/backend/contract.version.json` with proper MAJOR.MINOR version and hash.
|
|
56
|
-
|
|
57
|
-
3. **Brief Supporting Agents**:
|
|
58
|
-
- Brief `@analyst` to establish contract integrity verification process.
|
|
59
|
-
- Brief `@frontend` to create parallel type copies and the base Security Modal component.
|
|
60
|
-
|
|
61
|
-
**Strict Rule**: No backend route, no React component, and no database schema may be implemented until the relevant contracts are defined and approved by @manager.
|
|
62
|
-
|
|
63
|
-
---
|
|
64
|
-
|
|
65
|
-
## Phase 2 – High-Risk Governance Infrastructure (Before Any Privileged Feature)
|
|
66
|
-
|
|
67
|
-
If the project will contain user/role management, configuration changes, or any privileged operations:
|
|
68
|
-
|
|
69
|
-
1. Design and document the complete `managerApproval` validation flow with `@backend`.
|
|
70
|
-
2. Design and implement the Security Modal + Hermes briefing user flow with `@frontend`.
|
|
71
|
-
3. Ensure both specialist agents have explicit instructions in their briefings referencing the corporate governance knowledge files.
|
|
72
|
-
4. Verify that `@backend` will reject any high-risk request lacking the proper payload, and that `@frontend` will never bypass the modal.
|
|
73
|
-
|
|
74
|
-
Only after these two infrastructure layers exist may actual feature development for privileged areas begin.
|
|
75
|
-
|
|
76
|
-
---
|
|
77
|
-
|
|
78
|
-
## Phase 3 – Feature Development Under Strict Governance
|
|
79
|
-
|
|
80
|
-
When delegating any work to `@backend` or `@frontend`:
|
|
81
|
-
|
|
82
|
-
The briefing message **must** include:
|
|
83
|
-
- Exact path to the contract types for this feature.
|
|
84
|
-
- Classification of whether the feature contains high-risk actions.
|
|
85
|
-
- Explicit references to the relevant files in `.enderun/knowledge/corporate-governance/`.
|
|
86
|
-
- Requirement to notify @manager before implementing any high-risk path.
|
|
87
|
-
- Mandate to produce ADR documentation for any new governance decisions.
|
|
88
|
-
|
|
89
|
-
After delivery:
|
|
90
|
-
- Require `@analyst` to perform contract alignment verification.
|
|
91
|
-
- Require documentation of the implementation in the project’s decision records.
|
|
92
|
-
|
|
93
|
-
---
|
|
94
|
-
|
|
95
|
-
## Phase 4 – Continuous Enforcement & Education
|
|
96
|
-
|
|
97
|
-
- At the start of every session, re-read the corporate governance knowledge files.
|
|
98
|
-
- Any proposal to “add governance later” or bypass standards must be treated as a process violation and rejected.
|
|
99
|
-
- @manager is responsible for continuously educating the user and the specialist agents on the standards throughout the lifetime of the project.
|
|
100
|
-
|
|
101
|
-
---
|
|
102
|
-
|
|
103
|
-
**This SOP is the primary mechanism by which Agent Enderun scales enterprise discipline without shipping example code.**
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
# Domain Error Handling & Typed Errors Standard
|
|
2
|
-
|
|
3
|
-
**Applies to**: All backend and shared contract code in enterprise projects using Agent Enderun.
|
|
4
|
-
|
|
5
|
-
## Purpose
|
|
6
|
-
In large-scale corporate systems, generic `Error` or string-based error messages lead to fragile code, poor debugging, and insecure error handling. We enforce a typed, domain-aware error system.
|
|
7
|
-
|
|
8
|
-
## Core Principles
|
|
9
|
-
|
|
10
|
-
1. Every domain error must be represented by a dedicated class that extends a base `DomainError`.
|
|
11
|
-
2. Errors must carry machine-readable codes, not just human messages.
|
|
12
|
-
3. Errors must be serializable in a consistent, safe format for API responses.
|
|
13
|
-
4. Never use `throw new Error("something went wrong")` in production business logic.
|
|
14
|
-
|
|
15
|
-
## Standard Error Hierarchy
|
|
16
|
-
|
|
17
|
-
```ts
|
|
18
|
-
// apps/backend/src/types/errors.ts
|
|
19
|
-
|
|
20
|
-
export abstract class DomainError extends Error {
|
|
21
|
-
abstract readonly code: string;
|
|
22
|
-
abstract readonly statusCode: number;
|
|
23
|
-
readonly details?: Record<string, unknown>;
|
|
24
|
-
|
|
25
|
-
constructor(message: string, details?: Record<string, unknown>) {
|
|
26
|
-
super(message);
|
|
27
|
-
this.details = details;
|
|
28
|
-
Object.setPrototypeOf(this, new.target.prototype);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
toJSON() {
|
|
32
|
-
return {
|
|
33
|
-
error: {
|
|
34
|
-
code: this.code,
|
|
35
|
-
message: this.message,
|
|
36
|
-
details: this.details,
|
|
37
|
-
},
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
// Example concrete errors
|
|
43
|
-
export class UserNotFoundError extends DomainError {
|
|
44
|
-
readonly code = 'USER_NOT_FOUND';
|
|
45
|
-
readonly statusCode = 404;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
export class InsufficientPermissionsError extends DomainError {
|
|
49
|
-
readonly code = 'INSUFFICIENT_PERMISSIONS';
|
|
50
|
-
readonly statusCode = 403;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
export class HighRiskActionRequiresApprovalError extends DomainError {
|
|
54
|
-
readonly code = 'HIGH_RISK_ACTION_REQUIRES_APPROVAL';
|
|
55
|
-
readonly statusCode = 403;
|
|
56
|
-
}
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
## Usage Rules
|
|
60
|
-
|
|
61
|
-
- Business logic must throw specific domain errors, never generic ones.
|
|
62
|
-
- API layer (Fastify error handler) converts `DomainError` instances into safe JSON responses.
|
|
63
|
-
- Never expose stack traces or internal details to clients.
|
|
64
|
-
- Frontend must be able to handle known error codes and show appropriate user-facing messages.
|
|
65
|
-
|
|
66
|
-
## Integration with High-Risk Governance
|
|
67
|
-
|
|
68
|
-
When a high-risk action is attempted without proper `managerApproval`, the backend **must** throw `HighRiskActionRequiresApprovalError`. This error code is then used by the frontend to trigger the security modal flow.
|
|
69
|
-
|
|
70
|
-
## Enforcement
|
|
71
|
-
|
|
72
|
-
- `@backend` must reject any implementation that uses raw `Error` or `throw new Error(...)` for domain cases.
|
|
73
|
-
- `@analyst` will periodically scan for anti-patterns using static analysis.
|
|
74
|
-
|
|
75
|
-
This standard ensures consistent, safe, and debuggable error handling across the entire system.
|
|
@@ -1,211 +0,0 @@
|
|
|
1
|
-
# Security Modal + Hermes Briefing Component Implementation Guide (@frontend)
|
|
2
|
-
|
|
3
|
-
**Applies to**: Any UI flow that can trigger high-risk administrative actions.
|
|
4
|
-
|
|
5
|
-
**Goal**: Provide @frontend with a concrete, reusable, and governance-compliant pattern using Panda CSS and proper state management.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## 1. Component Architecture (Recommended)
|
|
10
|
-
|
|
11
|
-
```
|
|
12
|
-
apps/web/src/components/ui/
|
|
13
|
-
├── HighRiskSecurityModal/
|
|
14
|
-
│ ├── HighRiskSecurityModal.tsx
|
|
15
|
-
│ ├── HighRiskSecurityModal.types.ts
|
|
16
|
-
│ └── HighRiskSecurityModal.styles.ts (Panda CSS)
|
|
17
|
-
├── hooks/
|
|
18
|
-
│ └── useHighRiskApproval.ts (Hermes briefing logic)
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## 2. Core Types
|
|
24
|
-
|
|
25
|
-
```ts
|
|
26
|
-
// HighRiskSecurityModal.types.ts
|
|
27
|
-
import { ManagerApproval, TraceID } from '../../../types/api-contracts';
|
|
28
|
-
|
|
29
|
-
export interface HighRiskActionContext {
|
|
30
|
-
actionType: string; // e.g. "PROMOTE_TO_SUPERADMIN"
|
|
31
|
-
targetId: string;
|
|
32
|
-
targetDescription: string;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
export interface HighRiskApprovalResult {
|
|
36
|
-
approved: boolean;
|
|
37
|
-
managerApproval?: ManagerApproval;
|
|
38
|
-
}
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
---
|
|
42
|
-
|
|
43
|
-
## 3. Hook: useHighRiskApproval (Hermes Coordination)
|
|
44
|
-
|
|
45
|
-
```ts
|
|
46
|
-
// hooks/useHighRiskApproval.ts
|
|
47
|
-
|
|
48
|
-
export function useHighRiskApproval() {
|
|
49
|
-
const [status, setStatus] = useState<'idle' | 'awaiting_manager' | 'approved' | 'rejected'>('idle');
|
|
50
|
-
const [approval, setApproval] = useState<ManagerApproval | null>(null);
|
|
51
|
-
|
|
52
|
-
const requestApproval = async (context: HighRiskActionContext, reason: string) => {
|
|
53
|
-
setStatus('awaiting_manager');
|
|
54
|
-
|
|
55
|
-
// In real implementation, this sends a Hermes message to @manager
|
|
56
|
-
const hermesMessage = {
|
|
57
|
-
type: 'high_risk_approval_request',
|
|
58
|
-
traceId: generateTraceId() as TraceID,
|
|
59
|
-
payload: {
|
|
60
|
-
action: context.actionType,
|
|
61
|
-
targetId: context.targetId,
|
|
62
|
-
reason,
|
|
63
|
-
},
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
// Simulated Hermes round-trip (in real system this would be async via MCP/tools)
|
|
67
|
-
const response = await sendHermesToManager(hermesMessage);
|
|
68
|
-
|
|
69
|
-
if (response.status === 'approved') {
|
|
70
|
-
setApproval(response.managerApproval);
|
|
71
|
-
setStatus('approved');
|
|
72
|
-
return { approved: true, managerApproval: response.managerApproval };
|
|
73
|
-
} else {
|
|
74
|
-
setStatus('rejected');
|
|
75
|
-
return { approved: false };
|
|
76
|
-
}
|
|
77
|
-
};
|
|
78
|
-
|
|
79
|
-
return { status, approval, requestApproval };
|
|
80
|
-
}
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
---
|
|
84
|
-
|
|
85
|
-
## 4. Security Modal Component (Panda CSS)
|
|
86
|
-
|
|
87
|
-
```tsx
|
|
88
|
-
// HighRiskSecurityModal.tsx
|
|
89
|
-
|
|
90
|
-
import { css } from '../../../styled-system/css';
|
|
91
|
-
|
|
92
|
-
interface Props {
|
|
93
|
-
isOpen: boolean;
|
|
94
|
-
context: HighRiskActionContext;
|
|
95
|
-
onClose: () => void;
|
|
96
|
-
onApproved: (approval: ManagerApproval) => void;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
export function HighRiskSecurityModal({ isOpen, context, onClose, onApproved }: Props) {
|
|
100
|
-
const [reason, setReason] = useState('');
|
|
101
|
-
const [isSubmitting, setIsSubmitting] = useState(false);
|
|
102
|
-
const { status, approval, requestApproval } = useHighRiskApproval();
|
|
103
|
-
|
|
104
|
-
const handleRequestApproval = async () => {
|
|
105
|
-
if (!reason.trim()) return;
|
|
106
|
-
|
|
107
|
-
setIsSubmitting(true);
|
|
108
|
-
const result = await requestApproval(context, reason);
|
|
109
|
-
|
|
110
|
-
if (result.approved && result.managerApproval) {
|
|
111
|
-
onApproved(result.managerApproval);
|
|
112
|
-
onClose();
|
|
113
|
-
}
|
|
114
|
-
setIsSubmitting(false);
|
|
115
|
-
};
|
|
116
|
-
|
|
117
|
-
if (!isOpen) return null;
|
|
118
|
-
|
|
119
|
-
return (
|
|
120
|
-
<div className={css({ position: 'fixed', inset: 0, bg: 'rgba(0,0,0,0.7)', zIndex: 1000 })}>
|
|
121
|
-
<div className={css({
|
|
122
|
-
bg: 'white',
|
|
123
|
-
maxW: '480px',
|
|
124
|
-
mx: 'auto',
|
|
125
|
-
mt: '10vh',
|
|
126
|
-
p: '6',
|
|
127
|
-
borderRadius: 'lg',
|
|
128
|
-
border: '2px solid {colors.red.600}',
|
|
129
|
-
})}>
|
|
130
|
-
<h2 className={css({ color: 'red.600', fontSize: 'xl', fontWeight: 'bold' })}>
|
|
131
|
-
⚠️ High-Risk Administrative Action
|
|
132
|
-
</h2>
|
|
133
|
-
|
|
134
|
-
<p className={css({ mt: 3 })}>
|
|
135
|
-
You are about to perform: <strong>{context.actionType}</strong><br />
|
|
136
|
-
Target: {context.targetDescription}
|
|
137
|
-
</p>
|
|
138
|
-
|
|
139
|
-
<label className={css({ display: 'block', mt: 4, fontWeight: 'medium' })}>
|
|
140
|
-
Reason for this action (required for audit and approval):
|
|
141
|
-
</label>
|
|
142
|
-
<textarea
|
|
143
|
-
value={reason}
|
|
144
|
-
onChange={(e) => setReason(e.target.value)}
|
|
145
|
-
className={css({ w: 'full', h: '100px', mt: 2, p: 3, border: '1px solid gray' })}
|
|
146
|
-
placeholder="Explain why this privileged action is necessary..."
|
|
147
|
-
/>
|
|
148
|
-
|
|
149
|
-
<div className={css({ display: 'flex', gap: 3, mt: 5 })}>
|
|
150
|
-
<button onClick={onClose} disabled={isSubmitting}>
|
|
151
|
-
Cancel
|
|
152
|
-
</button>
|
|
153
|
-
<button
|
|
154
|
-
onClick={handleRequestApproval}
|
|
155
|
-
disabled={isSubmitting || !reason.trim()}
|
|
156
|
-
className={css({ bg: 'red.600', color: 'white' })}
|
|
157
|
-
>
|
|
158
|
-
{status === 'awaiting_manager'
|
|
159
|
-
? 'Waiting for @manager approval via Hermes...'
|
|
160
|
-
: 'Request Manager Approval'}
|
|
161
|
-
</button>
|
|
162
|
-
</div>
|
|
163
|
-
|
|
164
|
-
<p className={css({ fontSize: 'xs', color: 'gray.500', mt: 4 })}>
|
|
165
|
-
This action will be fully audited. A valid managerApproval token is required.
|
|
166
|
-
</p>
|
|
167
|
-
</div>
|
|
168
|
-
</div>
|
|
169
|
-
);
|
|
170
|
-
}
|
|
171
|
-
```
|
|
172
|
-
|
|
173
|
-
---
|
|
174
|
-
|
|
175
|
-
## 5. Usage in a Page
|
|
176
|
-
|
|
177
|
-
```tsx
|
|
178
|
-
const handlePromoteClick = (user: User) => {
|
|
179
|
-
setSelectedUser(user);
|
|
180
|
-
setModalOpen(true);
|
|
181
|
-
};
|
|
182
|
-
|
|
183
|
-
const handleApproved = (approval: ManagerApproval) => {
|
|
184
|
-
// Now safe to call the high-risk API with the token
|
|
185
|
-
promoteUser(user.id, approval);
|
|
186
|
-
};
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
---
|
|
190
|
-
|
|
191
|
-
## 6. Anti-Patterns (Forbidden)
|
|
192
|
-
|
|
193
|
-
- Calling high-risk API endpoints directly from event handlers
|
|
194
|
-
- Generating fake `managerApproval` objects on the client
|
|
195
|
-
- Making the modal dismissible while the Hermes request is in flight
|
|
196
|
-
- Storing approval tokens in localStorage for later reuse
|
|
197
|
-
- Skipping the “reason” field
|
|
198
|
-
|
|
199
|
-
---
|
|
200
|
-
|
|
201
|
-
## 7. Testing Requirements
|
|
202
|
-
|
|
203
|
-
- Modal appears when high-risk action is triggered
|
|
204
|
-
- API call is blocked until valid approval is received
|
|
205
|
-
- Reason field is mandatory
|
|
206
|
-
- Proper error states when @manager rejects the request
|
|
207
|
-
|
|
208
|
-
**Reference files**:
|
|
209
|
-
- `high-risk-security-modal-hermes-flow.md`
|
|
210
|
-
- `high-risk-action-approval-flow-simulation.md`
|
|
211
|
-
- `corporate-project-scaffolding-sop.md`
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
# Governance Baseline Briefing Template (for @manager)
|
|
2
|
-
|
|
3
|
-
**Use Case**: Use this as the foundation for the first major response when a user starts a new project that appears to be corporate or enterprise in nature.
|
|
4
|
-
|
|
5
|
-
**Goal**: Establish the governance contract early, set expectations, and position the standards as non-negotiable enablers rather than obstacles.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Template
|
|
10
|
-
|
|
11
|
-
Thank you for initiating this project with Agent Enderun.
|
|
12
|
-
|
|
13
|
-
Before we discuss any specific features, architecture, or technology choices, we must establish the governance baseline that will guide all work.
|
|
14
|
-
|
|
15
|
-
### Corporate Governance Standards
|
|
16
|
-
|
|
17
|
-
This project will follow Agent Enderun’s enterprise governance model. The three foundational pillars are:
|
|
18
|
-
|
|
19
|
-
1. **Branded Types Law**
|
|
20
|
-
All domain identifiers (UserID, RoleID, ApprovalID, etc.) must use compile-time branded types. Plain strings or numbers for identifiers are not permitted.
|
|
21
|
-
|
|
22
|
-
2. **High-Risk Administrative Action Governance**
|
|
23
|
-
Any operation that elevates roles, changes system configuration, performs bulk operations, or accesses sensitive audit data is classified as high-risk. These actions may only be executed after:
|
|
24
|
-
- Explicit `isHighRiskAdminAction: true` flag, and
|
|
25
|
-
- A valid `managerApproval` token containing a signed reason and trace ID.
|
|
26
|
-
|
|
27
|
-
3. **Contract-First Development + Hermes Coordination**
|
|
28
|
-
API contracts and type definitions are created before implementation. Any change to shared contracts must be communicated via Hermes to the relevant specialist agents.
|
|
29
|
-
|
|
30
|
-
These standards exist to make the system auditable, safe, and maintainable at scale. They are not optional.
|
|
31
|
-
|
|
32
|
-
### How We Will Work Together
|
|
33
|
-
|
|
34
|
-
- We will **not** start by building features.
|
|
35
|
-
- We will first define the type foundation and governance infrastructure.
|
|
36
|
-
- Only after the foundation is in place will we proceed to implement user-facing functionality.
|
|
37
|
-
- I (@manager) will personally review and approve the governance approach for any high-risk area before implementation begins.
|
|
38
|
-
|
|
39
|
-
### Next Immediate Steps
|
|
40
|
-
|
|
41
|
-
If you agree with this approach, please confirm. Once confirmed, we will begin with:
|
|
42
|
-
|
|
43
|
-
1. Creation of the Branded Types foundation and core `ManagerApproval` contract.
|
|
44
|
-
2. Definition of the first set of API contracts.
|
|
45
|
-
3. (If privileged operations are expected) Design of the high-risk approval flow and security modal pattern.
|
|
46
|
-
|
|
47
|
-
Would you like to proceed with this governance-first approach, or do you have any questions or concerns before we begin?
|
|
48
|
-
|
|
49
|
-
---
|
|
50
|
-
|
|
51
|
-
**Usage Notes for @manager**:
|
|
52
|
-
- Adapt the language based on how much the user already understands.
|
|
53
|
-
- If the user pushes back on governance, treat it as a signal to spend more time on education rather than proceeding faster.
|
|
54
|
-
- Always document the user’s acknowledgment in `PROJECT_MEMORY.md` under Critical Decisions.
|