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
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session State Manager
|
|
3
|
+
*
|
|
4
|
+
* Manages cross-session state sharing, dependency tracking,
|
|
5
|
+
* and coordination for complex workflows.
|
|
6
|
+
*
|
|
7
|
+
* @version 1.0.0
|
|
8
|
+
* @since 2026-01-07
|
|
9
|
+
*/
|
|
10
|
+
import { XrayStateManager } from "../state/state-manager.js";
|
|
11
|
+
import { SessionCoordinator } from "../delegation/session-coordinator.js";
|
|
12
|
+
export interface SessionDependency {
|
|
13
|
+
sessionId: string;
|
|
14
|
+
dependsOn: string[];
|
|
15
|
+
dependedBy: string[];
|
|
16
|
+
state: "pending" | "active" | "completed" | "failed";
|
|
17
|
+
priority: number;
|
|
18
|
+
metadata: Record<string, unknown>;
|
|
19
|
+
}
|
|
20
|
+
export interface SessionGroup {
|
|
21
|
+
groupId: string;
|
|
22
|
+
sessionIds: string[];
|
|
23
|
+
coordinatorSession: string;
|
|
24
|
+
state: "forming" | "active" | "completing" | "completed" | "failed";
|
|
25
|
+
sharedState: Map<string, {
|
|
26
|
+
value: unknown;
|
|
27
|
+
fromSessionId: string;
|
|
28
|
+
timestamp: number;
|
|
29
|
+
}>;
|
|
30
|
+
createdAt: number;
|
|
31
|
+
completedAt?: number;
|
|
32
|
+
}
|
|
33
|
+
export interface MigrationPlan {
|
|
34
|
+
sessionId: string;
|
|
35
|
+
targetCoordinator: string;
|
|
36
|
+
stateTransfer: Map<string, unknown>;
|
|
37
|
+
migrationSteps: string[];
|
|
38
|
+
rollbackSteps: string[];
|
|
39
|
+
}
|
|
40
|
+
export interface FailoverConfig {
|
|
41
|
+
sessionId: string;
|
|
42
|
+
backupCoordinators: string[];
|
|
43
|
+
failoverThreshold: number;
|
|
44
|
+
autoFailover: boolean;
|
|
45
|
+
}
|
|
46
|
+
export declare class SessionStateManager {
|
|
47
|
+
private stateManager;
|
|
48
|
+
private sessionCoordinator;
|
|
49
|
+
private dependencies;
|
|
50
|
+
private sessionGroups;
|
|
51
|
+
private failoverConfigs;
|
|
52
|
+
constructor(stateManager: XrayStateManager, sessionCoordinator: SessionCoordinator);
|
|
53
|
+
/**
|
|
54
|
+
* Share state between sessions
|
|
55
|
+
*/
|
|
56
|
+
shareState(fromSessionId: string, toSessionId: string, key: string, value: unknown): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Broadcast state to multiple sessions
|
|
59
|
+
*/
|
|
60
|
+
broadcastState(fromSessionId: string, targetSessionIds: string[], key: string, value: unknown): number;
|
|
61
|
+
/**
|
|
62
|
+
* Register session dependency
|
|
63
|
+
*/
|
|
64
|
+
registerDependency(sessionId: string, dependsOn: string[], metadata?: Record<string, unknown>): void;
|
|
65
|
+
/**
|
|
66
|
+
* Update dependency state
|
|
67
|
+
*/
|
|
68
|
+
updateDependencyState(sessionId: string, state: SessionDependency["state"]): void;
|
|
69
|
+
/**
|
|
70
|
+
* Get dependency chain for a session
|
|
71
|
+
*/
|
|
72
|
+
getDependencyChain(sessionId: string): {
|
|
73
|
+
dependencies: string[];
|
|
74
|
+
dependents: string[];
|
|
75
|
+
canStart: boolean;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Create session group for complex workflows
|
|
79
|
+
*/
|
|
80
|
+
createSessionGroup(groupId: string, sessionIds: string[], coordinatorSession: string): SessionGroup;
|
|
81
|
+
/**
|
|
82
|
+
* Update session group state
|
|
83
|
+
*/
|
|
84
|
+
updateSessionGroupState(groupId: string, state: SessionGroup["state"]): void;
|
|
85
|
+
/**
|
|
86
|
+
* Share state within a session group
|
|
87
|
+
*/
|
|
88
|
+
shareGroupState(groupId: string, key: string, value: unknown, fromSessionId: string): boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Get session group state
|
|
91
|
+
*/
|
|
92
|
+
getGroupState(groupId: string, key: string): unknown;
|
|
93
|
+
/**
|
|
94
|
+
* Plan session migration
|
|
95
|
+
*/
|
|
96
|
+
planMigration(sessionId: string, targetCoordinator: string): MigrationPlan;
|
|
97
|
+
/**
|
|
98
|
+
* Validate migration plan before execution
|
|
99
|
+
*/
|
|
100
|
+
validateMigrationPlan(plan: MigrationPlan): Promise<{
|
|
101
|
+
valid: boolean;
|
|
102
|
+
errors: string[];
|
|
103
|
+
warnings: string[];
|
|
104
|
+
}>;
|
|
105
|
+
/**
|
|
106
|
+
* Validate rollback capability for a migration plan
|
|
107
|
+
*/
|
|
108
|
+
validateRollbackCapability(plan: MigrationPlan): {
|
|
109
|
+
canRollback: boolean;
|
|
110
|
+
reason?: string;
|
|
111
|
+
};
|
|
112
|
+
/**
|
|
113
|
+
* Find orphaned agents in dependency graph
|
|
114
|
+
*/
|
|
115
|
+
findOrphanedAgents(allAgents: string[], dependencies: Record<string, string[]>): string[];
|
|
116
|
+
/**
|
|
117
|
+
* Execute session migration
|
|
118
|
+
*/
|
|
119
|
+
executeMigration(plan: MigrationPlan): Promise<boolean>;
|
|
120
|
+
/**
|
|
121
|
+
* Configure failover for a session
|
|
122
|
+
*/
|
|
123
|
+
configureFailover(sessionId: string, backupCoordinators: string[], failoverThreshold: number, autoFailover: boolean): void;
|
|
124
|
+
/**
|
|
125
|
+
* Execute failover for a session
|
|
126
|
+
*/
|
|
127
|
+
executeFailover(sessionId: string): Promise<boolean>;
|
|
128
|
+
/**
|
|
129
|
+
* Get coordination statistics
|
|
130
|
+
*/
|
|
131
|
+
getCoordinationStats(): {
|
|
132
|
+
totalDependencies: number;
|
|
133
|
+
activeDependencies: number;
|
|
134
|
+
totalGroups: number;
|
|
135
|
+
activeGroups: number;
|
|
136
|
+
failoverConfigs: number;
|
|
137
|
+
};
|
|
138
|
+
private propagateDependencyUpdate;
|
|
139
|
+
private rollbackMigration;
|
|
140
|
+
private persistDependencies;
|
|
141
|
+
private persistSessionGroups;
|
|
142
|
+
private persistFailoverConfigs;
|
|
143
|
+
shutdown(): void;
|
|
144
|
+
}
|
|
145
|
+
export declare const createSessionStateManager: (stateManager: XrayStateManager, sessionCoordinator: SessionCoordinator) => SessionStateManager;
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hermes-agent
|
|
3
|
-
description: Manage
|
|
3
|
+
description: Manage 0xRay framework from Hermes Agent via the native strray-hermes plugin. Covers the 4 plugin tools (validate, codex_check, health, hooks), lifecycle hooks, slash commands, bridge architecture, and CLI fallback.
|
|
4
4
|
version: 2.1.0
|
|
5
|
-
author:
|
|
5
|
+
author: 0xRay AI
|
|
6
6
|
metadata:
|
|
7
7
|
hermes:
|
|
8
|
-
tags: [
|
|
8
|
+
tags: [0xRay, Plugin, Validation, Codex, GitHooks, Bridge]
|
|
9
9
|
related_skills: []
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
#
|
|
12
|
+
# 0xRay Hermes Plugin (strray-hermes)
|
|
13
13
|
|
|
14
|
-
Native Hermes plugin providing
|
|
14
|
+
Native Hermes plugin providing 0xRay framework integration — quality gates, codex enforcement, git hooks, and full pre/post processing pipeline. Runs via a Node.js bridge to compiled framework components.
|
|
15
15
|
|
|
16
16
|
## When to Use
|
|
17
17
|
|
|
18
|
-
- User asks about
|
|
18
|
+
- User asks about 0xRay health, validation, or codex checks
|
|
19
19
|
- User wants to install/manage git hooks for automated enforcement
|
|
20
20
|
- User asks about the plugin's tools, hooks, or slash commands
|
|
21
21
|
- User asks about bridge errors or framework not loading
|
|
@@ -28,7 +28,7 @@ Native Hermes plugin providing StringRay framework integration — quality gates
|
|
|
28
28
|
├── __init__.py # Plugin registration, hooks, slash commands
|
|
29
29
|
├── tools.py # 4 tool handlers (validate, codex_check, health, hooks)
|
|
30
30
|
├── schemas.py # JSON schemas the LLM sees
|
|
31
|
-
├── bridge.mjs # Node.js bridge to compiled
|
|
31
|
+
├── bridge.mjs # Node.js bridge to compiled 0xRay framework
|
|
32
32
|
├── plugin.yaml # Plugin metadata (name, version, tools, hooks)
|
|
33
33
|
├── types.py # TypeScript-equivalent type definitions
|
|
34
34
|
├── after-install.md # Post-install instructions
|
|
@@ -43,7 +43,7 @@ Native Hermes plugin providing StringRay framework integration — quality gates
|
|
|
43
43
|
|
|
44
44
|
**Fallback:** When bridge is unavailable, tools fall back to `npx 0xray` CLI commands.
|
|
45
45
|
|
|
46
|
-
**Config path resolution:** `STRRAY_CONFIG_DIR/` > `.
|
|
46
|
+
**Config path resolution:** `STRRAY_CONFIG_DIR/` > `.xray/` > `.opencode/xray/` > built-in defaults.
|
|
47
47
|
|
|
48
48
|
## 4 Tools
|
|
49
49
|
|
|
@@ -90,7 +90,7 @@ Returns: framework status, version, component availability, node version.
|
|
|
90
90
|
|
|
91
91
|
### strray_hooks
|
|
92
92
|
|
|
93
|
-
Manage
|
|
93
|
+
Manage 0xRay git hooks (install, uninstall, list, status).
|
|
94
94
|
|
|
95
95
|
```
|
|
96
96
|
strray_hooks(action="install")
|
|
@@ -122,7 +122,7 @@ Fires before ANY tool executes:
|
|
|
122
122
|
1. Tracks session stats
|
|
123
123
|
2. Logs tool-start event to `logs/framework/plugin-tool-events.log`
|
|
124
124
|
3. For code-producing tools (write_file, patch, execute_code, write, edit): runs quality gate + pre-processors via bridge
|
|
125
|
-
4. For other tools: nudges when a
|
|
125
|
+
4. For other tools: nudges when a 0xRay MCP alternative exists (e.g., grep → search_codebase, eslint → strray_lint)
|
|
126
126
|
|
|
127
127
|
### post_tool_call
|
|
128
128
|
|
|
@@ -164,7 +164,7 @@ All logs go to `logs/framework/` in the project root:
|
|
|
164
164
|
|
|
165
165
|
| User Says | Tool / Command |
|
|
166
166
|
|----------|---------------|
|
|
167
|
-
| "Is
|
|
167
|
+
| "Is 0xRay working?" | `strray_health()` or `/strray status` |
|
|
168
168
|
| "Check these files before I commit" | `strray_validate(files=[...], operation="commit")` |
|
|
169
169
|
| "Is this code codex compliant?" | `strray_codex_check(code=..., operation="create")` |
|
|
170
170
|
| "Set up git hooks" | `strray_hooks(action="install")` |
|
|
@@ -96,7 +96,7 @@ codex_terms: [5, 7, 32] # Related Codex term numbers
|
|
|
96
96
|
```markdown
|
|
97
97
|
## What Next?
|
|
98
98
|
|
|
99
|
-
- Related Codex terms: [codex.json](../../.opencode/
|
|
99
|
+
- Related Codex terms: [codex.json](../../.opencode/xray/codex.json)
|
|
100
100
|
- Next story to write: [suggestion]
|
|
101
101
|
```
|
|
102
102
|
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: xray-orchestrator
|
|
3
|
+
description: |
|
|
4
|
+
Main orchestration skill for xray agents.
|
|
5
|
+
Provides commands to coordinate agent work and invoke xray APIs
|
|
6
|
+
through the local HTTP API server.
|
|
7
|
+
metadata:
|
|
8
|
+
openclaw:
|
|
9
|
+
primaryEnv: XRAY_API_KEY
|
|
10
|
+
emoji: 🤖
|
|
11
|
+
author: xray
|
|
12
|
+
tags:
|
|
13
|
+
- ai
|
|
14
|
+
- orchestration
|
|
15
|
+
- agent
|
|
16
|
+
user-invocable: true
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
# xray Orchestrator Commands
|
|
20
|
+
|
|
21
|
+
## /xray
|
|
22
|
+
|
|
23
|
+
Display xray status and available commands.
|
|
24
|
+
|
|
25
|
+
**Usage:** `/xray`
|
|
26
|
+
|
|
27
|
+
**Example:**
|
|
28
|
+
```
|
|
29
|
+
/xray
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## /xray-status
|
|
33
|
+
|
|
34
|
+
Get detailed status of xray integration including connection status.
|
|
35
|
+
|
|
36
|
+
**Usage:** `/xray-status`
|
|
37
|
+
|
|
38
|
+
**Example:**
|
|
39
|
+
```
|
|
40
|
+
/xray-status
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## /xray-analyze
|
|
44
|
+
|
|
45
|
+
Analyze code using xray code analysis capabilities.
|
|
46
|
+
|
|
47
|
+
**Usage:** `/xray-analyze <file-path>`
|
|
48
|
+
|
|
49
|
+
**Arguments:**
|
|
50
|
+
- `file-path`: Path to file to analyze (required)
|
|
51
|
+
|
|
52
|
+
**Example:**
|
|
53
|
+
```
|
|
54
|
+
/xray-analyze src/index.ts
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## /xray-code
|
|
58
|
+
|
|
59
|
+
Perform code review on a file.
|
|
60
|
+
|
|
61
|
+
**Usage:** `/xray-code <file-path> [options]`
|
|
62
|
+
|
|
63
|
+
**Arguments:**
|
|
64
|
+
- `file-path`: Path to file to review (required)
|
|
65
|
+
- `--fix`: Attempt to fix issues automatically (optional)
|
|
66
|
+
|
|
67
|
+
**Example:**
|
|
68
|
+
```
|
|
69
|
+
/xray-code src/utils/helper.ts
|
|
70
|
+
/xray-code src/utils/helper.ts --fix
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## /xray-file
|
|
74
|
+
|
|
75
|
+
Read file using xray file tools.
|
|
76
|
+
|
|
77
|
+
**Usage:** `/xray-file <file-path> [line-start:line-end]`
|
|
78
|
+
|
|
79
|
+
**Arguments:**
|
|
80
|
+
- `file-path`: Path to file to read (required)
|
|
81
|
+
- `line-start:line-end`: Line range to read (optional)
|
|
82
|
+
|
|
83
|
+
**Example:**
|
|
84
|
+
```
|
|
85
|
+
/xray-file src/index.ts
|
|
86
|
+
/xray-file src/index.ts 1:50
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## /xray-exec
|
|
90
|
+
|
|
91
|
+
Execute arbitrary xray command or script.
|
|
92
|
+
|
|
93
|
+
**Usage:** `/xray-exec <command>`
|
|
94
|
+
|
|
95
|
+
**Arguments:**
|
|
96
|
+
- `command`: Command to execute (required)
|
|
97
|
+
|
|
98
|
+
**Example:**
|
|
99
|
+
```
|
|
100
|
+
/xray-exec list files src/
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## /xray-help
|
|
104
|
+
|
|
105
|
+
Show this help message.
|
|
106
|
+
|
|
107
|
+
**Usage:** `/xray-help [command]`
|
|
108
|
+
|
|
109
|
+
**Arguments:**
|
|
110
|
+
- `command`: Specific command to get help for (optional)
|
|
111
|
+
|
|
112
|
+
**Example:**
|
|
113
|
+
```
|
|
114
|
+
/xray-help
|
|
115
|
+
/xray-help xray-analyze
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
# Implementation Notes
|
|
119
|
+
|
|
120
|
+
This skill acts as the main interface between OpenClaw channels and xray agents.
|
|
121
|
+
It processes user commands and forwards them to the xray API server running on localhost:18431.
|
|
122
|
+
|
|
123
|
+
## API Endpoints
|
|
124
|
+
|
|
125
|
+
- `POST /api/agent/invoke` - Invoke xray agent
|
|
126
|
+
- `GET /api/agent/status` - Get agent status
|
|
127
|
+
- `GET /health` - Health check
|
|
128
|
+
|
|
129
|
+
## Authentication
|
|
130
|
+
|
|
131
|
+
The skill reads the `XRAY_API_KEY` environment variable for authentication.
|
|
132
|
+
|
|
133
|
+
## Error Handling
|
|
134
|
+
|
|
135
|
+
All errors are caught and formatted as user-friendly messages.
|
|
136
|
+
Detailed error information is logged for debugging.
|
|
137
|
+
|
|
138
|
+
# Dependencies
|
|
139
|
+
|
|
140
|
+
- xray API server running on localhost:18431
|
|
141
|
+
- XRAY_API_KEY environment variable
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* xray Orchestrator Skill
|
|
3
|
+
*
|
|
4
|
+
* OpenClaw skill that provides xray orchestration commands.
|
|
5
|
+
*
|
|
6
|
+
* @version 1.0.0
|
|
7
|
+
* @since 2026-03-14
|
|
8
|
+
*/
|
|
9
|
+
export declare function handleSkill(input: string): Promise<string>;
|
|
10
|
+
declare const _default: {
|
|
11
|
+
handleSkill: typeof handleSkill;
|
|
12
|
+
};
|
|
13
|
+
export default _default;
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* xray Orchestrator Skill
|
|
3
|
+
*
|
|
4
|
+
* OpenClaw skill that provides xray orchestration commands.
|
|
5
|
+
*
|
|
6
|
+
* @version 1.0.0
|
|
7
|
+
* @since 2026-03-14
|
|
8
|
+
*/
|
|
9
|
+
const API_BASE = process.env.XRAY_API_URL || 'http://localhost:18431';
|
|
10
|
+
const API_KEY = process.env.XRAY_API_KEY;
|
|
11
|
+
function parseArgs(input) {
|
|
12
|
+
const parts = input.trim().split(/\s+/);
|
|
13
|
+
const command = parts[0] || '';
|
|
14
|
+
const args = {};
|
|
15
|
+
for (const part of parts.slice(1)) {
|
|
16
|
+
if (part.startsWith('--')) {
|
|
17
|
+
const key = part.slice(2);
|
|
18
|
+
args[key] = true;
|
|
19
|
+
}
|
|
20
|
+
else if (part.includes(':')) {
|
|
21
|
+
const colonIdx = part.indexOf(':');
|
|
22
|
+
const key = part.slice(0, colonIdx);
|
|
23
|
+
const value = part.slice(colonIdx + 1);
|
|
24
|
+
if (key && value)
|
|
25
|
+
args[key] = value;
|
|
26
|
+
}
|
|
27
|
+
else if (!args._) {
|
|
28
|
+
args._ = [];
|
|
29
|
+
args._.push(part);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
args._.push(part);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return { command, args };
|
|
36
|
+
}
|
|
37
|
+
async function callAPI(endpoint, data) {
|
|
38
|
+
const headers = {
|
|
39
|
+
'Content-Type': 'application/json',
|
|
40
|
+
};
|
|
41
|
+
if (API_KEY) {
|
|
42
|
+
headers['Authorization'] = `Bearer ${API_KEY}`;
|
|
43
|
+
}
|
|
44
|
+
const response = await fetch(`${API_BASE}${endpoint}`, {
|
|
45
|
+
method: data ? 'POST' : 'GET',
|
|
46
|
+
headers,
|
|
47
|
+
body: data ? JSON.stringify(data) : null,
|
|
48
|
+
});
|
|
49
|
+
if (!response.ok) {
|
|
50
|
+
const error = await response.json().catch(() => ({ error: 'Unknown error' }));
|
|
51
|
+
throw new Error(error.error || `HTTP ${response.status}`);
|
|
52
|
+
}
|
|
53
|
+
return response.json();
|
|
54
|
+
}
|
|
55
|
+
export async function handleSkill(input) {
|
|
56
|
+
const { command, args } = parseArgs(input);
|
|
57
|
+
try {
|
|
58
|
+
switch (command.toLowerCase()) {
|
|
59
|
+
// xray primary
|
|
60
|
+
case 'xray':
|
|
61
|
+
case 'xray-status':
|
|
62
|
+
return await handleStatus();
|
|
63
|
+
case 'xray-analyze':
|
|
64
|
+
return await handleAnalyze(args);
|
|
65
|
+
case 'xray-code':
|
|
66
|
+
return await handleCodeReview(args);
|
|
67
|
+
case 'xray-file':
|
|
68
|
+
return await handleFileRead(args);
|
|
69
|
+
case 'xray-exec':
|
|
70
|
+
return await handleExec(args);
|
|
71
|
+
case 'xray-help':
|
|
72
|
+
return handleHelp(args._);
|
|
73
|
+
default:
|
|
74
|
+
return formatHelp();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
79
|
+
return `❌ Error: ${message}`;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
async function handleStatus() {
|
|
83
|
+
const health = await callAPI('/health');
|
|
84
|
+
return `🤖 xray Status
|
|
85
|
+
|
|
86
|
+
• Status: ${health.status}
|
|
87
|
+
• Version: ${health.version}
|
|
88
|
+
• Uptime: ${formatUptime(health.uptime)}
|
|
89
|
+
|
|
90
|
+
Use /xray-help for available commands.`;
|
|
91
|
+
}
|
|
92
|
+
async function handleAnalyze(args) {
|
|
93
|
+
const filePath = args._?.[0];
|
|
94
|
+
if (!filePath) {
|
|
95
|
+
return '❌ Usage: /xray-analyze <file-path>';
|
|
96
|
+
}
|
|
97
|
+
const result = await callAPI('/api/agent/invoke', {
|
|
98
|
+
command: 'analyze',
|
|
99
|
+
args: { filePath },
|
|
100
|
+
});
|
|
101
|
+
if (!result.success) {
|
|
102
|
+
return `❌ Analysis failed: ${result.error}`;
|
|
103
|
+
}
|
|
104
|
+
return `✅ Analysis complete for ${filePath}\n\n${JSON.stringify(result.result, null, 2)}`;
|
|
105
|
+
}
|
|
106
|
+
async function handleCodeReview(args) {
|
|
107
|
+
const filePath = args._?.[0];
|
|
108
|
+
const fix = args.fix === true;
|
|
109
|
+
if (!filePath) {
|
|
110
|
+
return '❌ Usage: /xray-code <file-path> [--fix]';
|
|
111
|
+
}
|
|
112
|
+
const result = await callAPI('/api/agent/invoke', {
|
|
113
|
+
command: 'code-review',
|
|
114
|
+
args: { filePath, fix },
|
|
115
|
+
});
|
|
116
|
+
if (!result.success) {
|
|
117
|
+
return `❌ Code review failed: ${result.error}`;
|
|
118
|
+
}
|
|
119
|
+
return `✅ Code review complete for ${filePath}\n\n${JSON.stringify(result.result, null, 2)}`;
|
|
120
|
+
}
|
|
121
|
+
async function handleFileRead(args) {
|
|
122
|
+
const rest = args._;
|
|
123
|
+
const filePath = rest?.[0];
|
|
124
|
+
const range = rest?.[1];
|
|
125
|
+
if (!filePath) {
|
|
126
|
+
return '❌ Usage: /xray-file <file-path> [line-start:line-end]';
|
|
127
|
+
}
|
|
128
|
+
let lineRange;
|
|
129
|
+
if (range?.includes(':')) {
|
|
130
|
+
const [rawStart, rawEnd] = range.split(':');
|
|
131
|
+
lineRange = {};
|
|
132
|
+
if (rawStart)
|
|
133
|
+
lineRange.start = Number(rawStart);
|
|
134
|
+
if (rawEnd)
|
|
135
|
+
lineRange.end = Number(rawEnd);
|
|
136
|
+
}
|
|
137
|
+
const result = await callAPI('/api/agent/invoke', {
|
|
138
|
+
command: 'read',
|
|
139
|
+
args: { filePath, ...lineRange },
|
|
140
|
+
});
|
|
141
|
+
if (!result.success) {
|
|
142
|
+
return `❌ File read failed: ${result.error}`;
|
|
143
|
+
}
|
|
144
|
+
return `📄 ${filePath}\n\`\`\`\n${result.result}\n\`\`\``;
|
|
145
|
+
}
|
|
146
|
+
async function handleExec(args) {
|
|
147
|
+
const command = args._?.[0];
|
|
148
|
+
if (!command) {
|
|
149
|
+
return '❌ Usage: /xray-exec <command>';
|
|
150
|
+
}
|
|
151
|
+
const result = await callAPI('/api/agent/invoke', {
|
|
152
|
+
command: 'exec',
|
|
153
|
+
args: { command },
|
|
154
|
+
});
|
|
155
|
+
if (!result.success) {
|
|
156
|
+
return `❌ Execution failed: ${result.error}`;
|
|
157
|
+
}
|
|
158
|
+
return `✅ Command executed\n\n${JSON.stringify(result.result, null, 2)}`;
|
|
159
|
+
}
|
|
160
|
+
function handleHelp(command) {
|
|
161
|
+
if (command) {
|
|
162
|
+
switch (command) {
|
|
163
|
+
case 'xray-analyze':
|
|
164
|
+
return `📖 /xray-analyze <file-path>
|
|
165
|
+
|
|
166
|
+
Analyze code in a file.
|
|
167
|
+
|
|
168
|
+
Example: /xray-analyze src/index.ts`;
|
|
169
|
+
case 'xray-code':
|
|
170
|
+
return `📖 /xray-code <file-path> [--fix]
|
|
171
|
+
|
|
172
|
+
Perform code review on a file.
|
|
173
|
+
Use --fix to attempt automatic fixes.
|
|
174
|
+
|
|
175
|
+
Example: /xray-code src/utils/helper.ts
|
|
176
|
+
Example: /xray-code src/utils/helper.ts --fix`;
|
|
177
|
+
case 'xray-file':
|
|
178
|
+
return `📖 /xray-file <file-path> [line-start:line-end]
|
|
179
|
+
|
|
180
|
+
Read a file.
|
|
181
|
+
Optionally specify line range.
|
|
182
|
+
|
|
183
|
+
Example: /xray-file src/index.ts
|
|
184
|
+
Example: /xray-file src/index.ts 1:50`;
|
|
185
|
+
case 'xray-exec':
|
|
186
|
+
return `📖 /xray-exec <command>
|
|
187
|
+
|
|
188
|
+
Execute an arbitrary command.
|
|
189
|
+
|
|
190
|
+
Example: /xray-exec list files src/`;
|
|
191
|
+
default:
|
|
192
|
+
return `Unknown command: ${command}`;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
return formatHelp();
|
|
196
|
+
}
|
|
197
|
+
function formatHelp() {
|
|
198
|
+
return `🤖 xray Orchestrator
|
|
199
|
+
|
|
200
|
+
Available Commands:
|
|
201
|
+
• /xray - Show status
|
|
202
|
+
• /xray-analyze <file> - Analyze code
|
|
203
|
+
• /xray-code <file> [--fix] - Code review
|
|
204
|
+
• /xray-file <file> [lines] - Read file
|
|
205
|
+
• /xray-exec <command> - Execute command
|
|
206
|
+
• /xray-help [command] - Show help
|
|
207
|
+
|
|
208
|
+
Use /xray-help <command> for detailed usage.`;
|
|
209
|
+
}
|
|
210
|
+
function formatUptime(ms) {
|
|
211
|
+
const seconds = Math.floor(ms / 1000);
|
|
212
|
+
const minutes = Math.floor(seconds / 60);
|
|
213
|
+
const hours = Math.floor(minutes / 60);
|
|
214
|
+
const days = Math.floor(hours / 24);
|
|
215
|
+
if (days > 0)
|
|
216
|
+
return `${days}d ${hours % 24}h`;
|
|
217
|
+
if (hours > 0)
|
|
218
|
+
return `${hours}h ${minutes % 60}m`;
|
|
219
|
+
if (minutes > 0)
|
|
220
|
+
return `${minutes}m`;
|
|
221
|
+
return `${seconds}s`;
|
|
222
|
+
}
|
|
223
|
+
// Export for OpenClaw
|
|
224
|
+
export default { handleSkill };
|
package/dist/state/index.js
CHANGED
|
@@ -4,4 +4,5 @@ export * from "./state-manager.js";
|
|
|
4
4
|
export * from "./context-providers.js";
|
|
5
5
|
export * from "./state-types.js";
|
|
6
6
|
// Re-export commonly used state utilities
|
|
7
|
-
export {
|
|
7
|
+
export { XrayStateManager } from "./state-manager.js";
|
|
8
|
+
export { XrayStateManager as StringRayStateManager } from "./state-manager.js";
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export interface StateManager {
|
|
2
|
+
get: <T>(key: string) => T | undefined;
|
|
3
|
+
set: <T>(key: string, value: T) => void;
|
|
4
|
+
clear: (key: string) => void;
|
|
5
|
+
}
|
|
6
|
+
export declare class XrayStateManager implements StateManager {
|
|
7
|
+
private store;
|
|
8
|
+
private persistencePath;
|
|
9
|
+
private persistenceEnabled;
|
|
10
|
+
private writeQueue;
|
|
11
|
+
private initialized;
|
|
12
|
+
private earlyOperationsQueue;
|
|
13
|
+
static readonly VERSION = "1.5.2";
|
|
14
|
+
constructor(persistencePath?: string | undefined, persistenceEnabled?: boolean);
|
|
15
|
+
private initializePersistence;
|
|
16
|
+
private persistToDisk;
|
|
17
|
+
private isSerializable;
|
|
18
|
+
private schedulePersistence;
|
|
19
|
+
get<T>(key: string): T | undefined;
|
|
20
|
+
set<T>(key: string, value: T): void;
|
|
21
|
+
clear(key: string): void;
|
|
22
|
+
clearAll(): void;
|
|
23
|
+
isPersistenceEnabled(): boolean;
|
|
24
|
+
getPersistenceStats(): {
|
|
25
|
+
enabled: boolean;
|
|
26
|
+
initialized: boolean;
|
|
27
|
+
keysInMemory: number;
|
|
28
|
+
pendingWrites: number;
|
|
29
|
+
};
|
|
30
|
+
getStateVersion(): string;
|
|
31
|
+
getAuditLog(): Array<{
|
|
32
|
+
timestamp: Date;
|
|
33
|
+
operation: string;
|
|
34
|
+
key: string;
|
|
35
|
+
}>;
|
|
36
|
+
resolveConflict(conflict: {
|
|
37
|
+
key: string;
|
|
38
|
+
value1: unknown;
|
|
39
|
+
value2: unknown;
|
|
40
|
+
}): unknown;
|
|
41
|
+
}
|
|
42
|
+
export { XrayStateManager as StringRayStateManager, XrayStateManager as StrRayStateManager };
|