0xray 3.1.0 → 3.1.1
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/.gitignore.default +59 -0
- package/.mcp.json +35 -0
- package/.opencode/codex.codex +1 -1
- package/.opencode/commands/dependency-audit.md +3 -3
- package/.opencode/commands/summary-logger.md +4 -4
- package/.opencode/enforcer-config.json +2 -2
- package/.opencode/hooks/post-commit +1 -1
- package/.opencode/init.sh +6 -0
- package/.plugin/plugin.json +11 -0
- package/AGENTS-consumer.md +46 -0
- package/AGENTS.md +8 -8
- package/LICENSE +1 -1
- package/README.md +8 -8
- package/SKILLS.md +140 -0
- package/dist/.gitignore.default +59 -0
- package/dist/AGENTS.md +8 -8
- package/dist/CHANGELOG.md +25 -0
- package/dist/LICENSE +1 -1
- package/dist/README.md +8 -8
- package/dist/SKILLS.md +140 -0
- package/dist/agents/index.js +3 -1
- package/dist/agents/registry.js +13 -0
- package/dist/analytics/routing-refiner.js +1 -1
- package/dist/architect/architectural-integrity.js +3 -3
- package/dist/benchmark/performance-benchmark.js +1 -2
- package/dist/cli/commands/antigravity-status.js +23 -23
- package/dist/cli/commands/credible-init.js +1 -1
- package/dist/cli/commands/hermes-install.js +8 -0
- package/dist/cli/commands/mcp-install.js +1 -1
- package/dist/cli/commands/openclaw-install.js +9 -0
- package/dist/cli/commands/opencode-install.js +22 -0
- package/dist/cli/commands/skill-install.js +39 -2
- package/dist/cli/commands/status.js +5 -0
- package/dist/cli/commands/storyteller.js +1 -1
- package/dist/cli/index.js +12 -6
- package/dist/core/activity-logger.js +4 -4
- package/dist/core/agent-spawn-gate.js +1 -1
- package/dist/core/boot-orchestrator.js +12 -13
- package/dist/core/bridge.mjs +4 -4
- package/dist/core/codex-formatter.js +1 -2
- package/dist/core/codex-injector.js +3 -3
- package/dist/core/config-loader.js +1 -2
- package/dist/core/config-paths.js +30 -23
- package/dist/core/context-loader.js +0 -3
- package/dist/core/features-config.js +1 -1
- package/dist/core/index.js +2 -2
- package/dist/core/logging-config.js +7 -7
- package/dist/core/orchestrator.js +1 -1
- package/dist/core/xray-activation.js +3 -4
- package/dist/delegation/agent-delegator.js +2 -2
- package/dist/enforcement/enforcer-tools.js +2 -2
- package/dist/enforcement/loaders/codex-loader.js +2 -2
- package/dist/execution/opencode-cli-invoker.js +1 -1
- package/dist/governance/governance-service.js +1 -1
- package/dist/governance/llm-governance-provider.js +14 -1
- package/dist/index.js +3 -5
- package/dist/inference/inference-cycle.js +11 -11
- package/dist/integrations/base/README.md +1 -1
- package/dist/integrations/enforcement-gate.js +2 -2
- package/dist/integrations/governance/index.js +1 -1
- package/dist/integrations/grok/grok-cli.js +20 -6
- package/dist/integrations/grok/hooks/pre-tool-use.js +3 -3
- package/dist/integrations/grok/plugin/0xray/.mcp.json +16 -4
- package/dist/integrations/grok/plugin/0xray/hooks/hooks.json +2 -2
- package/dist/integrations/hermes-agent/__init__.py +25 -14
- package/dist/integrations/hermes-agent/bridge.mjs +39 -4
- package/dist/integrations/hermes-agent/schemas.py +49 -0
- package/dist/integrations/hermes-agent/test_plugin.py +7 -7
- package/dist/integrations/hermes-agent/tools.py +107 -3
- package/dist/integrations/openclaw/README.md +6 -6
- package/dist/integrations/openclaw/config.js +1 -1
- package/dist/integrations/openclaw/index.js +2 -2
- package/dist/integrations/openclaw/types.js +3 -3
- package/dist/integrations/plugins/plugin-integration.js +1 -1
- package/dist/integrations/plugins/plugin-registry.js +1 -1
- package/dist/mcps/architect-tools.server.js +3 -2
- package/dist/mcps/auto-format.server.js +2 -2
- package/dist/mcps/boot-orchestrator.server.js +2 -2
- package/dist/mcps/config/config-loader.js +40 -9
- package/dist/mcps/enforcer-tools.server.js +2 -2
- package/dist/mcps/estimation.server.js +3 -2
- package/dist/mcps/framework-compliance-audit.server.js +2 -2
- package/dist/mcps/framework-help.server.js +3 -2
- package/dist/mcps/governance.server.js +8 -4
- package/dist/mcps/knowledge-skills/api-design.server.js +3 -2
- package/dist/mcps/knowledge-skills/architecture-patterns.server.js +3 -2
- package/dist/mcps/knowledge-skills/bug-triage-specialist.server.js +3 -3
- package/dist/mcps/knowledge-skills/code-analyzer.server.js +2 -2
- package/dist/mcps/knowledge-skills/code-review.server.js +2 -2
- package/dist/mcps/knowledge-skills/content-creator.server.js +3 -3
- package/dist/mcps/knowledge-skills/database-design.server.js +2 -2
- package/dist/mcps/knowledge-skills/devops-deployment.server.js +3 -2
- package/dist/mcps/knowledge-skills/git-workflow.server.js +3 -2
- package/dist/mcps/knowledge-skills/growth-strategist.server.js +3 -3
- package/dist/mcps/knowledge-skills/log-monitor.server.js +3 -3
- package/dist/mcps/knowledge-skills/mobile-development.server.js +3 -3
- package/dist/mcps/knowledge-skills/multimodal-looker.server.js +3 -3
- package/dist/mcps/knowledge-skills/performance-optimization.server.js +2 -2
- package/dist/mcps/knowledge-skills/project-analysis.server.js +2 -2
- package/dist/mcps/knowledge-skills/refactoring-strategies.server.js +3 -2
- package/dist/mcps/knowledge-skills/security-audit.server.js +2 -2
- package/dist/mcps/knowledge-skills/seo-consultant.server.js +3 -2
- package/dist/mcps/knowledge-skills/session-management.server.js +3 -2
- package/dist/mcps/knowledge-skills/skill-invocation.server.js +105 -3
- package/dist/mcps/knowledge-skills/strategist.server.js +3 -3
- package/dist/mcps/knowledge-skills/tech-writer.server.js +3 -3
- package/dist/mcps/knowledge-skills/testing-best-practices.server.js +3 -2
- package/dist/mcps/knowledge-skills/testing-strategy.server.js +2 -2
- package/dist/mcps/knowledge-skills/ui-ux-design.server.js +3 -2
- package/dist/mcps/lint.server.js +2 -2
- package/dist/mcps/model-health-check.server.js +3 -2
- package/dist/mcps/orchestrator/server.js +2 -1
- package/dist/mcps/orchestrator.server.js +2 -1
- package/dist/mcps/performance-analysis.server.js +2 -2
- package/dist/mcps/processor-pipeline.server.js +3 -2
- package/dist/mcps/registry.json +1 -1
- package/dist/mcps/researcher.server.js +2 -2
- package/dist/mcps/security-scan.server.js +2 -2
- package/dist/mcps/state-manager.server.js +5 -5
- package/dist/metrics/agent-metrics.js +1 -1
- package/dist/orchestrator/enhanced-multi-agent-orchestrator.js +2 -2
- package/dist/orchestrator/intelligent-commit-batcher.js +0 -1
- package/dist/orchestrator/multi-agent-orchestration-coordinator.js +1 -1
- package/dist/orchestrator/orchestrator.js +1 -2
- package/dist/orchestrator/universal-registry-bridge.js +1 -1
- package/dist/postprocessor/PostProcessor.js +5 -5
- package/dist/postprocessor/services/RegressionAnalysisService.js +2 -2
- package/dist/postprocessor/triggers/GitHookTrigger.js +4 -4
- package/dist/processors/implementations/inference-improvement-processor.js +0 -1
- package/dist/processors/implementations/publish-preflight-processor.js +0 -1
- package/dist/processors/implementations/session-summary-processor.js +2 -2
- package/dist/processors/implementations/storytelling-trigger-processor.js +0 -1
- 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/report-formatter.js +1 -1
- package/dist/scripts/activate-kernel-pipeline.js +2 -2
- package/dist/scripts/pre-command +1 -1
- package/dist/services/inference-tuner.js +1 -1
- package/dist/skills/api-design/SKILL.md +1 -1
- package/dist/skills/architect-tools/SKILL.md +1 -1
- package/dist/skills/architecture-patterns/SKILL.md +1 -1
- package/dist/skills/auto-format/SKILL.md +1 -1
- package/dist/skills/boot-orchestrator/SKILL.md +1 -1
- package/dist/skills/bug-triage/SKILL.md +1 -1
- package/dist/skills/code-analyzer/SKILL.md +1 -1
- package/dist/skills/code-review/SKILL.md +1 -1
- package/dist/skills/enforcer/SKILL.md +1 -1
- package/dist/skills/framework-compliance-audit/SKILL.md +1 -1
- package/dist/skills/git-workflow/SKILL.md +1 -1
- package/dist/skills/hermes-agent/SKILL.md +2 -2
- package/dist/skills/inference-improve/SKILL.md +1 -1
- package/dist/skills/lint/SKILL.md +1 -1
- package/dist/skills/log-monitor/SKILL.md +1 -1
- package/dist/skills/model-health-check/SKILL.md +1 -1
- package/dist/skills/multimodal-looker/SKILL.md +1 -1
- package/dist/skills/orchestrator/SKILL.md +1 -1
- package/dist/skills/performance-analysis/SKILL.md +1 -1
- package/dist/skills/performance-optimization/SKILL.md +1 -1
- package/dist/skills/processor-pipeline/SKILL.md +1 -1
- package/dist/skills/project-analysis/SKILL.md +1 -1
- package/dist/skills/refactoring-strategies/SKILL.md +1 -1
- package/dist/skills/registry.json +1 -1
- package/dist/skills/researcher/SKILL.md +1 -1
- package/dist/skills/security-audit/SKILL.md +1 -1
- package/dist/skills/security-scan/SKILL.md +1 -1
- package/dist/skills/session-management/SKILL.md +1 -1
- package/dist/skills/state-manager/SKILL.md +1 -1
- package/dist/skills/storyteller/SKILL.md +1 -1
- package/dist/skills/testing-best-practices/SKILL.md +1 -1
- package/dist/skills/testing-strategy/SKILL.md +1 -1
- package/dist/skills/ui-ux-design/SKILL.md +1 -1
- package/dist/state/index.js +0 -1
- package/dist/state/state-manager.js +1 -2
- package/dist/utils/import-resolver.js +1 -1
- package/dist/utils/path-resolver.js +2 -2
- package/package.json +10 -3
- package/scripts/hooks/pre-command +1 -1
- package/scripts/hooks/run-hook.js +2 -2
- package/scripts/node/auto-reflection-generator.mjs +30 -36
- package/scripts/node/govern-reflection.mjs +1 -1
- package/scripts/node/postinstall.cjs +37 -2
- package/scripts/node/setup-xai-oauth.mjs +244 -0
- package/scripts/node/universal-version-manager.js +8 -8
- package/scripts/node/version-manager.mjs +1 -1
- package/src/integrations/grok/plugin/0xray/.mcp.json +16 -4
- package/src/integrations/grok/plugin/0xray/hooks/hooks.json +2 -2
- package/src/mcps/architect-tools.server.ts +2 -2
- package/src/mcps/auto-format.server.ts +2 -2
- package/src/mcps/boot-orchestrator.server.ts +2 -2
- package/src/mcps/config/__tests__/config-loader.test.ts +29 -33
- package/src/mcps/config/config-loader.ts +50 -11
- package/src/mcps/enforcer-tools.server.ts +2 -2
- package/src/mcps/estimation.server.ts +3 -2
- package/src/mcps/framework-compliance-audit.server.ts +2 -2
- package/src/mcps/framework-help.server.ts +3 -2
- package/src/mcps/governance.server.ts +8 -3
- package/src/mcps/knowledge-skills/api-design.server.ts +3 -2
- package/src/mcps/knowledge-skills/architecture-patterns.server.ts +2 -2
- package/src/mcps/knowledge-skills/bug-triage-specialist.server.ts +2 -2
- package/src/mcps/knowledge-skills/code-analyzer.server.ts +2 -2
- package/src/mcps/knowledge-skills/code-review.server.ts +2 -2
- package/src/mcps/knowledge-skills/content-creator.server.ts +3 -3
- package/src/mcps/knowledge-skills/database-design.server.ts +2 -2
- package/src/mcps/knowledge-skills/devops-deployment.server.ts +3 -2
- package/src/mcps/knowledge-skills/git-workflow.server.ts +3 -2
- package/src/mcps/knowledge-skills/growth-strategist.server.ts +3 -3
- package/src/mcps/knowledge-skills/log-monitor.server.ts +3 -3
- package/src/mcps/knowledge-skills/mobile-development.server.ts +3 -3
- package/src/mcps/knowledge-skills/multimodal-looker.server.ts +3 -3
- package/src/mcps/knowledge-skills/performance-optimization.server.ts +2 -2
- package/src/mcps/knowledge-skills/project-analysis.server.ts +2 -2
- package/src/mcps/knowledge-skills/refactoring-strategies.server.ts +3 -2
- package/src/mcps/knowledge-skills/security-audit.server.ts +2 -2
- package/src/mcps/knowledge-skills/seo-consultant.server.ts +3 -2
- package/src/mcps/knowledge-skills/session-management.server.ts +3 -2
- package/src/mcps/knowledge-skills/skill-invocation.server.ts +113 -3
- package/src/mcps/knowledge-skills/strategist.server.ts +3 -3
- package/src/mcps/knowledge-skills/tech-writer.server.ts +3 -3
- package/src/mcps/knowledge-skills/testing-best-practices.server.ts +3 -2
- package/src/mcps/knowledge-skills/testing-strategy.server.ts +2 -2
- package/src/mcps/knowledge-skills/ui-ux-design.server.ts +3 -2
- package/src/mcps/lint.server.ts +2 -2
- package/src/mcps/model-health-check.server.ts +2 -2
- package/src/mcps/orchestrator/server.ts +2 -1
- package/src/mcps/orchestrator.server.ts +2 -1
- package/src/mcps/performance-analysis.server.ts +2 -2
- package/src/mcps/processor-pipeline.server.ts +3 -2
- package/src/mcps/registry.json +1 -1
- package/src/mcps/researcher.server.ts +2 -2
- package/src/mcps/security-scan.server.ts +2 -2
- package/src/mcps/state-manager.server.ts +5 -5
- package/src/opencode/codex.codex +1 -1
- package/src/opencode/commands/dependency-audit.md +3 -3
- package/src/opencode/commands/summary-logger.md +4 -4
- package/src/opencode/enforcer-config.json +2 -2
- package/src/skills/api-design/SKILL.md +1 -1
- package/src/skills/architect-tools/SKILL.md +1 -1
- package/src/skills/architecture-patterns/SKILL.md +1 -1
- package/src/skills/auto-format/SKILL.md +1 -1
- package/src/skills/boot-orchestrator/SKILL.md +1 -1
- package/src/skills/bug-triage/SKILL.md +1 -1
- package/src/skills/code-analyzer/SKILL.md +1 -1
- package/src/skills/code-review/SKILL.md +1 -1
- package/src/skills/enforcer/SKILL.md +1 -1
- package/src/skills/framework-compliance-audit/SKILL.md +1 -1
- package/src/skills/git-workflow/SKILL.md +1 -1
- package/src/skills/hermes-agent/SKILL.md +2 -2
- package/src/skills/inference-improve/SKILL.md +1 -1
- package/src/skills/lint/SKILL.md +1 -1
- package/src/skills/log-monitor/SKILL.md +1 -1
- package/src/skills/model-health-check/SKILL.md +1 -1
- package/src/skills/multimodal-looker/SKILL.md +1 -1
- package/src/skills/orchestrator/SKILL.md +1 -1
- package/src/skills/performance-analysis/SKILL.md +1 -1
- package/src/skills/performance-optimization/SKILL.md +1 -1
- package/src/skills/processor-pipeline/SKILL.md +1 -1
- package/src/skills/project-analysis/SKILL.md +1 -1
- package/src/skills/refactoring-strategies/SKILL.md +1 -1
- package/src/skills/registry.json +1 -1
- package/src/skills/researcher/SKILL.md +1 -1
- package/src/skills/security-audit/SKILL.md +1 -1
- package/src/skills/security-scan/SKILL.md +1 -1
- package/src/skills/session-management/SKILL.md +1 -1
- package/src/skills/state-manager/SKILL.md +1 -1
- package/src/skills/storyteller/SKILL.md +1 -1
- package/src/skills/testing-best-practices/SKILL.md +1 -1
- package/src/skills/testing-strategy/SKILL.md +1 -1
- package/src/skills/ui-ux-design/SKILL.md +1 -1
- package/xray/agents_template.md +46 -0
- package/xray/codex.json +598 -0
- package/dist/plugin/xray-codex-injection.js +0 -857
- /package/dist/integrations/openclaw/hooks/{strray-hooks.js → xray-hooks.js} +0 -0
|
@@ -16,7 +16,7 @@ class XrayPerformanceAnalysisServer {
|
|
|
16
16
|
startTime;
|
|
17
17
|
constructor() {
|
|
18
18
|
this.server = new Server({
|
|
19
|
-
name: "performance-analysis", version: "1.
|
|
19
|
+
name: "performance-analysis", version: "3.1.0",
|
|
20
20
|
}, {
|
|
21
21
|
capabilities: {
|
|
22
22
|
tools: {},
|
|
@@ -512,7 +512,7 @@ ${results.recommendations.map((r) => `• 💡 ${r}`).join("\n") || "No recommen
|
|
|
512
512
|
}
|
|
513
513
|
}
|
|
514
514
|
// Start the server if run directly
|
|
515
|
-
if (import.meta.url === `file://${process.argv[1]}`) {
|
|
515
|
+
if (import.meta.url === `file://${fs.realpathSync(process.argv[1])}`) {
|
|
516
516
|
const server = new XrayPerformanceAnalysisServer();
|
|
517
517
|
server.run().catch((error) => frameworkLogger.log("mcps/performance-analysis", "run", "error", { error: String(error) }));
|
|
518
518
|
}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
7
7
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
8
8
|
import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
9
|
+
import * as fs from "fs";
|
|
9
10
|
import { frameworkLogger } from "../core/framework-logger.js";
|
|
10
11
|
import { CodexLoader } from "../enforcement/loaders/codex-loader.js";
|
|
11
12
|
class XrayProcessorPipelineServer {
|
|
@@ -26,7 +27,7 @@ class XrayProcessorPipelineServer {
|
|
|
26
27
|
constructor() {
|
|
27
28
|
this.codexLoader = new CodexLoader();
|
|
28
29
|
this.server = new Server({
|
|
29
|
-
name: "processor-pipeline", version: "1.
|
|
30
|
+
name: "processor-pipeline", version: "3.1.0",
|
|
30
31
|
}, {
|
|
31
32
|
capabilities: {
|
|
32
33
|
tools: {},
|
|
@@ -554,7 +555,7 @@ ${complianceResults.actions.map((a) => `• 🔧 ${a}`).join("\n") || "None requ
|
|
|
554
555
|
}
|
|
555
556
|
}
|
|
556
557
|
// Start the server if run directly
|
|
557
|
-
if (import.meta.url === `file://${process.argv[1]}`) {
|
|
558
|
+
if (import.meta.url === `file://${fs.realpathSync(process.argv[1])}`) {
|
|
558
559
|
const server = new XrayProcessorPipelineServer();
|
|
559
560
|
server.run().catch((error) => frameworkLogger.log("mcps/processor-pipeline", "run", "error", { error: String(error) }));
|
|
560
561
|
}
|
package/dist/mcps/registry.json
CHANGED
|
@@ -18,7 +18,7 @@ class XrayLibrarianServer {
|
|
|
18
18
|
server;
|
|
19
19
|
constructor() {
|
|
20
20
|
this.server = new Server({
|
|
21
|
-
name: "researcher", version: "1.
|
|
21
|
+
name: "researcher", version: "3.1.0",
|
|
22
22
|
}, {
|
|
23
23
|
capabilities: {
|
|
24
24
|
tools: {},
|
|
@@ -472,7 +472,7 @@ class XrayLibrarianServer {
|
|
|
472
472
|
}
|
|
473
473
|
}
|
|
474
474
|
// Run the server if this file is executed directly
|
|
475
|
-
if (import.meta.url === `file://${process.argv[1]}`) {
|
|
475
|
+
if (import.meta.url === `file://${fs.realpathSync(process.argv[1])}`) {
|
|
476
476
|
const server = new XrayLibrarianServer();
|
|
477
477
|
server.run().catch((error) => frameworkLogger.log("mcps/researcher", "run", "error", { error: String(error) }));
|
|
478
478
|
}
|
|
@@ -15,7 +15,7 @@ class XraySecurityScanServer {
|
|
|
15
15
|
server;
|
|
16
16
|
constructor() {
|
|
17
17
|
this.server = new Server({
|
|
18
|
-
name: "security-scan", version: "1.
|
|
18
|
+
name: "security-scan", version: "3.1.0",
|
|
19
19
|
}, {
|
|
20
20
|
capabilities: {
|
|
21
21
|
tools: {},
|
|
@@ -524,7 +524,7 @@ ${results.recommendations.map((r) => `• ${r}`).join("\n") || "No recommendatio
|
|
|
524
524
|
}
|
|
525
525
|
}
|
|
526
526
|
// Start the server if run directly
|
|
527
|
-
if (import.meta.url === `file://${process.argv[1]}`) {
|
|
527
|
+
if (import.meta.url === `file://${fs.realpathSync(process.argv[1])}`) {
|
|
528
528
|
const server = new XraySecurityScanServer();
|
|
529
529
|
server.run().catch((error) => frameworkLogger.log("mcps/security-scan", "run", "error", { error: String(error) }));
|
|
530
530
|
}
|
|
@@ -9,14 +9,14 @@ import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextpro
|
|
|
9
9
|
import fs from "fs";
|
|
10
10
|
import path from "path";
|
|
11
11
|
import { frameworkLogger, generateJobId } from "../core/framework-logger.js";
|
|
12
|
-
class
|
|
12
|
+
class XrayStateManagerServer {
|
|
13
13
|
server;
|
|
14
14
|
state = new Map();
|
|
15
15
|
stateFile;
|
|
16
16
|
backups = new Map();
|
|
17
17
|
constructor() {
|
|
18
18
|
this.server = new Server({
|
|
19
|
-
name: "state-manager", version: "1.
|
|
19
|
+
name: "state-manager", version: "3.1.0",
|
|
20
20
|
}, {
|
|
21
21
|
capabilities: {
|
|
22
22
|
tools: {},
|
|
@@ -630,8 +630,8 @@ ${results.repairedKeys.length > 0 ? `**Repaired Keys:**\n${results.repairedKeys.
|
|
|
630
630
|
}
|
|
631
631
|
}
|
|
632
632
|
// Start the server if run directly
|
|
633
|
-
if (import.meta.url === `file://${process.argv[1]}`) {
|
|
634
|
-
const server = new
|
|
633
|
+
if (import.meta.url === `file://${fs.realpathSync(process.argv[1])}`) {
|
|
634
|
+
const server = new XrayStateManagerServer();
|
|
635
635
|
server.run().catch((error) => frameworkLogger.log("mcps/state-manager", "run", "error", { error: String(error) }));
|
|
636
636
|
}
|
|
637
|
-
export {
|
|
637
|
+
export { XrayStateManagerServer };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Consumer runtime compat shim from prior
|
|
1
|
+
// Consumer runtime compat shim from prior 0xRay releases (1-line min per Scope Rule; primary xray paths + .xray fallbacks)
|
|
2
2
|
import { frameworkLogger } from "../core/framework-logger.js";
|
|
3
3
|
const DEFAULT_RETENTION_CONFIG = {
|
|
4
4
|
maxEntries: 10000,
|
|
@@ -6,7 +6,7 @@ import { XrayStateManager } from "../state/state-manager.js";
|
|
|
6
6
|
import { frameworkLogger } from "../core/framework-logger.js";
|
|
7
7
|
import { ComplexityAnalyzer, } from "../delegation/complexity-analyzer.js";
|
|
8
8
|
import { createAgentDelegator, } from "../delegation/agent-delegator.js";
|
|
9
|
-
import {
|
|
9
|
+
import { xrayConfigLoader } from "../core/config-loader.js";
|
|
10
10
|
import { agentSpawnGovernor } from "./agent-spawn-governor.js";
|
|
11
11
|
import { spawnGate } from "../core/agent-spawn-gate.js";
|
|
12
12
|
export class EnhancedMultiAgentOrchestrator {
|
|
@@ -19,7 +19,7 @@ export class EnhancedMultiAgentOrchestrator {
|
|
|
19
19
|
constructor(stateManager, isMainOrchestrator = false) {
|
|
20
20
|
this.stateManager = stateManager || new XrayStateManager();
|
|
21
21
|
this.complexityAnalyzer = new ComplexityAnalyzer();
|
|
22
|
-
this.agentDelegator = createAgentDelegator(this.stateManager,
|
|
22
|
+
this.agentDelegator = createAgentDelegator(this.stateManager, xrayConfigLoader);
|
|
23
23
|
this.state = {
|
|
24
24
|
activeAgents: new Map(),
|
|
25
25
|
pendingSpawns: [],
|
|
@@ -37,7 +37,6 @@ export class IntelligentCommitBatcher {
|
|
|
37
37
|
try {
|
|
38
38
|
const configPaths = [
|
|
39
39
|
path.join(process.cwd(), ".xray", "features.json"),
|
|
40
|
-
path.join(process.cwd(), ".opencode", "xray", "features.json"),
|
|
41
40
|
];
|
|
42
41
|
for (const configPath of configPaths) {
|
|
43
42
|
if (fs.existsSync(configPath)) {
|
|
@@ -13,7 +13,7 @@ import { createAgentDelegator } from "../delegation/agent-delegator.js";
|
|
|
13
13
|
import { XrayStateManager } from "../state/state-manager.js";
|
|
14
14
|
import { frameworkLogger } from "../core/framework-logger.js";
|
|
15
15
|
import { ComplexityAnalyzer } from "../delegation/complexity-analyzer.js";
|
|
16
|
-
import {
|
|
16
|
+
import { xrayConfigLoader } from "../core/config-loader.js";
|
|
17
17
|
export class MultiAgentOrchestrationCoordinator {
|
|
18
18
|
xrayOrchestrator;
|
|
19
19
|
enhancedOrchestrator;
|
|
@@ -37,7 +37,7 @@ export class XrayOrchestrator {
|
|
|
37
37
|
try {
|
|
38
38
|
const configPaths = [
|
|
39
39
|
".xray/features.json",
|
|
40
|
-
".
|
|
40
|
+
".xray/features.json",
|
|
41
41
|
];
|
|
42
42
|
for (const configPath of configPaths) {
|
|
43
43
|
if (fs.existsSync(configPath)) {
|
|
@@ -656,4 +656,3 @@ export class XrayOrchestrator {
|
|
|
656
656
|
// Export singleton instance
|
|
657
657
|
export const xrayOrchestrator = new XrayOrchestrator();
|
|
658
658
|
// Backward compatibility alias
|
|
659
|
-
export { XrayOrchestrator as StringRayOrchestrator };
|
|
@@ -208,7 +208,7 @@ export class PostProcessor {
|
|
|
208
208
|
const fs = await import("fs");
|
|
209
209
|
const path = await import("path");
|
|
210
210
|
try {
|
|
211
|
-
const configPath = resolveConfigPath("features.json") ?? path.join(process.cwd(), ".
|
|
211
|
+
const configPath = resolveConfigPath("features.json") ?? path.join(process.cwd(), ".xray", "features.json");
|
|
212
212
|
if (fs.existsSync(configPath)) {
|
|
213
213
|
const config = JSON.parse(fs.readFileSync(configPath, "utf-8"));
|
|
214
214
|
return config.processors || {};
|
|
@@ -333,8 +333,8 @@ export class PostProcessor {
|
|
|
333
333
|
}
|
|
334
334
|
async checkSystemIntegrity(context) {
|
|
335
335
|
// Check if all critical framework components are active
|
|
336
|
-
const stateManager = globalThis.
|
|
337
|
-
const postProcessor = globalThis.
|
|
336
|
+
const stateManager = globalThis.xrayStateManager;
|
|
337
|
+
const postProcessor = globalThis.xrayPostProcessor;
|
|
338
338
|
if (!stateManager) {
|
|
339
339
|
try {
|
|
340
340
|
const { XrayStateManager } = await import("../state/state-manager.js");
|
|
@@ -372,7 +372,7 @@ export class PostProcessor {
|
|
|
372
372
|
// Check for path resolution issues in committed files
|
|
373
373
|
// This would require reading the actual file contents from git
|
|
374
374
|
// For now, we verify that the framework's path resolution is working
|
|
375
|
-
const pathResolver = globalThis.
|
|
375
|
+
const pathResolver = globalThis.xrayPathResolver;
|
|
376
376
|
if (!pathResolver) {
|
|
377
377
|
return {
|
|
378
378
|
passed: true,
|
|
@@ -500,7 +500,7 @@ import { Config } from "./config/config.js";
|
|
|
500
500
|
|
|
501
501
|
**Solution A: Environment Variables (Simple)**
|
|
502
502
|
\`\`\`typescript
|
|
503
|
-
const AGENTS_PATH = process.env.
|
|
503
|
+
const AGENTS_PATH = process.env.XRAY_AGENTS_PATH || '../agents';
|
|
504
504
|
import { AgentConfig } from \`\${AGENTS_PATH}/code-reviewer.js\`;
|
|
505
505
|
\`\`\`
|
|
506
506
|
|
|
@@ -12,7 +12,7 @@ import { getKernel } from '../../core/kernel-patterns.js';
|
|
|
12
12
|
import { createAgentDelegator } from '../../delegation/agent-delegator.js';
|
|
13
13
|
import { frameworkLogger } from '../../core/framework-logger.js';
|
|
14
14
|
import { XrayStateManager } from '../../state/state-manager.js';
|
|
15
|
-
import {
|
|
15
|
+
import { xrayConfigLoader } from '../../core/config-loader.js';
|
|
16
16
|
/**
|
|
17
17
|
* Main service for systematic regression analysis
|
|
18
18
|
*/
|
|
@@ -95,7 +95,7 @@ export class RegressionAnalysisService {
|
|
|
95
95
|
};
|
|
96
96
|
// Create agent delegator for this operation
|
|
97
97
|
const stateManager = new XrayStateManager();
|
|
98
|
-
const agentDelegator = createAgentDelegator(stateManager,
|
|
98
|
+
const agentDelegator = createAgentDelegator(stateManager, xrayConfigLoader);
|
|
99
99
|
// Analyze delegation strategy
|
|
100
100
|
const analysis = await agentDelegator.analyzeDelegation(delegationRequest);
|
|
101
101
|
// Execute delegation
|
|
@@ -397,8 +397,8 @@ fi
|
|
|
397
397
|
(async () => {
|
|
398
398
|
try {
|
|
399
399
|
// Use dynamic import that works in both dev and consumer
|
|
400
|
-
const basePath = process.env.
|
|
401
|
-
const distPath = process.env.
|
|
400
|
+
const basePath = process.env.XRAY_BASE_PATH || '.';
|
|
401
|
+
const distPath = process.env.XRAY_DIST_PATH || 'dist';
|
|
402
402
|
// First archive logs (compress and rotate) before cleanup
|
|
403
403
|
const { archiveLogFiles } = await import(basePath + '/' + distPath + '/postprocessor/triggers/GitHookTrigger.js');
|
|
404
404
|
const archiveResult = await archiveLogFiles({
|
|
@@ -484,8 +484,8 @@ fi
|
|
|
484
484
|
node -e "
|
|
485
485
|
(async () => {
|
|
486
486
|
try {
|
|
487
|
-
const basePath = process.env.
|
|
488
|
-
const distPath = process.env.
|
|
487
|
+
const basePath = process.env.XRAY_BASE_PATH || '.';
|
|
488
|
+
const distPath = process.env.XRAY_DIST_PATH || 'dist';
|
|
489
489
|
const { HookMetricsCollector } = await import(basePath + '/' + distPath + '/postprocessor/validation/HookMetricsCollector.js');
|
|
490
490
|
const collector = new HookMetricsCollector();
|
|
491
491
|
collector.recordMetrics('post-push', \${DURATION_MS}, \${EXIT_CODE});
|
|
@@ -39,7 +39,6 @@ export class InferenceImprovementProcessor extends PostProcessor {
|
|
|
39
39
|
try {
|
|
40
40
|
const configPaths = [
|
|
41
41
|
path.join(process.cwd(), ".xray", "features.json"),
|
|
42
|
-
path.join(process.cwd(), ".opencode", "strray", "features.json"),
|
|
43
42
|
];
|
|
44
43
|
for (const configPath of configPaths) {
|
|
45
44
|
if (fs.existsSync(configPath)) {
|
|
@@ -46,7 +46,6 @@ export class PublishPreflightProcessor extends PostProcessor {
|
|
|
46
46
|
try {
|
|
47
47
|
const configPaths = [
|
|
48
48
|
path.join(process.cwd(), ".xray", "features.json"),
|
|
49
|
-
path.join(process.cwd(), ".opencode", "xray", "features.json"),
|
|
50
49
|
];
|
|
51
50
|
for (const configPath of configPaths) {
|
|
52
51
|
if (fs.existsSync(configPath)) {
|
|
@@ -30,8 +30,8 @@ export class SessionSummaryProcessor extends PostProcessor {
|
|
|
30
30
|
}
|
|
31
31
|
loadConfig() {
|
|
32
32
|
try {
|
|
33
|
-
const featuresPath = path.join(process.cwd(), ".
|
|
34
|
-
const altPath = path.join(process.cwd(), ".xray", "features.json");
|
|
33
|
+
const featuresPath = path.join(process.cwd(), ".xray", "features.json");
|
|
34
|
+
const altPath = path.join(process.cwd(), ".opencode", "xray", "features.json");
|
|
35
35
|
const configPath = fs.existsSync(featuresPath) ? featuresPath :
|
|
36
36
|
fs.existsSync(altPath) ? altPath : null;
|
|
37
37
|
if (configPath) {
|
|
@@ -35,7 +35,6 @@ export class StorytellingTriggerProcessor extends PostProcessor {
|
|
|
35
35
|
resolveConfigPath(filename) {
|
|
36
36
|
const candidates = [
|
|
37
37
|
path.join(process.cwd(), ".xray", filename),
|
|
38
|
-
path.join(process.cwd(), ".opencode", "strray", filename),
|
|
39
38
|
];
|
|
40
39
|
for (const candidate of candidates) {
|
|
41
40
|
if (fs.existsSync(candidate))
|
package/dist/public/about.html
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8">
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>About
|
|
6
|
+
<title>About 0xRay - Enterprise AI Orchestration</title>
|
|
7
7
|
<style>
|
|
8
8
|
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
9
9
|
body {
|
|
@@ -113,7 +113,7 @@
|
|
|
113
113
|
<div class="container">
|
|
114
114
|
<header>
|
|
115
115
|
<span class="version">v1.4.20</span>
|
|
116
|
-
<h1>
|
|
116
|
+
<h1>0xRay</h1>
|
|
117
117
|
<p class="tagline">Enterprise AI Orchestration Framework</p>
|
|
118
118
|
</header>
|
|
119
119
|
|
|
@@ -141,8 +141,8 @@
|
|
|
141
141
|
</div>
|
|
142
142
|
|
|
143
143
|
<section class="section">
|
|
144
|
-
<h2>🎯 What is
|
|
145
|
-
<p>
|
|
144
|
+
<h2>🎯 What is 0xRay?</h2>
|
|
145
|
+
<p>0xRay is an enterprise-grade AI orchestration framework that provides intelligent task routing, systematic error prevention, and comprehensive monitoring for AI-driven development workflows.</p>
|
|
146
146
|
</section>
|
|
147
147
|
|
|
148
148
|
<section class="section">
|
|
@@ -191,7 +191,7 @@
|
|
|
191
191
|
<h2>🔄 8 Pipeline System</h2>
|
|
192
192
|
<div class="pipeline-diagram">
|
|
193
193
|
┌─────────────────────────────────────────────────────────────────┐
|
|
194
|
-
│
|
|
194
|
+
│ 0xRAY FRAMEWORK v3.0.0 │
|
|
195
195
|
├─────────────────────────────────────────────────────────────────┤
|
|
196
196
|
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────┐ │
|
|
197
197
|
│ │ INIT │─▶│ AGENT │─▶│ RULE │─▶│ POST │ │
|
|
@@ -220,7 +220,7 @@
|
|
|
220
220
|
</section>
|
|
221
221
|
|
|
222
222
|
<footer>
|
|
223
|
-
<p>
|
|
223
|
+
<p>0xRay Framework © 2026 | Built for Enterprise AI Orchestration</p>
|
|
224
224
|
<p style="margin-top: 10px; color: #6e7681;">338 logging points | 51 core files | JobId tracking enabled</p>
|
|
225
225
|
</footer>
|
|
226
226
|
</div>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8">
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>Enterprise -
|
|
6
|
+
<title>Enterprise - 0xRay</title>
|
|
7
7
|
<style>
|
|
8
8
|
body { margin: 0; padding: 0; background: #0a0a0f; color: #e0e0e0; font-family: system-ui, sans-serif; }
|
|
9
9
|
.container { max-width: 900px; margin: 0 auto; padding: 40px 20px; }
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8">
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>
|
|
6
|
+
<title>0xRay - Features</title>
|
|
7
7
|
<style>
|
|
8
8
|
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
9
9
|
body {
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
<body>
|
|
57
57
|
<div class="container">
|
|
58
58
|
<header>
|
|
59
|
-
<h1>
|
|
59
|
+
<h1>0xRay Features</h1>
|
|
60
60
|
<p class="subtitle">Enterprise AI Orchestration Platform</p>
|
|
61
61
|
</header>
|
|
62
62
|
|
package/dist/public/index.html
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8">
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>⚡
|
|
6
|
+
<title>⚡ 0xRay Dashboard</title>
|
|
7
7
|
<style>
|
|
8
8
|
body {
|
|
9
9
|
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
<body>
|
|
82
82
|
<div class="container">
|
|
83
83
|
<div class="header">
|
|
84
|
-
<h1>⚡
|
|
84
|
+
<h1>⚡ 0xRay</h1>
|
|
85
85
|
<p>AI Agent Orchestration Framework - Production-Ready Code, No Dead Ends</p>
|
|
86
86
|
</div>
|
|
87
87
|
|
|
@@ -121,7 +121,7 @@
|
|
|
121
121
|
</div>
|
|
122
122
|
|
|
123
123
|
<div class="footer">
|
|
124
|
-
<p>🛡️
|
|
124
|
+
<p>🛡️ 0xRay - The AI Sentinel: Your Unwavering Guardian Against AI Development Catastrophes</p>
|
|
125
125
|
</div>
|
|
126
126
|
</div>
|
|
127
127
|
|
|
@@ -142,4 +142,4 @@
|
|
|
142
142
|
</script>
|
|
143
143
|
</body>
|
|
144
144
|
</html></content>
|
|
145
|
-
<parameter name="filePath">/Users/blaze/dev/
|
|
145
|
+
<parameter name="filePath">/Users/blaze/dev/xray/public/index.html
|
|
@@ -98,7 +98,7 @@ ${data.recommendations.map((rec) => `- ${rec}`).join("\n")}
|
|
|
98
98
|
4. **Performance Monitoring**: Track rule enforcement effectiveness metrics
|
|
99
99
|
|
|
100
100
|
---
|
|
101
|
-
*Consumer runtime compat shim from prior 0xRay releases (1-line min per Scope Rule; primary xray paths +
|
|
101
|
+
*Consumer runtime compat shim from prior 0xRay releases (1-line min per Scope Rule; primary xray paths + .xray fallbacks)*
|
|
102
102
|
*Framework Status: Operational*
|
|
103
103
|
`;
|
|
104
104
|
}
|
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { AgentDelegator } from '../delegation/agent-delegator.js';
|
|
8
8
|
import { XrayStateManager } from '../state/state-manager.js';
|
|
9
|
-
import {
|
|
9
|
+
import { xrayConfigLoader } from '../core/config-loader.js';
|
|
10
10
|
import { routingOutcomeTracker } from '../delegation/analytics/outcome-tracker.js';
|
|
11
11
|
import { patternPerformanceTracker } from '../analytics/pattern-performance-tracker.js';
|
|
12
12
|
const stateManager = new XrayStateManager();
|
|
13
|
-
const delegator = new AgentDelegator(stateManager,
|
|
13
|
+
const delegator = new AgentDelegator(stateManager, xrayConfigLoader);
|
|
14
14
|
console.log('=== KERNEL PIPELINE ACTIVATION TEST ===\n');
|
|
15
15
|
// Test cases designed to trigger kernel patterns
|
|
16
16
|
const testCases = [
|
package/dist/scripts/pre-command
CHANGED
|
@@ -183,7 +183,7 @@ export class InferenceTuner {
|
|
|
183
183
|
const candidates = [
|
|
184
184
|
path.resolve(process.cwd(), ".xray/routing-mappings.json"),
|
|
185
185
|
path.resolve(process.cwd(), "xray/routing-mappings.json"),
|
|
186
|
-
path.resolve(process.cwd(), ".
|
|
186
|
+
path.resolve(process.cwd(), ".xray/routing-mappings.json"),
|
|
187
187
|
path.resolve(process.cwd(), "routing-mappings.json"),
|
|
188
188
|
];
|
|
189
189
|
for (const p of candidates) {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
source: framework
|
|
3
3
|
name: code-analyzer
|
|
4
4
|
description: Deep code analysis, metrics extraction, and pattern detection (CONSOLIDATED - combines analyzer, explore, and original code-analyzer)
|
|
5
|
-
author:
|
|
5
|
+
author: Xray Framework
|
|
6
6
|
version: 1.0.0
|
|
7
7
|
schema_version: "1.0"
|
|
8
8
|
tags: [analysis, metrics, code-quality, patterns]
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
source: framework
|
|
3
3
|
name: code-review
|
|
4
4
|
description: Perform comprehensive code quality assessment and provide improvement suggestions
|
|
5
|
-
author:
|
|
5
|
+
author: Xray Framework
|
|
6
6
|
version: 1.0.0
|
|
7
7
|
schema_version: "1.0"
|
|
8
8
|
tags: [review, quality, assessment, improvement]
|
|
@@ -43,7 +43,7 @@ Native Hermes plugin providing 0xRay framework integration — quality gates, co
|
|
|
43
43
|
|
|
44
44
|
**Fallback:** When bridge is unavailable, tools fall back to `npx 0xray` CLI commands.
|
|
45
45
|
|
|
46
|
-
**Config path resolution:** `XRAY_CONFIG_DIR/` > `.xray/` >
|
|
46
|
+
**Config path resolution:** `XRAY_CONFIG_DIR/` > `.xray/` > built-in defaults.
|
|
47
47
|
|
|
48
48
|
## 4 Tools
|
|
49
49
|
|
|
@@ -208,5 +208,5 @@ The plugin's pre_tool_call hook nudges when an MCP alternative exists (e.g., "us
|
|
|
208
208
|
- CLI fallback requires `npx 0xray` in PATH. If bridge fails and CLI isn't available, tools return errors.
|
|
209
209
|
- Quality gate blocks are logged but NOT enforced (advisory). The tool returns violations; the agent decides what to do.
|
|
210
210
|
- Git hooks use symlinks from `.git/hooks/` → `hooks/`. If the `hooks/` directory doesn't exist in the project, `xray_hooks(action="install")` skips those hooks.
|
|
211
|
-
- Project root detection walks up from CWD looking for `node_modules/0xray`, `.
|
|
211
|
+
- Project root detection walks up from CWD looking for `node_modules/0xray`, `.xray/features.json`, or `package.json`. Override with `XRAY_PROJECT_ROOT` env var.
|
|
212
212
|
- `logs/framework/` is created automatically. Never breaks the agent if permissions fail.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
source: framework
|
|
3
3
|
name: inference-improve
|
|
4
4
|
description: Autonomous inference improvement through collaborative agent analysis
|
|
5
|
-
author:
|
|
5
|
+
author: Xray Framework
|
|
6
6
|
version: 1.0.0
|
|
7
7
|
schema_version: "1.0"
|
|
8
8
|
tags: [inference, improvement, autonomous, learning]
|