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
@@ -10,12 +10,7 @@
10
10
  * Use project-analysis for project-level (structure, health).
11
11
  */
12
12
 
13
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
14
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
15
- import {
16
- CallToolRequestSchema,
17
- ListToolsRequestSchema,
18
- } from "@modelcontextprotocol/sdk/types.js";
13
+ import { XrayKnowledgeSkillBase } from "../shared/knowledge-skill-base.js";
19
14
  import * as fs from "fs";
20
15
  import * as path from "path";
21
16
  import { frameworkLogger } from "../../core/framework-logger.js";
@@ -64,277 +59,260 @@ interface FileTreeNode {
64
59
  size?: number;
65
60
  }
66
61
 
67
- class CodeAnalyzerServer {
68
- private server: Server;
69
- private tools: Tool[] = [
70
- // ===== CODE ANALYSIS =====
71
- {
72
- name: "analyze_code",
73
- description:
74
- "Perform comprehensive static analysis on source code files",
75
- inputSchema: {
76
- type: "object",
77
- properties: {
78
- files: {
79
- type: "array",
80
- items: { type: "string" },
81
- description: "Files or directories to analyze",
82
- },
83
- language: {
84
- type: "string",
85
- description: "Programming language (typescript, javascript, python, etc.)",
62
+ class CodeAnalyzerServer extends XrayKnowledgeSkillBase {
63
+
64
+ constructor() {
65
+ super("code-analyzer", "3.1.0");
66
+
67
+ this.tools = [
68
+ // ===== CODE ANALYSIS =====
69
+ {
70
+ name: "analyze_code",
71
+ description:
72
+ "Perform comprehensive static analysis on source code files",
73
+ inputSchema: {
74
+ type: "object",
75
+ properties: {
76
+ files: {
77
+ type: "array",
78
+ items: { type: "string" },
79
+ description: "Files or directories to analyze",
80
+ },
81
+ language: {
82
+ type: "string",
83
+ description: "Programming language (typescript, javascript, python, etc.)",
84
+ },
86
85
  },
86
+ required: ["files"],
87
87
  },
88
- required: ["files"],
89
88
  },
90
- },
91
- {
92
- name: "calculate_complexity",
93
- description:
94
- "Calculate cyclomatic complexity and other code metrics",
95
- inputSchema: {
96
- type: "object",
97
- properties: {
98
- code: {
99
- type: "string",
100
- description: "Source code to analyze",
101
- },
102
- language: {
103
- type: "string",
104
- description: "Programming language",
89
+ {
90
+ name: "calculate_complexity",
91
+ description:
92
+ "Calculate cyclomatic complexity and other code metrics",
93
+ inputSchema: {
94
+ type: "object",
95
+ properties: {
96
+ code: {
97
+ type: "string",
98
+ description: "Source code to analyze",
99
+ },
100
+ language: {
101
+ type: "string",
102
+ description: "Programming language",
103
+ },
105
104
  },
105
+ required: ["code"],
106
106
  },
107
- required: ["code"],
108
107
  },
109
- },
110
- {
111
- name: "detect_code_smells",
112
- description:
113
- "Detect code smells, anti-patterns, and potential issues",
114
- inputSchema: {
115
- type: "object",
116
- properties: {
117
- files: {
118
- type: "array",
119
- items: { type: "string" },
120
- description: "Files to analyze",
121
- },
122
- thresholds: {
123
- type: "object",
124
- description: "Detection thresholds",
125
- properties: {
126
- maxFunctionLength: { type: "number" },
127
- maxNestingDepth: { type: "number" },
128
- maxParameters: { type: "number" },
108
+ {
109
+ name: "detect_code_smells",
110
+ description:
111
+ "Detect code smells, anti-patterns, and potential issues",
112
+ inputSchema: {
113
+ type: "object",
114
+ properties: {
115
+ files: {
116
+ type: "array",
117
+ items: { type: "string" },
118
+ description: "Files to analyze",
119
+ },
120
+ thresholds: {
121
+ type: "object",
122
+ description: "Detection thresholds",
123
+ properties: {
124
+ maxFunctionLength: { type: "number" },
125
+ maxNestingDepth: { type: "number" },
126
+ maxParameters: { type: "number" },
127
+ },
129
128
  },
130
129
  },
130
+ required: ["files"],
131
131
  },
132
- required: ["files"],
133
132
  },
134
- },
135
- {
136
- name: "extract_metrics",
137
- description:
138
- "Extract detailed code metrics (lines, functions, classes, etc.)",
139
- inputSchema: {
140
- type: "object",
141
- properties: {
142
- filePath: {
143
- type: "string",
144
- description: "File or directory to analyze",
145
- },
146
- includeHistory: {
147
- type: "boolean",
148
- default: false,
149
- description: "Include historical metrics if available",
133
+ {
134
+ name: "extract_metrics",
135
+ description:
136
+ "Extract detailed code metrics (lines, functions, classes, etc.)",
137
+ inputSchema: {
138
+ type: "object",
139
+ properties: {
140
+ filePath: {
141
+ type: "string",
142
+ description: "File or directory to analyze",
143
+ },
144
+ includeHistory: {
145
+ type: "boolean",
146
+ default: false,
147
+ description: "Include historical metrics if available",
148
+ },
150
149
  },
150
+ required: ["filePath"],
151
151
  },
152
- required: ["filePath"],
153
152
  },
154
- },
155
- // ===== EXPLORE FEATURES =====
156
- {
157
- name: "explore_codebase",
158
- description:
159
- "Explore codebase structure and find files matching patterns. Fast file search.",
160
- inputSchema: {
161
- type: "object",
162
- properties: {
163
- scope: {
164
- type: "string",
165
- enum: ["full", "directory", "file"],
166
- description: "Scope of exploration",
167
- },
168
- patterns: {
169
- type: "array",
170
- items: { type: "string" },
171
- description: "Glob patterns to match (e.g., '**/*.ts', 'src/**/*.js')",
172
- },
173
- basePath: {
174
- type: "string",
175
- description: "Base directory to search from (defaults to current directory)",
176
- },
177
- maxResults: {
178
- type: "number",
179
- default: 50,
180
- description: "Maximum number of files to return",
153
+ // ===== EXPLORE FEATURES =====
154
+ {
155
+ name: "explore_codebase",
156
+ description:
157
+ "Explore codebase structure and find files matching patterns. Fast file search.",
158
+ inputSchema: {
159
+ type: "object",
160
+ properties: {
161
+ scope: {
162
+ type: "string",
163
+ enum: ["full", "directory", "file"],
164
+ description: "Scope of exploration",
165
+ },
166
+ patterns: {
167
+ type: "array",
168
+ items: { type: "string" },
169
+ description: "Glob patterns to match (e.g., '**/*.ts', 'src/**/*.js')",
170
+ },
171
+ basePath: {
172
+ type: "string",
173
+ description: "Base directory to search from (defaults to current directory)",
174
+ },
175
+ maxResults: {
176
+ type: "number",
177
+ default: 50,
178
+ description: "Maximum number of files to return",
179
+ },
181
180
  },
181
+ required: ["scope", "patterns"],
182
182
  },
183
- required: ["scope", "patterns"],
184
183
  },
185
- },
186
- {
187
- name: "find_patterns",
188
- description:
189
- "Find code patterns, functions, classes, or specific text across the codebase",
190
- inputSchema: {
191
- type: "object",
192
- properties: {
193
- pattern: {
194
- type: "string",
195
- description: "Regex or text pattern to search for",
196
- },
197
- fileTypes: {
198
- type: "array",
199
- items: { type: "string" },
200
- description: "File extensions to search (e.g., ['.ts', '.js'])",
201
- },
202
- basePath: {
203
- type: "string",
204
- description: "Base directory to search from",
205
- },
206
- maxMatches: {
207
- type: "number",
208
- default: 100,
209
- description: "Maximum number of matches to return",
184
+ {
185
+ name: "find_patterns",
186
+ description:
187
+ "Find code patterns, functions, classes, or specific text across the codebase",
188
+ inputSchema: {
189
+ type: "object",
190
+ properties: {
191
+ pattern: {
192
+ type: "string",
193
+ description: "Regex or text pattern to search for",
194
+ },
195
+ fileTypes: {
196
+ type: "array",
197
+ items: { type: "string" },
198
+ description: "File extensions to search (e.g., ['.ts', '.js'])",
199
+ },
200
+ basePath: {
201
+ type: "string",
202
+ description: "Base directory to search from",
203
+ },
204
+ maxMatches: {
205
+ type: "number",
206
+ default: 100,
207
+ description: "Maximum number of matches to return",
208
+ },
210
209
  },
210
+ required: ["pattern"],
211
211
  },
212
- required: ["pattern"],
213
212
  },
214
- },
215
- {
216
- name: "find_function",
217
- description:
218
- "Locate specific function definitions across the codebase",
219
- inputSchema: {
220
- type: "object",
221
- properties: {
222
- functionName: {
223
- type: "string",
224
- description: "Name of the function to find",
225
- },
226
- fileTypes: {
227
- type: "array",
228
- items: { type: "string" },
229
- description: "File types to search",
213
+ {
214
+ name: "find_function",
215
+ description:
216
+ "Locate specific function definitions across the codebase",
217
+ inputSchema: {
218
+ type: "object",
219
+ properties: {
220
+ functionName: {
221
+ type: "string",
222
+ description: "Name of the function to find",
223
+ },
224
+ fileTypes: {
225
+ type: "array",
226
+ items: { type: "string" },
227
+ description: "File types to search",
228
+ },
230
229
  },
230
+ required: ["functionName"],
231
231
  },
232
- required: ["functionName"],
233
232
  },
234
- },
235
- {
236
- name: "get_file_structure",
237
- description:
238
- "Get directory structure and file tree for a given path",
239
- inputSchema: {
240
- type: "object",
241
- properties: {
242
- path: {
243
- type: "string",
244
- description: "Directory path to explore",
245
- },
246
- maxDepth: {
247
- type: "number",
248
- default: 3,
249
- description: "Maximum depth to traverse",
250
- },
251
- includeFiles: {
252
- type: "boolean",
253
- default: true,
254
- description: "Include files in the output",
233
+ {
234
+ name: "get_file_structure",
235
+ description:
236
+ "Get directory structure and file tree for a given path",
237
+ inputSchema: {
238
+ type: "object",
239
+ properties: {
240
+ path: {
241
+ type: "string",
242
+ description: "Directory path to explore",
243
+ },
244
+ maxDepth: {
245
+ type: "number",
246
+ default: 3,
247
+ description: "Maximum depth to traverse",
248
+ },
249
+ includeFiles: {
250
+ type: "boolean",
251
+ default: true,
252
+ description: "Include files in the output",
253
+ },
255
254
  },
255
+ required: ["path"],
256
256
  },
257
- required: ["path"],
258
257
  },
259
- },
260
- // ===== DEPENDENCY ANALYSIS =====
261
- {
262
- name: "analyze_dependencies",
263
- description:
264
- "Analyze import/export dependencies and generate dependency graph",
265
- inputSchema: {
266
- type: "object",
267
- properties: {
268
- rootDir: {
269
- type: "string",
270
- description: "Root directory to analyze",
271
- },
272
- maxDepth: {
273
- type: "number",
274
- default: 3,
275
- description: "Maximum depth for dependency traversal",
258
+ // ===== DEPENDENCY ANALYSIS =====
259
+ {
260
+ name: "analyze_dependencies",
261
+ description:
262
+ "Analyze import/export dependencies and generate dependency graph",
263
+ inputSchema: {
264
+ type: "object",
265
+ properties: {
266
+ rootDir: {
267
+ type: "string",
268
+ description: "Root directory to analyze",
269
+ },
270
+ maxDepth: {
271
+ type: "number",
272
+ default: 3,
273
+ description: "Maximum depth for dependency traversal",
274
+ },
276
275
  },
276
+ required: ["rootDir"],
277
277
  },
278
- required: ["rootDir"],
279
278
  },
280
- },
281
- // ===== DUPLICATE DETECTION =====
282
- {
283
- name: "find_duplicates",
284
- description:
285
- "Find duplicate or similar code patterns in the codebase",
286
- inputSchema: {
287
- type: "object",
288
- properties: {
289
- directory: {
290
- type: "string",
291
- description: "Directory to search",
292
- },
293
- minLength: {
294
- type: "number",
295
- default: 10,
296
- description: "Minimum line count for duplicate detection",
279
+ // ===== DUPLICATE DETECTION =====
280
+ {
281
+ name: "find_duplicates",
282
+ description:
283
+ "Find duplicate or similar code patterns in the codebase",
284
+ inputSchema: {
285
+ type: "object",
286
+ properties: {
287
+ directory: {
288
+ type: "string",
289
+ description: "Directory to search",
290
+ },
291
+ minLength: {
292
+ type: "number",
293
+ default: 10,
294
+ description: "Minimum line count for duplicate detection",
295
+ },
297
296
  },
297
+ required: ["directory"],
298
298
  },
299
- required: ["directory"],
300
299
  },
301
- },
302
- ];
303
-
304
- constructor() {
305
- this.server = new Server(
306
- { name: "code-analyzer", version: "1.22.67" },
307
- { capabilities: { tools: {} } },
308
- );
300
+ ];
309
301
 
310
- this.server.setRequestHandler(ListToolsRequestSchema, async () => ({
311
- tools: this.tools,
312
- }));
313
-
314
- this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
315
- const { name, arguments: args = {} } = request.params;
302
+ this.handlers = {
303
+ "analyze_code": async (args) => this.handleAnalyzeCode(args),
304
+ "calculate_complexity": async (args) => this.handleCalculateComplexity(args),
305
+ "detect_code_smells": async (args) => this.handleDetectCodeSmells(args),
306
+ "extract_metrics": async (args) => this.handleExtractMetrics(args),
307
+ "explore_codebase": async (args) => this.handleExploreCodebase(args),
308
+ "find_patterns": async (args) => this.handleFindPatterns(args),
309
+ "find_function": async (args) => this.handleFindFunction(args),
310
+ "get_file_structure": async (args) => this.handleGetFileStructure(args),
311
+ "analyze_dependencies": async (args) => this.handleAnalyzeDependencies(args),
312
+ "find_duplicates": async (args) => this.handleFindDuplicates(args),
313
+ };
316
314
 
317
- try {
318
- switch (name) {
319
- case "analyze_code": return this.handleAnalyzeCode(args);
320
- case "calculate_complexity": return this.handleCalculateComplexity(args);
321
- case "detect_code_smells": return this.handleDetectCodeSmells(args);
322
- case "extract_metrics": return this.handleExtractMetrics(args);
323
- case "explore_codebase": return this.handleExploreCodebase(args);
324
- case "find_patterns": return this.handleFindPatterns(args);
325
- case "find_function": return this.handleFindFunction(args);
326
- case "get_file_structure": return this.handleGetFileStructure(args);
327
- case "analyze_dependencies": return this.handleAnalyzeDependencies(args);
328
- case "find_duplicates": return this.handleFindDuplicates(args);
329
- default: throw new Error(`Unknown tool: ${name}`);
330
- }
331
- } catch (error) {
332
- return {
333
- content: [{ type: "text", text: `Error: ${error instanceof Error ? error.message : String(error)}` }],
334
- isError: true,
335
- };
336
- }
337
- });
315
+ this.setupToolHandlers();
338
316
  }
339
317
 
340
318
  private handleAnalyzeCode(args: unknown) {
@@ -575,17 +553,7 @@ class CodeAnalyzerServer {
575
553
  return { content: [{ type: "text", text: JSON.stringify({ totalDuplicates: duplicates.length, duplicates }, null, 2) }] };
576
554
  }
577
555
 
578
- async run(): Promise<void> {
579
- const transport = new StdioServerTransport();
580
- await this.server.connect(transport);
581
-
582
- // Use centralized shutdown handler
583
- createGracefulShutdown({
584
- serverName: "code-analyzer.server",
585
- server: this.server,
586
- });
587
- }
588
556
  }
589
557
 
590
- if (import.meta.url === `file://${process.argv[1]}`) { new CodeAnalyzerServer().run().catch(() => {}); }
558
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1]!)}`) { new CodeAnalyzerServer().run().catch(() => {}); }
591
559
  export default CodeAnalyzerServer;