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
@@ -9,267 +9,249 @@
9
9
  * This is the SINGLE source for code-level analysis.
10
10
  * Use project-analysis for project-level (structure, health).
11
11
  */
12
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
13
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
14
- import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
12
+ import { XrayKnowledgeSkillBase } from "../shared/knowledge-skill-base.js";
15
13
  import * as fs from "fs";
16
14
  import * as path from "path";
17
- import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
18
- class CodeAnalyzerServer {
19
- server;
20
- tools = [
21
- // ===== CODE ANALYSIS =====
22
- {
23
- name: "analyze_code",
24
- description: "Perform comprehensive static analysis on source code files",
25
- inputSchema: {
26
- type: "object",
27
- properties: {
28
- files: {
29
- type: "array",
30
- items: { type: "string" },
31
- description: "Files or directories to analyze",
32
- },
33
- language: {
34
- type: "string",
35
- description: "Programming language (typescript, javascript, python, etc.)",
15
+ class CodeAnalyzerServer extends XrayKnowledgeSkillBase {
16
+ constructor() {
17
+ super("code-analyzer", "3.1.0");
18
+ this.tools = [
19
+ // ===== CODE ANALYSIS =====
20
+ {
21
+ name: "analyze_code",
22
+ description: "Perform comprehensive static analysis on source code files",
23
+ inputSchema: {
24
+ type: "object",
25
+ properties: {
26
+ files: {
27
+ type: "array",
28
+ items: { type: "string" },
29
+ description: "Files or directories to analyze",
30
+ },
31
+ language: {
32
+ type: "string",
33
+ description: "Programming language (typescript, javascript, python, etc.)",
34
+ },
36
35
  },
36
+ required: ["files"],
37
37
  },
38
- required: ["files"],
39
38
  },
40
- },
41
- {
42
- name: "calculate_complexity",
43
- description: "Calculate cyclomatic complexity and other code metrics",
44
- inputSchema: {
45
- type: "object",
46
- properties: {
47
- code: {
48
- type: "string",
49
- description: "Source code to analyze",
50
- },
51
- language: {
52
- type: "string",
53
- description: "Programming language",
39
+ {
40
+ name: "calculate_complexity",
41
+ description: "Calculate cyclomatic complexity and other code metrics",
42
+ inputSchema: {
43
+ type: "object",
44
+ properties: {
45
+ code: {
46
+ type: "string",
47
+ description: "Source code to analyze",
48
+ },
49
+ language: {
50
+ type: "string",
51
+ description: "Programming language",
52
+ },
54
53
  },
54
+ required: ["code"],
55
55
  },
56
- required: ["code"],
57
56
  },
58
- },
59
- {
60
- name: "detect_code_smells",
61
- description: "Detect code smells, anti-patterns, and potential issues",
62
- inputSchema: {
63
- type: "object",
64
- properties: {
65
- files: {
66
- type: "array",
67
- items: { type: "string" },
68
- description: "Files to analyze",
69
- },
70
- thresholds: {
71
- type: "object",
72
- description: "Detection thresholds",
73
- properties: {
74
- maxFunctionLength: { type: "number" },
75
- maxNestingDepth: { type: "number" },
76
- maxParameters: { type: "number" },
57
+ {
58
+ name: "detect_code_smells",
59
+ description: "Detect code smells, anti-patterns, and potential issues",
60
+ inputSchema: {
61
+ type: "object",
62
+ properties: {
63
+ files: {
64
+ type: "array",
65
+ items: { type: "string" },
66
+ description: "Files to analyze",
67
+ },
68
+ thresholds: {
69
+ type: "object",
70
+ description: "Detection thresholds",
71
+ properties: {
72
+ maxFunctionLength: { type: "number" },
73
+ maxNestingDepth: { type: "number" },
74
+ maxParameters: { type: "number" },
75
+ },
77
76
  },
78
77
  },
78
+ required: ["files"],
79
79
  },
80
- required: ["files"],
81
80
  },
82
- },
83
- {
84
- name: "extract_metrics",
85
- description: "Extract detailed code metrics (lines, functions, classes, etc.)",
86
- inputSchema: {
87
- type: "object",
88
- properties: {
89
- filePath: {
90
- type: "string",
91
- description: "File or directory to analyze",
92
- },
93
- includeHistory: {
94
- type: "boolean",
95
- default: false,
96
- description: "Include historical metrics if available",
81
+ {
82
+ name: "extract_metrics",
83
+ description: "Extract detailed code metrics (lines, functions, classes, etc.)",
84
+ inputSchema: {
85
+ type: "object",
86
+ properties: {
87
+ filePath: {
88
+ type: "string",
89
+ description: "File or directory to analyze",
90
+ },
91
+ includeHistory: {
92
+ type: "boolean",
93
+ default: false,
94
+ description: "Include historical metrics if available",
95
+ },
97
96
  },
97
+ required: ["filePath"],
98
98
  },
99
- required: ["filePath"],
100
99
  },
101
- },
102
- // ===== EXPLORE FEATURES =====
103
- {
104
- name: "explore_codebase",
105
- description: "Explore codebase structure and find files matching patterns. Fast file search.",
106
- inputSchema: {
107
- type: "object",
108
- properties: {
109
- scope: {
110
- type: "string",
111
- enum: ["full", "directory", "file"],
112
- description: "Scope of exploration",
113
- },
114
- patterns: {
115
- type: "array",
116
- items: { type: "string" },
117
- description: "Glob patterns to match (e.g., '**/*.ts', 'src/**/*.js')",
118
- },
119
- basePath: {
120
- type: "string",
121
- description: "Base directory to search from (defaults to current directory)",
122
- },
123
- maxResults: {
124
- type: "number",
125
- default: 50,
126
- description: "Maximum number of files to return",
100
+ // ===== EXPLORE FEATURES =====
101
+ {
102
+ name: "explore_codebase",
103
+ description: "Explore codebase structure and find files matching patterns. Fast file search.",
104
+ inputSchema: {
105
+ type: "object",
106
+ properties: {
107
+ scope: {
108
+ type: "string",
109
+ enum: ["full", "directory", "file"],
110
+ description: "Scope of exploration",
111
+ },
112
+ patterns: {
113
+ type: "array",
114
+ items: { type: "string" },
115
+ description: "Glob patterns to match (e.g., '**/*.ts', 'src/**/*.js')",
116
+ },
117
+ basePath: {
118
+ type: "string",
119
+ description: "Base directory to search from (defaults to current directory)",
120
+ },
121
+ maxResults: {
122
+ type: "number",
123
+ default: 50,
124
+ description: "Maximum number of files to return",
125
+ },
127
126
  },
127
+ required: ["scope", "patterns"],
128
128
  },
129
- required: ["scope", "patterns"],
130
129
  },
131
- },
132
- {
133
- name: "find_patterns",
134
- description: "Find code patterns, functions, classes, or specific text across the codebase",
135
- inputSchema: {
136
- type: "object",
137
- properties: {
138
- pattern: {
139
- type: "string",
140
- description: "Regex or text pattern to search for",
141
- },
142
- fileTypes: {
143
- type: "array",
144
- items: { type: "string" },
145
- description: "File extensions to search (e.g., ['.ts', '.js'])",
146
- },
147
- basePath: {
148
- type: "string",
149
- description: "Base directory to search from",
150
- },
151
- maxMatches: {
152
- type: "number",
153
- default: 100,
154
- description: "Maximum number of matches to return",
130
+ {
131
+ name: "find_patterns",
132
+ description: "Find code patterns, functions, classes, or specific text across the codebase",
133
+ inputSchema: {
134
+ type: "object",
135
+ properties: {
136
+ pattern: {
137
+ type: "string",
138
+ description: "Regex or text pattern to search for",
139
+ },
140
+ fileTypes: {
141
+ type: "array",
142
+ items: { type: "string" },
143
+ description: "File extensions to search (e.g., ['.ts', '.js'])",
144
+ },
145
+ basePath: {
146
+ type: "string",
147
+ description: "Base directory to search from",
148
+ },
149
+ maxMatches: {
150
+ type: "number",
151
+ default: 100,
152
+ description: "Maximum number of matches to return",
153
+ },
155
154
  },
155
+ required: ["pattern"],
156
156
  },
157
- required: ["pattern"],
158
157
  },
159
- },
160
- {
161
- name: "find_function",
162
- description: "Locate specific function definitions across the codebase",
163
- inputSchema: {
164
- type: "object",
165
- properties: {
166
- functionName: {
167
- type: "string",
168
- description: "Name of the function to find",
169
- },
170
- fileTypes: {
171
- type: "array",
172
- items: { type: "string" },
173
- description: "File types to search",
158
+ {
159
+ name: "find_function",
160
+ description: "Locate specific function definitions across the codebase",
161
+ inputSchema: {
162
+ type: "object",
163
+ properties: {
164
+ functionName: {
165
+ type: "string",
166
+ description: "Name of the function to find",
167
+ },
168
+ fileTypes: {
169
+ type: "array",
170
+ items: { type: "string" },
171
+ description: "File types to search",
172
+ },
174
173
  },
174
+ required: ["functionName"],
175
175
  },
176
- required: ["functionName"],
177
176
  },
178
- },
179
- {
180
- name: "get_file_structure",
181
- description: "Get directory structure and file tree for a given path",
182
- inputSchema: {
183
- type: "object",
184
- properties: {
185
- path: {
186
- type: "string",
187
- description: "Directory path to explore",
188
- },
189
- maxDepth: {
190
- type: "number",
191
- default: 3,
192
- description: "Maximum depth to traverse",
193
- },
194
- includeFiles: {
195
- type: "boolean",
196
- default: true,
197
- description: "Include files in the output",
177
+ {
178
+ name: "get_file_structure",
179
+ description: "Get directory structure and file tree for a given path",
180
+ inputSchema: {
181
+ type: "object",
182
+ properties: {
183
+ path: {
184
+ type: "string",
185
+ description: "Directory path to explore",
186
+ },
187
+ maxDepth: {
188
+ type: "number",
189
+ default: 3,
190
+ description: "Maximum depth to traverse",
191
+ },
192
+ includeFiles: {
193
+ type: "boolean",
194
+ default: true,
195
+ description: "Include files in the output",
196
+ },
198
197
  },
198
+ required: ["path"],
199
199
  },
200
- required: ["path"],
201
200
  },
202
- },
203
- // ===== DEPENDENCY ANALYSIS =====
204
- {
205
- name: "analyze_dependencies",
206
- description: "Analyze import/export dependencies and generate dependency graph",
207
- inputSchema: {
208
- type: "object",
209
- properties: {
210
- rootDir: {
211
- type: "string",
212
- description: "Root directory to analyze",
213
- },
214
- maxDepth: {
215
- type: "number",
216
- default: 3,
217
- description: "Maximum depth for dependency traversal",
201
+ // ===== DEPENDENCY ANALYSIS =====
202
+ {
203
+ name: "analyze_dependencies",
204
+ description: "Analyze import/export dependencies and generate dependency graph",
205
+ inputSchema: {
206
+ type: "object",
207
+ properties: {
208
+ rootDir: {
209
+ type: "string",
210
+ description: "Root directory to analyze",
211
+ },
212
+ maxDepth: {
213
+ type: "number",
214
+ default: 3,
215
+ description: "Maximum depth for dependency traversal",
216
+ },
218
217
  },
218
+ required: ["rootDir"],
219
219
  },
220
- required: ["rootDir"],
221
220
  },
222
- },
223
- // ===== DUPLICATE DETECTION =====
224
- {
225
- name: "find_duplicates",
226
- description: "Find duplicate or similar code patterns in the codebase",
227
- inputSchema: {
228
- type: "object",
229
- properties: {
230
- directory: {
231
- type: "string",
232
- description: "Directory to search",
233
- },
234
- minLength: {
235
- type: "number",
236
- default: 10,
237
- description: "Minimum line count for duplicate detection",
221
+ // ===== DUPLICATE DETECTION =====
222
+ {
223
+ name: "find_duplicates",
224
+ description: "Find duplicate or similar code patterns in the codebase",
225
+ inputSchema: {
226
+ type: "object",
227
+ properties: {
228
+ directory: {
229
+ type: "string",
230
+ description: "Directory to search",
231
+ },
232
+ minLength: {
233
+ type: "number",
234
+ default: 10,
235
+ description: "Minimum line count for duplicate detection",
236
+ },
238
237
  },
238
+ required: ["directory"],
239
239
  },
240
- required: ["directory"],
241
240
  },
242
- },
243
- ];
244
- constructor() {
245
- this.server = new Server({ name: "code-analyzer", version: "1.22.67" }, { capabilities: { tools: {} } });
246
- this.server.setRequestHandler(ListToolsRequestSchema, async () => ({
247
- tools: this.tools,
248
- }));
249
- this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
250
- const { name, arguments: args = {} } = request.params;
251
- try {
252
- switch (name) {
253
- case "analyze_code": return this.handleAnalyzeCode(args);
254
- case "calculate_complexity": return this.handleCalculateComplexity(args);
255
- case "detect_code_smells": return this.handleDetectCodeSmells(args);
256
- case "extract_metrics": return this.handleExtractMetrics(args);
257
- case "explore_codebase": return this.handleExploreCodebase(args);
258
- case "find_patterns": return this.handleFindPatterns(args);
259
- case "find_function": return this.handleFindFunction(args);
260
- case "get_file_structure": return this.handleGetFileStructure(args);
261
- case "analyze_dependencies": return this.handleAnalyzeDependencies(args);
262
- case "find_duplicates": return this.handleFindDuplicates(args);
263
- default: throw new Error(`Unknown tool: ${name}`);
264
- }
265
- }
266
- catch (error) {
267
- return {
268
- content: [{ type: "text", text: `Error: ${error instanceof Error ? error.message : String(error)}` }],
269
- isError: true,
270
- };
271
- }
272
- });
241
+ ];
242
+ this.handlers = {
243
+ "analyze_code": async (args) => this.handleAnalyzeCode(args),
244
+ "calculate_complexity": async (args) => this.handleCalculateComplexity(args),
245
+ "detect_code_smells": async (args) => this.handleDetectCodeSmells(args),
246
+ "extract_metrics": async (args) => this.handleExtractMetrics(args),
247
+ "explore_codebase": async (args) => this.handleExploreCodebase(args),
248
+ "find_patterns": async (args) => this.handleFindPatterns(args),
249
+ "find_function": async (args) => this.handleFindFunction(args),
250
+ "get_file_structure": async (args) => this.handleGetFileStructure(args),
251
+ "analyze_dependencies": async (args) => this.handleAnalyzeDependencies(args),
252
+ "find_duplicates": async (args) => this.handleFindDuplicates(args),
253
+ };
254
+ this.setupToolHandlers();
273
255
  }
274
256
  handleAnalyzeCode(args) {
275
257
  const { files = [], language = "typescript" } = args;
@@ -589,17 +571,8 @@ class CodeAnalyzerServer {
589
571
  const duplicates = [...blocks.entries()].filter(([_, f]) => f.length > 1).map(([block, files]) => ({ block: block.substring(0, 100) + "...", files, length: block.split("\n").length }));
590
572
  return { content: [{ type: "text", text: JSON.stringify({ totalDuplicates: duplicates.length, duplicates }, null, 2) }] };
591
573
  }
592
- async run() {
593
- const transport = new StdioServerTransport();
594
- await this.server.connect(transport);
595
- // Use centralized shutdown handler
596
- createGracefulShutdown({
597
- serverName: "code-analyzer.server",
598
- server: this.server,
599
- });
600
- }
601
574
  }
602
- if (import.meta.url === `file://${process.argv[1]}`) {
575
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1])}`) {
603
576
  new CodeAnalyzerServer().run().catch(() => { });
604
577
  }
605
578
  export default CodeAnalyzerServer;