kastell 2.0.0 → 2.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 (333) hide show
  1. package/CHANGELOG.md +85 -0
  2. package/README.md +1 -1
  3. package/README.tr.md +1 -1
  4. package/dist/commands/audit.d.ts +3 -0
  5. package/dist/commands/audit.d.ts.map +1 -1
  6. package/dist/commands/audit.js +61 -32
  7. package/dist/commands/audit.js.map +1 -1
  8. package/dist/commands/config.js +1 -1
  9. package/dist/commands/config.js.map +1 -1
  10. package/dist/commands/doctor.d.ts +1 -0
  11. package/dist/commands/doctor.d.ts.map +1 -1
  12. package/dist/commands/doctor.js +25 -7
  13. package/dist/commands/doctor.js.map +1 -1
  14. package/dist/commands/explain.d.ts +6 -0
  15. package/dist/commands/explain.d.ts.map +1 -0
  16. package/dist/commands/explain.js +28 -0
  17. package/dist/commands/explain.js.map +1 -0
  18. package/dist/commands/fix.d.ts +2 -0
  19. package/dist/commands/fix.d.ts.map +1 -1
  20. package/dist/commands/fix.js +54 -15
  21. package/dist/commands/fix.js.map +1 -1
  22. package/dist/commands/fleet.d.ts.map +1 -1
  23. package/dist/commands/fleet.js +1 -0
  24. package/dist/commands/fleet.js.map +1 -1
  25. package/dist/commands/init.d.ts.map +1 -1
  26. package/dist/commands/init.js +175 -1
  27. package/dist/commands/init.js.map +1 -1
  28. package/dist/commands/interactive.d.ts.map +1 -1
  29. package/dist/commands/interactive.js +59 -1
  30. package/dist/commands/interactive.js.map +1 -1
  31. package/dist/commands/plugin.d.ts +8 -0
  32. package/dist/commands/plugin.d.ts.map +1 -0
  33. package/dist/commands/plugin.js +87 -0
  34. package/dist/commands/plugin.js.map +1 -0
  35. package/dist/commands/regression.d.ts +5 -0
  36. package/dist/commands/regression.d.ts.map +1 -0
  37. package/dist/commands/regression.js +40 -0
  38. package/dist/commands/regression.js.map +1 -0
  39. package/dist/core/audit/checkIds.d.ts +516 -0
  40. package/dist/core/audit/checkIds.d.ts.map +1 -0
  41. package/dist/core/audit/checkIds.js +515 -0
  42. package/dist/core/audit/checkIds.js.map +1 -0
  43. package/dist/core/audit/checks/accounts.d.ts.map +1 -1
  44. package/dist/core/audit/checks/accounts.js +23 -22
  45. package/dist/core/audit/checks/accounts.js.map +1 -1
  46. package/dist/core/audit/checks/auth.d.ts.map +1 -1
  47. package/dist/core/audit/checks/auth.js +23 -22
  48. package/dist/core/audit/checks/auth.js.map +1 -1
  49. package/dist/core/audit/checks/backup.d.ts.map +1 -1
  50. package/dist/core/audit/checks/backup.js +9 -8
  51. package/dist/core/audit/checks/backup.js.map +1 -1
  52. package/dist/core/audit/checks/banners.d.ts.map +1 -1
  53. package/dist/core/audit/checks/banners.js +7 -6
  54. package/dist/core/audit/checks/banners.js.map +1 -1
  55. package/dist/core/audit/checks/boot.d.ts.map +1 -1
  56. package/dist/core/audit/checks/boot.js +12 -11
  57. package/dist/core/audit/checks/boot.js.map +1 -1
  58. package/dist/core/audit/checks/cloudmeta.d.ts.map +1 -1
  59. package/dist/core/audit/checks/cloudmeta.js +7 -6
  60. package/dist/core/audit/checks/cloudmeta.js.map +1 -1
  61. package/dist/core/audit/checks/crypto.d.ts +0 -5
  62. package/dist/core/audit/checks/crypto.d.ts.map +1 -1
  63. package/dist/core/audit/checks/crypto.js +20 -19
  64. package/dist/core/audit/checks/crypto.js.map +1 -1
  65. package/dist/core/audit/checks/ddos.d.ts.map +1 -1
  66. package/dist/core/audit/checks/ddos.js +9 -8
  67. package/dist/core/audit/checks/ddos.js.map +1 -1
  68. package/dist/core/audit/checks/dns.d.ts.map +1 -1
  69. package/dist/core/audit/checks/dns.js +9 -8
  70. package/dist/core/audit/checks/dns.js.map +1 -1
  71. package/dist/core/audit/checks/docker.d.ts.map +1 -1
  72. package/dist/core/audit/checks/docker.js +65 -64
  73. package/dist/core/audit/checks/docker.js.map +1 -1
  74. package/dist/core/audit/checks/fileintegrity.d.ts.map +1 -1
  75. package/dist/core/audit/checks/fileintegrity.js +11 -10
  76. package/dist/core/audit/checks/fileintegrity.js.map +1 -1
  77. package/dist/core/audit/checks/filesystem.d.ts.map +1 -1
  78. package/dist/core/audit/checks/filesystem.js +21 -20
  79. package/dist/core/audit/checks/filesystem.js.map +1 -1
  80. package/dist/core/audit/checks/firewall.d.ts.map +1 -1
  81. package/dist/core/audit/checks/firewall.js +18 -17
  82. package/dist/core/audit/checks/firewall.js.map +1 -1
  83. package/dist/core/audit/checks/httpHeaders.d.ts.map +1 -1
  84. package/dist/core/audit/checks/httpHeaders.js +7 -6
  85. package/dist/core/audit/checks/httpHeaders.js.map +1 -1
  86. package/dist/core/audit/checks/incidentready.d.ts.map +1 -1
  87. package/dist/core/audit/checks/incidentready.js +13 -12
  88. package/dist/core/audit/checks/incidentready.js.map +1 -1
  89. package/dist/core/audit/checks/kernel.d.ts.map +1 -1
  90. package/dist/core/audit/checks/kernel.js +32 -31
  91. package/dist/core/audit/checks/kernel.js.map +1 -1
  92. package/dist/core/audit/checks/logging.d.ts.map +1 -1
  93. package/dist/core/audit/checks/logging.js +21 -20
  94. package/dist/core/audit/checks/logging.js.map +1 -1
  95. package/dist/core/audit/checks/mac.d.ts.map +1 -1
  96. package/dist/core/audit/checks/mac.js +11 -10
  97. package/dist/core/audit/checks/mac.js.map +1 -1
  98. package/dist/core/audit/checks/malware.d.ts.map +1 -1
  99. package/dist/core/audit/checks/malware.js +12 -11
  100. package/dist/core/audit/checks/malware.js.map +1 -1
  101. package/dist/core/audit/checks/memory.d.ts.map +1 -1
  102. package/dist/core/audit/checks/memory.js +12 -11
  103. package/dist/core/audit/checks/memory.js.map +1 -1
  104. package/dist/core/audit/checks/network.d.ts.map +1 -1
  105. package/dist/core/audit/checks/network.js +22 -21
  106. package/dist/core/audit/checks/network.js.map +1 -1
  107. package/dist/core/audit/checks/nginx.d.ts.map +1 -1
  108. package/dist/core/audit/checks/nginx.js +17 -16
  109. package/dist/core/audit/checks/nginx.js.map +1 -1
  110. package/dist/core/audit/checks/resourcelimits.d.ts.map +1 -1
  111. package/dist/core/audit/checks/resourcelimits.js +9 -8
  112. package/dist/core/audit/checks/resourcelimits.js.map +1 -1
  113. package/dist/core/audit/checks/scheduling.d.ts.map +1 -1
  114. package/dist/core/audit/checks/scheduling.js +13 -12
  115. package/dist/core/audit/checks/scheduling.js.map +1 -1
  116. package/dist/core/audit/checks/secrets.d.ts.map +1 -1
  117. package/dist/core/audit/checks/secrets.js +16 -15
  118. package/dist/core/audit/checks/secrets.js.map +1 -1
  119. package/dist/core/audit/checks/services.d.ts.map +1 -1
  120. package/dist/core/audit/checks/services.js +26 -25
  121. package/dist/core/audit/checks/services.js.map +1 -1
  122. package/dist/core/audit/checks/ssh.d.ts.map +1 -1
  123. package/dist/core/audit/checks/ssh.js +23 -22
  124. package/dist/core/audit/checks/ssh.js.map +1 -1
  125. package/dist/core/audit/checks/supplychain.d.ts.map +1 -1
  126. package/dist/core/audit/checks/supplychain.js +13 -12
  127. package/dist/core/audit/checks/supplychain.js.map +1 -1
  128. package/dist/core/audit/checks/time.d.ts.map +1 -1
  129. package/dist/core/audit/checks/time.js +10 -9
  130. package/dist/core/audit/checks/time.js.map +1 -1
  131. package/dist/core/audit/checks/tls.d.ts.map +1 -1
  132. package/dist/core/audit/checks/tls.js +9 -8
  133. package/dist/core/audit/checks/tls.js.map +1 -1
  134. package/dist/core/audit/checks/updates.d.ts.map +1 -1
  135. package/dist/core/audit/checks/updates.js +12 -11
  136. package/dist/core/audit/checks/updates.js.map +1 -1
  137. package/dist/core/audit/compliance/categories/index.d.ts +3 -0
  138. package/dist/core/audit/compliance/categories/index.d.ts.map +1 -0
  139. package/dist/core/audit/compliance/categories/index.js +737 -0
  140. package/dist/core/audit/compliance/categories/index.js.map +1 -0
  141. package/dist/core/audit/compliance/helpers.d.ts +17 -0
  142. package/dist/core/audit/compliance/helpers.d.ts.map +1 -0
  143. package/dist/core/audit/compliance/helpers.js +40 -0
  144. package/dist/core/audit/compliance/helpers.js.map +1 -0
  145. package/dist/core/audit/compliance/mapper.d.ts +4 -16
  146. package/dist/core/audit/compliance/mapper.d.ts.map +1 -1
  147. package/dist/core/audit/compliance/mapper.js +3 -776
  148. package/dist/core/audit/compliance/mapper.js.map +1 -1
  149. package/dist/core/audit/diff.d.ts +12 -1
  150. package/dist/core/audit/diff.d.ts.map +1 -1
  151. package/dist/core/audit/diff.js +121 -0
  152. package/dist/core/audit/diff.js.map +1 -1
  153. package/dist/core/audit/explainCheck.d.ts +26 -0
  154. package/dist/core/audit/explainCheck.d.ts.map +1 -0
  155. package/dist/core/audit/explainCheck.js +165 -0
  156. package/dist/core/audit/explainCheck.js.map +1 -0
  157. package/dist/core/audit/fix-history.d.ts +16 -7
  158. package/dist/core/audit/fix-history.d.ts.map +1 -1
  159. package/dist/core/audit/fix-history.js +25 -2
  160. package/dist/core/audit/fix-history.js.map +1 -1
  161. package/dist/core/audit/fix.d.ts +21 -6
  162. package/dist/core/audit/fix.d.ts.map +1 -1
  163. package/dist/core/audit/fix.js +139 -49
  164. package/dist/core/audit/fix.js.map +1 -1
  165. package/dist/core/audit/history.d.ts.map +1 -1
  166. package/dist/core/audit/history.js +2 -1
  167. package/dist/core/audit/history.js.map +1 -1
  168. package/dist/core/audit/index.d.ts.map +1 -1
  169. package/dist/core/audit/index.js +3 -2
  170. package/dist/core/audit/index.js.map +1 -1
  171. package/dist/core/audit/listChecks.d.ts +7 -0
  172. package/dist/core/audit/listChecks.d.ts.map +1 -1
  173. package/dist/core/audit/listChecks.js +1 -1
  174. package/dist/core/audit/listChecks.js.map +1 -1
  175. package/dist/core/audit/regression.d.ts +15 -0
  176. package/dist/core/audit/regression.d.ts.map +1 -0
  177. package/dist/core/audit/regression.js +149 -0
  178. package/dist/core/audit/regression.js.map +1 -0
  179. package/dist/core/audit/snapshot.d.ts.map +1 -1
  180. package/dist/core/audit/snapshot.js +91 -29
  181. package/dist/core/audit/snapshot.js.map +1 -1
  182. package/dist/core/audit/types.d.ts +63 -1
  183. package/dist/core/audit/types.d.ts.map +1 -1
  184. package/dist/core/audit/watch.d.ts.map +1 -1
  185. package/dist/core/audit/watch.js +3 -2
  186. package/dist/core/audit/watch.js.map +1 -1
  187. package/dist/core/bot/handlers.d.ts.map +1 -1
  188. package/dist/core/bot/handlers.js +9 -18
  189. package/dist/core/bot/handlers.js.map +1 -1
  190. package/dist/core/completions.d.ts.map +1 -1
  191. package/dist/core/completions.js +24 -2
  192. package/dist/core/completions.js.map +1 -1
  193. package/dist/core/defaults.d.ts +4 -0
  194. package/dist/core/defaults.d.ts.map +1 -0
  195. package/dist/core/defaults.js +34 -0
  196. package/dist/core/defaults.js.map +1 -0
  197. package/dist/core/doctor-fix.d.ts +1 -1
  198. package/dist/core/doctor-fix.d.ts.map +1 -1
  199. package/dist/core/doctor-fix.js +17 -2
  200. package/dist/core/doctor-fix.js.map +1 -1
  201. package/dist/core/doctor.d.ts +4 -0
  202. package/dist/core/doctor.d.ts.map +1 -1
  203. package/dist/core/doctor.js +26 -2
  204. package/dist/core/doctor.js.map +1 -1
  205. package/dist/core/firewall.d.ts +1 -4
  206. package/dist/core/firewall.d.ts.map +1 -1
  207. package/dist/core/firewall.js +19 -25
  208. package/dist/core/firewall.js.map +1 -1
  209. package/dist/core/fleet.d.ts +8 -0
  210. package/dist/core/fleet.d.ts.map +1 -1
  211. package/dist/core/fleet.js +49 -5
  212. package/dist/core/fleet.js.map +1 -1
  213. package/dist/core/manage.d.ts +9 -6
  214. package/dist/core/manage.d.ts.map +1 -1
  215. package/dist/core/manage.js +2 -1
  216. package/dist/core/manage.js.map +1 -1
  217. package/dist/core/notify.d.ts.map +1 -1
  218. package/dist/core/notify.js +2 -1
  219. package/dist/core/notify.js.map +1 -1
  220. package/dist/core/plugin.d.ts +23 -0
  221. package/dist/core/plugin.d.ts.map +1 -0
  222. package/dist/core/plugin.js +107 -0
  223. package/dist/core/plugin.js.map +1 -0
  224. package/dist/core/scheduleManager.d.ts +2 -1
  225. package/dist/core/scheduleManager.d.ts.map +1 -1
  226. package/dist/core/scheduleManager.js +8 -5
  227. package/dist/core/scheduleManager.js.map +1 -1
  228. package/dist/core/status.d.ts +1 -0
  229. package/dist/core/status.d.ts.map +1 -1
  230. package/dist/core/status.js +20 -6
  231. package/dist/core/status.js.map +1 -1
  232. package/dist/index.js +65 -2
  233. package/dist/index.js.map +1 -1
  234. package/dist/mcp/index.js +5 -9
  235. package/dist/mcp/index.js.map +1 -1
  236. package/dist/mcp/server.d.ts.map +1 -1
  237. package/dist/mcp/server.js +44 -2
  238. package/dist/mcp/server.js.map +1 -1
  239. package/dist/mcp/tools/serverAudit.d.ts.map +1 -1
  240. package/dist/mcp/tools/serverAudit.js +15 -0
  241. package/dist/mcp/tools/serverAudit.js.map +1 -1
  242. package/dist/mcp/tools/serverCompare.d.ts +15 -0
  243. package/dist/mcp/tools/serverCompare.d.ts.map +1 -0
  244. package/dist/mcp/tools/serverCompare.js +43 -0
  245. package/dist/mcp/tools/serverCompare.js.map +1 -0
  246. package/dist/mcp/tools/serverDoctor.d.ts.map +1 -1
  247. package/dist/mcp/tools/serverDoctor.js +2 -1
  248. package/dist/mcp/tools/serverDoctor.js.map +1 -1
  249. package/dist/mcp/tools/serverExplain.d.ts +8 -0
  250. package/dist/mcp/tools/serverExplain.d.ts.map +1 -0
  251. package/dist/mcp/tools/serverExplain.js +14 -0
  252. package/dist/mcp/tools/serverExplain.js.map +1 -0
  253. package/dist/mcp/tools/serverFix.d.ts +2 -0
  254. package/dist/mcp/tools/serverFix.d.ts.map +1 -1
  255. package/dist/mcp/tools/serverFix.js +40 -2
  256. package/dist/mcp/tools/serverFix.js.map +1 -1
  257. package/dist/mcp/tools/serverFleet.d.ts +2 -0
  258. package/dist/mcp/tools/serverFleet.d.ts.map +1 -1
  259. package/dist/mcp/tools/serverFleet.js +10 -1
  260. package/dist/mcp/tools/serverFleet.js.map +1 -1
  261. package/dist/mcp/tools/serverManage.d.ts.map +1 -1
  262. package/dist/mcp/tools/serverManage.js +10 -9
  263. package/dist/mcp/tools/serverManage.js.map +1 -1
  264. package/dist/mcp/tools/serverPlugin.d.ts +12 -0
  265. package/dist/mcp/tools/serverPlugin.d.ts.map +1 -0
  266. package/dist/mcp/tools/serverPlugin.js +22 -0
  267. package/dist/mcp/tools/serverPlugin.js.map +1 -0
  268. package/dist/plugin/loader.d.ts +10 -0
  269. package/dist/plugin/loader.d.ts.map +1 -0
  270. package/dist/plugin/loader.js +88 -0
  271. package/dist/plugin/loader.js.map +1 -0
  272. package/dist/plugin/registry.d.ts +16 -0
  273. package/dist/plugin/registry.d.ts.map +1 -0
  274. package/dist/plugin/registry.js +99 -0
  275. package/dist/plugin/registry.js.map +1 -0
  276. package/dist/plugin/sdk/constants.d.ts +3 -0
  277. package/dist/plugin/sdk/constants.d.ts.map +1 -0
  278. package/dist/plugin/sdk/constants.js +3 -0
  279. package/dist/plugin/sdk/constants.js.map +1 -0
  280. package/dist/plugin/sdk/types.d.ts +29 -0
  281. package/dist/plugin/sdk/types.d.ts.map +1 -0
  282. package/dist/plugin/sdk/types.js +2 -0
  283. package/dist/plugin/sdk/types.js.map +1 -0
  284. package/dist/plugin/validate.d.ts +3 -0
  285. package/dist/plugin/validate.d.ts.map +1 -0
  286. package/dist/plugin/validate.js +31 -0
  287. package/dist/plugin/validate.js.map +1 -0
  288. package/dist/providers/base.d.ts.map +1 -1
  289. package/dist/providers/base.js +2 -1
  290. package/dist/providers/base.js.map +1 -1
  291. package/dist/types/index.d.ts +8 -1
  292. package/dist/types/index.d.ts.map +1 -1
  293. package/dist/types/index.js +1 -1
  294. package/dist/types/index.js.map +1 -1
  295. package/dist/utils/dates.d.ts +3 -0
  296. package/dist/utils/dates.d.ts.map +1 -0
  297. package/dist/utils/dates.js +10 -0
  298. package/dist/utils/dates.js.map +1 -0
  299. package/dist/utils/errorMapper.d.ts.map +1 -1
  300. package/dist/utils/errorMapper.js +2 -1
  301. package/dist/utils/errorMapper.js.map +1 -1
  302. package/dist/utils/errors.d.ts +1 -0
  303. package/dist/utils/errors.d.ts.map +1 -1
  304. package/dist/utils/errors.js +3 -0
  305. package/dist/utils/errors.js.map +1 -1
  306. package/dist/utils/migration.d.ts.map +1 -1
  307. package/dist/utils/migration.js +2 -1
  308. package/dist/utils/migration.js.map +1 -1
  309. package/dist/utils/paths.d.ts +4 -0
  310. package/dist/utils/paths.d.ts.map +1 -1
  311. package/dist/utils/paths.js +4 -0
  312. package/dist/utils/paths.js.map +1 -1
  313. package/dist/utils/prompts.d.ts +6 -0
  314. package/dist/utils/prompts.d.ts.map +1 -1
  315. package/dist/utils/prompts.js +11 -0
  316. package/dist/utils/prompts.js.map +1 -1
  317. package/dist/utils/{defaults.d.ts → providerConfig.d.ts} +1 -1
  318. package/dist/utils/providerConfig.d.ts.map +1 -0
  319. package/dist/utils/{defaults.js → providerConfig.js} +1 -1
  320. package/dist/utils/providerConfig.js.map +1 -0
  321. package/dist/utils/secureWrite.d.ts.map +1 -1
  322. package/dist/utils/secureWrite.js +2 -1
  323. package/dist/utils/secureWrite.js.map +1 -1
  324. package/dist/utils/version.d.ts +4 -0
  325. package/dist/utils/version.d.ts.map +1 -0
  326. package/dist/utils/version.js +22 -0
  327. package/dist/utils/version.js.map +1 -0
  328. package/dist/utils/yamlConfig.d.ts.map +1 -1
  329. package/dist/utils/yamlConfig.js +3 -2
  330. package/dist/utils/yamlConfig.js.map +1 -1
  331. package/package.json +3 -1
  332. package/dist/utils/defaults.d.ts.map +0 -1
  333. package/dist/utils/defaults.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"scheduleManager.d.ts","sourceRoot":"","sources":["../../src/core/scheduleManager.ts"],"names":[],"mappings":"AAeA,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,OAAO,CAAC;AAuB3C,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAGD,eAAO,MAAM,gBAAgB;;;CAGnB,CAAC;AAMX,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,CAEtE;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,YAAY,CAAA;CAAE,GAAG,IAAI,CAO3F;AAGD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQvD;AAGD,wBAAgB,iBAAiB,IAAI,MAAM,CAK1C;AAGD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,YAAY,GACjB,eAAe,CAmCjB;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,eAAe,CAcvF;AAED,wBAAgB,aAAa,CAC3B,YAAY,CAAC,EAAE,MAAM,GACpB,KAAK,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAYjE;AAGD,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,YAAY,EAClB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACrF,IAAI,CAwBN;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAqB3C"}
1
+ {"version":3,"file":"scheduleManager.d.ts","sourceRoot":"","sources":["../../src/core/scheduleManager.ts"],"names":[],"mappings":"AAgBA,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,OAAO,GAAG,YAAY,CAAC;AAuB1D,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAGD,eAAO,MAAM,gBAAgB;;;;CAInB,CAAC;AAMX,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,CAEtE;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,YAAY,CAAA;CAAE,GAAG,IAAI,CAO3F;AAGD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQvD;AAGD,wBAAgB,iBAAiB,IAAI,MAAM,CAK1C;AAGD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,YAAY,GACjB,eAAe,CAoCjB;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,eAAe,CAcvF;AAED,wBAAgB,aAAa,CAC3B,YAAY,CAAC,EAAE,MAAM,GACpB,KAAK,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAYjE;AAGD,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,YAAY,EAClB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACrF,IAAI,CAwBN;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAqB3C"}
@@ -7,6 +7,7 @@ import { KASTELL_DIR } from "../utils/paths.js";
7
7
  import { sanitizedEnv } from "../utils/ssh.js";
8
8
  import { dispatchWithCooldown } from "../core/notify.js";
9
9
  import { ValidationError } from "../utils/errors.js";
10
+ import { extractReason } from "../utils/errors.js";
10
11
  const CRONTAB_TMP = join(KASTELL_DIR, ".crontab-tmp");
11
12
  /** Read current crontab, filter lines by marker, optionally add new entry, install via temp file */
12
13
  function updateCrontab(marker, newEntry) {
@@ -34,6 +35,7 @@ function updateCrontab(marker, newEntry) {
34
35
  export const SCHEDULE_MARKERS = {
35
36
  fix: "# kastell-fix-schedule",
36
37
  audit: "# kastell-audit-schedule",
38
+ "doctor-fix": "# kastell-doctor-fix-schedule",
37
39
  };
38
40
  const SCHEDULE_LOGS_DIR = join(KASTELL_DIR, "schedule-logs");
39
41
  const LOG_RETENTION_DAYS = 30;
@@ -46,7 +48,7 @@ export function parseScheduleKey(key) {
46
48
  return null;
47
49
  const server = key.slice(0, lastColon);
48
50
  const maybeType = key.slice(lastColon + 1);
49
- if (maybeType !== "fix" && maybeType !== "audit")
51
+ if (maybeType !== "fix" && maybeType !== "audit" && maybeType !== "doctor-fix")
50
52
  return null;
51
53
  return { server, type: maybeType };
52
54
  }
@@ -74,12 +76,13 @@ export function installLocalCron(cronExpr, serverName, type) {
74
76
  sanitized = sanitizeServerName(serverName);
75
77
  }
76
78
  catch (err) {
77
- return { success: false, error: err instanceof Error ? err.message : String(err) };
79
+ return { success: false, error: extractReason(err) };
78
80
  }
79
81
  const kastellBin = resolveKastellBin();
80
82
  const fixCmd = `${kastellBin} fix --safe --server "${sanitized}" --no-interactive`;
81
83
  const auditCmd = `${kastellBin} audit --server "${sanitized}" --json`;
82
- const command = type === "fix" ? fixCmd : auditCmd;
84
+ const doctorFixCmd = `${kastellBin} doctor --auto-fix --server "${sanitized}" --force`;
85
+ const command = type === "fix" ? fixCmd : type === "audit" ? auditCmd : doctorFixCmd;
83
86
  if (process.platform === "win32") {
84
87
  saveSchedule(scheduleKey(sanitized, type), cronExpr);
85
88
  return { success: true, windowsFallback: true, command };
@@ -92,7 +95,7 @@ export function installLocalCron(cronExpr, serverName, type) {
92
95
  return result;
93
96
  }
94
97
  catch (err) {
95
- return { success: false, error: err instanceof Error ? err.message : String(err) };
98
+ return { success: false, error: extractReason(err) };
96
99
  }
97
100
  saveSchedule(scheduleKey(sanitized, type), cronExpr);
98
101
  return { success: true };
@@ -106,7 +109,7 @@ export function removeLocalCron(serverName, type) {
106
109
  return result;
107
110
  }
108
111
  catch (err) {
109
- return { success: false, error: err instanceof Error ? err.message : String(err) };
112
+ return { success: false, error: extractReason(err) };
110
113
  }
111
114
  }
112
115
  removeSchedule(scheduleKey(serverName, type));
@@ -1 +1 @@
1
- {"version":3,"file":"scheduleManager.js","sourceRoot":"","sources":["../../src/core/scheduleManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scheduleManager.js","sourceRoot":"","sources":["../../src/core/scheduleManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAClF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,YAAY,GACb,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;AAEtD,oGAAoG;AACpG,SAAS,aAAa,CAAC,MAAc,EAAE,QAAiB;IACtD,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;IACxF,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5C,IAAI,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnC,mBAAmB,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAC1D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;QAC/F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,IAAI,uBAAuB,EAAE,CAAC;QAC9E,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAUD,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,GAAG,EAAE,wBAAwB;IAC7B,KAAK,EAAE,0BAA0B;IACjC,YAAY,EAAE,+BAA+B;CACrC,CAAC;AAEX,MAAM,iBAAiB,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;AAC7D,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAG9B,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,IAAkB;IAC5D,OAAO,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,SAAS,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAClC,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IAC3C,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC;IAC5F,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAyB,EAAE,CAAC;AACrD,CAAC;AAGD,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,eAAe,CACvB,wBAAwB,IAAI,6EAA6E,EACzG,EAAE,IAAI,EAAE,gFAAgF,EAAE,CAC3F,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAGD,MAAM,UAAU,iBAAiB;IAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,WAAW,KAAK,EAAE,CAAC;IACrD,OAAO,KAAK,CAAC;AACf,CAAC;AAGD,MAAM,UAAU,gBAAgB,CAC9B,QAAgB,EAChB,UAAkB,EAClB,IAAkB;IAElB,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC;IACrD,CAAC;IAED,IAAI,SAAiB,CAAC;IACtB,IAAI,CAAC;QACH,SAAS,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;IACvD,CAAC;IAED,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;IACvC,MAAM,MAAM,GAAG,GAAG,UAAU,yBAAyB,SAAS,oBAAoB,CAAC;IACnF,MAAM,QAAQ,GAAG,GAAG,UAAU,oBAAoB,SAAS,UAAU,CAAC;IACtE,MAAM,YAAY,GAAG,GAAG,UAAU,gCAAgC,SAAS,WAAW,CAAC;IACvF,MAAM,OAAO,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC;IAErF,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;QACrD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC3D,CAAC;IAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,GAAG,QAAQ,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;IAEjD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,MAAM,CAAC;IACrC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;IACvD,CAAC;IAED,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;IACrD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,UAAkB,EAAE,IAAkB;IACpE,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAEtC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,OAAO;gBAAE,OAAO,MAAM,CAAC;QACrC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QACvD,CAAC;IACH,CAAC;IAED,cAAc,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,YAAqB;IAErB,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IACjC,MAAM,OAAO,GAAoE,EAAE,CAAC;IAEpF,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,IAAI,YAAY,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY;YAAE,SAAS;QAC7D,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAGD,MAAM,UAAU,gBAAgB,CAC9B,IAAkB,EAClB,UAAkB,EAClB,MAAsF;IAEtF,SAAS,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAElD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,YAAY,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IACvC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI,IAAI,UAAU,IAAI,OAAO,MAAM,CAAC,CAAC;IAEhF,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC;IACrF,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,UAAW,GAAG,MAAM,CAAC,WAAY,CAAC,CAAC,CAAC,SAAS,CAAC;IAE9E,IAAI,IAAI,GAAG,IAAI,YAAY,aAAa,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC,MAAM,EAAE,CAAC;IACjF,IAAI,KAAK,KAAK,SAAS;QAAE,IAAI,IAAI,eAAe,KAAK,EAAE,CAAC;IACxD,IAAI,IAAI,IAAI,CAAC;IAEb,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAE9B,MAAM,cAAc,GAClB,YAAY,IAAI,sBAAsB,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC,MAAM,EAAE;QAC9E,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEtD,oBAAoB,CAAC,UAAU,EAAE,YAAY,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAErF,oBAAoB,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACrE,IAAI,KAAe,CAAC;IAEpB,IAAI,CAAC;QACH,KAAK,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;IACT,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrC,IAAI,KAAK,CAAC,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;gBAC7B,UAAU,CAAC,QAAQ,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -4,6 +4,7 @@ export interface StatusResult {
4
4
  serverStatus: string;
5
5
  platformStatus: string;
6
6
  error?: string;
7
+ errorSource?: "provider" | "platform";
7
8
  }
8
9
  export declare function getCloudServerStatus(server: ServerRecord, apiToken: string): Promise<string>;
9
10
  export declare function checkServerStatus(server: ServerRecord, apiToken: string): Promise<StatusResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/core/status.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAY,MAAM,mBAAmB,CAAC;AAEhE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CASjB;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,CAAC,CAgBvB;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,YAAY,EAAE,EACvB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC5B,OAAO,CAAC,YAAY,EAAE,CAAC,CAIzB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAwC1F;AAED,8CAA8C;AAC9C,eAAO,MAAM,cAAc,wBAAkB,CAAC"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/core/status.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAY,MAAM,mBAAmB,CAAC;AAEhE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;CACvC;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CASjB;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,CAAC,CA+BvB;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,YAAY,EAAE,EACvB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC5B,OAAO,CAAC,YAAY,EAAE,CAAC,CAIzB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAwC1F;AAED,8CAA8C;AAC9C,eAAO,MAAM,cAAc,wBAAkB,CAAC"}
@@ -15,13 +15,9 @@ export async function getCloudServerStatus(server, apiToken) {
15
15
  return provider.getServerStatus(server.id);
16
16
  }
17
17
  export async function checkServerStatus(server, apiToken) {
18
+ let serverStatus;
18
19
  try {
19
- const serverStatus = await getCloudServerStatus(server, apiToken);
20
- const platform = resolvePlatform(server);
21
- const platformStatus = platform
22
- ? (await getAdapter(platform).healthCheck(server.ip, server.domain)).status
23
- : "n/a";
24
- return { server, serverStatus, platformStatus };
20
+ serverStatus = await getCloudServerStatus(server, apiToken);
25
21
  }
26
22
  catch (error) {
27
23
  return {
@@ -29,6 +25,24 @@ export async function checkServerStatus(server, apiToken) {
29
25
  serverStatus: "error",
30
26
  platformStatus: "unknown",
31
27
  error: getErrorMessage(error),
28
+ errorSource: "provider",
29
+ };
30
+ }
31
+ const platform = resolvePlatform(server);
32
+ if (!platform) {
33
+ return { server, serverStatus, platformStatus: "n/a" };
34
+ }
35
+ try {
36
+ const health = await getAdapter(platform).healthCheck(server.ip, server.domain);
37
+ return { server, serverStatus, platformStatus: health.status };
38
+ }
39
+ catch (error) {
40
+ return {
41
+ server,
42
+ serverStatus,
43
+ platformStatus: "error",
44
+ error: getErrorMessage(error),
45
+ errorSource: "platform",
32
46
  };
33
47
  }
34
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/core/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAUrE,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAoB,EACpB,QAAgB;IAEhB,IAAI,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IACD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACpE,OAAO,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAoB,EACpB,QAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,cAAc,GAAG,QAAQ;YAC7B,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YAC3E,CAAC,CAAC,KAAK,CAAC;QACV,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC;IAClD,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,OAAO;YACL,MAAM;YACN,YAAY,EAAE,OAAO;YACrB,cAAc,EAAE,SAAS;YACzB,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC;SAC9B,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAAuB,EACvB,QAA6B;IAE7B,OAAO,OAAO,CAAC,GAAG,CAChB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CACzE,CAAC;AACJ,CAAC;AASD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAoB;IACxD,MAAM,QAAQ,GAAa,eAAe,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC;IAChE,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAErC,qDAAqD;IACrD,MAAM,UAAU,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC;IACvE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,6BAA6B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;IACnG,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QACzD,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,UAAU,EAAE,KAAK;gBACjB,KAAK,EAAE,MAAM,CAAC,MAAM,IAAI,wBAAwB;aACjD,CAAC;QACJ,CAAC;QAED,uEAAuE;QACvE,MAAM,YAAY,GAAG,KAAK,CAAC;QAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC,CAAC;QAC5D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;YAClE,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YACzE,IAAI,YAAY,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACtC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;YAC7C,CAAC;QACH,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IAC9C,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3C,OAAO;YACL,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;YACjB,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC;YAC7B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1B,CAAC;IACJ,CAAC;AACH,CAAC;AAED,8CAA8C;AAC9C,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAAC"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/core/status.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -5,6 +5,8 @@ import { fileURLToPath } from "url";
5
5
  import { dirname, join } from "path";
6
6
  import { checkForUpdate } from "./utils/updateCheck.js";
7
7
  import { migrateConfigIfNeeded } from "./utils/migration.js";
8
+ import { extractReason } from "./utils/errors.js";
9
+ import { loadPlugins } from "./plugin/loader.js";
8
10
  import { interactiveMenu } from "./commands/interactive.js";
9
11
  import { initCommand } from "./commands/init.js";
10
12
  import { listCommand } from "./commands/list.js";
@@ -31,6 +33,7 @@ import { snapshotCommand } from "./commands/snapshot.js";
31
33
  import { completionsCommand } from "./commands/completions.js";
32
34
  import { registerAuthCommands } from "./commands/auth.js";
33
35
  import { auditCommand } from "./commands/audit.js";
36
+ import { explainCommand } from "./commands/explain.js";
34
37
  import { evidenceCommand } from "./commands/evidence.js";
35
38
  import { lockCommand } from "./commands/lock.js";
36
39
  import { guardCommand } from "./commands/guard.js";
@@ -40,17 +43,25 @@ import { botCommand } from "./commands/bot.js";
40
43
  import { fixSafeCommand } from "./commands/fix.js";
41
44
  import { scheduleCommand } from "./commands/schedule.js";
42
45
  import { changelogCommand } from "./commands/changelog.js";
46
+ import { regressionStatusCommand, regressionResetCommand } from "./commands/regression.js";
43
47
  import { printHeader, printQuickHelp } from "./cli/header.js";
48
+ import { pluginInstallCommand, pluginRemoveCommand, pluginListCommand, pluginValidateCommand, } from "./commands/plugin.js";
44
49
  const __filename = fileURLToPath(import.meta.url);
45
50
  const __dirname = dirname(__filename);
46
51
  const pkg = JSON.parse(readFileSync(join(__dirname, "../package.json"), "utf-8"));
47
52
  // Graceful handling of unhandled rejections (security audit MEDIUM-007)
48
53
  process.on("unhandledRejection", (reason) => {
49
- const msg = reason instanceof Error ? reason.message : String(reason);
54
+ const msg = extractReason(reason);
50
55
  process.stderr.write(`Unhandled rejection: ${msg}\n`);
51
56
  process.exit(1);
52
57
  });
53
58
  migrateConfigIfNeeded();
59
+ const pluginResult = await loadPlugins();
60
+ if (pluginResult.errors.length > 0) {
61
+ for (const err of pluginResult.errors) {
62
+ console.warn(`[plugin] ${err}`);
63
+ }
64
+ }
54
65
  const program = new Command();
55
66
  program
56
67
  .name("kastell")
@@ -132,6 +143,7 @@ program
132
143
  .option("--force", "Skip confirmation prompts (use with --fix)")
133
144
  .option("--dry-run", "Show fix commands without executing (use with --fix)")
134
145
  .option("--auto-fix", "Run diagnose->fix chain for all actionable findings")
146
+ .option("--schedule <cron>", "Schedule recurring doctor+fix pipeline (requires --auto-fix)")
135
147
  .action((server, options) => doctorCommand(server, options, pkg.version));
136
148
  program
137
149
  .command("firewall [subcommand] [query]")
@@ -236,6 +248,13 @@ program
236
248
  .command("completions [shell]")
237
249
  .description("Generate shell completion scripts (bash, zsh, fish)")
238
250
  .action(completionsCommand);
251
+ program
252
+ .command("explain <check-id>")
253
+ .description("Deep-dive into a single audit check — why it matters, how to fix it, compliance references")
254
+ .option("--format <format>", "Output format: terminal (default), json, md", "terminal")
255
+ .action(async (checkId, options) => {
256
+ await explainCommand(checkId, options);
257
+ });
239
258
  program
240
259
  .command("audit [server-name]")
241
260
  .description("Run a security audit on a server")
@@ -249,11 +268,14 @@ program
249
268
  .option("--watch [interval]", "Watch mode with optional interval in seconds")
250
269
  .option("--host <user@ip>", "Audit an unregistered server by IP")
251
270
  .option("--threshold <score>", "Exit with code 1 if score is below threshold")
271
+ .option("--ci", "CI mode: JSON output, no spinner, requires --threshold")
252
272
  .option("--category <list>", "Comma-separated list of categories to audit")
253
273
  .option("--snapshot [name]", "Save audit result as snapshot (optionally named)")
254
274
  .option("--snapshots", "List saved snapshots for the server")
255
275
  .option("--diff <before:after>", "Compare two snapshots (e.g. pre-upgrade:latest)")
256
- .option("--compare <server1:server2>", "Compare latest snapshots from two servers")
276
+ .option("--compare <server1:server2>", "Compare two servers (uses snapshots, falls back to live audit)")
277
+ .option("--fresh", "Force live audit for --compare (skip snapshots)")
278
+ .option("--detail", "Show check-level diff instead of category summary in --compare")
257
279
  .option("--trend", "Show audit score trend over time")
258
280
  .option("--days <n>", "Limit trend to last N days")
259
281
  .option("--list-checks", "List all audit checks without running audit")
@@ -291,6 +313,8 @@ program
291
313
  .option("--diff", "Show per-fix diff preview after applying")
292
314
  .option("--report", "Generate markdown fix report after applying fixes")
293
315
  .option("--no-interactive", "Skip confirmation prompt (for scheduled/automated runs)")
316
+ .option("--force", "Bypass regression gate and force operation")
317
+ .option("--include-forbidden", "Include FORBIDDEN tier fixes with confirmation prompt")
294
318
  .action((server, options) => fixSafeCommand(server, options ?? {}));
295
319
  program.addCommand(scheduleCommand());
296
320
  notifyCommand(program);
@@ -301,7 +325,46 @@ program
301
325
  .description("Show release notes from CHANGELOG.md")
302
326
  .option("--all", "Show full changelog")
303
327
  .action((version, options) => changelogCommand(version, options));
328
+ const regressionCmd = program
329
+ .command("regression")
330
+ .description("Manage regression baselines");
331
+ regressionCmd
332
+ .command("status")
333
+ .description("Show baseline status for all or specific server")
334
+ .argument("[server]", "Server IP to check")
335
+ .action(async (server) => {
336
+ await regressionStatusCommand(server);
337
+ });
338
+ regressionCmd
339
+ .command("reset")
340
+ .description("Delete baseline for a server")
341
+ .requiredOption("--server <ip>", "Server IP to reset")
342
+ .option("--force", "Skip confirmation prompt")
343
+ .action(async (options) => {
344
+ await regressionResetCommand(options.server, options);
345
+ });
304
346
  registerAuthCommands(program);
347
+ const plugin = program
348
+ .command("plugin")
349
+ .description("Manage kastell plugins");
350
+ plugin
351
+ .command("install <name>")
352
+ .description("Install a plugin from npm registry")
353
+ .option("--ver <version>", "Specific version to install")
354
+ .option("--force", "Skip confirmation prompt")
355
+ .action((name, options) => pluginInstallCommand(name, { version: options.ver, force: options.force }));
356
+ plugin
357
+ .command("remove <name>")
358
+ .description("Remove an installed plugin")
359
+ .action((name) => pluginRemoveCommand(name));
360
+ plugin
361
+ .command("list")
362
+ .description("List installed plugins")
363
+ .action(() => pluginListCommand());
364
+ plugin
365
+ .command("validate [name]")
366
+ .description("Validate plugin manifest and entry point")
367
+ .action((name) => pluginValidateCommand(name));
305
368
  // If --version or -V, print version and await update check before exiting
306
369
  const args = process.argv.slice(2);
307
370
  if (args.includes("--version") || args.includes("-V")) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/mcp/index.js CHANGED
@@ -2,18 +2,14 @@
2
2
  // MCP SDK isolation: This file is the entry point for kastell-mcp binary only.
3
3
  // The main kastell CLI (src/index.ts) must NEVER import from this module.
4
4
  // See tests/unit/dep-isolation.test.ts for the guard test.
5
- import { readFileSync } from "fs";
6
- import { fileURLToPath } from "url";
7
- import { dirname, join } from "path";
8
5
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
9
6
  import { createMcpServer } from "./server.js";
10
7
  import { migrateConfigIfNeeded } from "../utils/migration.js";
11
- const __filename = fileURLToPath(import.meta.url);
12
- const __dirname = dirname(__filename);
13
- const pkg = JSON.parse(readFileSync(join(__dirname, "..", "..", "package.json"), "utf-8"));
8
+ import { KASTELL_VERSION } from "../utils/version.js";
9
+ import { extractReason } from "../utils/errors.js";
14
10
  // Graceful handling of unhandled rejections (security audit MEDIUM-007)
15
11
  process.on("unhandledRejection", (reason) => {
16
- const msg = reason instanceof Error ? reason.message : String(reason);
12
+ const msg = extractReason(reason);
17
13
  process.stderr.write(`MCP unhandled rejection: ${msg}\n`);
18
14
  });
19
15
  async function main() {
@@ -30,10 +26,10 @@ async function main() {
30
26
  await server.connect(transport);
31
27
  // Server is now listening on stdin/stdout via JSON-RPC
32
28
  // All logging must go to stderr (stdout is reserved for MCP protocol)
33
- process.stderr.write(`kastell-mcp v${pkg.version} started (SAFE_MODE=${process.env.KASTELL_SAFE_MODE ?? "unset"})\n`);
29
+ process.stderr.write(`kastell-mcp v${KASTELL_VERSION} started (SAFE_MODE=${process.env.KASTELL_SAFE_MODE ?? "unset"})\n`);
34
30
  }
35
31
  main().catch((error) => {
36
- process.stderr.write(`Fatal: ${error instanceof Error ? error.message : String(error)}\n`);
32
+ process.stderr.write(`Fatal: ${extractReason(error)}\n`);
37
33
  process.exit(1);
38
34
  });
39
35
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":";AACA,+EAA+E;AAC/E,0EAA0E;AAC1E,2DAA2D;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACtC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAwB,CAAC;AAElH,wEAAwE;AACxE,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE;IAC1C,MAAM,GAAG,GAAG,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,GAAG,IAAI,CAAC,CAAC;AAC5D,CAAC,CAAC,CAAC;AAEH,KAAK,UAAU,IAAI;IACjB,mFAAmF;IACnF,6FAA6F;IAC7F,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAC;IACzC,CAAC;IACD,mFAAmF;IACnF,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,KAAK,CAAC;IAEnC,qBAAqB,EAAE,CAAC;IACxB,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,uDAAuD;IACvD,sEAAsE;IACtE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,OAAO,uBAAuB,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,KAAK,CAAC,CAAC;AACxH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":";AACA,+EAA+E;AAC/E,0EAA0E;AAC1E,2DAA2D;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,wEAAwE;AACxE,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE;IAC1C,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,GAAG,IAAI,CAAC,CAAC;AAC5D,CAAC,CAAC,CAAC;AAEH,KAAK,UAAU,IAAI;IACjB,mFAAmF;IACnF,6FAA6F;IAC7F,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAC;IACzC,CAAC;IACD,mFAAmF;IACnF,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,KAAK,CAAC;IAEnC,qBAAqB,EAAE,CAAC;IACxB,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,uDAAuD;IACvD,sEAAsE;IACtE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,eAAe,uBAAuB,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,KAAK,CAAC,CAAC;AAC5H,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAyBpE,wBAAgB,eAAe,IAAI,SAAS,CAmP3C"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA4BpE,wBAAgB,eAAe,IAAI,SAAS,CAgS3C"}
@@ -16,6 +16,9 @@ import { serverDoctorSchema, handleServerDoctor } from "./tools/serverDoctor.js"
16
16
  import { serverLockSchema, handleServerLock } from "./tools/serverLock.js";
17
17
  import { serverFleetSchema, handleServerFleet } from "./tools/serverFleet.js";
18
18
  import { serverFixSchema, handleServerFix } from "./tools/serverFix.js";
19
+ import { serverExplainSchema, serverExplainHandler } from "./tools/serverExplain.js";
20
+ import { serverCompareSchema, handleServerCompare } from "./tools/serverCompare.js";
21
+ import { serverPluginSchema, handleServerPlugin } from "./tools/serverPlugin.js";
19
22
  import { setMcpVersion } from "./utils.js";
20
23
  const __filename = fileURLToPath(import.meta.url);
21
24
  const __dirname = dirname(__filename);
@@ -198,8 +201,8 @@ Bare servers: use service 'system' or 'docker' for logs (not 'coolify'). server_
198
201
  annotations: {
199
202
  title: "Server Lock",
200
203
  readOnlyHint: false,
201
- destructiveHint: false,
202
- idempotentHint: true,
204
+ destructiveHint: true,
205
+ idempotentHint: false,
203
206
  openWorldHint: true,
204
207
  },
205
208
  }, async (params) => {
@@ -231,6 +234,45 @@ Bare servers: use service 'system' or 'docker' for logs (not 'coolify'). server_
231
234
  }, async (params) => {
232
235
  return handleServerFix(params, server);
233
236
  });
237
+ server.registerTool("server_explain", {
238
+ description: "Deep-dive into a single audit check. Returns what it does, why it matters, how to fix it, fix tier (SAFE/GUARDED/FORBIDDEN), and compliance references (CIS/PCI-DSS/HIPAA). No SSH connection required. Supports case-insensitive and fuzzy matching for check IDs.",
239
+ inputSchema: serverExplainSchema,
240
+ annotations: {
241
+ title: "Explain Audit Check",
242
+ readOnlyHint: true,
243
+ destructiveHint: false,
244
+ idempotentHint: true,
245
+ openWorldHint: false,
246
+ },
247
+ }, async (params) => {
248
+ return serverExplainHandler(params);
249
+ });
250
+ server.registerTool("server_compare", {
251
+ description: "Compare two servers side-by-side. Returns category-level score comparison (default) or check-level diff (detail mode). Uses cached snapshots when available, falls back to live SSH audit. Requires two registered servers.",
252
+ inputSchema: serverCompareSchema,
253
+ annotations: {
254
+ title: "Compare Servers",
255
+ readOnlyHint: true,
256
+ destructiveHint: false,
257
+ idempotentHint: true,
258
+ openWorldHint: true,
259
+ },
260
+ }, async (params) => {
261
+ return handleServerCompare(params);
262
+ });
263
+ server.registerTool("server_plugin", {
264
+ description: "Manage kastell plugins. Actions: 'list' shows installed plugins with check counts and status, 'validate' checks manifest integrity and entry point validity. Install/remove not available via MCP — use CLI for security (requires explicit user consent). No SSH connection required.",
265
+ inputSchema: serverPluginSchema,
266
+ annotations: {
267
+ title: "Plugin Management",
268
+ readOnlyHint: true,
269
+ destructiveHint: false,
270
+ idempotentHint: true,
271
+ openWorldHint: false,
272
+ },
273
+ }, async (params) => {
274
+ return handleServerPlugin(params);
275
+ });
234
276
  return server;
235
277
  }
236
278
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"serverAudit.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/serverAudit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAIrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIzE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;CAiB7B,CAAC;AAEF,wBAAsB,iBAAiB,CAAC,MAAM,EAAE;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;IACtC,SAAS,CAAC,EAAE,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC;IAC9D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAuM9C"}
1
+ {"version":3,"file":"serverAudit.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/serverAudit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAIrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;CAiB7B,CAAC;AAEF,wBAAsB,iBAAiB,CAAC,MAAM,EAAE;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;IACtC,SAAS,CAAC,EAAE,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC;IAC9D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAwN9C"}
@@ -9,6 +9,7 @@ import { getErrorMessage, sanitizeStderr } from "../../utils/errorMapper.js";
9
9
  import { calculateComplianceDetail } from "../../core/audit/compliance/scoring.js";
10
10
  import { FRAMEWORK_KEY_MAP } from "../../core/audit/compliance/types.js";
11
11
  import { filterChecksByProfile, isValidProfile, listAllProfileNames } from "../../core/audit/profiles.js";
12
+ import { saveBaselineSafe, loadBaseline, checkRegression, formatRegressionSummary, extractPassedCheckIds, shouldUpdateBaseline } from "../../core/audit/regression.js";
12
13
  export const serverAuditSchema = {
13
14
  server: z.string().optional().describe("Server name or IP. Auto-selected if only one server exists."),
14
15
  format: z.enum(["summary", "json", "score"]).default("summary")
@@ -70,6 +71,12 @@ export async function handleServerAudit(params, mcpServer) {
70
71
  }
71
72
  const auditResult = result.data;
72
73
  await mcpLog(mcpServer, `Audit complete, score: ${auditResult.overallScore}`);
74
+ const baseline = loadBaseline(auditResult.serverIp);
75
+ const passedIds = extractPassedCheckIds(auditResult);
76
+ const regression = baseline ? checkRegression(baseline, auditResult, passedIds) : null;
77
+ if (shouldUpdateBaseline(regression, false)) {
78
+ await saveBaselineSafe(auditResult, baseline, passedIds);
79
+ }
73
80
  // Apply category/severity filter if provided
74
81
  let filteredResult = auditResult;
75
82
  if (params.category || params.severity) {
@@ -107,6 +114,9 @@ export async function handleServerAudit(params, mcpServer) {
107
114
  const detail = calculateComplianceDetail(filteredResult.categories);
108
115
  jsonResult.complianceDetail = detail.filter((d) => d.framework === fw);
109
116
  }
117
+ if (regression) {
118
+ jsonResult.baselineRegression = regression;
119
+ }
110
120
  return mcpSuccess(jsonResult, { largeResult: true });
111
121
  }
112
122
  if (format === "score") {
@@ -152,6 +162,11 @@ export async function handleServerAudit(params, mcpServer) {
152
162
  }
153
163
  }
154
164
  }
165
+ // Baseline regression info
166
+ if (regression) {
167
+ const regressionLines = formatRegressionSummary(regression);
168
+ summaryParts.push("", ...regressionLines.map(l => l.text));
169
+ }
155
170
  summaryParts.push("", `Timestamp: ${filteredResult.timestamp}`);
156
171
  const responseData = {
157
172
  summary: summaryParts.join("\n"),