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
@@ -7,122 +7,98 @@
7
7
  * NOTE: Class is named XrayLibrarianServer but the MCP server name is
8
8
  * "researcher" for backwards compatibility with existing tool references.
9
9
  */
10
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
11
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
12
- import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
13
10
  import * as fs from "fs";
14
11
  import * as path from "path";
15
12
  import { frameworkLogger } from "../core/framework-logger.js";
16
13
  import { tryLLMGovernance } from "../governance/llm-governance-provider.js";
17
- class XrayLibrarianServer {
18
- server;
14
+ import { XrayKnowledgeSkillBase } from "./shared/knowledge-skill-base.js";
15
+ class XrayLibrarianServer extends XrayKnowledgeSkillBase {
19
16
  constructor() {
20
- this.server = new Server({
21
- name: "researcher", version: "1.22.67",
22
- }, {
23
- capabilities: {
24
- tools: {},
25
- },
26
- });
27
- this.setupToolHandlers();
28
- }
29
- setupToolHandlers() {
30
- this.server.setRequestHandler(ListToolsRequestSchema, async () => {
31
- return {
32
- tools: [
33
- {
34
- name: "search_codebase",
35
- description: "Search the codebase for specific patterns, functions, or implementations",
36
- inputSchema: {
37
- type: "object",
38
- properties: {
39
- query: {
40
- type: "string",
41
- description: "Search query (function name, pattern, keyword)",
42
- },
43
- fileExtension: {
44
- type: "string",
45
- description: "File extension to search (e.g., '.ts', '.js')",
46
- default: ".ts",
47
- },
48
- maxResults: {
49
- type: "number",
50
- description: "Maximum number of results to return",
51
- default: 10,
52
- },
53
- },
54
- required: ["query"],
17
+ super("researcher", "3.1.0");
18
+ this.tools = [
19
+ {
20
+ name: "search_codebase",
21
+ description: "Search the codebase for specific patterns, functions, or implementations",
22
+ inputSchema: {
23
+ type: "object",
24
+ properties: {
25
+ query: {
26
+ type: "string",
27
+ description: "Search query (function name, pattern, keyword)",
55
28
  },
56
- },
57
- {
58
- name: "find_implementation",
59
- description: "Find implementation examples for a specific pattern or feature",
60
- inputSchema: {
61
- type: "object",
62
- properties: {
63
- feature: {
64
- type: "string",
65
- description: "Feature name to find implementations for",
66
- },
67
- context: {
68
- type: "string",
69
- description: "Additional context (e.g., 'MCP', 'testing', 'agent')",
70
- },
71
- },
72
- required: ["feature"],
29
+ fileExtension: {
30
+ type: "string",
31
+ description: "File extension to search (e.g., '.ts', '.js')",
32
+ default: ".ts",
33
+ },
34
+ maxResults: {
35
+ type: "number",
36
+ description: "Maximum number of results to return",
37
+ default: 10,
73
38
  },
74
39
  },
75
- {
76
- name: "get_documentation",
77
- description: "Get documentation for a specific module, class, or function",
78
- inputSchema: {
79
- type: "object",
80
- properties: {
81
- target: {
82
- type: "string",
83
- description: "Module, class, or function name",
84
- },
85
- includeExamples: {
86
- type: "boolean",
87
- description: "Include usage examples",
88
- default: true,
89
- },
90
- },
91
- required: ["target"],
40
+ required: ["query"],
41
+ },
42
+ },
43
+ {
44
+ name: "find_implementation",
45
+ description: "Find implementation examples for a specific pattern or feature",
46
+ inputSchema: {
47
+ type: "object",
48
+ properties: {
49
+ feature: {
50
+ type: "string",
51
+ description: "Feature name to find implementations for",
52
+ },
53
+ context: {
54
+ type: "string",
55
+ description: "Additional context (e.g., 'MCP', 'testing', 'agent')",
92
56
  },
93
57
  },
94
- {
95
- name: "analyze_proposal",
96
- description: "Analyze an inference proposal from a researcher / project-librarian perspective using corpus patterns, historical evidence, and architecture knowledge",
97
- inputSchema: {
98
- type: "object",
99
- properties: {
100
- proposalTitle: { type: "string" },
101
- proposalDescription: { type: "string" },
102
- evidence: { type: "array", items: { type: "string" } },
103
- proposalType: { type: "string" },
104
- },
105
- required: ["proposalTitle", "proposalDescription"],
58
+ required: ["feature"],
59
+ },
60
+ },
61
+ {
62
+ name: "get_documentation",
63
+ description: "Get documentation for a specific module, class, or function",
64
+ inputSchema: {
65
+ type: "object",
66
+ properties: {
67
+ target: {
68
+ type: "string",
69
+ description: "Module, class, or function name",
70
+ },
71
+ includeExamples: {
72
+ type: "boolean",
73
+ description: "Include usage examples",
74
+ default: true,
106
75
  },
107
76
  },
108
- ],
109
- };
110
- });
111
- this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
112
- const { name, arguments: args } = request.params;
113
- switch (name) {
114
- case "search_codebase":
115
- return await this.searchCodebase(args);
116
- case "find_implementation":
117
- return await this.findImplementation(args);
118
- case "get_documentation":
119
- return await this.getDocumentation(args);
120
- case "analyze_proposal":
121
- return await this.analyzeProposal(args);
122
- default:
123
- throw new Error(`Unknown tool: ${name}`);
124
- }
125
- });
77
+ required: ["target"],
78
+ },
79
+ },
80
+ {
81
+ name: "analyze_proposal",
82
+ description: "Analyze an inference proposal from a researcher / project-librarian perspective using corpus patterns, historical evidence, and architecture knowledge",
83
+ inputSchema: {
84
+ type: "object",
85
+ properties: {
86
+ proposalTitle: { type: "string" },
87
+ proposalDescription: { type: "string" },
88
+ evidence: { type: "array", items: { type: "string" } },
89
+ proposalType: { type: "string" },
90
+ },
91
+ required: ["proposalTitle", "proposalDescription"],
92
+ },
93
+ },
94
+ ];
95
+ this.handlers = {
96
+ "search_codebase": async (args) => this.searchCodebase(args),
97
+ "find_implementation": async (args) => this.findImplementation(args),
98
+ "get_documentation": async (args) => this.getDocumentation(args),
99
+ "analyze_proposal": async (args) => this.analyzeProposal(args),
100
+ };
101
+ this.setupToolHandlers();
126
102
  }
127
103
  async searchCodebase(args) {
128
104
  const { query, fileExtension = ".ts", maxResults = 10 } = args;
@@ -421,58 +397,9 @@ class XrayLibrarianServer {
421
397
  ],
422
398
  };
423
399
  }
424
- async run() {
425
- const transport = new StdioServerTransport();
426
- await this.server.connect(transport);
427
- let parentCheckTimer = null;
428
- const cleanup = async (signal) => {
429
- if (parentCheckTimer !== null) {
430
- clearTimeout(parentCheckTimer);
431
- parentCheckTimer = null;
432
- }
433
- const timeout = setTimeout(() => {
434
- frameworkLogger.log("mcps/researcher", "shutdown", "error", { message: "Graceful shutdown timeout, forcing exit..." });
435
- process.exit(1);
436
- }, 5000);
437
- try {
438
- if (this.server && typeof this.server.close === "function") {
439
- await this.server.close();
440
- }
441
- clearTimeout(timeout);
442
- process.exit(0);
443
- }
444
- catch (error) {
445
- clearTimeout(timeout);
446
- frameworkLogger.log("mcps/researcher", "shutdown", "error", { message: `Error during server shutdown: ${String(error)}` });
447
- process.exit(1);
448
- }
449
- };
450
- process.on("SIGINT", () => cleanup("SIGINT"));
451
- process.on("SIGTERM", () => cleanup("SIGTERM"));
452
- process.on("SIGHUP", () => cleanup("SIGHUP"));
453
- const checkParent = () => {
454
- try {
455
- process.kill(process.ppid, 0);
456
- parentCheckTimer = setTimeout(checkParent, 1000);
457
- }
458
- catch (error) {
459
- parentCheckTimer = null;
460
- cleanup("parent-process-death");
461
- }
462
- };
463
- parentCheckTimer = setTimeout(checkParent, 2000);
464
- process.on("uncaughtException", (error) => {
465
- frameworkLogger.log("mcps/researcher", "uncaughtException", "error", { message: `Uncaught Exception: ${String(error)}` });
466
- cleanup("uncaughtException");
467
- });
468
- process.on("unhandledRejection", (reason, promise) => {
469
- frameworkLogger.log("mcps/researcher", "unhandledRejection", "error", { message: `Unhandled Rejection: ${String(reason)}` });
470
- cleanup("unhandledRejection");
471
- });
472
- }
473
400
  }
474
401
  // Run the server if this file is executed directly
475
- if (import.meta.url === `file://${process.argv[1]}`) {
402
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1])}`) {
476
403
  const server = new XrayLibrarianServer();
477
404
  server.run().catch((error) => frameworkLogger.log("mcps/researcher", "run", "error", { error: String(error) }));
478
405
  }
@@ -3,82 +3,73 @@
3
3
  *
4
4
  * Automated security vulnerability scanning with dependency and code analysis
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";
6
+ import { CallToolRequestSchema } from "@modelcontextprotocol/sdk/types.js";
9
7
  import { execFileSync } from "child_process";
10
8
  import fs from "fs";
11
9
  import path from "path";
12
10
  import { detectProjectLanguage, LANGUAGE_CONFIGS, } from "../utils/language-detector.js";
13
11
  import { frameworkLogger } from "../core/framework-logger.js";
14
- class XraySecurityScanServer {
15
- server;
12
+ import { XrayKnowledgeSkillBase } from "./shared/knowledge-skill-base.js";
13
+ class XraySecurityScanServer extends XrayKnowledgeSkillBase {
16
14
  constructor() {
17
- this.server = new Server({
18
- name: "security-scan", version: "1.22.67",
19
- }, {
20
- capabilities: {
21
- tools: {},
15
+ super("security-scan", "3.1.0");
16
+ this.tools = [
17
+ {
18
+ name: "security-scan",
19
+ description: "Comprehensive security vulnerability scanning with dependency and code analysis",
20
+ inputSchema: {
21
+ type: "object",
22
+ properties: {
23
+ scope: {
24
+ type: "string",
25
+ enum: ["dependencies", "code", "full"],
26
+ default: "full",
27
+ description: "Scope of security scan",
28
+ },
29
+ auditLevel: {
30
+ type: "string",
31
+ enum: ["info", "low", "moderate", "high", "critical"],
32
+ default: "moderate",
33
+ description: "Audit level for vulnerability detection",
34
+ },
35
+ includeOutdated: {
36
+ type: "boolean",
37
+ default: true,
38
+ description: "Include outdated package analysis",
39
+ },
40
+ },
41
+ },
22
42
  },
23
- });
43
+ {
44
+ name: "dependency-audit",
45
+ description: "Audit third-party dependencies for security vulnerabilities",
46
+ inputSchema: {
47
+ type: "object",
48
+ properties: {
49
+ packageManager: {
50
+ type: "string",
51
+ enum: ["npm", "yarn", "pnpm", "auto"],
52
+ default: "auto",
53
+ description: "Package manager to use",
54
+ },
55
+ auditLevel: {
56
+ type: "string",
57
+ enum: ["info", "low", "moderate", "high", "critical"],
58
+ default: "moderate",
59
+ },
60
+ },
61
+ },
62
+ },
63
+ ];
64
+ this.handlers = {
65
+ "security-scan": async (args) => this.handleSecurityScan(args),
66
+ "dependency-audit": async (args) => this.handleDependencyAudit(args),
67
+ };
24
68
  this.setupToolHandlers();
25
69
  frameworkLogger.log("mcps/security-scan", "initialize", "info");
26
70
  }
27
71
  setupToolHandlers() {
28
- // List available tools
29
- this.server.setRequestHandler(ListToolsRequestSchema, async () => {
30
- return {
31
- tools: [
32
- {
33
- name: "security-scan",
34
- description: "Comprehensive security vulnerability scanning with dependency and code analysis",
35
- inputSchema: {
36
- type: "object",
37
- properties: {
38
- scope: {
39
- type: "string",
40
- enum: ["dependencies", "code", "full"],
41
- default: "full",
42
- description: "Scope of security scan",
43
- },
44
- auditLevel: {
45
- type: "string",
46
- enum: ["info", "low", "moderate", "high", "critical"],
47
- default: "moderate",
48
- description: "Audit level for vulnerability detection",
49
- },
50
- includeOutdated: {
51
- type: "boolean",
52
- default: true,
53
- description: "Include outdated package analysis",
54
- },
55
- },
56
- },
57
- },
58
- {
59
- name: "dependency-audit",
60
- description: "Audit third-party dependencies for security vulnerabilities",
61
- inputSchema: {
62
- type: "object",
63
- properties: {
64
- packageManager: {
65
- type: "string",
66
- enum: ["npm", "yarn", "pnpm", "auto"],
67
- default: "auto",
68
- description: "Package manager to use",
69
- },
70
- auditLevel: {
71
- type: "string",
72
- enum: ["info", "low", "moderate", "high", "critical"],
73
- default: "moderate",
74
- },
75
- },
76
- },
77
- },
78
- ],
79
- };
80
- });
81
- // Handle tool calls
72
+ this.setupListToolsHandler();
82
73
  this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
83
74
  const { name, arguments: args } = request.params;
84
75
  try {
@@ -517,14 +508,9 @@ ${results.recommendations.map((r) => `• ${r}`).join("\n") || "No recommendatio
517
508
  - Threats: ${threatCount}
518
509
  - Recommendations: ${recCount}`;
519
510
  }
520
- async run() {
521
- const transport = new StdioServerTransport();
522
- await this.server.connect(transport);
523
- frameworkLogger.log("mcps/security-scan", "start", "info");
524
- }
525
511
  }
526
512
  // Start the server if run directly
527
- if (import.meta.url === `file://${process.argv[1]}`) {
513
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1])}`) {
528
514
  const server = new XraySecurityScanServer();
529
515
  server.run().catch((error) => frameworkLogger.log("mcps/security-scan", "run", "error", { error: String(error) }));
530
516
  }
@@ -5,13 +5,18 @@ import { frameworkLogger } from "../../core/framework-logger.js";
5
5
  import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
6
6
  export class XrayKnowledgeSkillBase {
7
7
  tools = [];
8
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
8
  handlers = {};
10
9
  server;
10
+ serverName;
11
11
  constructor(serverName, version = "2.0.1") {
12
+ this.serverName = serverName;
12
13
  this.server = new Server({ name: serverName, version }, { capabilities: { tools: {} } });
13
14
  }
14
15
  setupToolHandlers() {
16
+ this.setupListToolsHandler();
17
+ this.setupCallToolHandler();
18
+ }
19
+ setupListToolsHandler() {
15
20
  this.server.setRequestHandler(ListToolsRequestSchema, async () => ({
16
21
  tools: this.tools.map((t) => ({
17
22
  name: t.name,
@@ -19,6 +24,8 @@ export class XrayKnowledgeSkillBase {
19
24
  inputSchema: t.inputSchema,
20
25
  })),
21
26
  }));
27
+ }
28
+ setupCallToolHandler() {
22
29
  this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
23
30
  const { name, arguments: args } = request.params;
24
31
  const handler = this.handlers[name];
@@ -36,10 +43,10 @@ export class XrayKnowledgeSkillBase {
36
43
  }
37
44
  });
38
45
  }
39
- async run(serverName) {
46
+ async run() {
40
47
  const transport = new StdioServerTransport();
41
48
  await this.server.connect(transport);
42
- createGracefulShutdown({ serverName, server: this.server });
43
- await frameworkLogger.log(serverName, "server-started", "success");
49
+ createGracefulShutdown({ serverName: this.serverName, server: this.server });
50
+ await frameworkLogger.log(this.serverName, "server-started", "success");
44
51
  }
45
52
  }