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
@@ -5,16 +5,10 @@
5
5
  * and pattern recognition - provides deep project intelligence
6
6
  */
7
7
 
8
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
9
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
10
- import {
11
- CallToolRequestSchema,
12
- ListToolsRequestSchema,
13
- type CallToolResult,
14
- } from "@modelcontextprotocol/sdk/types.js";
15
8
  import * as fs from "fs";
16
9
  import * as path from "path";
17
10
  import { frameworkLogger } from "../../core/framework-logger.js";
11
+ import { XrayKnowledgeSkillBase } from "../shared/knowledge-skill-base.js";
18
12
 
19
13
  interface ProjectMetrics {
20
14
  totalFiles: number;
@@ -136,30 +130,10 @@ interface McpToolResponse {
136
130
  content: Array<{ type: "text"; text: string }>;
137
131
  }
138
132
 
139
- class ProjectAnalysisServer {
140
- private server: Server;
141
-
133
+ class ProjectAnalysisServer extends XrayKnowledgeSkillBase {
142
134
  constructor() {
143
- this.server = new Server(
144
- {
145
- name: "project-analysis", version: "1.22.67",
146
- },
147
- {
148
- capabilities: {
149
- tools: {},
150
- },
151
- },
152
- );
153
-
154
- this.setupToolHandlers();
155
- // Server initialization - removed unnecessary startup logging
156
- }
157
-
158
- private setupToolHandlers() {
159
- // List available tools
160
- this.server.setRequestHandler(ListToolsRequestSchema, async () => {
161
- return {
162
- tools: [
135
+ super("project-analysis", "3.1.0");
136
+ this.tools = [
163
137
  {
164
138
  name: "analyze-project-structure",
165
139
  description:
@@ -295,34 +269,15 @@ class ProjectAnalysisServer {
295
269
  required: ["proposalTitle", "proposalDescription"],
296
270
  },
297
271
  },
298
- ],
299
- };
300
- });
301
-
302
- // Handle tool calls
303
- this.server.setRequestHandler(CallToolRequestSchema, async (request): Promise<CallToolResult> => {
304
- const { name, arguments: args } = request.params;
305
-
306
- try {
307
- switch (name) {
308
- case "analyze-project-structure":
309
- return await this.analyzeProjectStructure(args as unknown as AnalyzeProjectStructureArgs) as CallToolResult;
310
- case "assess-project-complexity":
311
- return await this.assessProjectComplexity(args as unknown as AssessProjectComplexityArgs) as CallToolResult;
312
- case "identify-project-patterns":
313
- return await this.identifyProjectPatterns(args as unknown as IdentifyProjectPatternsArgs) as CallToolResult;
314
- case "analyze-project-health":
315
- return await this.analyzeProjectHealth(args as unknown as AnalyzeProjectHealthArgs) as CallToolResult;
316
- case "analyze_proposal":
317
- return await this.analyzeProposal(args as any) as CallToolResult;
318
- default:
319
- throw new Error(`Unknown tool: ${name}`);
320
- }
321
- } catch (error) {
322
- frameworkLogger.log("mcps/project-analysis", "tool", "error", { tool: name, error: String(error) });
323
- throw error;
324
- }
325
- });
272
+ ];
273
+ this.handlers = {
274
+ "analyze-project-structure": async (args) => this.analyzeProjectStructure(args as unknown as AnalyzeProjectStructureArgs),
275
+ "assess-project-complexity": async (args) => this.assessProjectComplexity(args as unknown as AssessProjectComplexityArgs),
276
+ "identify-project-patterns": async (args) => this.identifyProjectPatterns(args as unknown as IdentifyProjectPatternsArgs),
277
+ "analyze-project-health": async (args) => this.analyzeProjectHealth(args as unknown as AnalyzeProjectHealthArgs),
278
+ "analyze_proposal": async (args) => this.analyzeProposal(args as any),
279
+ };
280
+ this.setupToolHandlers();
326
281
  }
327
282
 
328
283
  private async analyzeProjectStructure(args: AnalyzeProjectStructureArgs): Promise<McpToolResponse> {
@@ -1037,73 +992,11 @@ class ProjectAnalysisServer {
1037
992
  };
1038
993
  }
1039
994
 
1040
- async run(): Promise<void> {
1041
- const transport = new StdioServerTransport();
1042
- await this.server.connect(transport);
1043
- await frameworkLogger.log(
1044
- "mcp-project-analysis",
1045
- "server-started",
1046
- "success",
1047
- );
1048
-
1049
- const cleanup = async (signal: string) => {
1050
- frameworkLogger.log("mcps/project-analysis", "shutdown", "info", { signal });
1051
-
1052
- // Set a timeout to force exit if graceful shutdown fails
1053
- const timeout = setTimeout(() => {
1054
- frameworkLogger.log("mcps/project-analysis", "shutdown", "error", { message: "Graceful shutdown timeout, forcing exit..." });
1055
- process.exit(1);
1056
- }, 5000); // 5 second timeout
1057
-
1058
- try {
1059
- if (this.server && typeof this.server.close === "function") {
1060
- await this.server.close();
1061
- }
1062
- clearTimeout(timeout);
1063
- frameworkLogger.log("mcps/project-analysis", "shutdown", "success");
1064
- process.exit(0);
1065
- } catch (error) {
1066
- clearTimeout(timeout);
1067
- frameworkLogger.log("mcps/project-analysis", "shutdown", "error", { message: `Error during server shutdown: ${String(error)}` });
1068
- process.exit(1);
1069
- }
1070
- };
1071
-
1072
- // Handle multiple shutdown signals
1073
- process.on("SIGINT", () => cleanup("SIGINT"));
1074
- process.on("SIGTERM", () => cleanup("SIGTERM"));
1075
- process.on("SIGHUP", () => cleanup("SIGHUP"));
1076
995
 
1077
- // Monitor parent process (opencode) and shutdown if it dies
1078
- const checkParent = () => {
1079
- try {
1080
- process.kill(process.ppid, 0); // Check if parent is alive
1081
- setTimeout(checkParent, 1000); // Check again in 1 second
1082
- } catch (error) {
1083
- // Parent process died, shut down gracefully
1084
- frameworkLogger.log("mcps/project-analysis", "parent-death", "info");
1085
- cleanup("parent-process-death");
1086
- }
1087
- };
1088
-
1089
- // Start monitoring parent process
1090
- setTimeout(checkParent, 2000); // Start checking after 2 seconds
1091
-
1092
- // Handle uncaught exceptions and unhandled rejections
1093
- process.on("uncaughtException", (error) => {
1094
- frameworkLogger.log("mcps/project-analysis", "uncaughtException", "error", { error: String(error) });
1095
- cleanup("uncaughtException");
1096
- });
1097
-
1098
- process.on("unhandledRejection", (reason, promise) => {
1099
- frameworkLogger.log("mcps/project-analysis", "unhandledRejection", "error", { error: String(reason) });
1100
- cleanup("unhandledRejection");
1101
- });
1102
- }
1103
996
  }
1104
997
 
1105
998
  // Start the server if run directly
1106
- if (import.meta.url === `file://${process.argv[1]}`) {
999
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1]!)}`) {
1107
1000
  const server = new ProjectAnalysisServer();
1108
1001
  server.run().catch((error: unknown) => frameworkLogger.log("mcps/project-analysis", "run", "error", { error: String(error) }));
1109
1002
  }
@@ -5,15 +5,9 @@
5
5
  * modernization, and code improvement patterns
6
6
  */
7
7
 
8
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
9
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
8
+ import * as fs from "fs";
10
9
  import { frameworkLogger } from "../../core/framework-logger.js";
11
- import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
12
- import {
13
- CallToolRequestSchema,
14
- ListToolsRequestSchema,
15
- type CallToolResult,
16
- } from "@modelcontextprotocol/sdk/types.js";
10
+ import { XrayKnowledgeSkillBase } from "../shared/knowledge-skill-base.js";
17
11
 
18
12
  interface RefactoringOpportunity {
19
13
  type:
@@ -154,29 +148,10 @@ interface RollbackPlan {
154
148
  emergencyProcedures: string[];
155
149
  }
156
150
 
157
- class XrayRefactoringStrategiesServer {
158
- private server: Server;
159
-
151
+ class XrayRefactoringStrategiesServer extends XrayKnowledgeSkillBase {
160
152
  constructor() {
161
- this.server = new Server(
162
- {
163
- name: "refactoring-strategies", version: "1.22.67",
164
- },
165
- {
166
- capabilities: {
167
- tools: {},
168
- },
169
- },
170
- );
171
-
172
- this.setupToolHandlers();
173
- // Server initialization - removed unnecessary startup logging
174
- }
175
-
176
- private setupToolHandlers() {
177
- this.server.setRequestHandler(ListToolsRequestSchema, async () => {
178
- return {
179
- tools: [
153
+ super("refactoring-strategies", "3.1.0");
154
+ this.tools = [
180
155
  {
181
156
  name: "analyze_technical_debt",
182
157
  description:
@@ -295,26 +270,14 @@ class XrayRefactoringStrategiesServer {
295
270
  required: ["codePath"],
296
271
  },
297
272
  },
298
- ],
299
- };
300
- });
301
-
302
- this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
303
- const { name, arguments: args } = request.params;
304
-
305
- switch (name) {
306
- case "analyze_technical_debt":
307
- return await this.analyzeTechnicalDebt(args as unknown as AnalyzeTechnicalDebtArgs) as CallToolResult;
308
- case "suggest_refactoring":
309
- return await this.suggestRefactoring(args as unknown as SuggestRefactoringArgs) as CallToolResult;
310
- case "generate_refactoring_plan":
311
- return await this.generateRefactoringPlan(args as unknown as GenerateRefactoringPlanArgs) as CallToolResult;
312
- case "modernize_codebase":
313
- return await this.modernizeCodebase(args as unknown as ModernizeCodebaseArgs) as CallToolResult;
314
- default:
315
- throw new Error(`Unknown tool: ${name}`);
316
- }
317
- });
273
+ ];
274
+ this.handlers = {
275
+ "analyze_technical_debt": async (args) => this.analyzeTechnicalDebt(args as unknown as AnalyzeTechnicalDebtArgs),
276
+ "suggest_refactoring": async (args) => this.suggestRefactoring(args as unknown as SuggestRefactoringArgs),
277
+ "generate_refactoring_plan": async (args) => this.generateRefactoringPlan(args as unknown as GenerateRefactoringPlanArgs),
278
+ "modernize_codebase": async (args) => this.modernizeCodebase(args as unknown as ModernizeCodebaseArgs),
279
+ };
280
+ this.setupToolHandlers();
318
281
  }
319
282
 
320
283
  private async analyzeTechnicalDebt(args: AnalyzeTechnicalDebtArgs) {
@@ -1071,20 +1034,11 @@ class XrayRefactoringStrategiesServer {
1071
1034
  return icons[effort as keyof typeof icons] || "❓";
1072
1035
  }
1073
1036
 
1074
- async run(): Promise<void> {
1075
- const transport = new StdioServerTransport();
1076
- await this.server.connect(transport);
1077
-
1078
- // Use centralized shutdown handler
1079
- createGracefulShutdown({
1080
- serverName: "refactoring-strategies.server",
1081
- server: this.server,
1082
- });
1083
- }
1037
+
1084
1038
  }
1085
1039
 
1086
1040
  // Run the server if this file is executed directly
1087
- if (import.meta.url === `file://${process.argv[1]}`) {
1041
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1]!)}`) {
1088
1042
  const server = new XrayRefactoringStrategiesServer();
1089
1043
  server.run().catch(() => {});
1090
1044
  }
@@ -5,16 +5,9 @@
5
5
  * and compliance validation - ensures production-ready security posture
6
6
  */
7
7
 
8
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
9
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
10
- import {
11
- CallToolRequestSchema,
12
- ListToolsRequestSchema,
13
- type CallToolResult,
14
- } from "@modelcontextprotocol/sdk/types.js";
15
8
  import * as fs from "fs";
16
9
  import * as path from "path";
17
- import { createGracefulShutdown } from "../../utils/shutdown-handler.js";
10
+ import { XrayKnowledgeSkillBase } from "../shared/knowledge-skill-base.js";
18
11
  import { tryLLMGovernance } from "../../governance/llm-governance-provider.js";
19
12
 
20
13
  interface SecurityVulnerability {
@@ -85,151 +78,29 @@ interface AnalyzeProposalArgs {
85
78
  proposalType?: string;
86
79
  }
87
80
 
88
- class XraySecurityAuditServer {
89
- private server: Server;
81
+ class XraySecurityAuditServer extends XrayKnowledgeSkillBase {
90
82
 
91
83
  constructor() {
92
- this.server = new Server(
93
- {
94
- name: "security-audit", version: "1.22.67",
95
- },
96
- {
97
- capabilities: {
98
- tools: {},
99
- },
100
- },
101
- );
84
+ super("security-audit", "3.1.0");
85
+
86
+ this.tools = [
87
+ { name: "audit_security", description: "Perform comprehensive security audit on codebase files", inputSchema: { type: "object", properties: { files: { type: "array", items: { type: "string" }, description: "List of file paths to audit" }, includeDependencies: { type: "boolean", description: "Include dependency vulnerability analysis", default: true }, complianceFrameworks: { type: "array", items: { type: "string", enum: ["owasp-top-10", "nist", "iso-27001", "pci-dss"] }, description: "Compliance frameworks to check against" } }, required: ["files"] } },
88
+ { name: "check_vulnerability", description: "Check specific security vulnerability patterns in a file", inputSchema: { type: "object", properties: { filePath: { type: "string", description: "Path to the file to check" }, vulnerabilityType: { type: "string", enum: ["injection", "authentication", "authorization", "cryptography", "xss", "csrf", "secrets", "configuration"] }, severity: { type: "string", enum: ["critical", "high", "medium", "low", "info"], description: "Minimum severity level to report" } }, required: ["filePath", "vulnerabilityType"] } },
89
+ { name: "generate_security_report", description: "Generate comprehensive security report with remediation steps", inputSchema: { type: "object", properties: { auditResults: { type: "object", description: "Results from audit_security tool" }, format: { type: "string", enum: ["markdown", "json", "html"], default: "markdown" }, includeRemediation: { type: "boolean", default: true } }, required: ["auditResults"] } },
90
+ { name: "analyze_proposal", description: "Analyze an inference proposal (pattern/bug/refactor) from a security perspective and return a structured governance decision", inputSchema: { type: "object", properties: { proposalTitle: { type: "string" }, proposalDescription: { type: "string" }, evidence: { type: "array", items: { type: "string" } }, proposalType: { type: "string" } }, required: ["proposalTitle", "proposalDescription"] } },
91
+ ];
92
+
93
+ this.handlers = {
94
+ audit_security: async (args) => this.auditSecurity(args as AuditSecurityArgs),
95
+ check_vulnerability: async (args) => this.checkVulnerability(args as CheckVulnerabilityArgs),
96
+ generate_security_report: async (args) => this.generateSecurityReport(args as GenerateSecurityReportArgs),
97
+ analyze_proposal: async (args) => this.analyzeProposal(args as AnalyzeProposalArgs),
98
+ };
102
99
 
103
100
  this.setupToolHandlers();
104
- // Server initialization - removed unnecessary startup logging
105
101
  }
106
102
 
107
- private setupToolHandlers() {
108
- this.server.setRequestHandler(ListToolsRequestSchema, async () => {
109
- return {
110
- tools: [
111
- {
112
- name: "audit_security",
113
- description:
114
- "Perform comprehensive security audit on codebase files",
115
- inputSchema: {
116
- type: "object",
117
- properties: {
118
- files: {
119
- type: "array",
120
- items: { type: "string" },
121
- description: "List of file paths to audit",
122
- },
123
- includeDependencies: {
124
- type: "boolean",
125
- description: "Include dependency vulnerability analysis",
126
- default: true,
127
- },
128
- complianceFrameworks: {
129
- type: "array",
130
- items: {
131
- type: "string",
132
- enum: ["owasp-top-10", "nist", "iso-27001", "pci-dss"],
133
- },
134
- description: "Compliance frameworks to check against",
135
- },
136
- },
137
- required: ["files"],
138
- },
139
- },
140
- {
141
- name: "check_vulnerability",
142
- description:
143
- "Check specific security vulnerability patterns in a file",
144
- inputSchema: {
145
- type: "object",
146
- properties: {
147
- filePath: {
148
- type: "string",
149
- description: "Path to the file to check",
150
- },
151
- vulnerabilityType: {
152
- type: "string",
153
- enum: [
154
- "injection",
155
- "authentication",
156
- "authorization",
157
- "cryptography",
158
- "xss",
159
- "csrf",
160
- "secrets",
161
- "configuration",
162
- ],
163
- },
164
- severity: {
165
- type: "string",
166
- enum: ["critical", "high", "medium", "low", "info"],
167
- description: "Minimum severity level to report",
168
- },
169
- },
170
- required: ["filePath", "vulnerabilityType"],
171
- },
172
- },
173
- {
174
- name: "generate_security_report",
175
- description:
176
- "Generate comprehensive security report with remediation steps",
177
- inputSchema: {
178
- type: "object",
179
- properties: {
180
- auditResults: {
181
- type: "object",
182
- description: "Results from audit_security tool",
183
- },
184
- format: {
185
- type: "string",
186
- enum: ["markdown", "json", "html"],
187
- default: "markdown",
188
- },
189
- includeRemediation: {
190
- type: "boolean",
191
- default: true,
192
- },
193
- },
194
- required: ["auditResults"],
195
- },
196
- },
197
- {
198
- name: "analyze_proposal",
199
- description:
200
- "Analyze an inference proposal (pattern/bug/refactor) from a security perspective and return a structured governance decision",
201
- inputSchema: {
202
- type: "object",
203
- properties: {
204
- proposalTitle: { type: "string" },
205
- proposalDescription: { type: "string" },
206
- evidence: { type: "array", items: { type: "string" } },
207
- proposalType: { type: "string" },
208
- },
209
- required: ["proposalTitle", "proposalDescription"],
210
- },
211
- },
212
- ],
213
- };
214
- });
215
-
216
- this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
217
- const { name, arguments: args } = request.params;
218
-
219
- switch (name) {
220
- case "audit_security":
221
- return await this.auditSecurity(args as unknown as AuditSecurityArgs);
222
- case "check_vulnerability":
223
- return await this.checkVulnerability(args as unknown as CheckVulnerabilityArgs);
224
- case "generate_security_report":
225
- return await this.generateSecurityReport(args as unknown as GenerateSecurityReportArgs);
226
- case "analyze_proposal":
227
- return await this.analyzeProposal(args as AnalyzeProposalArgs) as CallToolResult;
228
- default:
229
- throw new Error(`Unknown tool: ${name}`);
230
- }
231
- });
232
- }
103
+ // setupToolHandlers removed — handled by XrayKnowledgeSkillBase via this.tools + this.handlers
233
104
 
234
105
  private async auditSecurity(args: AuditSecurityArgs) {
235
106
  const {
@@ -1153,20 +1024,11 @@ class XraySecurityAuditServer {
1153
1024
  };
1154
1025
  }
1155
1026
 
1156
- async run(): Promise<void> {
1157
- const transport = new StdioServerTransport();
1158
- await this.server.connect(transport);
1159
-
1160
- // Use centralized shutdown handler
1161
- createGracefulShutdown({
1162
- serverName: "security-audit.server",
1163
- server: this.server,
1164
- });
1165
- }
1027
+ // run() removed — handled by XrayKnowledgeSkillBase
1166
1028
  }
1167
1029
 
1168
1030
  // Run the server if this file is executed directly
1169
- if (import.meta.url === `file://${process.argv[1]}`) {
1031
+ if (import.meta.url === `file://${fs.realpathSync(process.argv[1]!)}`) {
1170
1032
  const server = new XraySecurityAuditServer();
1171
1033
  server.run().catch(() => {});
1172
1034
  }