0xray 3.4.2 → 3.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.xray/features.json +13 -7
- package/README.md +2 -2
- package/dist/CHANGELOG.md +16 -0
- package/dist/README.md +2 -2
- package/dist/agents/architect.d.ts +2 -0
- package/dist/agents/backend-engineer.d.ts +8 -0
- package/dist/agents/bug-triage-specialist.d.ts +2 -0
- package/dist/agents/code-analyzer.d.ts +7 -0
- package/dist/agents/code-reviewer.d.ts +2 -0
- package/dist/agents/content-creator.d.ts +9 -0
- package/dist/agents/database-engineer.d.ts +8 -0
- package/dist/agents/devops-engineer.d.ts +8 -0
- package/dist/agents/frontend-engineer.d.ts +8 -0
- package/dist/agents/frontend-ui-ux-engineer.d.ts +8 -0
- package/dist/agents/growth-strategist.d.ts +8 -0
- package/dist/agents/index.d.ts +25 -0
- package/dist/agents/known-names.d.ts +26 -0
- package/dist/agents/librarian-agents-updater.d.ts +30 -0
- package/dist/agents/log-monitor.d.ts +2 -0
- package/dist/agents/mobile-developer.d.ts +9 -0
- package/dist/agents/multimodal-looker.d.ts +9 -0
- package/dist/agents/performance-engineer.d.ts +8 -0
- package/dist/agents/refactorer.d.ts +2 -0
- package/dist/agents/registry.d.ts +37 -0
- package/dist/agents/researcher.d.ts +2 -0
- package/dist/agents/security-auditor.d.ts +2 -0
- package/dist/agents/seo-consultant.d.ts +8 -0
- package/dist/agents/strategist.d.ts +7 -0
- package/dist/agents/tech-writer.d.ts +8 -0
- package/dist/agents/testing-lead.d.ts +2 -0
- package/dist/agents/types.d.ts +45 -0
- package/dist/analytics/consent-manager.d.ts +92 -0
- package/dist/analytics/emerging-pattern-detector.d.ts +66 -0
- package/dist/analytics/pattern-learning-engine.d.ts +79 -0
- package/dist/analytics/pattern-performance-tracker.d.ts +96 -0
- package/dist/analytics/predictive-analytics.d.ts +40 -0
- package/dist/analytics/prompt-pattern-analyzer.d.ts +98 -0
- package/dist/analytics/routing-performance-analyzer.d.ts +100 -0
- package/dist/analytics/routing-refiner.d.ts +102 -0
- package/dist/analytics/simple-pattern-analyzer.d.ts +79 -0
- package/dist/architect/architect-tools.d.ts +70 -0
- package/dist/architect/architectural-integrity.d.ts +20 -0
- package/dist/benchmark/performance-benchmark.d.ts +103 -0
- package/dist/cli/commands/analytics-disable.d.ts +9 -0
- package/dist/cli/commands/analytics-enable-action.d.ts +8 -0
- package/dist/cli/commands/analytics-preview.d.ts +9 -0
- package/dist/cli/commands/analytics-status.d.ts +9 -0
- package/dist/cli/commands/antigravity-status.d.ts +9 -0
- package/dist/cli/commands/archive-logs.d.ts +23 -0
- package/dist/cli/commands/credible-init.d.ts +11 -0
- package/dist/cli/commands/enforce.d.ts +12 -0
- package/dist/cli/commands/govern.d.ts +29 -0
- package/dist/cli/commands/grok-install.d.ts +7 -0
- package/dist/cli/commands/hermes-install.d.ts +2 -0
- package/dist/cli/commands/mcp-install.d.ts +4 -0
- package/dist/cli/commands/openclaw-install.d.ts +2 -0
- package/dist/cli/commands/opencode-install.d.ts +2 -0
- package/dist/cli/commands/plugin-commands.d.ts +18 -0
- package/dist/cli/commands/publish-agent.d.ts +15 -0
- package/dist/cli/commands/security-audit.d.ts +23 -0
- package/dist/cli/commands/skill-install.d.ts +6 -0
- package/dist/cli/commands/status.d.ts +41 -0
- package/dist/cli/commands/storyteller.d.ts +19 -0
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/server.d.ts +1 -0
- package/dist/config/default-agents.d.ts +12 -0
- package/dist/config/routing-mappings.d.ts +26 -0
- package/dist/core/activity-logger.d.ts +71 -0
- package/dist/core/adaptive-kernel.d.ts +108 -0
- package/dist/core/agent-spawn-gate.d.ts +56 -0
- package/dist/core/boot-orchestrator.d.ts +99 -0
- package/dist/core/codex-formatter.d.ts +95 -0
- package/dist/core/codex-injector.d.ts +73 -0
- package/dist/core/config-loader.d.ts +59 -0
- package/dist/core/config-paths.d.ts +66 -0
- package/dist/core/context-loader.d.ts +120 -0
- package/dist/core/context-validator.d.ts +52 -0
- package/dist/core/features-config.d.ts +485 -0
- package/dist/core/framework-logger.d.ts +76 -0
- package/dist/core/index.d.ts +5 -0
- package/dist/core/kernel-patterns.d.ts +129 -0
- package/dist/core/logging-config.d.ts +10 -0
- package/dist/core/model-router.d.ts +56 -0
- package/dist/core/orchestrator.d.ts +71 -0
- package/dist/core/system-prompt-generator.d.ts +34 -0
- package/dist/core/trace-context.d.ts +12 -0
- package/dist/core/xray-activation.d.ts +14 -0
- package/dist/delegation/agent-delegator.d.ts +185 -0
- package/dist/delegation/agent-expertise.d.ts +15 -0
- package/dist/delegation/analytics/index.d.ts +11 -0
- package/dist/delegation/analytics/learning-engine.d.ts +84 -0
- package/dist/delegation/analytics/outcome-tracker.d.ts +117 -0
- package/dist/delegation/analytics/routing-analytics.d.ts +60 -0
- package/dist/delegation/ast-code-parser.d.ts +173 -0
- package/dist/delegation/codebase-context-analyzer.d.ts +164 -0
- package/dist/delegation/complexity-analyzer.d.ts +110 -0
- package/dist/delegation/complexity-core.d.ts +119 -0
- package/dist/delegation/config/types.d.ts +247 -0
- package/dist/delegation/dependency-graph-builder.d.ts +94 -0
- package/dist/delegation/index.d.ts +25 -0
- package/dist/delegation/metrics-aggregator.d.ts +91 -0
- package/dist/delegation/session-coordinator.d.ts +132 -0
- package/dist/delegation/strategy-selector.d.ts +27 -0
- package/dist/delegation/voting-coordinator.d.ts +48 -0
- package/dist/delegation/voting-types.d.ts +154 -0
- package/dist/delegation/weighted-voting-aggregator.d.ts +36 -0
- package/dist/enforcement/core/index.d.ts +14 -0
- package/dist/enforcement/core/rule-executor.d.ts +157 -0
- package/dist/enforcement/core/rule-hierarchy.d.ts +145 -0
- package/dist/enforcement/core/rule-registry.d.ts +196 -0
- package/dist/enforcement/core/violation-fixer.d.ts +105 -0
- package/dist/enforcement/enforcer-tools.d.ts +78 -0
- package/dist/enforcement/index.d.ts +22 -0
- package/dist/enforcement/loaders/agent-triage-loader.d.ts +98 -0
- package/dist/enforcement/loaders/agents-md-validation-loader.d.ts +75 -0
- package/dist/enforcement/loaders/base-loader.d.ts +82 -0
- package/dist/enforcement/loaders/codex-loader.d.ts +76 -0
- package/dist/enforcement/loaders/index.d.ts +36 -0
- package/dist/enforcement/loaders/loader-orchestrator.d.ts +96 -0
- package/dist/enforcement/loaders/processor-loader.d.ts +59 -0
- package/dist/enforcement/rule-enforcer.d.ts +142 -0
- package/dist/enforcement/test-auto-healing.d.ts +83 -0
- package/dist/enforcement/types.d.ts +500 -0
- package/dist/enforcement/validators/architecture-validators.d.ts +154 -0
- package/dist/enforcement/validators/base-validator.d.ts +87 -0
- package/dist/enforcement/validators/code-quality-validators.d.ts +88 -0
- package/dist/enforcement/validators/index.d.ts +14 -0
- package/dist/enforcement/validators/security-validators.d.ts +52 -0
- package/dist/enforcement/validators/testing-validators.d.ts +80 -0
- package/dist/enforcement/validators/validator-registry.d.ts +91 -0
- package/dist/execution/opencode-cli-invoker.d.ts +8 -0
- package/dist/execution/proposal-applier.d.ts +24 -0
- package/dist/governance/codex-policy.service.d.ts +56 -0
- package/dist/governance/governance-core.d.ts +53 -0
- package/dist/governance/governance-service.d.ts +38 -0
- package/dist/governance/governance-types.d.ts +90 -0
- package/dist/governance/llm-governance-provider.d.ts +13 -0
- package/dist/index.d.ts +28 -0
- package/dist/inference/deploy-verifier.d.ts +26 -0
- package/dist/inference/index.d.ts +10 -0
- package/dist/inference/inference-accumulator.d.ts +29 -0
- package/dist/inference/inference-agent-invoker.d.ts +3 -0
- package/dist/inference/inference-applier.d.ts +4 -0
- package/dist/inference/inference-cycle.d.ts +70 -0
- package/dist/inference/inference-proposal-generator.d.ts +3 -0
- package/dist/inference/semantic-patterns.d.ts +7 -0
- package/dist/inference/session-capture.d.ts +32 -0
- package/dist/infrastructure/iac-validator.d.ts +150 -0
- package/dist/infrastructure/schemas/cloud-schemas.d.ts +482 -0
- package/dist/integrations/base/ExampleIntegration.d.ts +46 -0
- package/dist/integrations/base/Integration.d.ts +266 -0
- package/dist/integrations/base/index.d.ts +11 -0
- package/dist/integrations/base/registry.d.ts +272 -0
- package/dist/integrations/base/types.d.ts +167 -0
- package/dist/integrations/enforcement-gate.d.ts +44 -0
- package/dist/integrations/governance/governance-client.d.ts +75 -0
- package/dist/integrations/governance/index.d.ts +98 -0
- package/dist/integrations/governance/types.d.ts +238 -0
- package/dist/integrations/grok/grok-cli.d.ts +25 -0
- package/dist/integrations/openclaw/api-server.d.ts +86 -0
- package/dist/integrations/openclaw/client.d.ts +121 -0
- package/dist/integrations/openclaw/config.d.ts +95 -0
- package/dist/integrations/openclaw/hooks/xray-hooks.d.ts +123 -0
- package/dist/integrations/openclaw/index.d.ts +100 -0
- package/dist/integrations/openclaw/types.d.ts +425 -0
- package/dist/integrations/plugins/index.d.ts +9 -0
- package/dist/integrations/plugins/plugin-integration.d.ts +288 -0
- package/dist/integrations/plugins/plugin-registry.d.ts +223 -0
- package/dist/mcps/agent-resolver.d.ts +45 -0
- package/dist/mcps/architect-tools.server.d.ts +16 -0
- package/dist/mcps/auto-format.server.d.ts +18 -0
- package/dist/mcps/boot-orchestrator.server.d.ts +48 -0
- package/dist/mcps/config/config-loader.d.ts +56 -0
- package/dist/mcps/config/config-validator.d.ts +40 -0
- package/dist/mcps/config/index.d.ts +31 -0
- package/dist/mcps/config/plugin-server-registry.d.ts +126 -0
- package/dist/mcps/config/server-config-registry.d.ts +51 -0
- package/dist/mcps/connection/connection-manager.d.ts +39 -0
- package/dist/mcps/connection/connection-pool.d.ts +64 -0
- package/dist/mcps/connection/mcp-connection.d.ts +66 -0
- package/dist/mcps/connection/process-spawner.d.ts +24 -0
- package/dist/mcps/enforcer-tools.server.d.ts +26 -0
- package/dist/mcps/estimation.server.d.ts +19 -0
- package/dist/mcps/framework-compliance-audit.server.d.ts +20 -0
- package/dist/mcps/framework-help.server.d.ts +13 -0
- package/dist/mcps/governance.server.d.ts +35 -0
- package/dist/mcps/governance.server.js +14 -2
- package/dist/mcps/in-process-skill-registry.d.ts +20 -0
- package/dist/mcps/index.d.ts +17 -0
- package/dist/mcps/knowledge-skills/api-design.server.d.ts +13 -0
- package/dist/mcps/knowledge-skills/architecture-patterns.server.d.ts +13 -0
- package/dist/mcps/knowledge-skills/bug-triage-specialist.server.d.ts +31 -0
- package/dist/mcps/knowledge-skills/code-analyzer.server.d.ts +29 -0
- package/dist/mcps/knowledge-skills/code-review.server.d.ts +44 -0
- package/dist/mcps/knowledge-skills/content-creator.server.d.ts +11 -0
- package/dist/mcps/knowledge-skills/database-design.server.d.ts +41 -0
- package/dist/mcps/knowledge-skills/devops-deployment.server.d.ts +41 -0
- package/dist/mcps/knowledge-skills/git-workflow.server.d.ts +13 -0
- package/dist/mcps/knowledge-skills/growth-strategist.server.d.ts +11 -0
- package/dist/mcps/knowledge-skills/log-monitor.server.d.ts +22 -0
- package/dist/mcps/knowledge-skills/mobile-development.server.d.ts +17 -0
- package/dist/mcps/knowledge-skills/multimodal-looker.server.d.ts +53 -0
- package/dist/mcps/knowledge-skills/performance-optimization.server.d.ts +69 -0
- package/dist/mcps/knowledge-skills/project-analysis.server.d.ts +35 -0
- package/dist/mcps/knowledge-skills/refactoring-strategies.server.d.ts +31 -0
- package/dist/mcps/knowledge-skills/security-audit.server.d.ts +46 -0
- package/dist/mcps/knowledge-skills/seo-consultant.server.d.ts +24 -0
- package/dist/mcps/knowledge-skills/session-management.server.d.ts +22 -0
- package/dist/mcps/knowledge-skills/skill-invocation.server.d.ts +32 -0
- package/dist/mcps/knowledge-skills/storyteller.server.d.ts +11 -0
- package/dist/mcps/knowledge-skills/strategist.server.d.ts +15 -0
- package/dist/mcps/knowledge-skills/tech-writer.server.d.ts +45 -0
- package/dist/mcps/knowledge-skills/testing-best-practices.server.d.ts +34 -0
- package/dist/mcps/knowledge-skills/testing-strategy.server.d.ts +45 -0
- package/dist/mcps/knowledge-skills/ui-ux-design.server.d.ts +67 -0
- package/dist/mcps/lint.server.d.ts +15 -0
- package/dist/mcps/mcp-client.d.ts +157 -0
- package/dist/mcps/model-health-check.server.d.ts +14 -0
- package/dist/mcps/orchestrator/aside-context.d.ts +21 -0
- package/dist/mcps/orchestrator/config/agent-capabilities.d.ts +39 -0
- package/dist/mcps/orchestrator/config/memory-routing-bridge.d.ts +12 -0
- package/dist/mcps/orchestrator/execution/execution-planner.d.ts +62 -0
- package/dist/mcps/orchestrator/handlers/complexity-handler.d.ts +32 -0
- package/dist/mcps/orchestrator/handlers/status-handler.d.ts +71 -0
- package/dist/mcps/orchestrator/handlers/task-handler.d.ts +53 -0
- package/dist/mcps/orchestrator/index.d.ts +6 -0
- package/dist/mcps/orchestrator/server.d.ts +38 -0
- package/dist/mcps/orchestrator/types.d.ts +128 -0
- package/dist/mcps/orchestrator.server.d.ts +10 -0
- package/dist/mcps/performance-analysis.server.d.ts +25 -0
- package/dist/mcps/processor-pipeline.server.d.ts +29 -0
- package/dist/mcps/protocol/protocol-constants.d.ts +46 -0
- package/dist/mcps/researcher-confidence.d.ts +21 -0
- package/dist/mcps/researcher.server.d.ts +29 -0
- package/dist/mcps/security-scan.server.d.ts +19 -0
- package/dist/mcps/shared/knowledge-skill-base.d.ts +17 -0
- package/dist/mcps/shared/prompt-security-validator.d.ts +44 -0
- package/dist/mcps/shared/security-scanner.d.ts +119 -0
- package/dist/mcps/simulation/index.d.ts +12 -0
- package/dist/mcps/simulation/server-simulations.d.ts +39 -0
- package/dist/mcps/simulation/simulation-engine.d.ts +51 -0
- package/dist/mcps/state-manager.server.d.ts +27 -0
- package/dist/mcps/tools/index.d.ts +14 -0
- package/dist/mcps/tools/tool-cache.d.ts +53 -0
- package/dist/mcps/tools/tool-discovery.d.ts +27 -0
- package/dist/mcps/tools/tool-executor.d.ts +41 -0
- package/dist/mcps/tools/tool-registry.d.ts +42 -0
- package/dist/mcps/types/index.d.ts +13 -0
- package/dist/mcps/types/json-rpc.types.d.ts +35 -0
- package/dist/mcps/types/mcp.types.d.ts +105 -0
- package/dist/memory-routing/index.d.ts +6 -0
- package/dist/memory-routing/null-provider.d.ts +14 -0
- package/dist/memory-routing/provider-loader.d.ts +2 -0
- package/dist/memory-routing/provider-registry.d.ts +8 -0
- package/dist/memory-routing/types.d.ts +104 -0
- package/dist/memory-routing/validate-config.d.ts +7 -0
- package/dist/metrics/agent-metrics.d.ts +169 -0
- package/dist/metrics/index.d.ts +6 -0
- package/dist/monitoring/advanced-profiler.d.ts +51 -0
- package/dist/monitoring/memory-monitor.d.ts +113 -0
- package/dist/monitoring/nudge-watchdog.d.ts +87 -0
- package/dist/monitoring/test-auto-generation-monitor.d.ts +64 -0
- package/dist/nucleus/autonomy-kernel.d.ts +48 -0
- package/dist/nucleus/default-plugins.d.ts +17 -0
- package/dist/nucleus/govern-http.d.ts +59 -0
- package/dist/nucleus/index.d.ts +17 -0
- package/dist/nucleus/kernel.d.ts +51 -0
- package/dist/nucleus/plugin-registry.d.ts +132 -0
- package/dist/nucleus/thin-dispatch.d.ts +33 -0
- package/dist/orchestrator/agent-spawn-governor.d.ts +126 -0
- package/dist/orchestrator/enhanced-multi-agent-orchestrator.d.ts +156 -0
- package/dist/orchestrator/intelligent-commit-batcher.d.ts +114 -0
- package/dist/orchestrator/multi-agent-orchestration-coordinator.d.ts +126 -0
- package/dist/orchestrator/orchestrator.d.ts +141 -0
- package/dist/orchestrator/self-direction-activation.d.ts +108 -0
- package/dist/orchestrator/universal-librarian-consultation.d.ts +98 -0
- package/dist/orchestrator/universal-registry-bridge.d.ts +84 -0
- package/dist/performance/performance-budget-enforcer.d.ts +157 -0
- package/dist/performance/performance-regression-tester.d.ts +107 -0
- package/dist/plugin/plugin-codex-context.d.ts +18 -0
- package/dist/plugin/plugin-helpers.d.ts +23 -0
- package/dist/plugin/plugin-logger.d.ts +8 -0
- package/dist/plugin/plugin-modules.d.ts +11 -0
- package/dist/plugin/plugin-quality-gate.d.ts +11 -0
- package/dist/plugin/plugin-types.d.ts +93 -0
- package/dist/plugin/xray-codex-injection.d.ts +39 -0
- package/dist/postprocessor/PostProcessor.d.ts +107 -0
- package/dist/postprocessor/analysis/CodeChangeAnalyzer.d.ts +11 -0
- package/dist/postprocessor/analysis/FailureAnalysisEngine.d.ts +39 -0
- package/dist/postprocessor/autofix/AutoFixEngine.d.ts +48 -0
- package/dist/postprocessor/autofix/FixValidator.d.ts +23 -0
- package/dist/postprocessor/config/ProcessorConfigLoader.d.ts +44 -0
- package/dist/postprocessor/config.d.ts +6 -0
- package/dist/postprocessor/escalation/EscalationEngine.d.ts +154 -0
- package/dist/postprocessor/integration.d.ts +156 -0
- package/dist/postprocessor/metamorphosis/SelfProposalEngine.d.ts +87 -0
- package/dist/postprocessor/metamorphosis/index.d.ts +2 -0
- package/dist/postprocessor/monitoring/MonitoringEngine.d.ts +40 -0
- package/dist/postprocessor/redeploy/RedeployCoordinator.d.ts +91 -0
- package/dist/postprocessor/redeploy/RetryHandler.d.ts +49 -0
- package/dist/postprocessor/services/RegressionAnalysisService.d.ts +39 -0
- package/dist/postprocessor/success/SuccessHandler.d.ts +57 -0
- package/dist/postprocessor/triggers/APITrigger.d.ts +34 -0
- package/dist/postprocessor/triggers/GitHookTrigger.d.ts +38 -0
- package/dist/postprocessor/triggers/WebhookTrigger.d.ts +46 -0
- package/dist/postprocessor/types.d.ts +227 -0
- package/dist/processors/doc-write-guard.d.ts +6 -0
- package/dist/processors/implementations/agents-md-validation-processor.d.ts +62 -0
- package/dist/processors/implementations/async-pattern-processor.d.ts +47 -0
- package/dist/processors/implementations/codex-compliance-processor.d.ts +7 -0
- package/dist/processors/implementations/commit-batcher-processor.d.ts +13 -0
- package/dist/processors/implementations/console-log-guard-processor.d.ts +32 -0
- package/dist/processors/implementations/coverage-analysis-processor.d.ts +19 -0
- package/dist/processors/implementations/error-boundary-processor.d.ts +7 -0
- package/dist/processors/implementations/inference-improvement-processor.d.ts +36 -0
- package/dist/processors/implementations/log-protection-processor.d.ts +29 -0
- package/dist/processors/implementations/nudge-processor.d.ts +21 -0
- package/dist/processors/implementations/performance-budget-processor.d.ts +49 -0
- package/dist/processors/implementations/postprocessor-chain-validator.d.ts +45 -0
- package/dist/processors/implementations/pre-validate-processor.d.ts +7 -0
- package/dist/processors/implementations/publish-preflight-processor.d.ts +37 -0
- package/dist/processors/implementations/refactoring-logging-processor-wrapper.d.ts +7 -0
- package/dist/processors/implementations/refactoring-logging-processor.d.ts +31 -0
- package/dist/processors/implementations/regression-testing-processor.d.ts +20 -0
- package/dist/processors/implementations/session-capture-processor.d.ts +14 -0
- package/dist/processors/implementations/session-summary-processor.d.ts +26 -0
- package/dist/processors/implementations/spawn-governance-processor.d.ts +57 -0
- package/dist/processors/implementations/state-validation-processor.d.ts +11 -0
- package/dist/processors/implementations/storytelling-trigger-processor.d.ts +40 -0
- package/dist/processors/implementations/test-auto-creation-processor.d.ts +16 -0
- package/dist/processors/implementations/test-execution-processor.d.ts +11 -0
- package/dist/processors/implementations/typescript-compilation-processor.d.ts +37 -0
- package/dist/processors/implementations/version-compliance-processor.d.ts +111 -0
- package/dist/processors/processor-interfaces.d.ts +126 -0
- package/dist/processors/processor-manager.d.ts +80 -0
- package/dist/processors/processor-types.d.ts +189 -0
- package/dist/public/XrayService.d.ts +17 -0
- package/dist/public/index.d.ts +4 -0
- package/dist/reporting/framework-reporting-system.d.ts +19 -0
- package/dist/reporting/log-parser.d.ts +10 -0
- package/dist/reporting/metrics.d.ts +15 -0
- package/dist/reporting/report-formatter.d.ts +5 -0
- package/dist/reporting/types.d.ts +102 -0
- package/dist/scripts/activate-kernel-pipeline.d.ts +7 -0
- package/dist/scripts/integration.d.ts +36 -0
- package/dist/security/comprehensive-security-audit.d.ts +157 -0
- package/dist/security/index.d.ts +13 -0
- package/dist/security/prompt-security-validator.d.ts +44 -0
- package/dist/security/security-agent-coordinator.d.ts +71 -0
- package/dist/security/security-auditor.d.ts +55 -0
- package/dist/security/security-hardener.d.ts +61 -0
- package/dist/security/security-hardening-system.d.ts +238 -0
- package/dist/security/security-headers.d.ts +63 -0
- package/dist/security/security-orchestration-layer.d.ts +118 -0
- package/dist/security/security-scanner.d.ts +119 -0
- package/dist/services/inference-tuner.d.ts +76 -0
- package/dist/session/index.d.ts +3 -0
- package/dist/session/session-cleanup-manager.d.ts +117 -0
- package/dist/session/session-monitor.d.ts +132 -0
- package/dist/session/session-state-manager.d.ts +144 -0
- package/dist/skills/xray-orchestrator/index.d.ts +12 -0
- package/dist/state/context-providers.d.ts +4 -0
- package/dist/state/index.d.ts +4 -0
- package/dist/state/state-manager.d.ts +41 -0
- package/dist/state/state-types.d.ts +5 -0
- package/dist/testing/memory-regression-suite.d.ts +105 -0
- package/dist/tools/assess-complexity-tool.d.ts +28 -0
- package/dist/tools/query-routing-tool.d.ts +17 -0
- package/dist/types/metamorphosis.d.ts +21 -0
- package/dist/utils/batch-operations.d.ts +25 -0
- package/dist/utils/codex-parser.d.ts +60 -0
- package/dist/utils/command-runner.d.ts +32 -0
- package/dist/utils/import-resolver.d.ts +54 -0
- package/dist/utils/language-detector.d.ts +43 -0
- package/dist/utils/path-resolver.d.ts +48 -0
- package/dist/utils/shutdown-handler.d.ts +26 -0
- package/dist/utils/task-graph.d.ts +29 -0
- package/dist/utils/test-template-generator.d.ts +25 -0
- package/dist/utils/token-manager.d.ts +48 -0
- package/dist/validation/agent-config-validator.d.ts +110 -0
- package/dist/validation/estimation-validator.d.ts +61 -0
- package/dist/validation/orchestration-flow-validator.d.ts +87 -0
- package/dist/validation/report-content-validator.d.ts +42 -0
- package/package.json +2 -2
- package/scripts/node/consumer-install-smoke.mjs +12 -1
- package/scripts/node/install-bridges.cjs +3 -2
- package/src/mcps/governance.server.ts +15 -2
- package/xray/features.json +13 -7
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Nudge Watchdog - Detects and breaks stuck AI patterns
|
|
3
|
+
*
|
|
4
|
+
* Monitors agent actions and detects common failure patterns:
|
|
5
|
+
* - think-loop: AI keeps outputting thinking tags but no progress
|
|
6
|
+
* - syntax-loop: AI keeps trying to fix same file/error multiple times
|
|
7
|
+
* - death-spiral: AI re-explains instead of fixing
|
|
8
|
+
* - tool-loop: Same tool called with similar args repeatedly
|
|
9
|
+
* - repair-failure: Processor indicates fix but error persists
|
|
10
|
+
*
|
|
11
|
+
* @module monitoring/nudge-watchdog
|
|
12
|
+
*/
|
|
13
|
+
import { EventEmitter } from "events";
|
|
14
|
+
export interface NudgeConfig {
|
|
15
|
+
enabled: boolean;
|
|
16
|
+
think_loop_threshold: number;
|
|
17
|
+
syntax_loop_threshold: number;
|
|
18
|
+
tool_loop_threshold: number;
|
|
19
|
+
death_spiral_threshold: number;
|
|
20
|
+
cooldown_ms: number;
|
|
21
|
+
}
|
|
22
|
+
export type NudgeType = "think-loop" | "syntax-loop" | "death-spiral" | "tool-loop" | "repair-failure";
|
|
23
|
+
export interface StuckPattern {
|
|
24
|
+
type: NudgeType;
|
|
25
|
+
count: number;
|
|
26
|
+
firstSeen: number;
|
|
27
|
+
lastSeen: number;
|
|
28
|
+
details: Record<string, unknown>;
|
|
29
|
+
}
|
|
30
|
+
export interface NudgeAction {
|
|
31
|
+
type: NudgeType;
|
|
32
|
+
message: string;
|
|
33
|
+
suggestion: string;
|
|
34
|
+
priority: number;
|
|
35
|
+
}
|
|
36
|
+
declare class NudgeWatchdog extends EventEmitter {
|
|
37
|
+
private config;
|
|
38
|
+
private patterns;
|
|
39
|
+
private lastNudgeTime;
|
|
40
|
+
private thinkTagCount;
|
|
41
|
+
private lastThinkTagTime;
|
|
42
|
+
private toolCallHistory;
|
|
43
|
+
private fixAttempts;
|
|
44
|
+
private explanationCount;
|
|
45
|
+
private codeChangeCount;
|
|
46
|
+
private listenersInitialized;
|
|
47
|
+
constructor(config?: Partial<NudgeConfig>);
|
|
48
|
+
private loadConfigFromFeatures;
|
|
49
|
+
start(): void;
|
|
50
|
+
stop(): void;
|
|
51
|
+
recordThinkTag(): void;
|
|
52
|
+
recordCodeChange(): void;
|
|
53
|
+
recordToolCall(tool: string, args: string): void;
|
|
54
|
+
recordFixAttempt(filePath: string, error: string): void;
|
|
55
|
+
recordExplanation(): void;
|
|
56
|
+
recordProcessorFix(filePath: string, fixed: boolean, errorPersisted: boolean): void;
|
|
57
|
+
private checkThinkLoop;
|
|
58
|
+
private checkToolLoop;
|
|
59
|
+
private checkSyntaxLoop;
|
|
60
|
+
private checkDeathSpiral;
|
|
61
|
+
private checkRepairFailure;
|
|
62
|
+
private checkCooldownAndNudge;
|
|
63
|
+
private triggerNudge;
|
|
64
|
+
getNudgeSuggestion(type: NudgeType, context?: Record<string, unknown>): string;
|
|
65
|
+
private hashArgs;
|
|
66
|
+
private isSimilarError;
|
|
67
|
+
private cleanupOldToolCalls;
|
|
68
|
+
reset(): void;
|
|
69
|
+
getStats(): {
|
|
70
|
+
thinkTags: number;
|
|
71
|
+
codeChanges: number;
|
|
72
|
+
explanations: number;
|
|
73
|
+
activePatterns: number;
|
|
74
|
+
lastNudgeAgo: number;
|
|
75
|
+
};
|
|
76
|
+
private log;
|
|
77
|
+
}
|
|
78
|
+
export declare const nudgeWatchdog: NudgeWatchdog;
|
|
79
|
+
export declare function recordThinkTag(): void;
|
|
80
|
+
export declare function recordCodeChange(): void;
|
|
81
|
+
export declare function recordToolCall(tool: string, args: string): void;
|
|
82
|
+
export declare function recordFixAttempt(filePath: string, error: string): void;
|
|
83
|
+
export declare function recordExplanation(): void;
|
|
84
|
+
export declare function getNudgeSuggestion(type: NudgeType, context?: Record<string, unknown>): string;
|
|
85
|
+
export declare function getNudgeWatchdog(): NudgeWatchdog;
|
|
86
|
+
export declare function recordProcessorFix(filePath: string, fixed: boolean, errorPersisted: boolean): void;
|
|
87
|
+
export {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Test Auto-Generation Monitor
|
|
3
|
+
*
|
|
4
|
+
* Tracks and reports on test auto-generation activity.
|
|
5
|
+
* Provides metrics on test creation success/failure rates.
|
|
6
|
+
*
|
|
7
|
+
* @since 2026-02-22
|
|
8
|
+
*/
|
|
9
|
+
export interface TestGenerationMetrics {
|
|
10
|
+
totalFilesProcessed: number;
|
|
11
|
+
testsGenerated: number;
|
|
12
|
+
testsSkipped: number;
|
|
13
|
+
testsFailed: number;
|
|
14
|
+
startTime: number;
|
|
15
|
+
lastGenerationTime: number | null;
|
|
16
|
+
}
|
|
17
|
+
export interface TestGenerationEvent {
|
|
18
|
+
type: "generated" | "skipped" | "failed";
|
|
19
|
+
filePath: string;
|
|
20
|
+
testFile: string | null;
|
|
21
|
+
timestamp: number;
|
|
22
|
+
reason?: string;
|
|
23
|
+
}
|
|
24
|
+
declare class TestAutoGenerationMonitor {
|
|
25
|
+
private metrics;
|
|
26
|
+
private events;
|
|
27
|
+
private maxEvents;
|
|
28
|
+
private metricsFile;
|
|
29
|
+
constructor(metricsDir?: string);
|
|
30
|
+
/**
|
|
31
|
+
* Load metrics from disk if they exist
|
|
32
|
+
*/
|
|
33
|
+
private loadMetrics;
|
|
34
|
+
/**
|
|
35
|
+
* Save metrics to disk
|
|
36
|
+
*/
|
|
37
|
+
private saveMetrics;
|
|
38
|
+
/**
|
|
39
|
+
* Record a test generation event
|
|
40
|
+
*/
|
|
41
|
+
recordEvent(event: TestGenerationEvent): void;
|
|
42
|
+
/**
|
|
43
|
+
* Get current metrics
|
|
44
|
+
*/
|
|
45
|
+
getMetrics(): TestGenerationMetrics;
|
|
46
|
+
/**
|
|
47
|
+
* Get recent events
|
|
48
|
+
*/
|
|
49
|
+
getRecentEvents(count?: number): TestGenerationEvent[];
|
|
50
|
+
/**
|
|
51
|
+
* Get success rate as percentage
|
|
52
|
+
*/
|
|
53
|
+
getSuccessRate(): number;
|
|
54
|
+
/**
|
|
55
|
+
* Generate a status report
|
|
56
|
+
*/
|
|
57
|
+
generateReport(): string;
|
|
58
|
+
/**
|
|
59
|
+
* Reset metrics (for testing)
|
|
60
|
+
*/
|
|
61
|
+
reset(): void;
|
|
62
|
+
}
|
|
63
|
+
export declare const testAutoGenerationMonitor: TestAutoGenerationMonitor;
|
|
64
|
+
export {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lead-dev plan builder — internal implementation for orchestrator + hooks.
|
|
3
|
+
* Config: features.json → multi_agent_orchestration (lead_dev_mode), NOT a separate surface.
|
|
4
|
+
*/
|
|
5
|
+
export declare const LEAD_DEV_RULES: readonly ["Phased plan + detailed todos; assign best subagent; monitor output; iterate fully", "Lead dev takes helm — loop test fix until complete; no permission pings", "Per-suite test triage after major changes; full suite only when individuals pass", "Lead stays main thread; subagents execute; update todos continuously", "Read all console and test output; triage fix rerun", "Never defer errors as pre-existing — add todo and resolve", "Resolve all errors before phase completion"];
|
|
6
|
+
export declare const MANDATORY_MAJOR_CONSULTS: readonly ["researcher", "architect-tools", "code-review"];
|
|
7
|
+
export type SubagentRoute = 'strategist' | 'architect-tools' | 'researcher' | 'backend-engineer' | 'frontend-engineer' | 'bug-triage' | 'code-review' | 'security-audit' | 'enforcer';
|
|
8
|
+
export interface LeadDevTodo {
|
|
9
|
+
id: string;
|
|
10
|
+
task: string;
|
|
11
|
+
subagent: SubagentRoute;
|
|
12
|
+
status: 'pending' | 'in_progress' | 'completed';
|
|
13
|
+
}
|
|
14
|
+
export interface LeadDevPhase {
|
|
15
|
+
id: string;
|
|
16
|
+
name: string;
|
|
17
|
+
goal: string;
|
|
18
|
+
definitionOfDone: string;
|
|
19
|
+
todos: LeadDevTodo[];
|
|
20
|
+
}
|
|
21
|
+
export interface LeadDevPlan {
|
|
22
|
+
active: boolean;
|
|
23
|
+
rules: readonly string[];
|
|
24
|
+
codexTerms: [59, 67, 68, 69];
|
|
25
|
+
description: string;
|
|
26
|
+
complexity: number;
|
|
27
|
+
requiresPhasedPlan: boolean;
|
|
28
|
+
recommendedStrategy: string;
|
|
29
|
+
mandatoryConsults: string[];
|
|
30
|
+
phases: LeadDevPhase[];
|
|
31
|
+
testProtocol: {
|
|
32
|
+
perSuiteFirst: boolean;
|
|
33
|
+
fullSuiteGate: boolean;
|
|
34
|
+
hint: string;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
export declare function isLeadDevModeActive(): boolean;
|
|
38
|
+
export declare function routeSubagent(taskType: string): SubagentRoute;
|
|
39
|
+
export declare function shouldFlagFullTestSuite(command: string): boolean;
|
|
40
|
+
export declare function buildLeadDevPlan(description: string, taskTypes?: string[]): LeadDevPlan | null;
|
|
41
|
+
export declare function buildSessionBootContext(): Record<string, unknown>;
|
|
42
|
+
/** Persist plan for PreToolUse spawn_subagent gate */
|
|
43
|
+
export declare function persistLeadDevPlan(plan: LeadDevPlan, projectRoot?: string): string;
|
|
44
|
+
/** @deprecated Use isLeadDevModeActive */
|
|
45
|
+
export declare const isAutonomyKernelActive: typeof isLeadDevModeActive;
|
|
46
|
+
/** @deprecated Use buildLeadDevPlan */
|
|
47
|
+
export declare const buildAutonomyIntake: typeof buildLeadDevPlan;
|
|
48
|
+
export declare const AUTONOMY_RULES: readonly ["Phased plan + detailed todos; assign best subagent; monitor output; iterate fully", "Lead dev takes helm — loop test fix until complete; no permission pings", "Per-suite test triage after major changes; full suite only when individuals pass", "Lead stays main thread; subagents execute; update todos continuously", "Read all console and test output; triage fix rerun", "Never defer errors as pre-existing — add todo and resolve", "Resolve all errors before phase completion"];
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DefaultPlugins — Phase 2C: centralized bootstrap for all knowledge-skill
|
|
3
|
+
* servers as SkillToolPlugin registrations.
|
|
4
|
+
*
|
|
5
|
+
* Exports registerDefaultPlugins() which is called once at boot to register
|
|
6
|
+
* all 24 knowledge-skill MCP servers (plus the researcher) as in-process
|
|
7
|
+
* plugin tools, making them dispatchable without MCP transport.
|
|
8
|
+
*/
|
|
9
|
+
export interface DefaultPluginsResult {
|
|
10
|
+
registered: number;
|
|
11
|
+
failed: string[];
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Register all knowledge-skill servers as SkillToolPlugins.
|
|
15
|
+
* Called once at boot. Returns counts of registered and failed servers.
|
|
16
|
+
*/
|
|
17
|
+
export declare function registerDefaultPlugins(): Promise<DefaultPluginsResult>;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Nucleus HTTP Adapter — semantic convenience surface (Phase 0)
|
|
3
|
+
*
|
|
4
|
+
* IMPORTANT: MCP is the new standard (just as Dynamo is the established standard
|
|
5
|
+
* for the external governance signal). The canonical way for agents to call the
|
|
6
|
+
* nucleus is the first-class MCP tools (`govern_proposals`, `govern_reflection`)
|
|
7
|
+
* exposed by the governance MCP server (which already supports stdio + Streamable
|
|
8
|
+
* HTTP transport on /mcp and already delegates to the same GovernanceService).
|
|
9
|
+
*
|
|
10
|
+
* This module provides the *direct semantic convenience adapter*:
|
|
11
|
+
* - Pure `handleGovernRequest(body)` → returns the raw GovernanceResponse object.
|
|
12
|
+
* - Optional tiny Express app with `POST /govern` (and /health).
|
|
13
|
+
* - No full MCP JSON-RPC protocol overhead — ideal for curl, CI, simple bridges,
|
|
14
|
+
* or anything that just wants the decision without speaking MCP.
|
|
15
|
+
*
|
|
16
|
+
* It reuses the exact same kernel (getGovernanceService + types) as the MCP path.
|
|
17
|
+
* Zero impact on the federation or existing MCP surfaces.
|
|
18
|
+
*
|
|
19
|
+
* Design goals:
|
|
20
|
+
* - Framework-agnostic pure handler (usable by Express, Fastify, raw http, tests, or in-process).
|
|
21
|
+
* - Only frameworkLogger.
|
|
22
|
+
* - Follows the thin-wrapper style of APITrigger.
|
|
23
|
+
*
|
|
24
|
+
* Usage (embeddable / in-process):
|
|
25
|
+
* import { handleGovernRequest } from './nucleus/govern-http.js';
|
|
26
|
+
* const result = await handleGovernRequest(req.body);
|
|
27
|
+
*
|
|
28
|
+
* Usage (standalone):
|
|
29
|
+
* NUCLEUS_PORT=8787 node dist/nucleus/govern-http.js
|
|
30
|
+
*/
|
|
31
|
+
import express from 'express';
|
|
32
|
+
import type { GovernanceResponse } from '../governance/governance-types.js';
|
|
33
|
+
export interface GovernHTTPConfig {
|
|
34
|
+
path?: string;
|
|
35
|
+
apiKey?: string;
|
|
36
|
+
enabled?: boolean;
|
|
37
|
+
port?: number;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Pure handler. Can be used by any HTTP server (Express, Fastify, raw http, etc.)
|
|
41
|
+
* or called directly in tests / in-process.
|
|
42
|
+
*/
|
|
43
|
+
export declare function handleGovernRequest(body: unknown, options?: {
|
|
44
|
+
requireExternalDynamo?: boolean;
|
|
45
|
+
}): Promise<GovernanceResponse>;
|
|
46
|
+
/**
|
|
47
|
+
* Minimal Express app (prototype only).
|
|
48
|
+
* Mirrors the shape and logging discipline of APITrigger.
|
|
49
|
+
*/
|
|
50
|
+
export declare class GovernHTTPAdapter {
|
|
51
|
+
private app;
|
|
52
|
+
private config;
|
|
53
|
+
private initialized;
|
|
54
|
+
constructor(config?: GovernHTTPConfig);
|
|
55
|
+
initialize(): Promise<void>;
|
|
56
|
+
getApp(): express.Application;
|
|
57
|
+
listen(): Promise<void>;
|
|
58
|
+
shutdown(): void;
|
|
59
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* xray Nucleus — barrel export
|
|
3
|
+
*
|
|
4
|
+
* Import from here for the stable nucleus surface:
|
|
5
|
+
* import { handleGovernRequest, governSingle } from './nucleus/index.js';
|
|
6
|
+
*/
|
|
7
|
+
export { handleGovernRequest, governSingle, getGovernanceService, GovernHTTPAdapter, NUCLEUS_VERSION, NUCLEUS_DESCRIPTION, } from './kernel.js';
|
|
8
|
+
export type { GovernHTTPConfig } from './govern-http.js';
|
|
9
|
+
export type { GovernanceRequest, GovernanceResponse, GovernanceProposal, GovernanceVote, GovernanceResult, GovernanceContext, GovernOptions, ProposalType, } from '../governance/governance-types.js';
|
|
10
|
+
export { pluginRegistry, } from './plugin-registry.js';
|
|
11
|
+
export type { SkillPlugin, SkillToolPlugin, SkillProposalArgs, SkillPluginResult, ToolDefinition, } from './plugin-registry.js';
|
|
12
|
+
export { scoreComplexity, routeToAgent, scoreAndRoute } from './thin-dispatch.js';
|
|
13
|
+
export type { ComplexityMetrics, ComplexityScore, ComplexityLevel, ComplexityThresholds, } from './thin-dispatch.js';
|
|
14
|
+
export { NUCLEUS_THIN_DISPATCH_VERSION } from './thin-dispatch.js';
|
|
15
|
+
export { LEAD_DEV_RULES, isLeadDevModeActive, buildLeadDevPlan, buildSessionBootContext, shouldFlagFullTestSuite, } from './autonomy-kernel.js';
|
|
16
|
+
export { registerDefaultPlugins } from './default-plugins.js';
|
|
17
|
+
export type { DefaultPluginsResult } from './default-plugins.js';
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* xray Nucleus — the callable governance kernel (Phase 1.1 facade)
|
|
3
|
+
*
|
|
4
|
+
* This is the primary, stable import surface for the v3 nucleus.
|
|
5
|
+
*
|
|
6
|
+
* Consumers (bridges, custom tools, the MCP governance server, future self-proposal
|
|
7
|
+
* engines, CLI, etc.) should import from here rather than reaching into
|
|
8
|
+
* governance-service.ts, govern-http.ts, or postprocessor internals directly.
|
|
9
|
+
*
|
|
10
|
+
* Goals:
|
|
11
|
+
* - Single place to import the core "govern" capability + supporting types.
|
|
12
|
+
* - Zero risk to the 41-server federation or existing bridges.
|
|
13
|
+
* - Easy to tree-shake / split later (e.g. "nucleus/core", "nucleus/http").
|
|
14
|
+
* - Documents the public kernel contract.
|
|
15
|
+
*
|
|
16
|
+
* Current surface (Phase 1.1):
|
|
17
|
+
* - handleGovernRequest: the pure semantic convenience handler (direct JSON in/out)
|
|
18
|
+
* - getGovernanceService: the underlying singleton (for advanced / in-process use)
|
|
19
|
+
* - Governance types
|
|
20
|
+
* - MetamorphosisEngine interface (for PostProcessor lifecycle integration)
|
|
21
|
+
*
|
|
22
|
+
* MCP remains the canonical standard surface (see governance.server.ts).
|
|
23
|
+
* The direct HTTP adapter (govern-http.ts) is a convenience on top of this kernel.
|
|
24
|
+
*
|
|
25
|
+
* Anti-goals (for this file):
|
|
26
|
+
* - No new business logic
|
|
27
|
+
* - No side effects on import
|
|
28
|
+
* - Does not pull in the full 25 knowledge-skill servers (dynamic via pluginRegistry only)
|
|
29
|
+
*/
|
|
30
|
+
import type { GovernOptions, GovernanceContext, GovernanceRequest, GovernanceResponse } from '../governance/governance-types.js';
|
|
31
|
+
import { handleGovernRequest } from './govern-http.js';
|
|
32
|
+
export { handleGovernRequest };
|
|
33
|
+
export type { GovernHTTPConfig } from './govern-http.js';
|
|
34
|
+
export { getGovernanceService } from '../governance/governance-service.js';
|
|
35
|
+
export type { GovernanceRequest, GovernanceResponse, GovernanceProposal, GovernanceVote, GovernanceResult, GovernanceContext, GovernOptions, ProposalType, } from '../governance/governance-types.js';
|
|
36
|
+
export type { MetamorphosisEngine, MetamorphosisProposal, } from '../types/metamorphosis.js';
|
|
37
|
+
export { GovernHTTPAdapter } from './govern-http.js';
|
|
38
|
+
export { pluginRegistry } from './plugin-registry.js';
|
|
39
|
+
export type { SkillPlugin, SkillToolPlugin, SkillProposalArgs, SkillPluginResult } from './plugin-registry.js';
|
|
40
|
+
/**
|
|
41
|
+
* High-level kernel description for introspection / docs.
|
|
42
|
+
*/
|
|
43
|
+
export declare const NUCLEUS_VERSION = "0.1.0";
|
|
44
|
+
export declare const NUCLEUS_DESCRIPTION: string;
|
|
45
|
+
/**
|
|
46
|
+
* Quick helper for the common case: govern a single proposal and get the overall decision.
|
|
47
|
+
* (Thin wrapper — real power users should use handleGovernRequest directly for batch + full response.)
|
|
48
|
+
*/
|
|
49
|
+
export declare function governSingle(proposal: Omit<GovernanceRequest['proposals'][0], 'id'> & {
|
|
50
|
+
id?: string;
|
|
51
|
+
}, context?: GovernanceContext, options?: GovernOptions): Promise<GovernanceResponse>;
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PluginRegistry — Phase 1.2 dynamic skill loading + Phase 3 generic tool dispatch
|
|
3
|
+
*
|
|
4
|
+
* Allows skills to be registered after boot, loaded from config, or discovered
|
|
5
|
+
* at runtime. Wraps the existing in-process-skill-registry for backward compat.
|
|
6
|
+
*
|
|
7
|
+
* Phase 3 extension: SkillToolPlugin interface for multi-tool skills (knowledge-skill
|
|
8
|
+
* servers). Each server registers as a SkillToolPlugin, exposing arbitrary tools
|
|
9
|
+
* that can be dispatched via callSkillTool().
|
|
10
|
+
*
|
|
11
|
+
* Goals:
|
|
12
|
+
* - New skills can be registered post-boot via register()
|
|
13
|
+
* - Skills are discoverable by name without importing server constructors
|
|
14
|
+
* - Default set loads automatically from the existing 3 governance skills
|
|
15
|
+
* - Multi-tool skills can be registered and dispatched via callSkillTool()
|
|
16
|
+
* - Backward compatible: callInProcessSkill still works as before
|
|
17
|
+
*/
|
|
18
|
+
export interface SkillPlugin {
|
|
19
|
+
/** Unique skill name (e.g. "code-review", "security-audit") */
|
|
20
|
+
name: string;
|
|
21
|
+
/** Handler that processes proposals */
|
|
22
|
+
analyzeProposal(args: SkillProposalArgs): Promise<SkillPluginResult>;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Metadata describing a tool exposed by a SkillToolPlugin.
|
|
26
|
+
*/
|
|
27
|
+
export interface ToolDefinition {
|
|
28
|
+
name: string;
|
|
29
|
+
description: string;
|
|
30
|
+
inputSchema?: Record<string, unknown>;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Extended plugin interface for knowledge-skill servers that expose multiple tools.
|
|
34
|
+
* Each tool is a named function that accepts arbitrary args.
|
|
35
|
+
*/
|
|
36
|
+
export interface SkillToolPlugin {
|
|
37
|
+
/** Unique skill name (e.g. "code-review", "api-design") */
|
|
38
|
+
name: string;
|
|
39
|
+
/** Dispatch a named tool with arbitrary args */
|
|
40
|
+
callTool(toolName: string, args: Record<string, unknown>): Promise<unknown>;
|
|
41
|
+
/** Optional: list tool definitions for dynamic discovery */
|
|
42
|
+
listTools?(): ToolDefinition[];
|
|
43
|
+
}
|
|
44
|
+
export interface SkillProposalArgs {
|
|
45
|
+
proposalTitle?: string;
|
|
46
|
+
proposalDescription?: string;
|
|
47
|
+
evidence?: string[];
|
|
48
|
+
proposalType?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface SkillPluginResult {
|
|
51
|
+
content: Array<{
|
|
52
|
+
type: string;
|
|
53
|
+
text: string;
|
|
54
|
+
}>;
|
|
55
|
+
}
|
|
56
|
+
type SkillHandler = (args: SkillProposalArgs) => Promise<SkillPluginResult>;
|
|
57
|
+
declare class PluginRegistryImpl {
|
|
58
|
+
private skills;
|
|
59
|
+
/** Phase 3: multi-tool skill plugins (knowledge-skill servers) */
|
|
60
|
+
private toolPlugins;
|
|
61
|
+
private initialized;
|
|
62
|
+
/**
|
|
63
|
+
* Register a skill plugin. Can be called after boot.
|
|
64
|
+
*/
|
|
65
|
+
register(skill: SkillPlugin): void;
|
|
66
|
+
/**
|
|
67
|
+
* Register a multi-tool skill plugin (knowledge-skill server).
|
|
68
|
+
* Tools can be dispatched via callSkillTool().
|
|
69
|
+
*/
|
|
70
|
+
registerToolPlugin(skill: SkillToolPlugin): void;
|
|
71
|
+
/**
|
|
72
|
+
* Call a named tool on a registered multi-tool skill plugin.
|
|
73
|
+
*/
|
|
74
|
+
callSkillTool(skillName: string, toolName: string, args: Record<string, unknown>): Promise<unknown>;
|
|
75
|
+
/**
|
|
76
|
+
* Check if a tool plugin is registered.
|
|
77
|
+
*/
|
|
78
|
+
hasToolPlugin(name: string): boolean;
|
|
79
|
+
/**
|
|
80
|
+
* List all registered tool plugin names.
|
|
81
|
+
*/
|
|
82
|
+
listToolPlugins(): string[];
|
|
83
|
+
/**
|
|
84
|
+
* Get a registered tool plugin by name for introspection.
|
|
85
|
+
*/
|
|
86
|
+
getToolPlugin(name: string): SkillToolPlugin | undefined;
|
|
87
|
+
/**
|
|
88
|
+
* List tool definitions for a registered tool plugin.
|
|
89
|
+
* Returns empty array if plugin not found or does not expose listTools().
|
|
90
|
+
*/
|
|
91
|
+
listSkillTools(skillName: string): ToolDefinition[];
|
|
92
|
+
/**
|
|
93
|
+
* Convenience: register a server as a SkillToolPlugin.
|
|
94
|
+
* Wraps a server with named tools into the SkillToolPlugin interface.
|
|
95
|
+
*/
|
|
96
|
+
registerServer(server: {
|
|
97
|
+
name: string;
|
|
98
|
+
tools: ToolDefinition[];
|
|
99
|
+
callTool: (toolName: string, args: Record<string, unknown>) => Promise<unknown>;
|
|
100
|
+
}): void;
|
|
101
|
+
/**
|
|
102
|
+
* Get a skill handler by name. Falls back to the in-process registry
|
|
103
|
+
* for the built-in governance skills (code-review, security-audit, researcher).
|
|
104
|
+
*/
|
|
105
|
+
get(name: string): SkillHandler | undefined;
|
|
106
|
+
/**
|
|
107
|
+
* Check if a skill is registered (either in the plugin registry or the built-in registry).
|
|
108
|
+
*/
|
|
109
|
+
has(name: string): boolean;
|
|
110
|
+
/**
|
|
111
|
+
* List all registered skill names (plugins + built-in).
|
|
112
|
+
*/
|
|
113
|
+
list(): string[];
|
|
114
|
+
/**
|
|
115
|
+
* Call a skill by name. Delegates to the plugin registry first,
|
|
116
|
+
* then falls back to the built-in in-process registry.
|
|
117
|
+
*/
|
|
118
|
+
callSkill(name: string, args: SkillProposalArgs): Promise<SkillPluginResult>;
|
|
119
|
+
/**
|
|
120
|
+
* Initialize with default governance skills. Called once at boot.
|
|
121
|
+
* The 3 governance skills are always available via the built-in registry.
|
|
122
|
+
*/
|
|
123
|
+
initializeDefaults(): void;
|
|
124
|
+
/**
|
|
125
|
+
* Reset the registry for testing. Removes all registered plugins
|
|
126
|
+
* (built-in governance skills remain available via fallback).
|
|
127
|
+
*/
|
|
128
|
+
resetForTest(): void;
|
|
129
|
+
}
|
|
130
|
+
/** Singleton plugin registry */
|
|
131
|
+
export declare const pluginRegistry: PluginRegistryImpl;
|
|
132
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* xray Nucleus — thinDispatch (Phase 1E)
|
|
3
|
+
*
|
|
4
|
+
* Stable nucleus surface for complexity scoring and agent routing.
|
|
5
|
+
* Wraps ComplexityAnalyzer; delegates routing to complexity-core utilities.
|
|
6
|
+
*
|
|
7
|
+
* Import from here or from delegation/index.ts (which re-exports these).
|
|
8
|
+
*/
|
|
9
|
+
import { ComplexityMetrics, ComplexityScore, ComplexityLevel, ComplexityThresholds } from "../delegation/complexity-core.js";
|
|
10
|
+
export type { ComplexityMetrics, ComplexityScore, ComplexityLevel, ComplexityThresholds };
|
|
11
|
+
export declare const NUCLEUS_THIN_DISPATCH_VERSION = "0.1.0";
|
|
12
|
+
/**
|
|
13
|
+
* Score the complexity of an operation given its description and context.
|
|
14
|
+
* Primary entry point for thinDispatch complexity scoring in the nucleus.
|
|
15
|
+
*/
|
|
16
|
+
export declare function scoreComplexity(operation: string, context: unknown, thresholds?: ComplexityThresholds): ComplexityScore;
|
|
17
|
+
/**
|
|
18
|
+
* Route a complexity score / level to the appropriate agent type.
|
|
19
|
+
* Uses core complexity-core mappings (tier → agent).
|
|
20
|
+
*/
|
|
21
|
+
export declare function routeToAgent(scoreOrLevel: number | ComplexityScore, level?: ComplexityLevel): string;
|
|
22
|
+
/**
|
|
23
|
+
* Convenience: score first, then route — one call.
|
|
24
|
+
*/
|
|
25
|
+
export declare function scoreAndRoute(operation: string, context: unknown, thresholds?: ComplexityThresholds): {
|
|
26
|
+
score: ComplexityScore;
|
|
27
|
+
agent: string;
|
|
28
|
+
memoryRouting?: {
|
|
29
|
+
providerId: string;
|
|
30
|
+
adjustedScore: number;
|
|
31
|
+
signals: string[];
|
|
32
|
+
};
|
|
33
|
+
};
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Spawn Governor
|
|
3
|
+
*
|
|
4
|
+
* Critical governance component that prevents infinite agent spawning
|
|
5
|
+
* and enforces spawn limits across the multi-agent orchestration system.
|
|
6
|
+
*
|
|
7
|
+
* @since 2026-01-23
|
|
8
|
+
*/
|
|
9
|
+
export interface SpawnContext {
|
|
10
|
+
agentType: string;
|
|
11
|
+
parentAgent?: string;
|
|
12
|
+
operation?: string;
|
|
13
|
+
triggeredBy?: string;
|
|
14
|
+
sessionId?: string;
|
|
15
|
+
priority?: "high" | "medium" | "low";
|
|
16
|
+
}
|
|
17
|
+
export interface SpawnRecord {
|
|
18
|
+
id: string;
|
|
19
|
+
agentType: string;
|
|
20
|
+
parentAgent?: string | undefined;
|
|
21
|
+
timestamp: number;
|
|
22
|
+
status: "active" | "completed" | "failed" | "terminated";
|
|
23
|
+
context: SpawnContext;
|
|
24
|
+
}
|
|
25
|
+
export interface SpawnLimits {
|
|
26
|
+
perAgentType: Record<string, number>;
|
|
27
|
+
totalConcurrent: number;
|
|
28
|
+
spawnRateLimit: {
|
|
29
|
+
maxPerMinute: number;
|
|
30
|
+
windowMs: number;
|
|
31
|
+
};
|
|
32
|
+
memoryLimit: {
|
|
33
|
+
maxMemoryMB: number;
|
|
34
|
+
emergencyThresholdMB: number;
|
|
35
|
+
cleanupIntervalMs: number;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
export interface SpawnAuthorization {
|
|
39
|
+
authorized: boolean;
|
|
40
|
+
trackingId?: string;
|
|
41
|
+
reason?: string;
|
|
42
|
+
warnings?: string[];
|
|
43
|
+
}
|
|
44
|
+
export declare class AgentSpawnGovernor {
|
|
45
|
+
private limits;
|
|
46
|
+
private activeAgents;
|
|
47
|
+
private spawnHistory;
|
|
48
|
+
private readonly maxHistorySize;
|
|
49
|
+
private readonly cleanupInterval;
|
|
50
|
+
private readonly persistenceTimeout;
|
|
51
|
+
private readonly maxRetries;
|
|
52
|
+
private readonly retryDelay;
|
|
53
|
+
private cleanupTimer?;
|
|
54
|
+
private memoryMonitorInterval?;
|
|
55
|
+
private authorizationQueue;
|
|
56
|
+
private isProcessingAuthorization;
|
|
57
|
+
private getDefaultLimits;
|
|
58
|
+
private readonly defaultLimits;
|
|
59
|
+
constructor(limits?: Partial<SpawnLimits>, autoStart?: boolean);
|
|
60
|
+
private startPeriodicCleanup;
|
|
61
|
+
private startMemoryMonitoring;
|
|
62
|
+
private checkMemoryBudget;
|
|
63
|
+
private emergencyMemoryCleanup;
|
|
64
|
+
private aggressiveCleanup;
|
|
65
|
+
private deepCleanupContexts;
|
|
66
|
+
private sanitizeContext;
|
|
67
|
+
/**
|
|
68
|
+
* Authorize a new agent spawn
|
|
69
|
+
*/
|
|
70
|
+
authorizeSpawn(context: SpawnContext): Promise<SpawnAuthorization>;
|
|
71
|
+
private processNextAuthorization;
|
|
72
|
+
private performAuthorization;
|
|
73
|
+
private checkAgentLimitsWithRetry;
|
|
74
|
+
private getTotalActiveWithRetry;
|
|
75
|
+
private registerSpawnWithRetry;
|
|
76
|
+
private handleAuthorizationError;
|
|
77
|
+
private categorizeError;
|
|
78
|
+
private emergencyCleanup;
|
|
79
|
+
/**
|
|
80
|
+
* Complete an agent spawn (mark as completed)
|
|
81
|
+
*/
|
|
82
|
+
completeSpawn(trackingId: string, result?: boolean): Promise<void>;
|
|
83
|
+
/**
|
|
84
|
+
* Fail an agent spawn
|
|
85
|
+
*/
|
|
86
|
+
failSpawn(trackingId: string, error?: Error): Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Terminate an agent spawn (force stop)
|
|
89
|
+
*/
|
|
90
|
+
terminateSpawn(trackingId: string, reason?: string): Promise<void>;
|
|
91
|
+
/**
|
|
92
|
+
* Get current active count for agent type
|
|
93
|
+
*/
|
|
94
|
+
getActiveCount(agentType: string): number;
|
|
95
|
+
/**
|
|
96
|
+
* Get total active agents system-wide
|
|
97
|
+
*/
|
|
98
|
+
getTotalActive(): number;
|
|
99
|
+
/**
|
|
100
|
+
* Get spawn statistics
|
|
101
|
+
*/
|
|
102
|
+
getSpawnStats(): {
|
|
103
|
+
perAgentType: Record<string, {
|
|
104
|
+
active: number;
|
|
105
|
+
total: number;
|
|
106
|
+
}>;
|
|
107
|
+
totalActive: number;
|
|
108
|
+
totalHistory: number;
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* Emergency: Terminate all active agents
|
|
112
|
+
*/
|
|
113
|
+
emergencyShutdown(reason?: string): Promise<void>;
|
|
114
|
+
private registerSpawn;
|
|
115
|
+
private checkSpawnRateLimit;
|
|
116
|
+
private detectInfiniteSpawn;
|
|
117
|
+
private getRecentSpawns;
|
|
118
|
+
private findRecord;
|
|
119
|
+
private generateTrackingId;
|
|
120
|
+
private cleanupOldRecords;
|
|
121
|
+
private withTimeout;
|
|
122
|
+
private withRetry;
|
|
123
|
+
start(): void;
|
|
124
|
+
destroy(): void;
|
|
125
|
+
}
|
|
126
|
+
export declare const agentSpawnGovernor: AgentSpawnGovernor;
|