@miosa/cli 1.3.4 → 2.0.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 (489) hide show
  1. package/README.md +20 -835
  2. package/bin/miosa.js +75 -0
  3. package/lib/archive.js +26 -0
  4. package/lib/checksums.js +29 -0
  5. package/lib/platforms.js +31 -0
  6. package/lib/resolve.js +47 -0
  7. package/package.json +25 -41
  8. package/scripts/postinstall.js +68 -0
  9. package/CHANGELOG.md +0 -110
  10. package/dist/action-authority.d.ts +0 -106
  11. package/dist/action-authority.d.ts.map +0 -1
  12. package/dist/action-authority.js +0 -116
  13. package/dist/action-authority.js.map +0 -1
  14. package/dist/app-advisor.d.ts +0 -80
  15. package/dist/app-advisor.d.ts.map +0 -1
  16. package/dist/app-advisor.js +0 -486
  17. package/dist/app-advisor.js.map +0 -1
  18. package/dist/app-contract.d.ts +0 -92
  19. package/dist/app-contract.d.ts.map +0 -1
  20. package/dist/app-contract.js +0 -218
  21. package/dist/app-contract.js.map +0 -1
  22. package/dist/app-document.d.ts +0 -23
  23. package/dist/app-document.d.ts.map +0 -1
  24. package/dist/app-document.js +0 -180
  25. package/dist/app-document.js.map +0 -1
  26. package/dist/app-manifest.d.ts +0 -140
  27. package/dist/app-manifest.d.ts.map +0 -1
  28. package/dist/app-manifest.js +0 -377
  29. package/dist/app-manifest.js.map +0 -1
  30. package/dist/app-operation.d.ts +0 -23
  31. package/dist/app-operation.d.ts.map +0 -1
  32. package/dist/app-operation.js +0 -49
  33. package/dist/app-operation.js.map +0 -1
  34. package/dist/app-release.d.ts +0 -132
  35. package/dist/app-release.d.ts.map +0 -1
  36. package/dist/app-release.js +0 -294
  37. package/dist/app-release.js.map +0 -1
  38. package/dist/bin/miosa.d.ts +0 -3
  39. package/dist/bin/miosa.d.ts.map +0 -1
  40. package/dist/bin/miosa.js +0 -288
  41. package/dist/bin/miosa.js.map +0 -1
  42. package/dist/cli-env.d.ts +0 -12
  43. package/dist/cli-env.d.ts.map +0 -1
  44. package/dist/cli-env.js +0 -34
  45. package/dist/cli-env.js.map +0 -1
  46. package/dist/client.d.ts +0 -155
  47. package/dist/client.d.ts.map +0 -1
  48. package/dist/client.js +0 -865
  49. package/dist/client.js.map +0 -1
  50. package/dist/commands/actions.d.ts +0 -3
  51. package/dist/commands/actions.d.ts.map +0 -1
  52. package/dist/commands/actions.js +0 -222
  53. package/dist/commands/actions.js.map +0 -1
  54. package/dist/commands/agent-runtime-profiles.d.ts +0 -3
  55. package/dist/commands/agent-runtime-profiles.d.ts.map +0 -1
  56. package/dist/commands/agent-runtime-profiles.js +0 -198
  57. package/dist/commands/agent-runtime-profiles.js.map +0 -1
  58. package/dist/commands/agent.d.ts +0 -18
  59. package/dist/commands/agent.d.ts.map +0 -1
  60. package/dist/commands/agent.js +0 -737
  61. package/dist/commands/agent.js.map +0 -1
  62. package/dist/commands/alerts.d.ts +0 -3
  63. package/dist/commands/alerts.d.ts.map +0 -1
  64. package/dist/commands/alerts.js +0 -41
  65. package/dist/commands/alerts.js.map +0 -1
  66. package/dist/commands/api-keys.d.ts +0 -3
  67. package/dist/commands/api-keys.d.ts.map +0 -1
  68. package/dist/commands/api-keys.js +0 -160
  69. package/dist/commands/api-keys.js.map +0 -1
  70. package/dist/commands/api-resource.d.ts +0 -20
  71. package/dist/commands/api-resource.d.ts.map +0 -1
  72. package/dist/commands/api-resource.js +0 -120
  73. package/dist/commands/api-resource.js.map +0 -1
  74. package/dist/commands/app.d.ts +0 -38
  75. package/dist/commands/app.d.ts.map +0 -1
  76. package/dist/commands/app.js +0 -1182
  77. package/dist/commands/app.js.map +0 -1
  78. package/dist/commands/apps.d.ts +0 -3
  79. package/dist/commands/apps.d.ts.map +0 -1
  80. package/dist/commands/apps.js +0 -218
  81. package/dist/commands/apps.js.map +0 -1
  82. package/dist/commands/audit.d.ts +0 -3
  83. package/dist/commands/audit.d.ts.map +0 -1
  84. package/dist/commands/audit.js +0 -25
  85. package/dist/commands/audit.js.map +0 -1
  86. package/dist/commands/auth.d.ts +0 -3
  87. package/dist/commands/auth.d.ts.map +0 -1
  88. package/dist/commands/auth.js +0 -282
  89. package/dist/commands/auth.js.map +0 -1
  90. package/dist/commands/backups.d.ts +0 -3
  91. package/dist/commands/backups.d.ts.map +0 -1
  92. package/dist/commands/backups.js +0 -23
  93. package/dist/commands/backups.js.map +0 -1
  94. package/dist/commands/billing.d.ts +0 -3
  95. package/dist/commands/billing.d.ts.map +0 -1
  96. package/dist/commands/billing.js +0 -208
  97. package/dist/commands/billing.js.map +0 -1
  98. package/dist/commands/builds.d.ts +0 -3
  99. package/dist/commands/builds.d.ts.map +0 -1
  100. package/dist/commands/builds.js +0 -198
  101. package/dist/commands/builds.js.map +0 -1
  102. package/dist/commands/capabilities.d.ts +0 -3
  103. package/dist/commands/capabilities.d.ts.map +0 -1
  104. package/dist/commands/capabilities.js +0 -1002
  105. package/dist/commands/capabilities.js.map +0 -1
  106. package/dist/commands/checkpoints.d.ts +0 -3
  107. package/dist/commands/checkpoints.d.ts.map +0 -1
  108. package/dist/commands/checkpoints.js +0 -193
  109. package/dist/commands/checkpoints.js.map +0 -1
  110. package/dist/commands/cleanup.d.ts +0 -3
  111. package/dist/commands/cleanup.d.ts.map +0 -1
  112. package/dist/commands/cleanup.js +0 -65
  113. package/dist/commands/cleanup.js.map +0 -1
  114. package/dist/commands/cloud.d.ts +0 -3
  115. package/dist/commands/cloud.d.ts.map +0 -1
  116. package/dist/commands/cloud.js +0 -192
  117. package/dist/commands/cloud.js.map +0 -1
  118. package/dist/commands/command-overview.d.ts +0 -13
  119. package/dist/commands/command-overview.d.ts.map +0 -1
  120. package/dist/commands/command-overview.js +0 -50
  121. package/dist/commands/command-overview.js.map +0 -1
  122. package/dist/commands/completion.d.ts +0 -3
  123. package/dist/commands/completion.d.ts.map +0 -1
  124. package/dist/commands/completion.js +0 -183
  125. package/dist/commands/completion.js.map +0 -1
  126. package/dist/commands/computers.d.ts +0 -3
  127. package/dist/commands/computers.d.ts.map +0 -1
  128. package/dist/commands/computers.js +0 -706
  129. package/dist/commands/computers.js.map +0 -1
  130. package/dist/commands/config.d.ts +0 -3
  131. package/dist/commands/config.d.ts.map +0 -1
  132. package/dist/commands/config.js +0 -114
  133. package/dist/commands/config.js.map +0 -1
  134. package/dist/commands/connect.d.ts +0 -6
  135. package/dist/commands/connect.d.ts.map +0 -1
  136. package/dist/commands/connect.js +0 -127
  137. package/dist/commands/connect.js.map +0 -1
  138. package/dist/commands/connectors.d.ts +0 -3
  139. package/dist/commands/connectors.d.ts.map +0 -1
  140. package/dist/commands/connectors.js +0 -172
  141. package/dist/commands/connectors.js.map +0 -1
  142. package/dist/commands/containers.d.ts +0 -3
  143. package/dist/commands/containers.d.ts.map +0 -1
  144. package/dist/commands/containers.js +0 -20
  145. package/dist/commands/containers.js.map +0 -1
  146. package/dist/commands/context.d.ts +0 -3
  147. package/dist/commands/context.d.ts.map +0 -1
  148. package/dist/commands/context.js +0 -233
  149. package/dist/commands/context.js.map +0 -1
  150. package/dist/commands/cp.d.ts +0 -3
  151. package/dist/commands/cp.d.ts.map +0 -1
  152. package/dist/commands/cp.js +0 -319
  153. package/dist/commands/cp.js.map +0 -1
  154. package/dist/commands/cron.d.ts +0 -3
  155. package/dist/commands/cron.d.ts.map +0 -1
  156. package/dist/commands/cron.js +0 -65
  157. package/dist/commands/cron.js.map +0 -1
  158. package/dist/commands/dashboard.d.ts +0 -13
  159. package/dist/commands/dashboard.d.ts.map +0 -1
  160. package/dist/commands/dashboard.js +0 -54
  161. package/dist/commands/dashboard.js.map +0 -1
  162. package/dist/commands/databases.d.ts +0 -3
  163. package/dist/commands/databases.d.ts.map +0 -1
  164. package/dist/commands/databases.js +0 -714
  165. package/dist/commands/databases.js.map +0 -1
  166. package/dist/commands/db.d.ts +0 -3
  167. package/dist/commands/db.d.ts.map +0 -1
  168. package/dist/commands/db.js +0 -385
  169. package/dist/commands/db.js.map +0 -1
  170. package/dist/commands/deploy.d.ts +0 -3
  171. package/dist/commands/deploy.d.ts.map +0 -1
  172. package/dist/commands/deploy.js +0 -1234
  173. package/dist/commands/deploy.js.map +0 -1
  174. package/dist/commands/desktop.d.ts +0 -3
  175. package/dist/commands/desktop.d.ts.map +0 -1
  176. package/dist/commands/desktop.js +0 -277
  177. package/dist/commands/desktop.js.map +0 -1
  178. package/dist/commands/dev.d.ts +0 -3
  179. package/dist/commands/dev.d.ts.map +0 -1
  180. package/dist/commands/dev.js +0 -245
  181. package/dist/commands/dev.js.map +0 -1
  182. package/dist/commands/devices.d.ts +0 -3
  183. package/dist/commands/devices.d.ts.map +0 -1
  184. package/dist/commands/devices.js +0 -279
  185. package/dist/commands/devices.js.map +0 -1
  186. package/dist/commands/docker-deploy.d.ts +0 -3
  187. package/dist/commands/docker-deploy.d.ts.map +0 -1
  188. package/dist/commands/docker-deploy.js +0 -659
  189. package/dist/commands/docker-deploy.js.map +0 -1
  190. package/dist/commands/doctor.d.ts +0 -69
  191. package/dist/commands/doctor.d.ts.map +0 -1
  192. package/dist/commands/doctor.js +0 -596
  193. package/dist/commands/doctor.js.map +0 -1
  194. package/dist/commands/domains.d.ts +0 -3
  195. package/dist/commands/domains.d.ts.map +0 -1
  196. package/dist/commands/domains.js +0 -307
  197. package/dist/commands/domains.js.map +0 -1
  198. package/dist/commands/enterprise-util.d.ts +0 -39
  199. package/dist/commands/enterprise-util.d.ts.map +0 -1
  200. package/dist/commands/enterprise-util.js +0 -217
  201. package/dist/commands/enterprise-util.js.map +0 -1
  202. package/dist/commands/env-input.d.ts +0 -26
  203. package/dist/commands/env-input.d.ts.map +0 -1
  204. package/dist/commands/env-input.js +0 -68
  205. package/dist/commands/env-input.js.map +0 -1
  206. package/dist/commands/env.d.ts +0 -3
  207. package/dist/commands/env.d.ts.map +0 -1
  208. package/dist/commands/env.js +0 -189
  209. package/dist/commands/env.js.map +0 -1
  210. package/dist/commands/exec.d.ts +0 -3
  211. package/dist/commands/exec.d.ts.map +0 -1
  212. package/dist/commands/exec.js +0 -110
  213. package/dist/commands/exec.js.map +0 -1
  214. package/dist/commands/forge.d.ts +0 -3
  215. package/dist/commands/forge.d.ts.map +0 -1
  216. package/dist/commands/forge.js +0 -254
  217. package/dist/commands/forge.js.map +0 -1
  218. package/dist/commands/functions.d.ts +0 -3
  219. package/dist/commands/functions.d.ts.map +0 -1
  220. package/dist/commands/functions.js +0 -47
  221. package/dist/commands/functions.js.map +0 -1
  222. package/dist/commands/gha-runners.d.ts +0 -3
  223. package/dist/commands/gha-runners.d.ts.map +0 -1
  224. package/dist/commands/gha-runners.js +0 -33
  225. package/dist/commands/gha-runners.js.map +0 -1
  226. package/dist/commands/groups.d.ts +0 -3
  227. package/dist/commands/groups.d.ts.map +0 -1
  228. package/dist/commands/groups.js +0 -38
  229. package/dist/commands/groups.js.map +0 -1
  230. package/dist/commands/host.d.ts +0 -3
  231. package/dist/commands/host.d.ts.map +0 -1
  232. package/dist/commands/host.js +0 -74
  233. package/dist/commands/host.js.map +0 -1
  234. package/dist/commands/hosts.d.ts +0 -7
  235. package/dist/commands/hosts.d.ts.map +0 -1
  236. package/dist/commands/hosts.js +0 -91
  237. package/dist/commands/hosts.js.map +0 -1
  238. package/dist/commands/link.d.ts +0 -8
  239. package/dist/commands/link.d.ts.map +0 -1
  240. package/dist/commands/link.js +0 -124
  241. package/dist/commands/link.js.map +0 -1
  242. package/dist/commands/login.d.ts +0 -10
  243. package/dist/commands/login.d.ts.map +0 -1
  244. package/dist/commands/login.js +0 -263
  245. package/dist/commands/login.js.map +0 -1
  246. package/dist/commands/logout.d.ts +0 -3
  247. package/dist/commands/logout.d.ts.map +0 -1
  248. package/dist/commands/logout.js +0 -43
  249. package/dist/commands/logout.js.map +0 -1
  250. package/dist/commands/logs.d.ts +0 -3
  251. package/dist/commands/logs.d.ts.map +0 -1
  252. package/dist/commands/logs.js +0 -401
  253. package/dist/commands/logs.js.map +0 -1
  254. package/dist/commands/ls.d.ts +0 -3
  255. package/dist/commands/ls.d.ts.map +0 -1
  256. package/dist/commands/ls.js +0 -121
  257. package/dist/commands/ls.js.map +0 -1
  258. package/dist/commands/mcp.d.ts +0 -46
  259. package/dist/commands/mcp.d.ts.map +0 -1
  260. package/dist/commands/mcp.js +0 -3413
  261. package/dist/commands/mcp.js.map +0 -1
  262. package/dist/commands/menu.d.ts +0 -29
  263. package/dist/commands/menu.d.ts.map +0 -1
  264. package/dist/commands/menu.js +0 -147
  265. package/dist/commands/menu.js.map +0 -1
  266. package/dist/commands/meshes.d.ts +0 -3
  267. package/dist/commands/meshes.d.ts.map +0 -1
  268. package/dist/commands/meshes.js +0 -27
  269. package/dist/commands/meshes.js.map +0 -1
  270. package/dist/commands/network-policy.d.ts +0 -3
  271. package/dist/commands/network-policy.d.ts.map +0 -1
  272. package/dist/commands/network-policy.js +0 -155
  273. package/dist/commands/network-policy.js.map +0 -1
  274. package/dist/commands/new.d.ts +0 -3
  275. package/dist/commands/new.d.ts.map +0 -1
  276. package/dist/commands/new.js +0 -296
  277. package/dist/commands/new.js.map +0 -1
  278. package/dist/commands/opencomputers.d.ts +0 -10
  279. package/dist/commands/opencomputers.d.ts.map +0 -1
  280. package/dist/commands/opencomputers.js +0 -25
  281. package/dist/commands/opencomputers.js.map +0 -1
  282. package/dist/commands/operating-contract.d.ts +0 -3
  283. package/dist/commands/operating-contract.d.ts.map +0 -1
  284. package/dist/commands/operating-contract.js +0 -651
  285. package/dist/commands/operating-contract.js.map +0 -1
  286. package/dist/commands/project.d.ts +0 -4
  287. package/dist/commands/project.d.ts.map +0 -1
  288. package/dist/commands/project.js +0 -25
  289. package/dist/commands/project.js.map +0 -1
  290. package/dist/commands/pull.d.ts +0 -14
  291. package/dist/commands/pull.d.ts.map +0 -1
  292. package/dist/commands/pull.js +0 -156
  293. package/dist/commands/pull.js.map +0 -1
  294. package/dist/commands/regions.d.ts +0 -3
  295. package/dist/commands/regions.d.ts.map +0 -1
  296. package/dist/commands/regions.js +0 -103
  297. package/dist/commands/regions.js.map +0 -1
  298. package/dist/commands/releases.d.ts +0 -3
  299. package/dist/commands/releases.d.ts.map +0 -1
  300. package/dist/commands/releases.js +0 -365
  301. package/dist/commands/releases.js.map +0 -1
  302. package/dist/commands/rm.d.ts +0 -3
  303. package/dist/commands/rm.d.ts.map +0 -1
  304. package/dist/commands/rm.js +0 -42
  305. package/dist/commands/rm.js.map +0 -1
  306. package/dist/commands/rollback.d.ts +0 -3
  307. package/dist/commands/rollback.d.ts.map +0 -1
  308. package/dist/commands/rollback.js +0 -62
  309. package/dist/commands/rollback.js.map +0 -1
  310. package/dist/commands/run-groups.d.ts +0 -3
  311. package/dist/commands/run-groups.d.ts.map +0 -1
  312. package/dist/commands/run-groups.js +0 -364
  313. package/dist/commands/run-groups.js.map +0 -1
  314. package/dist/commands/run.d.ts +0 -3
  315. package/dist/commands/run.d.ts.map +0 -1
  316. package/dist/commands/run.js +0 -130
  317. package/dist/commands/run.js.map +0 -1
  318. package/dist/commands/runs.d.ts +0 -3
  319. package/dist/commands/runs.d.ts.map +0 -1
  320. package/dist/commands/runs.js +0 -365
  321. package/dist/commands/runs.js.map +0 -1
  322. package/dist/commands/runtime-env.d.ts +0 -3
  323. package/dist/commands/runtime-env.d.ts.map +0 -1
  324. package/dist/commands/runtime-env.js +0 -114
  325. package/dist/commands/runtime-env.js.map +0 -1
  326. package/dist/commands/sandbox-delete-guard.d.ts +0 -4
  327. package/dist/commands/sandbox-delete-guard.d.ts.map +0 -1
  328. package/dist/commands/sandbox-delete-guard.js +0 -32
  329. package/dist/commands/sandbox-delete-guard.js.map +0 -1
  330. package/dist/commands/sandbox-dev.d.ts +0 -20
  331. package/dist/commands/sandbox-dev.d.ts.map +0 -1
  332. package/dist/commands/sandbox-dev.js +0 -583
  333. package/dist/commands/sandbox-dev.js.map +0 -1
  334. package/dist/commands/sandbox.d.ts +0 -36
  335. package/dist/commands/sandbox.d.ts.map +0 -1
  336. package/dist/commands/sandbox.js +0 -3796
  337. package/dist/commands/sandbox.js.map +0 -1
  338. package/dist/commands/scale.d.ts +0 -3
  339. package/dist/commands/scale.d.ts.map +0 -1
  340. package/dist/commands/scale.js +0 -61
  341. package/dist/commands/scale.js.map +0 -1
  342. package/dist/commands/schedules.d.ts +0 -3
  343. package/dist/commands/schedules.d.ts.map +0 -1
  344. package/dist/commands/schedules.js +0 -37
  345. package/dist/commands/schedules.js.map +0 -1
  346. package/dist/commands/secrets.d.ts +0 -3
  347. package/dist/commands/secrets.d.ts.map +0 -1
  348. package/dist/commands/secrets.js +0 -200
  349. package/dist/commands/secrets.js.map +0 -1
  350. package/dist/commands/services.d.ts +0 -3
  351. package/dist/commands/services.d.ts.map +0 -1
  352. package/dist/commands/services.js +0 -70
  353. package/dist/commands/services.js.map +0 -1
  354. package/dist/commands/shell.d.ts +0 -16
  355. package/dist/commands/shell.d.ts.map +0 -1
  356. package/dist/commands/shell.js +0 -555
  357. package/dist/commands/shell.js.map +0 -1
  358. package/dist/commands/snapshot.d.ts +0 -10
  359. package/dist/commands/snapshot.d.ts.map +0 -1
  360. package/dist/commands/snapshot.js +0 -181
  361. package/dist/commands/snapshot.js.map +0 -1
  362. package/dist/commands/ssh.d.ts +0 -3
  363. package/dist/commands/ssh.d.ts.map +0 -1
  364. package/dist/commands/ssh.js +0 -93
  365. package/dist/commands/ssh.js.map +0 -1
  366. package/dist/commands/status.d.ts +0 -3
  367. package/dist/commands/status.d.ts.map +0 -1
  368. package/dist/commands/status.js +0 -302
  369. package/dist/commands/status.js.map +0 -1
  370. package/dist/commands/storage.d.ts +0 -3
  371. package/dist/commands/storage.d.ts.map +0 -1
  372. package/dist/commands/storage.js +0 -456
  373. package/dist/commands/storage.js.map +0 -1
  374. package/dist/commands/teams.d.ts +0 -3
  375. package/dist/commands/teams.d.ts.map +0 -1
  376. package/dist/commands/teams.js +0 -169
  377. package/dist/commands/teams.js.map +0 -1
  378. package/dist/commands/templates.d.ts +0 -3
  379. package/dist/commands/templates.d.ts.map +0 -1
  380. package/dist/commands/templates.js +0 -690
  381. package/dist/commands/templates.js.map +0 -1
  382. package/dist/commands/tenant.d.ts +0 -3
  383. package/dist/commands/tenant.d.ts.map +0 -1
  384. package/dist/commands/tenant.js +0 -95
  385. package/dist/commands/tenant.js.map +0 -1
  386. package/dist/commands/tunnel.d.ts +0 -3
  387. package/dist/commands/tunnel.d.ts.map +0 -1
  388. package/dist/commands/tunnel.js +0 -418
  389. package/dist/commands/tunnel.js.map +0 -1
  390. package/dist/commands/up.d.ts +0 -14
  391. package/dist/commands/up.d.ts.map +0 -1
  392. package/dist/commands/up.js +0 -720
  393. package/dist/commands/up.js.map +0 -1
  394. package/dist/commands/update.d.ts +0 -3
  395. package/dist/commands/update.d.ts.map +0 -1
  396. package/dist/commands/update.js +0 -166
  397. package/dist/commands/update.js.map +0 -1
  398. package/dist/commands/util.d.ts +0 -25
  399. package/dist/commands/util.d.ts.map +0 -1
  400. package/dist/commands/util.js +0 -199
  401. package/dist/commands/util.js.map +0 -1
  402. package/dist/commands/volumes.d.ts +0 -3
  403. package/dist/commands/volumes.d.ts.map +0 -1
  404. package/dist/commands/volumes.js +0 -196
  405. package/dist/commands/volumes.js.map +0 -1
  406. package/dist/commands/watch.d.ts +0 -6
  407. package/dist/commands/watch.d.ts.map +0 -1
  408. package/dist/commands/watch.js +0 -414
  409. package/dist/commands/watch.js.map +0 -1
  410. package/dist/commands/webhooks.d.ts +0 -3
  411. package/dist/commands/webhooks.d.ts.map +0 -1
  412. package/dist/commands/webhooks.js +0 -23
  413. package/dist/commands/webhooks.js.map +0 -1
  414. package/dist/commands/whoami.d.ts +0 -3
  415. package/dist/commands/whoami.d.ts.map +0 -1
  416. package/dist/commands/whoami.js +0 -156
  417. package/dist/commands/whoami.js.map +0 -1
  418. package/dist/commands/workspaces.d.ts +0 -3
  419. package/dist/commands/workspaces.d.ts.map +0 -1
  420. package/dist/commands/workspaces.js +0 -147
  421. package/dist/commands/workspaces.js.map +0 -1
  422. package/dist/config.d.ts +0 -54
  423. package/dist/config.d.ts.map +0 -1
  424. package/dist/config.js +0 -275
  425. package/dist/config.js.map +0 -1
  426. package/dist/errors.d.ts +0 -30
  427. package/dist/errors.d.ts.map +0 -1
  428. package/dist/errors.js +0 -92
  429. package/dist/errors.js.map +0 -1
  430. package/dist/framework-detector.d.ts +0 -22
  431. package/dist/framework-detector.d.ts.map +0 -1
  432. package/dist/framework-detector.js +0 -373
  433. package/dist/framework-detector.js.map +0 -1
  434. package/dist/generated/action-capabilities.d.ts +0 -826
  435. package/dist/generated/action-capabilities.d.ts.map +0 -1
  436. package/dist/generated/action-capabilities.js +0 -1035
  437. package/dist/generated/action-capabilities.js.map +0 -1
  438. package/dist/net-diagnosis.d.ts +0 -87
  439. package/dist/net-diagnosis.d.ts.map +0 -1
  440. package/dist/net-diagnosis.js +0 -408
  441. package/dist/net-diagnosis.js.map +0 -1
  442. package/dist/pty/raw-mode.d.ts +0 -7
  443. package/dist/pty/raw-mode.d.ts.map +0 -1
  444. package/dist/pty/raw-mode.js +0 -22
  445. package/dist/pty/raw-mode.js.map +0 -1
  446. package/dist/pty/ws-pty-client.d.ts +0 -13
  447. package/dist/pty/ws-pty-client.d.ts.map +0 -1
  448. package/dist/pty/ws-pty-client.js +0 -73
  449. package/dist/pty/ws-pty-client.js.map +0 -1
  450. package/dist/tui/dashboard.d.ts +0 -35
  451. package/dist/tui/dashboard.d.ts.map +0 -1
  452. package/dist/tui/dashboard.js +0 -191
  453. package/dist/tui/dashboard.js.map +0 -1
  454. package/dist/tui/logs.d.ts +0 -26
  455. package/dist/tui/logs.d.ts.map +0 -1
  456. package/dist/tui/logs.js +0 -276
  457. package/dist/tui/logs.js.map +0 -1
  458. package/dist/types.d.ts +0 -362
  459. package/dist/types.d.ts.map +0 -1
  460. package/dist/types.js +0 -16
  461. package/dist/types.js.map +0 -1
  462. package/dist/ui/picker.d.ts +0 -41
  463. package/dist/ui/picker.d.ts.map +0 -1
  464. package/dist/ui/picker.js +0 -77
  465. package/dist/ui/picker.js.map +0 -1
  466. package/dist/ui/progress.d.ts +0 -10
  467. package/dist/ui/progress.d.ts.map +0 -1
  468. package/dist/ui/progress.js +0 -36
  469. package/dist/ui/progress.js.map +0 -1
  470. package/dist/ui/render.d.ts +0 -91
  471. package/dist/ui/render.d.ts.map +0 -1
  472. package/dist/ui/render.js +0 -138
  473. package/dist/ui/render.js.map +0 -1
  474. package/dist/ui/spinner.d.ts +0 -4
  475. package/dist/ui/spinner.d.ts.map +0 -1
  476. package/dist/ui/spinner.js +0 -7
  477. package/dist/ui/spinner.js.map +0 -1
  478. package/dist/ui/table.d.ts +0 -8
  479. package/dist/ui/table.d.ts.map +0 -1
  480. package/dist/ui/table.js +0 -46
  481. package/dist/ui/table.js.map +0 -1
  482. package/dist/update-check.d.ts +0 -13
  483. package/dist/update-check.d.ts.map +0 -1
  484. package/dist/update-check.js +0 -94
  485. package/dist/update-check.js.map +0 -1
  486. package/dist/version.d.ts +0 -3
  487. package/dist/version.d.ts.map +0 -1
  488. package/dist/version.js +0 -5
  489. package/dist/version.js.map +0 -1
@@ -1,596 +0,0 @@
1
- import chalk from "chalk";
2
- import { diagnose } from "../net-diagnosis.js";
3
- import { execFile } from "node:child_process";
4
- import { promisify } from "node:util";
5
- import fs from "node:fs";
6
- import path from "node:path";
7
- import os from "node:os";
8
- import { configExists, getConfigPath, loadConfig, redactKey, } from "../config.js";
9
- import { MiosaClient } from "../client.js";
10
- import { ActionAuthorityClient, actionCatalogConformance, } from "../action-authority.js";
11
- import { handleError, isJsonMode, printJson } from "./util.js";
12
- import { banner, errorEnvelope, hintBlock, icon, kvPanel, sectionHeader, } from "../ui/render.js";
13
- const execFileAsync = promisify(execFile);
14
- async function getCommandVersion(cmd, args, pattern) {
15
- try {
16
- const { stdout } = await execFileAsync(cmd, args, { timeout: 3000 });
17
- const m = pattern.exec(stdout.trim());
18
- return m ? (m[1] ?? stdout.trim()) : stdout.trim();
19
- }
20
- catch {
21
- return null;
22
- }
23
- }
24
- function isMissingCommandError(err) {
25
- const code = err?.code;
26
- return code === "ENOENT";
27
- }
28
- function executableExists(command) {
29
- if (!command.includes(path.sep) && !command.includes("/") && !command.includes("\\")) {
30
- return false;
31
- }
32
- return fs.existsSync(command);
33
- }
34
- function parseVersion(output) {
35
- const trimmed = output.trim();
36
- if (!trimmed)
37
- return null;
38
- const match = /(?:miosa-mcp\s+)?v?(\d+\.\d+\.\d+(?:[-+][\w.-]+)?)/i.exec(trimmed);
39
- return match?.[1] ?? trimmed.split(/\s+/)[0] ?? null;
40
- }
41
- function isMcpInstalledFailure(stderr, stdout) {
42
- const text = `${stderr}\n${stdout}`;
43
- if (/MIOSA_API_KEY environment variable is not set/i.test(text))
44
- return true;
45
- if (/Set it in your .*mcp\.json env block/i.test(text))
46
- return true;
47
- if (/No module named ['"]?miosa_mcp/i.test(text))
48
- return false;
49
- if (/ModuleNotFoundError/i.test(text) && /miosa_mcp/i.test(text))
50
- return false;
51
- return true;
52
- }
53
- function collectMcpCommands(value) {
54
- const found = [];
55
- const walk = (node, source) => {
56
- if (Array.isArray(node)) {
57
- for (const item of node)
58
- walk(item, source);
59
- return;
60
- }
61
- if (!node || typeof node !== "object")
62
- return;
63
- const record = node;
64
- const command = typeof record["command"] === "string" ? record["command"] : null;
65
- const args = Array.isArray(record["args"])
66
- ? record["args"].filter((arg) => typeof arg === "string")
67
- : [];
68
- const serialized = JSON.stringify(record);
69
- if (command && /miosa-mcp/i.test(command)) {
70
- found.push({ command, args: ["--version"], source });
71
- }
72
- else if (command && /miosa_mcp/i.test(serialized)) {
73
- found.push({ command, args: [...args, "--version"], source });
74
- }
75
- for (const child of Object.values(record))
76
- walk(child, source);
77
- };
78
- walk(value, "mcp.json");
79
- return found;
80
- }
81
- function windowsPythonScriptCandidates(env) {
82
- const candidates = [];
83
- const roots = [
84
- env["LOCALAPPDATA"] ? path.join(env["LOCALAPPDATA"], "Programs", "Python") : null,
85
- env["APPDATA"] ? path.join(env["APPDATA"], "Python") : null,
86
- ].filter((root) => Boolean(root));
87
- for (const root of roots) {
88
- if (!fs.existsSync(root))
89
- continue;
90
- for (const entry of fs.readdirSync(root, { withFileTypes: true })) {
91
- if (!entry.isDirectory() || !/^Python\d+/i.test(entry.name))
92
- continue;
93
- const exe = path.join(root, entry.name, "Scripts", "miosa-mcp.exe");
94
- if (fs.existsSync(exe)) {
95
- candidates.push({ command: exe, args: ["--version"], source: "python-scripts" });
96
- }
97
- }
98
- }
99
- return candidates;
100
- }
101
- export async function detectMcpInstall(options = {}) {
102
- const env = options.env ?? process.env;
103
- const platform = options.platform ?? process.platform;
104
- const includeDefaultCandidates = options.includeDefaultCandidates ?? true;
105
- const candidates = [
106
- ...(options.mcpCommands ?? []),
107
- ...(includeDefaultCandidates
108
- ? [{ command: "miosa-mcp", args: ["--version"], source: "PATH" }]
109
- : []),
110
- ...(platform === "win32" ? windowsPythonScriptCandidates(env) : []),
111
- ];
112
- const seen = new Set();
113
- for (const candidate of candidates) {
114
- const key = `${candidate.command}\0${(candidate.args ?? []).join("\0")}`;
115
- if (seen.has(key))
116
- continue;
117
- seen.add(key);
118
- try {
119
- const { stdout, stderr } = await execFileAsync(candidate.command, candidate.args ?? ["--version"], {
120
- timeout: 3000,
121
- env,
122
- });
123
- const version = parseVersion(`${stdout}\n${stderr}`);
124
- return {
125
- installed: true,
126
- detail: version ? `v${version}` : `installed (${candidate.source})`,
127
- source: candidate.source,
128
- };
129
- }
130
- catch (err) {
131
- if (isMissingCommandError(err) && !executableExists(candidate.command)) {
132
- continue;
133
- }
134
- const stdout = String(err.stdout ?? "");
135
- const stderr = String(err.stderr ?? "");
136
- if (!isMcpInstalledFailure(stderr, stdout) && !executableExists(candidate.command)) {
137
- continue;
138
- }
139
- const reason = stderr.trim().split(/\r?\n/)[0] || stdout.trim().split(/\r?\n/)[0];
140
- return {
141
- installed: true,
142
- detail: reason
143
- ? `installed (${candidate.source}; version unavailable: ${reason})`
144
- : `installed (${candidate.source}; version unavailable)`,
145
- source: candidate.source,
146
- };
147
- }
148
- }
149
- return { installed: false, detail: "not installed" };
150
- }
151
- async function checkMcpJson() {
152
- const candidates = [
153
- path.join(os.homedir(), ".claude", "mcp.json"),
154
- path.join(os.homedir(), ".claude.json"),
155
- path.join(process.cwd(), ".claude", "mcp.json"),
156
- ];
157
- for (const candidate of candidates) {
158
- if (!fs.existsSync(candidate))
159
- continue;
160
- try {
161
- const raw = fs.readFileSync(candidate, "utf8");
162
- const parsed = JSON.parse(raw);
163
- // Check if miosa or miosa-mcp appears anywhere in the config
164
- const text = JSON.stringify(parsed);
165
- const configured = /miosa/i.test(text);
166
- return {
167
- found: true,
168
- configured,
169
- commands: collectMcpCommands(parsed).map((cmd) => ({
170
- ...cmd,
171
- source: candidate,
172
- })),
173
- };
174
- }
175
- catch {
176
- return { found: true, configured: false, commands: [] };
177
- }
178
- }
179
- return { found: false, configured: false, commands: [] };
180
- }
181
- /**
182
- * Reconcile the doctor's overall verdict so `ok`, `firstFailure`, and `summary`
183
- * always tell ONE story.
184
- *
185
- * `ok` is true iff every REQUIRED check passed. A required check is any check
186
- * that is not an optional warning: transport/auth layers, config, credentials,
187
- * Node version. Optional warnings (missing MCP server, action-catalog drift,
188
- * absent .claude/mcp.json) are surfaced in `warnings` and must NEVER flip `ok`
189
- * or set `firstFailure` - collapsing the two is what produced the reported
190
- * "ok:false + firstFailure:null + 'All layers healthy'" contradiction.
191
- */
192
- export function doctorVerdict(checks, diagnosis) {
193
- const hardFailures = checks.filter((c) => !c.ok && !c.unknown && !c.warn);
194
- const warnings = checks.filter((c) => !c.ok && Boolean(c.warn));
195
- const ok = hardFailures.length === 0;
196
- // Null iff ok. Prefer the transport/auth layer the diagnosis already named;
197
- // otherwise name the first required check that failed.
198
- const firstFailure = ok
199
- ? null
200
- : (diagnosis.firstFailure ??
201
- hardFailures[0]?.layer ??
202
- hardFailures[0]?.name ??
203
- null);
204
- // Reflect the same verdict: the diagnosis summary when the fault is a
205
- // transport layer (or the path is clean), otherwise name the failing check.
206
- const summary = ok || diagnosis.firstFailure
207
- ? diagnosis.summary
208
- : `${hardFailures[0]?.name} failed: ${hardFailures[0]?.detail}`;
209
- return {
210
- ok,
211
- firstFailure,
212
- summary,
213
- warnings: warnings.map((c) => ({
214
- name: c.name,
215
- detail: c.detail,
216
- ...(c.fix ? { fix: c.fix } : {}),
217
- })),
218
- };
219
- }
220
- export function register(program) {
221
- program
222
- .command("doctor")
223
- .description("Diagnose CLI, auth, API reachability, and toolchain")
224
- .option("--json", "Output raw JSON")
225
- .action(async (opts) => {
226
- const json = isJsonMode(opts);
227
- try {
228
- const config = loadConfig();
229
- const checks = [];
230
- // ── CLI version ─────────────────────────────────────────────────────
231
- // Read from package.json — same technique as miosa.ts entrypoint
232
- let cliVersion = "unknown";
233
- try {
234
- const { readFileSync } = await import("node:fs");
235
- const { fileURLToPath } = await import("node:url");
236
- const { dirname, join } = await import("node:path");
237
- const __dirname = dirname(fileURLToPath(import.meta.url));
238
- const pkg = JSON.parse(readFileSync(join(__dirname, "../../package.json"), "utf8"));
239
- cliVersion = pkg.version;
240
- }
241
- catch {
242
- // Non-fatal
243
- }
244
- checks.push({
245
- name: "CLI version",
246
- ok: true,
247
- detail: cliVersion,
248
- section: "Identity",
249
- });
250
- // ── Config file ──────────────────────────────────────────────────────
251
- checks.push({
252
- name: "Config file",
253
- ok: configExists(),
254
- detail: configExists() ? getConfigPath() : "not found",
255
- fix: configExists() ? undefined : "Run: miosa login",
256
- section: "Identity",
257
- });
258
- // ── Authentication ───────────────────────────────────────────────────
259
- const hasKey = Boolean(config.api_key);
260
- checks.push({
261
- name: "API key",
262
- ok: hasKey,
263
- detail: hasKey ? redactKey(config.api_key) : "not set",
264
- fix: hasKey ? undefined : "Run: miosa login",
265
- section: "Identity",
266
- });
267
- // ── Connectivity, layer by layer ─────────────────────────────────────
268
- // DNS -> TCP -> TLS -> /health -> auth, each probed separately. A layer
269
- // that could not run because an earlier one failed reports `unknown`,
270
- // never `ok` and never `fail`: reporting a valid session while DNS was
271
- // dead is the exact defect this replaces.
272
- const client = hasKey ? new MiosaClient(config) : null;
273
- let tenantName = null;
274
- let tenantSlug = null;
275
- const diagnosis = await diagnose(config.endpoint, client
276
- ? async () => {
277
- const tenant = await client.getTenant();
278
- tenantName = tenant.name;
279
- tenantSlug = tenant.slug;
280
- return `valid (${tenant.name}, ${tenant.slug})`;
281
- }
282
- : undefined, config.dns_servers);
283
- for (const layer of diagnosis.layers) {
284
- checks.push({
285
- name: layer.name,
286
- ok: layer.state === "ok",
287
- unknown: layer.state === "unknown",
288
- skippedBecause: layer.skippedBecause,
289
- layer: layer.layer,
290
- errorCode: layer.errorCode,
291
- latencyMs: layer.latencyMs,
292
- detail: layer.state === "unknown"
293
- ? `not determined - ${layer.skippedBecause}`
294
- : layer.detail,
295
- fix: layer.fix,
296
- section: layer.layer === "auth" ? "Identity" : "Network",
297
- });
298
- }
299
- // Which resolver actually answered. On a restricted network the whole
300
- // question is "am I even asking the right DNS server", and that is not
301
- // inferable from a pass/fail.
302
- checks.push({
303
- name: "DNS servers",
304
- ok: !diagnosis.resolver.error,
305
- detail: diagnosis.resolver.error
306
- ? `configured dns_servers rejected: ${diagnosis.resolver.error}`
307
- : diagnosis.resolver.applied
308
- ? `${diagnosis.resolver.servers.join(", ")} (from config dns_servers)`
309
- : `${diagnosis.resolver.servers.join(", ") || "system default"} (OS resolver)`,
310
- fix: diagnosis.resolver.error
311
- ? "Set valid comma-separated IPs: miosa config set dns_servers 1.1.1.1,8.8.8.8"
312
- : diagnosis.firstFailure === "dns" && !diagnosis.resolver.applied
313
- ? "On a restricted or split-horizon network, override the resolver: miosa config set dns_servers 1.1.1.1,8.8.8.8"
314
- : undefined,
315
- section: "Network",
316
- });
317
- // Endpoint and tenant, reported as their own line so "which cluster am
318
- // I even talking to" is answerable without inference.
319
- checks.push({
320
- name: "Endpoint + tenant",
321
- ok: true,
322
- detail: tenantSlug
323
- ? `${config.endpoint} (tenant ${tenantName} / ${tenantSlug})`
324
- : `${config.endpoint} (tenant not resolved)`,
325
- section: "Identity",
326
- });
327
- const authOk = diagnosis.layers.find((l) => l.layer === "auth")?.state === "ok";
328
- if (client && authOk) {
329
- {
330
- try {
331
- const catalog = await new ActionAuthorityClient(client).catalog();
332
- const complete = catalog.every((capability) => capability.name &&
333
- capability.version &&
334
- capability.fingerprint.startsWith("sha256:") &&
335
- capability.risk &&
336
- capability.scope &&
337
- capability.approval);
338
- const conformance = actionCatalogConformance(catalog);
339
- const healthy = complete && conformance.ok;
340
- // A control plane that advertises capabilities newer than this CLI
341
- // is expected during a rollout and is never a hazard, so it is
342
- // reported for visibility but kept out of the mismatch summary
343
- // that warns.
344
- const serverAhead = conformance.unexpected.length > 0
345
- ? `${conformance.unexpected.length} newer control-plane capabilities (informational, not yet pinned by this CLI)`
346
- : null;
347
- const mismatch = [
348
- conformance.missing.length > 0
349
- ? `missing ${conformance.missing.length}`
350
- : null,
351
- conformance.stale.length > 0
352
- ? `stale ${conformance.stale.length}`
353
- : null,
354
- ]
355
- .filter((item) => item !== null)
356
- .join(", ");
357
- checks.push({
358
- name: "Action authority",
359
- ok: healthy,
360
- // Catalog drift is an optional-tooling concern, not a broken
361
- // transport: it must surface as a warning, never a hard failure
362
- // that flips the overall verdict or sets firstFailure.
363
- warn: !healthy,
364
- detail: healthy
365
- ? serverAhead
366
- ? `${catalog.length} version-pinned capabilities; ${serverAhead}`
367
- : `${catalog.length} version-pinned capabilities, exact contract match`
368
- : complete
369
- ? `catalog mismatch: ${mismatch}`
370
- : "catalog is empty or malformed",
371
- fix: healthy
372
- ? undefined
373
- : "Upgrade the CLI and control plane to the same capability contract before enabling agent actions.",
374
- section: "Authority",
375
- });
376
- }
377
- catch (err) {
378
- checks.push({
379
- name: "Action authority",
380
- ok: false,
381
- warn: true,
382
- detail: err instanceof Error ? err.message : String(err),
383
- fix: "Upgrade the control plane and run: miosa actions catalog",
384
- section: "Authority",
385
- });
386
- }
387
- }
388
- }
389
- // ── Node.js version ──────────────────────────────────────────────────
390
- const nodeVersion = process.version; // e.g. "v22.13.0"
391
- const nodeMajor = parseInt(nodeVersion.slice(1).split(".")[0] ?? "0", 10);
392
- const nodeOk = nodeMajor >= 20;
393
- checks.push({
394
- name: "Node.js",
395
- ok: nodeOk,
396
- detail: nodeVersion,
397
- fix: nodeOk
398
- ? undefined
399
- : "Node.js 20+ required. See https://nodejs.org",
400
- section: "Toolchain",
401
- });
402
- // ── Python (for MCP server) ──────────────────────────────────────────
403
- const pythonVersion = (await getCommandVersion("python3", ["--version"], /Python (\S+)/)) ??
404
- (await getCommandVersion("python", ["--version"], /Python (\S+)/));
405
- const pythonOk = pythonVersion !== null;
406
- checks.push({
407
- name: "Python",
408
- ok: pythonOk,
409
- detail: pythonVersion ? `v${pythonVersion}` : "not found",
410
- fix: pythonOk
411
- ? undefined
412
- : "Install Python 3.9+ from https://python.org (needed for miosa-mcp)",
413
- warn: !pythonOk,
414
- section: "Toolchain",
415
- });
416
- const mcpJson = await checkMcpJson();
417
- // ── miosa-mcp ────────────────────────────────────────────────────────
418
- const mcpInstall = await detectMcpInstall({
419
- mcpCommands: mcpJson.commands,
420
- });
421
- const mcpInstalled = mcpInstall.installed;
422
- checks.push({
423
- name: "miosa-mcp",
424
- ok: mcpInstalled,
425
- detail: mcpInstall.detail,
426
- fix: mcpInstalled
427
- ? undefined
428
- : "pip install miosa-mcp and ensure Python's Scripts directory is on PATH",
429
- warn: !mcpInstalled,
430
- section: "Toolchain",
431
- });
432
- // ── .claude/mcp.json ─────────────────────────────────────────────────
433
- if (mcpJson.found) {
434
- checks.push({
435
- name: ".claude/mcp.json",
436
- ok: mcpJson.configured,
437
- detail: mcpJson.configured
438
- ? "configured"
439
- : "found but miosa not configured",
440
- fix: mcpJson.configured
441
- ? undefined
442
- : "Add miosa-mcp to your .claude/mcp.json servers block",
443
- warn: !mcpJson.configured,
444
- section: "Project",
445
- });
446
- }
447
- else {
448
- checks.push({
449
- name: ".claude/mcp.json",
450
- ok: false,
451
- detail: "not found",
452
- fix: "Create ~/.claude/mcp.json with miosa-mcp server config",
453
- warn: true,
454
- section: "Project",
455
- });
456
- }
457
- // ── Output ───────────────────────────────────────────────────────────
458
- if (json) {
459
- // One reconciled verdict so ok / firstFailure / summary never
460
- // contradict each other, with optional findings split into warnings.
461
- const verdict = doctorVerdict(checks, diagnosis);
462
- return printJson({
463
- // True iff every REQUIRED check passed. Optional warnings live in
464
- // `warnings` below and never flip this.
465
- ok: verdict.ok,
466
- unknown: checks.some((c) => c.unknown),
467
- // The one field a script should branch on: which required layer/check
468
- // broke first. null iff ok is true.
469
- firstFailure: verdict.firstFailure,
470
- summary: verdict.summary,
471
- // Optional, non-fatal findings. Present for visibility only; ignored
472
- // by `ok` and `firstFailure`.
473
- warnings: verdict.warnings,
474
- resolver: diagnosis.resolver,
475
- endpoint: {
476
- url: diagnosis.endpoint,
477
- host: diagnosis.host,
478
- port: diagnosis.port,
479
- protocol: diagnosis.protocol,
480
- tenant: tenantSlug,
481
- tenantName: tenantName,
482
- },
483
- connectivity: diagnosis.layers.map((l) => ({
484
- layer: l.layer,
485
- state: l.state,
486
- detail: l.detail,
487
- ...(l.latencyMs !== undefined ? { latencyMs: l.latencyMs } : {}),
488
- ...(l.errorCode ? { errorCode: l.errorCode } : {}),
489
- ...(l.skippedBecause ? { skippedBecause: l.skippedBecause } : {}),
490
- ...(l.fix ? { fix: l.fix } : {}),
491
- })),
492
- checks: checks.map((c) => ({
493
- name: c.name,
494
- // Tri-state, so a consumer can tell "broken" from "not checked".
495
- state: c.unknown ? "unknown" : c.ok ? "ok" : "fail",
496
- ok: c.ok,
497
- detail: c.detail,
498
- ...(c.layer ? { layer: c.layer } : {}),
499
- ...(c.errorCode ? { errorCode: c.errorCode } : {}),
500
- ...(c.latencyMs !== undefined ? { latencyMs: c.latencyMs } : {}),
501
- ...(c.skippedBecause ? { skippedBecause: c.skippedBecause } : {}),
502
- ...(c.fix ? { fix: c.fix } : {}),
503
- })),
504
- });
505
- }
506
- // ── Human-readable output ────────────────────────────────────────────
507
- const sections = [
508
- "Identity",
509
- "Network",
510
- "Authority",
511
- "Toolchain",
512
- "Project",
513
- ];
514
- console.log();
515
- console.log(` ${banner({ subtitle: "Doctor" })}`);
516
- for (const section of sections) {
517
- const group = checks.filter((c) => c.section === section);
518
- if (group.length === 0)
519
- continue;
520
- sectionHeader(section);
521
- console.log(kvPanel(
522
- // An undetermined check is dimmed, not reddened. Painting "we
523
- // could not check this" the same colour as "this is broken" is
524
- // what makes a diagnosis unreadable.
525
- group.map((c) => ({
526
- icon: c.unknown
527
- ? icon.warn
528
- : c.ok
529
- ? icon.ok
530
- : c.warn
531
- ? icon.warn
532
- : icon.fail,
533
- label: c.name,
534
- value: c.unknown
535
- ? chalk.dim(c.detail)
536
- : c.ok
537
- ? chalk.dim(c.detail)
538
- : c.warn
539
- ? chalk.yellow(c.detail)
540
- : chalk.red(c.detail),
541
- }))));
542
- }
543
- // ── Summary ──────────────────────────────────────────────────────────
544
- const okCount = checks.filter((c) => c.ok && !c.unknown).length;
545
- const unknownCount = checks.filter((c) => c.unknown).length;
546
- const warnCount = checks.filter((c) => !c.ok && !c.unknown && c.warn).length;
547
- const failCount = checks.filter((c) => !c.ok && !c.unknown && !c.warn).length;
548
- const summaryParts = [chalk.green(`${okCount} ok`)];
549
- if (warnCount > 0)
550
- summaryParts.push(chalk.yellow(`${warnCount} warn`));
551
- if (failCount > 0)
552
- summaryParts.push(chalk.red(`${failCount} fail`));
553
- if (unknownCount > 0)
554
- summaryParts.push(chalk.dim(`${unknownCount} not determined`));
555
- console.log();
556
- console.log(` ${summaryParts.join(chalk.dim(" / "))}`);
557
- // Name the broken layer outright. The whole point of the command is to
558
- // answer "which layer", so it should not have to be read out of a table.
559
- if (diagnosis.firstFailure) {
560
- console.log();
561
- console.log(` ${chalk.red("Fault:")} ${diagnosis.summary}`);
562
- const failing = diagnosis.layers.find((l) => l.layer === diagnosis.firstFailure);
563
- if (failing?.fix)
564
- console.log(` ${chalk.dim(failing.fix)}`);
565
- }
566
- // ── Fix hints for hard failures only ────────────────────────────────
567
- const hardfails = checks.filter((c) => !c.ok && !c.warn && c.fix);
568
- const softfails = checks.filter((c) => !c.ok && c.warn && c.fix);
569
- if (hardfails.length > 0) {
570
- console.log();
571
- console.log(hintBlock("Fix", hardfails.map((c) => c.fix)));
572
- }
573
- else if (softfails.length > 0) {
574
- console.log();
575
- console.log(hintBlock("Try", softfails.map((c) => c.fix)));
576
- }
577
- console.log();
578
- if (failCount > 0) {
579
- process.exit(1);
580
- }
581
- }
582
- catch (err) {
583
- if (json)
584
- handleError(err);
585
- console.log();
586
- console.log(errorEnvelope({
587
- title: "Doctor crashed",
588
- body: err instanceof Error ? err.message : String(err),
589
- withDebugHint: true,
590
- }));
591
- console.log();
592
- process.exit(2);
593
- }
594
- });
595
- }
596
- //# sourceMappingURL=doctor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { Command } from "commander";
2
- export declare function register(program: Command): void;
3
- //# sourceMappingURL=domains.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../../src/commands/domains.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmHzC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgV/C"}