0xray 3.1.0 → 3.2.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 (437) hide show
  1. package/.gitignore.default +59 -0
  2. package/.mcp.json +35 -0
  3. package/.opencode/codex.codex +1 -1
  4. package/.opencode/commands/auto-format.md +3 -3
  5. package/.opencode/commands/auto-summary-capture.md +2 -2
  6. package/.opencode/commands/dependency-audit.md +3 -3
  7. package/.opencode/commands/enforcer-daily-scan.md +3 -3
  8. package/.opencode/commands/framework-compliance-audit.md +4 -4
  9. package/.opencode/commands/interactive-validator.md +2 -2
  10. package/.opencode/commands/job-summary-logger.md +2 -2
  11. package/.opencode/commands/mode-switch.md +1 -1
  12. package/.opencode/commands/model-health-check.md +2 -2
  13. package/.opencode/commands/performance-analysis.md +2 -2
  14. package/.opencode/commands/pre-commit-introspection.md +3 -3
  15. package/.opencode/commands/security-scan.md +3 -3
  16. package/.opencode/commands/sisyphus-validation.md +3 -3
  17. package/.opencode/commands/summary-logger.md +6 -6
  18. package/.opencode/enforcer-config.json +2 -2
  19. package/.opencode/hooks/post-commit +1 -1
  20. package/.opencode/init.sh +6 -0
  21. package/.plugin/plugin.json +11 -0
  22. package/AGENTS-consumer.md +46 -0
  23. package/AGENTS.md +2 -12
  24. package/LICENSE +1 -1
  25. package/README.md +6 -6
  26. package/SKILLS.md +140 -0
  27. package/dist/.gitignore.default +59 -0
  28. package/dist/AGENTS.md +2 -12
  29. package/dist/CHANGELOG.md +54 -0
  30. package/dist/LICENSE +1 -1
  31. package/dist/README.md +6 -6
  32. package/dist/SKILLS.md +140 -0
  33. package/dist/agents/index.js +3 -1
  34. package/dist/agents/registry.js +13 -0
  35. package/dist/analytics/consent-manager.js +0 -1
  36. package/dist/analytics/emerging-pattern-detector.js +0 -1
  37. package/dist/analytics/pattern-learning-engine.js +0 -1
  38. package/dist/analytics/pattern-performance-tracker.js +0 -1
  39. package/dist/analytics/predictive-analytics.js +0 -1
  40. package/dist/analytics/prompt-pattern-analyzer.js +0 -1
  41. package/dist/analytics/routing-performance-analyzer.js +0 -1
  42. package/dist/analytics/routing-refiner.js +1 -2
  43. package/dist/analytics/simple-pattern-analyzer.js +0 -1
  44. package/dist/architect/architectural-integrity.js +3 -3
  45. package/dist/benchmark/performance-benchmark.js +1 -2
  46. package/dist/cli/commands/antigravity-status.js +23 -23
  47. package/dist/cli/commands/archive-logs.js +0 -1
  48. package/dist/cli/commands/credible-init.js +1 -1
  49. package/dist/cli/commands/hermes-install.js +8 -0
  50. package/dist/cli/commands/mcp-install.js +1 -1
  51. package/dist/cli/commands/openclaw-install.js +9 -0
  52. package/dist/cli/commands/opencode-install.js +35 -0
  53. package/dist/cli/commands/plugin-commands.js +0 -1
  54. package/dist/cli/commands/skill-install.js +39 -2
  55. package/dist/cli/commands/status.js +16 -13
  56. package/dist/cli/commands/storyteller.js +1 -1
  57. package/dist/cli/index.js +14 -13
  58. package/dist/core/activity-logger.js +4 -5
  59. package/dist/core/adaptive-kernel.js +0 -1
  60. package/dist/core/agent-spawn-gate.js +1 -1
  61. package/dist/core/boot-orchestrator.js +14 -25
  62. package/dist/core/bridge.mjs +4 -5
  63. package/dist/core/codex-formatter.js +1 -3
  64. package/dist/core/codex-injector.js +3 -4
  65. package/dist/core/config-loader.js +36 -29
  66. package/dist/core/config-paths.js +30 -23
  67. package/dist/core/context-loader.js +0 -4
  68. package/dist/core/context-validator.js +0 -1
  69. package/dist/core/features-config.js +38 -2
  70. package/dist/core/index.js +2 -2
  71. package/dist/core/kernel-patterns.js +0 -1
  72. package/dist/core/logging-config.js +7 -7
  73. package/dist/core/model-router.js +23 -64
  74. package/dist/core/orchestrator.js +1 -1
  75. package/dist/core/system-prompt-generator.js +0 -1
  76. package/dist/core/xray-activation.js +3 -4
  77. package/dist/delegation/agent-delegator.js +2 -3
  78. package/dist/delegation/agent-expertise.js +0 -1
  79. package/dist/delegation/analytics/index.js +0 -1
  80. package/dist/delegation/analytics/learning-engine.js +0 -1
  81. package/dist/delegation/analytics/outcome-tracker.js +0 -1
  82. package/dist/delegation/analytics/routing-analytics.js +0 -1
  83. package/dist/delegation/ast-code-parser.js +0 -1
  84. package/dist/delegation/complexity-analyzer.js +0 -1
  85. package/dist/delegation/dependency-graph-builder.js +0 -1
  86. package/dist/delegation/index.js +0 -1
  87. package/dist/delegation/metrics-aggregator.js +0 -1
  88. package/dist/delegation/session-coordinator.js +0 -1
  89. package/dist/delegation/strategy-selector.js +0 -1
  90. package/dist/delegation/voting-coordinator.js +0 -1
  91. package/dist/delegation/voting-types.js +0 -1
  92. package/dist/delegation/weighted-voting-aggregator.js +0 -1
  93. package/dist/enforcement/core/index.js +0 -1
  94. package/dist/enforcement/core/rule-executor.js +0 -1
  95. package/dist/enforcement/core/rule-hierarchy.js +0 -1
  96. package/dist/enforcement/core/rule-registry.js +0 -1
  97. package/dist/enforcement/core/violation-fixer.js +0 -1
  98. package/dist/enforcement/enforcer-tools.js +2 -2
  99. package/dist/enforcement/index.js +0 -1
  100. package/dist/enforcement/loaders/agent-triage-loader.js +0 -1
  101. package/dist/enforcement/loaders/agents-md-validation-loader.js +0 -1
  102. package/dist/enforcement/loaders/base-loader.js +0 -1
  103. package/dist/enforcement/loaders/codex-loader.js +2 -3
  104. package/dist/enforcement/loaders/index.js +0 -1
  105. package/dist/enforcement/loaders/loader-orchestrator.js +0 -1
  106. package/dist/enforcement/loaders/processor-loader.js +0 -1
  107. package/dist/enforcement/types.js +0 -1
  108. package/dist/enforcement/validators/architecture-validators.js +0 -1
  109. package/dist/enforcement/validators/base-validator.js +0 -1
  110. package/dist/enforcement/validators/code-quality-validators.js +0 -1
  111. package/dist/enforcement/validators/index.js +0 -1
  112. package/dist/enforcement/validators/security-validators.js +0 -1
  113. package/dist/enforcement/validators/testing-validators.js +0 -1
  114. package/dist/enforcement/validators/validator-registry.js +0 -1
  115. package/dist/execution/opencode-cli-invoker.js +1 -1
  116. package/dist/governance/codex-policy.service.js +0 -1
  117. package/dist/governance/governance-service.js +1 -1
  118. package/dist/governance/llm-governance-provider.js +14 -1
  119. package/dist/index.js +3 -5
  120. package/dist/inference/inference-agent-invoker.js +67 -0
  121. package/dist/inference/inference-applier.js +178 -0
  122. package/dist/inference/inference-cycle.js +52 -828
  123. package/dist/inference/inference-proposal-generator.js +149 -0
  124. package/dist/infrastructure/iac-validator.js +465 -0
  125. package/dist/infrastructure/schemas/cloud-schemas.js +488 -0
  126. package/dist/integrations/base/ExampleIntegration.js +0 -1
  127. package/dist/integrations/base/Integration.js +0 -1
  128. package/dist/integrations/base/README.md +1 -1
  129. package/dist/integrations/base/index.js +0 -1
  130. package/dist/integrations/base/registry.js +0 -1
  131. package/dist/integrations/base/types.js +0 -1
  132. package/dist/integrations/enforcement-gate.js +5 -5
  133. package/dist/integrations/governance/governance-client.js +0 -1
  134. package/dist/integrations/governance/index.js +11 -19
  135. package/dist/integrations/governance/types.js +0 -1
  136. package/dist/integrations/grok/grok-cli.js +20 -6
  137. package/dist/integrations/grok/hooks/pre-tool-use.js +3 -3
  138. package/dist/integrations/grok/plugin/0xray/.mcp.json +16 -4
  139. package/dist/integrations/grok/plugin/0xray/hooks/hooks.json +2 -2
  140. package/dist/integrations/hermes-agent/__init__.py +29 -14
  141. package/dist/integrations/hermes-agent/bridge.mjs +76 -4
  142. package/dist/integrations/hermes-agent/schemas.py +49 -0
  143. package/dist/integrations/hermes-agent/test_plugin.py +7 -7
  144. package/dist/integrations/hermes-agent/tools.py +107 -3
  145. package/dist/integrations/openclaw/README.md +6 -6
  146. package/dist/integrations/openclaw/api-server.js +0 -1
  147. package/dist/integrations/openclaw/client.js +0 -1
  148. package/dist/integrations/openclaw/config.js +1 -2
  149. package/dist/integrations/openclaw/hooks/{strray-hooks.js → xray-hooks.js} +0 -1
  150. package/dist/integrations/openclaw/index.js +2 -3
  151. package/dist/integrations/openclaw/types.js +3 -4
  152. package/dist/integrations/plugins/index.js +0 -1
  153. package/dist/integrations/plugins/plugin-integration.js +1 -2
  154. package/dist/integrations/plugins/plugin-registry.js +1 -2
  155. package/dist/mcps/agent-resolver.js +0 -1
  156. package/dist/mcps/architect-tools.server.js +121 -186
  157. package/dist/mcps/auto-format.server.js +57 -75
  158. package/dist/mcps/boot-orchestrator.server.js +68 -86
  159. package/dist/mcps/config/config-loader.js +46 -9
  160. package/dist/mcps/config/plugin-server-registry.js +0 -1
  161. package/dist/mcps/enforcer-tools.server.js +208 -274
  162. package/dist/mcps/estimation.server.js +65 -108
  163. package/dist/mcps/framework-compliance-audit.server.js +53 -82
  164. package/dist/mcps/framework-help.server.js +73 -90
  165. package/dist/mcps/governance.server.js +104 -152
  166. package/dist/mcps/knowledge-skills/api-design.server.js +35 -66
  167. package/dist/mcps/knowledge-skills/architecture-patterns.server.js +35 -66
  168. package/dist/mcps/knowledge-skills/bug-triage-specialist.server.js +125 -165
  169. package/dist/mcps/knowledge-skills/code-analyzer.server.js +211 -238
  170. package/dist/mcps/knowledge-skills/code-review.server.js +109 -143
  171. package/dist/mcps/knowledge-skills/content-creator.server.js +205 -227
  172. package/dist/mcps/knowledge-skills/database-design.server.js +117 -151
  173. package/dist/mcps/knowledge-skills/devops-deployment.server.js +125 -158
  174. package/dist/mcps/knowledge-skills/git-workflow.server.js +36 -68
  175. package/dist/mcps/knowledge-skills/growth-strategist.server.js +303 -325
  176. package/dist/mcps/knowledge-skills/log-monitor.server.js +141 -161
  177. package/dist/mcps/knowledge-skills/mobile-development.server.js +172 -202
  178. package/dist/mcps/knowledge-skills/multimodal-looker.server.js +124 -160
  179. package/dist/mcps/knowledge-skills/performance-optimization.server.js +89 -139
  180. package/dist/mcps/knowledge-skills/project-analysis.server.js +132 -219
  181. package/dist/mcps/knowledge-skills/refactoring-strategies.server.js +117 -151
  182. package/dist/mcps/knowledge-skills/security-audit.server.js +17 -144
  183. package/dist/mcps/knowledge-skills/seo-consultant.server.js +22 -214
  184. package/dist/mcps/knowledge-skills/session-management.server.js +15 -91
  185. package/dist/mcps/knowledge-skills/skill-invocation.server.js +83 -359
  186. package/dist/mcps/knowledge-skills/strategist.server.js +12 -57
  187. package/dist/mcps/knowledge-skills/tech-writer.server.js +18 -193
  188. package/dist/mcps/knowledge-skills/testing-best-practices.server.js +20 -192
  189. package/dist/mcps/knowledge-skills/testing-strategy.server.js +19 -157
  190. package/dist/mcps/knowledge-skills/ui-ux-design.server.js +24 -297
  191. package/dist/mcps/lint.server.js +51 -92
  192. package/dist/mcps/model-health-check.server.js +34 -61
  193. package/dist/mcps/orchestrator/aside-context.js +207 -0
  194. package/dist/mcps/orchestrator/handlers/complexity-handler.js +5 -1
  195. package/dist/mcps/orchestrator/handlers/status-handler.js +8 -1
  196. package/dist/mcps/orchestrator/handlers/task-handler.js +5 -0
  197. package/dist/mcps/orchestrator/index.js +5 -0
  198. package/dist/mcps/orchestrator/server.js +65 -9
  199. package/dist/mcps/orchestrator.server.js +2 -1
  200. package/dist/mcps/performance-analysis.server.js +57 -88
  201. package/dist/mcps/processor-pipeline.server.js +70 -100
  202. package/dist/mcps/registry.json +1 -1
  203. package/dist/mcps/researcher.server.js +81 -154
  204. package/dist/mcps/security-scan.server.js +57 -71
  205. package/dist/mcps/shared/knowledge-skill-base.js +11 -4
  206. package/dist/mcps/state-manager.server.js +127 -155
  207. package/dist/metrics/agent-metrics.js +1 -1
  208. package/dist/monitoring/nudge-watchdog.js +0 -1
  209. package/dist/nucleus/default-plugins.js +13 -19
  210. package/dist/nucleus/index.js +0 -1
  211. package/dist/orchestrator/agent-spawn-governor.js +0 -1
  212. package/dist/orchestrator/enhanced-multi-agent-orchestrator.js +2 -2
  213. package/dist/orchestrator/intelligent-commit-batcher.js +2 -11
  214. package/dist/orchestrator/multi-agent-orchestration-coordinator.js +1 -2
  215. package/dist/orchestrator/orchestrator.js +8 -19
  216. package/dist/orchestrator/self-direction-activation.js +0 -1
  217. package/dist/orchestrator/universal-registry-bridge.js +1 -2
  218. package/dist/performance/performance-budget-enforcer.js +0 -1
  219. package/dist/performance/performance-regression-tester.js +0 -1
  220. package/dist/plugin/plugin-codex-context.js +87 -0
  221. package/dist/plugin/plugin-helpers.js +155 -0
  222. package/dist/plugin/plugin-logger.js +46 -0
  223. package/dist/plugin/plugin-modules.js +144 -0
  224. package/dist/plugin/plugin-quality-gate.js +88 -0
  225. package/dist/plugin/plugin-types.js +1 -0
  226. package/dist/plugin/xray-codex-injection.js +39 -558
  227. package/dist/postprocessor/PostProcessor.js +7 -13
  228. package/dist/postprocessor/analysis/CodeChangeAnalyzer.js +50 -0
  229. package/dist/postprocessor/config/ProcessorConfigLoader.js +16 -0
  230. package/dist/postprocessor/integration.js +194 -0
  231. package/dist/postprocessor/metamorphosis/SelfProposalEngine.js +472 -0
  232. package/dist/postprocessor/metamorphosis/index.js +1 -0
  233. package/dist/postprocessor/redeploy/RetryHandler.js +118 -0
  234. package/dist/postprocessor/services/RegressionAnalysisService.js +2 -3
  235. package/dist/postprocessor/triggers/APITrigger.js +0 -1
  236. package/dist/postprocessor/triggers/GitHookTrigger.js +4 -4
  237. package/dist/postprocessor/triggers/WebhookTrigger.js +0 -1
  238. package/dist/processors/implementations/agents-md-validation-processor.js +0 -1
  239. package/dist/processors/implementations/async-pattern-processor.js +0 -1
  240. package/dist/processors/implementations/console-log-guard-processor.js +0 -1
  241. package/dist/processors/implementations/coverage-analysis-processor.js +0 -1
  242. package/dist/processors/implementations/inference-improvement-processor.js +2 -10
  243. package/dist/processors/implementations/log-protection-processor.js +0 -1
  244. package/dist/processors/implementations/nudge-processor.js +0 -1
  245. package/dist/processors/implementations/performance-budget-processor.js +0 -1
  246. package/dist/processors/implementations/postprocessor-chain-validator.js +0 -1
  247. package/dist/processors/implementations/publish-preflight-processor.js +4 -13
  248. package/dist/processors/implementations/session-summary-processor.js +8 -16
  249. package/dist/processors/implementations/spawn-governance-processor.js +0 -1
  250. package/dist/processors/implementations/storytelling-trigger-processor.js +3 -29
  251. package/dist/processors/implementations/test-auto-creation-processor.js +0 -1
  252. package/dist/processors/implementations/typescript-compilation-processor.js +0 -1
  253. package/dist/processors/implementations/version-compliance-processor.js +0 -1
  254. package/dist/processors/processor-interfaces.js +0 -1
  255. package/dist/processors/processor-types.js +0 -1
  256. package/dist/public/about.html +6 -6
  257. package/dist/public/enterprise.html +1 -1
  258. package/dist/public/features.html +2 -2
  259. package/dist/public/index.html +4 -4
  260. package/dist/reporting/report-formatter.js +1 -1
  261. package/dist/scripts/activate-kernel-pipeline.js +2 -2
  262. package/dist/scripts/integration.js +0 -1
  263. package/dist/scripts/pre-command +1 -1
  264. package/dist/security/comprehensive-security-audit.js +0 -1
  265. package/dist/security/security-agent-coordinator.js +0 -1
  266. package/dist/security/security-auditor.js +0 -1
  267. package/dist/security/security-hardener.js +0 -1
  268. package/dist/security/security-hardening-system.js +0 -1
  269. package/dist/security/security-headers.js +0 -1
  270. package/dist/security/security-orchestration-layer.js +0 -1
  271. package/dist/services/inference-tuner.js +1 -2
  272. package/dist/session/session-cleanup-manager.js +0 -1
  273. package/dist/session/session-monitor.js +0 -1
  274. package/dist/session/session-state-manager.js +0 -1
  275. package/dist/skills/api-design/SKILL.md +1 -1
  276. package/dist/skills/architect-tools/SKILL.md +1 -1
  277. package/dist/skills/architecture-patterns/SKILL.md +1 -1
  278. package/dist/skills/auto-format/SKILL.md +1 -1
  279. package/dist/skills/boot-orchestrator/SKILL.md +1 -1
  280. package/dist/skills/bug-triage/SKILL.md +1 -1
  281. package/dist/skills/code-analyzer/SKILL.md +1 -1
  282. package/dist/skills/code-review/SKILL.md +1 -1
  283. package/dist/skills/enforcer/SKILL.md +1 -1
  284. package/dist/skills/framework-compliance-audit/SKILL.md +1 -1
  285. package/dist/skills/git-workflow/SKILL.md +1 -1
  286. package/dist/skills/hermes-agent/SKILL.md +2 -2
  287. package/dist/skills/inference-improve/SKILL.md +1 -1
  288. package/dist/skills/lint/SKILL.md +1 -1
  289. package/dist/skills/log-monitor/SKILL.md +1 -1
  290. package/dist/skills/model-health-check/SKILL.md +1 -1
  291. package/dist/skills/multimodal-looker/SKILL.md +1 -1
  292. package/dist/skills/orchestrator/SKILL.md +1 -1
  293. package/dist/skills/performance-analysis/SKILL.md +1 -1
  294. package/dist/skills/performance-optimization/SKILL.md +1 -1
  295. package/dist/skills/processor-pipeline/SKILL.md +1 -1
  296. package/dist/skills/project-analysis/SKILL.md +1 -1
  297. package/dist/skills/refactoring-strategies/SKILL.md +1 -1
  298. package/dist/skills/registry.json +1 -1
  299. package/dist/skills/researcher/SKILL.md +1 -1
  300. package/dist/skills/security-audit/SKILL.md +1 -1
  301. package/dist/skills/security-scan/SKILL.md +1 -1
  302. package/dist/skills/session-management/SKILL.md +1 -1
  303. package/dist/skills/state-manager/SKILL.md +1 -1
  304. package/dist/skills/storyteller/SKILL.md +1 -1
  305. package/dist/skills/testing-best-practices/SKILL.md +1 -1
  306. package/dist/skills/testing-strategy/SKILL.md +1 -1
  307. package/dist/skills/ui-ux-design/SKILL.md +1 -1
  308. package/dist/skills/xray-orchestrator/index.js +0 -1
  309. package/dist/state/index.js +0 -1
  310. package/dist/state/state-manager.js +1 -2
  311. package/dist/utils/codex-parser.js +0 -1
  312. package/dist/utils/import-resolver.js +1 -1
  313. package/dist/utils/language-detector.js +0 -1
  314. package/dist/utils/path-resolver.js +2 -2
  315. package/dist/utils/shutdown-handler.js +0 -1
  316. package/dist/validation/agent-config-validator.js +280 -0
  317. package/dist/validation/orchestration-flow-validator.js +606 -0
  318. package/package.json +10 -3
  319. package/scripts/hooks/pre-command +1 -1
  320. package/scripts/hooks/run-hook.js +2 -2
  321. package/scripts/node/auto-reflection-generator.mjs +30 -36
  322. package/scripts/node/govern-reflection.mjs +1 -1
  323. package/scripts/node/postinstall.cjs +37 -2
  324. package/scripts/node/release.mjs +2 -2
  325. package/scripts/node/setup-xai-oauth.mjs +244 -0
  326. package/scripts/node/setup.cjs +28 -0
  327. package/scripts/node/universal-version-manager.js +8 -8
  328. package/scripts/node/version-manager.mjs +1 -1
  329. package/src/integrations/grok/plugin/0xray/.mcp.json +16 -4
  330. package/src/integrations/grok/plugin/0xray/hooks/hooks.json +2 -2
  331. package/src/mcps/agent-resolver.ts +0 -1
  332. package/src/mcps/architect-tools.server.ts +130 -212
  333. package/src/mcps/auto-format.server.ts +75 -104
  334. package/src/mcps/boot-orchestrator.server.ts +72 -97
  335. package/src/mcps/config/__tests__/config-loader.test.ts +33 -37
  336. package/src/mcps/config/config-loader.ts +57 -11
  337. package/src/mcps/config/plugin-server-registry.ts +0 -1
  338. package/src/mcps/enforcer-tools.server.ts +218 -295
  339. package/src/mcps/estimation.server.ts +64 -123
  340. package/src/mcps/framework-compliance-audit.server.ts +54 -96
  341. package/src/mcps/framework-help.server.ts +76 -97
  342. package/src/mcps/governance.server.ts +104 -164
  343. package/src/mcps/knowledge-skills/api-design.server.ts +35 -73
  344. package/src/mcps/knowledge-skills/architecture-patterns.server.ts +34 -73
  345. package/src/mcps/knowledge-skills/bug-triage-specialist.server.ts +149 -194
  346. package/src/mcps/knowledge-skills/code-analyzer.server.ts +223 -255
  347. package/src/mcps/knowledge-skills/code-review.server.ts +116 -158
  348. package/src/mcps/knowledge-skills/content-creator.server.ts +221 -248
  349. package/src/mcps/knowledge-skills/database-design.server.ts +120 -161
  350. package/src/mcps/knowledge-skills/devops-deployment.server.ts +128 -168
  351. package/src/mcps/knowledge-skills/git-workflow.server.ts +34 -78
  352. package/src/mcps/knowledge-skills/growth-strategist.server.ts +324 -362
  353. package/src/mcps/knowledge-skills/log-monitor.server.ts +70 -97
  354. package/src/mcps/knowledge-skills/mobile-development.server.ts +18 -58
  355. package/src/mcps/knowledge-skills/multimodal-looker.server.ts +15 -61
  356. package/src/mcps/knowledge-skills/performance-optimization.server.ts +14 -75
  357. package/src/mcps/knowledge-skills/project-analysis.server.ts +14 -121
  358. package/src/mcps/knowledge-skills/refactoring-strategies.server.ts +15 -61
  359. package/src/mcps/knowledge-skills/security-audit.server.ts +20 -158
  360. package/src/mcps/knowledge-skills/seo-consultant.server.ts +25 -228
  361. package/src/mcps/knowledge-skills/session-management.server.ts +19 -107
  362. package/src/mcps/knowledge-skills/skill-invocation.server.ts +89 -380
  363. package/src/mcps/knowledge-skills/strategist.server.ts +15 -65
  364. package/src/mcps/knowledge-skills/tech-writer.server.ts +21 -206
  365. package/src/mcps/knowledge-skills/testing-best-practices.server.ts +23 -205
  366. package/src/mcps/knowledge-skills/testing-strategy.server.ts +22 -166
  367. package/src/mcps/knowledge-skills/ui-ux-design.server.ts +27 -343
  368. package/src/mcps/lint.server.ts +53 -106
  369. package/src/mcps/model-health-check.server.ts +35 -71
  370. package/src/mcps/orchestrator/aside-context.ts +245 -0
  371. package/src/mcps/orchestrator/handlers/complexity-handler.ts +9 -3
  372. package/src/mcps/orchestrator/handlers/status-handler.ts +11 -1
  373. package/src/mcps/orchestrator/handlers/task-handler.ts +8 -1
  374. package/src/mcps/orchestrator/index.ts +29 -0
  375. package/src/mcps/orchestrator/server.ts +81 -25
  376. package/src/mcps/orchestrator/types.ts +37 -0
  377. package/src/mcps/orchestrator.server.ts +2 -1
  378. package/src/mcps/performance-analysis.server.ts +60 -103
  379. package/src/mcps/processor-pipeline.server.ts +72 -109
  380. package/src/mcps/registry.json +1 -1
  381. package/src/mcps/researcher.server.ts +88 -176
  382. package/src/mcps/security-scan.server.ts +58 -77
  383. package/src/mcps/shared/knowledge-skill-base.ts +12 -4
  384. package/src/mcps/state-manager.server.ts +132 -172
  385. package/src/opencode/codex.codex +1 -1
  386. package/src/opencode/commands/auto-format.md +3 -3
  387. package/src/opencode/commands/auto-summary-capture.md +2 -2
  388. package/src/opencode/commands/dependency-audit.md +3 -3
  389. package/src/opencode/commands/enforcer-daily-scan.md +3 -3
  390. package/src/opencode/commands/framework-compliance-audit.md +4 -4
  391. package/src/opencode/commands/interactive-validator.md +2 -2
  392. package/src/opencode/commands/job-summary-logger.md +2 -2
  393. package/src/opencode/commands/mode-switch.md +1 -1
  394. package/src/opencode/commands/model-health-check.md +2 -2
  395. package/src/opencode/commands/performance-analysis.md +2 -2
  396. package/src/opencode/commands/pre-commit-introspection.md +3 -3
  397. package/src/opencode/commands/security-scan.md +3 -3
  398. package/src/opencode/commands/sisyphus-validation.md +3 -3
  399. package/src/opencode/commands/summary-logger.md +6 -6
  400. package/src/opencode/enforcer-config.json +2 -2
  401. package/src/skills/api-design/SKILL.md +1 -1
  402. package/src/skills/architect-tools/SKILL.md +1 -1
  403. package/src/skills/architecture-patterns/SKILL.md +1 -1
  404. package/src/skills/auto-format/SKILL.md +1 -1
  405. package/src/skills/boot-orchestrator/SKILL.md +1 -1
  406. package/src/skills/bug-triage/SKILL.md +1 -1
  407. package/src/skills/code-analyzer/SKILL.md +1 -1
  408. package/src/skills/code-review/SKILL.md +1 -1
  409. package/src/skills/enforcer/SKILL.md +1 -1
  410. package/src/skills/framework-compliance-audit/SKILL.md +1 -1
  411. package/src/skills/git-workflow/SKILL.md +1 -1
  412. package/src/skills/hermes-agent/SKILL.md +2 -2
  413. package/src/skills/inference-improve/SKILL.md +1 -1
  414. package/src/skills/lint/SKILL.md +1 -1
  415. package/src/skills/log-monitor/SKILL.md +1 -1
  416. package/src/skills/model-health-check/SKILL.md +1 -1
  417. package/src/skills/multimodal-looker/SKILL.md +1 -1
  418. package/src/skills/orchestrator/SKILL.md +1 -1
  419. package/src/skills/performance-analysis/SKILL.md +1 -1
  420. package/src/skills/performance-optimization/SKILL.md +1 -1
  421. package/src/skills/processor-pipeline/SKILL.md +1 -1
  422. package/src/skills/project-analysis/SKILL.md +1 -1
  423. package/src/skills/refactoring-strategies/SKILL.md +1 -1
  424. package/src/skills/registry.json +1 -1
  425. package/src/skills/researcher/SKILL.md +1 -1
  426. package/src/skills/security-audit/SKILL.md +1 -1
  427. package/src/skills/security-scan/SKILL.md +1 -1
  428. package/src/skills/session-management/SKILL.md +1 -1
  429. package/src/skills/state-manager/SKILL.md +1 -1
  430. package/src/skills/storyteller/SKILL.md +1 -1
  431. package/src/skills/testing-best-practices/SKILL.md +1 -1
  432. package/src/skills/testing-strategy/SKILL.md +1 -1
  433. package/src/skills/ui-ux-design/SKILL.md +1 -1
  434. package/src/skills/xray-orchestrator/index.ts +0 -1
  435. package/xray/agents_template.md +46 -0
  436. package/xray/codex.json +598 -0
  437. package/dist/nucleus/orchestrator.js +0 -479
@@ -11,6 +11,7 @@ import {
11
11
  CallToolRequestSchema,
12
12
  ListToolsRequestSchema,
13
13
  } from '@modelcontextprotocol/sdk/types.js';
14
+ import * as fs from 'fs';
14
15
  import { frameworkLogger } from '../../core/framework-logger.js';
15
16
  import { XrayStateManager } from '../../state/state-manager.js';
16
17
  import { MultiAgentOrchestrationCoordinator } from '../../orchestrator/multi-agent-orchestration-coordinator.js';
@@ -19,6 +20,16 @@ import { TaskHandler } from './handlers/task-handler.js';
19
20
  import { ComplexityHandler } from './handlers/complexity-handler.js';
20
21
  import { StatusHandler } from './handlers/status-handler.js';
21
22
  import type { OrchestrationTask, OrchestrationResult } from './types.js';
23
+ import {
24
+ spawnAside,
25
+ closeAside,
26
+ closeAllAsides,
27
+ addObservations,
28
+ getActiveAsideCount,
29
+ getActiveAsideIds,
30
+ getAsideState,
31
+ extractGovernanceObservations,
32
+ } from './aside-context.js';
22
33
 
23
34
  /**
24
35
  * Orchestrator MCP Server
@@ -233,33 +244,65 @@ export class OrchestratorServer {
233
244
  const { name, arguments: args } = request.params;
234
245
 
235
246
  switch (name) {
236
- case 'orchestrate-task':
237
- return await this.taskHandler.handleOrchestrateTask(args as {
247
+ case 'orchestrate-task': {
248
+ const orchArgs = args as {
238
249
  description: string;
239
250
  tasks?: OrchestrationTask[];
240
251
  sessionId?: string;
241
252
  executionMode?: string;
242
253
  timeout?: number;
243
- }, { taskHistory: this.taskHistory, activeTasks: this.activeTasks });
244
-
245
- case 'analyze-complexity':
246
- return await this.complexityHandler.handleAnalyzeComplexity(args as {
247
- tasks: OrchestrationTask[];
254
+ };
255
+ const aside = await spawnAside({
256
+ description: `Orchestration: ${orchArgs.description}`,
257
+ ...(orchArgs.sessionId ? { sessionId: orchArgs.sessionId } : {}),
258
+ inheritedContext: { taskCount: orchArgs.tasks?.length ?? 0, executionMode: orchArgs.executionMode ?? 'optimized' },
248
259
  });
249
-
260
+ try {
261
+ const result = await this.taskHandler.handleOrchestrateTask(
262
+ orchArgs,
263
+ { taskHistory: this.taskHistory, activeTasks: this.activeTasks, asideId: aside.asideId },
264
+ );
265
+ return result;
266
+ } finally {
267
+ closeAside(aside.asideId);
268
+ }
269
+ }
270
+ case 'analyze-complexity': {
271
+ const complexityArgs = args as { tasks: OrchestrationTask[] };
272
+ const aside = await spawnAside({
273
+ description: `Complexity analysis: ${complexityArgs.tasks.length} tasks`,
274
+ });
275
+ try {
276
+ return await this.complexityHandler.handleAnalyzeComplexity(complexityArgs, aside.asideId);
277
+ } finally {
278
+ closeAside(aside.asideId);
279
+ }
280
+ }
250
281
  case 'get-orchestration-status':
251
282
  return await this.statusHandler.handleGetOrchestrationStatus(args as {
252
283
  sessionId?: string;
253
284
  detailed?: boolean;
254
- }, { taskHistory: this.taskHistory, activeTasks: this.activeTasks });
255
-
256
- case 'cancel-orchestration':
257
- return await this.statusHandler.handleCancelOrchestration(args as {
258
- sessionId?: string;
259
- taskId?: string;
260
- force?: boolean;
261
- }, { taskHistory: this.taskHistory, activeTasks: this.activeTasks });
262
-
285
+ }, {
286
+ taskHistory: this.taskHistory,
287
+ activeTasks: this.activeTasks,
288
+ asideCount: getActiveAsideCount(),
289
+ asideIds: getActiveAsideIds(),
290
+ });
291
+ case 'cancel-orchestration': {
292
+ const cancelArgs = args as { sessionId?: string; taskId?: string; force?: boolean };
293
+ if (cancelArgs.force || (!cancelArgs.sessionId && !cancelArgs.taskId)) {
294
+ closeAllAsides();
295
+ } else if (cancelArgs.sessionId) {
296
+ const asideIds = getActiveAsideIds().filter(
297
+ (id) => getAsideState(id)?.sessionId === cancelArgs.sessionId,
298
+ );
299
+ for (const id of asideIds) closeAside(id);
300
+ }
301
+ return await this.statusHandler.handleCancelOrchestration(cancelArgs, {
302
+ taskHistory: this.taskHistory,
303
+ activeTasks: this.activeTasks,
304
+ });
305
+ }
263
306
  case 'optimize-orchestration':
264
307
  return await this.statusHandler.handleOptimizeOrchestration(args as {
265
308
  history?: boolean;
@@ -310,26 +353,38 @@ export class OrchestratorServer {
310
353
  skipApply: args.skipApply ?? false,
311
354
  });
312
355
 
313
- const result = await cycle.governExternalProposals(args.proposals as any);
356
+ const aside = await spawnAside({
357
+ description: `Governance cycle: ${args.proposals.length} proposals`,
358
+ priorVerdictContext: { proposalCount: args.proposals.length },
359
+ });
360
+
361
+ let result: import('../../inference/inference-cycle.js').InferenceCycleResult;
362
+ try {
363
+ result = await cycle.governExternalProposals(args.proposals as any);
364
+ addObservations(aside.asideId, extractGovernanceObservations(result));
365
+ } finally {
366
+ closeAside(aside.asideId);
367
+ }
314
368
 
315
- const approved = result.votes.filter((v) => v.decision === 'approve').length;
316
- const rejected = result.votes.length - approved;
369
+ const approved = result!.votes.filter((v) => v.decision === 'approve').length;
370
+ const rejected = result!.votes.length - approved;
317
371
 
318
372
  return {
319
373
  content: [{
320
374
  type: 'text' as const,
321
375
  text: JSON.stringify({
322
- cycleId: result.cycleId,
376
+ cycleId: result!.cycleId,
377
+ asideId: aside.asideId,
323
378
  approved,
324
379
  rejected,
325
- votes: result.votes,
326
- proposals: result.proposals.map((p) => ({
380
+ votes: result!.votes,
381
+ proposals: result!.proposals.map((p) => ({
327
382
  id: p.id,
328
383
  title: p.title,
329
384
  type: p.type,
330
385
  status: p.status,
331
386
  })),
332
- duration: result.duration,
387
+ duration: result!.duration,
333
388
  }, null, 2),
334
389
  }],
335
390
  };
@@ -359,6 +414,7 @@ export class OrchestratorServer {
359
414
  * Stop the server
360
415
  */
361
416
  async stop(): Promise<void> {
417
+ closeAllAsides();
362
418
  await frameworkLogger.log('orchestrator.server', 'shutdown', 'info', {
363
419
  message: '0xRay Orchestrator MCP Server shutting down',
364
420
  });
@@ -377,7 +433,7 @@ export function createOrchestratorServer(): OrchestratorServer {
377
433
  }
378
434
 
379
435
  // Run if called directly
380
- if (import.meta.url === `file://${process.argv[1]}`) {
436
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1]!)}`) {
381
437
  const server = createOrchestratorServer();
382
438
  server.start().catch((error) => {
383
439
  frameworkLogger.log('orchestrator.server', 'fatal-error', 'error', {
@@ -52,6 +52,41 @@ export interface TaskValidation {
52
52
  errors: string[];
53
53
  }
54
54
 
55
+ export interface ActiveAside {
56
+ asideId: string;
57
+ description: string;
58
+ sessionId?: string;
59
+ parentAsideId?: string;
60
+ startedAt: number;
61
+ inheritedContext?: Record<string, unknown>;
62
+ priorVerdictContext?: Record<string, unknown>;
63
+ observations: AsideObservation[];
64
+ }
65
+
66
+ export interface AsideObservation {
67
+ key: string;
68
+ value: string;
69
+ source: string;
70
+ }
71
+
72
+ export interface AsideContextOptions {
73
+ description: string;
74
+ inheritedContext?: Record<string, unknown>;
75
+ priorVerdictContext?: Record<string, unknown>;
76
+ sessionId?: string;
77
+ parentAsideId?: string;
78
+ }
79
+
80
+ export interface AsideResult {
81
+ asideId: string;
82
+ description: string;
83
+ success: boolean;
84
+ duration: number;
85
+ observations: AsideObservation[];
86
+ priorVerdictContext?: Record<string, unknown>;
87
+ error?: string;
88
+ }
89
+
55
90
  export interface OrchestrationStatus {
56
91
  activeSessions: number;
57
92
  totalTasks: number;
@@ -62,6 +97,8 @@ export interface OrchestrationStatus {
62
97
  tasks: number;
63
98
  duration: number;
64
99
  }>;
100
+ activeAsideCount?: number;
101
+ activeAsideIds?: string[];
65
102
  }
66
103
 
67
104
  export interface TaskExecutionContext {
@@ -7,6 +7,7 @@
7
7
  * @deprecated Use src/mcps/orchestrator/server.ts instead
8
8
  */
9
9
 
10
+ import * as fs from 'fs';
10
11
  import { frameworkLogger } from '../core/framework-logger.js';
11
12
 
12
13
  export { OrchestratorServer, createOrchestratorServer } from './orchestrator/server.js';
@@ -24,7 +25,7 @@ export type {
24
25
  } from './orchestrator/types.js';
25
26
 
26
27
  // Run if called directly
27
- if (import.meta.url === `file://${process.argv[1]}`) {
28
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1]!)}`) {
28
29
  const { createOrchestratorServer } = await import('./orchestrator/server.js');
29
30
  const server = createOrchestratorServer();
30
31
  server.start().catch((error) => {
@@ -4,17 +4,12 @@
4
4
  * Comprehensive metrics analysis for framework integration and optimization
5
5
  */
6
6
 
7
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
8
7
  import { frameworkLogger, generateJobId } from "../core/framework-logger.js";
9
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
10
- import {
11
- CallToolRequestSchema,
12
- ListToolsRequestSchema,
13
- } from "@modelcontextprotocol/sdk/types.js";
14
8
  import { execSync } from "child_process";
15
9
  import fs from "fs";
16
10
  import os from "os";
17
11
  import path from "path";
12
+ import { XrayKnowledgeSkillBase } from "./shared/knowledge-skill-base.js";
18
13
 
19
14
  interface AnalysisMetrics {
20
15
  runtime?: RuntimeMetrics;
@@ -57,23 +52,73 @@ interface ResourceMetrics {
57
52
  recommendations: string[];
58
53
  }
59
54
 
60
- class XrayPerformanceAnalysisServer {
61
- private server: Server;
55
+ class XrayPerformanceAnalysisServer extends XrayKnowledgeSkillBase {
62
56
  private startTime: number;
63
57
 
64
58
  constructor() {
65
- this.server = new Server(
59
+ super("performance-analysis", "3.1.0");
60
+
61
+ this.startTime = Date.now();
62
+
63
+ this.tools = [
66
64
  {
67
- name: "performance-analysis", version: "1.22.67",
65
+ name: "performance-analysis",
66
+ description:
67
+ "Comprehensive metrics analysis for framework integration and optimization",
68
+ inputSchema: {
69
+ type: "object",
70
+ properties: {
71
+ scope: {
72
+ type: "string",
73
+ enum: [
74
+ "full",
75
+ "runtime",
76
+ "build",
77
+ "resources",
78
+ "bottlenecks",
79
+ ],
80
+ default: "full",
81
+ description: "Scope of performance analysis",
82
+ },
83
+ duration: {
84
+ type: "number",
85
+ default: 30,
86
+ description: "Analysis duration in seconds",
87
+ },
88
+ detailed: {
89
+ type: "boolean",
90
+ default: false,
91
+ description: "Include detailed metrics and recommendations",
92
+ },
93
+ },
94
+ },
68
95
  },
69
96
  {
70
- capabilities: {
71
- tools: {},
97
+ name: "bottleneck-detection",
98
+ description:
99
+ "Identify performance bottlenecks in framework operations",
100
+ inputSchema: {
101
+ type: "object",
102
+ properties: {
103
+ operation: {
104
+ type: "string",
105
+ description: "Specific operation to analyze",
106
+ },
107
+ threshold: {
108
+ type: "number",
109
+ default: 1000,
110
+ description: "Performance threshold in milliseconds",
111
+ },
112
+ },
72
113
  },
73
114
  },
74
- );
115
+ ];
116
+
117
+ this.handlers = {
118
+ "performance-analysis": async (args) => this.handlePerformanceAnalysis(args as Record<string, unknown> | undefined),
119
+ "bottleneck-detection": async (args) => this.handleBottleneckDetection(args as Record<string, unknown> | undefined),
120
+ };
75
121
 
76
- this.startTime = Date.now();
77
122
  this.setupToolHandlers();
78
123
  frameworkLogger.log(
79
124
  "mcp-performance-analysis",
@@ -82,81 +127,6 @@ class XrayPerformanceAnalysisServer {
82
127
  );
83
128
  }
84
129
 
85
- private setupToolHandlers() {
86
- // List available tools
87
- this.server.setRequestHandler(ListToolsRequestSchema, async () => {
88
- return {
89
- tools: [
90
- {
91
- name: "performance-analysis",
92
- description:
93
- "Comprehensive metrics analysis for framework integration and optimization",
94
- inputSchema: {
95
- type: "object",
96
- properties: {
97
- scope: {
98
- type: "string",
99
- enum: [
100
- "full",
101
- "runtime",
102
- "build",
103
- "resources",
104
- "bottlenecks",
105
- ],
106
- default: "full",
107
- description: "Scope of performance analysis",
108
- },
109
- duration: {
110
- type: "number",
111
- default: 30,
112
- description: "Analysis duration in seconds",
113
- },
114
- detailed: {
115
- type: "boolean",
116
- default: false,
117
- description: "Include detailed metrics and recommendations",
118
- },
119
- },
120
- },
121
- },
122
- {
123
- name: "bottleneck-detection",
124
- description:
125
- "Identify performance bottlenecks in framework operations",
126
- inputSchema: {
127
- type: "object",
128
- properties: {
129
- operation: {
130
- type: "string",
131
- description: "Specific operation to analyze",
132
- },
133
- threshold: {
134
- type: "number",
135
- default: 1000,
136
- description: "Performance threshold in milliseconds",
137
- },
138
- },
139
- },
140
- },
141
- ],
142
- };
143
- });
144
-
145
- // Handle tool calls
146
- this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
147
- const { name, arguments: args } = request.params;
148
-
149
- switch (name) {
150
- case "performance-analysis":
151
- return await this.handlePerformanceAnalysis(args);
152
- case "bottleneck-detection":
153
- return await this.handleBottleneckDetection(args);
154
- default:
155
- throw new Error(`Unknown tool: ${name}`);
156
- }
157
- });
158
- }
159
-
160
130
  private async handlePerformanceAnalysis(args: Record<string, unknown> | undefined) {
161
131
  const scope = (args?.scope as string) || "full";
162
132
  const duration = (args?.duration as number) || 30;
@@ -691,23 +661,10 @@ ${results.recommendations.map((r) => `• 💡 ${r}`).join("\n") || "No recommen
691
661
  return report;
692
662
  }
693
663
 
694
- async run() {
695
- const transport = new StdioServerTransport();
696
- await this.server.connect(transport);
697
- const jobId = generateJobId("mcp-performance-analysis-server");
698
- await frameworkLogger.log(
699
- "mcp-performance-analysis",
700
- "server-started",
701
- "success",
702
- {},
703
- undefined, // sessionId
704
- jobId,
705
- );
706
- }
707
664
  }
708
665
 
709
666
  // Start the server if run directly
710
- if (import.meta.url === `file://${process.argv[1]}`) {
667
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1]!)}`) {
711
668
  const server = new XrayPerformanceAnalysisServer();
712
669
  server.run().catch((error) => frameworkLogger.log("mcps/performance-analysis", "run", "error", { error: String(error) }));
713
670
  }
@@ -4,15 +4,11 @@
4
4
  * Advanced processor pipeline with codex validation, compliance monitoring, and framework enforcement
5
5
  */
6
6
 
7
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
8
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
9
- import {
10
- CallToolRequestSchema,
11
- ListToolsRequestSchema,
12
- } from "@modelcontextprotocol/sdk/types.js";
7
+ import * as fs from "fs";
13
8
  import { frameworkLogger } from "../core/framework-logger.js";
14
9
  import { CodexLoader } from "../enforcement/loaders/codex-loader.js";
15
10
  import type { RuleDefinition, RuleValidationContext } from "../enforcement/types.js";
11
+ import { XrayKnowledgeSkillBase } from "./shared/knowledge-skill-base.js";
16
12
 
17
13
  interface PreProcessorArgs {
18
14
  content: string;
@@ -87,8 +83,7 @@ interface FrameworkComplianceResult {
87
83
  approved: boolean;
88
84
  }
89
85
 
90
- class XrayProcessorPipelineServer {
91
- private server: Server;
86
+ class XrayProcessorPipelineServer extends XrayKnowledgeSkillBase {
92
87
  private codexLoader: CodexLoader;
93
88
  private codexRules: RuleDefinition[] = [];
94
89
  private codexTerms: string[] = [
@@ -104,17 +99,80 @@ class XrayProcessorPipelineServer {
104
99
  ];
105
100
 
106
101
  constructor() {
102
+ super("processor-pipeline", "3.1.0");
107
103
  this.codexLoader = new CodexLoader();
108
- this.server = new Server(
104
+
105
+ this.tools = [
106
+ {
107
+ name: "execute-pre-processors",
108
+ description:
109
+ "Run pre-execution processors on content with codex validation",
110
+ inputSchema: {
111
+ type: "object",
112
+ properties: {
113
+ content: { type: "string" },
114
+ context: { type: "object" },
115
+ validateCodex: { type: "boolean", default: true },
116
+ strictMode: { type: "boolean", default: false },
117
+ },
118
+ required: ["content"],
119
+ },
120
+ },
121
+ {
122
+ name: "execute-post-processors",
123
+ description:
124
+ "Run post-execution processors on results with compliance monitoring",
125
+ inputSchema: {
126
+ type: "object",
127
+ properties: {
128
+ content: { type: "string" },
129
+ results: { type: "object" },
130
+ enforceCompliance: { type: "boolean", default: true },
131
+ auditTrail: { type: "boolean", default: true },
132
+ },
133
+ required: ["content"],
134
+ },
135
+ },
109
136
  {
110
- name: "processor-pipeline", version: "1.22.67",
137
+ name: "codex-validation",
138
+ description:
139
+ "Validate content against Universal Development Codex terms",
140
+ inputSchema: {
141
+ type: "object",
142
+ properties: {
143
+ content: { type: "string" },
144
+ terms: {
145
+ type: "array",
146
+ items: { type: "string" },
147
+ default: ["all"],
148
+ },
149
+ strict: { type: "boolean", default: false },
150
+ },
151
+ required: ["content"],
152
+ },
111
153
  },
112
154
  {
113
- capabilities: {
114
- tools: {},
155
+ name: "framework-compliance-check",
156
+ description:
157
+ "Check framework compliance and generate enforcement actions",
158
+ inputSchema: {
159
+ type: "object",
160
+ properties: {
161
+ content: { type: "string" },
162
+ operation: { type: "string" },
163
+ context: { type: "object" },
164
+ },
165
+ required: ["content", "operation"],
115
166
  },
116
167
  },
117
- );
168
+ ];
169
+
170
+ this.handlers = {
171
+ "execute-pre-processors": async (args) => this.handlePreProcessors(args as PreProcessorArgs),
172
+ "execute-post-processors": async (args) => this.handlePostProcessors(args as PostProcessorArgs),
173
+ "codex-validation": async (args) => this.handleCodexValidation(args as CodexValidationArgs),
174
+ "framework-compliance-check": async (args) => this.handleComplianceCheck(args as ComplianceCheckArgs),
175
+ };
118
176
 
119
177
  this.setupToolHandlers();
120
178
  this.loadCodexRules();
@@ -142,96 +200,6 @@ class XrayProcessorPipelineServer {
142
200
  }
143
201
  }
144
202
 
145
- private setupToolHandlers() {
146
- // List available tools
147
- this.server.setRequestHandler(ListToolsRequestSchema, async () => {
148
- return {
149
- tools: [
150
- {
151
- name: "execute-pre-processors",
152
- description:
153
- "Run pre-execution processors on content with codex validation",
154
- inputSchema: {
155
- type: "object",
156
- properties: {
157
- content: { type: "string" },
158
- context: { type: "object" },
159
- validateCodex: { type: "boolean", default: true },
160
- strictMode: { type: "boolean", default: false },
161
- },
162
- required: ["content"],
163
- },
164
- },
165
- {
166
- name: "execute-post-processors",
167
- description:
168
- "Run post-execution processors on results with compliance monitoring",
169
- inputSchema: {
170
- type: "object",
171
- properties: {
172
- content: { type: "string" },
173
- results: { type: "object" },
174
- enforceCompliance: { type: "boolean", default: true },
175
- auditTrail: { type: "boolean", default: true },
176
- },
177
- required: ["content"],
178
- },
179
- },
180
- {
181
- name: "codex-validation",
182
- description:
183
- "Validate content against Universal Development Codex terms",
184
- inputSchema: {
185
- type: "object",
186
- properties: {
187
- content: { type: "string" },
188
- terms: {
189
- type: "array",
190
- items: { type: "string" },
191
- default: ["all"],
192
- },
193
- strict: { type: "boolean", default: false },
194
- },
195
- required: ["content"],
196
- },
197
- },
198
- {
199
- name: "framework-compliance-check",
200
- description:
201
- "Check framework compliance and generate enforcement actions",
202
- inputSchema: {
203
- type: "object",
204
- properties: {
205
- content: { type: "string" },
206
- operation: { type: "string" },
207
- context: { type: "object" },
208
- },
209
- required: ["content", "operation"],
210
- },
211
- },
212
- ],
213
- };
214
- });
215
-
216
- // Handle tool calls
217
- this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
218
- const { name, arguments: args } = request.params;
219
-
220
- switch (name) {
221
- case "execute-pre-processors":
222
- return await this.handlePreProcessors(args as unknown as PreProcessorArgs);
223
- case "execute-post-processors":
224
- return await this.handlePostProcessors(args as unknown as PostProcessorArgs);
225
- case "codex-validation":
226
- return await this.handleCodexValidation(args as unknown as CodexValidationArgs);
227
- case "framework-compliance-check":
228
- return await this.handleComplianceCheck(args as unknown as ComplianceCheckArgs);
229
- default:
230
- throw new Error(`Unknown tool: ${name}`);
231
- }
232
- });
233
- }
234
-
235
203
  private async handlePreProcessors(args: PreProcessorArgs) {
236
204
  const content = args.content;
237
205
  const context = args.context || {};
@@ -762,15 +730,10 @@ ${complianceResults.actions.map((a: string) => `• 🔧 ${a}`).join("\n") || "N
762
730
  return results;
763
731
  }
764
732
 
765
- async run() {
766
- const transport = new StdioServerTransport();
767
- await this.server.connect(transport);
768
- // Silent start - no console output
769
- }
770
733
  }
771
734
 
772
735
  // Start the server if run directly
773
- if (import.meta.url === `file://${process.argv[1]}`) {
736
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1]!)}`) {
774
737
  const server = new XrayProcessorPipelineServer();
775
738
  server.run().catch((error) => frameworkLogger.log("mcps/processor-pipeline", "run", "error", { error: String(error) }));
776
739
  }
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.22.67",
2
+ "version": "3.1.0",
3
3
  "description": "0xRay Community MCPs Registry - curated API-focused MCP servers",
4
4
  "sources": [
5
5
  {