atabey 0.0.16 → 0.0.18
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/README.md +174 -699
- package/dist/atabey/src/cli/commands/approve.d.ts +1 -0
- package/dist/atabey/src/cli/commands/approve.js +64 -0
- package/dist/atabey/src/cli/commands/approve.js.map +1 -0
- package/dist/atabey/src/cli/commands/check.d.ts +1 -0
- package/dist/atabey/src/cli/commands/check.js +197 -0
- package/dist/atabey/src/cli/commands/check.js.map +1 -0
- package/dist/atabey/src/cli/commands/compliance.d.ts +5 -0
- package/dist/atabey/src/cli/commands/compliance.js +43 -0
- package/dist/atabey/src/cli/commands/compliance.js.map +1 -0
- package/dist/atabey/src/cli/commands/contract.d.ts +10 -0
- package/dist/atabey/src/cli/commands/contract.js +52 -0
- package/dist/atabey/src/cli/commands/contract.js.map +1 -0
- package/dist/atabey/src/cli/commands/coverage.d.ts +1 -0
- package/dist/atabey/src/cli/commands/coverage.js +121 -0
- package/dist/atabey/src/cli/commands/coverage.js.map +1 -0
- package/dist/atabey/src/cli/commands/dashboard.d.ts +5 -0
- package/dist/atabey/src/cli/commands/dashboard.js +753 -0
- package/dist/atabey/src/cli/commands/dashboard.js.map +1 -0
- package/dist/atabey/src/cli/commands/explorer.d.ts +2 -0
- package/dist/atabey/src/cli/commands/explorer.js +44 -0
- package/dist/atabey/src/cli/commands/explorer.js.map +1 -0
- package/dist/atabey/src/cli/commands/git.d.ts +2 -0
- package/dist/atabey/src/cli/commands/git.js +40 -0
- package/dist/atabey/src/cli/commands/git.js.map +1 -0
- package/dist/atabey/src/cli/commands/index-codebase.d.ts +4 -0
- package/dist/atabey/src/cli/commands/index-codebase.js +52 -0
- package/dist/atabey/src/cli/commands/index-codebase.js.map +1 -0
- package/dist/atabey/src/cli/commands/init/create-agent.d.ts +4 -0
- package/dist/atabey/src/cli/commands/init/create-agent.js +59 -0
- package/dist/atabey/src/cli/commands/init/create-agent.js.map +1 -0
- package/dist/atabey/src/cli/commands/init/scaffold-core.d.ts +13 -0
- package/dist/atabey/src/cli/commands/init/scaffold-core.js +129 -0
- package/dist/atabey/src/cli/commands/init/scaffold-core.js.map +1 -0
- package/dist/atabey/src/cli/commands/init/scaffold-docs.d.ts +4 -0
- package/dist/atabey/src/cli/commands/init/scaffold-docs.js +36 -0
- package/dist/atabey/src/cli/commands/init/scaffold-docs.js.map +1 -0
- package/dist/atabey/src/cli/commands/init/scaffold-ops.d.ts +1 -0
- package/dist/atabey/src/cli/commands/init/scaffold-ops.js +81 -0
- package/dist/atabey/src/cli/commands/init/scaffold-ops.js.map +1 -0
- package/dist/atabey/src/cli/commands/init/scaffold-standards.d.ts +2 -0
- package/dist/atabey/src/cli/commands/init/scaffold-standards.js +84 -0
- package/dist/atabey/src/cli/commands/init/scaffold-standards.js.map +1 -0
- package/dist/atabey/src/cli/commands/init.d.ts +11 -0
- package/dist/atabey/src/cli/commands/init.js +362 -0
- package/dist/atabey/src/cli/commands/init.js.map +1 -0
- package/dist/atabey/src/cli/commands/knowledge.d.ts +2 -0
- package/dist/atabey/src/cli/commands/knowledge.js +16 -0
- package/dist/atabey/src/cli/commands/knowledge.js.map +1 -0
- package/dist/atabey/src/cli/commands/lint.d.ts +4 -0
- package/dist/atabey/src/cli/commands/lint.js +24 -0
- package/dist/atabey/src/cli/commands/lint.js.map +1 -0
- package/dist/atabey/src/cli/commands/log.d.ts +10 -0
- package/dist/atabey/src/cli/commands/log.js +14 -0
- package/dist/atabey/src/cli/commands/log.js.map +1 -0
- package/dist/atabey/src/cli/commands/mcp.d.ts +11 -0
- package/dist/atabey/src/cli/commands/mcp.js +132 -0
- package/dist/atabey/src/cli/commands/mcp.js.map +1 -0
- package/dist/atabey/src/cli/commands/memory.d.ts +1 -0
- package/dist/atabey/src/cli/commands/memory.js +5 -0
- package/dist/atabey/src/cli/commands/memory.js.map +1 -0
- package/dist/atabey/src/cli/commands/orchestrate.d.ts +61 -0
- package/dist/atabey/src/cli/commands/orchestrate.js +238 -0
- package/dist/atabey/src/cli/commands/orchestrate.js.map +1 -0
- package/dist/atabey/src/cli/commands/plan.d.ts +11 -0
- package/dist/atabey/src/cli/commands/plan.js +120 -0
- package/dist/atabey/src/cli/commands/plan.js.map +1 -0
- package/dist/atabey/src/cli/commands/quickstart.d.ts +9 -0
- package/dist/atabey/src/cli/commands/quickstart.js +60 -0
- package/dist/atabey/src/cli/commands/quickstart.js.map +1 -0
- package/dist/atabey/src/cli/commands/script.d.ts +1 -0
- package/dist/atabey/src/cli/commands/script.js +28 -0
- package/dist/atabey/src/cli/commands/script.js.map +1 -0
- package/dist/atabey/src/cli/commands/security.d.ts +1 -0
- package/dist/atabey/src/cli/commands/security.js +34 -0
- package/dist/atabey/src/cli/commands/security.js.map +1 -0
- package/dist/atabey/src/cli/commands/status.d.ts +4 -0
- package/dist/atabey/src/cli/commands/status.js +122 -0
- package/dist/atabey/src/cli/commands/status.js.map +1 -0
- package/dist/atabey/src/cli/commands/trace.d.ts +10 -0
- package/dist/atabey/src/cli/commands/trace.js +108 -0
- package/dist/atabey/src/cli/commands/trace.js.map +1 -0
- package/dist/atabey/src/cli/index.js +282 -0
- package/dist/atabey/src/cli/index.js.map +1 -0
- package/dist/atabey/src/cli/platforms/core.d.ts +12 -0
- package/dist/atabey/src/cli/platforms/core.js +73 -0
- package/dist/atabey/src/cli/platforms/core.js.map +1 -0
- package/dist/atabey/src/cli/platforms/index.d.ts +5 -0
- package/dist/atabey/src/cli/platforms/index.js +6 -0
- package/dist/atabey/src/cli/platforms/index.js.map +1 -0
- package/dist/atabey/src/cli/platforms/paths.d.ts +15 -0
- package/dist/atabey/src/cli/platforms/paths.js +102 -0
- package/dist/atabey/src/cli/platforms/paths.js.map +1 -0
- package/dist/atabey/src/cli/platforms/scaffold.d.ts +2 -0
- package/dist/atabey/src/cli/platforms/scaffold.js +73 -0
- package/dist/atabey/src/cli/platforms/scaffold.js.map +1 -0
- package/dist/atabey/src/cli/platforms/utils.d.ts +4 -0
- package/dist/atabey/src/cli/platforms/utils.js.map +1 -0
- package/dist/atabey/src/cli/shims.d.ts +1 -0
- package/dist/atabey/src/cli/shims.js +67 -0
- package/dist/atabey/src/cli/shims.js.map +1 -0
- package/dist/atabey/src/cli/utils/claude.d.ts +8 -0
- package/dist/atabey/src/cli/utils/claude.js +58 -0
- package/dist/atabey/src/cli/utils/claude.js.map +1 -0
- package/dist/atabey/src/cli/utils/compliance.d.ts +42 -0
- package/dist/atabey/src/cli/utils/compliance.js +150 -0
- package/dist/atabey/src/cli/utils/compliance.js.map +1 -0
- package/dist/atabey/src/cli/utils/config-schema.d.ts +139 -0
- package/dist/atabey/src/cli/utils/config-schema.js +43 -0
- package/dist/atabey/src/cli/utils/config-schema.js.map +1 -0
- package/dist/atabey/src/cli/utils/fs.d.ts +10 -0
- package/dist/atabey/src/cli/utils/fs.js +139 -0
- package/dist/atabey/src/cli/utils/fs.js.map +1 -0
- package/dist/atabey/src/cli/utils/i18n.d.ts +21 -0
- package/dist/atabey/src/cli/utils/i18n.js +36 -0
- package/dist/atabey/src/cli/utils/i18n.js.map +1 -0
- package/dist/atabey/src/cli/utils/memory.d.ts +39 -0
- package/dist/atabey/src/cli/utils/memory.js +281 -0
- package/dist/atabey/src/cli/utils/memory.js.map +1 -0
- package/dist/atabey/src/cli/utils/pkg.d.ts +43 -0
- package/dist/atabey/src/cli/utils/pkg.js +283 -0
- package/dist/atabey/src/cli/utils/pkg.js.map +1 -0
- package/dist/atabey/src/cli/utils/quality.d.ts +25 -0
- package/dist/atabey/src/cli/utils/quality.js +66 -0
- package/dist/atabey/src/cli/utils/quality.js.map +1 -0
- package/dist/atabey/src/cli/utils/schemas.d.ts +49 -0
- package/dist/atabey/src/cli/utils/schemas.js +20 -0
- package/dist/atabey/src/cli/utils/schemas.js.map +1 -0
- package/dist/atabey/src/cli/utils/string.d.ts +7 -0
- package/dist/atabey/src/cli/utils/string.js +50 -0
- package/dist/atabey/src/cli/utils/string.js.map +1 -0
- package/dist/atabey/src/cli/utils/time.d.ts +2 -0
- package/dist/atabey/src/cli/utils/time.js +28 -0
- package/dist/atabey/src/cli/utils/time.js.map +1 -0
- package/dist/atabey/src/cli/utils/ui.d.ts +53 -0
- package/dist/atabey/src/cli/utils/ui.js +101 -0
- package/dist/atabey/src/cli/utils/ui.js.map +1 -0
- package/dist/atabey/src/contracts/index.d.ts +1 -0
- package/dist/atabey/src/contracts/index.js +2 -0
- package/dist/atabey/src/contracts/index.js.map +1 -0
- package/dist/atabey/src/contracts/tasks.d.ts +44 -0
- package/dist/atabey/src/contracts/tasks.js +21 -0
- package/dist/atabey/src/contracts/tasks.js.map +1 -0
- package/dist/atabey/src/modules/agents/definitions.d.ts +26 -0
- package/dist/atabey/src/modules/agents/definitions.js +564 -0
- package/dist/atabey/src/modules/agents/definitions.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/analyst.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/analyst.js +40 -0
- package/dist/atabey/src/modules/agents/registry/analyst.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/architect.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/architect.js +43 -0
- package/dist/atabey/src/modules/agents/registry/architect.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/backend.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/backend.js +51 -0
- package/dist/atabey/src/modules/agents/registry/backend.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/database.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/database.js +46 -0
- package/dist/atabey/src/modules/agents/registry/database.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/devops.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/devops.js +46 -0
- package/dist/atabey/src/modules/agents/registry/devops.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/explorer.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/explorer.js +38 -0
- package/dist/atabey/src/modules/agents/registry/explorer.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/frontend.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/frontend.js +53 -0
- package/dist/atabey/src/modules/agents/registry/frontend.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/git.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/git.js +37 -0
- package/dist/atabey/src/modules/agents/registry/git.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/manager.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/manager.js +65 -0
- package/dist/atabey/src/modules/agents/registry/manager.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/mobile.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/mobile.js +42 -0
- package/dist/atabey/src/modules/agents/registry/mobile.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/native.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/native.js +42 -0
- package/dist/atabey/src/modules/agents/registry/native.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/quality.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/quality.js +44 -0
- package/dist/atabey/src/modules/agents/registry/quality.js.map +1 -0
- package/dist/atabey/src/modules/agents/registry/security.d.ts +2 -0
- package/dist/atabey/src/modules/agents/registry/security.js +43 -0
- package/dist/atabey/src/modules/agents/registry/security.js.map +1 -0
- package/dist/atabey/src/modules/agents/types.d.ts +33 -0
- package/dist/atabey/src/modules/agents/types.js +2 -0
- package/dist/atabey/src/modules/agents/types.js.map +1 -0
- package/dist/atabey/src/modules/contracts/api.d.ts +178 -0
- package/dist/atabey/src/modules/contracts/api.js +56 -0
- package/dist/atabey/src/modules/contracts/api.js.map +1 -0
- package/dist/atabey/src/modules/contracts/index.d.ts +5 -0
- package/dist/atabey/src/modules/contracts/index.js +6 -0
- package/dist/atabey/src/modules/contracts/index.js.map +1 -0
- package/dist/atabey/src/modules/engines/agent-executor.d.ts +46 -0
- package/dist/atabey/src/modules/engines/agent-executor.js +241 -0
- package/dist/atabey/src/modules/engines/agent-executor.js.map +1 -0
- package/dist/atabey/src/modules/engines/agent-loop.d.ts +34 -0
- package/dist/atabey/src/modules/engines/agent-loop.js +102 -0
- package/dist/atabey/src/modules/engines/agent-loop.js.map +1 -0
- package/dist/atabey/src/modules/engines/contract-engine.d.ts +46 -0
- package/dist/atabey/src/modules/engines/contract-engine.js +116 -0
- package/dist/atabey/src/modules/engines/contract-engine.js.map +1 -0
- package/dist/atabey/src/modules/engines/crud-governance.d.ts +64 -0
- package/dist/atabey/src/modules/engines/crud-governance.js +184 -0
- package/dist/atabey/src/modules/engines/crud-governance.js.map +1 -0
- package/dist/atabey/src/modules/engines/discovery-engine.d.ts +42 -0
- package/dist/atabey/src/modules/engines/discovery-engine.js +161 -0
- package/dist/atabey/src/modules/engines/discovery-engine.js.map +1 -0
- package/dist/atabey/src/modules/engines/evaluation-engine.d.ts +18 -0
- package/dist/atabey/src/modules/engines/evaluation-engine.js +171 -0
- package/dist/atabey/src/modules/engines/evaluation-engine.js.map +1 -0
- package/dist/atabey/src/modules/engines/file-lock.d.ts +41 -0
- package/dist/atabey/src/modules/engines/file-lock.js +168 -0
- package/dist/atabey/src/modules/engines/file-lock.js.map +1 -0
- package/dist/atabey/src/modules/engines/health-engine.d.ts +22 -0
- package/dist/atabey/src/modules/engines/health-engine.js +127 -0
- package/dist/atabey/src/modules/engines/health-engine.js.map +1 -0
- package/dist/atabey/src/modules/engines/phase-engine.d.ts +82 -0
- package/dist/atabey/src/modules/engines/phase-engine.js +211 -0
- package/dist/atabey/src/modules/engines/phase-engine.js.map +1 -0
- package/dist/atabey/src/modules/engines/planning-engine.d.ts +25 -0
- package/dist/atabey/src/modules/engines/planning-engine.js +80 -0
- package/dist/atabey/src/modules/engines/planning-engine.js.map +1 -0
- package/dist/atabey/src/modules/engines/policy-engine.d.ts +63 -0
- package/dist/atabey/src/modules/engines/policy-engine.js +186 -0
- package/dist/atabey/src/modules/engines/policy-engine.js.map +1 -0
- package/dist/atabey/src/modules/engines/quality-gate.d.ts +31 -0
- package/dist/atabey/src/modules/engines/quality-gate.js +95 -0
- package/dist/atabey/src/modules/engines/quality-gate.js.map +1 -0
- package/dist/atabey/src/modules/engines/risk-engine.d.ts +34 -0
- package/dist/atabey/src/modules/engines/risk-engine.js +201 -0
- package/dist/atabey/src/modules/engines/risk-engine.js.map +1 -0
- package/dist/atabey/src/modules/engines/routing-engine.d.ts +96 -0
- package/dist/atabey/src/modules/engines/routing-engine.js +505 -0
- package/dist/atabey/src/modules/engines/routing-engine.js.map +1 -0
- package/dist/atabey/src/modules/engines/session-engine.d.ts +68 -0
- package/dist/atabey/src/modules/engines/session-engine.js +141 -0
- package/dist/atabey/src/modules/engines/session-engine.js.map +1 -0
- package/dist/atabey/src/modules/engines/types.d.ts +51 -0
- package/dist/atabey/src/modules/engines/types.js +2 -0
- package/dist/atabey/src/modules/engines/types.js.map +1 -0
- package/dist/atabey/src/modules/memory/core.d.ts +42 -0
- package/dist/atabey/src/modules/memory/core.js +100 -0
- package/dist/atabey/src/modules/memory/core.js.map +1 -0
- package/dist/atabey/src/modules/memory/embedding.d.ts +28 -0
- package/dist/atabey/src/modules/memory/embedding.js +131 -0
- package/dist/atabey/src/modules/memory/embedding.js.map +1 -0
- package/dist/atabey/src/modules/memory/types.d.ts +18 -0
- package/dist/atabey/src/modules/memory/types.js +2 -0
- package/dist/atabey/src/modules/memory/types.js.map +1 -0
- package/dist/atabey/src/modules/memory/vector-store.d.ts +13 -0
- package/dist/atabey/src/modules/memory/vector-store.js +75 -0
- package/dist/atabey/src/modules/memory/vector-store.js.map +1 -0
- package/dist/atabey/src/modules/providers/definitions.js.map +1 -0
- package/dist/atabey/src/modules/providers/llm-provider.d.ts +87 -0
- package/dist/atabey/src/modules/providers/llm-provider.js +242 -0
- package/dist/atabey/src/modules/providers/llm-provider.js.map +1 -0
- package/dist/atabey/src/modules/providers/registry.js.map +1 -0
- package/dist/atabey/src/modules/providers/shared.js +104 -0
- package/dist/atabey/src/modules/providers/shared.js.map +1 -0
- package/dist/atabey/src/modules/providers/types.js.map +1 -0
- package/dist/atabey/src/modules/skills/adapter-skills.d.ts +68 -0
- package/dist/atabey/src/modules/skills/adapter-skills.js +450 -0
- package/dist/atabey/src/modules/skills/adapter-skills.js.map +1 -0
- package/dist/atabey/src/modules/skills/definitions.d.ts +48 -0
- package/dist/atabey/src/modules/skills/definitions.js +71 -0
- package/dist/atabey/src/modules/skills/definitions.js.map +1 -0
- package/dist/atabey/src/shared/audit.d.ts +105 -0
- package/dist/atabey/src/shared/audit.js +221 -0
- package/dist/atabey/src/shared/audit.js.map +1 -0
- package/dist/atabey/src/shared/constants.d.ts +120 -0
- package/dist/atabey/src/shared/constants.js +188 -0
- package/dist/atabey/src/shared/constants.js.map +1 -0
- package/dist/atabey/src/shared/errors.js.map +1 -0
- package/dist/atabey/src/shared/fs.d.ts +9 -0
- package/dist/atabey/src/shared/fs.js +54 -0
- package/dist/atabey/src/shared/fs.js.map +1 -0
- package/dist/atabey/src/shared/lock.d.ts +82 -0
- package/dist/atabey/src/shared/lock.js +160 -0
- package/dist/atabey/src/shared/lock.js.map +1 -0
- package/dist/atabey/src/shared/logger.d.ts +30 -0
- package/dist/atabey/src/shared/logger.js +127 -0
- package/dist/atabey/src/shared/logger.js.map +1 -0
- package/dist/atabey/src/shared/pii.d.ts +69 -0
- package/dist/atabey/src/shared/pii.js +213 -0
- package/dist/atabey/src/shared/pii.js.map +1 -0
- package/dist/atabey/src/shared/retention.d.ts +63 -0
- package/dist/atabey/src/shared/retention.js +171 -0
- package/dist/atabey/src/shared/retention.js.map +1 -0
- package/dist/atabey/src/shared/storage.d.ts +141 -0
- package/dist/atabey/src/shared/storage.js +326 -0
- package/dist/atabey/src/shared/storage.js.map +1 -0
- package/dist/atabey/src/shared/string.d.ts +1 -0
- package/dist/atabey/src/shared/string.js +30 -0
- package/dist/atabey/src/shared/string.js.map +1 -0
- package/dist/atabey/src/shared/types.d.ts +27 -0
- package/dist/atabey/src/shared/types.js +17 -0
- package/dist/atabey/src/shared/types.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/auth.d.ts +40 -0
- package/dist/atabey-mcp/src/mcp/utils/auth.js +154 -0
- package/dist/atabey-mcp/src/mcp/utils/auth.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/auto-rollback.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/context-optimizer.d.ts +110 -0
- package/dist/atabey-mcp/src/mcp/utils/context-optimizer.js +391 -0
- package/dist/atabey-mcp/src/mcp/utils/context-optimizer.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/discipline.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/finops.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/license-scanner.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/loop-detector.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/memory.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/quality.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/rules-engine.js.map +1 -0
- package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.js +397 -0
- package/dist/atabey-mcp/src/mcp/utils/telemetry-streamer.js.map +1 -0
- package/dist/atabey-mcp/src/shared/fs.d.ts +9 -0
- package/dist/atabey-mcp/src/shared/fs.js +54 -0
- package/dist/atabey-mcp/src/shared/fs.js.map +1 -0
- package/dist/atabey-mcp/src/shared/logger.d.ts +30 -0
- package/dist/atabey-mcp/src/shared/logger.js +127 -0
- package/dist/atabey-mcp/src/shared/logger.js.map +1 -0
- package/dist/atabey-mcp/src/shared/pii.d.ts +69 -0
- package/dist/atabey-mcp/src/shared/pii.js +213 -0
- package/dist/atabey-mcp/src/shared/pii.js.map +1 -0
- package/dist/atabey-mcp/src/shared/storage.d.ts +167 -0
- package/dist/atabey-mcp/src/shared/storage.js +293 -0
- package/dist/atabey-mcp/src/shared/storage.js.map +1 -0
- package/dist/atabey-mcp/src/shared/types.js.map +1 -0
- package/dist/src/cli/commands/check.js +1 -1
- package/dist/src/cli/commands/check.js.map +1 -1
- package/dist/src/cli/commands/dashboard.js +19 -19
- package/dist/src/cli/commands/dashboard.js.map +1 -1
- package/dist/src/cli/commands/mcp.js +3 -3
- package/dist/src/cli/commands/mcp.js.map +1 -1
- package/dist/src/cli/commands/orchestrate.d.ts +4 -4
- package/dist/src/cli/utils/compliance.d.ts +37 -7
- package/dist/src/cli/utils/compliance.js +144 -7
- package/dist/src/cli/utils/compliance.js.map +1 -1
- package/dist/src/cli/utils/pkg.js +1 -1
- package/dist/src/cli/utils/pkg.js.map +1 -1
- package/dist/src/cli/utils/quality.d.ts +4 -6
- package/dist/src/cli/utils/quality.js +3 -5
- package/dist/src/cli/utils/quality.js.map +1 -1
- package/dist/src/cli/utils/schemas.d.ts +2 -2
- package/dist/src/contracts/tasks.d.ts +2 -2
- package/dist/src/modules/contracts/api.d.ts +6 -6
- package/dist/src/modules/engines/contract-engine.d.ts +46 -0
- package/dist/src/modules/engines/contract-engine.js +116 -0
- package/dist/src/modules/engines/contract-engine.js.map +1 -0
- package/dist/src/modules/engines/crud-governance.d.ts +64 -0
- package/dist/src/modules/engines/crud-governance.js +184 -0
- package/dist/src/modules/engines/crud-governance.js.map +1 -0
- package/dist/src/modules/engines/discovery-engine.d.ts +42 -0
- package/dist/src/modules/engines/discovery-engine.js +161 -0
- package/dist/src/modules/engines/discovery-engine.js.map +1 -0
- package/dist/src/modules/engines/file-lock.d.ts +41 -0
- package/dist/src/modules/engines/file-lock.js +168 -0
- package/dist/src/modules/engines/file-lock.js.map +1 -0
- package/dist/src/modules/engines/phase-engine.d.ts +82 -0
- package/dist/src/modules/engines/phase-engine.js +211 -0
- package/dist/src/modules/engines/phase-engine.js.map +1 -0
- package/dist/src/modules/engines/policy-engine.d.ts +63 -0
- package/dist/src/modules/engines/policy-engine.js +186 -0
- package/dist/src/modules/engines/policy-engine.js.map +1 -0
- package/dist/src/modules/engines/session-engine.d.ts +68 -0
- package/dist/src/modules/engines/session-engine.js +141 -0
- package/dist/src/modules/engines/session-engine.js.map +1 -0
- package/dist/src/modules/providers/llm-provider.d.ts +87 -0
- package/dist/src/modules/providers/llm-provider.js +242 -0
- package/dist/src/modules/providers/llm-provider.js.map +1 -0
- package/dist/src/shared/constants.d.ts +1 -1
- package/dist/src/shared/constants.js +1 -1
- package/dist/src/shared/constants.js.map +1 -1
- package/package.json +12 -54
- package/LICENSE +0 -672
- package/dist/framework-mcp/src/constants.d.ts +0 -47
- package/dist/framework-mcp/src/constants.js +0 -65
- package/dist/framework-mcp/src/constants.js.map +0 -1
- package/dist/framework-mcp/src/index.js +0 -1141
- package/dist/framework-mcp/src/index.js.map +0 -1
- package/dist/framework-mcp/src/resources/index.d.ts +0 -10
- package/dist/framework-mcp/src/resources/index.js +0 -59
- package/dist/framework-mcp/src/resources/index.js.map +0 -1
- package/dist/framework-mcp/src/tools/compliance/mask_pii.d.ts +0 -17
- package/dist/framework-mcp/src/tools/compliance/mask_pii.js +0 -56
- package/dist/framework-mcp/src/tools/compliance/mask_pii.js.map +0 -1
- package/dist/framework-mcp/src/tools/control_plane/locking.d.ts +0 -9
- package/dist/framework-mcp/src/tools/control_plane/locking.js +0 -85
- package/dist/framework-mcp/src/tools/control_plane/locking.js.map +0 -1
- package/dist/framework-mcp/src/tools/control_plane/registry.d.ts +0 -6
- package/dist/framework-mcp/src/tools/control_plane/registry.js +0 -84
- package/dist/framework-mcp/src/tools/control_plane/registry.js.map +0 -1
- package/dist/framework-mcp/src/tools/definitions.d.ts +0 -7
- package/dist/framework-mcp/src/tools/definitions.js +0 -199
- package/dist/framework-mcp/src/tools/definitions.js.map +0 -1
- package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.d.ts +0 -5
- package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js +0 -65
- package/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js.map +0 -1
- package/dist/framework-mcp/src/tools/file_system/patch_file.d.ts +0 -2
- package/dist/framework-mcp/src/tools/file_system/patch_file.js +0 -35
- package/dist/framework-mcp/src/tools/file_system/patch_file.js.map +0 -1
- package/dist/framework-mcp/src/tools/file_system/read_file.d.ts +0 -2
- package/dist/framework-mcp/src/tools/file_system/read_file.js +0 -57
- package/dist/framework-mcp/src/tools/file_system/read_file.js.map +0 -1
- package/dist/framework-mcp/src/tools/file_system/replace_text.d.ts +0 -2
- package/dist/framework-mcp/src/tools/file_system/replace_text.js +0 -51
- package/dist/framework-mcp/src/tools/file_system/replace_text.js.map +0 -1
- package/dist/framework-mcp/src/tools/file_system/write_file.d.ts +0 -2
- package/dist/framework-mcp/src/tools/file_system/write_file.js +0 -56
- package/dist/framework-mcp/src/tools/file_system/write_file.js.map +0 -1
- package/dist/framework-mcp/src/tools/framework/audit_deps.d.ts +0 -6
- package/dist/framework-mcp/src/tools/framework/audit_deps.js +0 -42
- package/dist/framework-mcp/src/tools/framework/audit_deps.js.map +0 -1
- package/dist/framework-mcp/src/tools/framework/get_status.d.ts +0 -2
- package/dist/framework-mcp/src/tools/framework/get_status.js +0 -6
- package/dist/framework-mcp/src/tools/framework/get_status.js.map +0 -1
- package/dist/framework-mcp/src/tools/framework/orchestrate.d.ts +0 -2
- package/dist/framework-mcp/src/tools/framework/orchestrate.js +0 -6
- package/dist/framework-mcp/src/tools/framework/orchestrate.js.map +0 -1
- package/dist/framework-mcp/src/tools/framework/run_tests.d.ts +0 -5
- package/dist/framework-mcp/src/tools/framework/run_tests.js +0 -53
- package/dist/framework-mcp/src/tools/framework/run_tests.js.map +0 -1
- package/dist/framework-mcp/src/tools/framework/submit_plan.d.ts +0 -11
- package/dist/framework-mcp/src/tools/framework/submit_plan.js +0 -14
- package/dist/framework-mcp/src/tools/framework/submit_plan.js.map +0 -1
- package/dist/framework-mcp/src/tools/framework/update_contract_hash.d.ts +0 -2
- package/dist/framework-mcp/src/tools/framework/update_contract_hash.js +0 -6
- package/dist/framework-mcp/src/tools/framework/update_contract_hash.js.map +0 -1
- package/dist/framework-mcp/src/tools/framework/update_memory.d.ts +0 -2
- package/dist/framework-mcp/src/tools/framework/update_memory.js +0 -9
- package/dist/framework-mcp/src/tools/framework/update_memory.js.map +0 -1
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.d.ts +0 -19
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js +0 -138
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js.map +0 -1
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.d.ts +0 -8
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js +0 -91
- package/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js.map +0 -1
- package/dist/framework-mcp/src/tools/index.d.ts +0 -6
- package/dist/framework-mcp/src/tools/index.js +0 -126
- package/dist/framework-mcp/src/tools/index.js.map +0 -1
- package/dist/framework-mcp/src/tools/memory/delete_knowledge.d.ts +0 -8
- package/dist/framework-mcp/src/tools/memory/delete_knowledge.js +0 -29
- package/dist/framework-mcp/src/tools/memory/delete_knowledge.js.map +0 -1
- package/dist/framework-mcp/src/tools/memory/get_insights.d.ts +0 -6
- package/dist/framework-mcp/src/tools/memory/get_insights.js +0 -23
- package/dist/framework-mcp/src/tools/memory/get_insights.js.map +0 -1
- package/dist/framework-mcp/src/tools/memory/read_memory.d.ts +0 -6
- package/dist/framework-mcp/src/tools/memory/read_memory.js +0 -29
- package/dist/framework-mcp/src/tools/memory/read_memory.js.map +0 -1
- package/dist/framework-mcp/src/tools/memory/search_knowledge.d.ts +0 -8
- package/dist/framework-mcp/src/tools/memory/search_knowledge.js +0 -49
- package/dist/framework-mcp/src/tools/memory/search_knowledge.js.map +0 -1
- package/dist/framework-mcp/src/tools/memory/store_knowledge.d.ts +0 -10
- package/dist/framework-mcp/src/tools/memory/store_knowledge.js +0 -31
- package/dist/framework-mcp/src/tools/memory/store_knowledge.js.map +0 -1
- package/dist/framework-mcp/src/tools/messaging/approve_operation.d.ts +0 -24
- package/dist/framework-mcp/src/tools/messaging/approve_operation.js +0 -81
- package/dist/framework-mcp/src/tools/messaging/approve_operation.js.map +0 -1
- package/dist/framework-mcp/src/tools/messaging/ask_human.d.ts +0 -21
- package/dist/framework-mcp/src/tools/messaging/ask_human.js +0 -100
- package/dist/framework-mcp/src/tools/messaging/ask_human.js.map +0 -1
- package/dist/framework-mcp/src/tools/messaging/log_action.d.ts +0 -2
- package/dist/framework-mcp/src/tools/messaging/log_action.js +0 -23
- package/dist/framework-mcp/src/tools/messaging/log_action.js.map +0 -1
- package/dist/framework-mcp/src/tools/messaging/send_message.d.ts +0 -2
- package/dist/framework-mcp/src/tools/messaging/send_message.js +0 -111
- package/dist/framework-mcp/src/tools/messaging/send_message.js.map +0 -1
- package/dist/framework-mcp/src/tools/observability/check_ports.d.ts +0 -6
- package/dist/framework-mcp/src/tools/observability/check_ports.js +0 -43
- package/dist/framework-mcp/src/tools/observability/check_ports.js.map +0 -1
- package/dist/framework-mcp/src/tools/observability/get_health.d.ts +0 -5
- package/dist/framework-mcp/src/tools/observability/get_health.js +0 -20
- package/dist/framework-mcp/src/tools/observability/get_health.js.map +0 -1
- package/dist/framework-mcp/src/tools/quality/analyze_code_quality.d.ts +0 -11
- package/dist/framework-mcp/src/tools/quality/analyze_code_quality.js +0 -115
- package/dist/framework-mcp/src/tools/quality/analyze_code_quality.js.map +0 -1
- package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.d.ts +0 -11
- package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js +0 -135
- package/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js.map +0 -1
- package/dist/framework-mcp/src/tools/quality/check_lint.d.ts +0 -5
- package/dist/framework-mcp/src/tools/quality/check_lint.js +0 -31
- package/dist/framework-mcp/src/tools/quality/check_lint.js.map +0 -1
- package/dist/framework-mcp/src/tools/schemas.d.ts +0 -434
- package/dist/framework-mcp/src/tools/schemas.js +0 -179
- package/dist/framework-mcp/src/tools/schemas.js.map +0 -1
- package/dist/framework-mcp/src/tools/search/get_gaps.d.ts +0 -6
- package/dist/framework-mcp/src/tools/search/get_gaps.js +0 -49
- package/dist/framework-mcp/src/tools/search/get_gaps.js.map +0 -1
- package/dist/framework-mcp/src/tools/search/get_map.d.ts +0 -6
- package/dist/framework-mcp/src/tools/search/get_map.js +0 -44
- package/dist/framework-mcp/src/tools/search/get_map.js.map +0 -1
- package/dist/framework-mcp/src/tools/search/grep_search.d.ts +0 -5
- package/dist/framework-mcp/src/tools/search/grep_search.js +0 -86
- package/dist/framework-mcp/src/tools/search/grep_search.js.map +0 -1
- package/dist/framework-mcp/src/tools/search/list_dir.d.ts +0 -5
- package/dist/framework-mcp/src/tools/search/list_dir.js +0 -32
- package/dist/framework-mcp/src/tools/search/list_dir.js.map +0 -1
- package/dist/framework-mcp/src/tools/shell/run_command.d.ts +0 -2
- package/dist/framework-mcp/src/tools/shell/run_command.js +0 -224
- package/dist/framework-mcp/src/tools/shell/run_command.js.map +0 -1
- package/dist/framework-mcp/src/tools/types.d.ts +0 -28
- package/dist/framework-mcp/src/tools/types.js +0 -3
- package/dist/framework-mcp/src/tools/types.js.map +0 -1
- package/dist/framework-mcp/src/utils/auth.d.ts +0 -60
- package/dist/framework-mcp/src/utils/auth.js +0 -146
- package/dist/framework-mcp/src/utils/auth.js.map +0 -1
- package/dist/framework-mcp/src/utils/auto-rollback.js.map +0 -1
- package/dist/framework-mcp/src/utils/cli.d.ts +0 -16
- package/dist/framework-mcp/src/utils/cli.js +0 -60
- package/dist/framework-mcp/src/utils/cli.js.map +0 -1
- package/dist/framework-mcp/src/utils/compliance.d.ts +0 -21
- package/dist/framework-mcp/src/utils/compliance.js +0 -333
- package/dist/framework-mcp/src/utils/compliance.js.map +0 -1
- package/dist/framework-mcp/src/utils/context-optimizer.d.ts +0 -69
- package/dist/framework-mcp/src/utils/context-optimizer.js +0 -157
- package/dist/framework-mcp/src/utils/context-optimizer.js.map +0 -1
- package/dist/framework-mcp/src/utils/discipline.js.map +0 -1
- package/dist/framework-mcp/src/utils/errors.js.map +0 -1
- package/dist/framework-mcp/src/utils/finops.js.map +0 -1
- package/dist/framework-mcp/src/utils/fs.d.ts +0 -19
- package/dist/framework-mcp/src/utils/fs.js +0 -48
- package/dist/framework-mcp/src/utils/fs.js.map +0 -1
- package/dist/framework-mcp/src/utils/human-in-loop.d.ts +0 -128
- package/dist/framework-mcp/src/utils/human-in-loop.js +0 -320
- package/dist/framework-mcp/src/utils/human-in-loop.js.map +0 -1
- package/dist/framework-mcp/src/utils/license-scanner.js.map +0 -1
- package/dist/framework-mcp/src/utils/loop-detector.js.map +0 -1
- package/dist/framework-mcp/src/utils/memory.js.map +0 -1
- package/dist/framework-mcp/src/utils/metrics.d.ts +0 -30
- package/dist/framework-mcp/src/utils/metrics.js +0 -57
- package/dist/framework-mcp/src/utils/metrics.js.map +0 -1
- package/dist/framework-mcp/src/utils/permissions.d.ts +0 -76
- package/dist/framework-mcp/src/utils/permissions.js +0 -208
- package/dist/framework-mcp/src/utils/permissions.js.map +0 -1
- package/dist/framework-mcp/src/utils/prompt-injection.d.ts +0 -20
- package/dist/framework-mcp/src/utils/prompt-injection.js +0 -64
- package/dist/framework-mcp/src/utils/prompt-injection.js.map +0 -1
- package/dist/framework-mcp/src/utils/quality.js.map +0 -1
- package/dist/framework-mcp/src/utils/rules-engine.js.map +0 -1
- package/dist/framework-mcp/src/utils/security.d.ts +0 -10
- package/dist/framework-mcp/src/utils/security.js +0 -61
- package/dist/framework-mcp/src/utils/security.js.map +0 -1
- package/dist/framework-mcp/src/utils/silent-router.d.ts +0 -49
- package/dist/framework-mcp/src/utils/silent-router.js +0 -155
- package/dist/framework-mcp/src/utils/silent-router.js.map +0 -1
- package/dist/framework-mcp/src/utils/storage.d.ts +0 -61
- package/dist/framework-mcp/src/utils/storage.js +0 -208
- package/dist/framework-mcp/src/utils/storage.js.map +0 -1
- package/dist/framework-mcp/src/utils/telemetry-streamer.js +0 -397
- package/dist/framework-mcp/src/utils/telemetry-streamer.js.map +0 -1
- package/dist/framework-mcp/src/utils/types.js.map +0 -1
- package/dist/framework-mcp/src/utils/zod-to-mcp.d.ts +0 -10
- package/dist/framework-mcp/src/utils/zod-to-mcp.js +0 -80
- package/dist/framework-mcp/src/utils/zod-to-mcp.js.map +0 -1
- package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.d.ts +0 -1
- package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.js +0 -84
- package/dist/framework-mcp/tests/tools/file_system/compliance-risk.test.js.map +0 -1
- package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.d.ts +0 -1
- package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js +0 -192
- package/dist/framework-mcp/tests/tools/file_system/file_system_tools.test.js.map +0 -1
- package/dist/framework-mcp/tests/tools/file_system/permissions.test.d.ts +0 -1
- package/dist/framework-mcp/tests/tools/file_system/permissions.test.js +0 -195
- package/dist/framework-mcp/tests/tools/file_system/permissions.test.js.map +0 -1
- package/dist/framework-mcp/tests/tools/framework/run_tests.test.d.ts +0 -1
- package/dist/framework-mcp/tests/tools/framework/run_tests.test.js +0 -49
- package/dist/framework-mcp/tests/tools/framework/run_tests.test.js.map +0 -1
- package/dist/framework-mcp/tests/tools/messaging/send_message.test.d.ts +0 -1
- package/dist/framework-mcp/tests/tools/messaging/send_message.test.js +0 -131
- package/dist/framework-mcp/tests/tools/messaging/send_message.test.js.map +0 -1
- package/dist/framework-mcp/tests/tools/observability/check_ports.test.d.ts +0 -1
- package/dist/framework-mcp/tests/tools/observability/check_ports.test.js +0 -44
- package/dist/framework-mcp/tests/tools/observability/check_ports.test.js.map +0 -1
- package/dist/framework-mcp/tests/tools/quality/check_lint.test.d.ts +0 -1
- package/dist/framework-mcp/tests/tools/quality/check_lint.test.js +0 -36
- package/dist/framework-mcp/tests/tools/quality/check_lint.test.js.map +0 -1
- package/dist/framework-mcp/tests/tools/shell/run_command.test.d.ts +0 -1
- package/dist/framework-mcp/tests/tools/shell/run_command.test.js +0 -73
- package/dist/framework-mcp/tests/tools/shell/run_command.test.js.map +0 -1
- package/dist/framework-mcp/tests/utils/auto-rollback.test.d.ts +0 -7
- package/dist/framework-mcp/tests/utils/auto-rollback.test.js +0 -178
- package/dist/framework-mcp/tests/utils/auto-rollback.test.js.map +0 -1
- package/dist/framework-mcp/tests/utils/context-optimizer.test.d.ts +0 -1
- package/dist/framework-mcp/tests/utils/context-optimizer.test.js +0 -62
- package/dist/framework-mcp/tests/utils/context-optimizer.test.js.map +0 -1
- package/dist/framework-mcp/tests/utils/finops.test.d.ts +0 -7
- package/dist/framework-mcp/tests/utils/finops.test.js +0 -157
- package/dist/framework-mcp/tests/utils/finops.test.js.map +0 -1
- package/dist/framework-mcp/tests/utils/human-in-loop.test.d.ts +0 -1
- package/dist/framework-mcp/tests/utils/human-in-loop.test.js +0 -207
- package/dist/framework-mcp/tests/utils/human-in-loop.test.js.map +0 -1
- package/dist/framework-mcp/tests/utils/license-scanner.test.d.ts +0 -7
- package/dist/framework-mcp/tests/utils/license-scanner.test.js +0 -131
- package/dist/framework-mcp/tests/utils/license-scanner.test.js.map +0 -1
- package/dist/framework-mcp/tests/utils/loop-detector.test.d.ts +0 -7
- package/dist/framework-mcp/tests/utils/loop-detector.test.js +0 -202
- package/dist/framework-mcp/tests/utils/loop-detector.test.js.map +0 -1
- package/dist/framework-mcp/tests/utils/prompt-injection.test.d.ts +0 -1
- package/dist/framework-mcp/tests/utils/prompt-injection.test.js +0 -43
- package/dist/framework-mcp/tests/utils/prompt-injection.test.js.map +0 -1
- package/dist/framework-mcp/tests/utils/rules-engine.test.d.ts +0 -1
- package/dist/framework-mcp/tests/utils/rules-engine.test.js +0 -106
- package/dist/framework-mcp/tests/utils/rules-engine.test.js.map +0 -1
- package/dist/framework-mcp/tests/utils/telemetry-streamer.test.d.ts +0 -7
- package/dist/framework-mcp/tests/utils/telemetry-streamer.test.js +0 -201
- package/dist/framework-mcp/tests/utils/telemetry-streamer.test.js.map +0 -1
- package/dist/src/cli/adapters/core.d.ts +0 -12
- package/dist/src/cli/adapters/core.js +0 -73
- package/dist/src/cli/adapters/core.js.map +0 -1
- package/dist/src/cli/adapters/index.d.ts +0 -5
- package/dist/src/cli/adapters/index.js +0 -6
- package/dist/src/cli/adapters/index.js.map +0 -1
- package/dist/src/cli/adapters/paths.d.ts +0 -15
- package/dist/src/cli/adapters/paths.js +0 -102
- package/dist/src/cli/adapters/paths.js.map +0 -1
- package/dist/src/cli/adapters/scaffold.d.ts +0 -2
- package/dist/src/cli/adapters/scaffold.js +0 -73
- package/dist/src/cli/adapters/scaffold.js.map +0 -1
- package/dist/src/cli/adapters/utils.d.ts +0 -4
- package/dist/src/cli/adapters/utils.js.map +0 -1
- package/dist/src/cli/commands/gateway.d.ts +0 -1
- package/dist/src/cli/commands/gateway.js +0 -172
- package/dist/src/cli/commands/gateway.js.map +0 -1
- package/dist/src/dashboard/src/hooks/useApi.d.ts +0 -18
- package/dist/src/dashboard/src/hooks/useApi.js +0 -47
- package/dist/src/dashboard/src/hooks/useApi.js.map +0 -1
- package/dist/src/dashboard/src/hooks/useSSE.d.ts +0 -12
- package/dist/src/dashboard/src/hooks/useSSE.js +0 -60
- package/dist/src/dashboard/src/hooks/useSSE.js.map +0 -1
- package/dist/src/dashboard/vite.config.d.ts +0 -2
- package/dist/src/dashboard/vite.config.js +0 -16
- package/dist/src/dashboard/vite.config.js.map +0 -1
- package/dist/src/modules/adapters/definitions.js.map +0 -1
- package/dist/src/modules/adapters/registry.js.map +0 -1
- package/dist/src/modules/adapters/shared.js +0 -105
- package/dist/src/modules/adapters/shared.js.map +0 -1
- package/dist/src/modules/adapters/types.js.map +0 -1
- package/dist/src/modules/gateway/circuit-breaker.d.ts +0 -40
- package/dist/src/modules/gateway/circuit-breaker.js +0 -163
- package/dist/src/modules/gateway/circuit-breaker.js.map +0 -1
- package/dist/src/modules/gateway/cost-tracker.d.ts +0 -60
- package/dist/src/modules/gateway/cost-tracker.js +0 -198
- package/dist/src/modules/gateway/cost-tracker.js.map +0 -1
- package/dist/src/modules/gateway/gateway.d.ts +0 -72
- package/dist/src/modules/gateway/gateway.js +0 -243
- package/dist/src/modules/gateway/gateway.js.map +0 -1
- package/dist/src/modules/gateway/index.d.ts +0 -19
- package/dist/src/modules/gateway/index.js +0 -19
- package/dist/src/modules/gateway/index.js.map +0 -1
- package/dist/src/modules/gateway/load-balancer.d.ts +0 -86
- package/dist/src/modules/gateway/load-balancer.js +0 -230
- package/dist/src/modules/gateway/load-balancer.js.map +0 -1
- package/dist/src/modules/gateway/providers/anthropic.d.ts +0 -14
- package/dist/src/modules/gateway/providers/anthropic.js +0 -169
- package/dist/src/modules/gateway/providers/anthropic.js.map +0 -1
- package/dist/src/modules/gateway/providers/base.d.ts +0 -38
- package/dist/src/modules/gateway/providers/base.js +0 -42
- package/dist/src/modules/gateway/providers/base.js.map +0 -1
- package/dist/src/modules/gateway/providers/google.d.ts +0 -18
- package/dist/src/modules/gateway/providers/google.js +0 -176
- package/dist/src/modules/gateway/providers/google.js.map +0 -1
- package/dist/src/modules/gateway/providers/grok.d.ts +0 -14
- package/dist/src/modules/gateway/providers/grok.js +0 -166
- package/dist/src/modules/gateway/providers/grok.js.map +0 -1
- package/dist/src/modules/gateway/providers/index.d.ts +0 -21
- package/dist/src/modules/gateway/providers/index.js +0 -38
- package/dist/src/modules/gateway/providers/index.js.map +0 -1
- package/dist/src/modules/gateway/providers/ollama.d.ts +0 -23
- package/dist/src/modules/gateway/providers/ollama.js +0 -187
- package/dist/src/modules/gateway/providers/ollama.js.map +0 -1
- package/dist/src/modules/gateway/providers/openai.d.ts +0 -14
- package/dist/src/modules/gateway/providers/openai.js +0 -170
- package/dist/src/modules/gateway/providers/openai.js.map +0 -1
- package/dist/src/modules/gateway/rate-limiter.d.ts +0 -41
- package/dist/src/modules/gateway/rate-limiter.js +0 -119
- package/dist/src/modules/gateway/rate-limiter.js.map +0 -1
- package/dist/src/modules/gateway/types.d.ts +0 -114
- package/dist/src/modules/gateway/types.js +0 -8
- package/dist/src/modules/gateway/types.js.map +0 -1
- package/dist/tests/dashboard.test.d.ts +0 -1
- package/dist/tests/dashboard.test.js +0 -116
- package/dist/tests/dashboard.test.js.map +0 -1
- package/dist/tests/modules/gateway/circuit-breaker.test.d.ts +0 -1
- package/dist/tests/modules/gateway/circuit-breaker.test.js +0 -124
- package/dist/tests/modules/gateway/circuit-breaker.test.js.map +0 -1
- package/dist/tests/modules/gateway/cost-tracker.test.d.ts +0 -1
- package/dist/tests/modules/gateway/cost-tracker.test.js +0 -93
- package/dist/tests/modules/gateway/cost-tracker.test.js.map +0 -1
- package/dist/tests/modules/gateway/load-balancer.test.d.ts +0 -1
- package/dist/tests/modules/gateway/load-balancer.test.js +0 -70
- package/dist/tests/modules/gateway/load-balancer.test.js.map +0 -1
- package/dist/tests/modules/gateway/rate-limiter.test.d.ts +0 -1
- package/dist/tests/modules/gateway/rate-limiter.test.js +0 -62
- package/dist/tests/modules/gateway/rate-limiter.test.js.map +0 -1
- package/dist/tests/planning-engine.test.d.ts +0 -1
- package/dist/tests/planning-engine.test.js +0 -51
- package/dist/tests/planning-engine.test.js.map +0 -1
- package/dist/tests/risk-engine.test.d.ts +0 -1
- package/dist/tests/risk-engine.test.js +0 -44
- package/dist/tests/risk-engine.test.js.map +0 -1
- package/dist/ui/assets/index-B-d2ejS8.js +0 -519
- package/dist/ui/assets/index-CyXywq5G.css +0 -1
- package/dist/ui/index.html +0 -14
- package/dist/vitest.config.d.ts +0 -2
- package/dist/vitest.config.js +0 -22
- package/dist/vitest.config.js.map +0 -1
- package/framework-mcp/README.md +0 -620
- package/framework-mcp/dist/constants.js +0 -64
- package/framework-mcp/dist/dashboard/assets/index-B-Eu7_J9.js +0 -1260
- package/framework-mcp/dist/dashboard/index.html +0 -15
- package/framework-mcp/dist/framework-mcp/src/constants.js +0 -64
- package/framework-mcp/dist/framework-mcp/src/index.js +0 -1140
- package/framework-mcp/dist/framework-mcp/src/resources/index.js +0 -58
- package/framework-mcp/dist/framework-mcp/src/tools/compliance/mask_pii.js +0 -55
- package/framework-mcp/dist/framework-mcp/src/tools/control_plane/locking.js +0 -84
- package/framework-mcp/dist/framework-mcp/src/tools/control_plane/registry.js +0 -83
- package/framework-mcp/dist/framework-mcp/src/tools/definitions.js +0 -198
- package/framework-mcp/dist/framework-mcp/src/tools/file_system/batch_surgical_edit.js +0 -64
- package/framework-mcp/dist/framework-mcp/src/tools/file_system/patch_file.js +0 -34
- package/framework-mcp/dist/framework-mcp/src/tools/file_system/read_file.js +0 -56
- package/framework-mcp/dist/framework-mcp/src/tools/file_system/replace_text.js +0 -50
- package/framework-mcp/dist/framework-mcp/src/tools/file_system/write_file.js +0 -55
- package/framework-mcp/dist/framework-mcp/src/tools/framework/audit_deps.js +0 -41
- package/framework-mcp/dist/framework-mcp/src/tools/framework/get_status.js +0 -5
- package/framework-mcp/dist/framework-mcp/src/tools/framework/orchestrate.js +0 -5
- package/framework-mcp/dist/framework-mcp/src/tools/framework/run_tests.js +0 -52
- package/framework-mcp/dist/framework-mcp/src/tools/framework/submit_plan.js +0 -13
- package/framework-mcp/dist/framework-mcp/src/tools/framework/update_contract_hash.js +0 -5
- package/framework-mcp/dist/framework-mcp/src/tools/framework/update_memory.js +0 -8
- package/framework-mcp/dist/framework-mcp/src/tools/gateway/llm_gateway_query.js +0 -137
- package/framework-mcp/dist/framework-mcp/src/tools/gateway/llm_gateway_status.js +0 -90
- package/framework-mcp/dist/framework-mcp/src/tools/index.js +0 -125
- package/framework-mcp/dist/framework-mcp/src/tools/memory/delete_knowledge.js +0 -28
- package/framework-mcp/dist/framework-mcp/src/tools/memory/get_insights.js +0 -22
- package/framework-mcp/dist/framework-mcp/src/tools/memory/read_memory.js +0 -28
- package/framework-mcp/dist/framework-mcp/src/tools/memory/search_knowledge.js +0 -48
- package/framework-mcp/dist/framework-mcp/src/tools/memory/store_knowledge.js +0 -30
- package/framework-mcp/dist/framework-mcp/src/tools/messaging/approve_operation.js +0 -80
- package/framework-mcp/dist/framework-mcp/src/tools/messaging/ask_human.js +0 -99
- package/framework-mcp/dist/framework-mcp/src/tools/messaging/log_action.js +0 -22
- package/framework-mcp/dist/framework-mcp/src/tools/messaging/send_message.js +0 -110
- package/framework-mcp/dist/framework-mcp/src/tools/observability/check_ports.js +0 -42
- package/framework-mcp/dist/framework-mcp/src/tools/observability/get_health.js +0 -19
- package/framework-mcp/dist/framework-mcp/src/tools/quality/analyze_code_quality.js +0 -114
- package/framework-mcp/dist/framework-mcp/src/tools/quality/check_architecture_compliance.js +0 -134
- package/framework-mcp/dist/framework-mcp/src/tools/quality/check_lint.js +0 -30
- package/framework-mcp/dist/framework-mcp/src/tools/schemas.js +0 -178
- package/framework-mcp/dist/framework-mcp/src/tools/search/get_gaps.js +0 -48
- package/framework-mcp/dist/framework-mcp/src/tools/search/get_map.js +0 -43
- package/framework-mcp/dist/framework-mcp/src/tools/search/grep_search.js +0 -85
- package/framework-mcp/dist/framework-mcp/src/tools/search/list_dir.js +0 -31
- package/framework-mcp/dist/framework-mcp/src/tools/shell/run_command.js +0 -223
- package/framework-mcp/dist/framework-mcp/src/tools/types.js +0 -2
- package/framework-mcp/dist/framework-mcp/src/utils/auth.js +0 -145
- package/framework-mcp/dist/framework-mcp/src/utils/auto-rollback.js +0 -265
- package/framework-mcp/dist/framework-mcp/src/utils/cli.js +0 -59
- package/framework-mcp/dist/framework-mcp/src/utils/compliance.js +0 -332
- package/framework-mcp/dist/framework-mcp/src/utils/context-optimizer.js +0 -156
- package/framework-mcp/dist/framework-mcp/src/utils/discipline.js +0 -256
- package/framework-mcp/dist/framework-mcp/src/utils/errors.js +0 -68
- package/framework-mcp/dist/framework-mcp/src/utils/finops.js +0 -325
- package/framework-mcp/dist/framework-mcp/src/utils/fs.js +0 -47
- package/framework-mcp/dist/framework-mcp/src/utils/human-in-loop.js +0 -319
- package/framework-mcp/dist/framework-mcp/src/utils/license-scanner.js +0 -283
- package/framework-mcp/dist/framework-mcp/src/utils/loop-detector.js +0 -361
- package/framework-mcp/dist/framework-mcp/src/utils/memory.js +0 -74
- package/framework-mcp/dist/framework-mcp/src/utils/metrics.js +0 -56
- package/framework-mcp/dist/framework-mcp/src/utils/permissions.js +0 -207
- package/framework-mcp/dist/framework-mcp/src/utils/prompt-injection.js +0 -63
- package/framework-mcp/dist/framework-mcp/src/utils/quality.js +0 -124
- package/framework-mcp/dist/framework-mcp/src/utils/rules-engine.js +0 -231
- package/framework-mcp/dist/framework-mcp/src/utils/security.js +0 -60
- package/framework-mcp/dist/framework-mcp/src/utils/silent-router.js +0 -154
- package/framework-mcp/dist/framework-mcp/src/utils/storage.js +0 -207
- package/framework-mcp/dist/framework-mcp/src/utils/telemetry-streamer.js +0 -396
- package/framework-mcp/dist/framework-mcp/src/utils/types.js +0 -16
- package/framework-mcp/dist/framework-mcp/src/utils/zod-to-mcp.js +0 -79
- package/framework-mcp/dist/index.js +0 -156
- package/framework-mcp/dist/resources/index.js +0 -58
- package/framework-mcp/dist/src/cli/platforms/core.js +0 -72
- package/framework-mcp/dist/src/cli/platforms/index.js +0 -5
- package/framework-mcp/dist/src/cli/platforms/paths.js +0 -101
- package/framework-mcp/dist/src/cli/platforms/scaffold.js +0 -72
- package/framework-mcp/dist/src/cli/platforms/utils.js +0 -75
- package/framework-mcp/dist/src/cli/utils/claude.js +0 -57
- package/framework-mcp/dist/src/cli/utils/compliance.js +0 -12
- package/framework-mcp/dist/src/cli/utils/fs.js +0 -138
- package/framework-mcp/dist/src/cli/utils/memory.js +0 -280
- package/framework-mcp/dist/src/cli/utils/pkg.js +0 -282
- package/framework-mcp/dist/src/cli/utils/quality.js +0 -9
- package/framework-mcp/dist/src/cli/utils/time.js +0 -27
- package/framework-mcp/dist/src/cli/utils/ui.js +0 -100
- package/framework-mcp/dist/src/modules/agents/definitions.js +0 -563
- package/framework-mcp/dist/src/modules/agents/registry/analyst.js +0 -39
- package/framework-mcp/dist/src/modules/agents/registry/architect.js +0 -42
- package/framework-mcp/dist/src/modules/agents/registry/backend.js +0 -50
- package/framework-mcp/dist/src/modules/agents/registry/database.js +0 -45
- package/framework-mcp/dist/src/modules/agents/registry/devops.js +0 -45
- package/framework-mcp/dist/src/modules/agents/registry/explorer.js +0 -37
- package/framework-mcp/dist/src/modules/agents/registry/frontend.js +0 -52
- package/framework-mcp/dist/src/modules/agents/registry/git.js +0 -36
- package/framework-mcp/dist/src/modules/agents/registry/manager.js +0 -64
- package/framework-mcp/dist/src/modules/agents/registry/mobile.js +0 -41
- package/framework-mcp/dist/src/modules/agents/registry/native.js +0 -41
- package/framework-mcp/dist/src/modules/agents/registry/quality.js +0 -43
- package/framework-mcp/dist/src/modules/agents/registry/security.js +0 -42
- package/framework-mcp/dist/src/modules/agents/types.js +0 -1
- package/framework-mcp/dist/src/modules/engines/evaluation-engine.js +0 -170
- package/framework-mcp/dist/src/modules/engines/quality-gate.js +0 -94
- package/framework-mcp/dist/src/modules/engines/risk-engine.js +0 -200
- package/framework-mcp/dist/src/modules/engines/routing-engine.js +0 -504
- package/framework-mcp/dist/src/modules/engines/types.js +0 -1
- package/framework-mcp/dist/src/modules/memory/core.js +0 -99
- package/framework-mcp/dist/src/modules/memory/embedding.js +0 -130
- package/framework-mcp/dist/src/modules/memory/types.js +0 -1
- package/framework-mcp/dist/src/modules/memory/vector-store.js +0 -74
- package/framework-mcp/dist/src/modules/providers/definitions.js +0 -140
- package/framework-mcp/dist/src/modules/providers/registry.js +0 -18
- package/framework-mcp/dist/src/modules/providers/shared.js +0 -103
- package/framework-mcp/dist/src/modules/providers/types.js +0 -1
- package/framework-mcp/dist/src/modules/skills/adapter-skills.js +0 -449
- package/framework-mcp/dist/src/modules/skills/definitions.js +0 -70
- package/framework-mcp/dist/src/shared/audit.js +0 -220
- package/framework-mcp/dist/src/shared/constants.js +0 -187
- package/framework-mcp/dist/src/shared/errors.js +0 -68
- package/framework-mcp/dist/src/shared/fs.js +0 -53
- package/framework-mcp/dist/src/shared/lock.js +0 -159
- package/framework-mcp/dist/src/shared/logger.js +0 -126
- package/framework-mcp/dist/src/shared/pii.js +0 -212
- package/framework-mcp/dist/src/shared/retention.js +0 -170
- package/framework-mcp/dist/src/shared/storage.js +0 -325
- package/framework-mcp/dist/src/shared/string.js +0 -29
- package/framework-mcp/dist/src/shared/types.js +0 -16
- package/framework-mcp/dist/tools/control_plane/locking.js +0 -82
- package/framework-mcp/dist/tools/control_plane/registry.js +0 -35
- package/framework-mcp/dist/tools/definitions.js +0 -154
- package/framework-mcp/dist/tools/file_system/batch_surgical_edit.js +0 -64
- package/framework-mcp/dist/tools/file_system/patch_file.js +0 -34
- package/framework-mcp/dist/tools/file_system/read_file.js +0 -51
- package/framework-mcp/dist/tools/file_system/replace_text.js +0 -50
- package/framework-mcp/dist/tools/file_system/write_file.js +0 -55
- package/framework-mcp/dist/tools/framework/audit_deps.js +0 -41
- 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/run_tests.js +0 -27
- package/framework-mcp/dist/tools/framework/submit_plan.js +0 -13
- 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 -99
- package/framework-mcp/dist/tools/memory/get_insights.js +0 -22
- package/framework-mcp/dist/tools/memory/read_memory.js +0 -28
- package/framework-mcp/dist/tools/messaging/log_action.js +0 -22
- package/framework-mcp/dist/tools/messaging/send_message.js +0 -94
- package/framework-mcp/dist/tools/observability/check_ports.js +0 -26
- package/framework-mcp/dist/tools/observability/get_health.js +0 -19
- package/framework-mcp/dist/tools/quality/check_lint.js +0 -30
- package/framework-mcp/dist/tools/schemas.js +0 -133
- package/framework-mcp/dist/tools/search/get_gaps.js +0 -48
- package/framework-mcp/dist/tools/search/get_map.js +0 -43
- package/framework-mcp/dist/tools/search/grep_search.js +0 -75
- package/framework-mcp/dist/tools/search/list_dir.js +0 -28
- package/framework-mcp/dist/tools/shell/run_command.js +0 -56
- package/framework-mcp/dist/tools/types.js +0 -1
- package/framework-mcp/dist/utils/cli.js +0 -59
- package/framework-mcp/dist/utils/compliance.js +0 -231
- package/framework-mcp/dist/utils/errors.js +0 -68
- package/framework-mcp/dist/utils/fs.js +0 -44
- package/framework-mcp/dist/utils/memory.js +0 -74
- package/framework-mcp/dist/utils/metrics.js +0 -56
- package/framework-mcp/dist/utils/permissions.js +0 -71
- package/framework-mcp/dist/utils/security.js +0 -60
- package/framework-mcp/dist/utils/storage.js +0 -207
- package/framework-mcp/dist/utils/types.js +0 -16
- package/framework-mcp/dist/utils/zod-to-mcp.js +0 -77
- package/framework-mcp/package.json +0 -46
- package/mcp.json +0 -20
- /package/dist/{framework-mcp/src → atabey/src/cli}/index.d.ts +0 -0
- /package/dist/{src/cli/adapters → atabey/src/cli/platforms}/utils.js +0 -0
- /package/dist/{src/modules/adapters → atabey/src/modules/providers}/definitions.d.ts +0 -0
- /package/dist/{src/modules/adapters → atabey/src/modules/providers}/definitions.js +0 -0
- /package/dist/{src/modules/adapters → atabey/src/modules/providers}/registry.d.ts +0 -0
- /package/dist/{src/modules/adapters → atabey/src/modules/providers}/registry.js +0 -0
- /package/dist/{src/modules/adapters → atabey/src/modules/providers}/shared.d.ts +0 -0
- /package/dist/{src/modules/adapters → atabey/src/modules/providers}/types.d.ts +0 -0
- /package/dist/{src/modules/adapters → atabey/src/modules/providers}/types.js +0 -0
- /package/dist/{framework-mcp/src/utils → atabey/src/shared}/errors.d.ts +0 -0
- /package/dist/{framework-mcp/src/utils → atabey/src/shared}/errors.js +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/auto-rollback.d.ts +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/auto-rollback.js +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/discipline.d.ts +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/discipline.js +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/finops.d.ts +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/finops.js +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/license-scanner.d.ts +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/license-scanner.js +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/loop-detector.d.ts +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/loop-detector.js +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/memory.d.ts +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/memory.js +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/quality.d.ts +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/quality.js +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/rules-engine.d.ts +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/rules-engine.js +0 -0
- /package/dist/{framework-mcp/src → atabey-mcp/src/mcp}/utils/telemetry-streamer.d.ts +0 -0
- /package/dist/{framework-mcp/src/utils → atabey-mcp/src/shared}/types.d.ts +0 -0
- /package/dist/{framework-mcp/src/utils → atabey-mcp/src/shared}/types.js +0 -0
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { Storage } from "../utils/storage.js";
|
|
2
|
-
/**
|
|
3
|
-
* [DATA] MCP Resource Definitions
|
|
4
|
-
*/
|
|
5
|
-
export const RESOURCES = [
|
|
6
|
-
{
|
|
7
|
-
uri: "atabey://AL/status",
|
|
8
|
-
name: "AL Registry Status",
|
|
9
|
-
description: "Real-time state and active tasks of all specialized agents.",
|
|
10
|
-
mimeType: "text/markdown"
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
uri: "atabey://plan/active",
|
|
14
|
-
name: "Active Execution Plan",
|
|
15
|
-
description: "The current DAG of tasks and their completion status.",
|
|
16
|
-
mimeType: "text/markdown"
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
uri: "atabey://memory/project",
|
|
20
|
-
name: "Project Memory",
|
|
21
|
-
description: "The central source of truth for project context (PROJECT_MEMORY.md).",
|
|
22
|
-
mimeType: "text/markdown"
|
|
23
|
-
}
|
|
24
|
-
];
|
|
25
|
-
export async function handleReadResource(uri) {
|
|
26
|
-
if (uri === "atabey://AL/status") {
|
|
27
|
-
const agents = Storage.getAllAgents();
|
|
28
|
-
let md = "# [AI] AL Registry Status\n\n| Agent | State | Active Task | Last Updated |\n| :--- | :--- | :--- | :--- |\n";
|
|
29
|
-
agents.forEach((a) => {
|
|
30
|
-
md += `| @${a.name} | ${a.state} | ${a.task} | ${a.last_updated} |\n`;
|
|
31
|
-
});
|
|
32
|
-
return md;
|
|
33
|
-
}
|
|
34
|
-
if (uri === "atabey://plan/active") {
|
|
35
|
-
const tasks = Storage.getTasks();
|
|
36
|
-
let md = "# [LIST] Active Execution Plan\n\n| ID | Task | Agent | Status | Dependencies |\n| :--- | :--- | :--- | :--- | :--- |\n";
|
|
37
|
-
tasks.forEach((t) => {
|
|
38
|
-
const deps = t.dependencies.join(", ") || "-";
|
|
39
|
-
md += `| ${t.id} | ${t.description} | ${t.agent} | ${t.status} | ${deps} |\n`;
|
|
40
|
-
});
|
|
41
|
-
return md;
|
|
42
|
-
}
|
|
43
|
-
if (uri === "atabey://memory/project") {
|
|
44
|
-
const fs = await import("fs");
|
|
45
|
-
const path = await import("path");
|
|
46
|
-
const { getFrameworkDir } = await import("../utils/memory.js");
|
|
47
|
-
const projectRoot = process.env.ATABEY_PROJECT_ROOT || process.cwd();
|
|
48
|
-
const fwDir = getFrameworkDir();
|
|
49
|
-
const p = path.isAbsolute(fwDir)
|
|
50
|
-
? path.join(fwDir, "memory", "PROJECT_MEMORY.md")
|
|
51
|
-
: path.join(projectRoot, fwDir, "memory", "PROJECT_MEMORY.md");
|
|
52
|
-
if (fs.existsSync(p)) {
|
|
53
|
-
return fs.readFileSync(p, "utf8");
|
|
54
|
-
}
|
|
55
|
-
return "Project memory not found. Run 'atabey init' first.";
|
|
56
|
-
}
|
|
57
|
-
throw new Error(`Unknown resource URI: ${uri}`);
|
|
58
|
-
}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { classifyData, containsPII, maskObject, maskText } from "../../../../src/shared/pii.js";
|
|
2
|
-
export function handleMaskPII(root, args) {
|
|
3
|
-
const mode = args.mode || "auto";
|
|
4
|
-
const strictMode = args.strictMode ?? false;
|
|
5
|
-
// Mode: text
|
|
6
|
-
if (mode === "text" || (mode === "auto" && args.text && !args.data)) {
|
|
7
|
-
if (!args.text) {
|
|
8
|
-
return {
|
|
9
|
-
isError: true,
|
|
10
|
-
content: [{ type: "text", text: "[ERROR] 'text' parameter is required when mode is 'text'." }],
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
const masked = maskText(args.text);
|
|
14
|
-
const hasPII = containsPII(args.text);
|
|
15
|
-
const classification = classifyData(args.text);
|
|
16
|
-
return {
|
|
17
|
-
content: [{
|
|
18
|
-
type: "text",
|
|
19
|
-
text: JSON.stringify({
|
|
20
|
-
originalLength: args.text.length,
|
|
21
|
-
maskedLength: masked.length,
|
|
22
|
-
hasPII,
|
|
23
|
-
classification,
|
|
24
|
-
masked,
|
|
25
|
-
}, null, 2),
|
|
26
|
-
}],
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
// Mode: object
|
|
30
|
-
if (mode === "object" || (mode === "auto" && args.data)) {
|
|
31
|
-
if (!args.data) {
|
|
32
|
-
return {
|
|
33
|
-
isError: true,
|
|
34
|
-
content: [{ type: "text", text: "[ERROR] 'data' parameter is required when mode is 'object'." }],
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
const masked = maskObject(args.data, 0, strictMode);
|
|
38
|
-
const hasPII = containsPII(JSON.stringify(args.data));
|
|
39
|
-
const classification = classifyData(JSON.stringify(args.data));
|
|
40
|
-
return {
|
|
41
|
-
content: [{
|
|
42
|
-
type: "text",
|
|
43
|
-
text: JSON.stringify({
|
|
44
|
-
hasPII,
|
|
45
|
-
classification,
|
|
46
|
-
masked,
|
|
47
|
-
}, null, 2),
|
|
48
|
-
}],
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
return {
|
|
52
|
-
isError: true,
|
|
53
|
-
content: [{ type: "text", text: "[ERROR] Provide either 'text' (string) or 'data' (object) parameter." }],
|
|
54
|
-
};
|
|
55
|
-
}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import path from "path";
|
|
3
|
-
import { resolveFrameworkDir } from "../../utils/security.js";
|
|
4
|
-
import { Metrics } from "../../utils/metrics.js";
|
|
5
|
-
/**
|
|
6
|
-
* Handles acquiring a stateful lock on a resource with Deadlock Resolution.
|
|
7
|
-
*/
|
|
8
|
-
export async function handleAcquireLock(projectRoot, args) {
|
|
9
|
-
const { resource, agent, ttl = 300 } = args; // Default TTL 5 minutes to prevent deadlocks
|
|
10
|
-
const frameworkDir = resolveFrameworkDir(projectRoot);
|
|
11
|
-
const lockDir = path.join(projectRoot, frameworkDir, "locks");
|
|
12
|
-
const lockPath = path.join(lockDir, `${resource}.lock`);
|
|
13
|
-
try {
|
|
14
|
-
if (!fs.existsSync(lockDir))
|
|
15
|
-
fs.mkdirSync(lockDir, { recursive: true });
|
|
16
|
-
// Check for stale lock first (DEADLOCK RESOLUTION)
|
|
17
|
-
if (fs.existsSync(lockPath)) {
|
|
18
|
-
const stat = fs.statSync(lockPath);
|
|
19
|
-
const now = new Date().getTime();
|
|
20
|
-
const age = (now - stat.mtimeMs) / 1000;
|
|
21
|
-
if (age < ttl) {
|
|
22
|
-
return {
|
|
23
|
-
isError: true,
|
|
24
|
-
content: [{ type: "text", text: `[LOCKED] Resource '${resource}' is currently locked by another agent. Try again later.` }]
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
// Lock expired: Force Eviction
|
|
28
|
-
const oldLockData = JSON.parse(fs.readFileSync(lockPath, "utf8"));
|
|
29
|
-
Metrics.logError(projectRoot, "@mcp", "lock_eviction", `Forcefully evicted stale lock on '${resource}' held by ${oldLockData.agent} for ${Math.round(age)}s.`);
|
|
30
|
-
const tempLockPath = `${lockPath}.${Math.random().toString(36).substring(2)}.old`;
|
|
31
|
-
try {
|
|
32
|
-
fs.renameSync(lockPath, tempLockPath);
|
|
33
|
-
fs.unlinkSync(tempLockPath);
|
|
34
|
-
}
|
|
35
|
-
catch {
|
|
36
|
-
// Ignore if already evicted by race condition
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
// Use 'wx' flag for atomic file creation
|
|
40
|
-
const lockData = JSON.stringify({ agent, timestamp: new Date().toISOString() });
|
|
41
|
-
fs.writeFileSync(lockPath, lockData, { flag: "wx" });
|
|
42
|
-
return {
|
|
43
|
-
content: [{ type: "text", text: `[OK] Lock acquired for resource '${resource}' by ${agent}.` }]
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
catch (e) {
|
|
47
|
-
const error = e;
|
|
48
|
-
if (error.code === "EEXIST") {
|
|
49
|
-
return {
|
|
50
|
-
isError: true,
|
|
51
|
-
content: [{ type: "text", text: `[LOCKED] Resource '${resource}' was just acquired by another agent.` }]
|
|
52
|
-
};
|
|
53
|
-
}
|
|
54
|
-
return {
|
|
55
|
-
isError: true,
|
|
56
|
-
content: [{ type: "text", text: `Failed to acquire lock: ${String(e)}` }]
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Handles releasing a lock.
|
|
62
|
-
*/
|
|
63
|
-
export async function handleReleaseLock(projectRoot, args) {
|
|
64
|
-
const { resource, agent } = args;
|
|
65
|
-
const frameworkDir = resolveFrameworkDir(projectRoot);
|
|
66
|
-
const lockPath = path.join(projectRoot, frameworkDir, "locks", `${resource}.lock`);
|
|
67
|
-
try {
|
|
68
|
-
if (!fs.existsSync(lockPath)) {
|
|
69
|
-
return { content: [{ type: "text", text: `[INFO] No lock found for resource '${resource}'.` }] };
|
|
70
|
-
}
|
|
71
|
-
const lockData = JSON.parse(fs.readFileSync(lockPath, "utf8"));
|
|
72
|
-
if (lockData.agent !== agent) {
|
|
73
|
-
return {
|
|
74
|
-
isError: true,
|
|
75
|
-
content: [{ type: "text", text: `[ERROR] Denied: You do not own the lock for '${resource}'. Owned by ${lockData.agent}.` }]
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
fs.unlinkSync(lockPath);
|
|
79
|
-
return { content: [{ type: "text", text: `[OK] Lock released for resource '${resource}' by ${agent}.` }] };
|
|
80
|
-
}
|
|
81
|
-
catch (e) {
|
|
82
|
-
return { isError: true, content: [{ type: "text", text: `Failed to release lock: ${String(e)}` }] };
|
|
83
|
-
}
|
|
84
|
-
}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import path from "path";
|
|
3
|
-
import { resolveFrameworkDir } from "../../utils/security.js";
|
|
4
|
-
/**
|
|
5
|
-
* Valid agent roles in the Atabey governance system.
|
|
6
|
-
* Mirrors AgentTier from src/modules/agents/types.ts.
|
|
7
|
-
*/
|
|
8
|
-
const VALID_ROLES = ["supreme", "core", "recon"];
|
|
9
|
-
/**
|
|
10
|
-
* Roles that cannot be self-assigned via the MCP register_agent tool.
|
|
11
|
-
* Supreme registration must be done through the orchestrator bootstrap,
|
|
12
|
-
* not via AI tool calls (Claude Code, Gemini CLI, Cursor, etc.).
|
|
13
|
-
*/
|
|
14
|
-
const PROTECTED_ROLES = ["supreme"];
|
|
15
|
-
/**
|
|
16
|
-
* Well-known supreme agents allowed to register with supreme role.
|
|
17
|
-
* Any other agent attempting supreme registration is blocked.
|
|
18
|
-
*/
|
|
19
|
-
const SUPREMES_WHITELIST = ["@manager", "@security"];
|
|
20
|
-
/**
|
|
21
|
-
* Handles agent registration with the Control Plane.
|
|
22
|
-
* Validates tier/role to prevent privilege escalation via MCP tool injection.
|
|
23
|
-
*/
|
|
24
|
-
export async function handleRegisterAgent(projectRoot, args) {
|
|
25
|
-
const { agent, role, capability = 5, specialties } = args;
|
|
26
|
-
const frameworkDir = resolveFrameworkDir(projectRoot);
|
|
27
|
-
const registryDir = path.join(projectRoot, frameworkDir, "registry");
|
|
28
|
-
const agentFile = path.join(registryDir, `${agent.replace("@", "")}_active.json`);
|
|
29
|
-
// ── RBAC: Validate role ──────────────────────────────────────────────
|
|
30
|
-
if (!VALID_ROLES.includes(role)) {
|
|
31
|
-
return {
|
|
32
|
-
isError: true,
|
|
33
|
-
content: [{ type: "text", text: `[RBAC] Invalid role '${role}'. Valid roles: ${VALID_ROLES.join(", ")}.` }]
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
// ── RBAC: Block unauthorized supreme registration ─────────────────────
|
|
37
|
-
// Prevents AI agents (Claude Code, Gemini, Cursor) from self-assigning supreme tier.
|
|
38
|
-
if (PROTECTED_ROLES.includes(role) && !SUPREMES_WHITELIST.includes(agent)) {
|
|
39
|
-
return {
|
|
40
|
-
isError: true,
|
|
41
|
-
content: [{ type: "text", text: `[RBAC] Privilege escalation blocked: Agent '${agent}' cannot self-register as '${role}'. ` +
|
|
42
|
-
`Supreme role is reserved for: ${SUPREMES_WHITELIST.join(", ")}. ` +
|
|
43
|
-
"This attempt has been logged."
|
|
44
|
-
}]
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
// ── Validate capability range ─────────────────────────────────────────
|
|
48
|
-
const cap = typeof capability === "number" ? Math.min(10, Math.max(1, capability)) : 5;
|
|
49
|
-
try {
|
|
50
|
-
if (!fs.existsSync(registryDir))
|
|
51
|
-
fs.mkdirSync(registryDir, { recursive: true });
|
|
52
|
-
// Idempotent: merge with existing registration if present
|
|
53
|
-
let existingData = {};
|
|
54
|
-
if (fs.existsSync(agentFile)) {
|
|
55
|
-
try {
|
|
56
|
-
existingData = JSON.parse(fs.readFileSync(agentFile, "utf8"));
|
|
57
|
-
}
|
|
58
|
-
catch { /* ignore corrupt registry file, overwrite */ }
|
|
59
|
-
}
|
|
60
|
-
const agentData = {
|
|
61
|
-
...existingData, // preserve existing fields (e.g. prior specialties)
|
|
62
|
-
agent,
|
|
63
|
-
role,
|
|
64
|
-
capability: cap,
|
|
65
|
-
specialties: specialties // overwrite specialties if provided
|
|
66
|
-
? { ...(existingData.specialties ?? {}), ...specialties }
|
|
67
|
-
: existingData.specialties,
|
|
68
|
-
registered_at: existingData.registered_at ?? new Date().toISOString(),
|
|
69
|
-
last_seen: new Date().toISOString(),
|
|
70
|
-
status: "ACTIVE"
|
|
71
|
-
};
|
|
72
|
-
fs.writeFileSync(agentFile, JSON.stringify(agentData, null, 2));
|
|
73
|
-
return {
|
|
74
|
-
content: [{ type: "text", text: `[ATABEY] Agent ${agent} (${role}, capability: ${cap}/10) registered in the Control Plane.` }]
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
catch (e) {
|
|
78
|
-
return {
|
|
79
|
-
isError: true,
|
|
80
|
-
content: [{ type: "text", text: `Failed to register agent: ${String(e)}` }]
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
}
|
|
@@ -1,198 +0,0 @@
|
|
|
1
|
-
import { zodToMcpSchema } from "../utils/zod-to-mcp.js";
|
|
2
|
-
import * as schemas from "./schemas.js";
|
|
3
|
-
/**
|
|
4
|
-
* ─── SUPREME TOOL REGISTRY ─────────────────────────────────────────
|
|
5
|
-
* Every tool is dynamically generated from its Zod schema.
|
|
6
|
-
* ZERO manual JSON schema maintenance permitted.
|
|
7
|
-
*/
|
|
8
|
-
export const TOOLS = [
|
|
9
|
-
// File System
|
|
10
|
-
{
|
|
11
|
-
name: "read_file",
|
|
12
|
-
description: "Read the content of a file within the project. Supports optional line range reading to prevent stream overload.",
|
|
13
|
-
inputSchema: zodToMcpSchema(schemas.ReadFileSchema),
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
name: "view_file",
|
|
17
|
-
description: "Alias for read_file. Views the content of a file within the project.",
|
|
18
|
-
inputSchema: zodToMcpSchema(schemas.ReadFileSchema),
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
name: "write_file",
|
|
22
|
-
description: "Write content to a file. Creates directories if missing.",
|
|
23
|
-
inputSchema: zodToMcpSchema(schemas.WriteFileSchema),
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
name: "replace_text",
|
|
27
|
-
description: "Surgically replace a string in a file with another string.",
|
|
28
|
-
inputSchema: zodToMcpSchema(schemas.ReplaceTextSchema),
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
name: "batch_surgical_edit",
|
|
32
|
-
description: "Perform multiple surgical text replacements across multiple files in a single batch request.",
|
|
33
|
-
inputSchema: zodToMcpSchema(schemas.BatchSurgicalEditSchema),
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
name: "patch_file",
|
|
37
|
-
description: "Safely update a file by replacing a specific line range with new content.",
|
|
38
|
-
inputSchema: zodToMcpSchema(schemas.PatchFileSchema),
|
|
39
|
-
},
|
|
40
|
-
// Search & Exploration
|
|
41
|
-
{
|
|
42
|
-
name: "list_dir",
|
|
43
|
-
description: "List the contents of a directory. Essential for codebase exploration.",
|
|
44
|
-
inputSchema: zodToMcpSchema(schemas.ListDirSchema),
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
name: "grep_search",
|
|
48
|
-
description: "Perform a recursive regex search across the codebase.",
|
|
49
|
-
inputSchema: zodToMcpSchema(schemas.GrepSearchSchema),
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
name: "get_project_map",
|
|
53
|
-
description: "Generate a tree-view map of the project structure.",
|
|
54
|
-
inputSchema: zodToMcpSchema(schemas.GetProjectMapSchema),
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
name: "get_project_gaps",
|
|
58
|
-
description: "Scans the codebase for TODOs, FIXMEs, and empty function bodies.",
|
|
59
|
-
inputSchema: zodToMcpSchema(schemas.GetProjectGapsSchema),
|
|
60
|
-
},
|
|
61
|
-
// Framework & System
|
|
62
|
-
{
|
|
63
|
-
name: "run_shell_command",
|
|
64
|
-
description: "Execute a shell command. Restricted for security.",
|
|
65
|
-
inputSchema: zodToMcpSchema(schemas.RunShellCommandSchema),
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
name: "run_tests",
|
|
69
|
-
description: "Execute project test suites and capture pass/fail reports.",
|
|
70
|
-
inputSchema: zodToMcpSchema(schemas.RunTestsSchema),
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
name: "get_system_health",
|
|
74
|
-
description: "Retrieve real-time system metrics (CPU, RAM).",
|
|
75
|
-
inputSchema: zodToMcpSchema(schemas.GetSystemHealthSchema),
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
name: "check_active_ports",
|
|
79
|
-
description: "Identify which network ports are currently active.",
|
|
80
|
-
inputSchema: zodToMcpSchema(schemas.CheckPortsSchema),
|
|
81
|
-
},
|
|
82
|
-
{
|
|
83
|
-
name: "get_framework_status",
|
|
84
|
-
description: "Get the current project phase, active traces, and agent states.",
|
|
85
|
-
inputSchema: zodToMcpSchema(schemas.GetFrameworkStatusSchema),
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
name: "read_project_memory",
|
|
89
|
-
description: "Read the full project central memory (PROJECT_MEMORY.md).",
|
|
90
|
-
inputSchema: zodToMcpSchema(schemas.ReadProjectMemorySchema),
|
|
91
|
-
},
|
|
92
|
-
{
|
|
93
|
-
name: "get_memory_insights",
|
|
94
|
-
description: "Retrieve a summarized version of the project memory.",
|
|
95
|
-
inputSchema: zodToMcpSchema(schemas.GetMemoryInsightsSchema),
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
name: "update_project_memory",
|
|
99
|
-
description: "Update a specific section in PROJECT_MEMORY.md.",
|
|
100
|
-
inputSchema: zodToMcpSchema(schemas.UpdateProjectMemorySchema),
|
|
101
|
-
},
|
|
102
|
-
// Memory (Core Memory)
|
|
103
|
-
{
|
|
104
|
-
name: "store_knowledge",
|
|
105
|
-
description: "Store a new piece of project knowledge, decision, or code snippet into the vector-based core memory.",
|
|
106
|
-
inputSchema: zodToMcpSchema(schemas.StoreKnowledgeSchema),
|
|
107
|
-
},
|
|
108
|
-
{
|
|
109
|
-
name: "search_knowledge",
|
|
110
|
-
description: "Search the vector-based core memory for relevant project knowledge, past decisions, or rules.",
|
|
111
|
-
inputSchema: zodToMcpSchema(schemas.SearchKnowledgeSchema),
|
|
112
|
-
},
|
|
113
|
-
{
|
|
114
|
-
name: "delete_knowledge",
|
|
115
|
-
description: "Delete an obsolete or incorrect knowledge entry from the Core Memory.",
|
|
116
|
-
inputSchema: zodToMcpSchema(schemas.DeleteKnowledgeSchema),
|
|
117
|
-
},
|
|
118
|
-
{
|
|
119
|
-
name: "orchestrate_loop",
|
|
120
|
-
description: "Process pending Hermes messages and trigger transitions.",
|
|
121
|
-
inputSchema: zodToMcpSchema(schemas.OrchestrateLoopSchema),
|
|
122
|
-
},
|
|
123
|
-
{
|
|
124
|
-
name: "submit_plan",
|
|
125
|
-
description: "Submit a structured DAG plan of tasks for the project.",
|
|
126
|
-
inputSchema: zodToMcpSchema(schemas.SubmitPlanSchema),
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
name: "update_contract_hash",
|
|
130
|
-
description: "Re-generate and synchronize the backend contract SHA-256 hash.",
|
|
131
|
-
inputSchema: zodToMcpSchema(schemas.UpdateContractHashSchema),
|
|
132
|
-
},
|
|
133
|
-
{
|
|
134
|
-
name: "audit_dependencies",
|
|
135
|
-
description: "Audits package.json for unused or redundant packages.",
|
|
136
|
-
inputSchema: zodToMcpSchema(schemas.AuditDependenciesSchema),
|
|
137
|
-
},
|
|
138
|
-
{
|
|
139
|
-
name: "check_lint",
|
|
140
|
-
description: "Run the project's linter (e.g., ESLint).",
|
|
141
|
-
inputSchema: zodToMcpSchema(schemas.CheckLintSchema),
|
|
142
|
-
},
|
|
143
|
-
// Control Plane
|
|
144
|
-
{
|
|
145
|
-
name: "acquire_lock",
|
|
146
|
-
description: "Acquire a stateful lock on a shared resource.",
|
|
147
|
-
inputSchema: zodToMcpSchema(schemas.AcquireLockSchema),
|
|
148
|
-
},
|
|
149
|
-
{
|
|
150
|
-
name: "release_lock",
|
|
151
|
-
description: "Release a previously acquired lock.",
|
|
152
|
-
inputSchema: zodToMcpSchema(schemas.ReleaseLockSchema),
|
|
153
|
-
},
|
|
154
|
-
{
|
|
155
|
-
name: "register_agent",
|
|
156
|
-
description: "Register an agent instance with the Control Plane.",
|
|
157
|
-
inputSchema: zodToMcpSchema(schemas.RegisterAgentSchema),
|
|
158
|
-
},
|
|
159
|
-
// Messaging (Hermes)
|
|
160
|
-
{
|
|
161
|
-
name: "send_agent_message",
|
|
162
|
-
description: "Send a Hermes protocol message to another agent.",
|
|
163
|
-
inputSchema: zodToMcpSchema(schemas.SendAgentMessageSchema),
|
|
164
|
-
},
|
|
165
|
-
{
|
|
166
|
-
name: "log_agent_action",
|
|
167
|
-
description: "Log an agent action to the framework logs.",
|
|
168
|
-
inputSchema: zodToMcpSchema(schemas.LogAgentActionSchema),
|
|
169
|
-
},
|
|
170
|
-
{
|
|
171
|
-
name: "ask_human",
|
|
172
|
-
description: "Pause execution and ask the human developer a clarifying question via the terminal.",
|
|
173
|
-
inputSchema: zodToMcpSchema(schemas.AskHumanSchema),
|
|
174
|
-
},
|
|
175
|
-
// ─── PII / Compliance ─────────────────────────────────────────
|
|
176
|
-
{
|
|
177
|
-
name: "mask_pii",
|
|
178
|
-
description: "Mask Personally Identifiable Information (PII) in text or structured data. Compliant with KVKK (Law No. 6698) and GDPR. Detects and masks emails, phone numbers, TC IDs, API keys, tokens, IPs, credit cards, IBANs, and more.",
|
|
179
|
-
inputSchema: zodToMcpSchema(schemas.MaskPIISchema),
|
|
180
|
-
},
|
|
181
|
-
// ─── Code Quality ─────────────────────────────────────────────
|
|
182
|
-
{
|
|
183
|
-
name: "analyze_code_quality",
|
|
184
|
-
description: "Analyze code quality in a given path. Checks TypeScript types, lint rules, and code complexity.",
|
|
185
|
-
inputSchema: zodToMcpSchema(schemas.AnalyzeCodeQualitySchema),
|
|
186
|
-
},
|
|
187
|
-
{
|
|
188
|
-
name: "check_architecture_compliance",
|
|
189
|
-
description: "Check architecture compliance in a given path. Verifies layer boundaries (Controller→Service→Repository), import direction rules, and strict mode.",
|
|
190
|
-
inputSchema: zodToMcpSchema(schemas.CheckArchitectureComplianceSchema),
|
|
191
|
-
},
|
|
192
|
-
// ─── Human-in-the-Loop ────────────────────────────────────────
|
|
193
|
-
{
|
|
194
|
-
name: "approve_operation",
|
|
195
|
-
description: "Approve, reject, or list pending risk-gated operations. Use this when an operation was blocked by the Risk Gate (risk score ≥ 60). Action: 'approve' | 'reject' | 'list'.",
|
|
196
|
-
inputSchema: zodToMcpSchema(schemas.ApproveOperationSchema),
|
|
197
|
-
},
|
|
198
|
-
];
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import { verifyCorporateCompliance, verifyRiskAndAwaitApproval } from "../../utils/compliance.js";
|
|
3
|
-
import { writeTextFile } from "../../utils/fs.js";
|
|
4
|
-
import { Metrics } from "../../utils/metrics.js";
|
|
5
|
-
import { verifyWritePermission } from "../../utils/permissions.js";
|
|
6
|
-
import { safePath } from "../../utils/security.js";
|
|
7
|
-
/**
|
|
8
|
-
* Performs multiple surgical text replacements across multiple files in a single batch.
|
|
9
|
-
*/
|
|
10
|
-
export async function handleBatchSurgicalEdit(projectRoot, args) {
|
|
11
|
-
const edits = args.edits;
|
|
12
|
-
if (!Array.isArray(edits) || edits.length === 0) {
|
|
13
|
-
const err = "No edits provided in the batch request.";
|
|
14
|
-
Metrics.logError(projectRoot, "@mcp", "batch_surgical_edit", err);
|
|
15
|
-
throw new Error(err);
|
|
16
|
-
}
|
|
17
|
-
const results = [];
|
|
18
|
-
let totalTokens = 0;
|
|
19
|
-
for (const edit of edits) {
|
|
20
|
-
const filePath = safePath(projectRoot, edit.path);
|
|
21
|
-
// ENFORCE PERMISSION MATRIX
|
|
22
|
-
verifyWritePermission(projectRoot, edit.path);
|
|
23
|
-
if (!fs.existsSync(filePath)) {
|
|
24
|
-
const err = `File not found: ${edit.path}`;
|
|
25
|
-
Metrics.logError(projectRoot, "@mcp", `batch_surgical_edit:${edit.path}`, err);
|
|
26
|
-
throw new Error(err);
|
|
27
|
-
}
|
|
28
|
-
const content = fs.readFileSync(filePath, "utf8");
|
|
29
|
-
const { oldText, newText, allowMultiple = false } = edit;
|
|
30
|
-
if (!content.includes(oldText)) {
|
|
31
|
-
const err = `Text not found in file ${edit.path}`;
|
|
32
|
-
Metrics.logError(projectRoot, "@mcp", `batch_surgical_edit:${edit.path}`, err);
|
|
33
|
-
throw new Error(err);
|
|
34
|
-
}
|
|
35
|
-
// Surgical precision guard
|
|
36
|
-
if (!allowMultiple) {
|
|
37
|
-
const firstIndex = content.indexOf(oldText);
|
|
38
|
-
const lastIndex = content.lastIndexOf(oldText);
|
|
39
|
-
if (firstIndex !== lastIndex) {
|
|
40
|
-
const err = `Ambiguous replacement in ${edit.path}`;
|
|
41
|
-
Metrics.logError(projectRoot, "@mcp", `batch_surgical_edit:${edit.path}`, err);
|
|
42
|
-
throw new Error(err);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
const newContent = allowMultiple
|
|
46
|
-
? content.replace(new RegExp(oldText.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), "g"), newText)
|
|
47
|
-
: content.replace(oldText, newText);
|
|
48
|
-
// ENFORCE CORPORATE COMPLIANCE
|
|
49
|
-
verifyCorporateCompliance(newContent, edit.path);
|
|
50
|
-
// ENFORCE RISK & HUMAN APPROVAL GATEWAY
|
|
51
|
-
await verifyRiskAndAwaitApproval(projectRoot, newContent, edit.path);
|
|
52
|
-
writeTextFile(filePath, newContent);
|
|
53
|
-
const tokens = Metrics.estimateTokens(newText);
|
|
54
|
-
totalTokens += tokens;
|
|
55
|
-
results.push(`[OK] Edited ${edit.path}`);
|
|
56
|
-
}
|
|
57
|
-
Metrics.logUsage(projectRoot, "@mcp", `batch_surgical_edit: ${edits.length} files`, totalTokens);
|
|
58
|
-
return {
|
|
59
|
-
content: [{
|
|
60
|
-
type: "text",
|
|
61
|
-
text: `Successfully performed ${edits.length} edits:\n${results.join("\n")}`
|
|
62
|
-
}]
|
|
63
|
-
};
|
|
64
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import { safePath } from "../../utils/security.js";
|
|
3
|
-
import { Metrics } from "../../utils/metrics.js";
|
|
4
|
-
import { verifyCorporateCompliance, verifyRiskAndAwaitApproval } from "../../utils/compliance.js";
|
|
5
|
-
import { verifyWritePermission } from "../../utils/permissions.js";
|
|
6
|
-
export async function handlePatchFile(projectRoot, args) {
|
|
7
|
-
const filePath = safePath(projectRoot, args.path);
|
|
8
|
-
// ENFORCE PERMISSION MATRIX
|
|
9
|
-
verifyWritePermission(projectRoot, args.path);
|
|
10
|
-
const lines = fs.readFileSync(filePath, "utf8").split("\n");
|
|
11
|
-
const start = args.startLine - 1;
|
|
12
|
-
const end = args.endLine;
|
|
13
|
-
const newContent = args.newContent.split("\n");
|
|
14
|
-
if (start < 0 || start > lines.length) {
|
|
15
|
-
const err = `Invalid start line: ${start + 1}. File has ${lines.length} lines.`;
|
|
16
|
-
Metrics.logError(projectRoot, "@mcp", `patch_file:${args.path}`, err);
|
|
17
|
-
throw new Error(err);
|
|
18
|
-
}
|
|
19
|
-
if (end < start + 1 || end > lines.length) {
|
|
20
|
-
const err = `Invalid end line: ${end}. Must be between ${start + 1} and ${lines.length}.`;
|
|
21
|
-
Metrics.logError(projectRoot, "@mcp", `patch_file:${args.path}`, err);
|
|
22
|
-
throw new Error(err);
|
|
23
|
-
}
|
|
24
|
-
lines.splice(start, end - start, ...newContent);
|
|
25
|
-
const patchedContent = lines.join("\n");
|
|
26
|
-
// ENFORCE CORPORATE COMPLIANCE
|
|
27
|
-
verifyCorporateCompliance(patchedContent, args.path);
|
|
28
|
-
// ENFORCE RISK & HUMAN APPROVAL GATEWAY
|
|
29
|
-
await verifyRiskAndAwaitApproval(projectRoot, patchedContent, args.path);
|
|
30
|
-
fs.writeFileSync(filePath, patchedContent);
|
|
31
|
-
const tokens = Metrics.estimateTokens(args.newContent);
|
|
32
|
-
Metrics.logUsage(projectRoot, "@mcp", `patch_file: ${args.path}`, tokens);
|
|
33
|
-
return { content: [{ type: "text", text: `[OK] File patched successfully: ${args.path}` }] };
|
|
34
|
-
}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import { safePath } from "../../utils/security.js";
|
|
3
|
-
import { Metrics } from "../../utils/metrics.js";
|
|
4
|
-
import { verifyReadPermission } from "../../utils/permissions.js";
|
|
5
|
-
export function handleReadFile(projectRoot, args) {
|
|
6
|
-
if (!args.path) {
|
|
7
|
-
const err = "Missing 'path' argument.";
|
|
8
|
-
Metrics.logError(projectRoot, "@mcp", "read_file", err);
|
|
9
|
-
return { isError: true, content: [{ type: "text", text: `[ERROR] ${err}` }] };
|
|
10
|
-
}
|
|
11
|
-
try {
|
|
12
|
-
const filePath = safePath(projectRoot, args.path);
|
|
13
|
-
// ENFORCE READ PERMISSION MATRIX
|
|
14
|
-
// Checked before file existence to avoid leaking path information
|
|
15
|
-
// to agents without read access (Claude Code, Cursor, Gemini CLI, etc.)
|
|
16
|
-
verifyReadPermission(projectRoot, args.path);
|
|
17
|
-
if (!fs.existsSync(filePath)) {
|
|
18
|
-
const err = `File not found: ${args.path}`;
|
|
19
|
-
Metrics.logError(projectRoot, "@mcp", "read_file", err);
|
|
20
|
-
return { isError: true, content: [{ type: "text", text: `[ERROR] ${err}` }] };
|
|
21
|
-
}
|
|
22
|
-
const startLine = args.startLine;
|
|
23
|
-
const endLine = args.endLine;
|
|
24
|
-
const content = fs.readFileSync(filePath, "utf8");
|
|
25
|
-
const lines = content.split(/\r?\n/);
|
|
26
|
-
if (startLine !== undefined || endLine !== undefined) {
|
|
27
|
-
const start = startLine !== undefined ? Math.max(1, startLine) - 1 : 0;
|
|
28
|
-
const end = endLine !== undefined ? Math.min(lines.length, endLine) : lines.length;
|
|
29
|
-
const sliced = lines.slice(start, end).join("\n");
|
|
30
|
-
const tokens = Metrics.estimateTokens(sliced);
|
|
31
|
-
Metrics.logUsage(projectRoot, "@mcp", `read_file: ${args.path}`, tokens);
|
|
32
|
-
return { content: [{ type: "text", text: sliced }] };
|
|
33
|
-
}
|
|
34
|
-
// ENFORCE TOKEN ECONOMY: Hard Limit for large files
|
|
35
|
-
const HARD_LIMIT_LINES = 300;
|
|
36
|
-
if (lines.length > HARD_LIMIT_LINES && (startLine === undefined || endLine === undefined)) {
|
|
37
|
-
const errMsg = `[TOKEN ECONOMY GUARD] File '${args.path}' is too large (${lines.length} lines). To prevent context overflow and token waste, you MUST provide both 'startLine' and 'endLine' parameters to read specific sections of this file.`;
|
|
38
|
-
Metrics.logError(projectRoot, "@mcp", `read_file: ${args.path} (blocked)`, errMsg);
|
|
39
|
-
return {
|
|
40
|
-
isError: true,
|
|
41
|
-
content: [{
|
|
42
|
-
type: "text",
|
|
43
|
-
text: `[ERROR] ${errMsg}`
|
|
44
|
-
}]
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
const tokens = Metrics.estimateTokens(content);
|
|
48
|
-
Metrics.logUsage(projectRoot, "@mcp", `read_file: ${args.path}`, tokens);
|
|
49
|
-
return { content: [{ type: "text", text: content }] };
|
|
50
|
-
}
|
|
51
|
-
catch (e) {
|
|
52
|
-
const err = `Failed to read file: ${String(e)}`;
|
|
53
|
-
Metrics.logError(projectRoot, "@mcp", `read_file:${args.path}`, err);
|
|
54
|
-
return { isError: true, content: [{ type: "text", text: `[ERROR] ${err}` }] };
|
|
55
|
-
}
|
|
56
|
-
}
|