0xray 2.0.1 → 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.
Files changed (240) hide show
  1. package/.opencode/codex.codex +1 -1
  2. package/AGENTS.md +1 -1
  3. package/dist/AGENTS.md +1 -1
  4. package/dist/benchmark/performance-benchmark.d.ts +2 -2
  5. package/dist/benchmark/performance-benchmark.js +3 -3
  6. package/dist/cli/commands/hermes-install.js +4 -4
  7. package/dist/cli/commands/mcp-install.js +1 -1
  8. package/dist/cli/commands/openclaw-install.js +1 -1
  9. package/dist/cli/commands/plugin-commands.js +2 -2
  10. package/dist/cli/commands/publish-agent.js +5 -5
  11. package/dist/cli/commands/skill-install.js +1 -1
  12. package/dist/cli/commands/status.js +3 -3
  13. package/dist/cli/commands/storyteller.js +2 -2
  14. package/dist/cli/index.js +8 -8
  15. package/dist/cli/server.js +1 -1
  16. package/dist/core/agent-spawn-gate.d.ts +1 -1
  17. package/dist/core/agent-spawn-gate.js +1 -1
  18. package/dist/core/boot-orchestrator.d.ts +4 -4
  19. package/dist/core/boot-orchestrator.js +26 -26
  20. package/dist/core/bridge.mjs +22 -22
  21. package/dist/core/codex-formatter.js +2 -2
  22. package/dist/core/codex-injector.d.ts +4 -3
  23. package/dist/core/codex-injector.js +11 -10
  24. package/dist/core/config-loader.d.ts +5 -4
  25. package/dist/core/config-loader.js +4 -2
  26. package/dist/core/config-paths.d.ts +9 -8
  27. package/dist/core/config-paths.js +24 -23
  28. package/dist/core/context-loader.d.ts +4 -3
  29. package/dist/core/context-loader.js +7 -5
  30. package/dist/core/index.d.ts +1 -1
  31. package/dist/core/index.js +1 -1
  32. package/dist/core/orchestrator.d.ts +1 -0
  33. package/dist/core/orchestrator.js +3 -2
  34. package/dist/core/system-prompt-generator.js +2 -2
  35. package/dist/core/xray-activation.d.ts +4 -4
  36. package/dist/core/xray-activation.js +29 -24
  37. package/dist/delegation/agent-delegator.d.ts +3 -3
  38. package/dist/delegation/agent-delegator.js +3 -3
  39. package/dist/delegation/metrics-aggregator.d.ts +11 -11
  40. package/dist/delegation/session-coordinator.d.ts +3 -3
  41. package/dist/delegation/voting-coordinator.d.ts +3 -3
  42. package/dist/enforcement/enforcer-tools.js +2 -2
  43. package/dist/enforcement/loaders/codex-loader.d.ts +1 -1
  44. package/dist/enforcement/loaders/codex-loader.js +2 -2
  45. package/dist/index.d.ts +5 -5
  46. package/dist/index.js +6 -6
  47. package/dist/inference/deploy-verifier.js +1 -1
  48. package/dist/inference/inference-cycle.js +7 -7
  49. package/dist/integrations/base/README.md +2 -2
  50. package/dist/integrations/governance/index.js +1 -1
  51. package/dist/integrations/grok/grok-cli.d.ts +1 -1
  52. package/dist/integrations/grok/grok-cli.js +6 -6
  53. package/dist/integrations/grok/hooks/pre-tool-use.js +1 -1
  54. package/dist/integrations/grok/plugin/0xray/.mcp.json +3 -3
  55. package/dist/integrations/grok/plugin/0xray/hooks/hooks.json +2 -2
  56. package/dist/integrations/hermes-agent/__init__.py +77 -71
  57. package/dist/integrations/hermes-agent/__pycache__/__init__.cpython-313.pyc +0 -0
  58. package/dist/integrations/hermes-agent/__pycache__/conftest.cpython-313-pytest-9.0.2.pyc +0 -0
  59. package/dist/integrations/hermes-agent/__pycache__/schemas.cpython-313.pyc +0 -0
  60. package/dist/integrations/hermes-agent/__pycache__/test_plugin.cpython-313-pytest-9.0.2.pyc +0 -0
  61. package/dist/integrations/hermes-agent/__pycache__/test_plugin.cpython-313.pyc +0 -0
  62. package/dist/integrations/hermes-agent/__pycache__/tools.cpython-313.pyc +0 -0
  63. package/dist/integrations/hermes-agent/after-install.md +14 -14
  64. package/dist/integrations/hermes-agent/bridge.mjs +14 -14
  65. package/dist/integrations/hermes-agent/logs/framework/routing-outcomes.json +1 -0
  66. package/dist/integrations/hermes-agent/plugin.yaml +5 -5
  67. package/dist/integrations/hermes-agent/schemas.py +12 -12
  68. package/dist/integrations/hermes-agent/test_plugin.py +128 -125
  69. package/dist/integrations/hermes-agent/tools.py +85 -23
  70. package/dist/integrations/openclaw/README.md +16 -16
  71. package/dist/integrations/openclaw/api-server.d.ts +4 -4
  72. package/dist/integrations/openclaw/api-server.js +9 -9
  73. package/dist/integrations/openclaw/config.js +1 -1
  74. package/dist/integrations/openclaw/hooks/{strray-hooks.d.ts → xray-hooks.d.ts} +4 -4
  75. package/dist/integrations/openclaw/index.d.ts +4 -4
  76. package/dist/integrations/openclaw/index.js +4 -4
  77. package/dist/integrations/openclaw/types.d.ts +1 -1
  78. package/dist/integrations/plugins/plugin-registry.js +2 -2
  79. package/dist/mcps/architect-tools.server.d.ts +2 -2
  80. package/dist/mcps/architect-tools.server.js +3 -3
  81. package/dist/mcps/auto-format.server.d.ts +2 -2
  82. package/dist/mcps/auto-format.server.js +3 -3
  83. package/dist/mcps/boot-orchestrator.server.d.ts +2 -2
  84. package/dist/mcps/boot-orchestrator.server.js +3 -3
  85. package/dist/mcps/config/server-config-registry.d.ts +1 -1
  86. package/dist/mcps/config/server-config-registry.js +7 -7
  87. package/dist/mcps/connection/mcp-connection.js +1 -1
  88. package/dist/mcps/enforcer-tools.server.d.ts +2 -2
  89. package/dist/mcps/enforcer-tools.server.js +3 -3
  90. package/dist/mcps/framework-compliance-audit.server.d.ts +2 -2
  91. package/dist/mcps/framework-compliance-audit.server.js +3 -3
  92. package/dist/mcps/framework-help.server.js +6 -6
  93. package/dist/mcps/in-process-skill-registry.js +6 -6
  94. package/dist/mcps/knowledge-skills/api-design.server.d.ts +2 -2
  95. package/dist/mcps/knowledge-skills/api-design.server.js +3 -3
  96. package/dist/mcps/knowledge-skills/architecture-patterns.server.d.ts +2 -2
  97. package/dist/mcps/knowledge-skills/architecture-patterns.server.js +3 -3
  98. package/dist/mcps/knowledge-skills/code-review.server.d.ts +2 -2
  99. package/dist/mcps/knowledge-skills/code-review.server.js +3 -3
  100. package/dist/mcps/knowledge-skills/database-design.server.d.ts +2 -2
  101. package/dist/mcps/knowledge-skills/database-design.server.js +3 -3
  102. package/dist/mcps/knowledge-skills/devops-deployment.server.d.ts +2 -2
  103. package/dist/mcps/knowledge-skills/devops-deployment.server.js +3 -3
  104. package/dist/mcps/knowledge-skills/git-workflow.server.d.ts +2 -2
  105. package/dist/mcps/knowledge-skills/git-workflow.server.js +3 -3
  106. package/dist/mcps/knowledge-skills/mobile-development.server.d.ts +2 -2
  107. package/dist/mcps/knowledge-skills/mobile-development.server.js +3 -3
  108. package/dist/mcps/knowledge-skills/performance-optimization.server.d.ts +2 -2
  109. package/dist/mcps/knowledge-skills/performance-optimization.server.js +3 -3
  110. package/dist/mcps/knowledge-skills/refactoring-strategies.server.d.ts +2 -2
  111. package/dist/mcps/knowledge-skills/refactoring-strategies.server.js +3 -3
  112. package/dist/mcps/knowledge-skills/security-audit.server.d.ts +2 -2
  113. package/dist/mcps/knowledge-skills/security-audit.server.js +3 -3
  114. package/dist/mcps/knowledge-skills/tech-writer.server.d.ts +2 -2
  115. package/dist/mcps/knowledge-skills/tech-writer.server.js +3 -3
  116. package/dist/mcps/knowledge-skills/testing-best-practices.server.d.ts +2 -2
  117. package/dist/mcps/knowledge-skills/testing-best-practices.server.js +3 -3
  118. package/dist/mcps/knowledge-skills/testing-strategy.server.d.ts +2 -2
  119. package/dist/mcps/knowledge-skills/testing-strategy.server.js +3 -3
  120. package/dist/mcps/knowledge-skills/ui-ux-design.server.d.ts +2 -2
  121. package/dist/mcps/knowledge-skills/ui-ux-design.server.js +5 -5
  122. package/dist/mcps/lint.server.d.ts +2 -2
  123. package/dist/mcps/lint.server.js +5 -5
  124. package/dist/mcps/mcp-client.js +3 -3
  125. package/dist/mcps/model-health-check.server.d.ts +2 -2
  126. package/dist/mcps/model-health-check.server.js +3 -3
  127. package/dist/mcps/orchestrator/server.js +2 -2
  128. package/dist/mcps/performance-analysis.server.d.ts +2 -2
  129. package/dist/mcps/performance-analysis.server.js +3 -3
  130. package/dist/mcps/processor-pipeline.server.d.ts +2 -2
  131. package/dist/mcps/processor-pipeline.server.js +3 -3
  132. package/dist/mcps/researcher.server.d.ts +3 -3
  133. package/dist/mcps/researcher.server.js +4 -4
  134. package/dist/mcps/security-scan.server.d.ts +2 -2
  135. package/dist/mcps/security-scan.server.js +3 -3
  136. package/dist/mcps/simulation/server-simulations.js +3 -3
  137. package/dist/metrics/agent-metrics.d.ts +4 -4
  138. package/dist/metrics/agent-metrics.js +1 -1
  139. package/dist/orchestrator/enhanced-multi-agent-orchestrator.d.ts +2 -2
  140. package/dist/orchestrator/enhanced-multi-agent-orchestrator.js +2 -2
  141. package/dist/orchestrator/intelligent-commit-batcher.d.ts +1 -1
  142. package/dist/orchestrator/intelligent-commit-batcher.js +3 -3
  143. package/dist/orchestrator/multi-agent-orchestration-coordinator.d.ts +3 -3
  144. package/dist/orchestrator/multi-agent-orchestration-coordinator.js +9 -9
  145. package/dist/orchestrator/orchestrator.d.ts +3 -2
  146. package/dist/orchestrator/orchestrator.js +8 -6
  147. package/dist/plugin/xray-codex-injection.d.ts +1 -1
  148. package/dist/plugin/xray-codex-injection.js +8 -7
  149. package/dist/postprocessor/PostProcessor.d.ts +2 -2
  150. package/dist/postprocessor/PostProcessor.js +1 -1
  151. package/dist/postprocessor/monitoring/MonitoringEngine.d.ts +2 -2
  152. package/dist/postprocessor/services/RegressionAnalysisService.js +2 -2
  153. package/dist/postprocessor/triggers/GitHookTrigger.js +14 -14
  154. package/dist/processors/implementations/agents-md-validation-processor.js +2 -2
  155. package/dist/processors/implementations/inference-improvement-processor.js +2 -2
  156. package/dist/processors/implementations/log-protection-processor.d.ts +1 -1
  157. package/dist/processors/implementations/log-protection-processor.js +2 -2
  158. package/dist/processors/implementations/publish-preflight-processor.d.ts +1 -1
  159. package/dist/processors/implementations/publish-preflight-processor.js +3 -3
  160. package/dist/processors/implementations/regression-testing-processor.js +2 -2
  161. package/dist/processors/implementations/session-summary-processor.js +2 -2
  162. package/dist/processors/implementations/storytelling-trigger-processor.js +2 -2
  163. package/dist/processors/processor-manager.d.ts +2 -2
  164. package/dist/public/about.html +6 -6
  165. package/dist/public/enterprise.html +1 -1
  166. package/dist/public/features.html +2 -2
  167. package/dist/public/index.html +4 -4
  168. package/dist/reporting/report-formatter.js +1 -1
  169. package/dist/scripts/activate-kernel-pipeline.js +2 -2
  170. package/dist/scripts/pre-command +1 -1
  171. package/dist/services/inference-tuner.js +2 -2
  172. package/dist/session/session-cleanup-manager.d.ts +3 -3
  173. package/dist/session/session-monitor.d.ts +3 -3
  174. package/dist/session/session-state-manager.d.ts +3 -3
  175. package/dist/skills/hermes-agent/SKILL.md +11 -11
  176. package/dist/skills/storyteller/SKILL.md +1 -1
  177. package/dist/skills/xray-orchestrator/SKILL.md +141 -0
  178. package/dist/skills/xray-orchestrator/index.d.ts +13 -0
  179. package/dist/skills/xray-orchestrator/index.js +224 -0
  180. package/dist/state/index.d.ts +2 -1
  181. package/dist/state/index.js +2 -1
  182. package/dist/state/state-manager.d.ts +2 -2
  183. package/dist/state/state-manager.js +5 -4
  184. package/dist/utils/import-resolver.js +1 -1
  185. package/dist/utils/path-resolver.js +2 -2
  186. package/dist/utils/token-manager.js +1 -1
  187. package/dist/validation/estimation-validator.js +1 -1
  188. package/package.json +2 -2
  189. package/scripts/hooks/pre-command +1 -1
  190. package/scripts/hooks/run-hook.js +2 -2
  191. package/scripts/node/auto-reflection-generator.mjs +2 -2
  192. package/scripts/node/postinstall.cjs +1 -1
  193. package/scripts/node/release.js +6 -6
  194. package/scripts/node/release.mjs +10 -10
  195. package/scripts/node/version-manager.mjs +1 -1
  196. package/src/integrations/grok/plugin/0xray/.mcp.json +3 -3
  197. package/src/integrations/grok/plugin/0xray/hooks/hooks.json +2 -2
  198. package/src/mcps/architect-tools.server.ts +3 -3
  199. package/src/mcps/auto-format.server.ts +3 -3
  200. package/src/mcps/boot-orchestrator.server.ts +3 -3
  201. package/src/mcps/config/server-config-registry.ts +7 -7
  202. package/src/mcps/connection/mcp-connection.ts +1 -1
  203. package/src/mcps/enforcer-tools.server.ts +3 -3
  204. package/src/mcps/framework-compliance-audit.server.ts +3 -3
  205. package/src/mcps/framework-help.server.ts +6 -6
  206. package/src/mcps/in-process-skill-registry.ts +6 -6
  207. package/src/mcps/knowledge-skills/api-design.server.test.ts +8 -8
  208. package/src/mcps/knowledge-skills/api-design.server.ts +3 -3
  209. package/src/mcps/knowledge-skills/architecture-patterns.server.ts +3 -3
  210. package/src/mcps/knowledge-skills/code-review.server.ts +3 -3
  211. package/src/mcps/knowledge-skills/database-design.server.ts +3 -3
  212. package/src/mcps/knowledge-skills/devops-deployment.server.ts +3 -3
  213. package/src/mcps/knowledge-skills/git-workflow.server.ts +3 -3
  214. package/src/mcps/knowledge-skills/mobile-development.server.ts +3 -3
  215. package/src/mcps/knowledge-skills/performance-optimization.server.ts +3 -3
  216. package/src/mcps/knowledge-skills/refactoring-strategies.server.ts +3 -3
  217. package/src/mcps/knowledge-skills/security-audit.server.test.ts +23 -23
  218. package/src/mcps/knowledge-skills/security-audit.server.ts +3 -3
  219. package/src/mcps/knowledge-skills/tech-writer.server.ts +3 -3
  220. package/src/mcps/knowledge-skills/testing-best-practices.server.test.ts +28 -28
  221. package/src/mcps/knowledge-skills/testing-best-practices.server.ts +3 -3
  222. package/src/mcps/knowledge-skills/testing-strategy.server.test.ts +19 -19
  223. package/src/mcps/knowledge-skills/testing-strategy.server.ts +3 -3
  224. package/src/mcps/knowledge-skills/ui-ux-design.server.ts +5 -5
  225. package/src/mcps/lint.server.ts +5 -5
  226. package/src/mcps/mcp-client.ts +3 -3
  227. package/src/mcps/model-health-check.server.ts +3 -3
  228. package/src/mcps/orchestrator/server.ts +2 -2
  229. package/src/mcps/performance-analysis.server.ts +3 -3
  230. package/src/mcps/processor-pipeline.server.ts +3 -3
  231. package/src/mcps/researcher.server.ts +4 -4
  232. package/src/mcps/security-scan.server.ts +3 -3
  233. package/src/mcps/simulation/server-simulations.ts +3 -3
  234. package/src/opencode/codex.codex +1 -1
  235. package/src/skills/hermes-agent/SKILL.md +11 -11
  236. package/src/skills/storyteller/SKILL.md +1 -1
  237. package/src/skills/xray-orchestrator/SKILL.md +141 -0
  238. package/src/skills/xray-orchestrator/index.ts +268 -0
  239. package/scripts/validate-stringray-comprehensive.js +0 -636
  240. /package/dist/integrations/openclaw/hooks/{strray-hooks.js → xray-hooks.js} +0 -0
@@ -17,7 +17,7 @@ import fs from 'fs';
17
17
  * Resolve the correct framework root and MCP servers path.
18
18
  * Priority:
19
19
  * 1. STRRAY_DEV_PATH env var (explicit dev override)
20
- * 2. The "strray" field in the nearest package.json that declares it (works in both source tree and installed package)
20
+ * 2. The "xray" field in the nearest package.json that declares it (works in both source tree and installed package)
21
21
  * 3. Safe fallback to node_modules/0xray/dist
22
22
  */
23
23
  function resolveFrameworkPaths() {
@@ -29,7 +29,7 @@ function resolveFrameworkPaths() {
29
29
  mcpServersPath: join(devPath, 'mcps'),
30
30
  };
31
31
  }
32
- // Walk upward from this module to find the package that owns the "strray" config
32
+ // Walk upward from this module to find the package that owns the "xray" config
33
33
  let currentDir = dirname(fileURLToPath(import.meta.url));
34
34
  // Safety limit to avoid walking the entire filesystem
35
35
  const MAX_LEVELS = 12;
@@ -38,10 +38,10 @@ function resolveFrameworkPaths() {
38
38
  if (fs.existsSync(pkgPath)) {
39
39
  try {
40
40
  const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
41
- if (pkg.name === '0xray' && pkg.strray) {
42
- const strrayCfg = pkg.strray;
41
+ if (pkg.name === '0xray' && pkg.xray) {
42
+ const xrayCfg = pkg.xray;
43
43
  const frameworkRoot = currentDir;
44
- const declaredMcp = strrayCfg.mcpServersPath || (strrayCfg.dist ? join(strrayCfg.dist, 'mcps') : 'dist/mcps');
44
+ const declaredMcp = xrayCfg.mcpServersPath || (xrayCfg.dist ? join(xrayCfg.dist, 'mcps') : 'dist/mcps');
45
45
  return {
46
46
  frameworkRoot,
47
47
  mcpServersPath: join(frameworkRoot, declaredMcp),
@@ -60,7 +60,7 @@ function resolveFrameworkPaths() {
60
60
  // Final fallback (should almost never be reached)
61
61
  const fallback = 'node_modules/0xray/dist';
62
62
  frameworkLogger.log('server-config-registry', 'using-fallback-path', 'warning', {
63
- reason: 'Could not locate strray package.json with "strray" field',
63
+ reason: 'Could not locate xray package.json with "xray" field',
64
64
  fallback,
65
65
  });
66
66
  return {
@@ -323,7 +323,7 @@ export class ServerConfigRegistry {
323
323
  /**
324
324
  * Create a dynamic configuration for an unknown server
325
325
  * Uses the knowledge-skills directory as default location.
326
- * Now respects the "strray" field declared in package.json.
326
+ * Now respects the "xray" field declared in package.json.
327
327
  */
328
328
  createDynamicConfig(serverName) {
329
329
  // Validate serverName against path traversal attacks
@@ -52,7 +52,7 @@ export class McpConnection extends EventEmitter {
52
52
  protocolVersion: MCP_PROTOCOL_VERSION,
53
53
  capabilities: {},
54
54
  clientInfo: {
55
- name: 'strray-mcp-client',
55
+ name: 'xray-mcp-client',
56
56
  version: '1.7.5',
57
57
  },
58
58
  },
@@ -4,7 +4,7 @@
4
4
  * Converts enforcer-tools.ts functions into MCP server tools
5
5
  * Provides rule enforcement and validation capabilities via MCP protocol
6
6
  */
7
- declare class StringRayEnforcerToolsServer {
7
+ declare class XrayEnforcerToolsServer {
8
8
  private server;
9
9
  constructor();
10
10
  private setupToolHandlers;
@@ -24,4 +24,4 @@ declare class StringRayEnforcerToolsServer {
24
24
  run(): Promise<void>;
25
25
  private securityScan;
26
26
  }
27
- export default StringRayEnforcerToolsServer;
27
+ export default XrayEnforcerToolsServer;
@@ -12,7 +12,7 @@ import { frameworkLogger } from "../core/framework-logger.js";
12
12
  import { getCodexPolicyService } from "../governance/codex-policy.service.js";
13
13
  // Import actual enforcer-tools functions
14
14
  import { ruleValidation as runRuleValidation } from "../enforcement/enforcer-tools.js";
15
- class StringRayEnforcerToolsServer {
15
+ class XrayEnforcerToolsServer {
16
16
  server;
17
17
  constructor() {
18
18
  this.server = new Server({
@@ -772,7 +772,7 @@ class StringRayEnforcerToolsServer {
772
772
  }
773
773
  }
774
774
  if (import.meta.url === `file://${process.argv[1]}`) {
775
- const server = new StringRayEnforcerToolsServer();
775
+ const server = new XrayEnforcerToolsServer();
776
776
  server.run().catch((error) => frameworkLogger.log("mcps/enforcer", "run", "error", { error: String(error) }));
777
777
  }
778
- export default StringRayEnforcerToolsServer;
778
+ export default XrayEnforcerToolsServer;
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Comprehensive validation of all framework components and Universal Development Codex compliance
5
5
  */
6
- declare class StringRayFrameworkComplianceAuditServer {
6
+ declare class XrayFrameworkComplianceAuditServer {
7
7
  private server;
8
8
  constructor();
9
9
  private setupToolHandlers;
@@ -19,4 +19,4 @@ declare class StringRayFrameworkComplianceAuditServer {
19
19
  private getDetailedFindings;
20
20
  run(): Promise<void>;
21
21
  }
22
- export { StringRayFrameworkComplianceAuditServer };
22
+ export { XrayFrameworkComplianceAuditServer };
@@ -8,7 +8,7 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
8
8
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
9
9
  import fs from "fs";
10
10
  import { frameworkLogger } from "../core/framework-logger.js";
11
- class StringRayFrameworkComplianceAuditServer {
11
+ class XrayFrameworkComplianceAuditServer {
12
12
  server;
13
13
  constructor() {
14
14
  this.server = new Server({
@@ -494,7 +494,7 @@ ${results.recommendations.map((r) => `• 💡 ${r}`).join("\n")}
494
494
  }
495
495
  // Start the server if run directly
496
496
  if (import.meta.url === `file://${process.argv[1]}`) {
497
- const server = new StringRayFrameworkComplianceAuditServer();
497
+ const server = new XrayFrameworkComplianceAuditServer();
498
498
  server.run().catch((error) => frameworkLogger.log("mcps/framework-compliance-audit", "run", "error", { error: String(error) }));
499
499
  }
500
- export { StringRayFrameworkComplianceAuditServer };
500
+ export { XrayFrameworkComplianceAuditServer };
@@ -21,7 +21,7 @@ class FrameworkHelpServer {
21
21
  return {
22
22
  tools: [
23
23
  {
24
- name: "strray_get_capabilities",
24
+ name: "xray_get_capabilities",
25
25
  description: "Get comprehensive list of all 0xRay framework capabilities, commands, and available tools",
26
26
  inputSchema: {
27
27
  type: "object",
@@ -43,7 +43,7 @@ class FrameworkHelpServer {
43
43
  },
44
44
  },
45
45
  {
46
- name: "strray_get_commands",
46
+ name: "xray_get_commands",
47
47
  description: "Get list of available 0xRay commands and their usage",
48
48
  inputSchema: {
49
49
  type: "object",
@@ -63,7 +63,7 @@ class FrameworkHelpServer {
63
63
  },
64
64
  },
65
65
  {
66
- name: "strray_explain_capability",
66
+ name: "xray_explain_capability",
67
67
  description: "Get detailed explanation of a specific 0xRay capability",
68
68
  inputSchema: {
69
69
  type: "object",
@@ -84,11 +84,11 @@ class FrameworkHelpServer {
84
84
  const { name, arguments: args } = request.params;
85
85
  try {
86
86
  switch (name) {
87
- case "strray_get_capabilities":
87
+ case "xray_get_capabilities":
88
88
  return this.handleGetCapabilities(args);
89
- case "strray_get_commands":
89
+ case "xray_get_commands":
90
90
  return this.handleGetCommands(args);
91
- case "strray_explain_capability":
91
+ case "xray_explain_capability":
92
92
  return this.handleExplainCapability(args);
93
93
  default:
94
94
  throw new McpError(ErrorCode.MethodNotFound, `Unknown tool: ${name}`);
@@ -1,10 +1,10 @@
1
- import { StringRayCodeReviewServer } from "./knowledge-skills/code-review.server.js";
2
- import { StringRaySecurityAuditServer } from "./knowledge-skills/security-audit.server.js";
3
- import { StringRayLibrarianServer } from "./researcher.server.js";
1
+ import { XrayCodeReviewServer } from "./knowledge-skills/code-review.server.js";
2
+ import { XraySecurityAuditServer } from "./knowledge-skills/security-audit.server.js";
3
+ import { XrayLibrarianServer } from "./researcher.server.js";
4
4
  const instances = new Map();
5
5
  function getCodeReview() {
6
6
  if (!instances.has("code-review")) {
7
- const server = new StringRayCodeReviewServer();
7
+ const server = new XrayCodeReviewServer();
8
8
  instances.set("code-review", {
9
9
  analyzeProposal: (args) => server.analyzeProposal(args),
10
10
  });
@@ -13,7 +13,7 @@ function getCodeReview() {
13
13
  }
14
14
  function getSecurityAudit() {
15
15
  if (!instances.has("security-audit")) {
16
- const server = new StringRaySecurityAuditServer();
16
+ const server = new XraySecurityAuditServer();
17
17
  instances.set("security-audit", {
18
18
  analyzeProposal: (args) => server.analyzeProposal(args),
19
19
  });
@@ -22,7 +22,7 @@ function getSecurityAudit() {
22
22
  }
23
23
  function getResearcher() {
24
24
  if (!instances.has("researcher")) {
25
- const server = new StringRayLibrarianServer();
25
+ const server = new XrayLibrarianServer();
26
26
  instances.set("researcher", {
27
27
  analyzeProposal: (args) => server.analyzeProposal(args),
28
28
  });
@@ -4,7 +4,7 @@
4
4
  * Knowledge skill for API design patterns, RESTful conventions,
5
5
  * GraphQL schema design, and API documentation standards
6
6
  */
7
- declare class StringRayApiDesignServer {
7
+ declare class XrayApiDesignServer {
8
8
  private server;
9
9
  constructor();
10
10
  private setupToolHandlers;
@@ -12,4 +12,4 @@ declare class StringRayApiDesignServer {
12
12
  private validateApiDesign;
13
13
  run(): Promise<void>;
14
14
  }
15
- export default StringRayApiDesignServer;
15
+ export default XrayApiDesignServer;
@@ -8,7 +8,7 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
8
8
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
9
9
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
10
10
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
11
- class StringRayApiDesignServer {
11
+ class XrayApiDesignServer {
12
12
  server;
13
13
  constructor() {
14
14
  this.server = new Server({
@@ -117,7 +117,7 @@ class StringRayApiDesignServer {
117
117
  }
118
118
  }
119
119
  if (import.meta.url === `file://${process.argv[1]}`) {
120
- const server = new StringRayApiDesignServer();
120
+ const server = new XrayApiDesignServer();
121
121
  server.run().catch(() => { });
122
122
  }
123
- export default StringRayApiDesignServer;
123
+ export default XrayApiDesignServer;
@@ -4,7 +4,7 @@
4
4
  * Knowledge skill for architectural pattern recognition,
5
5
  * design pattern recommendations, and system architecture guidance
6
6
  */
7
- declare class StringRayArchitecturePatternsServer {
7
+ declare class XrayArchitecturePatternsServer {
8
8
  private server;
9
9
  constructor();
10
10
  private setupToolHandlers;
@@ -12,4 +12,4 @@ declare class StringRayArchitecturePatternsServer {
12
12
  private recommendPatterns;
13
13
  run(): Promise<void>;
14
14
  }
15
- export default StringRayArchitecturePatternsServer;
15
+ export default XrayArchitecturePatternsServer;
@@ -8,7 +8,7 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
8
8
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
9
9
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
10
10
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
11
- class StringRayArchitecturePatternsServer {
11
+ class XrayArchitecturePatternsServer {
12
12
  server;
13
13
  constructor() {
14
14
  this.server = new Server({
@@ -107,7 +107,7 @@ class StringRayArchitecturePatternsServer {
107
107
  }
108
108
  }
109
109
  if (import.meta.url === `file://${process.argv[1]}`) {
110
- const server = new StringRayArchitecturePatternsServer();
110
+ const server = new XrayArchitecturePatternsServer();
111
111
  server.run().catch(() => { });
112
112
  }
113
- export default StringRayArchitecturePatternsServer;
113
+ export default XrayArchitecturePatternsServer;
@@ -10,7 +10,7 @@ interface AnalyzeProposalArgs {
10
10
  evidence?: string[];
11
11
  proposalType?: string;
12
12
  }
13
- declare class StringRayCodeReviewServer {
13
+ declare class XrayCodeReviewServer {
14
14
  private server;
15
15
  constructor();
16
16
  private setupToolHandlers;
@@ -43,4 +43,4 @@ declare class StringRayCodeReviewServer {
43
43
  private calculateComplianceScore;
44
44
  run(): Promise<void>;
45
45
  }
46
- export { StringRayCodeReviewServer };
46
+ export { XrayCodeReviewServer };
@@ -10,7 +10,7 @@ import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextpro
10
10
  import * as fs from "fs";
11
11
  import * as path from "path";
12
12
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
13
- class StringRayCodeReviewServer {
13
+ class XrayCodeReviewServer {
14
14
  server;
15
15
  constructor() {
16
16
  this.server = new Server({
@@ -841,7 +841,7 @@ class StringRayCodeReviewServer {
841
841
  }
842
842
  // Run the server if this file is executed directly
843
843
  if (import.meta.url === `file://${process.argv[1]}`) {
844
- const server = new StringRayCodeReviewServer();
844
+ const server = new XrayCodeReviewServer();
845
845
  server.run().catch(() => { });
846
846
  }
847
- export { StringRayCodeReviewServer };
847
+ export { XrayCodeReviewServer };
@@ -4,7 +4,7 @@
4
4
  * Knowledge skill for database architecture, schema optimization,
5
5
  * query performance analysis, and data modeling best practices
6
6
  */
7
- declare class StringRayDatabaseDesignServer {
7
+ declare class XrayDatabaseDesignServer {
8
8
  private server;
9
9
  constructor();
10
10
  private setupToolHandlers;
@@ -40,4 +40,4 @@ declare class StringRayDatabaseDesignServer {
40
40
  private getIssueSeverityIcon;
41
41
  run(): Promise<void>;
42
42
  }
43
- export { StringRayDatabaseDesignServer };
43
+ export { XrayDatabaseDesignServer };
@@ -10,7 +10,7 @@ import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextpro
10
10
  import * as fs from "fs";
11
11
  import * as path from "path";
12
12
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
13
- class StringRayDatabaseDesignServer {
13
+ class XrayDatabaseDesignServer {
14
14
  server;
15
15
  constructor() {
16
16
  this.server = new Server({
@@ -816,7 +816,7 @@ class StringRayDatabaseDesignServer {
816
816
  }
817
817
  // Run the server if this file is executed directly
818
818
  if (import.meta.url === `file://${process.argv[1]}`) {
819
- const server = new StringRayDatabaseDesignServer();
819
+ const server = new XrayDatabaseDesignServer();
820
820
  server.run().catch(() => { });
821
821
  }
822
- export { StringRayDatabaseDesignServer };
822
+ export { XrayDatabaseDesignServer };
@@ -4,7 +4,7 @@
4
4
  * Knowledge skill for DevOps practices, deployment strategies,
5
5
  * CI/CD pipeline design, and infrastructure automation
6
6
  */
7
- declare class StringRayDevOpsDeploymentServer {
7
+ declare class XrayDevOpsDeploymentServer {
8
8
  private server;
9
9
  constructor();
10
10
  private setupToolHandlers;
@@ -40,4 +40,4 @@ declare class StringRayDevOpsDeploymentServer {
40
40
  private getInfrastructureLanguage;
41
41
  run(): Promise<void>;
42
42
  }
43
- export { StringRayDevOpsDeploymentServer };
43
+ export { XrayDevOpsDeploymentServer };
@@ -8,7 +8,7 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
8
8
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
9
9
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
10
10
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
11
- class StringRayDevOpsDeploymentServer {
11
+ class XrayDevOpsDeploymentServer {
12
12
  server;
13
13
  constructor() {
14
14
  this.server = new Server({
@@ -1174,7 +1174,7 @@ spec:
1174
1174
  }
1175
1175
  // Run the server if this file is executed directly
1176
1176
  if (import.meta.url === `file://${process.argv[1]}`) {
1177
- const server = new StringRayDevOpsDeploymentServer();
1177
+ const server = new XrayDevOpsDeploymentServer();
1178
1178
  server.run().catch(() => { });
1179
1179
  }
1180
- export { StringRayDevOpsDeploymentServer };
1180
+ export { XrayDevOpsDeploymentServer };
@@ -4,7 +4,7 @@
4
4
  * Knowledge skill for version control strategies, branching models,
5
5
  * and collaborative development workflows
6
6
  */
7
- declare class StringRayGitWorkflowServer {
7
+ declare class XrayGitWorkflowServer {
8
8
  private server;
9
9
  constructor();
10
10
  private setupToolHandlers;
@@ -12,4 +12,4 @@ declare class StringRayGitWorkflowServer {
12
12
  private recommendBranchingStrategy;
13
13
  run(): Promise<void>;
14
14
  }
15
- export default StringRayGitWorkflowServer;
15
+ export default XrayGitWorkflowServer;
@@ -8,7 +8,7 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
8
8
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
9
9
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
10
10
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
11
- class StringRayGitWorkflowServer {
11
+ class XrayGitWorkflowServer {
12
12
  server;
13
13
  constructor() {
14
14
  this.server = new Server({
@@ -109,7 +109,7 @@ class StringRayGitWorkflowServer {
109
109
  }
110
110
  }
111
111
  if (import.meta.url === `file://${process.argv[1]}`) {
112
- const server = new StringRayGitWorkflowServer();
112
+ const server = new XrayGitWorkflowServer();
113
113
  server.run().catch(() => { });
114
114
  }
115
- export default StringRayGitWorkflowServer;
115
+ export default XrayGitWorkflowServer;
@@ -4,7 +4,7 @@
4
4
  * Knowledge skill for mobile app development including iOS, Android,
5
5
  * React Native, Flutter, and mobile performance optimization
6
6
  */
7
- declare class StringRayMobileDevelopmentServer {
7
+ declare class XrayMobileDevelopmentServer {
8
8
  private server;
9
9
  constructor();
10
10
  private setupToolHandlers;
@@ -16,4 +16,4 @@ declare class StringRayMobileDevelopmentServer {
16
16
  private generateAppStoreMetadata;
17
17
  start(): Promise<void>;
18
18
  }
19
- export { StringRayMobileDevelopmentServer };
19
+ export { XrayMobileDevelopmentServer };
@@ -9,7 +9,7 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
9
9
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
10
10
  import * as path from "path";
11
11
  import { fileURLToPath } from "url";
12
- class StringRayMobileDevelopmentServer {
12
+ class XrayMobileDevelopmentServer {
13
13
  server;
14
14
  constructor() {
15
15
  this.server = new Server({
@@ -519,7 +519,7 @@ class HomePage extends StatelessWidget {
519
519
  }
520
520
  const entryPoint = path.resolve(process.argv[1] ?? "");
521
521
  if (entryPoint && fileURLToPath(import.meta.url) === entryPoint) {
522
- const server = new StringRayMobileDevelopmentServer();
522
+ const server = new XrayMobileDevelopmentServer();
523
523
  server.start().catch(() => { });
524
524
  }
525
- export { StringRayMobileDevelopmentServer };
525
+ export { XrayMobileDevelopmentServer };
@@ -4,7 +4,7 @@
4
4
  * Knowledge skill for performance analysis, optimization recommendations,
5
5
  * profiling, benchmarking, memory analysis, and Core Web Vitals measurement
6
6
  */
7
- declare class StringRayPerformanceOptimizationServer {
7
+ declare class XrayPerformanceOptimizationServer {
8
8
  private server;
9
9
  private startTime;
10
10
  constructor();
@@ -69,4 +69,4 @@ declare class StringRayPerformanceOptimizationServer {
69
69
  private findCodeFiles;
70
70
  run(): Promise<void>;
71
71
  }
72
- export { StringRayPerformanceOptimizationServer };
72
+ export { XrayPerformanceOptimizationServer };
@@ -11,7 +11,7 @@ import { frameworkLogger, generateJobId } from "../../core/framework-logger.js";
11
11
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
12
12
  import fs from "fs";
13
13
  import path from "path";
14
- class StringRayPerformanceOptimizationServer {
14
+ class XrayPerformanceOptimizationServer {
15
15
  server;
16
16
  startTime;
17
17
  constructor() {
@@ -1579,9 +1579,9 @@ ${result.recommendations.slice(0, 5).map((r, i) => `${i + 1}. ${r}`).join("\n")
1579
1579
  }
1580
1580
  }
1581
1581
  if (import.meta.url === `file://${process.argv[1]}`) {
1582
- const server = new StringRayPerformanceOptimizationServer();
1582
+ const server = new XrayPerformanceOptimizationServer();
1583
1583
  server.run().catch((error) => {
1584
1584
  frameworkLogger.log("mcp/performance-optimization", "run", "error", { error: String(error) });
1585
1585
  });
1586
1586
  }
1587
- export { StringRayPerformanceOptimizationServer };
1587
+ export { XrayPerformanceOptimizationServer };
@@ -4,7 +4,7 @@
4
4
  * Knowledge skill for code refactoring, technical debt elimination,
5
5
  * modernization, and code improvement patterns
6
6
  */
7
- declare class StringRayRefactoringStrategiesServer {
7
+ declare class XrayRefactoringStrategiesServer {
8
8
  private server;
9
9
  constructor();
10
10
  private setupToolHandlers;
@@ -30,4 +30,4 @@ declare class StringRayRefactoringStrategiesServer {
30
30
  private getMigrationIcon;
31
31
  run(): Promise<void>;
32
32
  }
33
- export { StringRayRefactoringStrategiesServer };
33
+ export { XrayRefactoringStrategiesServer };
@@ -8,7 +8,7 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
8
8
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
9
9
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
10
10
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
11
- class StringRayRefactoringStrategiesServer {
11
+ class XrayRefactoringStrategiesServer {
12
12
  server;
13
13
  constructor() {
14
14
  this.server = new Server({
@@ -790,7 +790,7 @@ class StringRayRefactoringStrategiesServer {
790
790
  }
791
791
  // Run the server if this file is executed directly
792
792
  if (import.meta.url === `file://${process.argv[1]}`) {
793
- const server = new StringRayRefactoringStrategiesServer();
793
+ const server = new XrayRefactoringStrategiesServer();
794
794
  server.run().catch(() => { });
795
795
  }
796
- export { StringRayRefactoringStrategiesServer };
796
+ export { XrayRefactoringStrategiesServer };
@@ -10,7 +10,7 @@ interface AnalyzeProposalArgs {
10
10
  evidence?: string[];
11
11
  proposalType?: string;
12
12
  }
13
- declare class StringRaySecurityAuditServer {
13
+ declare class XraySecurityAuditServer {
14
14
  private server;
15
15
  constructor();
16
16
  private setupToolHandlers;
@@ -45,4 +45,4 @@ declare class StringRaySecurityAuditServer {
45
45
  }>;
46
46
  run(): Promise<void>;
47
47
  }
48
- export { StringRaySecurityAuditServer };
48
+ export { XraySecurityAuditServer };
@@ -10,7 +10,7 @@ import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextpro
10
10
  import * as fs from "fs";
11
11
  import * as path from "path";
12
12
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
13
- class StringRaySecurityAuditServer {
13
+ class XraySecurityAuditServer {
14
14
  server;
15
15
  constructor() {
16
16
  this.server = new Server({
@@ -840,7 +840,7 @@ class StringRaySecurityAuditServer {
840
840
  }
841
841
  // Run the server if this file is executed directly
842
842
  if (import.meta.url === `file://${process.argv[1]}`) {
843
- const server = new StringRaySecurityAuditServer();
843
+ const server = new XraySecurityAuditServer();
844
844
  server.run().catch(() => { });
845
845
  }
846
- export { StringRaySecurityAuditServer };
846
+ export { XraySecurityAuditServer };
@@ -4,7 +4,7 @@
4
4
  * Knowledge skill for automated documentation creation, API docs generation,
5
5
  * code documentation maintenance, and technical writing assistance
6
6
  */
7
- declare class StringRayDocumentationGenerationServer {
7
+ declare class XrayDocumentationGenerationServer {
8
8
  private server;
9
9
  constructor();
10
10
  private setupToolHandlers;
@@ -44,4 +44,4 @@ declare class StringRayDocumentationGenerationServer {
44
44
  private getSeverityIcon;
45
45
  run(): Promise<void>;
46
46
  }
47
- export { StringRayDocumentationGenerationServer };
47
+ export { XrayDocumentationGenerationServer };
@@ -10,7 +10,7 @@ import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextpro
10
10
  import * as fs from "fs";
11
11
  import * as path from "path";
12
12
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
13
- class StringRayDocumentationGenerationServer {
13
+ class XrayDocumentationGenerationServer {
14
14
  server;
15
15
  constructor() {
16
16
  this.server = new Server({
@@ -1185,7 +1185,7 @@ class StringRayDocumentationGenerationServer {
1185
1185
  }
1186
1186
  // Run the server if this file is executed directly
1187
1187
  if (import.meta.url === `file://${process.argv[1]}`) {
1188
- const server = new StringRayDocumentationGenerationServer();
1188
+ const server = new XrayDocumentationGenerationServer();
1189
1189
  server.run().catch(() => { });
1190
1190
  }
1191
- export { StringRayDocumentationGenerationServer };
1191
+ export { XrayDocumentationGenerationServer };
@@ -4,7 +4,7 @@
4
4
  * Knowledge skill for comprehensive testing strategies, TDD/BDD implementation,
5
5
  * test coverage optimization, and automated testing workflows
6
6
  */
7
- declare class StringRayTestingBestPracticesServer {
7
+ declare class XrayTestingBestPracticesServer {
8
8
  private server;
9
9
  constructor();
10
10
  private setupToolHandlers;
@@ -33,4 +33,4 @@ declare class StringRayTestingBestPracticesServer {
33
33
  private getTestTypeIcon;
34
34
  run(): Promise<void>;
35
35
  }
36
- export { StringRayTestingBestPracticesServer };
36
+ export { XrayTestingBestPracticesServer };
@@ -8,7 +8,7 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
8
8
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
9
9
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
10
10
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
11
- class StringRayTestingBestPracticesServer {
11
+ class XrayTestingBestPracticesServer {
12
12
  server;
13
13
  constructor() {
14
14
  this.server = new Server({
@@ -860,7 +860,7 @@ class StringRayTestingBestPracticesServer {
860
860
  }
861
861
  // Run the server if this file is executed directly
862
862
  if (import.meta.url === `file://${process.argv[1]}`) {
863
- const server = new StringRayTestingBestPracticesServer();
863
+ const server = new XrayTestingBestPracticesServer();
864
864
  server.run().catch(() => { });
865
865
  }
866
- export { StringRayTestingBestPracticesServer };
866
+ export { XrayTestingBestPracticesServer };