0xray 2.1.1 → 2.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (254) hide show
  1. package/.opencode/codex.codex +1 -1
  2. package/.opencode/commands/dependency-audit.md +3 -3
  3. package/.opencode/enforcer-config.json +2 -2
  4. package/AGENTS.md +3 -2
  5. package/README.md +12 -11
  6. package/dist/AGENTS.md +3 -2
  7. package/dist/CHANGELOG.md +26 -0
  8. package/dist/README.md +12 -11
  9. package/dist/agents/code-reviewer.js +1 -1
  10. package/dist/analytics/routing-refiner.js +1 -1
  11. package/dist/cli/index.js +11 -1
  12. package/dist/cli/server.js +3 -3
  13. package/dist/core/activity-logger.d.ts +2 -2
  14. package/dist/core/activity-logger.js +4 -4
  15. package/dist/core/boot-orchestrator.d.ts +1 -1
  16. package/dist/core/boot-orchestrator.js +13 -28
  17. package/dist/core/bridge.mjs +3 -3
  18. package/dist/core/codex-formatter.js +2 -2
  19. package/dist/core/codex-injector.d.ts +0 -1
  20. package/dist/core/codex-injector.js +2 -3
  21. package/dist/core/config-loader.d.ts +1 -1
  22. package/dist/core/config-loader.js +1 -1
  23. package/dist/core/config-paths.d.ts +0 -2
  24. package/dist/core/config-paths.js +7 -8
  25. package/dist/core/context-loader.d.ts +1 -1
  26. package/dist/core/context-loader.js +1 -1
  27. package/dist/core/errors.d.ts +3 -0
  28. package/dist/core/errors.js +10 -0
  29. package/dist/core/features-config.js +1 -1
  30. package/dist/core/framework-logger.d.ts +3 -3
  31. package/dist/core/framework-logger.js +17 -9
  32. package/dist/core/index.d.ts +2 -2
  33. package/dist/core/index.js +4 -2
  34. package/dist/core/logging-config.d.ts +2 -1
  35. package/dist/core/logging-config.js +7 -7
  36. package/dist/enforcement/loaders/codex-loader.js +1 -1
  37. package/dist/execution/opencode-cli-invoker.js +5 -5
  38. package/dist/governance/governance-service.js +1 -1
  39. package/dist/index.d.ts +3 -3
  40. package/dist/index.js +3 -3
  41. package/dist/inference/inference-cycle.d.ts +1 -1
  42. package/dist/inference/inference-cycle.js +10 -10
  43. package/dist/integrations/base/Integration.js +1 -1
  44. package/dist/integrations/base/registry.js +19 -19
  45. package/dist/integrations/grok/grok-cli.js +17 -17
  46. package/dist/integrations/grok/hooks/pre-tool-use.js +1 -1
  47. package/dist/integrations/hermes-agent/bridge.mjs +1 -1
  48. package/dist/integrations/openclaw/api-server.d.ts +0 -1
  49. package/dist/integrations/openclaw/api-server.js +7 -10
  50. package/dist/integrations/openclaw/client.d.ts +0 -1
  51. package/dist/integrations/openclaw/client.js +22 -24
  52. package/dist/integrations/openclaw/hooks/xray-hooks.d.ts +0 -1
  53. package/dist/integrations/openclaw/hooks/xray-hooks.js +17 -18
  54. package/dist/integrations/plugins/plugin-registry.js +5 -5
  55. package/dist/mcps/architect-tools.server.d.ts +2 -4
  56. package/dist/mcps/architect-tools.server.js +112 -195
  57. package/dist/mcps/auto-format.server.d.ts +2 -4
  58. package/dist/mcps/auto-format.server.js +49 -95
  59. package/dist/mcps/boot-orchestrator.server.d.ts +2 -4
  60. package/dist/mcps/boot-orchestrator.server.js +73 -105
  61. package/dist/mcps/config/server-config-registry.js +3 -3
  62. package/dist/mcps/enforcer-tools.server.d.ts +2 -4
  63. package/dist/mcps/enforcer-tools.server.js +202 -285
  64. package/dist/mcps/estimation.server.d.ts +2 -4
  65. package/dist/mcps/estimation.server.js +63 -107
  66. package/dist/mcps/framework-compliance-audit.server.d.ts +2 -4
  67. package/dist/mcps/framework-compliance-audit.server.js +53 -82
  68. package/dist/mcps/framework-help.server.d.ts +2 -4
  69. package/dist/mcps/framework-help.server.js +63 -101
  70. package/dist/mcps/governance.server.js +2 -2
  71. package/dist/mcps/knowledge-skills/api-design.server.d.ts +2 -4
  72. package/dist/mcps/knowledge-skills/api-design.server.js +35 -67
  73. package/dist/mcps/knowledge-skills/architecture-patterns.server.d.ts +2 -10
  74. package/dist/mcps/knowledge-skills/architecture-patterns.server.js +35 -74
  75. package/dist/mcps/knowledge-skills/bug-triage-specialist.server.d.ts +2 -4
  76. package/dist/mcps/knowledge-skills/bug-triage-specialist.server.js +143 -162
  77. package/dist/mcps/knowledge-skills/code-analyzer.server.d.ts +3 -4
  78. package/dist/mcps/knowledge-skills/code-analyzer.server.js +20 -45
  79. package/dist/mcps/knowledge-skills/code-review.server.d.ts +2 -4
  80. package/dist/mcps/knowledge-skills/code-review.server.js +109 -143
  81. package/dist/mcps/knowledge-skills/content-creator.server.d.ts +2 -4
  82. package/dist/mcps/knowledge-skills/content-creator.server.js +205 -226
  83. package/dist/mcps/knowledge-skills/database-design.server.d.ts +2 -4
  84. package/dist/mcps/knowledge-skills/database-design.server.js +117 -151
  85. package/dist/mcps/knowledge-skills/devops-deployment.server.d.ts +2 -4
  86. package/dist/mcps/knowledge-skills/devops-deployment.server.js +71 -160
  87. package/dist/mcps/knowledge-skills/git-workflow.server.d.ts +2 -4
  88. package/dist/mcps/knowledge-skills/git-workflow.server.js +36 -68
  89. package/dist/mcps/knowledge-skills/growth-strategist.server.d.ts +2 -4
  90. package/dist/mcps/knowledge-skills/growth-strategist.server.js +303 -324
  91. package/dist/mcps/knowledge-skills/log-monitor.server.d.ts +2 -4
  92. package/dist/mcps/knowledge-skills/log-monitor.server.js +141 -160
  93. package/dist/mcps/knowledge-skills/mobile-development.server.d.ts +2 -4
  94. package/dist/mcps/knowledge-skills/mobile-development.server.js +92 -209
  95. package/dist/mcps/knowledge-skills/multimodal-looker.server.d.ts +2 -4
  96. package/dist/mcps/knowledge-skills/multimodal-looker.server.js +123 -159
  97. package/dist/mcps/knowledge-skills/performance-optimization.server.d.ts +2 -5
  98. package/dist/mcps/knowledge-skills/performance-optimization.server.js +155 -296
  99. package/dist/mcps/knowledge-skills/project-analysis.server.d.ts +2 -4
  100. package/dist/mcps/knowledge-skills/project-analysis.server.js +75 -226
  101. package/dist/mcps/knowledge-skills/refactoring-strategies.server.d.ts +2 -4
  102. package/dist/mcps/knowledge-skills/refactoring-strategies.server.js +63 -156
  103. package/dist/mcps/knowledge-skills/security-audit.server.d.ts +2 -4
  104. package/dist/mcps/knowledge-skills/security-audit.server.js +102 -136
  105. package/dist/mcps/knowledge-skills/seo-consultant.server.d.ts +2 -4
  106. package/dist/mcps/knowledge-skills/seo-consultant.server.js +80 -203
  107. package/dist/mcps/knowledge-skills/session-management.server.d.ts +2 -4
  108. package/dist/mcps/knowledge-skills/session-management.server.js +50 -203
  109. package/dist/mcps/knowledge-skills/skill-invocation.server.d.ts +2 -4
  110. package/dist/mcps/knowledge-skills/skill-invocation.server.js +168 -347
  111. package/dist/mcps/knowledge-skills/strategist.server.d.ts +2 -11
  112. package/dist/mcps/knowledge-skills/strategist.server.js +72 -122
  113. package/dist/mcps/knowledge-skills/tech-writer.server.d.ts +2 -4
  114. package/dist/mcps/knowledge-skills/tech-writer.server.js +87 -300
  115. package/dist/mcps/knowledge-skills/testing-best-practices.server.d.ts +2 -4
  116. package/dist/mcps/knowledge-skills/testing-best-practices.server.js +147 -182
  117. package/dist/mcps/knowledge-skills/testing-strategy.server.d.ts +2 -4
  118. package/dist/mcps/knowledge-skills/testing-strategy.server.js +78 -153
  119. package/dist/mcps/knowledge-skills/ui-ux-design.server.d.ts +2 -5
  120. package/dist/mcps/knowledge-skills/ui-ux-design.server.js +90 -399
  121. package/dist/mcps/lint.server.d.ts +2 -4
  122. package/dist/mcps/lint.server.js +51 -92
  123. package/dist/mcps/mcp-client.js +2 -2
  124. package/dist/mcps/model-health-check.server.d.ts +2 -4
  125. package/dist/mcps/model-health-check.server.js +32 -60
  126. package/dist/mcps/performance-analysis.server.d.ts +2 -4
  127. package/dist/mcps/performance-analysis.server.js +57 -88
  128. package/dist/mcps/processor-pipeline.server.d.ts +2 -4
  129. package/dist/mcps/processor-pipeline.server.js +69 -100
  130. package/dist/mcps/registry.json +1 -1
  131. package/dist/mcps/researcher.server.d.ts +3 -5
  132. package/dist/mcps/researcher.server.js +81 -154
  133. package/dist/mcps/security-scan.server.d.ts +2 -4
  134. package/dist/mcps/security-scan.server.js +54 -96
  135. package/dist/mcps/shared/knowledge-skill-base.d.ts +14 -0
  136. package/dist/mcps/shared/knowledge-skill-base.js +45 -0
  137. package/dist/{security → mcps/shared}/security-scanner.js +1 -1
  138. package/dist/mcps/state-manager.server.d.ts +2 -4
  139. package/dist/mcps/state-manager.server.js +115 -160
  140. package/dist/orchestrator/orchestrator.d.ts +1 -1
  141. package/dist/orchestrator/orchestrator.js +1 -1
  142. package/dist/orchestrator/universal-registry-bridge.js +1 -1
  143. package/dist/plugin/xray-codex-injection.d.ts +1 -1
  144. package/dist/plugin/xray-codex-injection.js +1 -1
  145. package/dist/postprocessor/PostProcessor.d.ts +4 -44
  146. package/dist/postprocessor/PostProcessor.js +39 -553
  147. package/dist/postprocessor/analysis/CodeChangeAnalyzer.d.ts +11 -0
  148. package/dist/postprocessor/analysis/CodeChangeAnalyzer.js +50 -0
  149. package/dist/postprocessor/compliance/ArchitecturalComplianceChecker.d.ts +11 -0
  150. package/dist/postprocessor/compliance/ArchitecturalComplianceChecker.js +356 -0
  151. package/dist/postprocessor/config/ProcessorConfigLoader.d.ts +44 -0
  152. package/dist/postprocessor/config/ProcessorConfigLoader.js +21 -0
  153. package/dist/postprocessor/reporting/PostProcessorReporter.d.ts +19 -0
  154. package/dist/postprocessor/reporting/PostProcessorReporter.js +96 -0
  155. package/dist/postprocessor/triggers/GitHookTrigger.js +11 -11
  156. package/dist/processors/implementations/refactoring-logging-processor-wrapper.d.ts +32 -0
  157. package/dist/processors/implementations/refactoring-logging-processor-wrapper.js +95 -1
  158. package/dist/processors/processor-manager.js +346 -314
  159. package/dist/reporting/report-formatter.js +1 -1
  160. package/dist/security/security-hardener.d.ts +69 -2
  161. package/dist/security/security-hardener.js +129 -1
  162. package/dist/skills/registry.json +1 -1
  163. package/dist/state/index.d.ts +3 -5
  164. package/dist/state/index.js +1 -7
  165. package/dist/state/state-manager.d.ts +1 -1
  166. package/dist/state/state-manager.js +2 -3
  167. package/package.json +14 -10
  168. package/scripts/node/setup.cjs +32 -0
  169. package/scripts/node/universal-version-manager.js +11 -11
  170. package/src/mcps/architect-tools.server.ts +112 -215
  171. package/src/mcps/auto-format.server.ts +50 -110
  172. package/src/mcps/boot-orchestrator.server.ts +75 -121
  173. package/src/mcps/config/__tests__/server-config-registry.test.ts +21 -12
  174. package/src/mcps/config/server-config-registry.ts +3 -3
  175. package/src/mcps/enforcer-tools.server.ts +212 -310
  176. package/src/mcps/estimation.server.ts +62 -122
  177. package/src/mcps/framework-compliance-audit.server.ts +52 -97
  178. package/src/mcps/framework-help.server.ts +64 -114
  179. package/src/mcps/governance.server.ts +2 -2
  180. package/src/mcps/knowledge-skills/api-design.server.ts +32 -77
  181. package/src/mcps/knowledge-skills/architecture-patterns.server.ts +31 -87
  182. package/src/mcps/knowledge-skills/bug-triage-specialist.server.ts +165 -193
  183. package/src/mcps/knowledge-skills/code-analyzer.server.ts +20 -55
  184. package/src/mcps/knowledge-skills/code-review.server.ts +114 -161
  185. package/src/mcps/knowledge-skills/content-creator.server.ts +218 -255
  186. package/src/mcps/knowledge-skills/database-design.server.ts +118 -165
  187. package/src/mcps/knowledge-skills/devops-deployment.server.ts +67 -172
  188. package/src/mcps/knowledge-skills/git-workflow.server.ts +32 -77
  189. package/src/mcps/knowledge-skills/growth-strategist.server.ts +324 -361
  190. package/src/mcps/knowledge-skills/log-monitor.server.ts +160 -187
  191. package/src/mcps/knowledge-skills/mobile-development.server.ts +89 -223
  192. package/src/mcps/knowledge-skills/multimodal-looker.server.ts +128 -175
  193. package/src/mcps/knowledge-skills/performance-optimization.server.ts +156 -329
  194. package/src/mcps/knowledge-skills/project-analysis.server.ts +72 -248
  195. package/src/mcps/knowledge-skills/refactoring-strategies.server.ts +59 -171
  196. package/src/mcps/knowledge-skills/security-audit.server.ts +104 -151
  197. package/src/mcps/knowledge-skills/seo-consultant.server.ts +80 -220
  198. package/src/mcps/knowledge-skills/session-management.server.ts +51 -232
  199. package/src/mcps/knowledge-skills/skill-invocation.server.ts +165 -372
  200. package/src/mcps/knowledge-skills/strategist.server.ts +72 -143
  201. package/src/mcps/knowledge-skills/tech-writer.server.ts +85 -350
  202. package/src/mcps/knowledge-skills/testing-best-practices.server.ts +146 -195
  203. package/src/mcps/knowledge-skills/testing-strategy.server.ts +75 -161
  204. package/src/mcps/knowledge-skills/ui-ux-design.server.ts +93 -487
  205. package/src/mcps/lint.server.ts +53 -107
  206. package/src/mcps/mcp-client.ts +2 -2
  207. package/src/mcps/model-health-check.server.ts +34 -71
  208. package/src/mcps/performance-analysis.server.ts +60 -104
  209. package/src/mcps/processor-pipeline.server.ts +72 -110
  210. package/src/mcps/registry.json +1 -1
  211. package/src/mcps/researcher.server.ts +88 -177
  212. package/src/mcps/security-scan.server.ts +55 -104
  213. package/src/mcps/shared/knowledge-skill-base.ts +62 -0
  214. package/src/mcps/shared/prompt-security-validator.ts +199 -0
  215. package/src/mcps/shared/security-scanner.ts +599 -0
  216. package/src/mcps/state-manager.server.ts +117 -175
  217. package/src/opencode/codex.codex +1 -1
  218. package/src/opencode/commands/dependency-audit.md +3 -3
  219. package/src/opencode/enforcer-config.json +2 -2
  220. package/src/skills/registry.json +1 -1
  221. package/xray/agents_template.md +109 -0
  222. package/xray/codex.json +598 -0
  223. package/xray/config.json +26 -0
  224. package/xray/features.json +132 -0
  225. package/xray/integrations.json +23 -0
  226. package/xray/routing-mappings.json +752 -0
  227. package/xray/workflow_state.json +28 -0
  228. package/dist/integrations/hermes-agent/__pycache__/__init__.cpython-313.pyc +0 -0
  229. package/dist/integrations/hermes-agent/__pycache__/conftest.cpython-313-pytest-9.0.2.pyc +0 -0
  230. package/dist/integrations/hermes-agent/__pycache__/schemas.cpython-313.pyc +0 -0
  231. package/dist/integrations/hermes-agent/__pycache__/test_plugin.cpython-313-pytest-9.0.2.pyc +0 -0
  232. package/dist/integrations/hermes-agent/__pycache__/test_plugin.cpython-313.pyc +0 -0
  233. package/dist/integrations/hermes-agent/__pycache__/tools.cpython-313.pyc +0 -0
  234. package/dist/integrations/hermes-agent/conftest.py +0 -14
  235. package/dist/integrations/hermes-agent/test_plugin.py +0 -1103
  236. package/dist/processors/implementations/refactoring-logging-processor.d.ts +0 -31
  237. package/dist/processors/implementations/refactoring-logging-processor.js +0 -96
  238. package/dist/processors/implementations/session-capture-processor.d.ts +0 -14
  239. package/dist/processors/implementations/session-capture-processor.js +0 -37
  240. package/dist/scripts/activate-kernel-pipeline.d.ts +0 -7
  241. package/dist/scripts/activate-kernel-pipeline.js +0 -101
  242. package/dist/security/index.d.ts +0 -13
  243. package/dist/security/index.js +0 -13
  244. package/dist/security/security-agent-coordinator.d.ts +0 -72
  245. package/dist/security/security-agent-coordinator.js +0 -204
  246. package/dist/security/security-auditor.d.ts +0 -56
  247. package/dist/security/security-auditor.js +0 -584
  248. package/dist/security/security-hardening-system.d.ts +0 -239
  249. package/dist/security/security-hardening-system.js +0 -727
  250. package/dist/security/security-orchestration-layer.d.ts +0 -119
  251. package/dist/security/security-orchestration-layer.js +0 -496
  252. /package/dist/{security → mcps/shared}/prompt-security-validator.d.ts +0 -0
  253. /package/dist/{security → mcps/shared}/prompt-security-validator.js +0 -0
  254. /package/dist/{security → mcps/shared}/security-scanner.d.ts +0 -0
@@ -3,104 +3,63 @@
3
3
  *
4
4
  * Automated code formatting hook with Prettier and framework-specific formatters
5
5
  */
6
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
7
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
8
- import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
9
6
  import { execFileSync } from "child_process";
10
7
  import fs from "fs";
11
8
  import { frameworkLogger } from "../core/framework-logger.js";
12
- class XrayAutoFormatServer {
13
- server;
9
+ import { XrayKnowledgeSkillBase } from "./shared/knowledge-skill-base.js";
10
+ class XrayAutoFormatServer extends XrayKnowledgeSkillBase {
14
11
  constructor() {
15
- this.server = new Server({
16
- name: "auto-format", version: "2.0.1",
17
- }, {
18
- capabilities: {
19
- tools: {},
20
- },
21
- });
22
- this.setupToolHandlers();
23
- frameworkLogger.log("mcps/auto-format", "initialize", "info");
24
- }
25
- setupToolHandlers() {
26
- // List available tools
27
- this.server.setRequestHandler(ListToolsRequestSchema, async () => {
28
- return {
29
- tools: [
30
- {
31
- name: "auto-format",
32
- description: "Automated code formatting hook with Prettier and framework-specific formatters",
33
- inputSchema: {
34
- type: "object",
35
- properties: {
36
- files: {
37
- type: "array",
38
- items: { type: "string" },
39
- description: "Specific files to format (optional - formats all if empty)",
40
- },
41
- formatters: {
42
- type: "array",
43
- items: {
44
- type: "string",
45
- enum: ["prettier", "eslint", "typescript", "all"],
46
- },
47
- default: ["all"],
48
- description: "Formatters to apply",
49
- },
50
- checkOnly: {
51
- type: "boolean",
52
- default: false,
53
- description: "Only check formatting without applying changes",
54
- },
55
- },
12
+ super("auto-format", "2.0.1");
13
+ this.tools = [
14
+ {
15
+ name: "auto-format",
16
+ description: "Automated code formatting hook with Prettier and framework-specific formatters",
17
+ inputSchema: {
18
+ type: "object",
19
+ properties: {
20
+ files: {
21
+ type: "array",
22
+ items: { type: "string" },
23
+ description: "Specific files to format (optional - formats all if empty)",
56
24
  },
57
- },
58
- {
59
- name: "format-check",
60
- description: "Check if code is properly formatted without making changes",
61
- inputSchema: {
62
- type: "object",
63
- properties: {
64
- files: {
65
- type: "array",
66
- items: { type: "string" },
67
- description: "Files to check formatting for",
68
- },
25
+ formatters: {
26
+ type: "array",
27
+ items: {
28
+ type: "string",
29
+ enum: ["prettier", "eslint", "typescript", "all"],
69
30
  },
31
+ default: ["all"],
32
+ description: "Formatters to apply",
33
+ },
34
+ checkOnly: {
35
+ type: "boolean",
36
+ default: false,
37
+ description: "Only check formatting without applying changes",
70
38
  },
71
39
  },
72
- ],
73
- };
74
- });
75
- // Handle tool calls
76
- this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
77
- const { name, arguments: args } = request.params;
78
- try {
79
- switch (name) {
80
- case "auto-format":
81
- return await this.handleAutoFormat(args);
82
- case "format-check":
83
- return await this.handleFormatCheck(args);
84
- default:
85
- throw new Error(`Unknown tool: ${name}`);
86
- }
87
- }
88
- catch (error) {
89
- frameworkLogger.log("mcps/auto-format", "tool-call", "error", {
90
- tool: name,
91
- error: String(error),
92
- });
93
- return {
94
- content: [
95
- {
96
- type: "text",
97
- text: `Error executing tool '${name}': ${error instanceof Error ? error.message : String(error)}`,
40
+ },
41
+ },
42
+ {
43
+ name: "format-check",
44
+ description: "Check if code is properly formatted without making changes",
45
+ inputSchema: {
46
+ type: "object",
47
+ properties: {
48
+ files: {
49
+ type: "array",
50
+ items: { type: "string" },
51
+ description: "Files to check formatting for",
98
52
  },
99
- ],
100
- isError: true,
101
- };
102
- }
103
- });
53
+ },
54
+ },
55
+ },
56
+ ];
57
+ this.handlers = {
58
+ "auto-format": async (args) => this.handleAutoFormat(args),
59
+ "format-check": async (args) => this.handleFormatCheck(args),
60
+ };
61
+ this.setupToolHandlers();
62
+ frameworkLogger.log("mcps/auto-format", "initialize", "info");
104
63
  }
105
64
  async handleAutoFormat(args) {
106
65
  const files = args.files || [];
@@ -399,15 +358,10 @@ ${checkResults.details.map((d) => `• ${d}`).join("\n")}
399
358
  - Errors: ${errorCount}
400
359
  - Formatters Applied: ${Object.keys(results.changes).length}`;
401
360
  }
402
- async run() {
403
- const transport = new StdioServerTransport();
404
- await this.server.connect(transport);
405
- frameworkLogger.log("mcps/auto-format", "start", "info");
406
- }
407
361
  }
408
362
  // Start the server if run directly
409
363
  if (import.meta.url === `file://${process.argv[1]}`) {
410
364
  const server = new XrayAutoFormatServer();
411
- server.run().catch((error) => frameworkLogger.log("mcps/auto-format", "run", "error", { error: String(error) }));
365
+ server.run("auto-format").catch((error) => frameworkLogger.log("mcps/auto-format", "run", "error", { error: String(error) }));
412
366
  }
413
367
  export { XrayAutoFormatServer };
@@ -3,13 +3,12 @@
3
3
  *
4
4
  * Advanced initialization orchestration with dependency management and health monitoring
5
5
  */
6
- declare class XrayBootOrchestratorServer {
7
- private server;
6
+ import { XrayKnowledgeSkillBase } from "./shared/knowledge-skill-base.js";
7
+ declare class XrayBootOrchestratorServer extends XrayKnowledgeSkillBase {
8
8
  private bootStatus;
9
9
  private bootSequence;
10
10
  constructor();
11
11
  private initializeDependencies;
12
- private setupToolHandlers;
13
12
  private handleExecuteBootSequence;
14
13
  private handleGetBootStatus;
15
14
  private handleInitializeComponent;
@@ -44,6 +43,5 @@ declare class XrayBootOrchestratorServer {
44
43
  private formatBootResults;
45
44
  private formatComponentStatus;
46
45
  private formatOverallStatus;
47
- run(): Promise<void>;
48
46
  }
49
47
  export { XrayBootOrchestratorServer };
@@ -3,16 +3,13 @@
3
3
  *
4
4
  * Advanced initialization orchestration with dependency management and health monitoring
5
5
  */
6
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
7
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
8
- import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
9
6
  import { execSync } from "child_process";
10
7
  import fs from "fs";
11
8
  import path from "path";
12
9
  import { frameworkLogger } from "../core/framework-logger.js";
13
10
  import { resolveLogDir, resolveStateDir } from "../core/config-paths.js";
14
- class XrayBootOrchestratorServer {
15
- server;
11
+ import { XrayKnowledgeSkillBase } from "./shared/knowledge-skill-base.js";
12
+ class XrayBootOrchestratorServer extends XrayKnowledgeSkillBase {
16
13
  bootStatus;
17
14
  // Boot sequence in dependency order
18
15
  bootSequence = [
@@ -29,13 +26,7 @@ class XrayBootOrchestratorServer {
29
26
  "framework-hooks",
30
27
  ];
31
28
  constructor() {
32
- this.server = new Server({
33
- name: "boot-orchestrator", version: "2.0.1",
34
- }, {
35
- capabilities: {
36
- tools: {},
37
- },
38
- });
29
+ super("boot-orchestrator", "2.0.1");
39
30
  this.bootStatus = {
40
31
  initialized: false,
41
32
  startTime: Date.now(),
@@ -45,6 +36,75 @@ class XrayBootOrchestratorServer {
45
36
  };
46
37
  // Initialize dependency map
47
38
  this.initializeDependencies();
39
+ this.tools = [
40
+ {
41
+ name: "execute-boot-sequence",
42
+ description: "Execute the complete 0xRay boot sequence with dependency resolution",
43
+ inputSchema: {
44
+ type: "object",
45
+ properties: {
46
+ config: { type: "object" },
47
+ skipHealthChecks: { type: "boolean", default: false },
48
+ parallelInit: { type: "boolean", default: true },
49
+ },
50
+ },
51
+ },
52
+ {
53
+ name: "get-boot-status",
54
+ description: "Get comprehensive boot orchestrator status and health",
55
+ inputSchema: {
56
+ type: "object",
57
+ properties: {
58
+ detailed: { type: "boolean", default: false },
59
+ component: { type: "string" },
60
+ },
61
+ },
62
+ },
63
+ {
64
+ name: "initialize-component",
65
+ description: "Initialize a specific framework component",
66
+ inputSchema: {
67
+ type: "object",
68
+ properties: {
69
+ component: {
70
+ type: "string",
71
+ enum: this.bootSequence,
72
+ },
73
+ force: { type: "boolean", default: false },
74
+ },
75
+ required: ["component"],
76
+ },
77
+ },
78
+ {
79
+ name: "validate-boot-dependencies",
80
+ description: "Validate all boot dependencies and prerequisites",
81
+ inputSchema: {
82
+ type: "object",
83
+ properties: {
84
+ fix: { type: "boolean", default: false },
85
+ verbose: { type: "boolean", default: false },
86
+ },
87
+ },
88
+ },
89
+ {
90
+ name: "shutdown-framework",
91
+ description: "Gracefully shutdown framework components",
92
+ inputSchema: {
93
+ type: "object",
94
+ properties: {
95
+ force: { type: "boolean", default: false },
96
+ saveState: { type: "boolean", default: true },
97
+ },
98
+ },
99
+ },
100
+ ];
101
+ this.handlers = {
102
+ "execute-boot-sequence": async (args) => this.handleExecuteBootSequence(args),
103
+ "get-boot-status": async (args) => this.handleGetBootStatus(args),
104
+ "initialize-component": async (args) => this.handleInitializeComponent(args),
105
+ "validate-boot-dependencies": async (args) => this.handleValidateBootDependencies(args),
106
+ "shutdown-framework": async (args) => this.handleShutdownFramework(args),
107
+ };
48
108
  this.setupToolHandlers();
49
109
  void frameworkLogger.log("mcps/boot-orchestrator", "initialize", "info");
50
110
  }
@@ -88,93 +148,6 @@ class XrayBootOrchestratorServer {
88
148
  "orchestrator",
89
149
  ]);
90
150
  }
91
- setupToolHandlers() {
92
- // List available tools
93
- this.server.setRequestHandler(ListToolsRequestSchema, async () => {
94
- return {
95
- tools: [
96
- {
97
- name: "execute-boot-sequence",
98
- description: "Execute the complete 0xRay boot sequence with dependency resolution",
99
- inputSchema: {
100
- type: "object",
101
- properties: {
102
- config: { type: "object" },
103
- skipHealthChecks: { type: "boolean", default: false },
104
- parallelInit: { type: "boolean", default: true },
105
- },
106
- },
107
- },
108
- {
109
- name: "get-boot-status",
110
- description: "Get comprehensive boot orchestrator status and health",
111
- inputSchema: {
112
- type: "object",
113
- properties: {
114
- detailed: { type: "boolean", default: false },
115
- component: { type: "string" },
116
- },
117
- },
118
- },
119
- {
120
- name: "initialize-component",
121
- description: "Initialize a specific framework component",
122
- inputSchema: {
123
- type: "object",
124
- properties: {
125
- component: {
126
- type: "string",
127
- enum: this.bootSequence,
128
- },
129
- force: { type: "boolean", default: false },
130
- },
131
- required: ["component"],
132
- },
133
- },
134
- {
135
- name: "validate-boot-dependencies",
136
- description: "Validate all boot dependencies and prerequisites",
137
- inputSchema: {
138
- type: "object",
139
- properties: {
140
- fix: { type: "boolean", default: false },
141
- verbose: { type: "boolean", default: false },
142
- },
143
- },
144
- },
145
- {
146
- name: "shutdown-framework",
147
- description: "Gracefully shutdown framework components",
148
- inputSchema: {
149
- type: "object",
150
- properties: {
151
- force: { type: "boolean", default: false },
152
- saveState: { type: "boolean", default: true },
153
- },
154
- },
155
- },
156
- ],
157
- };
158
- });
159
- // Handle tool calls
160
- this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
161
- const { name, arguments: args } = request.params;
162
- switch (name) {
163
- case "execute-boot-sequence":
164
- return await this.handleExecuteBootSequence(args);
165
- case "get-boot-status":
166
- return await this.handleGetBootStatus(args);
167
- case "initialize-component":
168
- return await this.handleInitializeComponent(args);
169
- case "validate-boot-dependencies":
170
- return await this.handleValidateBootDependencies(args);
171
- case "shutdown-framework":
172
- return await this.handleShutdownFramework(args);
173
- default:
174
- throw new Error(`Unknown tool: ${name}`);
175
- }
176
- });
177
- }
178
151
  async handleExecuteBootSequence(args) {
179
152
  const config = args.config || {};
180
153
  const skipHealthChecks = args.skipHealthChecks || false;
@@ -839,15 +812,10 @@ ${results.warnings.length > 0 ? `**Warnings:**\n${results.warnings.map((w) => `
839
812
  }
840
813
  return response;
841
814
  }
842
- async run() {
843
- const transport = new StdioServerTransport();
844
- await this.server.connect(transport);
845
- frameworkLogger.log("mcps/boot-orchestrator", "start", "success");
846
- }
847
815
  }
848
816
  // Start the server if run directly
849
817
  if (import.meta.url === `file://${process.argv[1]}`) {
850
818
  const server = new XrayBootOrchestratorServer();
851
- server.run().catch((error) => frameworkLogger.log("mcps/boot-orchestrator", "run", "error", { error: String(error) }));
819
+ server.run("boot-orchestrator").catch((error) => frameworkLogger.log("mcps/boot-orchestrator", "run", "error", { error: String(error) }));
852
820
  }
853
821
  export { XrayBootOrchestratorServer };
@@ -16,14 +16,14 @@ import fs from 'fs';
16
16
  /**
17
17
  * Resolve the correct framework root and MCP servers path.
18
18
  * Priority:
19
- * 1. STRRAY_DEV_PATH env var (explicit dev override)
19
+ * 1. XRAY_DEV_PATH env var (explicit dev override)
20
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() {
24
24
  // Highest priority: explicit environment override
25
- if (process.env.STRRAY_DEV_PATH) {
26
- const devPath = process.env.STRRAY_DEV_PATH;
25
+ if (process.env.XRAY_DEV_PATH) {
26
+ const devPath = process.env.XRAY_DEV_PATH || "";
27
27
  return {
28
28
  frameworkRoot: devPath,
29
29
  mcpServersPath: join(devPath, 'mcps'),
@@ -4,10 +4,9 @@
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 XrayEnforcerToolsServer {
8
- private server;
7
+ import { XrayKnowledgeSkillBase } from "./shared/knowledge-skill-base.js";
8
+ declare class XrayEnforcerToolsServer extends XrayKnowledgeSkillBase {
9
9
  constructor();
10
- private setupToolHandlers;
11
10
  private ruleValidation;
12
11
  private codexEnforcement;
13
12
  private contextAnalysisValidation;
@@ -21,7 +20,6 @@ declare class XrayEnforcerToolsServer {
21
20
  private performQualityGateCheck;
22
21
  private simulateEnforcementStatus;
23
22
  private performPreCommitValidation;
24
- run(): Promise<void>;
25
23
  private securityScan;
26
24
  }
27
25
  export default XrayEnforcerToolsServer;