@knowzai/cli 0.1.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 (578) hide show
  1. package/LICENSE +21 -0
  2. package/assets/portable/.env.example +250 -0
  3. package/assets/portable/docker-compose.yml +444 -0
  4. package/assets/portable/postgres-initdb/00-databases-and-extensions.sql +16 -0
  5. package/assets/portable/releases.json +37 -0
  6. package/assets/portable/runtime-contract.json +149 -0
  7. package/bin/run.js +4 -0
  8. package/dist/.tsbuildinfo +1 -0
  9. package/dist/base-command.d.ts +47 -0
  10. package/dist/base-command.d.ts.map +1 -0
  11. package/dist/base-command.js +98 -0
  12. package/dist/base-command.js.map +1 -0
  13. package/dist/commands/activate.d.ts +39 -0
  14. package/dist/commands/activate.d.ts.map +1 -0
  15. package/dist/commands/activate.js +103 -0
  16. package/dist/commands/activate.js.map +1 -0
  17. package/dist/commands/ask.d.ts +14 -0
  18. package/dist/commands/ask.d.ts.map +1 -0
  19. package/dist/commands/ask.js +33 -0
  20. package/dist/commands/ask.js.map +1 -0
  21. package/dist/commands/auth/status.d.ts +7 -0
  22. package/dist/commands/auth/status.d.ts.map +1 -0
  23. package/dist/commands/auth/status.js +26 -0
  24. package/dist/commands/auth/status.js.map +1 -0
  25. package/dist/commands/backup.d.ts +15 -0
  26. package/dist/commands/backup.d.ts.map +1 -0
  27. package/dist/commands/backup.js +52 -0
  28. package/dist/commands/backup.js.map +1 -0
  29. package/dist/commands/capture/observe.d.ts +23 -0
  30. package/dist/commands/capture/observe.d.ts.map +1 -0
  31. package/dist/commands/capture/observe.js +68 -0
  32. package/dist/commands/capture/observe.js.map +1 -0
  33. package/dist/commands/capture/seal.d.ts +27 -0
  34. package/dist/commands/capture/seal.d.ts.map +1 -0
  35. package/dist/commands/capture/seal.js +144 -0
  36. package/dist/commands/capture/seal.js.map +1 -0
  37. package/dist/commands/capture/status.d.ts +33 -0
  38. package/dist/commands/capture/status.d.ts.map +1 -0
  39. package/dist/commands/capture/status.js +52 -0
  40. package/dist/commands/capture/status.js.map +1 -0
  41. package/dist/commands/chat.d.ts +21 -0
  42. package/dist/commands/chat.d.ts.map +1 -0
  43. package/dist/commands/chat.js +142 -0
  44. package/dist/commands/chat.js.map +1 -0
  45. package/dist/commands/cmek/decrypt.d.ts +13 -0
  46. package/dist/commands/cmek/decrypt.d.ts.map +1 -0
  47. package/dist/commands/cmek/decrypt.js +25 -0
  48. package/dist/commands/cmek/decrypt.js.map +1 -0
  49. package/dist/commands/cmek/encrypt.d.ts +15 -0
  50. package/dist/commands/cmek/encrypt.d.ts.map +1 -0
  51. package/dist/commands/cmek/encrypt.js +26 -0
  52. package/dist/commands/cmek/encrypt.js.map +1 -0
  53. package/dist/commands/cmek/init.d.ts +13 -0
  54. package/dist/commands/cmek/init.d.ts.map +1 -0
  55. package/dist/commands/cmek/init.js +27 -0
  56. package/dist/commands/cmek/init.js.map +1 -0
  57. package/dist/commands/cmek/status.d.ts +11 -0
  58. package/dist/commands/cmek/status.d.ts.map +1 -0
  59. package/dist/commands/cmek/status.js +23 -0
  60. package/dist/commands/cmek/status.js.map +1 -0
  61. package/dist/commands/completion.d.ts +13 -0
  62. package/dist/commands/completion.d.ts.map +1 -0
  63. package/dist/commands/completion.js +19 -0
  64. package/dist/commands/completion.js.map +1 -0
  65. package/dist/commands/config/get.d.ts +13 -0
  66. package/dist/commands/config/get.d.ts.map +1 -0
  67. package/dist/commands/config/get.js +28 -0
  68. package/dist/commands/config/get.js.map +1 -0
  69. package/dist/commands/config/list.d.ts +7 -0
  70. package/dist/commands/config/list.d.ts.map +1 -0
  71. package/dist/commands/config/list.js +28 -0
  72. package/dist/commands/config/list.js.map +1 -0
  73. package/dist/commands/config/path.d.ts +9 -0
  74. package/dist/commands/config/path.d.ts.map +1 -0
  75. package/dist/commands/config/path.js +15 -0
  76. package/dist/commands/config/path.js.map +1 -0
  77. package/dist/commands/config/set.d.ts +16 -0
  78. package/dist/commands/config/set.d.ts.map +1 -0
  79. package/dist/commands/config/set.js +36 -0
  80. package/dist/commands/config/set.js.map +1 -0
  81. package/dist/commands/doctor.d.ts +56 -0
  82. package/dist/commands/doctor.d.ts.map +1 -0
  83. package/dist/commands/doctor.js +151 -0
  84. package/dist/commands/doctor.js.map +1 -0
  85. package/dist/commands/down.d.ts +30 -0
  86. package/dist/commands/down.d.ts.map +1 -0
  87. package/dist/commands/down.js +20 -0
  88. package/dist/commands/down.js.map +1 -0
  89. package/dist/commands/entities/find.d.ts +16 -0
  90. package/dist/commands/entities/find.d.ts.map +1 -0
  91. package/dist/commands/entities/find.js +27 -0
  92. package/dist/commands/entities/find.js.map +1 -0
  93. package/dist/commands/hooks/install.d.ts +19 -0
  94. package/dist/commands/hooks/install.d.ts.map +1 -0
  95. package/dist/commands/hooks/install.js +53 -0
  96. package/dist/commands/hooks/install.js.map +1 -0
  97. package/dist/commands/index/graph.d.ts +11 -0
  98. package/dist/commands/index/graph.d.ts.map +1 -0
  99. package/dist/commands/index/graph.js +31 -0
  100. package/dist/commands/index/graph.js.map +1 -0
  101. package/dist/commands/index/scan.d.ts +22 -0
  102. package/dist/commands/index/scan.d.ts.map +1 -0
  103. package/dist/commands/index/scan.js +48 -0
  104. package/dist/commands/index/scan.js.map +1 -0
  105. package/dist/commands/index/search.d.ts +18 -0
  106. package/dist/commands/index/search.d.ts.map +1 -0
  107. package/dist/commands/index/search.js +40 -0
  108. package/dist/commands/index/search.js.map +1 -0
  109. package/dist/commands/ingest/add.d.ts +15 -0
  110. package/dist/commands/ingest/add.d.ts.map +1 -0
  111. package/dist/commands/ingest/add.js +50 -0
  112. package/dist/commands/ingest/add.js.map +1 -0
  113. package/dist/commands/knowledge/amend.d.ts +19 -0
  114. package/dist/commands/knowledge/amend.d.ts.map +1 -0
  115. package/dist/commands/knowledge/amend.js +27 -0
  116. package/dist/commands/knowledge/amend.js.map +1 -0
  117. package/dist/commands/knowledge/comment.d.ts +16 -0
  118. package/dist/commands/knowledge/comment.d.ts.map +1 -0
  119. package/dist/commands/knowledge/comment.js +27 -0
  120. package/dist/commands/knowledge/comment.js.map +1 -0
  121. package/dist/commands/knowledge/comments.d.ts +11 -0
  122. package/dist/commands/knowledge/comments.d.ts.map +1 -0
  123. package/dist/commands/knowledge/comments.js +20 -0
  124. package/dist/commands/knowledge/comments.js.map +1 -0
  125. package/dist/commands/knowledge/create.d.ts +18 -0
  126. package/dist/commands/knowledge/create.d.ts.map +1 -0
  127. package/dist/commands/knowledge/create.js +45 -0
  128. package/dist/commands/knowledge/create.js.map +1 -0
  129. package/dist/commands/knowledge/delete.d.ts +14 -0
  130. package/dist/commands/knowledge/delete.d.ts.map +1 -0
  131. package/dist/commands/knowledge/delete.js +30 -0
  132. package/dist/commands/knowledge/delete.js.map +1 -0
  133. package/dist/commands/knowledge/get.d.ts +13 -0
  134. package/dist/commands/knowledge/get.d.ts.map +1 -0
  135. package/dist/commands/knowledge/get.js +20 -0
  136. package/dist/commands/knowledge/get.js.map +1 -0
  137. package/dist/commands/knowledge/list.d.ts +13 -0
  138. package/dist/commands/knowledge/list.d.ts.map +1 -0
  139. package/dist/commands/knowledge/list.js +31 -0
  140. package/dist/commands/knowledge/list.js.map +1 -0
  141. package/dist/commands/knowledge/status.d.ts +11 -0
  142. package/dist/commands/knowledge/status.d.ts.map +1 -0
  143. package/dist/commands/knowledge/status.js +23 -0
  144. package/dist/commands/knowledge/status.js.map +1 -0
  145. package/dist/commands/knowledge/update.d.ts +16 -0
  146. package/dist/commands/knowledge/update.d.ts.map +1 -0
  147. package/dist/commands/knowledge/update.js +32 -0
  148. package/dist/commands/knowledge/update.js.map +1 -0
  149. package/dist/commands/knowledge/versions.d.ts +11 -0
  150. package/dist/commands/knowledge/versions.d.ts.map +1 -0
  151. package/dist/commands/knowledge/versions.js +22 -0
  152. package/dist/commands/knowledge/versions.js.map +1 -0
  153. package/dist/commands/local/info.d.ts +17 -0
  154. package/dist/commands/local/info.d.ts.map +1 -0
  155. package/dist/commands/local/info.js +26 -0
  156. package/dist/commands/local/info.js.map +1 -0
  157. package/dist/commands/local/init.d.ts +16 -0
  158. package/dist/commands/local/init.d.ts.map +1 -0
  159. package/dist/commands/local/init.js +31 -0
  160. package/dist/commands/local/init.js.map +1 -0
  161. package/dist/commands/local/list.d.ts +13 -0
  162. package/dist/commands/local/list.d.ts.map +1 -0
  163. package/dist/commands/local/list.js +29 -0
  164. package/dist/commands/local/list.js.map +1 -0
  165. package/dist/commands/local/reset.d.ts +12 -0
  166. package/dist/commands/local/reset.d.ts.map +1 -0
  167. package/dist/commands/local/reset.js +34 -0
  168. package/dist/commands/local/reset.js.map +1 -0
  169. package/dist/commands/local/show.d.ts +15 -0
  170. package/dist/commands/local/show.d.ts.map +1 -0
  171. package/dist/commands/local/show.js +33 -0
  172. package/dist/commands/local/show.js.map +1 -0
  173. package/dist/commands/login.d.ts +23 -0
  174. package/dist/commands/login.d.ts.map +1 -0
  175. package/dist/commands/login.js +139 -0
  176. package/dist/commands/login.js.map +1 -0
  177. package/dist/commands/logout.d.ts +11 -0
  178. package/dist/commands/logout.d.ts.map +1 -0
  179. package/dist/commands/logout.js +23 -0
  180. package/dist/commands/logout.js.map +1 -0
  181. package/dist/commands/menu.d.ts +10 -0
  182. package/dist/commands/menu.d.ts.map +1 -0
  183. package/dist/commands/menu.js +50 -0
  184. package/dist/commands/menu.js.map +1 -0
  185. package/dist/commands/pg/destroy.d.ts +13 -0
  186. package/dist/commands/pg/destroy.d.ts.map +1 -0
  187. package/dist/commands/pg/destroy.js +36 -0
  188. package/dist/commands/pg/destroy.js.map +1 -0
  189. package/dist/commands/pg/down.d.ts +12 -0
  190. package/dist/commands/pg/down.d.ts.map +1 -0
  191. package/dist/commands/pg/down.js +20 -0
  192. package/dist/commands/pg/down.js.map +1 -0
  193. package/dist/commands/pg/status.d.ts +13 -0
  194. package/dist/commands/pg/status.d.ts.map +1 -0
  195. package/dist/commands/pg/status.js +28 -0
  196. package/dist/commands/pg/status.js.map +1 -0
  197. package/dist/commands/pg/up.d.ts +13 -0
  198. package/dist/commands/pg/up.d.ts.map +1 -0
  199. package/dist/commands/pg/up.js +34 -0
  200. package/dist/commands/pg/up.js.map +1 -0
  201. package/dist/commands/platform/destroy.d.ts +18 -0
  202. package/dist/commands/platform/destroy.d.ts.map +1 -0
  203. package/dist/commands/platform/destroy.js +41 -0
  204. package/dist/commands/platform/destroy.js.map +1 -0
  205. package/dist/commands/platform/doctor.d.ts +11 -0
  206. package/dist/commands/platform/doctor.d.ts.map +1 -0
  207. package/dist/commands/platform/doctor.js +18 -0
  208. package/dist/commands/platform/doctor.js.map +1 -0
  209. package/dist/commands/platform/down.d.ts +26 -0
  210. package/dist/commands/platform/down.d.ts.map +1 -0
  211. package/dist/commands/platform/down.js +16 -0
  212. package/dist/commands/platform/down.js.map +1 -0
  213. package/dist/commands/platform/logs.d.ts +26 -0
  214. package/dist/commands/platform/logs.d.ts.map +1 -0
  215. package/dist/commands/platform/logs.js +24 -0
  216. package/dist/commands/platform/logs.js.map +1 -0
  217. package/dist/commands/platform/reset.d.ts +26 -0
  218. package/dist/commands/platform/reset.d.ts.map +1 -0
  219. package/dist/commands/platform/reset.js +49 -0
  220. package/dist/commands/platform/reset.js.map +1 -0
  221. package/dist/commands/platform/setup.d.ts +24 -0
  222. package/dist/commands/platform/setup.d.ts.map +1 -0
  223. package/dist/commands/platform/setup.js +21 -0
  224. package/dist/commands/platform/setup.js.map +1 -0
  225. package/dist/commands/platform/status.d.ts +28 -0
  226. package/dist/commands/platform/status.d.ts.map +1 -0
  227. package/dist/commands/platform/status.js +37 -0
  228. package/dist/commands/platform/status.js.map +1 -0
  229. package/dist/commands/platform/up.d.ts +42 -0
  230. package/dist/commands/platform/up.d.ts.map +1 -0
  231. package/dist/commands/platform/up.js +22 -0
  232. package/dist/commands/platform/up.js.map +1 -0
  233. package/dist/commands/platform/upgrade.d.ts +14 -0
  234. package/dist/commands/platform/upgrade.d.ts.map +1 -0
  235. package/dist/commands/platform/upgrade.js +22 -0
  236. package/dist/commands/platform/upgrade.js.map +1 -0
  237. package/dist/commands/profile/add.d.ts +18 -0
  238. package/dist/commands/profile/add.d.ts.map +1 -0
  239. package/dist/commands/profile/add.js +26 -0
  240. package/dist/commands/profile/add.js.map +1 -0
  241. package/dist/commands/profile/list.d.ts +10 -0
  242. package/dist/commands/profile/list.d.ts.map +1 -0
  243. package/dist/commands/profile/list.js +20 -0
  244. package/dist/commands/profile/list.js.map +1 -0
  245. package/dist/commands/profile/remove.d.ts +15 -0
  246. package/dist/commands/profile/remove.d.ts.map +1 -0
  247. package/dist/commands/profile/remove.js +19 -0
  248. package/dist/commands/profile/remove.js.map +1 -0
  249. package/dist/commands/profile/use.d.ts +12 -0
  250. package/dist/commands/profile/use.d.ts.map +1 -0
  251. package/dist/commands/profile/use.js +18 -0
  252. package/dist/commands/profile/use.js.map +1 -0
  253. package/dist/commands/recall.d.ts +29 -0
  254. package/dist/commands/recall.d.ts.map +1 -0
  255. package/dist/commands/recall.js +94 -0
  256. package/dist/commands/recall.js.map +1 -0
  257. package/dist/commands/repo/context.d.ts +24 -0
  258. package/dist/commands/repo/context.d.ts.map +1 -0
  259. package/dist/commands/repo/context.js +52 -0
  260. package/dist/commands/repo/context.js.map +1 -0
  261. package/dist/commands/repo/graph.d.ts +24 -0
  262. package/dist/commands/repo/graph.d.ts.map +1 -0
  263. package/dist/commands/repo/graph.js +72 -0
  264. package/dist/commands/repo/graph.js.map +1 -0
  265. package/dist/commands/repo/index/index.d.ts +28 -0
  266. package/dist/commands/repo/index/index.d.ts.map +1 -0
  267. package/dist/commands/repo/index/index.js +76 -0
  268. package/dist/commands/repo/index/index.js.map +1 -0
  269. package/dist/commands/repo/search.d.ts +22 -0
  270. package/dist/commands/repo/search.d.ts.map +1 -0
  271. package/dist/commands/repo/search.js +50 -0
  272. package/dist/commands/repo/search.js.map +1 -0
  273. package/dist/commands/repo/setup.d.ts +41 -0
  274. package/dist/commands/repo/setup.d.ts.map +1 -0
  275. package/dist/commands/repo/setup.js +144 -0
  276. package/dist/commands/repo/setup.js.map +1 -0
  277. package/dist/commands/repo/status.d.ts +31 -0
  278. package/dist/commands/repo/status.d.ts.map +1 -0
  279. package/dist/commands/repo/status.js +60 -0
  280. package/dist/commands/repo/status.js.map +1 -0
  281. package/dist/commands/restore.d.ts +16 -0
  282. package/dist/commands/restore.d.ts.map +1 -0
  283. package/dist/commands/restore.js +53 -0
  284. package/dist/commands/restore.js.map +1 -0
  285. package/dist/commands/search.d.ts +14 -0
  286. package/dist/commands/search.d.ts.map +1 -0
  287. package/dist/commands/search.js +32 -0
  288. package/dist/commands/search.js.map +1 -0
  289. package/dist/commands/setup.d.ts +24 -0
  290. package/dist/commands/setup.d.ts.map +1 -0
  291. package/dist/commands/setup.js +21 -0
  292. package/dist/commands/setup.js.map +1 -0
  293. package/dist/commands/stats.d.ts +6 -0
  294. package/dist/commands/stats.d.ts.map +1 -0
  295. package/dist/commands/stats.js +16 -0
  296. package/dist/commands/stats.js.map +1 -0
  297. package/dist/commands/status.d.ts +20 -0
  298. package/dist/commands/status.d.ts.map +1 -0
  299. package/dist/commands/status.js +33 -0
  300. package/dist/commands/status.js.map +1 -0
  301. package/dist/commands/sync/conflicts.d.ts +14 -0
  302. package/dist/commands/sync/conflicts.d.ts.map +1 -0
  303. package/dist/commands/sync/conflicts.js +23 -0
  304. package/dist/commands/sync/conflicts.js.map +1 -0
  305. package/dist/commands/sync/pull.d.ts +13 -0
  306. package/dist/commands/sync/pull.d.ts.map +1 -0
  307. package/dist/commands/sync/pull.js +26 -0
  308. package/dist/commands/sync/pull.js.map +1 -0
  309. package/dist/commands/sync/push.d.ts +13 -0
  310. package/dist/commands/sync/push.d.ts.map +1 -0
  311. package/dist/commands/sync/push.js +26 -0
  312. package/dist/commands/sync/push.js.map +1 -0
  313. package/dist/commands/sync/recover.d.ts +16 -0
  314. package/dist/commands/sync/recover.d.ts.map +1 -0
  315. package/dist/commands/sync/recover.js +29 -0
  316. package/dist/commands/sync/recover.js.map +1 -0
  317. package/dist/commands/sync/resolve.d.ts +21 -0
  318. package/dist/commands/sync/resolve.d.ts.map +1 -0
  319. package/dist/commands/sync/resolve.js +38 -0
  320. package/dist/commands/sync/resolve.js.map +1 -0
  321. package/dist/commands/sync/run.d.ts +13 -0
  322. package/dist/commands/sync/run.d.ts.map +1 -0
  323. package/dist/commands/sync/run.js +26 -0
  324. package/dist/commands/sync/run.js.map +1 -0
  325. package/dist/commands/sync/status.d.ts +13 -0
  326. package/dist/commands/sync/status.d.ts.map +1 -0
  327. package/dist/commands/sync/status.js +28 -0
  328. package/dist/commands/sync/status.js.map +1 -0
  329. package/dist/commands/topics/list.d.ts +11 -0
  330. package/dist/commands/topics/list.d.ts.map +1 -0
  331. package/dist/commands/topics/list.js +20 -0
  332. package/dist/commands/topics/list.js.map +1 -0
  333. package/dist/commands/tui.d.ts +10 -0
  334. package/dist/commands/tui.d.ts.map +1 -0
  335. package/dist/commands/tui.js +124 -0
  336. package/dist/commands/tui.js.map +1 -0
  337. package/dist/commands/up.d.ts +108 -0
  338. package/dist/commands/up.d.ts.map +1 -0
  339. package/dist/commands/up.js +210 -0
  340. package/dist/commands/up.js.map +1 -0
  341. package/dist/commands/vault/contents.d.ts +14 -0
  342. package/dist/commands/vault/contents.d.ts.map +1 -0
  343. package/dist/commands/vault/contents.js +24 -0
  344. package/dist/commands/vault/contents.js.map +1 -0
  345. package/dist/commands/vault/create.d.ts +15 -0
  346. package/dist/commands/vault/create.d.ts.map +1 -0
  347. package/dist/commands/vault/create.js +26 -0
  348. package/dist/commands/vault/create.js.map +1 -0
  349. package/dist/commands/vault/get.d.ts +10 -0
  350. package/dist/commands/vault/get.d.ts.map +1 -0
  351. package/dist/commands/vault/get.js +25 -0
  352. package/dist/commands/vault/get.js.map +1 -0
  353. package/dist/commands/vault/list.d.ts +7 -0
  354. package/dist/commands/vault/list.d.ts.map +1 -0
  355. package/dist/commands/vault/list.js +17 -0
  356. package/dist/commands/vault/list.js.map +1 -0
  357. package/dist/commands/web.d.ts +14 -0
  358. package/dist/commands/web.d.ts.map +1 -0
  359. package/dist/commands/web.js +50 -0
  360. package/dist/commands/web.js.map +1 -0
  361. package/dist/commands/whoami.d.ts +7 -0
  362. package/dist/commands/whoami.d.ts.map +1 -0
  363. package/dist/commands/whoami.js +24 -0
  364. package/dist/commands/whoami.js.map +1 -0
  365. package/dist/hooks/init/launch-menu.d.ts +10 -0
  366. package/dist/hooks/init/launch-menu.d.ts.map +1 -0
  367. package/dist/hooks/init/launch-menu.js +11 -0
  368. package/dist/hooks/init/launch-menu.js.map +1 -0
  369. package/dist/lib/activate.d.ts +92 -0
  370. package/dist/lib/activate.d.ts.map +1 -0
  371. package/dist/lib/activate.js +292 -0
  372. package/dist/lib/activate.js.map +1 -0
  373. package/dist/lib/browser.d.ts +30 -0
  374. package/dist/lib/browser.d.ts.map +1 -0
  375. package/dist/lib/browser.js +45 -0
  376. package/dist/lib/browser.js.map +1 -0
  377. package/dist/lib/chat.d.ts +41 -0
  378. package/dist/lib/chat.d.ts.map +1 -0
  379. package/dist/lib/chat.js +63 -0
  380. package/dist/lib/chat.js.map +1 -0
  381. package/dist/lib/claude-hooks.d.ts +34 -0
  382. package/dist/lib/claude-hooks.d.ts.map +1 -0
  383. package/dist/lib/claude-hooks.js +85 -0
  384. package/dist/lib/claude-hooks.js.map +1 -0
  385. package/dist/lib/completion.d.ts +9 -0
  386. package/dist/lib/completion.d.ts.map +1 -0
  387. package/dist/lib/completion.js +57 -0
  388. package/dist/lib/completion.js.map +1 -0
  389. package/dist/lib/container-engine.d.ts +45 -0
  390. package/dist/lib/container-engine.d.ts.map +1 -0
  391. package/dist/lib/container-engine.js +348 -0
  392. package/dist/lib/container-engine.js.map +1 -0
  393. package/dist/lib/content.d.ts +9 -0
  394. package/dist/lib/content.d.ts.map +1 -0
  395. package/dist/lib/content.js +20 -0
  396. package/dist/lib/content.js.map +1 -0
  397. package/dist/lib/doctor-fixture.d.ts +8 -0
  398. package/dist/lib/doctor-fixture.d.ts.map +1 -0
  399. package/dist/lib/doctor-fixture.js +50 -0
  400. package/dist/lib/doctor-fixture.js.map +1 -0
  401. package/dist/lib/embedding-guard.d.ts +34 -0
  402. package/dist/lib/embedding-guard.d.ts.map +1 -0
  403. package/dist/lib/embedding-guard.js +50 -0
  404. package/dist/lib/embedding-guard.js.map +1 -0
  405. package/dist/lib/hook-io.d.ts +24 -0
  406. package/dist/lib/hook-io.d.ts.map +1 -0
  407. package/dist/lib/hook-io.js +73 -0
  408. package/dist/lib/hook-io.js.map +1 -0
  409. package/dist/lib/ingest.d.ts +24 -0
  410. package/dist/lib/ingest.d.ts.map +1 -0
  411. package/dist/lib/ingest.js +44 -0
  412. package/dist/lib/ingest.js.map +1 -0
  413. package/dist/lib/login.d.ts +40 -0
  414. package/dist/lib/login.d.ts.map +1 -0
  415. package/dist/lib/login.js +56 -0
  416. package/dist/lib/login.js.map +1 -0
  417. package/dist/lib/pending-captures.d.ts +25 -0
  418. package/dist/lib/pending-captures.d.ts.map +1 -0
  419. package/dist/lib/pending-captures.js +143 -0
  420. package/dist/lib/pending-captures.js.map +1 -0
  421. package/dist/lib/platform-backup.d.ts +110 -0
  422. package/dist/lib/platform-backup.d.ts.map +1 -0
  423. package/dist/lib/platform-backup.js +579 -0
  424. package/dist/lib/platform-backup.js.map +1 -0
  425. package/dist/lib/platform-command-shared.d.ts +132 -0
  426. package/dist/lib/platform-command-shared.d.ts.map +1 -0
  427. package/dist/lib/platform-command-shared.js +159 -0
  428. package/dist/lib/platform-command-shared.js.map +1 -0
  429. package/dist/lib/platform-frontdoor-runtime.d.ts +33 -0
  430. package/dist/lib/platform-frontdoor-runtime.d.ts.map +1 -0
  431. package/dist/lib/platform-frontdoor-runtime.js +285 -0
  432. package/dist/lib/platform-frontdoor-runtime.js.map +1 -0
  433. package/dist/lib/platform-frontdoor.d.ts +155 -0
  434. package/dist/lib/platform-frontdoor.d.ts.map +1 -0
  435. package/dist/lib/platform-frontdoor.js +467 -0
  436. package/dist/lib/platform-frontdoor.js.map +1 -0
  437. package/dist/lib/platform-image-source.d.ts +81 -0
  438. package/dist/lib/platform-image-source.d.ts.map +1 -0
  439. package/dist/lib/platform-image-source.js +143 -0
  440. package/dist/lib/platform-image-source.js.map +1 -0
  441. package/dist/lib/platform-lifecycle.d.ts +112 -0
  442. package/dist/lib/platform-lifecycle.d.ts.map +1 -0
  443. package/dist/lib/platform-lifecycle.js +725 -0
  444. package/dist/lib/platform-lifecycle.js.map +1 -0
  445. package/dist/lib/platform-onboarding.d.ts +128 -0
  446. package/dist/lib/platform-onboarding.d.ts.map +1 -0
  447. package/dist/lib/platform-onboarding.js +227 -0
  448. package/dist/lib/platform-onboarding.js.map +1 -0
  449. package/dist/lib/platform-preflight.d.ts +48 -0
  450. package/dist/lib/platform-preflight.d.ts.map +1 -0
  451. package/dist/lib/platform-preflight.js +90 -0
  452. package/dist/lib/platform-preflight.js.map +1 -0
  453. package/dist/lib/platform-profile-purge.d.ts +18 -0
  454. package/dist/lib/platform-profile-purge.d.ts.map +1 -0
  455. package/dist/lib/platform-profile-purge.js +26 -0
  456. package/dist/lib/platform-profile-purge.js.map +1 -0
  457. package/dist/lib/platform-provider-fields.d.ts +2 -0
  458. package/dist/lib/platform-provider-fields.d.ts.map +1 -0
  459. package/dist/lib/platform-provider-fields.js +2 -0
  460. package/dist/lib/platform-provider-fields.js.map +1 -0
  461. package/dist/lib/platform-provider-probe.d.ts +75 -0
  462. package/dist/lib/platform-provider-probe.d.ts.map +1 -0
  463. package/dist/lib/platform-provider-probe.js +781 -0
  464. package/dist/lib/platform-provider-probe.js.map +1 -0
  465. package/dist/lib/platform-provider-prompt.d.ts +118 -0
  466. package/dist/lib/platform-provider-prompt.d.ts.map +1 -0
  467. package/dist/lib/platform-provider-prompt.js +245 -0
  468. package/dist/lib/platform-provider-prompt.js.map +1 -0
  469. package/dist/lib/platform-release-manifest.d.ts +34 -0
  470. package/dist/lib/platform-release-manifest.d.ts.map +1 -0
  471. package/dist/lib/platform-release-manifest.js +100 -0
  472. package/dist/lib/platform-release-manifest.js.map +1 -0
  473. package/dist/lib/platform-runtime.d.ts +212 -0
  474. package/dist/lib/platform-runtime.d.ts.map +1 -0
  475. package/dist/lib/platform-runtime.js +866 -0
  476. package/dist/lib/platform-runtime.js.map +1 -0
  477. package/dist/lib/poll.d.ts +9 -0
  478. package/dist/lib/poll.d.ts.map +1 -0
  479. package/dist/lib/poll.js +18 -0
  480. package/dist/lib/poll.js.map +1 -0
  481. package/dist/lib/prompt.d.ts +7 -0
  482. package/dist/lib/prompt.d.ts.map +1 -0
  483. package/dist/lib/prompt.js +28 -0
  484. package/dist/lib/prompt.js.map +1 -0
  485. package/dist/lib/provider-presets.d.ts +108 -0
  486. package/dist/lib/provider-presets.d.ts.map +1 -0
  487. package/dist/lib/provider-presets.js +184 -0
  488. package/dist/lib/provider-presets.js.map +1 -0
  489. package/dist/lib/recall.d.ts +32 -0
  490. package/dist/lib/recall.d.ts.map +1 -0
  491. package/dist/lib/recall.js +69 -0
  492. package/dist/lib/recall.js.map +1 -0
  493. package/dist/lib/redact.d.ts +41 -0
  494. package/dist/lib/redact.d.ts.map +1 -0
  495. package/dist/lib/redact.js +130 -0
  496. package/dist/lib/redact.js.map +1 -0
  497. package/dist/lib/render.d.ts +55 -0
  498. package/dist/lib/render.d.ts.map +1 -0
  499. package/dist/lib/render.js +172 -0
  500. package/dist/lib/render.js.map +1 -0
  501. package/dist/lib/repo-binding.d.ts +53 -0
  502. package/dist/lib/repo-binding.d.ts.map +1 -0
  503. package/dist/lib/repo-binding.js +127 -0
  504. package/dist/lib/repo-binding.js.map +1 -0
  505. package/dist/lib/repo-command-support.d.ts +18 -0
  506. package/dist/lib/repo-command-support.d.ts.map +1 -0
  507. package/dist/lib/repo-command-support.js +54 -0
  508. package/dist/lib/repo-command-support.js.map +1 -0
  509. package/dist/lib/seal-core.d.ts +34 -0
  510. package/dist/lib/seal-core.d.ts.map +1 -0
  511. package/dist/lib/seal-core.js +154 -0
  512. package/dist/lib/seal-core.js.map +1 -0
  513. package/dist/lib/setup-console.d.ts +46 -0
  514. package/dist/lib/setup-console.d.ts.map +1 -0
  515. package/dist/lib/setup-console.js +191 -0
  516. package/dist/lib/setup-console.js.map +1 -0
  517. package/dist/lib/setup-page.d.ts +21 -0
  518. package/dist/lib/setup-page.d.ts.map +1 -0
  519. package/dist/lib/setup-page.js +656 -0
  520. package/dist/lib/setup-page.js.map +1 -0
  521. package/dist/lib/setup-plan.d.ts +52 -0
  522. package/dist/lib/setup-plan.d.ts.map +1 -0
  523. package/dist/lib/setup-plan.js +154 -0
  524. package/dist/lib/setup-plan.js.map +1 -0
  525. package/dist/lib/setup-server.d.ts +71 -0
  526. package/dist/lib/setup-server.d.ts.map +1 -0
  527. package/dist/lib/setup-server.js +936 -0
  528. package/dist/lib/setup-server.js.map +1 -0
  529. package/dist/lib/tui.d.ts +77 -0
  530. package/dist/lib/tui.d.ts.map +1 -0
  531. package/dist/lib/tui.js +126 -0
  532. package/dist/lib/tui.js.map +1 -0
  533. package/dist/lib/ui.d.ts +23 -0
  534. package/dist/lib/ui.d.ts.map +1 -0
  535. package/dist/lib/ui.js +100 -0
  536. package/dist/lib/ui.js.map +1 -0
  537. package/dist/lib/vault.d.ts +10 -0
  538. package/dist/lib/vault.d.ts.map +1 -0
  539. package/dist/lib/vault.js +18 -0
  540. package/dist/lib/vault.js.map +1 -0
  541. package/dist/menu/forms.d.ts +13 -0
  542. package/dist/menu/forms.d.ts.map +1 -0
  543. package/dist/menu/forms.js +45 -0
  544. package/dist/menu/forms.js.map +1 -0
  545. package/dist/menu/frontends.d.ts +32 -0
  546. package/dist/menu/frontends.d.ts.map +1 -0
  547. package/dist/menu/frontends.js +31 -0
  548. package/dist/menu/frontends.js.map +1 -0
  549. package/dist/menu/help.d.ts +11 -0
  550. package/dist/menu/help.d.ts.map +1 -0
  551. package/dist/menu/help.js +33 -0
  552. package/dist/menu/help.js.map +1 -0
  553. package/dist/menu/palette.d.ts +28 -0
  554. package/dist/menu/palette.d.ts.map +1 -0
  555. package/dist/menu/palette.js +57 -0
  556. package/dist/menu/palette.js.map +1 -0
  557. package/dist/menu/reducer.d.ts +19 -0
  558. package/dist/menu/reducer.d.ts.map +1 -0
  559. package/dist/menu/reducer.js +37 -0
  560. package/dist/menu/reducer.js.map +1 -0
  561. package/dist/menu/run.d.ts +34 -0
  562. package/dist/menu/run.d.ts.map +1 -0
  563. package/dist/menu/run.js +490 -0
  564. package/dist/menu/run.js.map +1 -0
  565. package/dist/menu/screens.d.ts +15 -0
  566. package/dist/menu/screens.d.ts.map +1 -0
  567. package/dist/menu/screens.js +251 -0
  568. package/dist/menu/screens.js.map +1 -0
  569. package/dist/menu/should-launch.d.ts +19 -0
  570. package/dist/menu/should-launch.d.ts.map +1 -0
  571. package/dist/menu/should-launch.js +22 -0
  572. package/dist/menu/should-launch.js.map +1 -0
  573. package/dist/menu/types.d.ts +95 -0
  574. package/dist/menu/types.d.ts.map +1 -0
  575. package/dist/menu/types.js +7 -0
  576. package/dist/menu/types.js.map +1 -0
  577. package/oclif.manifest.json +7995 -0
  578. package/package.json +133 -0
@@ -0,0 +1,34 @@
1
+ export interface HookCommand {
2
+ type: 'command';
3
+ command: string;
4
+ }
5
+ export interface HookGroup {
6
+ matcher?: string;
7
+ hooks: HookCommand[];
8
+ _knowz?: number;
9
+ }
10
+ export type HooksConfig = Record<string, HookGroup[]>;
11
+ export interface ClaudeSettings {
12
+ hooks?: HooksConfig;
13
+ [k: string]: unknown;
14
+ }
15
+ export interface HookCommandOptions {
16
+ prefix: string;
17
+ dbPath?: string;
18
+ profile?: string;
19
+ vaultId?: string;
20
+ repoRoot?: string;
21
+ }
22
+ export declare function buildAgentMemoryHooks(opts: HookCommandOptions): HooksConfig;
23
+ export declare function buildRepoHooks(opts: HookCommandOptions & {
24
+ repoRoot: string;
25
+ }): HooksConfig;
26
+ export declare function installClaudeHooks(settingsPath: string, ours: HooksConfig): {
27
+ path: string;
28
+ events: string[];
29
+ };
30
+ export declare function mergeHooks(settings: ClaudeSettings, ours: HooksConfig): ClaudeSettings;
31
+ export declare function readSettings(path: string): ClaudeSettings;
32
+ export declare function settingsJson(settings: ClaudeSettings): string;
33
+ export declare function quoteArg(value: string): string;
34
+ //# sourceMappingURL=claude-hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-hooks.d.ts","sourceRoot":"","sources":["../../src/lib/claude-hooks.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;AAEtD,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,GAAG,WAAW,CAS3E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CAU3F;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAM9G;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,GAAG,cAAc,CAStF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAOzD;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAE7D;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAG9C"}
@@ -0,0 +1,85 @@
1
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
2
+ import { dirname } from 'node:path';
3
+ const KNOWZ_HOOK_VERSION = 1;
4
+ const KNOWZ_MARKER = /\bknowz\b.*\b(capture|recall|repo\s+context)\b/;
5
+ export function buildAgentMemoryHooks(opts) {
6
+ const common = commandArgs(opts);
7
+ return {
8
+ PostToolUse: [grp('*', `${opts.prefix} capture observe${common}`)],
9
+ Stop: [grp(undefined, `${opts.prefix} capture seal --quiet${common}`)],
10
+ SessionEnd: [grp(undefined, `${opts.prefix} capture seal --quiet${common}`)],
11
+ PreCompact: [grp(undefined, `${opts.prefix} capture seal --quiet${common}`)],
12
+ SessionStart: [grp(undefined, `${opts.prefix} recall --inject --quiet${common}`)],
13
+ };
14
+ }
15
+ export function buildRepoHooks(opts) {
16
+ const common = commandArgs(opts);
17
+ const repo = quoteArg(opts.repoRoot);
18
+ return {
19
+ PostToolUse: [grp('*', `${opts.prefix} capture observe${common}`)],
20
+ Stop: [grp(undefined, `${opts.prefix} capture seal --quiet${common}`)],
21
+ SessionEnd: [grp(undefined, `${opts.prefix} capture seal --quiet${common}`)],
22
+ PreCompact: [grp(undefined, `${opts.prefix} capture seal --quiet${common}`)],
23
+ SessionStart: [grp(undefined, `${opts.prefix} repo context ${repo} --inject --quiet${common}`)],
24
+ };
25
+ }
26
+ export function installClaudeHooks(settingsPath, ours) {
27
+ const existing = readSettings(settingsPath);
28
+ const merged = mergeHooks(existing, ours);
29
+ mkdirSync(dirname(settingsPath), { recursive: true });
30
+ writeFileSync(settingsPath, `${JSON.stringify(merged, replacerDropMarker, 2)}\n`, 'utf8');
31
+ return { path: settingsPath, events: Object.keys(ours) };
32
+ }
33
+ export function mergeHooks(settings, ours) {
34
+ const out = { ...settings };
35
+ const hooks = { ...(settings.hooks ?? {}) };
36
+ for (const [event, groups] of Object.entries(ours)) {
37
+ const existing = (hooks[event] ?? []).filter((g) => !isKnowzGroup(g));
38
+ hooks[event] = [...existing, ...groups];
39
+ }
40
+ out.hooks = hooks;
41
+ return out;
42
+ }
43
+ export function readSettings(path) {
44
+ if (!existsSync(path))
45
+ return {};
46
+ try {
47
+ return JSON.parse(readFileSync(path, 'utf8'));
48
+ }
49
+ catch {
50
+ return {};
51
+ }
52
+ }
53
+ export function settingsJson(settings) {
54
+ return JSON.stringify(settings, replacerDropMarker, 2);
55
+ }
56
+ export function quoteArg(value) {
57
+ if (/^[A-Za-z0-9_./:@%+=,-]+$/u.test(value))
58
+ return value;
59
+ return `'${value.replace(/'/g, `'"'"'`)}'`;
60
+ }
61
+ function commandArgs(opts) {
62
+ const args = [];
63
+ if (opts.profile)
64
+ args.push('--profile', opts.profile);
65
+ if (opts.vaultId)
66
+ args.push('--vault', opts.vaultId);
67
+ if (opts.dbPath)
68
+ args.push('--db', opts.dbPath);
69
+ return args.length ? ` ${args.map(quoteArg).join(' ')}` : '';
70
+ }
71
+ function grp(matcher, command) {
72
+ const g = { hooks: [{ type: 'command', command }], _knowz: KNOWZ_HOOK_VERSION };
73
+ if (matcher !== undefined)
74
+ g.matcher = matcher;
75
+ return g;
76
+ }
77
+ function isKnowzGroup(g) {
78
+ if (g._knowz != null)
79
+ return true;
80
+ return (g.hooks ?? []).some((h) => typeof h.command === 'string' && KNOWZ_MARKER.test(h.command));
81
+ }
82
+ function replacerDropMarker(key, value) {
83
+ return key === '_knowz' ? undefined : value;
84
+ }
85
+ //# sourceMappingURL=claude-hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-hooks.js","sourceRoot":"","sources":["../../src/lib/claude-hooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /** Generate shell completion scripts from the CLI's command ids (e.g. `knowledge:create`). */
2
+ export interface CommandTree {
3
+ topics: string[];
4
+ subs: Record<string, string[]>;
5
+ }
6
+ export declare function commandTree(ids: string[]): CommandTree;
7
+ export declare function bashCompletion(bin: string, ids: string[]): string;
8
+ export declare function zshCompletion(bin: string, ids: string[]): string;
9
+ //# sourceMappingURL=completion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/lib/completion.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAE9F,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CAChC;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,WAAW,CAWtD;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,CAoBjE;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,CAkBhE"}
@@ -0,0 +1,57 @@
1
+ /** Generate shell completion scripts from the CLI's command ids (e.g. `knowledge:create`). */
2
+ export function commandTree(ids) {
3
+ const topics = new Set();
4
+ const subs = {};
5
+ for (const id of ids) {
6
+ const [t, s] = id.split(':');
7
+ if (!t)
8
+ continue;
9
+ topics.add(t);
10
+ if (s)
11
+ (subs[t] ??= []).push(s);
12
+ }
13
+ for (const k of Object.keys(subs))
14
+ subs[k].sort();
15
+ return { topics: [...topics].sort(), subs };
16
+ }
17
+ export function bashCompletion(bin, ids) {
18
+ const { topics, subs } = commandTree(ids);
19
+ const cases = Object.entries(subs)
20
+ .map(([t, s]) => ` ${t}) COMPREPLY=( $(compgen -W "${s.join(' ')}" -- "$cur") ); return;;`)
21
+ .join('\n');
22
+ return `# ${bin} bash completion — eval "$(${bin} completion bash)"
23
+ _${bin}_complete() {
24
+ local cur cword
25
+ cur="\${COMP_WORDS[COMP_CWORD]}"
26
+ cword=$COMP_CWORD
27
+ if [ "$cword" -le 1 ]; then
28
+ COMPREPLY=( $(compgen -W "${topics.join(' ')}" -- "$cur") )
29
+ return
30
+ fi
31
+ case "\${COMP_WORDS[1]}" in
32
+ ${cases}
33
+ esac
34
+ }
35
+ complete -F _${bin}_complete ${bin}
36
+ `;
37
+ }
38
+ export function zshCompletion(bin, ids) {
39
+ const { topics, subs } = commandTree(ids);
40
+ const cases = Object.entries(subs)
41
+ .map(([t, s]) => ` ${t}) _values '${t} subcommand' ${s.join(' ')} ;;`)
42
+ .join('\n');
43
+ return `#compdef ${bin}
44
+ # ${bin} zsh completion — eval "$(${bin} completion zsh)"
45
+ _${bin}() {
46
+ if (( CURRENT == 2 )); then
47
+ _values 'command' ${topics.join(' ')}
48
+ return
49
+ fi
50
+ case "\${words[2]}" in
51
+ ${cases}
52
+ esac
53
+ }
54
+ compdef _${bin} ${bin}
55
+ `;
56
+ }
57
+ //# sourceMappingURL=completion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/lib/completion.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAO9F,MAAM,UAAU,WAAW,CAAC,GAAa;IACvC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,MAAM,IAAI,GAA6B,EAAE,CAAC;IAC1C,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACd,IAAI,CAAC;YAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,CAAC;IACnD,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,GAAa;IACvD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;SAC/B,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,+BAA+B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,0BAA0B,CAAC;SAC/F,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,KAAK,GAAG,8BAA8B,GAAG;GAC/C,GAAG;;;;;gCAK0B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;;;;EAI9C,KAAK;;;eAGQ,GAAG,aAAa,GAAG;CACjC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,GAAa;IACtD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;SAC/B,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;SAC1E,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,YAAY,GAAG;IACpB,GAAG,6BAA6B,GAAG;GACpC,GAAG;;wBAEkB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;;;;EAItC,KAAK;;;WAGI,GAAG,IAAI,GAAG;CACpB,CAAC;AACF,CAAC"}
@@ -0,0 +1,45 @@
1
+ import type { PreflightCheck } from './platform-preflight.js';
2
+ import type { AsyncProcessRunner, ProcessResult, ProcessRunner } from './platform-runtime.js';
3
+ export type ContainerEngineId = 'docker' | 'podman' | 'none';
4
+ export interface ComposeFront {
5
+ command: string;
6
+ baseArgs: readonly string[];
7
+ env?: Record<string, string>;
8
+ }
9
+ export interface EngineStatus {
10
+ engine: ContainerEngineId;
11
+ daemonReachable: boolean;
12
+ composeFront: ComposeFront | null;
13
+ machine?: {
14
+ state: 'running' | 'stopped' | 'absent';
15
+ name?: string;
16
+ };
17
+ dockerHost?: string;
18
+ }
19
+ /** Raw, side-effect-free inputs consumed by resolveEngineStatus. */
20
+ export interface EngineProbeResults {
21
+ dockerVersion: ProcessResult;
22
+ dockerComposeVersion: ProcessResult;
23
+ dockerInfo: ProcessResult;
24
+ dockerComposeStandaloneVersion: ProcessResult;
25
+ podmanVersion: ProcessResult;
26
+ podmanInfo: ProcessResult;
27
+ podmanMachineInspect: ProcessResult;
28
+ podmanComposeVersion: ProcessResult;
29
+ uid?: number;
30
+ }
31
+ /** Pure engine state machine; performs no process, filesystem, or network I/O. */
32
+ export declare function resolveEngineStatus(probes: EngineProbeResults, platform: NodeJS.Platform, env: NodeJS.ProcessEnv): EngineStatus;
33
+ /** Thin synchronous probe driver used by preflight and doctor. */
34
+ export declare function runEngineProbes(runner: ProcessRunner, platform?: NodeJS.Platform): EngineProbeResults;
35
+ /** Async twin of runEngineProbes; accepts the frozen sync-or-async runner union. */
36
+ export declare function runEngineProbesAsync(runner: ProcessRunner | AsyncProcessRunner, platform?: NodeJS.Platform): Promise<EngineProbeResults>;
37
+ /** The single three-check engine slice shared by preflight and doctor. */
38
+ export declare function engineCheckSlice(status: EngineStatus): PreflightCheck[];
39
+ export declare function loginCommandFor(status: EngineStatus): {
40
+ command: string;
41
+ env?: Record<string, string>;
42
+ };
43
+ /** The only mutating engine operation; called exclusively by the async front door. */
44
+ export declare function ensureEngineReady(status: EngineStatus, runner: ProcessRunner | AsyncProcessRunner, progress: <T>(text: string, run: () => Promise<T>) => Promise<T>): Promise<void>;
45
+ //# sourceMappingURL=container-engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container-engine.d.ts","sourceRoot":"","sources":["../../src/lib/container-engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EACb,aAAa,EACd,MAAM,uBAAuB,CAAC;AAE/B,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7D,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,oEAAoE;AACpE,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,aAAa,CAAC;IAC7B,oBAAoB,EAAE,aAAa,CAAC;IACpC,UAAU,EAAE,aAAa,CAAC;IAC1B,8BAA8B,EAAE,aAAa,CAAC;IAC9C,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,aAAa,CAAC;IAC1B,oBAAoB,EAAE,aAAa,CAAC;IACpC,oBAAoB,EAAE,aAAa,CAAC;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAyHD,kFAAkF;AAClF,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,YAAY,CAsDd;AAwCD,kEAAkE;AAClE,wBAAgB,eAAe,CAC7B,MAAM,EAAE,aAAa,EACrB,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,kBAAkB,CAwBpB;AAED,oFAAoF;AACpF,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,aAAa,GAAG,kBAAkB,EAC1C,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,OAAO,CAAC,kBAAkB,CAAC,CAwB7B;AAKD,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,cAAc,EAAE,CAsFvE;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAMvG;AAYD,sFAAsF;AACtF,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,aAAa,GAAG,kBAAkB,EAC1C,QAAQ,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAC/D,OAAO,CAAC,IAAI,CAAC,CAUf"}
@@ -0,0 +1,348 @@
1
+ const unavailable = () => ({ status: null, error: new Error('probe not run') });
2
+ function succeeded(result) {
3
+ return !result.error && result.status === 0;
4
+ }
5
+ function output(result) {
6
+ return `${result.stdout ?? ''}\n${result.stderr ?? ''}`;
7
+ }
8
+ function serverIsPodman(result) {
9
+ return succeeded(result) && /podman/i.test(output(result));
10
+ }
11
+ function safeJson(value) {
12
+ try {
13
+ return JSON.parse(value);
14
+ }
15
+ catch {
16
+ return undefined;
17
+ }
18
+ }
19
+ function record(value) {
20
+ return typeof value === 'object' && value !== null && !Array.isArray(value)
21
+ ? value
22
+ : undefined;
23
+ }
24
+ function nested(value, ...keys) {
25
+ let current = value;
26
+ for (const key of keys) {
27
+ const currentRecord = record(current);
28
+ if (!currentRecord)
29
+ return undefined;
30
+ current = currentRecord[key];
31
+ }
32
+ return current;
33
+ }
34
+ function firstRecord(value) {
35
+ if (Array.isArray(value))
36
+ return record(value[0]);
37
+ return record(value);
38
+ }
39
+ function stringValue(value) {
40
+ return typeof value === 'string' && value.trim() ? value.trim() : undefined;
41
+ }
42
+ function normalizeUnixSocket(path) {
43
+ if (!path)
44
+ return undefined;
45
+ return path.includes('://') ? path : `unix://${path}`;
46
+ }
47
+ function podmanInfoSocket(result) {
48
+ if (!succeeded(result))
49
+ return undefined;
50
+ const raw = result.stdout?.trim() ?? '';
51
+ const parsed = safeJson(raw);
52
+ const path = stringValue(nested(parsed, 'Host', 'RemoteSocket', 'Path'))
53
+ ?? stringValue(nested(parsed, 'host', 'remoteSocket', 'path'))
54
+ ?? (/^(?:unix:\/\/)?\//.test(raw) ? raw.replace(/^['"]|['"]$/g, '') : undefined);
55
+ return normalizeUnixSocket(path);
56
+ }
57
+ function machineInspect(result) {
58
+ if (!succeeded(result))
59
+ return { state: 'absent' };
60
+ const parsed = firstRecord(safeJson(result.stdout?.trim() ?? ''));
61
+ if (!parsed)
62
+ return { state: 'absent' };
63
+ const rawState = stringValue(parsed.State ?? parsed.state)?.toLowerCase();
64
+ const state = rawState === 'running' ? 'running' : rawState === 'stopped' ? 'stopped' : 'absent';
65
+ return {
66
+ state,
67
+ name: stringValue(parsed.Name ?? parsed.name),
68
+ socketPath: stringValue(nested(parsed, 'ConnectionInfo', 'PodmanSocket', 'Path'))
69
+ ?? stringValue(nested(parsed, 'connectionInfo', 'podmanSocket', 'path')),
70
+ };
71
+ }
72
+ function linuxPodmanSocket(probes, env) {
73
+ const fromInfo = podmanInfoSocket(probes.podmanInfo);
74
+ if (fromInfo)
75
+ return fromInfo;
76
+ const root = env.XDG_RUNTIME_DIR?.trim()
77
+ || (probes.uid === 0 ? '/run' : `/run/user/${probes.uid ?? 1000}`);
78
+ return normalizeUnixSocket(probes.uid === 0 && !env.XDG_RUNTIME_DIR
79
+ ? '/run/podman/podman.sock'
80
+ : `${root}/podman/podman.sock`);
81
+ }
82
+ function withDockerHost(command, baseArgs, dockerHost) {
83
+ return {
84
+ command,
85
+ baseArgs,
86
+ ...(dockerHost ? { env: { DOCKER_HOST: dockerHost } } : {}),
87
+ };
88
+ }
89
+ function podmanComposeFront(probes, dockerHost) {
90
+ if (succeeded(probes.dockerComposeVersion))
91
+ return withDockerHost('docker', ['compose'], dockerHost);
92
+ if (succeeded(probes.dockerComposeStandaloneVersion))
93
+ return withDockerHost('docker-compose', [], dockerHost);
94
+ if (succeeded(probes.podmanComposeVersion)
95
+ && /Docker Compose version v2/i.test(output(probes.podmanComposeVersion))) {
96
+ return { command: 'podman', baseArgs: ['compose'] };
97
+ }
98
+ return null;
99
+ }
100
+ /** Pure engine state machine; performs no process, filesystem, or network I/O. */
101
+ export function resolveEngineStatus(probes, platform, env) {
102
+ const dockerCli = succeeded(probes.dockerVersion);
103
+ const dockerDaemon = succeeded(probes.dockerInfo);
104
+ const dockerShim = serverIsPodman(probes.dockerInfo);
105
+ const podmanCli = succeeded(probes.podmanVersion);
106
+ if (dockerDaemon && !dockerShim) {
107
+ return {
108
+ engine: 'docker',
109
+ daemonReachable: true,
110
+ composeFront: succeeded(probes.dockerComposeVersion)
111
+ ? { command: 'docker', baseArgs: ['compose'] }
112
+ : null,
113
+ };
114
+ }
115
+ if (!dockerShim && !podmanCli) {
116
+ if (dockerCli) {
117
+ return {
118
+ engine: 'docker',
119
+ daemonReachable: false,
120
+ composeFront: succeeded(probes.dockerComposeVersion)
121
+ ? { command: 'docker', baseArgs: ['compose'] }
122
+ : null,
123
+ };
124
+ }
125
+ return { engine: 'none', daemonReachable: false, composeFront: null };
126
+ }
127
+ if (platform === 'linux') {
128
+ const dockerHost = linuxPodmanSocket(probes, env);
129
+ return {
130
+ engine: 'podman',
131
+ daemonReachable: dockerShim || succeeded(probes.podmanInfo),
132
+ composeFront: podmanComposeFront(probes, dockerHost),
133
+ dockerHost,
134
+ };
135
+ }
136
+ const inspected = machineInspect(probes.podmanMachineInspect);
137
+ const machineName = inspected.name ?? 'podman-machine-default';
138
+ const dockerHost = platform === 'win32'
139
+ ? `npipe:////./pipe/podman-machine-${machineName.replace(/^podman-machine-/, '')}`
140
+ : normalizeUnixSocket(inspected.socketPath);
141
+ return {
142
+ engine: 'podman',
143
+ daemonReachable: dockerShim || inspected.state === 'running',
144
+ composeFront: podmanComposeFront(probes, dockerHost),
145
+ machine: {
146
+ state: inspected.state,
147
+ ...(inspected.name ? { name: inspected.name } : {}),
148
+ },
149
+ ...(dockerHost ? { dockerHost } : {}),
150
+ };
151
+ }
152
+ function invokeSync(runner, command, args) {
153
+ try {
154
+ return runner(command, args, { cwd: process.cwd(), shell: false });
155
+ }
156
+ catch (error) {
157
+ return { status: null, error: error };
158
+ }
159
+ }
160
+ async function invokeAsync(runner, command, args) {
161
+ try {
162
+ return await Promise.resolve(runner(command, args, { cwd: process.cwd(), shell: false }));
163
+ }
164
+ catch (error) {
165
+ return { status: null, error: error };
166
+ }
167
+ }
168
+ function emptyProbes() {
169
+ return {
170
+ dockerVersion: unavailable(),
171
+ dockerComposeVersion: unavailable(),
172
+ dockerInfo: unavailable(),
173
+ dockerComposeStandaloneVersion: unavailable(),
174
+ podmanVersion: unavailable(),
175
+ podmanInfo: unavailable(),
176
+ podmanMachineInspect: unavailable(),
177
+ podmanComposeVersion: unavailable(),
178
+ uid: process.getuid?.(),
179
+ };
180
+ }
181
+ /** Thin synchronous probe driver used by preflight and doctor. */
182
+ export function runEngineProbes(runner, platform = process.platform) {
183
+ const probes = emptyProbes();
184
+ probes.dockerVersion = invokeSync(runner, 'docker', ['--version']);
185
+ if (succeeded(probes.dockerVersion)) {
186
+ probes.dockerComposeVersion = invokeSync(runner, 'docker', ['compose', 'version']);
187
+ probes.dockerInfo = invokeSync(runner, 'docker', ['info', '--format', 'json']);
188
+ if (succeeded(probes.dockerInfo) && !serverIsPodman(probes.dockerInfo))
189
+ return probes;
190
+ }
191
+ probes.podmanVersion = invokeSync(runner, 'podman', ['--version']);
192
+ const podmanRelevant = succeeded(probes.podmanVersion) || serverIsPodman(probes.dockerInfo);
193
+ if (!podmanRelevant)
194
+ return probes;
195
+ if (!succeeded(probes.dockerComposeVersion)) {
196
+ probes.dockerComposeStandaloneVersion = invokeSync(runner, 'docker-compose', ['version']);
197
+ }
198
+ if (platform === 'linux') {
199
+ probes.podmanInfo = invokeSync(runner, 'podman', ['info', '--format', 'json']);
200
+ }
201
+ else {
202
+ probes.podmanMachineInspect = invokeSync(runner, 'podman', ['machine', 'inspect', '--format', 'json']);
203
+ }
204
+ if (!succeeded(probes.dockerComposeVersion) && !succeeded(probes.dockerComposeStandaloneVersion)) {
205
+ probes.podmanComposeVersion = invokeSync(runner, 'podman', ['compose', 'version']);
206
+ }
207
+ return probes;
208
+ }
209
+ /** Async twin of runEngineProbes; accepts the frozen sync-or-async runner union. */
210
+ export async function runEngineProbesAsync(runner, platform = process.platform) {
211
+ const probes = emptyProbes();
212
+ probes.dockerVersion = await invokeAsync(runner, 'docker', ['--version']);
213
+ if (succeeded(probes.dockerVersion)) {
214
+ probes.dockerComposeVersion = await invokeAsync(runner, 'docker', ['compose', 'version']);
215
+ probes.dockerInfo = await invokeAsync(runner, 'docker', ['info', '--format', 'json']);
216
+ if (succeeded(probes.dockerInfo) && !serverIsPodman(probes.dockerInfo))
217
+ return probes;
218
+ }
219
+ probes.podmanVersion = await invokeAsync(runner, 'podman', ['--version']);
220
+ const podmanRelevant = succeeded(probes.podmanVersion) || serverIsPodman(probes.dockerInfo);
221
+ if (!podmanRelevant)
222
+ return probes;
223
+ if (!succeeded(probes.dockerComposeVersion)) {
224
+ probes.dockerComposeStandaloneVersion = await invokeAsync(runner, 'docker-compose', ['version']);
225
+ }
226
+ if (platform === 'linux') {
227
+ probes.podmanInfo = await invokeAsync(runner, 'podman', ['info', '--format', 'json']);
228
+ }
229
+ else {
230
+ probes.podmanMachineInspect = await invokeAsync(runner, 'podman', ['machine', 'inspect', '--format', 'json']);
231
+ }
232
+ if (!succeeded(probes.dockerComposeVersion) && !succeeded(probes.dockerComposeStandaloneVersion)) {
233
+ probes.podmanComposeVersion = await invokeAsync(runner, 'podman', ['compose', 'version']);
234
+ }
235
+ return probes;
236
+ }
237
+ const COMPOSE_V2_REMEDY = 'Install the Docker Compose v2 plugin or standalone `docker-compose` binary (https://docs.docker.com/compose/install/), then retry.';
238
+ /** The single three-check engine slice shared by preflight and doctor. */
239
+ export function engineCheckSlice(status) {
240
+ if (status.engine === 'docker') {
241
+ return [
242
+ {
243
+ id: 'docker-cli',
244
+ ok: true,
245
+ label: 'Docker CLI available',
246
+ message: 'Docker CLI available',
247
+ },
248
+ {
249
+ id: 'docker-compose',
250
+ ok: status.composeFront !== null,
251
+ label: 'Docker Compose plugin available',
252
+ message: status.composeFront ? 'Docker Compose plugin available' : 'The Docker Compose plugin is not available.',
253
+ ...(status.composeFront ? {} : { remedy: 'Install or enable Docker Compose: https://docs.docker.com/compose/install/' }),
254
+ },
255
+ {
256
+ id: 'docker-daemon',
257
+ ok: status.daemonReachable,
258
+ label: 'Docker daemon reachable',
259
+ message: status.daemonReachable ? 'Docker daemon reachable' : 'The Docker daemon is not reachable.',
260
+ ...(status.daemonReachable ? {} : { remedy: 'Start the Docker daemon (or Docker Desktop), then retry.' }),
261
+ },
262
+ ];
263
+ }
264
+ if (status.engine === 'podman') {
265
+ const machineCheck = status.machine
266
+ ? {
267
+ id: 'podman-machine',
268
+ ok: status.machine.state === 'running' && status.daemonReachable,
269
+ label: 'Podman machine running',
270
+ message: status.machine.state === 'running' && status.daemonReachable
271
+ ? 'Podman machine running'
272
+ : status.machine.state === 'absent'
273
+ ? 'A Podman machine has not been created.'
274
+ : 'The Podman machine is stopped.',
275
+ ...(status.machine.state === 'running' && status.daemonReachable
276
+ ? {}
277
+ : { remedy: 'Run `knowz up` to create or start the Podman machine, then retry.' }),
278
+ }
279
+ : {
280
+ id: 'podman-socket',
281
+ ok: status.daemonReachable,
282
+ label: 'Podman socket reachable',
283
+ message: status.daemonReachable ? 'Podman socket reachable' : 'The Podman socket is not reachable.',
284
+ ...(status.daemonReachable
285
+ ? {}
286
+ : { remedy: 'Run `systemctl --user enable --now podman.socket`, then retry `knowz up`.' }),
287
+ };
288
+ return [
289
+ { id: 'podman-cli', ok: true, label: 'Podman CLI available', message: 'Podman CLI available' },
290
+ {
291
+ id: 'compose-v2',
292
+ ok: status.composeFront !== null,
293
+ label: 'Docker Compose v2 available',
294
+ message: status.composeFront ? 'Docker Compose v2 available' : 'Docker Compose v2 is not available.',
295
+ ...(status.composeFront ? {} : { remedy: COMPOSE_V2_REMEDY }),
296
+ },
297
+ machineCheck,
298
+ ];
299
+ }
300
+ return [
301
+ {
302
+ id: 'docker-cli',
303
+ ok: false,
304
+ label: 'Docker CLI available',
305
+ message: 'Docker and Podman are not installed or are not available on PATH.',
306
+ remedy: 'Install Docker Desktop or Podman Desktop, then retry.',
307
+ },
308
+ {
309
+ id: 'compose-v2',
310
+ ok: false,
311
+ label: 'Docker Compose v2 available',
312
+ message: 'Docker Compose v2 is not available.',
313
+ remedy: COMPOSE_V2_REMEDY,
314
+ },
315
+ {
316
+ id: 'container-engine',
317
+ ok: false,
318
+ label: 'Container engine reachable',
319
+ message: 'No container engine is reachable.',
320
+ remedy: 'Start Docker Desktop or Podman Desktop, then retry.',
321
+ },
322
+ ];
323
+ }
324
+ export function loginCommandFor(status) {
325
+ if (status.engine !== 'podman')
326
+ return { command: 'docker' };
327
+ return {
328
+ command: 'podman',
329
+ ...(status.dockerHost ? { env: { DOCKER_HOST: status.dockerHost } } : {}),
330
+ };
331
+ }
332
+ async function runMachineCommand(runner, args) {
333
+ const result = await invokeAsync(runner, 'podman', args);
334
+ if (result.error || result.status !== 0) {
335
+ throw new Error('Podman machine setup failed. Run the same `podman machine` command manually, then retry `knowz up`.');
336
+ }
337
+ }
338
+ /** The only mutating engine operation; called exclusively by the async front door. */
339
+ export async function ensureEngineReady(status, runner, progress) {
340
+ if (status.engine !== 'podman' || !status.machine || status.machine.state === 'running')
341
+ return;
342
+ const name = status.machine.name ? [status.machine.name] : [];
343
+ if (status.machine.state === 'absent') {
344
+ await progress('Creating Podman machine (one-time, downloads a VM image)…', () => runMachineCommand(runner, ['machine', 'init', ...name]));
345
+ }
346
+ await progress('Starting Podman machine…', () => runMachineCommand(runner, ['machine', 'start', ...name]));
347
+ }
348
+ //# sourceMappingURL=container-engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container-engine.js","sourceRoot":"","sources":["../../src/lib/container-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Resolve knowledge content from (in priority order): --content, --file, or
3
+ * piped stdin. Returns undefined if none provided.
4
+ */
5
+ export declare function resolveContentInput(opts: {
6
+ content?: string;
7
+ file?: string;
8
+ }): Promise<string | undefined>;
9
+ //# sourceMappingURL=content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/lib/content.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAU9B"}