0xray 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.opencode/codex.codex +2 -2
- package/.opencode/commands/dependency-audit.md +3 -3
- package/.opencode/enforcer-config.json +2 -2
- package/.opencode/init.sh +22 -19
- package/AGENTS.md +6 -6
- package/README.md +276 -76
- package/dist/AGENTS.md +6 -6
- package/dist/CHANGELOG.md +91 -10
- package/dist/README.md +276 -76
- 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/code-reviewer.js +1 -1
- 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 +24 -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 +35 -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 +93 -0
- package/dist/analytics/emerging-pattern-detector.d.ts +67 -0
- package/dist/analytics/pattern-learning-engine.d.ts +80 -0
- package/dist/analytics/pattern-performance-tracker.d.ts +97 -0
- package/dist/analytics/predictive-analytics.d.ts +41 -0
- package/dist/analytics/prompt-pattern-analyzer.d.ts +99 -0
- package/dist/analytics/routing-performance-analyzer.d.ts +101 -0
- package/dist/analytics/routing-refiner.d.ts +104 -0
- package/dist/analytics/routing-refiner.js +1 -1
- package/dist/analytics/simple-pattern-analyzer.d.ts +80 -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/benchmark/performance-benchmark.js +3 -3
- 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 +24 -0
- package/dist/cli/commands/credible-init.d.ts +11 -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/hermes-install.js +4 -4
- package/dist/cli/commands/mcp-install.d.ts +4 -0
- package/dist/cli/commands/mcp-install.js +1 -1
- package/dist/cli/commands/openclaw-install.d.ts +2 -0
- package/dist/cli/commands/openclaw-install.js +1 -1
- package/dist/cli/commands/opencode-install.d.ts +2 -0
- package/dist/cli/commands/plugin-commands.d.ts +19 -0
- package/dist/cli/commands/plugin-commands.js +2 -2
- package/dist/cli/commands/publish-agent.d.ts +15 -0
- package/dist/cli/commands/publish-agent.js +5 -5
- package/dist/cli/commands/security-audit.d.ts +23 -0
- package/dist/cli/commands/skill-install.d.ts +5 -0
- package/dist/cli/commands/skill-install.js +1 -1
- package/dist/cli/commands/status.d.ts +41 -0
- package/dist/cli/commands/status.js +3 -3
- package/dist/cli/commands/storyteller.d.ts +19 -0
- package/dist/cli/commands/storyteller.js +2 -2
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/index.js +8 -8
- package/dist/cli/server.d.ts +1 -0
- package/dist/cli/server.js +1 -1
- package/dist/config/default-agents.d.ts +12 -0
- package/dist/core/activity-logger.d.ts +72 -0
- package/dist/core/adaptive-kernel.d.ts +109 -0
- package/dist/core/agent-spawn-gate.d.ts +56 -0
- package/dist/core/agent-spawn-gate.js +1 -1
- package/dist/core/boot-orchestrator.d.ts +99 -0
- package/dist/core/boot-orchestrator.js +28 -28
- package/dist/core/bridge.mjs +22 -22
- package/dist/core/codex-formatter.d.ts +96 -0
- package/dist/core/codex-formatter.js +2 -2
- package/dist/core/codex-injector.d.ts +75 -0
- package/dist/core/codex-injector.js +11 -10
- package/dist/core/config-loader.d.ts +71 -0
- package/dist/core/config-loader.js +4 -2
- package/dist/core/config-paths.d.ts +62 -0
- package/dist/core/config-paths.js +24 -23
- package/dist/core/context-loader.d.ts +122 -0
- package/dist/core/context-loader.js +7 -5
- package/dist/core/context-validator.d.ts +53 -0
- package/dist/core/features-config.d.ts +462 -0
- package/dist/core/features-config.js +1 -1
- package/dist/core/framework-logger.d.ts +76 -0
- package/dist/core/index.d.ts +5 -0
- package/dist/core/index.js +1 -1
- package/dist/core/kernel-patterns.d.ts +130 -0
- package/dist/core/logging-config.d.ts +10 -0
- package/dist/core/model-router.d.ts +61 -0
- package/dist/core/orchestrator.d.ts +72 -0
- package/dist/core/orchestrator.js +3 -2
- package/dist/core/system-prompt-generator.d.ts +35 -0
- package/dist/core/system-prompt-generator.js +2 -2
- package/dist/core/trace-context.d.ts +12 -0
- package/dist/core/xray-activation.d.ts +14 -0
- package/dist/core/xray-activation.js +29 -24
- package/dist/delegation/agent-delegator.d.ts +186 -0
- package/dist/delegation/agent-delegator.js +3 -3
- package/dist/delegation/agent-expertise.d.ts +16 -0
- package/dist/delegation/analytics/index.d.ts +12 -0
- package/dist/delegation/analytics/learning-engine.d.ts +85 -0
- package/dist/delegation/analytics/outcome-tracker.d.ts +118 -0
- package/dist/delegation/analytics/routing-analytics.d.ts +61 -0
- package/dist/delegation/ast-code-parser.d.ts +174 -0
- package/dist/delegation/codebase-context-analyzer.d.ts +164 -0
- package/dist/delegation/complexity-analyzer.d.ts +111 -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 +95 -0
- package/dist/delegation/index.d.ts +25 -0
- package/dist/delegation/metrics-aggregator.d.ts +92 -0
- package/dist/delegation/session-coordinator.d.ts +133 -0
- package/dist/delegation/strategy-selector.d.ts +28 -0
- package/dist/delegation/voting-coordinator.d.ts +49 -0
- package/dist/delegation/voting-types.d.ts +155 -0
- package/dist/delegation/weighted-voting-aggregator.d.ts +37 -0
- package/dist/enforcement/core/index.d.ts +15 -0
- package/dist/enforcement/core/rule-executor.d.ts +158 -0
- package/dist/enforcement/core/rule-hierarchy.d.ts +146 -0
- package/dist/enforcement/core/rule-registry.d.ts +197 -0
- package/dist/enforcement/core/violation-fixer.d.ts +106 -0
- package/dist/enforcement/enforcer-tools.d.ts +78 -0
- package/dist/enforcement/enforcer-tools.js +2 -2
- package/dist/enforcement/index.d.ts +23 -0
- package/dist/enforcement/loaders/agent-triage-loader.d.ts +99 -0
- package/dist/enforcement/loaders/agents-md-validation-loader.d.ts +76 -0
- package/dist/enforcement/loaders/base-loader.d.ts +83 -0
- package/dist/enforcement/loaders/codex-loader.d.ts +77 -0
- package/dist/enforcement/loaders/codex-loader.js +2 -2
- package/dist/enforcement/loaders/index.d.ts +37 -0
- package/dist/enforcement/loaders/loader-orchestrator.d.ts +97 -0
- package/dist/enforcement/loaders/processor-loader.d.ts +60 -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 +501 -0
- package/dist/enforcement/validators/architecture-validators.d.ts +155 -0
- package/dist/enforcement/validators/base-validator.d.ts +88 -0
- package/dist/enforcement/validators/code-quality-validators.d.ts +89 -0
- package/dist/enforcement/validators/index.d.ts +15 -0
- package/dist/enforcement/validators/security-validators.d.ts +53 -0
- package/dist/enforcement/validators/testing-validators.d.ts +81 -0
- package/dist/enforcement/validators/validator-registry.d.ts +92 -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 +57 -0
- package/dist/governance/governance-core.d.ts +46 -0
- package/dist/governance/governance-service.d.ts +38 -0
- package/dist/governance/governance-types.d.ts +83 -0
- package/dist/index.d.ts +28 -0
- package/dist/index.js +6 -6
- package/dist/inference/deploy-verifier.d.ts +26 -0
- package/dist/inference/deploy-verifier.js +1 -1
- package/dist/inference/index.d.ts +10 -0
- package/dist/inference/inference-accumulator.d.ts +29 -0
- package/dist/inference/inference-cycle.d.ts +110 -0
- package/dist/inference/inference-cycle.js +7 -7
- package/dist/inference/semantic-patterns.d.ts +7 -0
- package/dist/inference/session-capture.d.ts +32 -0
- package/dist/integrations/base/ExampleIntegration.d.ts +47 -0
- package/dist/integrations/base/Integration.d.ts +267 -0
- package/dist/integrations/base/README.md +2 -2
- package/dist/integrations/base/index.d.ts +12 -0
- package/dist/integrations/base/registry.d.ts +273 -0
- package/dist/integrations/base/types.d.ts +168 -0
- package/dist/integrations/governance/governance-client.d.ts +76 -0
- package/dist/integrations/governance/index.d.ts +99 -0
- package/dist/integrations/governance/index.js +1 -1
- package/dist/integrations/governance/types.d.ts +239 -0
- package/dist/integrations/grok/grok-cli.d.ts +25 -0
- package/dist/integrations/grok/grok-cli.js +6 -6
- package/dist/integrations/grok/hooks/pre-tool-use.js +1 -1
- package/dist/integrations/grok/plugin/0xray/.mcp.json +3 -3
- package/dist/integrations/grok/plugin/0xray/hooks/hooks.json +2 -2
- package/dist/integrations/hermes-agent/__init__.py +78 -72
- package/dist/integrations/hermes-agent/__pycache__/__init__.cpython-313.pyc +0 -0
- package/dist/integrations/hermes-agent/__pycache__/conftest.cpython-313-pytest-9.0.2.pyc +0 -0
- package/dist/integrations/hermes-agent/__pycache__/schemas.cpython-313.pyc +0 -0
- package/dist/integrations/hermes-agent/__pycache__/test_plugin.cpython-313-pytest-9.0.2.pyc +0 -0
- package/dist/integrations/hermes-agent/__pycache__/test_plugin.cpython-313.pyc +0 -0
- package/dist/integrations/hermes-agent/__pycache__/tools.cpython-313.pyc +0 -0
- package/dist/integrations/hermes-agent/after-install.md +14 -14
- package/dist/integrations/hermes-agent/bridge.mjs +14 -14
- package/dist/integrations/hermes-agent/logs/framework/routing-outcomes.json +1 -0
- package/dist/integrations/hermes-agent/plugin.yaml +5 -5
- package/dist/integrations/hermes-agent/schemas.py +12 -12
- package/dist/integrations/hermes-agent/test_plugin.py +128 -125
- package/dist/integrations/hermes-agent/tools.py +85 -23
- package/dist/integrations/openclaw/README.md +16 -16
- package/dist/integrations/openclaw/api-server.d.ts +87 -0
- package/dist/integrations/openclaw/api-server.js +9 -9
- package/dist/integrations/openclaw/client.d.ts +122 -0
- package/dist/integrations/openclaw/config.d.ts +96 -0
- package/dist/integrations/openclaw/config.js +1 -1
- package/dist/integrations/openclaw/hooks/xray-hooks.d.ts +124 -0
- package/dist/integrations/openclaw/index.d.ts +101 -0
- package/dist/integrations/openclaw/index.js +4 -4
- package/dist/integrations/openclaw/types.d.ts +426 -0
- package/dist/integrations/plugins/index.d.ts +10 -0
- package/dist/integrations/plugins/plugin-integration.d.ts +289 -0
- package/dist/integrations/plugins/plugin-registry.d.ts +224 -0
- package/dist/integrations/plugins/plugin-registry.js +2 -2
- package/dist/mcps/agent-resolver.d.ts +46 -0
- package/dist/mcps/architect-tools.server.d.ts +17 -0
- package/dist/mcps/architect-tools.server.js +4 -4
- package/dist/mcps/auto-format.server.d.ts +19 -0
- package/dist/mcps/auto-format.server.js +4 -4
- package/dist/mcps/boot-orchestrator.server.d.ts +49 -0
- package/dist/mcps/boot-orchestrator.server.js +4 -4
- package/dist/mcps/config/config-loader.d.ts +52 -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 +127 -0
- package/dist/mcps/config/server-config-registry.d.ts +51 -0
- package/dist/mcps/config/server-config-registry.js +7 -7
- 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/mcp-connection.js +1 -1
- package/dist/mcps/connection/process-spawner.d.ts +24 -0
- package/dist/mcps/enforcer-tools.server.d.ts +27 -0
- package/dist/mcps/enforcer-tools.server.js +4 -4
- package/dist/mcps/estimation.server.d.ts +21 -0
- package/dist/mcps/estimation.server.js +1 -1
- package/dist/mcps/framework-compliance-audit.server.d.ts +22 -0
- package/dist/mcps/framework-compliance-audit.server.js +4 -4
- package/dist/mcps/framework-help.server.d.ts +14 -0
- package/dist/mcps/framework-help.server.js +7 -7
- package/dist/mcps/governance.server.d.ts +33 -0
- package/dist/mcps/in-process-skill-registry.d.ts +20 -0
- package/dist/mcps/in-process-skill-registry.js +6 -6
- package/dist/mcps/knowledge-skills/api-design.server.d.ts +15 -0
- package/dist/mcps/knowledge-skills/api-design.server.js +4 -4
- package/dist/mcps/knowledge-skills/architecture-patterns.server.d.ts +15 -0
- package/dist/mcps/knowledge-skills/architecture-patterns.server.js +4 -4
- package/dist/mcps/knowledge-skills/bug-triage-specialist.server.d.ts +33 -0
- package/dist/mcps/knowledge-skills/bug-triage-specialist.server.js +1 -1
- package/dist/mcps/knowledge-skills/code-analyzer.server.d.ts +31 -0
- package/dist/mcps/knowledge-skills/code-analyzer.server.js +1 -1
- package/dist/mcps/knowledge-skills/code-review.server.d.ts +46 -0
- package/dist/mcps/knowledge-skills/code-review.server.js +4 -4
- package/dist/mcps/knowledge-skills/content-creator.server.d.ts +13 -0
- package/dist/mcps/knowledge-skills/content-creator.server.js +1 -1
- package/dist/mcps/knowledge-skills/database-design.server.d.ts +43 -0
- package/dist/mcps/knowledge-skills/database-design.server.js +4 -4
- package/dist/mcps/knowledge-skills/devops-deployment.server.d.ts +43 -0
- package/dist/mcps/knowledge-skills/devops-deployment.server.js +4 -4
- package/dist/mcps/knowledge-skills/git-workflow.server.d.ts +15 -0
- package/dist/mcps/knowledge-skills/git-workflow.server.js +4 -4
- package/dist/mcps/knowledge-skills/growth-strategist.server.d.ts +13 -0
- package/dist/mcps/knowledge-skills/growth-strategist.server.js +1 -1
- package/dist/mcps/knowledge-skills/log-monitor.server.d.ts +24 -0
- package/dist/mcps/knowledge-skills/log-monitor.server.js +1 -1
- package/dist/mcps/knowledge-skills/mobile-development.server.d.ts +19 -0
- package/dist/mcps/knowledge-skills/mobile-development.server.js +4 -4
- package/dist/mcps/knowledge-skills/multimodal-looker.server.d.ts +55 -0
- package/dist/mcps/knowledge-skills/multimodal-looker.server.js +3 -2
- package/dist/mcps/knowledge-skills/performance-optimization.server.d.ts +72 -0
- package/dist/mcps/knowledge-skills/performance-optimization.server.js +4 -4
- package/dist/mcps/knowledge-skills/project-analysis.server.d.ts +37 -0
- package/dist/mcps/knowledge-skills/project-analysis.server.js +1 -1
- package/dist/mcps/knowledge-skills/refactoring-strategies.server.d.ts +33 -0
- package/dist/mcps/knowledge-skills/refactoring-strategies.server.js +4 -4
- package/dist/mcps/knowledge-skills/security-audit.server.d.ts +48 -0
- package/dist/mcps/knowledge-skills/security-audit.server.js +4 -4
- package/dist/mcps/knowledge-skills/seo-consultant.server.d.ts +26 -0
- package/dist/mcps/knowledge-skills/seo-consultant.server.js +1 -1
- package/dist/mcps/knowledge-skills/session-management.server.d.ts +23 -0
- package/dist/mcps/knowledge-skills/session-management.server.js +1 -1
- package/dist/mcps/knowledge-skills/skill-invocation.server.d.ts +29 -0
- package/dist/mcps/knowledge-skills/skill-invocation.server.js +1 -1
- package/dist/mcps/knowledge-skills/strategist.server.d.ts +17 -0
- package/dist/mcps/knowledge-skills/strategist.server.js +1 -1
- package/dist/mcps/knowledge-skills/tech-writer.server.d.ts +47 -0
- package/dist/mcps/knowledge-skills/tech-writer.server.js +5 -5
- package/dist/mcps/knowledge-skills/testing-best-practices.server.d.ts +36 -0
- package/dist/mcps/knowledge-skills/testing-best-practices.server.js +4 -4
- package/dist/mcps/knowledge-skills/testing-strategy.server.d.ts +47 -0
- package/dist/mcps/knowledge-skills/testing-strategy.server.js +4 -4
- package/dist/mcps/knowledge-skills/ui-ux-design.server.d.ts +69 -0
- package/dist/mcps/knowledge-skills/ui-ux-design.server.js +6 -6
- package/dist/mcps/lint.server.d.ts +17 -0
- package/dist/mcps/lint.server.js +6 -6
- package/dist/mcps/mcp-client.d.ts +157 -0
- package/dist/mcps/mcp-client.js +3 -3
- package/dist/mcps/model-health-check.server.d.ts +16 -0
- package/dist/mcps/model-health-check.server.js +4 -4
- package/dist/mcps/orchestrator/config/agent-capabilities.d.ts +35 -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 +69 -0
- package/dist/mcps/orchestrator/handlers/task-handler.d.ts +52 -0
- package/dist/mcps/orchestrator/server.d.ts +38 -0
- package/dist/mcps/orchestrator/server.js +2 -2
- package/dist/mcps/orchestrator/types.d.ts +79 -0
- package/dist/mcps/orchestrator.server.d.ts +10 -0
- package/dist/mcps/performance-analysis.server.d.ts +27 -0
- package/dist/mcps/performance-analysis.server.js +4 -4
- package/dist/mcps/processor-pipeline.server.d.ts +31 -0
- package/dist/mcps/processor-pipeline.server.js +4 -4
- package/dist/mcps/protocol/protocol-constants.d.ts +46 -0
- package/dist/mcps/registry.json +1 -1
- package/dist/mcps/researcher.server.d.ts +31 -0
- package/dist/mcps/researcher.server.js +5 -5
- package/dist/mcps/security-scan.server.d.ts +20 -0
- package/dist/mcps/security-scan.server.js +4 -4
- package/dist/mcps/simulation/index.d.ts +12 -0
- package/dist/mcps/simulation/server-simulations.d.ts +39 -0
- package/dist/mcps/simulation/server-simulations.js +3 -3
- package/dist/mcps/simulation/simulation-engine.d.ts +51 -0
- package/dist/mcps/state-manager.server.d.ts +28 -0
- package/dist/mcps/state-manager.server.js +1 -1
- 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/metrics/agent-metrics.d.ts +169 -0
- package/dist/metrics/agent-metrics.js +1 -1
- 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 +88 -0
- package/dist/monitoring/test-auto-generation-monitor.d.ts +64 -0
- package/dist/orchestrator/agent-spawn-governor.d.ts +127 -0
- package/dist/orchestrator/enhanced-multi-agent-orchestrator.d.ts +156 -0
- package/dist/orchestrator/enhanced-multi-agent-orchestrator.js +2 -2
- package/dist/orchestrator/intelligent-commit-batcher.d.ts +114 -0
- package/dist/orchestrator/intelligent-commit-batcher.js +3 -3
- package/dist/orchestrator/multi-agent-orchestration-coordinator.d.ts +127 -0
- package/dist/orchestrator/multi-agent-orchestration-coordinator.js +9 -9
- package/dist/orchestrator/orchestrator.d.ts +143 -0
- package/dist/orchestrator/orchestrator.js +8 -6
- package/dist/orchestrator/self-direction-activation.d.ts +109 -0
- package/dist/orchestrator/universal-librarian-consultation.d.ts +98 -0
- package/dist/orchestrator/universal-registry-bridge.d.ts +85 -0
- package/dist/orchestrator/universal-registry-bridge.js +1 -1
- package/dist/performance/performance-budget-enforcer.d.ts +158 -0
- package/dist/performance/performance-regression-tester.d.ts +108 -0
- package/dist/plugin/xray-codex-injection.d.ts +55 -0
- package/dist/plugin/xray-codex-injection.js +15 -14
- package/dist/postprocessor/PostProcessor.d.ts +108 -0
- package/dist/postprocessor/PostProcessor.js +1 -1
- 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.d.ts +6 -0
- package/dist/postprocessor/escalation/EscalationEngine.d.ts +154 -0
- package/dist/postprocessor/monitoring/MonitoringEngine.d.ts +40 -0
- package/dist/postprocessor/redeploy/RedeployCoordinator.d.ts +91 -0
- package/dist/postprocessor/services/RegressionAnalysisService.d.ts +40 -0
- package/dist/postprocessor/services/RegressionAnalysisService.js +2 -2
- package/dist/postprocessor/success/SuccessHandler.d.ts +57 -0
- package/dist/postprocessor/triggers/APITrigger.d.ts +35 -0
- package/dist/postprocessor/triggers/GitHookTrigger.d.ts +38 -0
- package/dist/postprocessor/triggers/GitHookTrigger.js +14 -14
- package/dist/postprocessor/triggers/WebhookTrigger.d.ts +47 -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 +63 -0
- package/dist/processors/implementations/agents-md-validation-processor.js +2 -2
- package/dist/processors/implementations/async-pattern-processor.d.ts +48 -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 +33 -0
- package/dist/processors/implementations/coverage-analysis-processor.d.ts +20 -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/inference-improvement-processor.js +2 -2
- package/dist/processors/implementations/log-protection-processor.d.ts +30 -0
- package/dist/processors/implementations/log-protection-processor.js +2 -2
- package/dist/processors/implementations/nudge-processor.d.ts +22 -0
- package/dist/processors/implementations/performance-budget-processor.d.ts +50 -0
- package/dist/processors/implementations/postprocessor-chain-validator.d.ts +46 -0
- package/dist/processors/implementations/pre-validate-processor.d.ts +7 -0
- package/dist/processors/implementations/publish-preflight-processor.d.ts +38 -0
- package/dist/processors/implementations/publish-preflight-processor.js +3 -3
- 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/regression-testing-processor.js +2 -2
- package/dist/processors/implementations/session-capture-processor.d.ts +14 -0
- package/dist/processors/implementations/session-summary-processor.d.ts +27 -0
- package/dist/processors/implementations/session-summary-processor.js +2 -2
- package/dist/processors/implementations/spawn-governance-processor.d.ts +58 -0
- package/dist/processors/implementations/state-validation-processor.d.ts +11 -0
- package/dist/processors/implementations/storytelling-trigger-processor.d.ts +42 -0
- package/dist/processors/implementations/storytelling-trigger-processor.js +2 -2
- package/dist/processors/implementations/test-auto-creation-processor.d.ts +17 -0
- package/dist/processors/implementations/test-execution-processor.d.ts +11 -0
- package/dist/processors/implementations/typescript-compilation-processor.d.ts +38 -0
- package/dist/processors/implementations/version-compliance-processor.d.ts +112 -0
- package/dist/processors/processor-interfaces.d.ts +127 -0
- package/dist/processors/processor-manager.d.ts +80 -0
- package/dist/processors/processor-types.d.ts +190 -0
- package/dist/public/about.html +6 -6
- package/dist/public/enterprise.html +1 -1
- package/dist/public/features.html +2 -2
- package/dist/public/index.html +4 -4
- 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/report-formatter.js +1 -1
- package/dist/reporting/types.d.ts +102 -0
- package/dist/scripts/activate-kernel-pipeline.d.ts +7 -0
- package/dist/scripts/activate-kernel-pipeline.js +2 -2
- package/dist/scripts/integration.d.ts +37 -0
- package/dist/scripts/pre-command +1 -1
- package/dist/security/comprehensive-security-audit.d.ts +158 -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 +72 -0
- package/dist/security/security-auditor.d.ts +56 -0
- package/dist/security/security-hardener.d.ts +62 -0
- package/dist/security/security-hardening-system.d.ts +239 -0
- package/dist/security/security-headers.d.ts +64 -0
- package/dist/security/security-orchestration-layer.d.ts +119 -0
- package/dist/security/security-scanner.d.ts +119 -0
- package/dist/services/inference-tuner.d.ts +77 -0
- package/dist/services/inference-tuner.js +2 -2
- package/dist/session/index.d.ts +3 -0
- package/dist/session/session-cleanup-manager.d.ts +118 -0
- package/dist/session/session-monitor.d.ts +133 -0
- package/dist/session/session-state-manager.d.ts +145 -0
- package/dist/skills/hermes-agent/SKILL.md +11 -11
- package/dist/skills/registry.json +1 -1
- package/dist/skills/storyteller/SKILL.md +1 -1
- package/dist/skills/xray-orchestrator/SKILL.md +141 -0
- package/dist/skills/xray-orchestrator/index.d.ts +13 -0
- package/dist/skills/xray-orchestrator/index.js +224 -0
- package/dist/state/context-providers.d.ts +4 -0
- package/dist/state/index.d.ts +5 -0
- package/dist/state/index.js +2 -1
- package/dist/state/state-manager.d.ts +42 -0
- package/dist/state/state-manager.js +5 -4
- package/dist/state/state-types.d.ts +5 -0
- package/dist/testing/memory-regression-suite.d.ts +105 -0
- package/dist/utils/batch-operations.d.ts +25 -0
- package/dist/utils/codex-parser.d.ts +61 -0
- package/dist/utils/command-runner.d.ts +32 -0
- package/dist/utils/import-resolver.d.ts +54 -0
- package/dist/utils/import-resolver.js +1 -1
- package/dist/utils/language-detector.d.ts +44 -0
- package/dist/utils/path-resolver.d.ts +48 -0
- package/dist/utils/path-resolver.js +2 -2
- package/dist/utils/shutdown-handler.d.ts +27 -0
- package/dist/utils/test-template-generator.d.ts +25 -0
- package/dist/utils/token-manager.d.ts +48 -0
- package/dist/utils/token-manager.js +1 -1
- package/dist/validation/estimation-validator.d.ts +61 -0
- package/dist/validation/estimation-validator.js +1 -1
- package/dist/validation/report-content-validator.d.ts +42 -0
- package/package.json +4 -3
- package/scripts/hooks/pre-command +1 -1
- package/scripts/hooks/run-hook.js +2 -2
- package/scripts/node/auto-reflection-generator.mjs +2 -2
- package/scripts/node/postinstall.cjs +1 -1
- package/scripts/node/release.js +6 -6
- package/scripts/node/release.mjs +10 -10
- package/scripts/node/universal-version-manager.js +53 -54
- package/scripts/node/version-manager.mjs +1 -1
- package/src/integrations/grok/plugin/0xray/.mcp.json +3 -3
- package/src/integrations/grok/plugin/0xray/hooks/hooks.json +2 -2
- package/src/mcps/architect-tools.server.ts +4 -4
- package/src/mcps/auto-format.server.ts +4 -4
- package/src/mcps/boot-orchestrator.server.ts +4 -4
- package/src/mcps/config/server-config-registry.ts +7 -7
- package/src/mcps/connection/mcp-connection.ts +1 -1
- package/src/mcps/enforcer-tools.server.ts +4 -4
- package/src/mcps/estimation.server.ts +1 -1
- package/src/mcps/framework-compliance-audit.server.ts +4 -4
- package/src/mcps/framework-help.server.ts +7 -7
- package/src/mcps/in-process-skill-registry.ts +6 -6
- package/src/mcps/knowledge-skills/api-design.server.test.ts +8 -8
- package/src/mcps/knowledge-skills/api-design.server.ts +4 -4
- package/src/mcps/knowledge-skills/architecture-patterns.server.ts +4 -4
- package/src/mcps/knowledge-skills/bug-triage-specialist.server.ts +1 -1
- package/src/mcps/knowledge-skills/code-analyzer.server.ts +1 -1
- package/src/mcps/knowledge-skills/code-review.server.ts +4 -4
- package/src/mcps/knowledge-skills/content-creator.server.ts +1 -1
- package/src/mcps/knowledge-skills/database-design.server.ts +4 -4
- package/src/mcps/knowledge-skills/devops-deployment.server.ts +4 -4
- package/src/mcps/knowledge-skills/git-workflow.server.ts +4 -4
- package/src/mcps/knowledge-skills/growth-strategist.server.ts +1 -1
- package/src/mcps/knowledge-skills/log-monitor.server.ts +1 -1
- package/src/mcps/knowledge-skills/mobile-development.server.ts +4 -4
- package/src/mcps/knowledge-skills/multimodal-looker.server.ts +3 -2
- package/src/mcps/knowledge-skills/performance-optimization.server.ts +4 -4
- package/src/mcps/knowledge-skills/project-analysis.server.ts +1 -1
- package/src/mcps/knowledge-skills/refactoring-strategies.server.ts +4 -4
- package/src/mcps/knowledge-skills/security-audit.server.test.ts +23 -23
- package/src/mcps/knowledge-skills/security-audit.server.ts +4 -4
- package/src/mcps/knowledge-skills/seo-consultant.server.ts +1 -1
- package/src/mcps/knowledge-skills/session-management.server.ts +1 -1
- package/src/mcps/knowledge-skills/skill-invocation.server.ts +1 -1
- package/src/mcps/knowledge-skills/strategist.server.ts +1 -1
- package/src/mcps/knowledge-skills/tech-writer.server.ts +5 -5
- package/src/mcps/knowledge-skills/testing-best-practices.server.test.ts +28 -28
- package/src/mcps/knowledge-skills/testing-best-practices.server.ts +4 -4
- package/src/mcps/knowledge-skills/testing-strategy.server.test.ts +19 -19
- package/src/mcps/knowledge-skills/testing-strategy.server.ts +4 -4
- package/src/mcps/knowledge-skills/ui-ux-design.server.ts +6 -6
- package/src/mcps/lint.server.ts +6 -6
- package/src/mcps/mcp-client.ts +3 -3
- package/src/mcps/model-health-check.server.ts +4 -4
- package/src/mcps/orchestrator/server.ts +2 -2
- package/src/mcps/performance-analysis.server.ts +4 -4
- package/src/mcps/processor-pipeline.server.ts +4 -4
- package/src/mcps/registry.json +1 -1
- package/src/mcps/researcher.server.ts +5 -5
- package/src/mcps/security-scan.server.ts +4 -4
- package/src/mcps/simulation/server-simulations.ts +3 -3
- package/src/mcps/state-manager.server.ts +1 -1
- package/src/opencode/codex.codex +2 -2
- package/src/opencode/commands/dependency-audit.md +3 -3
- package/src/opencode/enforcer-config.json +2 -2
- package/src/skills/hermes-agent/SKILL.md +11 -11
- package/src/skills/registry.json +1 -1
- package/src/skills/storyteller/SKILL.md +1 -1
- package/src/skills/xray-orchestrator/SKILL.md +141 -0
- package/src/skills/xray-orchestrator/index.ts +268 -0
- package/.opencode/hooks/hook-metrics.json +0 -380
- package/.opencode/skills/api-design/SKILL.md +0 -37
- package/.opencode/skills/architect-tools/SKILL.md +0 -37
- package/.opencode/skills/architecture-patterns/SKILL.md +0 -37
- package/.opencode/skills/auto-format/SKILL.md +0 -37
- package/.opencode/skills/backend-engineer/SKILL.md +0 -49
- package/.opencode/skills/boot-orchestrator/SKILL.md +0 -37
- package/.opencode/skills/bug-triage/SKILL.md +0 -43
- package/.opencode/skills/code-analyzer/SKILL.md +0 -45
- package/.opencode/skills/code-review/SKILL.md +0 -52
- package/.opencode/skills/content-creator/SKILL.md +0 -38
- package/.opencode/skills/database-engineer/SKILL.md +0 -46
- package/.opencode/skills/devops-engineer/SKILL.md +0 -49
- package/.opencode/skills/enforcer/SKILL.md +0 -37
- package/.opencode/skills/framework-compliance-audit/SKILL.md +0 -37
- package/.opencode/skills/frontend-engineer/SKILL.md +0 -49
- package/.opencode/skills/frontend-ui-ux-engineer/SKILL.md +0 -41
- package/.opencode/skills/git-workflow/SKILL.md +0 -37
- package/.opencode/skills/growth-strategist/SKILL.md +0 -48
- package/.opencode/skills/hermes-agent/SKILL.md +0 -212
- package/.opencode/skills/inference-improve/SKILL.md +0 -97
- package/.opencode/skills/lint/SKILL.md +0 -37
- package/.opencode/skills/log-monitor/SKILL.md +0 -44
- package/.opencode/skills/mobile-developer/SKILL.md +0 -42
- package/.opencode/skills/model-health-check/SKILL.md +0 -37
- package/.opencode/skills/multimodal-looker/SKILL.md +0 -45
- package/.opencode/skills/orchestrator/SKILL.md +0 -37
- package/.opencode/skills/performance-analysis/SKILL.md +0 -37
- package/.opencode/skills/performance-engineer/SKILL.md +0 -41
- package/.opencode/skills/performance-optimization/SKILL.md +0 -37
- package/.opencode/skills/processor-pipeline/SKILL.md +0 -37
- package/.opencode/skills/project-analysis/SKILL.md +0 -42
- package/.opencode/skills/refactoring-strategies/SKILL.md +0 -37
- package/.opencode/skills/registry.json +0 -66
- package/.opencode/skills/researcher/SKILL.md +0 -37
- package/.opencode/skills/security-audit/SKILL.md +0 -47
- package/.opencode/skills/security-scan/SKILL.md +0 -37
- package/.opencode/skills/seo-consultant/SKILL.md +0 -43
- package/.opencode/skills/session-management/SKILL.md +0 -36
- package/.opencode/skills/state-manager/SKILL.md +0 -37
- package/.opencode/skills/storyteller/SKILL.md +0 -130
- package/.opencode/skills/strategist/SKILL.md +0 -32
- package/.opencode/skills/tech-writer/SKILL.md +0 -37
- package/.opencode/skills/testing-best-practices/SKILL.md +0 -37
- package/.opencode/skills/testing-strategy/SKILL.md +0 -43
- package/.opencode/skills/ui-ux-design/SKILL.md +0 -603
- package/scripts/validate-stringray-comprehensive.js +0 -636
- /package/dist/integrations/openclaw/hooks/{strray-hooks.js → xray-hooks.js} +0 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 0xRay Framework - Main Entry Point
|
|
3
|
+
*
|
|
4
|
+
* This is the main entry point for the 0xRay framework.
|
|
5
|
+
* It exports the core initialization function and key components.
|
|
6
|
+
*/
|
|
7
|
+
export { XrayOrchestrator, XrayOrchestrator as StringRayOrchestrator } from "./orchestrator/orchestrator.js";
|
|
8
|
+
export { XrayStateManager, XrayStateManager as StringRayStateManager } from "./state/index.js";
|
|
9
|
+
export { AgentDelegator } from "./delegation/index.js";
|
|
10
|
+
export { frameworkLogger } from "./core/framework-logger.js";
|
|
11
|
+
export { BUILTIN_CODEX } from "./core/codex-formatter.js";
|
|
12
|
+
import { defaultXrayConfig } from "./core/index.js";
|
|
13
|
+
export { defaultXrayConfig, defaultXrayConfig as defaultStringRayConfig };
|
|
14
|
+
export { OpenClawIntegration, initializeOpenClawIntegration, getOpenClawIntegration, shutdownOpenClawIntegration } from "./integrations/openclaw/index.js";
|
|
15
|
+
export type { OpenClawIntegrationConfig } from "./integrations/openclaw/types.js";
|
|
16
|
+
export declare function initializeXray(config?: {}): {
|
|
17
|
+
success: boolean;
|
|
18
|
+
config: {
|
|
19
|
+
enableOrchestrator: boolean;
|
|
20
|
+
enableBootOrchestrator: boolean;
|
|
21
|
+
enableStateManagement: boolean;
|
|
22
|
+
enableHooks: boolean;
|
|
23
|
+
enableCodexInjection: boolean;
|
|
24
|
+
enableProcessors: boolean;
|
|
25
|
+
enablePostProcessor: boolean;
|
|
26
|
+
};
|
|
27
|
+
message: string;
|
|
28
|
+
};
|
package/dist/index.js
CHANGED
|
@@ -4,17 +4,17 @@
|
|
|
4
4
|
* This is the main entry point for the 0xRay framework.
|
|
5
5
|
* It exports the core initialization function and key components.
|
|
6
6
|
*/
|
|
7
|
-
export { StringRayOrchestrator } from "./orchestrator/orchestrator.js";
|
|
8
|
-
export { StringRayStateManager } from "./state/index.js";
|
|
7
|
+
export { XrayOrchestrator, XrayOrchestrator as StringRayOrchestrator } from "./orchestrator/orchestrator.js";
|
|
8
|
+
export { XrayStateManager, XrayStateManager as StringRayStateManager } from "./state/index.js";
|
|
9
9
|
export { AgentDelegator } from "./delegation/index.js";
|
|
10
10
|
export { frameworkLogger } from "./core/framework-logger.js";
|
|
11
11
|
export { BUILTIN_CODEX } from "./core/codex-formatter.js";
|
|
12
|
-
import {
|
|
13
|
-
export { defaultStringRayConfig };
|
|
12
|
+
import { defaultXrayConfig } from "./core/index.js";
|
|
13
|
+
export { defaultXrayConfig, defaultXrayConfig as defaultStringRayConfig };
|
|
14
14
|
export { OpenClawIntegration, initializeOpenClawIntegration, getOpenClawIntegration, shutdownOpenClawIntegration } from "./integrations/openclaw/index.js";
|
|
15
15
|
// Main initialization function
|
|
16
|
-
export function
|
|
17
|
-
const mergedConfig = { ...
|
|
16
|
+
export function initializeXray(config = {}) {
|
|
17
|
+
const mergedConfig = { ...defaultXrayConfig, ...config };
|
|
18
18
|
// Return a standardized initialization result
|
|
19
19
|
return {
|
|
20
20
|
success: true,
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface DeployVerificationResult {
|
|
2
|
+
success: boolean;
|
|
3
|
+
packageVersion: string;
|
|
4
|
+
tarballPath: string;
|
|
5
|
+
installDir: string;
|
|
6
|
+
checks: DeployCheck[];
|
|
7
|
+
duration: number;
|
|
8
|
+
timestamp: string;
|
|
9
|
+
}
|
|
10
|
+
export interface DeployCheck {
|
|
11
|
+
name: string;
|
|
12
|
+
passed: boolean;
|
|
13
|
+
output: string;
|
|
14
|
+
duration: number;
|
|
15
|
+
}
|
|
16
|
+
export declare class DeployVerifier {
|
|
17
|
+
private projectRoot;
|
|
18
|
+
constructor(projectRoot?: string);
|
|
19
|
+
verify(): DeployVerificationResult;
|
|
20
|
+
quickVerify(): DeployVerificationResult;
|
|
21
|
+
private runCheck;
|
|
22
|
+
private exec;
|
|
23
|
+
private readPackageJson;
|
|
24
|
+
private cleanup;
|
|
25
|
+
private result;
|
|
26
|
+
}
|
|
@@ -43,7 +43,7 @@ export class DeployVerifier {
|
|
|
43
43
|
if (!packCheck.passed) {
|
|
44
44
|
return this.result(false, version, tarballPath, installDir, checks, startTime);
|
|
45
45
|
}
|
|
46
|
-
installDir = fs.mkdtempSync(path.join(os.tmpdir(), "
|
|
46
|
+
installDir = fs.mkdtempSync(path.join(os.tmpdir(), "xray-deploy-verify-"));
|
|
47
47
|
const installCheck = this.runCheck("npm-install-fresh", () => {
|
|
48
48
|
this.exec(`npm install ${tarballPath} --no-save`, installDir, 60000);
|
|
49
49
|
return "Fresh install succeeded";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { analyzeStructuralPatterns } from "./semantic-patterns.js";
|
|
2
|
+
export type { StructuralPattern } from "./semantic-patterns.js";
|
|
3
|
+
export { captureSessionInference, saveSessionInference, } from "./session-capture.js";
|
|
4
|
+
export type { SessionInference, ReasoningLink, SessionMetrics, } from "./session-capture.js";
|
|
5
|
+
export { shouldTriggerCycle, accumulateCorpus } from "./inference-accumulator.js";
|
|
6
|
+
export type { InferenceCorpus, RecurringPattern, RecurringProblem } from "./inference-accumulator.js";
|
|
7
|
+
export { InferenceCycle } from "./inference-cycle.js";
|
|
8
|
+
export type { InferenceProposal, InferenceCycleResult, CyclePhase } from "./inference-cycle.js";
|
|
9
|
+
export { DeployVerifier } from "./deploy-verifier.js";
|
|
10
|
+
export type { DeployVerificationResult, DeployCheck } from "./deploy-verifier.js";
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { SessionInference } from "./session-capture.js";
|
|
2
|
+
export interface InferenceCorpus {
|
|
3
|
+
sessions: SessionInference[];
|
|
4
|
+
totalCommits: number;
|
|
5
|
+
recurringPatterns: RecurringPattern[];
|
|
6
|
+
recurringProblems: RecurringProblem[];
|
|
7
|
+
uniqueApproaches: string[];
|
|
8
|
+
allWrongTurns: string[];
|
|
9
|
+
collectedAt: string;
|
|
10
|
+
}
|
|
11
|
+
export interface RecurringPattern {
|
|
12
|
+
name: string;
|
|
13
|
+
occurrences: number;
|
|
14
|
+
avgConfidence: number;
|
|
15
|
+
sessions: string[];
|
|
16
|
+
evidence: string[];
|
|
17
|
+
description: string;
|
|
18
|
+
}
|
|
19
|
+
export interface RecurringProblem {
|
|
20
|
+
pattern: string;
|
|
21
|
+
occurrences: number;
|
|
22
|
+
sessions: string[];
|
|
23
|
+
}
|
|
24
|
+
export declare function shouldTriggerCycle(inferenceDir: string, lastCycleFile: string): {
|
|
25
|
+
trigger: boolean;
|
|
26
|
+
reason: string;
|
|
27
|
+
};
|
|
28
|
+
export declare function accumulateCorpus(inferenceDir: string): InferenceCorpus;
|
|
29
|
+
export declare function loadSessionInferences(dir: string): SessionInference[];
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { DeployVerificationResult } from "./deploy-verifier.js";
|
|
2
|
+
export interface InferenceProposal {
|
|
3
|
+
id: string;
|
|
4
|
+
type: "fix" | "refactor" | "automate" | "guard" | "codify";
|
|
5
|
+
title: string;
|
|
6
|
+
description: string;
|
|
7
|
+
evidence: string[];
|
|
8
|
+
confidence: number;
|
|
9
|
+
source: "recurring_problem" | "recurring_pattern" | "wrong_turn";
|
|
10
|
+
status: "pending" | "approved" | "rejected" | "applied" | "failed";
|
|
11
|
+
}
|
|
12
|
+
export interface InferenceCycleResult {
|
|
13
|
+
cycleId: string;
|
|
14
|
+
triggered: boolean;
|
|
15
|
+
triggerReason: string;
|
|
16
|
+
corpusSummary: {
|
|
17
|
+
sessions: number;
|
|
18
|
+
totalCommits: number;
|
|
19
|
+
recurringPatterns: number;
|
|
20
|
+
recurringProblems: number;
|
|
21
|
+
};
|
|
22
|
+
proposals: InferenceProposal[];
|
|
23
|
+
votes: {
|
|
24
|
+
proposalId: string;
|
|
25
|
+
decision: string;
|
|
26
|
+
confidence: number;
|
|
27
|
+
details: string[];
|
|
28
|
+
}[];
|
|
29
|
+
deployVerification?: DeployVerificationResult | undefined;
|
|
30
|
+
phase: CyclePhase;
|
|
31
|
+
completedAt: string;
|
|
32
|
+
duration: number;
|
|
33
|
+
}
|
|
34
|
+
export type CyclePhase = "idle" | "collecting" | "proposing" | "governing" | "applying" | "deploying" | "verifying" | "complete" | "failed";
|
|
35
|
+
export type AgentInvoker = (agentName: string, prompt: string) => Promise<string>;
|
|
36
|
+
export interface InferenceCycleOptions {
|
|
37
|
+
skipDeployVerify?: boolean;
|
|
38
|
+
skipApply?: boolean;
|
|
39
|
+
skipResearcherReview?: boolean;
|
|
40
|
+
force?: boolean;
|
|
41
|
+
}
|
|
42
|
+
export declare class InferenceCycle {
|
|
43
|
+
private static instances;
|
|
44
|
+
private static reEntryLock;
|
|
45
|
+
private static governedProposalIds;
|
|
46
|
+
private static votingCoordinator;
|
|
47
|
+
static getInstance(projectRoot?: string, options?: InferenceCycleOptions): InferenceCycle;
|
|
48
|
+
static resetInstance(): void;
|
|
49
|
+
private inferenceDir;
|
|
50
|
+
private stateDir;
|
|
51
|
+
private projectRoot;
|
|
52
|
+
private phase;
|
|
53
|
+
private opencodeAvailable;
|
|
54
|
+
private agentInvoker;
|
|
55
|
+
private options;
|
|
56
|
+
constructor(projectRoot?: string, agentInvoker?: AgentInvoker, options?: InferenceCycleOptions);
|
|
57
|
+
governExternalProposals(proposals: InferenceProposal[]): Promise<InferenceCycleResult>;
|
|
58
|
+
maybeRunCycle(): Promise<InferenceCycleResult>;
|
|
59
|
+
private generateProposals;
|
|
60
|
+
private adjustFromHistory;
|
|
61
|
+
private getCoordinator;
|
|
62
|
+
private applyProposals;
|
|
63
|
+
private applyProposalWork;
|
|
64
|
+
private applyCodeChange;
|
|
65
|
+
private applyGuard;
|
|
66
|
+
private applyAutomation;
|
|
67
|
+
private extractTargetFiles;
|
|
68
|
+
private researcherReview;
|
|
69
|
+
private governProposals;
|
|
70
|
+
private isGovernanceMcpPreferred;
|
|
71
|
+
private parseGovernanceMcpResponse;
|
|
72
|
+
/**
|
|
73
|
+
* Oscillator 1: Internal VotingCoordinator-based governance
|
|
74
|
+
*/
|
|
75
|
+
private governProposalsInternal;
|
|
76
|
+
/**
|
|
77
|
+
* Pure individual knowledge-skill MCP path for governance.
|
|
78
|
+
* Used when STRRAY_FORCE_MCP_GOVERNANCE=true.
|
|
79
|
+
* Each proposal is evaluated directly by the relevant skill servers using analyze_proposal.
|
|
80
|
+
*/
|
|
81
|
+
private governProposalsWithIndividualSkills;
|
|
82
|
+
/**
|
|
83
|
+
* Merge internal and external governance votes.
|
|
84
|
+
* A proposal passes both oscillators — must be approved by internal AND external.
|
|
85
|
+
*/
|
|
86
|
+
private mergeGovernanceVotes;
|
|
87
|
+
/**
|
|
88
|
+
* Govern proposals using external chrono-warp-drive Dynamo endpoint
|
|
89
|
+
*/
|
|
90
|
+
private governProposalsExternal;
|
|
91
|
+
private invokeAgentInternal;
|
|
92
|
+
private invokeViaOpencode;
|
|
93
|
+
private parseSubagentVotes;
|
|
94
|
+
private getGovernanceStateManager;
|
|
95
|
+
private saveGovernanceState;
|
|
96
|
+
private extractTextFromNdjson;
|
|
97
|
+
private resolveOpencodeRoot;
|
|
98
|
+
private rejectNoQuorum;
|
|
99
|
+
private classifyProposalType;
|
|
100
|
+
private patternToProposalType;
|
|
101
|
+
private generateTitle;
|
|
102
|
+
private setPhase;
|
|
103
|
+
getPhase(): CyclePhase;
|
|
104
|
+
private saveCycleState;
|
|
105
|
+
private appendHistory;
|
|
106
|
+
private loadHistory;
|
|
107
|
+
private adjustConfidenceFromHistory;
|
|
108
|
+
private buildBlockedResult;
|
|
109
|
+
private buildResult;
|
|
110
|
+
}
|
|
@@ -3,7 +3,7 @@ import * as path from "path";
|
|
|
3
3
|
import { shouldTriggerCycle, accumulateCorpus } from "./inference-accumulator.js";
|
|
4
4
|
import { DeployVerifier } from "./deploy-verifier.js";
|
|
5
5
|
import { VotingCoordinator } from "../delegation/voting-coordinator.js";
|
|
6
|
-
import {
|
|
6
|
+
import { XrayStateManager } from "../state/state-manager.js";
|
|
7
7
|
import { frameworkLogger } from "../core/framework-logger.js";
|
|
8
8
|
import { getGovernanceIntegration } from "../integrations/governance/index.js";
|
|
9
9
|
import { featuresConfigLoader } from "../core/features-config.js";
|
|
@@ -50,7 +50,7 @@ export class InferenceCycle {
|
|
|
50
50
|
constructor(projectRoot, agentInvoker, options) {
|
|
51
51
|
this.projectRoot = projectRoot || process.cwd();
|
|
52
52
|
this.inferenceDir = path.join(this.projectRoot, "docs", "inference");
|
|
53
|
-
this.stateDir = path.join(this.projectRoot, ".
|
|
53
|
+
this.stateDir = path.join(this.projectRoot, ".xray", "inference");
|
|
54
54
|
this.agentInvoker = agentInvoker ?? null;
|
|
55
55
|
this.options = options ?? {};
|
|
56
56
|
}
|
|
@@ -353,7 +353,7 @@ export class InferenceCycle {
|
|
|
353
353
|
``,
|
|
354
354
|
`1. Read the relevant source files`,
|
|
355
355
|
`2. Add the missing guard, validation, or edge case handling`,
|
|
356
|
-
`3. If this is a codex rule, add the term to .opencode/
|
|
356
|
+
`3. If this is a codex rule, add the term to .opencode/xray/codex.json`,
|
|
357
357
|
`4. Make minimal, surgical changes`,
|
|
358
358
|
].join("\n");
|
|
359
359
|
try {
|
|
@@ -922,7 +922,7 @@ Respond with EXACTLY one of:
|
|
|
922
922
|
fs.mkdirSync(this.stateDir, { recursive: true });
|
|
923
923
|
}
|
|
924
924
|
const stateFile = path.join(this.stateDir, "governance-state.json");
|
|
925
|
-
const stateManager = new
|
|
925
|
+
const stateManager = new XrayStateManager();
|
|
926
926
|
if (fs.existsSync(stateFile)) {
|
|
927
927
|
try {
|
|
928
928
|
const data = JSON.parse(fs.readFileSync(stateFile, "utf-8"));
|
|
@@ -975,10 +975,10 @@ Respond with EXACTLY one of:
|
|
|
975
975
|
return texts.join("\n").trim();
|
|
976
976
|
}
|
|
977
977
|
resolveOpencodeRoot() {
|
|
978
|
-
// Use the provider-agnostic config path resolver (prefers .
|
|
978
|
+
// Use the provider-agnostic config path resolver (prefers .xray/, falls back to .opencode/xray/)
|
|
979
979
|
const configDir = getConfigDir(this.projectRoot);
|
|
980
|
-
// If we resolved to a .
|
|
981
|
-
if (configDir.includes(".
|
|
980
|
+
// If we resolved to a .xray or custom dir, use its parent as the "root"
|
|
981
|
+
if (configDir.includes(".xray") || configDir.includes("xray")) {
|
|
982
982
|
return path.dirname(configDir);
|
|
983
983
|
}
|
|
984
984
|
// Legacy fallback
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { StructuralPattern } from "./semantic-patterns.js";
|
|
2
|
+
export interface SessionInference {
|
|
3
|
+
sessionId: string;
|
|
4
|
+
timestamp: string;
|
|
5
|
+
span: {
|
|
6
|
+
from: string;
|
|
7
|
+
to: string;
|
|
8
|
+
};
|
|
9
|
+
problems: string[];
|
|
10
|
+
approaches: string[];
|
|
11
|
+
wrongTurns: string[];
|
|
12
|
+
solutions: string[];
|
|
13
|
+
reasoningChain: ReasoningLink[];
|
|
14
|
+
patterns: StructuralPattern[];
|
|
15
|
+
metrics: SessionMetrics;
|
|
16
|
+
}
|
|
17
|
+
export interface ReasoningLink {
|
|
18
|
+
from: string;
|
|
19
|
+
to: string;
|
|
20
|
+
reasoning: string;
|
|
21
|
+
}
|
|
22
|
+
export interface SessionMetrics {
|
|
23
|
+
commits: number;
|
|
24
|
+
filesChanged: number;
|
|
25
|
+
insertions: number;
|
|
26
|
+
deletions: number;
|
|
27
|
+
filesAdded: number;
|
|
28
|
+
filesDeleted: number;
|
|
29
|
+
uniqueDirs: number;
|
|
30
|
+
}
|
|
31
|
+
export declare function captureSessionInference(fromRef: string, toRef: string): SessionInference | null;
|
|
32
|
+
export declare function saveSessionInference(inference: SessionInference, outputDir?: string): string;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Example Integration - Demonstrates using the BaseIntegration class
|
|
3
|
+
*
|
|
4
|
+
* This is a simple example showing how to create a custom integration
|
|
5
|
+
* that extends the BaseIntegration class.
|
|
6
|
+
*
|
|
7
|
+
* @version 1.0.0
|
|
8
|
+
* @since 2026-03-15
|
|
9
|
+
*/
|
|
10
|
+
import { BaseIntegration, type HealthResult, type IntegrationConfig } from "./index.js";
|
|
11
|
+
/**
|
|
12
|
+
* Example custom integration
|
|
13
|
+
*
|
|
14
|
+
* Demonstrates how to extend BaseIntegration with custom logic.
|
|
15
|
+
*/
|
|
16
|
+
declare class ExampleIntegration extends BaseIntegration {
|
|
17
|
+
/** Custom property for this integration */
|
|
18
|
+
private connectionString;
|
|
19
|
+
private connected;
|
|
20
|
+
/**
|
|
21
|
+
* Create a new ExampleIntegration
|
|
22
|
+
*
|
|
23
|
+
* @param config - Optional configuration
|
|
24
|
+
*/
|
|
25
|
+
constructor(config?: Partial<IntegrationConfig>);
|
|
26
|
+
/**
|
|
27
|
+
* Set connection string
|
|
28
|
+
*/
|
|
29
|
+
setConnectionString(connStr: string): void;
|
|
30
|
+
/**
|
|
31
|
+
* Check if connected
|
|
32
|
+
*/
|
|
33
|
+
isConnected(): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Perform integration-specific initialization
|
|
36
|
+
*/
|
|
37
|
+
protected performInitialization(): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* Perform integration-specific shutdown
|
|
40
|
+
*/
|
|
41
|
+
protected performShutdown(): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* Perform integration-specific health check
|
|
44
|
+
*/
|
|
45
|
+
protected performHealthCheck(): Promise<HealthResult>;
|
|
46
|
+
}
|
|
47
|
+
export { ExampleIntegration };
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Integration Class
|
|
3
|
+
*
|
|
4
|
+
* Abstract base class providing common lifecycle management, event emission,
|
|
5
|
+
* configuration handling, and logging for all 0xRay integrations.
|
|
6
|
+
*
|
|
7
|
+
* @version 1.0.0
|
|
8
|
+
* @since 2026-03-15
|
|
9
|
+
*/
|
|
10
|
+
import { EventEmitter } from "events";
|
|
11
|
+
import type { LogStatus } from "../../core/framework-logger.js";
|
|
12
|
+
import { type IntegrationConfig, type IntegrationStatus, type IntegrationStats, type HealthResult, type IntegrationEvent, type IntegrationEventType, type IIntegration, type IEventedIntegration, type LogLevel } from "./types.js";
|
|
13
|
+
/**
|
|
14
|
+
* Abstract base class for all 0xRay integrations
|
|
15
|
+
*
|
|
16
|
+
* Provides:
|
|
17
|
+
* - Lifecycle management (initialize/shutdown)
|
|
18
|
+
* - Configuration handling with defaults
|
|
19
|
+
* - Event emission for integration events
|
|
20
|
+
* - Common statistics tracking (uptime, errors)
|
|
21
|
+
* - Logging integration with framework logger
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* class MyIntegration extends BaseIntegration {
|
|
26
|
+
* constructor() {
|
|
27
|
+
* super('my-integration', '1.0.0');
|
|
28
|
+
* }
|
|
29
|
+
*
|
|
30
|
+
* protected async performInitialization(): Promise<void> {
|
|
31
|
+
* // Custom initialization logic
|
|
32
|
+
* }
|
|
33
|
+
*
|
|
34
|
+
* protected async performShutdown(): Promise<void> {
|
|
35
|
+
* // Custom cleanup logic
|
|
36
|
+
* }
|
|
37
|
+
*
|
|
38
|
+
* protected async performHealthCheck(): Promise<HealthResult> {
|
|
39
|
+
* return { healthy: true, message: 'OK' };
|
|
40
|
+
* }
|
|
41
|
+
* }
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export declare abstract class BaseIntegration extends EventEmitter implements IIntegration, IEventedIntegration {
|
|
45
|
+
/** Unique name of the integration */
|
|
46
|
+
readonly name: string;
|
|
47
|
+
/** Version of the integration */
|
|
48
|
+
readonly version: string;
|
|
49
|
+
/** Current lifecycle status */
|
|
50
|
+
protected _status: IntegrationStatus;
|
|
51
|
+
/** Current configuration */
|
|
52
|
+
protected config: IntegrationConfig;
|
|
53
|
+
/** Statistics tracking */
|
|
54
|
+
protected stats: IntegrationStats;
|
|
55
|
+
/** Start time for uptime calculation */
|
|
56
|
+
protected startTime: number;
|
|
57
|
+
/** Job ID for current operation */
|
|
58
|
+
protected jobId: string;
|
|
59
|
+
/**
|
|
60
|
+
* Create a new base integration
|
|
61
|
+
*
|
|
62
|
+
* @param name - Unique name for this integration
|
|
63
|
+
* @param version - Version string
|
|
64
|
+
* @param initialConfig - Optional initial configuration
|
|
65
|
+
*/
|
|
66
|
+
constructor(name: string, version: string, initialConfig?: Partial<IntegrationConfig>);
|
|
67
|
+
/**
|
|
68
|
+
* Get current integration status (readonly accessor)
|
|
69
|
+
*/
|
|
70
|
+
get status(): IntegrationStatus;
|
|
71
|
+
/**
|
|
72
|
+
* Initialize the integration
|
|
73
|
+
*
|
|
74
|
+
* Calls performInitialization() after setting up the base state.
|
|
75
|
+
* Handles errors and emits appropriate events.
|
|
76
|
+
*
|
|
77
|
+
* @param config - Optional partial configuration to merge
|
|
78
|
+
*/
|
|
79
|
+
initialize(config?: Partial<IntegrationConfig>): Promise<void>;
|
|
80
|
+
/**
|
|
81
|
+
* Gracefully shutdown the integration
|
|
82
|
+
*
|
|
83
|
+
* Calls performShutdown() to clean up resources.
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```typescript
|
|
87
|
+
* // Using await
|
|
88
|
+
* await integration.shutdown();
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
shutdown(): Promise<void>;
|
|
92
|
+
/**
|
|
93
|
+
* Perform a health check
|
|
94
|
+
*
|
|
95
|
+
* Default implementation checks status and calls performHealthCheck().
|
|
96
|
+
* Subclasses should override performHealthCheck() for custom checks.
|
|
97
|
+
*
|
|
98
|
+
* @returns Health result indicating integration health
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```typescript
|
|
102
|
+
* const health = await integration.healthCheck();
|
|
103
|
+
* if (!health.healthy) {
|
|
104
|
+
* console.error('Integration unhealthy:', health.message);
|
|
105
|
+
* }
|
|
106
|
+
* ```
|
|
107
|
+
*/
|
|
108
|
+
healthCheck(): Promise<HealthResult>;
|
|
109
|
+
/**
|
|
110
|
+
* Get current integration statistics
|
|
111
|
+
*
|
|
112
|
+
* Calculates uptime since initialization and includes error count.
|
|
113
|
+
*
|
|
114
|
+
* @returns Current stats object
|
|
115
|
+
*
|
|
116
|
+
* @example
|
|
117
|
+
* ```typescript
|
|
118
|
+
* const stats = integration.getStats();
|
|
119
|
+
* console.log(`Uptime: ${stats.uptime}ms, Errors: ${stats.errors}`);
|
|
120
|
+
* ```
|
|
121
|
+
*/
|
|
122
|
+
getStats(): IntegrationStats;
|
|
123
|
+
/**
|
|
124
|
+
* Get the event emitter for this integration
|
|
125
|
+
*
|
|
126
|
+
* Returns `this` since BaseIntegration extends EventEmitter.
|
|
127
|
+
*
|
|
128
|
+
* @returns The event emitter instance
|
|
129
|
+
*/
|
|
130
|
+
getEventEmitter(): EventEmitter;
|
|
131
|
+
/**
|
|
132
|
+
* Ensure the integration is initialized
|
|
133
|
+
*
|
|
134
|
+
* @throws IntegrationNotInitializedError if not initialized
|
|
135
|
+
*/
|
|
136
|
+
protected ensureInitialized(): void;
|
|
137
|
+
/**
|
|
138
|
+
* Record an error in statistics
|
|
139
|
+
*
|
|
140
|
+
* @param error - Optional error to record
|
|
141
|
+
*/
|
|
142
|
+
protected recordError(error?: Error): void;
|
|
143
|
+
/**
|
|
144
|
+
* Update custom statistics
|
|
145
|
+
*
|
|
146
|
+
* @param customStats - Partial stats to merge
|
|
147
|
+
*/
|
|
148
|
+
protected updateCustomStats(customStats: Record<string, unknown>): void;
|
|
149
|
+
/**
|
|
150
|
+
* Get current configuration
|
|
151
|
+
*
|
|
152
|
+
* @returns Current configuration object (copy)
|
|
153
|
+
*/
|
|
154
|
+
protected getConfig(): IntegrationConfig;
|
|
155
|
+
/**
|
|
156
|
+
* Update configuration
|
|
157
|
+
*
|
|
158
|
+
* @param config - Partial configuration to merge
|
|
159
|
+
*/
|
|
160
|
+
protected updateConfig(config: Partial<IntegrationConfig>): void;
|
|
161
|
+
/**
|
|
162
|
+
* Log a message using the framework logger
|
|
163
|
+
*
|
|
164
|
+
* @param status - Log status level
|
|
165
|
+
* @param message - Message to log
|
|
166
|
+
* @param details - Optional details object
|
|
167
|
+
*/
|
|
168
|
+
protected log(status: LogStatus, message: string, details?: Record<string, unknown>): Promise<void>;
|
|
169
|
+
/**
|
|
170
|
+
* Emit a typed integration event
|
|
171
|
+
*
|
|
172
|
+
* @param type - Event type
|
|
173
|
+
* @param data - Event data
|
|
174
|
+
* @param error - Optional error
|
|
175
|
+
*/
|
|
176
|
+
protected emitEvent(type: IntegrationEventType, data?: Record<string, unknown>, error?: Error): void;
|
|
177
|
+
/**
|
|
178
|
+
* Perform integration-specific initialization
|
|
179
|
+
*
|
|
180
|
+
* Called during initialize() after base setup.
|
|
181
|
+
* Subclasses should implement custom initialization logic here.
|
|
182
|
+
*
|
|
183
|
+
* @example
|
|
184
|
+
* ```typescript
|
|
185
|
+
* protected async performInitialization(): Promise<void> {
|
|
186
|
+
* // Connect to external service
|
|
187
|
+
* await this.connect();
|
|
188
|
+
*
|
|
189
|
+
* // Setup event handlers
|
|
190
|
+
* this.on('data', this.handleData);
|
|
191
|
+
* }
|
|
192
|
+
* ```
|
|
193
|
+
*/
|
|
194
|
+
protected abstract performInitialization(): Promise<void>;
|
|
195
|
+
/**
|
|
196
|
+
* Perform integration-specific shutdown
|
|
197
|
+
*
|
|
198
|
+
* Called during shutdown() for cleanup.
|
|
199
|
+
* Subclasses should implement cleanup logic here.
|
|
200
|
+
*
|
|
201
|
+
* @example
|
|
202
|
+
* ```typescript
|
|
203
|
+
* protected async performShutdown(): Promise<void> {
|
|
204
|
+
* // Remove event handlers
|
|
205
|
+
* this.off('data', this.handleData);
|
|
206
|
+
*
|
|
207
|
+
* // Close connections
|
|
208
|
+
* await this.disconnect();
|
|
209
|
+
* }
|
|
210
|
+
* ```
|
|
211
|
+
*/
|
|
212
|
+
protected abstract performShutdown(): Promise<void>;
|
|
213
|
+
/**
|
|
214
|
+
* Perform integration-specific health check
|
|
215
|
+
*
|
|
216
|
+
* Called by healthCheck() to determine integration health.
|
|
217
|
+
* Subclasses should implement custom health checks here.
|
|
218
|
+
*
|
|
219
|
+
* @returns Health result
|
|
220
|
+
*
|
|
221
|
+
* @example
|
|
222
|
+
* ```typescript
|
|
223
|
+
* protected async performHealthCheck(): Promise<HealthResult> {
|
|
224
|
+
* const connected = await this.isConnected();
|
|
225
|
+
*
|
|
226
|
+
* if (connected) {
|
|
227
|
+
* return { healthy: true, message: 'Connection active' };
|
|
228
|
+
* }
|
|
229
|
+
*
|
|
230
|
+
* return { healthy: false, message: 'Not connected' };
|
|
231
|
+
* }
|
|
232
|
+
* ```
|
|
233
|
+
*/
|
|
234
|
+
protected abstract performHealthCheck(): Promise<HealthResult>;
|
|
235
|
+
/**
|
|
236
|
+
* Check if an object is a BaseIntegration instance
|
|
237
|
+
*
|
|
238
|
+
* @param value - Value to check
|
|
239
|
+
* @returns True if value is a BaseIntegration
|
|
240
|
+
*/
|
|
241
|
+
static isBaseIntegration(value: unknown): value is BaseIntegration;
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Create a simple integration with minimal implementation
|
|
245
|
+
*
|
|
246
|
+
* Useful for testing or simple integrations that don't need much logic.
|
|
247
|
+
*
|
|
248
|
+
* @param name - Integration name
|
|
249
|
+
* @param version - Integration version
|
|
250
|
+
* @param healthCheck - Custom health check function
|
|
251
|
+
* @param shutdown - Custom shutdown function
|
|
252
|
+
* @returns New integration instance
|
|
253
|
+
*
|
|
254
|
+
* @example
|
|
255
|
+
* ```typescript
|
|
256
|
+
* const simple = createSimpleIntegration(
|
|
257
|
+
* 'simple',
|
|
258
|
+
* '1.0.0',
|
|
259
|
+
* async () => ({ healthy: true, message: 'OK' }),
|
|
260
|
+
* async () => {}
|
|
261
|
+
* );
|
|
262
|
+
*
|
|
263
|
+
* await simple.initialize();
|
|
264
|
+
* ```
|
|
265
|
+
*/
|
|
266
|
+
export declare function createSimpleIntegration(name: string, version: string, healthCheck: () => Promise<HealthResult>, shutdown?: () => Promise<void>): BaseIntegration;
|
|
267
|
+
export type { IntegrationConfig, IntegrationStatus, IntegrationStats, HealthResult, IntegrationEvent, IntegrationEventType, IIntegration, IEventedIntegration, LogLevel, };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Integration Base System
|
|
2
2
|
|
|
3
|
-
The Integration Base System provides a standardized foundation for creating and managing
|
|
3
|
+
The Integration Base System provides a standardized foundation for creating and managing Xray integrations. It includes the `BaseIntegration` class, `IntegrationRegistry`, and supporting types that ensure consistent lifecycle management, event handling, and configuration across all integrations.
|
|
4
4
|
|
|
5
5
|
## Overview
|
|
6
6
|
|
|
@@ -21,7 +21,7 @@ src/integrations/
|
|
|
21
21
|
│ ├── ExampleIntegration.ts # Example implementation
|
|
22
22
|
│ └── index.ts # Module exports
|
|
23
23
|
├── core/ # Core framework integrations
|
|
24
|
-
│ └──
|
|
24
|
+
│ └── xray-integration.ts # Cross-framework integration
|
|
25
25
|
└── openclaw/ # External service integrations
|
|
26
26
|
├── index.ts
|
|
27
27
|
├── client.ts
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Integration Base Module
|
|
3
|
+
*
|
|
4
|
+
* Common interfaces and base class for 0xRay integrations.
|
|
5
|
+
*
|
|
6
|
+
* @version 1.0.0
|
|
7
|
+
* @since 2026-03-15
|
|
8
|
+
*/
|
|
9
|
+
export * from "./types.js";
|
|
10
|
+
export * from "./Integration.js";
|
|
11
|
+
export * from "./registry.js";
|
|
12
|
+
export * from "./ExampleIntegration.js";
|