atabey 0.0.11 → 0.0.13
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/ATABEY.md +52 -249
- package/PRIVACY.md +161 -0
- package/README.md +355 -140
- package/bin/completion.sh +30 -0
- package/bin/{validate-agent-army.js → validate-al-registry.js} +6 -6
- package/dist/framework-mcp/src/index.js +14 -2
- package/dist/framework-mcp/src/index.js.map +1 -1
- package/dist/framework-mcp/src/resources/index.js +5 -5
- package/dist/framework-mcp/src/resources/index.js.map +1 -1
- package/dist/framework-mcp/src/tools/control_plane/locking.d.ts +1 -1
- package/dist/framework-mcp/src/tools/control_plane/locking.js +11 -9
- package/dist/framework-mcp/src/tools/control_plane/locking.js.map +1 -1
- package/dist/framework-mcp/src/tools/definitions.d.ts +5 -0
- package/dist/framework-mcp/src/tools/definitions.js +116 -241
- package/dist/framework-mcp/src/tools/definitions.js.map +1 -1
- package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js +4 -4
- package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js.map +1 -1
- package/dist/framework-mcp/src/tools/file_system/read_file.js +1 -1
- package/dist/framework-mcp/src/tools/file_system/replace_text.js +3 -3
- package/dist/framework-mcp/src/tools/file_system/replace_text.js.map +1 -1
- package/dist/framework-mcp/src/tools/file_system/write_file.d.ts +1 -1
- package/dist/framework-mcp/src/tools/file_system/write_file.js +4 -4
- package/dist/framework-mcp/src/tools/file_system/write_file.js.map +1 -1
- package/dist/framework-mcp/src/tools/framework/audit_deps.js +1 -1
- package/dist/framework-mcp/src/tools/framework/audit_deps.js.map +1 -1
- package/dist/framework-mcp/src/tools/framework/submit_plan.d.ts +4 -3
- package/dist/framework-mcp/src/tools/framework/submit_plan.js.map +1 -1
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.d.ts +19 -0
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js +138 -0
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js.map +1 -0
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.d.ts +8 -0
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js +91 -0
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js.map +1 -0
- package/dist/framework-mcp/src/tools/index.d.ts +2 -0
- package/dist/framework-mcp/src/tools/index.js +81 -17
- package/dist/framework-mcp/src/tools/index.js.map +1 -1
- package/dist/framework-mcp/src/tools/memory/delete_knowledge.d.ts +8 -0
- package/dist/framework-mcp/src/tools/memory/delete_knowledge.js +29 -0
- package/dist/framework-mcp/src/tools/memory/delete_knowledge.js.map +1 -0
- package/dist/framework-mcp/src/tools/memory/read_memory.js +1 -1
- package/dist/framework-mcp/src/tools/memory/read_memory.js.map +1 -1
- package/dist/framework-mcp/src/tools/memory/search_knowledge.d.ts +8 -0
- package/dist/framework-mcp/src/tools/memory/search_knowledge.js +49 -0
- package/dist/framework-mcp/src/tools/memory/search_knowledge.js.map +1 -0
- package/dist/framework-mcp/src/tools/memory/store_knowledge.d.ts +10 -0
- package/dist/framework-mcp/src/tools/memory/store_knowledge.js +31 -0
- package/dist/framework-mcp/src/tools/memory/store_knowledge.js.map +1 -0
- package/dist/framework-mcp/src/tools/messaging/ask_human.d.ts +6 -0
- package/dist/framework-mcp/src/tools/messaging/ask_human.js +31 -0
- package/dist/framework-mcp/src/tools/messaging/ask_human.js.map +1 -0
- package/dist/framework-mcp/src/tools/observability/check_ports.js +1 -1
- package/dist/framework-mcp/src/tools/observability/check_ports.js.map +1 -1
- package/dist/framework-mcp/src/tools/observability/get_health.js +1 -1
- package/dist/framework-mcp/src/tools/quality/analyze_code_quality.d.ts +11 -0
- package/dist/framework-mcp/src/tools/quality/analyze_code_quality.js +166 -0
- package/dist/framework-mcp/src/tools/quality/analyze_code_quality.js.map +1 -0
- package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.d.ts +11 -0
- package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js +135 -0
- package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js.map +1 -0
- package/dist/framework-mcp/src/tools/schemas.d.ts +439 -0
- package/dist/framework-mcp/src/tools/schemas.js +183 -0
- package/dist/framework-mcp/src/tools/schemas.js.map +1 -0
- package/dist/framework-mcp/src/tools/search/get_map.js +2 -2
- package/dist/framework-mcp/src/tools/search/get_map.js.map +1 -1
- package/dist/framework-mcp/src/tools/search/grep_search.js +10 -7
- package/dist/framework-mcp/src/tools/search/grep_search.js.map +1 -1
- package/dist/framework-mcp/src/tools/shell/run_command.js +72 -7
- package/dist/framework-mcp/src/tools/shell/run_command.js.map +1 -1
- package/dist/framework-mcp/src/tools/types.d.ts +10 -9
- package/dist/framework-mcp/src/utils/compliance.d.ts +10 -0
- package/dist/framework-mcp/src/utils/compliance.js +102 -41
- package/dist/framework-mcp/src/utils/compliance.js.map +1 -1
- package/dist/framework-mcp/src/utils/fs.d.ts +10 -7
- package/dist/framework-mcp/src/utils/fs.js +10 -7
- package/dist/framework-mcp/src/utils/fs.js.map +1 -1
- package/dist/framework-mcp/src/utils/types.d.ts +8 -0
- package/dist/framework-mcp/src/utils/types.js +4 -0
- package/dist/framework-mcp/src/utils/types.js.map +1 -1
- package/dist/framework-mcp/src/utils/zod-to-mcp.d.ts +10 -0
- package/dist/framework-mcp/src/utils/zod-to-mcp.js +80 -0
- package/dist/framework-mcp/src/utils/zod-to-mcp.js.map +1 -0
- package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js +4 -4
- package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js.map +1 -1
- package/dist/framework-mcp/tests/tools/messaging/send_message.test.js +17 -16
- package/dist/framework-mcp/tests/tools/messaging/send_message.test.js.map +1 -1
- package/dist/src/cli/adapters/core.js +2 -1
- package/dist/src/cli/adapters/core.js.map +1 -1
- package/dist/src/cli/adapters/scaffold.js +2 -1
- package/dist/src/cli/adapters/scaffold.js.map +1 -1
- package/dist/src/cli/commands/check.js +17 -17
- package/dist/src/cli/commands/check.js.map +1 -1
- package/dist/src/cli/commands/compliance.d.ts +5 -1
- package/dist/src/cli/commands/compliance.js +34 -42
- package/dist/src/cli/commands/compliance.js.map +1 -1
- package/dist/src/cli/commands/contract.js +6 -5
- package/dist/src/cli/commands/contract.js.map +1 -1
- package/dist/src/cli/commands/coverage.d.ts +1 -0
- package/dist/src/cli/commands/coverage.js +121 -0
- package/dist/src/cli/commands/coverage.js.map +1 -0
- package/dist/src/cli/commands/dashboard.d.ts +1 -1
- package/dist/src/cli/commands/dashboard.js +479 -39
- package/dist/src/cli/commands/dashboard.js.map +1 -1
- package/dist/src/cli/commands/explorer.js +8 -7
- package/dist/src/cli/commands/explorer.js.map +1 -1
- package/dist/src/cli/commands/gateway.d.ts +1 -0
- package/dist/src/cli/commands/gateway.js +172 -0
- package/dist/src/cli/commands/gateway.js.map +1 -0
- package/dist/src/cli/commands/git.js +8 -9
- package/dist/src/cli/commands/git.js.map +1 -1
- package/dist/src/cli/commands/index-codebase.d.ts +4 -0
- package/dist/src/cli/commands/index-codebase.js +52 -0
- package/dist/src/cli/commands/index-codebase.js.map +1 -0
- package/dist/src/cli/commands/init/create-agent.js +3 -3
- package/dist/src/cli/commands/init/create-agent.js.map +1 -1
- package/dist/src/cli/commands/init/scaffold-core.d.ts +1 -1
- package/dist/src/cli/commands/init/scaffold-core.js +7 -6
- package/dist/src/cli/commands/init/scaffold-core.js.map +1 -1
- package/dist/src/cli/commands/init/scaffold-docs.js +4 -3
- package/dist/src/cli/commands/init/scaffold-docs.js.map +1 -1
- package/dist/src/cli/commands/init/scaffold-ops.js +3 -3
- package/dist/src/cli/commands/init/scaffold-ops.js.map +1 -1
- package/dist/src/cli/commands/init/scaffold-standards.js +11 -7
- package/dist/src/cli/commands/init/scaffold-standards.js.map +1 -1
- package/dist/src/cli/commands/init.d.ts +2 -0
- package/dist/src/cli/commands/init.js +127 -45
- package/dist/src/cli/commands/init.js.map +1 -1
- package/dist/src/cli/commands/knowledge.js +5 -32
- package/dist/src/cli/commands/knowledge.js.map +1 -1
- package/dist/src/cli/commands/lint.js +5 -4
- package/dist/src/cli/commands/lint.js.map +1 -1
- package/dist/src/cli/commands/mcp.d.ts +11 -0
- package/dist/src/cli/commands/mcp.js +130 -0
- package/dist/src/cli/commands/mcp.js.map +1 -0
- package/dist/src/cli/commands/orchestrate.d.ts +10 -9
- package/dist/src/cli/commands/orchestrate.js +132 -66
- package/dist/src/cli/commands/orchestrate.js.map +1 -1
- package/dist/src/cli/commands/plan.js +16 -14
- package/dist/src/cli/commands/plan.js.map +1 -1
- package/dist/src/cli/commands/quickstart.d.ts +9 -0
- package/dist/src/cli/commands/quickstart.js +72 -0
- package/dist/src/cli/commands/quickstart.js.map +1 -0
- package/dist/src/cli/commands/script.js +6 -5
- package/dist/src/cli/commands/script.js.map +1 -1
- package/dist/src/cli/commands/security.js +5 -8
- package/dist/src/cli/commands/security.js.map +1 -1
- package/dist/src/cli/commands/status.js +23 -19
- package/dist/src/cli/commands/status.js.map +1 -1
- package/dist/src/cli/commands/trace.d.ts +2 -0
- package/dist/src/cli/commands/trace.js +59 -61
- package/dist/src/cli/commands/trace.js.map +1 -1
- package/dist/src/cli/index.js +236 -294
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/platforms/core.d.ts +12 -0
- package/dist/src/cli/platforms/core.js +73 -0
- package/dist/src/cli/platforms/core.js.map +1 -0
- package/dist/src/cli/platforms/index.d.ts +5 -0
- package/dist/src/cli/platforms/index.js +6 -0
- package/dist/src/cli/platforms/index.js.map +1 -0
- package/dist/src/cli/platforms/paths.d.ts +15 -0
- package/dist/src/cli/platforms/paths.js +102 -0
- package/dist/src/cli/platforms/paths.js.map +1 -0
- package/dist/src/cli/platforms/scaffold.d.ts +2 -0
- package/dist/src/cli/platforms/scaffold.js +73 -0
- package/dist/src/cli/platforms/scaffold.js.map +1 -0
- package/dist/src/cli/platforms/utils.d.ts +4 -0
- package/dist/src/cli/platforms/utils.js +76 -0
- package/dist/src/cli/platforms/utils.js.map +1 -0
- package/dist/src/cli/shims.js +5 -5
- package/dist/src/cli/utils/claude.js +2 -1
- package/dist/src/cli/utils/claude.js.map +1 -1
- package/dist/src/cli/utils/compliance.d.ts +10 -9
- package/dist/src/cli/utils/compliance.js +10 -171
- package/dist/src/cli/utils/compliance.js.map +1 -1
- package/dist/src/cli/utils/fs.d.ts +3 -3
- package/dist/src/cli/utils/fs.js +8 -7
- package/dist/src/cli/utils/fs.js.map +1 -1
- package/dist/src/cli/utils/i18n.d.ts +5 -0
- package/dist/src/cli/utils/i18n.js +5 -0
- package/dist/src/cli/utils/i18n.js.map +1 -1
- package/dist/src/cli/utils/memory.js +9 -6
- package/dist/src/cli/utils/memory.js.map +1 -1
- package/dist/src/cli/utils/pkg.js +8 -7
- package/dist/src/cli/utils/pkg.js.map +1 -1
- package/dist/src/cli/utils/schemas.d.ts +4 -4
- package/dist/src/cli/utils/ui.d.ts +23 -0
- package/dist/src/cli/utils/ui.js +42 -0
- package/dist/src/cli/utils/ui.js.map +1 -1
- package/dist/src/contracts/tasks.d.ts +4 -4
- package/dist/src/dashboard/src/hooks/useApi.d.ts +18 -0
- package/dist/src/dashboard/src/hooks/useApi.js +47 -0
- package/dist/src/dashboard/src/hooks/useApi.js.map +1 -0
- package/dist/src/dashboard/src/hooks/useSSE.d.ts +12 -0
- package/dist/src/dashboard/src/hooks/useSSE.js +60 -0
- package/dist/src/dashboard/src/hooks/useSSE.js.map +1 -0
- package/dist/src/modules/adapters/shared.js +3 -3
- package/dist/src/modules/adapters/shared.js.map +1 -1
- package/dist/src/modules/agents/definitions.d.ts +5 -13
- package/dist/src/modules/agents/definitions.js +179 -78
- package/dist/src/modules/agents/definitions.js.map +1 -1
- package/dist/src/modules/agents/registry/analyst.js +2 -1
- package/dist/src/modules/agents/registry/analyst.js.map +1 -1
- package/dist/src/modules/agents/registry/architect.js +1 -0
- package/dist/src/modules/agents/registry/architect.js.map +1 -1
- package/dist/src/modules/agents/registry/backend.js +8 -6
- package/dist/src/modules/agents/registry/backend.js.map +1 -1
- package/dist/src/modules/agents/registry/database.js.map +1 -1
- package/dist/src/modules/agents/registry/devops.js.map +1 -1
- package/dist/src/modules/agents/registry/explorer.js +2 -0
- package/dist/src/modules/agents/registry/explorer.js.map +1 -1
- package/dist/src/modules/agents/registry/frontend.js +8 -6
- package/dist/src/modules/agents/registry/frontend.js.map +1 -1
- package/dist/src/modules/agents/registry/git.js.map +1 -1
- package/dist/src/modules/agents/registry/manager.js +11 -4
- package/dist/src/modules/agents/registry/manager.js.map +1 -1
- package/dist/src/modules/agents/registry/mobile.js +7 -5
- package/dist/src/modules/agents/registry/mobile.js.map +1 -1
- package/dist/src/modules/agents/registry/native.js +7 -5
- package/dist/src/modules/agents/registry/native.js.map +1 -1
- package/dist/src/modules/agents/registry/quality.js +11 -8
- package/dist/src/modules/agents/registry/quality.js.map +1 -1
- package/dist/src/modules/agents/registry/security.js.map +1 -1
- package/dist/src/modules/contracts/api.d.ts +178 -0
- package/dist/src/modules/contracts/api.js +56 -0
- package/dist/src/modules/contracts/api.js.map +1 -0
- package/dist/src/modules/contracts/index.d.ts +5 -0
- package/dist/src/modules/contracts/index.js +6 -0
- package/dist/src/modules/contracts/index.js.map +1 -0
- package/dist/src/modules/engines/agent-executor.d.ts +50 -0
- package/dist/src/modules/engines/agent-executor.js +188 -0
- package/dist/src/modules/engines/agent-executor.js.map +1 -0
- package/dist/src/modules/engines/health-engine.d.ts +7 -1
- package/dist/src/modules/engines/health-engine.js +85 -8
- package/dist/src/modules/engines/health-engine.js.map +1 -1
- package/dist/src/modules/engines/planning-engine.d.ts +1 -1
- package/dist/src/modules/engines/planning-engine.js +5 -4
- package/dist/src/modules/engines/planning-engine.js.map +1 -1
- package/dist/src/modules/engines/quality-gate.d.ts +23 -0
- package/dist/src/modules/engines/quality-gate.js +85 -0
- package/dist/src/modules/engines/quality-gate.js.map +1 -0
- package/dist/src/modules/engines/risk-engine.js +6 -6
- package/dist/src/modules/engines/risk-engine.js.map +1 -1
- package/dist/src/modules/engines/routing-engine.d.ts +59 -1
- package/dist/src/modules/engines/routing-engine.js +353 -25
- package/dist/src/modules/engines/routing-engine.js.map +1 -1
- package/dist/src/modules/engines/types.d.ts +7 -3
- package/dist/src/modules/gateway/circuit-breaker.d.ts +40 -0
- package/dist/src/modules/gateway/circuit-breaker.js +163 -0
- package/dist/src/modules/gateway/circuit-breaker.js.map +1 -0
- package/dist/src/modules/gateway/cost-tracker.d.ts +55 -0
- package/dist/src/modules/gateway/cost-tracker.js +127 -0
- package/dist/src/modules/gateway/cost-tracker.js.map +1 -0
- package/dist/src/modules/gateway/gateway.d.ts +68 -0
- package/dist/src/modules/gateway/gateway.js +235 -0
- package/dist/src/modules/gateway/gateway.js.map +1 -0
- package/dist/src/modules/gateway/index.d.ts +19 -0
- package/dist/src/modules/gateway/index.js +19 -0
- package/dist/src/modules/gateway/index.js.map +1 -0
- package/dist/src/modules/gateway/load-balancer.d.ts +86 -0
- package/dist/src/modules/gateway/load-balancer.js +230 -0
- package/dist/src/modules/gateway/load-balancer.js.map +1 -0
- package/dist/src/modules/gateway/providers/anthropic.d.ts +14 -0
- package/dist/src/modules/gateway/providers/anthropic.js +169 -0
- package/dist/src/modules/gateway/providers/anthropic.js.map +1 -0
- package/dist/src/modules/gateway/providers/base.d.ts +38 -0
- package/dist/src/modules/gateway/providers/base.js +42 -0
- package/dist/src/modules/gateway/providers/base.js.map +1 -0
- package/dist/src/modules/gateway/providers/google.d.ts +18 -0
- package/dist/src/modules/gateway/providers/google.js +176 -0
- package/dist/src/modules/gateway/providers/google.js.map +1 -0
- package/dist/src/modules/gateway/providers/grok.d.ts +14 -0
- package/dist/src/modules/gateway/providers/grok.js +166 -0
- package/dist/src/modules/gateway/providers/grok.js.map +1 -0
- package/dist/src/modules/gateway/providers/index.d.ts +21 -0
- package/dist/src/modules/gateway/providers/index.js +38 -0
- package/dist/src/modules/gateway/providers/index.js.map +1 -0
- package/dist/src/modules/gateway/providers/ollama.d.ts +23 -0
- package/dist/src/modules/gateway/providers/ollama.js +187 -0
- package/dist/src/modules/gateway/providers/ollama.js.map +1 -0
- package/dist/src/modules/gateway/providers/openai.d.ts +14 -0
- package/dist/src/modules/gateway/providers/openai.js +170 -0
- package/dist/src/modules/gateway/providers/openai.js.map +1 -0
- package/dist/src/modules/gateway/rate-limiter.d.ts +41 -0
- package/dist/src/modules/gateway/rate-limiter.js +119 -0
- package/dist/src/modules/gateway/rate-limiter.js.map +1 -0
- package/dist/src/modules/gateway/types.d.ts +114 -0
- package/dist/src/modules/gateway/types.js +8 -0
- package/dist/src/modules/gateway/types.js.map +1 -0
- package/dist/src/modules/memory/core.d.ts +42 -0
- package/dist/src/modules/memory/core.js +100 -0
- package/dist/src/modules/memory/core.js.map +1 -0
- package/dist/src/modules/memory/embedding.d.ts +28 -0
- package/dist/src/modules/memory/embedding.js +131 -0
- package/dist/src/modules/memory/embedding.js.map +1 -0
- package/dist/src/modules/memory/types.d.ts +18 -0
- package/dist/src/modules/memory/types.js +2 -0
- package/dist/src/modules/memory/types.js.map +1 -0
- package/dist/src/modules/memory/vector-store.d.ts +13 -0
- package/dist/src/modules/memory/vector-store.js +75 -0
- package/dist/src/modules/memory/vector-store.js.map +1 -0
- package/dist/src/modules/providers/definitions.d.ts +9 -0
- package/dist/src/modules/providers/definitions.js +141 -0
- package/dist/src/modules/providers/definitions.js.map +1 -0
- package/dist/src/modules/providers/registry.d.ts +12 -0
- package/dist/src/modules/providers/registry.js +19 -0
- package/dist/src/modules/providers/registry.js.map +1 -0
- package/dist/src/modules/providers/shared.d.ts +1 -0
- package/dist/src/modules/providers/shared.js +105 -0
- package/dist/src/modules/providers/shared.js.map +1 -0
- package/dist/src/modules/providers/types.d.ts +14 -0
- package/dist/src/modules/providers/types.js +2 -0
- package/dist/src/modules/providers/types.js.map +1 -0
- package/dist/src/modules/skills/adapter-skills.d.ts +68 -0
- package/dist/src/modules/skills/adapter-skills.js +450 -0
- package/dist/src/modules/skills/adapter-skills.js.map +1 -0
- package/dist/src/shared/audit.d.ts +105 -0
- package/dist/src/shared/audit.js +220 -0
- package/dist/src/shared/audit.js.map +1 -0
- package/dist/src/shared/constants.d.ts +11 -11
- package/dist/src/shared/constants.js +3 -3
- package/dist/src/shared/constants.js.map +1 -1
- package/dist/src/shared/fs.js +4 -2
- package/dist/src/shared/fs.js.map +1 -1
- package/dist/src/shared/lock.d.ts +82 -0
- package/dist/src/shared/lock.js +160 -0
- package/dist/src/shared/lock.js.map +1 -0
- package/dist/src/shared/logger.d.ts +2 -0
- package/dist/src/shared/logger.js +15 -5
- package/dist/src/shared/logger.js.map +1 -1
- package/dist/src/shared/pii.d.ts +37 -0
- package/dist/src/shared/pii.js +122 -0
- package/dist/src/shared/pii.js.map +1 -0
- package/dist/src/shared/retention.d.ts +63 -0
- package/dist/src/shared/retention.js +171 -0
- package/dist/src/shared/retention.js.map +1 -0
- package/dist/src/shared/storage.d.ts +13 -11
- package/dist/src/shared/storage.js +18 -14
- package/dist/src/shared/storage.js.map +1 -1
- package/dist/src/shared/string.d.ts +1 -0
- package/dist/src/shared/string.js +30 -0
- package/dist/src/shared/string.js.map +1 -0
- package/dist/src/shared/types.d.ts +8 -0
- package/dist/src/shared/types.js +4 -0
- package/dist/src/shared/types.js.map +1 -1
- package/dist/tests/adapter.test.js +3 -2
- package/dist/tests/adapter.test.js.map +1 -1
- package/dist/tests/adapters/paths.test.js +4 -4
- package/dist/tests/adapters/paths.test.js.map +1 -1
- package/dist/tests/cli/commands/check.test.d.ts +1 -0
- package/dist/tests/cli/commands/check.test.js +9 -0
- package/dist/tests/cli/commands/check.test.js.map +1 -0
- package/dist/tests/cli/commands/coverage.test.d.ts +1 -0
- package/dist/tests/cli/commands/coverage.test.js +9 -0
- package/dist/tests/cli/commands/coverage.test.js.map +1 -0
- package/dist/tests/cli/commands/dashboard-coverage.test.d.ts +1 -0
- package/dist/tests/cli/commands/dashboard-coverage.test.js +88 -0
- package/dist/tests/cli/commands/dashboard-coverage.test.js.map +1 -0
- package/dist/tests/cli/commands/exports.test.d.ts +1 -0
- package/dist/tests/cli/commands/exports.test.js +61 -0
- package/dist/tests/cli/commands/exports.test.js.map +1 -0
- package/dist/tests/cli/commands/lint.test.d.ts +1 -0
- package/dist/tests/cli/commands/lint.test.js +9 -0
- package/dist/tests/cli/commands/lint.test.js.map +1 -0
- package/dist/tests/cli/init/adapter_init.test.js +4 -5
- package/dist/tests/cli/init/adapter_init.test.js.map +1 -1
- package/dist/tests/cli/init/unified_init.test.js +5 -7
- package/dist/tests/cli/init/unified_init.test.js.map +1 -1
- package/dist/tests/core-memory.test.d.ts +1 -0
- package/dist/tests/core-memory.test.js +78 -0
- package/dist/tests/core-memory.test.js.map +1 -0
- package/dist/tests/dashboard.test.d.ts +1 -0
- package/dist/tests/dashboard.test.js +116 -0
- package/dist/tests/dashboard.test.js.map +1 -0
- package/dist/tests/fs-utils.test.js +5 -5
- package/dist/tests/fs-utils.test.js.map +1 -1
- package/dist/tests/integration/agent_flow.test.js +24 -10
- package/dist/tests/integration/agent_flow.test.js.map +1 -1
- package/dist/tests/modules/adapters/adapters.test.js +2 -2
- package/dist/tests/modules/adapters/adapters.test.js.map +1 -1
- package/dist/tests/modules/contracts/contracts.test.d.ts +1 -0
- package/dist/tests/modules/contracts/contracts.test.js +73 -0
- package/dist/tests/modules/contracts/contracts.test.js.map +1 -0
- package/dist/tests/modules/engines/agent-executor.test.d.ts +1 -0
- package/dist/tests/modules/engines/agent-executor.test.js +61 -0
- package/dist/tests/modules/engines/agent-executor.test.js.map +1 -0
- package/dist/tests/modules/engines/evaluation-engine.test.d.ts +1 -0
- package/dist/tests/modules/engines/evaluation-engine.test.js +45 -0
- package/dist/tests/modules/engines/evaluation-engine.test.js.map +1 -0
- package/dist/tests/modules/engines/health-engine.test.d.ts +1 -0
- package/dist/tests/modules/engines/health-engine.test.js +56 -0
- package/dist/tests/modules/engines/health-engine.test.js.map +1 -0
- package/dist/tests/modules/engines/planning-engine.test.d.ts +1 -0
- package/dist/tests/modules/engines/planning-engine.test.js +75 -0
- package/dist/tests/modules/engines/planning-engine.test.js.map +1 -0
- package/dist/tests/modules/engines/risk-engine.test.d.ts +1 -0
- package/dist/tests/modules/engines/risk-engine.test.js +61 -0
- package/dist/tests/modules/engines/risk-engine.test.js.map +1 -0
- package/dist/tests/modules/engines/routing-engine.test.d.ts +1 -0
- package/dist/tests/modules/engines/routing-engine.test.js +56 -0
- package/dist/tests/modules/engines/routing-engine.test.js.map +1 -0
- package/dist/tests/modules/gateway/circuit-breaker.test.d.ts +1 -0
- package/dist/tests/modules/gateway/circuit-breaker.test.js +124 -0
- package/dist/tests/modules/gateway/circuit-breaker.test.js.map +1 -0
- package/dist/tests/modules/gateway/cost-tracker.test.d.ts +1 -0
- package/dist/tests/modules/gateway/cost-tracker.test.js +74 -0
- package/dist/tests/modules/gateway/cost-tracker.test.js.map +1 -0
- package/dist/tests/modules/gateway/load-balancer.test.d.ts +1 -0
- package/dist/tests/modules/gateway/load-balancer.test.js +70 -0
- package/dist/tests/modules/gateway/load-balancer.test.js.map +1 -0
- package/dist/tests/modules/gateway/rate-limiter.test.d.ts +1 -0
- package/dist/tests/modules/gateway/rate-limiter.test.js +62 -0
- package/dist/tests/modules/gateway/rate-limiter.test.js.map +1 -0
- package/dist/tests/modules/memory/vector-store.test.d.ts +1 -0
- package/dist/tests/modules/memory/vector-store.test.js +109 -0
- package/dist/tests/modules/memory/vector-store.test.js.map +1 -0
- package/dist/tests/orchestrator-dependencies.test.js +40 -22
- package/dist/tests/orchestrator-dependencies.test.js.map +1 -1
- package/dist/tests/planning-engine.test.js +9 -8
- package/dist/tests/planning-engine.test.js.map +1 -1
- package/dist/tests/risk-engine.test.d.ts +1 -0
- package/dist/tests/risk-engine.test.js +44 -0
- package/dist/tests/risk-engine.test.js.map +1 -0
- package/dist/tests/shared/audit.test.d.ts +1 -0
- package/dist/tests/shared/audit.test.js +53 -0
- package/dist/tests/shared/audit.test.js.map +1 -0
- package/dist/tests/status-cost.test.js +15 -24
- package/dist/tests/status-cost.test.js.map +1 -1
- package/dist/tests/status.test.js +16 -17
- package/dist/tests/status.test.js.map +1 -1
- package/dist/tests/storage-operations.test.d.ts +1 -0
- package/dist/tests/storage-operations.test.js +116 -0
- package/dist/tests/storage-operations.test.js.map +1 -0
- package/dist/tests/trace-replay.test.js +34 -40
- package/dist/tests/trace-replay.test.js.map +1 -1
- package/dist/ui/assets/index-B-d2ejS8.js +519 -0
- package/dist/ui/assets/index-CyXywq5G.css +1 -0
- package/dist/ui/index.html +2 -2
- package/dist/vitest.config.js +5 -5
- package/dist/vitest.config.js.map +1 -1
- package/framework-mcp/README.md +339 -25
- package/framework-mcp/dist/dashboard/assets/index-BAPGLiWE.js +267 -0
- package/framework-mcp/dist/dashboard/index.html +15 -0
- package/framework-mcp/dist/framework-mcp/src/constants.js +64 -0
- package/framework-mcp/dist/framework-mcp/src/index.js +156 -0
- package/framework-mcp/dist/framework-mcp/src/resources/index.js +58 -0
- package/framework-mcp/dist/framework-mcp/src/tools/control_plane/locking.js +84 -0
- package/framework-mcp/dist/framework-mcp/src/tools/control_plane/registry.js +35 -0
- package/framework-mcp/dist/framework-mcp/src/tools/definitions.js +197 -0
- package/framework-mcp/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js +64 -0
- package/framework-mcp/dist/framework-mcp/src/tools/file_system/patch_file.js +34 -0
- package/framework-mcp/dist/framework-mcp/src/tools/file_system/read_file.js +51 -0
- package/framework-mcp/dist/framework-mcp/src/tools/file_system/replace_text.js +50 -0
- package/framework-mcp/dist/framework-mcp/src/tools/file_system/write_file.js +55 -0
- package/framework-mcp/dist/framework-mcp/src/tools/framework/audit_deps.js +41 -0
- package/framework-mcp/dist/framework-mcp/src/tools/framework/get_status.js +5 -0
- package/framework-mcp/dist/framework-mcp/src/tools/framework/orchestrate.js +5 -0
- package/framework-mcp/dist/framework-mcp/src/tools/framework/run_tests.js +27 -0
- package/framework-mcp/dist/framework-mcp/src/tools/framework/submit_plan.js +13 -0
- package/framework-mcp/dist/framework-mcp/src/tools/framework/update_contract_hash.js +5 -0
- package/framework-mcp/dist/framework-mcp/src/tools/framework/update_memory.js +8 -0
- package/framework-mcp/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js +137 -0
- package/framework-mcp/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js +90 -0
- package/framework-mcp/dist/framework-mcp/src/tools/index.js +126 -0
- package/framework-mcp/dist/framework-mcp/src/tools/memory/delete_knowledge.js +28 -0
- package/framework-mcp/dist/framework-mcp/src/tools/memory/get_insights.js +22 -0
- package/framework-mcp/dist/framework-mcp/src/tools/memory/read_memory.js +28 -0
- package/framework-mcp/dist/framework-mcp/src/tools/memory/search_knowledge.js +48 -0
- package/framework-mcp/dist/framework-mcp/src/tools/memory/store_knowledge.js +30 -0
- package/framework-mcp/dist/framework-mcp/src/tools/messaging/ask_human.js +30 -0
- package/framework-mcp/dist/framework-mcp/src/tools/messaging/log_action.js +22 -0
- package/framework-mcp/dist/framework-mcp/src/tools/messaging/send_message.js +94 -0
- package/framework-mcp/dist/framework-mcp/src/tools/observability/check_ports.js +26 -0
- package/framework-mcp/dist/framework-mcp/src/tools/observability/get_health.js +19 -0
- package/framework-mcp/dist/framework-mcp/src/tools/quality/analyze_code_quality.js +165 -0
- package/framework-mcp/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js +134 -0
- package/framework-mcp/dist/framework-mcp/src/tools/quality/check_lint.js +30 -0
- package/framework-mcp/dist/framework-mcp/src/tools/schemas.js +182 -0
- package/framework-mcp/dist/framework-mcp/src/tools/search/get_gaps.js +48 -0
- package/framework-mcp/dist/framework-mcp/src/tools/search/get_map.js +43 -0
- package/framework-mcp/dist/framework-mcp/src/tools/search/grep_search.js +78 -0
- package/framework-mcp/dist/framework-mcp/src/tools/search/list_dir.js +28 -0
- package/framework-mcp/dist/framework-mcp/src/tools/shell/run_command.js +121 -0
- package/framework-mcp/dist/framework-mcp/src/tools/types.js +1 -0
- package/framework-mcp/dist/framework-mcp/src/utils/cli.js +59 -0
- package/framework-mcp/dist/framework-mcp/src/utils/compliance.js +292 -0
- package/framework-mcp/dist/framework-mcp/src/utils/errors.js +68 -0
- package/framework-mcp/dist/framework-mcp/src/utils/fs.js +47 -0
- package/framework-mcp/dist/framework-mcp/src/utils/memory.js +74 -0
- package/framework-mcp/dist/framework-mcp/src/utils/metrics.js +56 -0
- package/framework-mcp/dist/framework-mcp/src/utils/permissions.js +71 -0
- package/framework-mcp/dist/framework-mcp/src/utils/security.js +60 -0
- package/framework-mcp/dist/framework-mcp/src/utils/storage.js +207 -0
- package/framework-mcp/dist/framework-mcp/src/utils/types.js +16 -0
- package/framework-mcp/dist/framework-mcp/src/utils/zod-to-mcp.js +79 -0
- package/framework-mcp/dist/index.js +14 -2
- package/framework-mcp/dist/src/cli/utils/memory.js +279 -0
- package/framework-mcp/dist/src/cli/utils/time.js +27 -0
- package/framework-mcp/dist/src/cli/utils/ui.js +100 -0
- package/framework-mcp/dist/src/modules/memory/core.js +99 -0
- package/framework-mcp/dist/src/modules/memory/embedding.js +130 -0
- package/framework-mcp/dist/src/modules/memory/types.js +1 -0
- package/framework-mcp/dist/src/modules/memory/vector-store.js +74 -0
- package/framework-mcp/dist/src/shared/constants.js +187 -0
- package/framework-mcp/dist/src/shared/fs.js +53 -0
- package/framework-mcp/dist/src/shared/logger.js +126 -0
- package/framework-mcp/dist/src/shared/pii.js +121 -0
- package/framework-mcp/dist/src/shared/storage.js +211 -0
- package/framework-mcp/dist/src/shared/types.js +16 -0
- package/framework-mcp/dist/tools/definitions.js +79 -247
- package/framework-mcp/dist/tools/index.js +37 -0
- package/framework-mcp/dist/tools/schemas.js +133 -0
- package/framework-mcp/dist/utils/types.js +4 -0
- package/framework-mcp/dist/utils/zod-to-mcp.js +77 -0
- package/framework-mcp/package.json +2 -2
- package/mcp.json +5 -4
- package/package.json +19 -17
- package/templates/full/ATABEY_FULL.md +515 -0
- package/templates/standards/crud-governance.md +1 -1
- package/templates/standards/logging-and-secrets.md +1 -1
- package/templates/standards/performance-standards.md +2 -2
- package/templates/standards/quality-standards.md +1 -1
- package/dist/ui/assets/index-Bkt7APzu.css +0 -1
- package/dist/ui/assets/index-CeX-06mI.js +0 -49
package/README.md
CHANGED
|
@@ -1,209 +1,424 @@
|
|
|
1
|
-
# [GOV] Agent Atabey —
|
|
1
|
+
# [GOV] Agent Atabey — MCP-Powered AI Governance & Autonomous Orchestration
|
|
2
2
|
|
|
3
|
+
[](https://github.com/ysf-bkr/atabey)
|
|
4
|
+
[](https://www.npmjs.com/package/atabey)
|
|
5
|
+
[](https://www.npmjs.com/package/atabey-mcp)
|
|
6
|
+
[](https://modelcontextprotocol.io)
|
|
3
7
|
[](https://github.com/ysf-bkr/atabey)
|
|
4
8
|
[](https://opensource.org/licenses/MIT)
|
|
9
|
+
[](https://github.com/ysf-bkr/atabey)
|
|
10
|
+
|
|
11
|
+
**Agent Atabey** is a **MCP (Model Context Protocol) server** that plugs directly into your AI coding interface — Claude Code, Gemini CLI, or Cursor — adding 13 specialized AI agents with enterprise-grade governance.
|
|
12
|
+
|
|
13
|
+
> **Philosophy:** "Order from Chaos"
|
|
14
|
+
> **How it works:** Install → Connect to your AI → Use `@agent` commands in chat
|
|
5
15
|
|
|
6
16
|
---
|
|
7
17
|
|
|
8
|
-
##
|
|
18
|
+
## 🚀 How It Works
|
|
9
19
|
|
|
10
|
-
|
|
20
|
+
Atabey connects to your AI interface as an **MCP tool server**. Once connected, you use `@agent` commands directly in your AI chat:
|
|
11
21
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
22
|
+
```
|
|
23
|
+
You (@backend): "Create a user login service with JWT authentication"
|
|
24
|
+
│
|
|
25
|
+
▼
|
|
26
|
+
Atabey MCP Server (framework-mcp/)
|
|
27
|
+
│ Intercepts @agent command
|
|
28
|
+
│ Routes via RoutingEngine (TF-IDF)
|
|
29
|
+
│ Routes to @backend specialist
|
|
30
|
+
│ Quality Gate checks output
|
|
31
|
+
│ Stores in Vector Memory
|
|
32
|
+
│
|
|
33
|
+
▼
|
|
34
|
+
Returns governed, reviewed, audited code
|
|
35
|
+
```
|
|
19
36
|
|
|
20
|
-
|
|
21
|
-
- **Çok Dilli İletişim (TR/EN):** Ajan ordusuyla Türkçe veya İngilizce iletişim kurma seçeneği.
|
|
22
|
-
- **Dil Bağımsız Backend Orkestrasyonu:** Go, Java, Python, .NET veya Node.js projeleri için özelleştirilmiş ajan yetenekleri.
|
|
23
|
-
- **Sıkı Yönetişim:** Kritik işlemler için "Human-in-the-Loop" onayı ve Trace ID tabanlı izleme.
|
|
24
|
-
- **Gelişmiş Hafıza Sistemi:** Bağlam kaymasını engelleyen 3 katmanlı hafıza mimarisi.
|
|
25
|
-
- **Dinamik Görev Planlayıcı:** Karmaşık istekleri otonom olarak DAG (Directed Acyclic Graph) yapısında planlama.
|
|
26
|
-
- **Görsel Kontrol Paneli (Hermes UI):** Ajan durumlarını ve bellek akışını anlık izleyen API ve Dashboard desteği.
|
|
27
|
-
- **Token Ekonomisi:** %90'a varan tasarruf sağlayan "Cerrahi Müdahale" (Surgical Edits) mantığı.
|
|
28
|
-
- **Hermes Mesaj Aracısı:** Ajan çakışmalarını engelleyen asenkron, olay tabanlı iletişim.
|
|
29
|
-
- **Güvenli Yerel AI:** %100 veri gizliliği için **Yerel LLM** (Ollama, vLLM) desteği.
|
|
37
|
+
**No separate terminal needed. No CLI commands for daily use.** Just chat with your AI and use `@agent` syntax.
|
|
30
38
|
|
|
31
39
|
---
|
|
32
40
|
|
|
33
|
-
##
|
|
41
|
+
## 📋 Table of Contents
|
|
42
|
+
|
|
43
|
+
- [Quick Start](#quick-start)
|
|
44
|
+
- [How Atabey Plugs Into Your AI](#how-atabey-plugs-into-your-ai)
|
|
45
|
+
- [Installation](#installation)
|
|
46
|
+
- [Profile-Based Setup](#profile-based-setup)
|
|
47
|
+
- [13 Specialized Agents](#13-specialized-agents)
|
|
48
|
+
- [Core Features](#core-features)
|
|
49
|
+
- [Dashboard](#dashboard)
|
|
50
|
+
- [CLI Reference](#cli-reference)
|
|
51
|
+
- [Architecture](#architecture)
|
|
52
|
+
- [LLM Gateway](#llm-gateway)
|
|
53
|
+
- [Security](#security)
|
|
54
|
+
- [Contributing](#contributing)
|
|
34
55
|
|
|
35
|
-
|
|
56
|
+
---
|
|
36
57
|
|
|
37
|
-
|
|
38
|
-
Standard AI coding assistants act as independent "code writers". Without strict governance, this leads to:
|
|
39
|
-
- **Rogue AI:** Uncontrolled rewrites of entire files.
|
|
40
|
-
- **Context Drift:** Severe memory loss between development sessions.
|
|
41
|
-
- **Token Waste:** High API costs due to lack of optimization.
|
|
42
|
-
- **Multi-Agent Chaos:** Conflicts and race conditions between different agents.
|
|
43
|
-
- **Loss of Corporate Control:** Unsupervised CRUD operations and schema changes.
|
|
58
|
+
## Quick Start
|
|
44
59
|
|
|
45
|
-
###
|
|
46
|
-
- **Multi-Language Communication (TR/EN):** Option to interact with your agent army in Turkish or English.
|
|
47
|
-
- **Language-Agnostic Backend Orchestration:** Specialized agent capabilities for Go, Java, Python, .NET, or Node.js projects.
|
|
48
|
-
- **Strict Governance:** "Human-in-the-Loop" for critical operations and Trace ID tracking.
|
|
49
|
-
- **Advanced Memory System:** 3-tier architecture that prevents context drift.
|
|
50
|
-
- **Token Economy:** Up to 90% savings via "Surgical Edits" instead of full rewrites.
|
|
51
|
-
- **Hermes Message Broker:** Asynchronous communication preventing agent conflicts.
|
|
52
|
-
- **Private & Secure AI:** Support for **Local LLMs** (Ollama, vLLM) ensuring 100% data privacy.
|
|
60
|
+
### 1. Initialize Atabey in Your Project
|
|
53
61
|
|
|
54
|
-
|
|
62
|
+
```bash
|
|
63
|
+
npx atabey init gemini --profile freelancer --yes
|
|
64
|
+
```
|
|
55
65
|
|
|
56
|
-
|
|
66
|
+
### 2. Connect to Your AI Interface
|
|
67
|
+
|
|
68
|
+
Atabey generates an `mcp.json` config. Point your AI assistant to it:
|
|
69
|
+
|
|
70
|
+
**Claude Code:**
|
|
71
|
+
```json
|
|
72
|
+
// mcp.json
|
|
73
|
+
{
|
|
74
|
+
"mcpServers": {
|
|
75
|
+
"atabey": {
|
|
76
|
+
"command": "npx",
|
|
77
|
+
"args": ["atabey-mcp"],
|
|
78
|
+
"env": {
|
|
79
|
+
"ATABEY_PROJECT_ROOT": "/path/to/your/project"
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
```
|
|
57
85
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
| **@security** | Core | **Safety Guardian:** Manages auth, encryption, RLS, and secret protection. |
|
|
64
|
-
| **@backend** | Core | **Domain Logic:** API design, branded types, and layered architecture. |
|
|
65
|
-
| **@database** | Core | **DB Management:** Schema migrations, query optimization, type-safe access. |
|
|
66
|
-
| **@frontend** | Core | **UI Specialist:** Atomic, responsive-first interfaces, Zero-UI dependency. |
|
|
67
|
-
| **@mobile** | Core | **Mobile Engineer:** React Native/Expo specialist, offline-first focus. |
|
|
68
|
-
| **@native** | Core | **Native Division:** OS-level integrations, desktop (Tauri/Electron) layers. |
|
|
69
|
-
| **@quality** | Recon | **QA & Testing:** Enforces 80% coverage and zero-mock testing policies. |
|
|
70
|
-
| **@explorer** | Recon | **Intel Explorer:** Codebase discovery, dependency mapping, recon reports. |
|
|
71
|
-
| **@git** | Recon | **Logistics Master:** Version control hygiene, Trace-ID commit enforcement. |
|
|
72
|
-
| **@devops** | Recon | **Infrastructure:** CI/CD pipelines, containers, immutable deployments. |
|
|
86
|
+
**Gemini CLI:**
|
|
87
|
+
```bash
|
|
88
|
+
gemini config set mcpServers.atabey.command "npx"
|
|
89
|
+
gemini config set mcpServers.atabey.args "[\"atabey-mcp\"]"
|
|
90
|
+
```
|
|
73
91
|
|
|
74
|
-
|
|
92
|
+
**Cursor:**
|
|
93
|
+
```json
|
|
94
|
+
// .cursor/mcp.json
|
|
95
|
+
{
|
|
96
|
+
"mcpServers": {
|
|
97
|
+
"atabey": {
|
|
98
|
+
"command": "npx",
|
|
99
|
+
"args": ["atabey-mcp"]
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### 3. Start Using in AI Chat
|
|
75
106
|
|
|
76
|
-
|
|
107
|
+
Open your AI interface and simply type:
|
|
108
|
+
|
|
109
|
+
```
|
|
110
|
+
@backend Create a REST API for user management with CRUD operations
|
|
111
|
+
@security Audit the authentication middleware
|
|
112
|
+
@quality Run compliance check on the new feature
|
|
113
|
+
```
|
|
77
114
|
|
|
78
|
-
|
|
79
|
-
2. **[EDIT] Surgical Modification:** `replace_text` ile milimetrik kod düzenleme.
|
|
80
|
-
3. **[MSG] Hermes Messaging:** Trace-ID takipli ajanlar arası iletişim.
|
|
81
|
-
4. **[GOV] Governance & Locking:** OS seviyesinde kaynak kilitleme (Race condition koruması).
|
|
82
|
-
5. **[SKILL] QA & Discipline:** AST tabanlı kod uyumluluk denetimi ve test kapıları.
|
|
83
|
-
6. **[DB] Database Excellence:** Tip-güvenli sorgular (Kysely) ve repository desenleri.
|
|
84
|
-
7. **[START] DevOps Automation:** Güvenli sır (secret) yönetimi ve otonom yayın hatları.
|
|
115
|
+
**That's it.** Atabey handles routing, quality gates, memory, and governance automatically.
|
|
85
116
|
|
|
86
117
|
---
|
|
87
118
|
|
|
88
|
-
##
|
|
119
|
+
## How Atabey Plugs Into Your AI
|
|
89
120
|
|
|
90
|
-
|
|
91
|
-
|
|
121
|
+
```
|
|
122
|
+
┌──────────────────────────────────────────────────────────────────┐
|
|
123
|
+
│ YOUR AI INTERFACE │
|
|
124
|
+
│ Claude Code · Gemini CLI · Cursor · Codex CLI │
|
|
125
|
+
│ You type: @backend Create login service │
|
|
126
|
+
├──────────────────────────────────────────────────────────────────┤
|
|
127
|
+
│ MCP PROTOCOL (stdio) │
|
|
128
|
+
│ JSON-RPC messages over stdin/stdout │
|
|
129
|
+
├──────────────────────────────────────────────────────────────────┤
|
|
130
|
+
│ ATABEY MCP SERVER │
|
|
131
|
+
│ ┌──────────────────────────────────────────────────────────┐ │
|
|
132
|
+
│ │ 30+ Tools: read_file, write_file, send_message, │ │
|
|
133
|
+
│ │ orchestrate_loop, run_tests, check_lint, query_gateway │ │
|
|
134
|
+
│ └──────────────────────────────────────────────────────────┘ │
|
|
135
|
+
├──────────────────────────────────────────────────────────────────┤
|
|
136
|
+
│ GOVERNANCE LAYER │
|
|
137
|
+
│ Quality Gate → Risk Engine → Vector Memory → Audit Log │
|
|
138
|
+
└──────────────────────────────────────────────────────────────────┘
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Atabey is **not a separate platform**. It's a tool server that augments your existing AI assistant with:
|
|
142
|
+
- **13 specialized agents** (backend, frontend, security, etc.)
|
|
143
|
+
- **Deterministic quality gates** (AST analysis + lint + tests)
|
|
144
|
+
- **Risk detection** (blocks destructive operations)
|
|
145
|
+
- **Vector memory** (remembers past decisions)
|
|
146
|
+
- **Audit trails** (every action logged)
|
|
92
147
|
|
|
93
148
|
---
|
|
94
149
|
|
|
95
|
-
##
|
|
150
|
+
## Installation
|
|
151
|
+
|
|
152
|
+
### Requirements
|
|
96
153
|
|
|
97
|
-
|
|
154
|
+
| Requirement | Version |
|
|
155
|
+
|------------|---------|
|
|
156
|
+
| **Node.js** | >= 18.0.0 |
|
|
157
|
+
| **npm** | >= 9.0.0 |
|
|
158
|
+
| **AI Interface** | Claude Code, Gemini CLI, Cursor, Codex CLI |
|
|
98
159
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
160
|
+
### Quick Install
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
# Install globally (recommended)
|
|
164
|
+
npm install -g atabey
|
|
165
|
+
|
|
166
|
+
# Initialize with your preferred profile
|
|
167
|
+
npx atabey init gemini --profile freelancer --yes
|
|
168
|
+
|
|
169
|
+
# Verify installation
|
|
170
|
+
npx atabey status
|
|
171
|
+
|
|
172
|
+
# (Optional) Open the web dashboard
|
|
173
|
+
npx atabey dashboard
|
|
174
|
+
```
|
|
106
175
|
|
|
107
176
|
---
|
|
108
177
|
|
|
109
|
-
##
|
|
178
|
+
## Profile-Based Setup
|
|
110
179
|
|
|
111
|
-
|
|
180
|
+
Choose the profile that matches your team size. Atabey automatically configures the right agents, directories, and governance rules.
|
|
112
181
|
|
|
113
|
-
###
|
|
114
|
-
* **İnteraktif Kurulum:** `npx atabey init` komutuyla iletişim dilinizi ve backend teknolojinizi seçebilirsiniz.
|
|
115
|
-
* `--unified`: Tüm konfigürasyonu ve ajan tanımlarını tek bir `.atabey/` (veya `.agents/`) klasöründe toplar. Çalışma alanını temiz tutmak için kurumsal standarttır.
|
|
116
|
-
* `--yes` veya `-y`: Etkileşimli soruları atlayarak varsayılan değerlerle (TR dili, Node.js backend, Modern Mavi tema) hızlı kurulum yapar.
|
|
117
|
-
* `--dry-run`: Dosya yazmadan sadece kurulum adımlarını simüle eder.
|
|
182
|
+
### `--profile freelancer` (1-3 people)
|
|
118
183
|
|
|
119
|
-
|
|
184
|
+
```bash
|
|
185
|
+
npx atabey init gemini --profile freelancer
|
|
186
|
+
```
|
|
120
187
|
|
|
121
|
-
|
|
188
|
+
| Feature | What You Get |
|
|
189
|
+
|---------|-------------|
|
|
190
|
+
| **Agents** | `@manager`, `@backend`, `@quality` (3 agents) |
|
|
191
|
+
| **Setup Time** | ~10 seconds |
|
|
192
|
+
| **Daily Workflow** | Chat with AI using `@backend`, `@quality` |
|
|
193
|
+
| **Governance** | Basic quality gate + risk engine |
|
|
194
|
+
| **Why?** | Minimal overhead, just code |
|
|
195
|
+
|
|
196
|
+
### `--profile team` (5-15 people)
|
|
122
197
|
|
|
123
|
-
#### [GEMINI] Gemini CLI Adaptörü (`gemini`)
|
|
124
|
-
Gemini modelleri için stratejik komuta merkezi yapılandırması sunar.
|
|
125
198
|
```bash
|
|
126
|
-
|
|
127
|
-
npx atabey init gemini --unified --yes
|
|
199
|
+
npx atabey init gemini --profile team --unified
|
|
128
200
|
```
|
|
129
|
-
* **Çalışma Dizini:** `.gemini/`
|
|
130
|
-
* **Entegrasyon (Shim) Dosyası:** `GEMINI.md`
|
|
131
201
|
|
|
132
|
-
|
|
133
|
-
|
|
202
|
+
| Feature | What You Get |
|
|
203
|
+
|---------|-------------|
|
|
204
|
+
| **Agents** | 7 core agents (manager, security, architect, backend, frontend, quality, database) |
|
|
205
|
+
| **Setup Time** | ~30 seconds |
|
|
206
|
+
| **Daily Workflow** | Multi-agent collaboration with quality gate |
|
|
207
|
+
| **Dashboard** | 8 live modules, WebSocket real-time |
|
|
208
|
+
| **Governance** | Quality gate + risk engine + contract validation |
|
|
209
|
+
| **Why?** | Team-scale governance without overhead |
|
|
210
|
+
|
|
211
|
+
### `--profile enterprise` (15+ people)
|
|
212
|
+
|
|
134
213
|
```bash
|
|
135
|
-
npx atabey init
|
|
214
|
+
npx atabey init gemini --profile enterprise
|
|
136
215
|
```
|
|
137
|
-
* **Çalışma Dizini:** `.claude/`
|
|
138
|
-
* **Entegrasyon (Shim) Dosyası:** `CLAUDE.md`
|
|
139
216
|
|
|
140
|
-
|
|
141
|
-
|
|
217
|
+
| Feature | What You Get |
|
|
218
|
+
|---------|-------------|
|
|
219
|
+
| **Agents** | All 13 agents (Supreme + Core + Recon) |
|
|
220
|
+
| **Setup Time** | ~1 minute |
|
|
221
|
+
| **Daily Workflow** | Full governance with human-in-the-loop |
|
|
222
|
+
| **Dashboard** | 8 modules + audit/error/memory tracking |
|
|
223
|
+
| **Security** | Human-in-the-Loop, KVKK PII masking, audit log |
|
|
224
|
+
|
|
225
|
+
### Custom Setup
|
|
226
|
+
|
|
142
227
|
```bash
|
|
143
|
-
npx atabey init
|
|
228
|
+
npx atabey init gemini
|
|
229
|
+
# Interactive menu: choose agents, directories, colors manually
|
|
144
230
|
```
|
|
145
|
-
* **Çalışma Dizini:** `.grok/`
|
|
146
|
-
* **Entegrasyon (Shim) Dosyası:** `GROK.md`
|
|
147
231
|
|
|
148
|
-
|
|
149
|
-
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## 13 Specialized Agents
|
|
235
|
+
|
|
236
|
+
| Agent | Tier | Role | Freelancer | Team | Enterprise |
|
|
237
|
+
|-------|------|------|:----------:|:----:|:----------:|
|
|
238
|
+
| **@manager** | Supreme | Orchestration, governance, quality gate | ✅ | ✅ | ✅ |
|
|
239
|
+
| **@security** | Supreme | Security audit, vulnerability scanning | ❌ | ✅ | ✅ |
|
|
240
|
+
| **@architect** | Core | System design, contracts, architecture | ❌ | ✅ | ✅ |
|
|
241
|
+
| **@backend** | Core | Backend dev, API, business logic, tests | ✅ | ✅ | ✅ |
|
|
242
|
+
| **@frontend** | Core | UI, atomic components, responsive design | ❌ | ✅ | ✅ |
|
|
243
|
+
| **@quality** | Core | Compliance, lint, test coverage | ✅ | ✅ | ✅ |
|
|
244
|
+
| **@database** | Core | Database management, migrations, queries | ❌ | ✅ | ✅ |
|
|
245
|
+
| **@analyst** | Core | Strategy analysis, requirements | ❌ | ❌ | ✅ |
|
|
246
|
+
| **@mobile** | Core | React Native mobile development | ❌ | ❌ | ✅ |
|
|
247
|
+
| **@native** | Core | Native platform integration | ❌ | ❌ | ✅ |
|
|
248
|
+
| **@devops** | Core | CI/CD, deploy, infrastructure | ❌ | ❌ | ✅ |
|
|
249
|
+
| **@explorer** | Recon | Codebase discovery, analysis | ❌ | ❌ | ✅ |
|
|
250
|
+
| **@git** | Recon | Version control, commit management | ❌ | ❌ | ✅ |
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
## Core Features
|
|
255
|
+
|
|
256
|
+
### 1. Deterministic Quality Gate
|
|
257
|
+
No agent can push code directly to production. All outputs pass through AST analysis (compliance), linting, and unit tests. Failed code triggers an automatic 3-attempt retry loop.
|
|
258
|
+
|
|
259
|
+
### 2. Autonomous Vector Memory
|
|
260
|
+
Project context, contracts, and past tasks are stored locally via `better-sqlite3` using TF-IDF semantic search (cosine similarity). Agents search past architectural decisions.
|
|
261
|
+
|
|
262
|
+
### 3. Hermes Message Broker
|
|
263
|
+
Agents communicate asynchronously via a SQLite-backed message queue. A file-based lock protocol prevents race conditions.
|
|
264
|
+
|
|
265
|
+
### 4. Risk Engine (Human-in-the-Loop)
|
|
266
|
+
Operations containing `DROP`, `DELETE`, `TRUNCATE`, or secret manipulation are flagged. Execution is blocked until human approval via `atabey approve <traceId>`.
|
|
267
|
+
|
|
268
|
+
### 5. Smart Routing Engine
|
|
269
|
+
TF-IDF keyword matching routes natural language tasks to the most capable agent. Uses specialized weights for all 13 agents.
|
|
270
|
+
|
|
271
|
+
### 6. Web Dashboard
|
|
272
|
+
Real-time WebSocket dashboard with 8 live modules. Fully responsive (mobile + desktop).
|
|
273
|
+
|
|
274
|
+
### 7. LLM Gateway & Load Balancer
|
|
275
|
+
Load balancing across multiple LLM providers (OpenAI, Anthropic, Google, Groq, Ollama) with circuit breaker, rate limiting, and cost tracking.
|
|
276
|
+
|
|
277
|
+
### 8. Multi-Platform Support
|
|
278
|
+
Claude Code, Gemini CLI, Cursor, Codex CLI, Antigravity CLI — automatic agent configuration for all platforms.
|
|
279
|
+
|
|
280
|
+
### 9. Polyglot Backend Support
|
|
281
|
+
Node.js, Go, Java, Python, .NET — automatic scaffolding based on backend language selection.
|
|
282
|
+
|
|
283
|
+
---
|
|
284
|
+
|
|
285
|
+
## Dashboard
|
|
286
|
+
|
|
150
287
|
```bash
|
|
151
|
-
npx atabey
|
|
288
|
+
npx atabey dashboard # Opens at http://localhost:5858
|
|
152
289
|
```
|
|
153
|
-
* **Çalışma Dizini:** `.cursor/rules/`
|
|
154
|
-
* **Ajan Dosya Uzantısı:** `.mdc`
|
|
155
290
|
|
|
156
|
-
|
|
157
|
-
|
|
291
|
+
| Module | Description | Update |
|
|
292
|
+
|--------|-------------|--------|
|
|
293
|
+
| 🤖 **Agent Monitor** | AI agent status + tasks | WS (5s) |
|
|
294
|
+
| 📨 **Hermes Messages** | Message queue + filter | WS (5s) |
|
|
295
|
+
| 🔐 **Approval Center** | Human approvals | WS |
|
|
296
|
+
| 📋 **Task Planner** | Task DAG + progress | REST (5s) |
|
|
297
|
+
| 📝 **Agent Logs** | Execution logs | WS (5s) |
|
|
298
|
+
| ⚠️ **Error Tracker** | Lint/compliance errors | WS |
|
|
299
|
+
| 🧠 **Memory Insights** | Vector memory search | REST |
|
|
300
|
+
| 🛡️ **Compliance** | Quality gate status | REST (15s) |
|
|
301
|
+
|
|
302
|
+
---
|
|
303
|
+
|
|
304
|
+
## CLI Reference
|
|
305
|
+
|
|
158
306
|
```bash
|
|
159
|
-
|
|
307
|
+
atabey init [adapter] Initialize Atabey (--profile freelancer|team|enterprise)
|
|
308
|
+
atabey mcp start Start MCP server (connects to your AI interface)
|
|
309
|
+
atabey mcp install Generate mcp.json config for AI integration
|
|
310
|
+
atabey dashboard [port] Open web dashboard (default: 5858)
|
|
311
|
+
atabey status Show agent statuses and costs
|
|
312
|
+
atabey check Full health and compliance check
|
|
313
|
+
atabey orchestrate Start autonomous orchestration loop
|
|
314
|
+
atabey approve <traceId> Approve a blocked high-risk task
|
|
315
|
+
atabey @agent "task" Send task directly to an agent
|
|
160
316
|
```
|
|
161
|
-
* **Çalışma Dizini:** `.agents/`
|
|
162
|
-
* **Entegrasyon (Shim) Dosyası:** `copilot-instructions.md`
|
|
163
317
|
|
|
164
|
-
|
|
165
|
-
|
|
318
|
+
Full command list: see `atabey help` or [ARCHITECTURE.md](ARCHITECTURE.md)
|
|
319
|
+
|
|
320
|
+
---
|
|
321
|
+
|
|
322
|
+
## Architecture
|
|
323
|
+
|
|
324
|
+
```
|
|
325
|
+
┌──────────────────────────────────────────────────────────────────┐
|
|
326
|
+
│ AI Chat Interface │
|
|
327
|
+
│ @backend Create login service (in Claude/Gemini/Cursor) │
|
|
328
|
+
├──────────────────────────────────────────────────────────────────┤
|
|
329
|
+
│ MCP Server (framework-mcp/) │
|
|
330
|
+
│ 30+ Tools · Stdio Transport │
|
|
331
|
+
│ Zod Validation · Error Handling │
|
|
332
|
+
├──────────────────────────────────────────────────────────────────┤
|
|
333
|
+
│ src/cli/ 30+ Commands │
|
|
334
|
+
│ src/modules/ Engines + Agents │
|
|
335
|
+
│ src/shared/ Types + Storage │
|
|
336
|
+
├────────────────┬───────────────────────────┬──────────────────────┤
|
|
337
|
+
│ ▼ ▼ │
|
|
338
|
+
│ ┌──────────────────────────┐ ┌──────────────────────────────┐ │
|
|
339
|
+
│ │ Web Dashboard │ │ SQLite (better-sqlite3) │ │
|
|
340
|
+
│ │ Port 5858 │ │ Hermes Queue · Memory │ │
|
|
341
|
+
│ │ 8 Module WS Live │ │ Audit Logs · Locks │ │
|
|
342
|
+
│ │ Responsive (Mob+Desk) │ │ │ │
|
|
343
|
+
│ └──────────────────────────┘ └──────────────────────────────┘ │
|
|
344
|
+
└──────────────────────────────────────────────────────────────────┘
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
---
|
|
348
|
+
|
|
349
|
+
## LLM Gateway
|
|
350
|
+
|
|
351
|
+
Atabey provides an integrated gateway for managing multiple LLM providers:
|
|
352
|
+
|
|
353
|
+
| Provider | Models | Status |
|
|
354
|
+
|----------|--------|--------|
|
|
355
|
+
| **OpenAI** | GPT-4, GPT-4o, o3, o4-mini | ✅ Active |
|
|
356
|
+
| **Anthropic** | Claude Opus 4.5, Sonnet 4.5, Haiku 3.5 | ✅ Active |
|
|
357
|
+
| **Google** | Gemini 2.5 Pro, Flash, Flash-Lite | ✅ Active |
|
|
358
|
+
| **Groq** | Llama, Mixtral (fast inference) | ✅ Active |
|
|
359
|
+
| **Ollama** | Local models (LLaMA, Mistral, etc.) | ✅ Active |
|
|
360
|
+
|
|
166
361
|
```bash
|
|
167
|
-
npx atabey
|
|
362
|
+
npx atabey gateway status
|
|
363
|
+
npx atabey gateway configure
|
|
168
364
|
```
|
|
169
|
-
* **Çalışma Dizini:** `.atabey/`
|
|
170
|
-
* **Entegrasyon (Shim) Dosyası:** `LOCAL_AI.md`
|
|
171
365
|
|
|
172
|
-
|
|
173
|
-
|
|
366
|
+
---
|
|
367
|
+
|
|
368
|
+
## Security
|
|
369
|
+
|
|
370
|
+
### Zero Type Hole Policy
|
|
371
|
+
- `any` type usage is **strictly forbidden**
|
|
372
|
+
- All function inputs validated with Zod schemas
|
|
373
|
+
- Type safety enforced in CI pipeline
|
|
374
|
+
|
|
375
|
+
### Zero Mock Policy
|
|
376
|
+
- Mock data usage is **forbidden** (except 3rd party services)
|
|
377
|
+
- Tests run against real implementations
|
|
378
|
+
|
|
379
|
+
### PII Masking (KVKK Compliant)
|
|
380
|
+
- All logs scanned for Personally Identifiable Information
|
|
381
|
+
- Sensitive data automatically masked
|
|
382
|
+
- Turkish KVKK and EU GDPR compliant
|
|
383
|
+
|
|
384
|
+
### Human-in-the-Loop
|
|
385
|
+
- Risk score ≥ 60 requires human approval
|
|
386
|
+
- `DROP`, `DELETE`, `TRUNCATE` operations blocked
|
|
387
|
+
- Approval via `atabey approve <traceId>`
|
|
388
|
+
|
|
389
|
+
---
|
|
390
|
+
|
|
391
|
+
## Testing
|
|
392
|
+
|
|
174
393
|
```bash
|
|
175
|
-
|
|
394
|
+
npm test # Run all tests (223 passing)
|
|
395
|
+
npm run test:watch # Watch mode
|
|
396
|
+
npm run test:coverage # Coverage report
|
|
176
397
|
```
|
|
177
|
-
* **Çalışma Dizini:** `.antigravity/`
|
|
178
|
-
* **Entegrasyon (Shim) Dosyası:** `AGENTS.md`
|
|
179
398
|
|
|
180
|
-
|
|
399
|
+
---
|
|
181
400
|
|
|
182
|
-
|
|
401
|
+
## Contributing
|
|
183
402
|
|
|
184
|
-
|
|
185
|
-
* **mcp.json:** Root MCP Sunucu Entegrasyonu.
|
|
186
|
-
* **.atabey/config.json:** Atabey tema, adaptör ve profil ayarları.
|
|
187
|
-
* **.atabey/STATUS.md:** Ajan durumlarını gösteren canlı tablo.
|
|
188
|
-
* **.atabey/messages/:** Ajanlar arası asenkron kuyruk klasörü (.lock dahil).
|
|
189
|
-
* **.atabey/logs/:** Ajanların işlem logları.
|
|
190
|
-
* **.atabey/memory/PROJECT_MEMORY.md:** Aktif geliştirme bağlamı ve bellek dosyası.
|
|
191
|
-
* **.atabey/memory-graph/shared-facts.json:** Proje teknoloji yığını ve temel gerçekleri.
|
|
403
|
+
Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on the code of conduct and pull request process.
|
|
192
404
|
|
|
193
|
-
|
|
405
|
+
```bash
|
|
406
|
+
git clone https://github.com/ysf-bkr/atabey.git
|
|
407
|
+
cd atabey
|
|
408
|
+
npm install
|
|
409
|
+
npm install --prefix framework-mcp
|
|
410
|
+
npm install --prefix framework-mcp/dashboard
|
|
411
|
+
npm run build
|
|
412
|
+
```
|
|
194
413
|
|
|
195
|
-
|
|
196
|
-
* **Taşınabilir MCP Yolları:** `atabey init` esnasında üretilen `mcp.json` ayarlarında yerel `npx` cache veya mutlak kullanıcı yolları yerine, projenin kendi `node_modules/atabey/framework-mcp/dist/index.js` altındaki taşınabilir göreli yollar kullanılmaya başlandı.
|
|
197
|
-
* **Güvenlik & AST Denetim Açığı Kapatıldı:** `patch_file` aracı da artık anayasal denetim (`verifyCorporateCompliance`) kapsamına alındı. Böylece ajanların `patch_file` ile `any` veya `console.log` yasaklarını delmesi engellendi.
|
|
414
|
+
---
|
|
198
415
|
|
|
199
|
-
|
|
200
|
-
* **Portable MCP Server Paths:** During `atabey init`, generated `mcp.json` configs now use portable relative paths (`node_modules/atabey/...`) instead of local absolute or temporary `npx` cache paths.
|
|
201
|
-
* **Security & AST compliance hole patched:** Added `verifyCorporateCompliance` check to the `patch_file` tool. Agents can no longer bypass zero-any and zero-console checks via line-range patching.
|
|
416
|
+
## License
|
|
202
417
|
|
|
203
|
-
|
|
418
|
+
MIT License — [Yusuf BEKAR](mailto:ybekar@msn.com)
|
|
204
419
|
|
|
205
|
-
|
|
420
|
+
Enterprise inquiries: **ybekar@msn.com**
|
|
206
421
|
|
|
207
422
|
---
|
|
208
423
|
|
|
209
|
-
|
|
424
|
+
*Developer: **Yusuf BEKAR** — "Order from Chaos"*
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# Atabey CLI Bash/Zsh Completion
|
|
4
|
+
# To enable, add this to your .bashrc or .zshrc:
|
|
5
|
+
# source /path/to/atabey/bin/completion.sh
|
|
6
|
+
|
|
7
|
+
_atabey_completion() {
|
|
8
|
+
local cur prev opts
|
|
9
|
+
COMPREPLY=()
|
|
10
|
+
cur="${COMP_WORDS[COMP_CWORD]}"
|
|
11
|
+
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
|
12
|
+
opts="init check status trace:new trace:replay update_project_memory plan plan:submit orchestrate loop verify-contract update-contract dashboard validate validate-al-registry check:al version help git:commit git:sync check:compliance explorer:graph explorer:audit knowledge:update knowledge:search log:action run-script security:audit check:lint approve create-agent mcp index quickstart"
|
|
13
|
+
|
|
14
|
+
if [[ ${cur} == @* ]] ; then
|
|
15
|
+
local agents="@manager @security @architect @backend @frontend @mobile @quality @database @devops @analyst @native @explorer @git"
|
|
16
|
+
COMPREPLY=( $(compgen -W "${agents}" -- ${cur}) )
|
|
17
|
+
return 0
|
|
18
|
+
fi
|
|
19
|
+
|
|
20
|
+
case "${prev}" in
|
|
21
|
+
atabey)
|
|
22
|
+
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
|
|
23
|
+
return 0
|
|
24
|
+
;;
|
|
25
|
+
*)
|
|
26
|
+
;;
|
|
27
|
+
esac
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
complete -F _atabey_completion atabey
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import fs from "fs";
|
|
4
|
-
import path from "path";
|
|
5
4
|
import yaml from "js-yaml";
|
|
5
|
+
import path from "path";
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* AL-compatible agent folder names across all adapters (after init).
|
|
@@ -48,10 +48,10 @@ function parseFrontmatter(content) {
|
|
|
48
48
|
try {
|
|
49
49
|
fm = yaml.load(match[1]) || {};
|
|
50
50
|
} catch (e) {
|
|
51
|
-
|
|
51
|
+
process.stderr.write(`[ERROR] Error parsing YAML frontmatter: ${e}\n`);
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
-
|
|
54
|
+
|
|
55
55
|
// Also parse from HTML comments in the body as fallback/complement
|
|
56
56
|
const commentMatches = content.matchAll(/<!--\s*(\w+)\s*:\s*(.*?)\s*-->/g);
|
|
57
57
|
for (const m of commentMatches) {
|
|
@@ -94,7 +94,7 @@ try {
|
|
|
94
94
|
|
|
95
95
|
let totalFailed = 0;
|
|
96
96
|
|
|
97
|
-
process.stderr.write(`\n[SECURITY] STARTING
|
|
97
|
+
process.stderr.write(`\n[SECURITY] STARTING AL REGISTRY VALIDATION (${detected.frameworkDir})...\n`);
|
|
98
98
|
process.stderr.write("--------------------------------------------------\n");
|
|
99
99
|
process.stderr.write("| Agent ID | Format | Status | Category |\n");
|
|
100
100
|
process.stderr.write("--------------------------------------------------\n");
|
|
@@ -102,8 +102,8 @@ try {
|
|
|
102
102
|
for (const file of files) {
|
|
103
103
|
const fileName = file.name;
|
|
104
104
|
const filePath = file.path;
|
|
105
|
-
if (fileName === "
|
|
106
|
-
|
|
105
|
+
if (fileName === "agent_AL_schema.json" || fileName === "schema") continue;
|
|
106
|
+
|
|
107
107
|
const content = fs.readFileSync(filePath, "utf8");
|
|
108
108
|
const isMd = fileName.endsWith(".md");
|
|
109
109
|
|