@knowzai/cli 0.4.0 → 0.5.1

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 (298) hide show
  1. package/README.md +68 -0
  2. package/assets/portable/releases.json +66 -2
  3. package/assets/portable/runtime-contract.json +2 -2
  4. package/assets/selfhosted/docker-compose.yml +8 -2
  5. package/assets/selfhosted/releases.json +130 -5
  6. package/bin/run.js +7 -2
  7. package/bin/wasm-runtime.js +27 -0
  8. package/dist/.tsbuildinfo +1 -1
  9. package/dist/base-command.d.ts +2 -0
  10. package/dist/base-command.d.ts.map +1 -1
  11. package/dist/base-command.js +11 -1
  12. package/dist/base-command.js.map +1 -1
  13. package/dist/commands/ask.d.ts.map +1 -1
  14. package/dist/commands/ask.js +2 -0
  15. package/dist/commands/ask.js.map +1 -1
  16. package/dist/commands/backup.d.ts +1 -0
  17. package/dist/commands/backup.d.ts.map +1 -1
  18. package/dist/commands/backup.js +29 -10
  19. package/dist/commands/backup.js.map +1 -1
  20. package/dist/commands/chat.d.ts +2 -1
  21. package/dist/commands/chat.d.ts.map +1 -1
  22. package/dist/commands/chat.js +10 -4
  23. package/dist/commands/chat.js.map +1 -1
  24. package/dist/commands/down.d.ts +14 -27
  25. package/dist/commands/down.d.ts.map +1 -1
  26. package/dist/commands/down.js +6 -31
  27. package/dist/commands/down.js.map +1 -1
  28. package/dist/commands/knowledge/amend.d.ts +2 -2
  29. package/dist/commands/knowledge/amend.d.ts.map +1 -1
  30. package/dist/commands/knowledge/amend.js +5 -0
  31. package/dist/commands/knowledge/amend.js.map +1 -1
  32. package/dist/commands/login.d.ts +4 -0
  33. package/dist/commands/login.d.ts.map +1 -1
  34. package/dist/commands/login.js +21 -2
  35. package/dist/commands/login.js.map +1 -1
  36. package/dist/commands/menu.js +1 -1
  37. package/dist/commands/menu.js.map +1 -1
  38. package/dist/commands/platform/destroy.d.ts +15 -5
  39. package/dist/commands/platform/destroy.d.ts.map +1 -1
  40. package/dist/commands/platform/destroy.js +6 -33
  41. package/dist/commands/platform/destroy.js.map +1 -1
  42. package/dist/commands/platform/doctor.d.ts +18 -3
  43. package/dist/commands/platform/doctor.d.ts.map +1 -1
  44. package/dist/commands/platform/doctor.js +4 -10
  45. package/dist/commands/platform/doctor.js.map +1 -1
  46. package/dist/commands/platform/down.d.ts +15 -15
  47. package/dist/commands/platform/down.d.ts.map +1 -1
  48. package/dist/commands/platform/down.js +4 -8
  49. package/dist/commands/platform/down.js.map +1 -1
  50. package/dist/commands/platform/logs.d.ts +15 -14
  51. package/dist/commands/platform/logs.d.ts.map +1 -1
  52. package/dist/commands/platform/logs.js +5 -16
  53. package/dist/commands/platform/logs.js.map +1 -1
  54. package/dist/commands/platform/reset.d.ts +16 -13
  55. package/dist/commands/platform/reset.d.ts.map +1 -1
  56. package/dist/commands/platform/reset.js +7 -36
  57. package/dist/commands/platform/reset.js.map +1 -1
  58. package/dist/commands/platform/setup.d.ts +1 -0
  59. package/dist/commands/platform/setup.d.ts.map +1 -1
  60. package/dist/commands/platform/setup.js +1 -1
  61. package/dist/commands/platform/setup.js.map +1 -1
  62. package/dist/commands/platform/status.d.ts +14 -16
  63. package/dist/commands/platform/status.d.ts.map +1 -1
  64. package/dist/commands/platform/status.js +4 -29
  65. package/dist/commands/platform/status.js.map +1 -1
  66. package/dist/commands/restore.d.ts +10 -1
  67. package/dist/commands/restore.d.ts.map +1 -1
  68. package/dist/commands/restore.js +56 -13
  69. package/dist/commands/restore.js.map +1 -1
  70. package/dist/commands/runtime/destroy.d.ts +29 -0
  71. package/dist/commands/runtime/destroy.d.ts.map +1 -0
  72. package/dist/commands/runtime/destroy.js +13 -0
  73. package/dist/commands/runtime/destroy.js.map +1 -0
  74. package/dist/commands/runtime/doctor.d.ts +27 -0
  75. package/dist/commands/runtime/doctor.d.ts.map +1 -0
  76. package/dist/commands/runtime/doctor.js +11 -0
  77. package/dist/commands/runtime/doctor.js.map +1 -0
  78. package/dist/commands/runtime/logs.d.ts +28 -0
  79. package/dist/commands/runtime/logs.d.ts.map +1 -0
  80. package/dist/commands/runtime/logs.js +12 -0
  81. package/dist/commands/runtime/logs.js.map +1 -0
  82. package/dist/commands/runtime/status.d.ts +27 -0
  83. package/dist/commands/runtime/status.d.ts.map +1 -0
  84. package/dist/commands/runtime/status.js +11 -0
  85. package/dist/commands/runtime/status.js.map +1 -0
  86. package/dist/commands/runtime/upgrade.d.ts +28 -0
  87. package/dist/commands/runtime/upgrade.d.ts.map +1 -0
  88. package/dist/commands/runtime/upgrade.js +12 -0
  89. package/dist/commands/runtime/upgrade.js.map +1 -0
  90. package/dist/commands/setup.d.ts +1 -0
  91. package/dist/commands/setup.d.ts.map +1 -1
  92. package/dist/commands/setup.js +1 -1
  93. package/dist/commands/transfer.js +1 -1
  94. package/dist/commands/transfer.js.map +1 -1
  95. package/dist/commands/up.d.ts +3 -11
  96. package/dist/commands/up.d.ts.map +1 -1
  97. package/dist/commands/up.js +48 -37
  98. package/dist/commands/up.js.map +1 -1
  99. package/dist/commands/whoami.js +1 -1
  100. package/dist/commands/whoami.js.map +1 -1
  101. package/dist/hooks/init/launch-menu.d.ts.map +1 -1
  102. package/dist/hooks/init/launch-menu.js +2 -0
  103. package/dist/hooks/init/launch-menu.js.map +1 -1
  104. package/dist/lib/anonymous-registry.d.ts +3 -0
  105. package/dist/lib/anonymous-registry.d.ts.map +1 -0
  106. package/dist/lib/anonymous-registry.js +25 -0
  107. package/dist/lib/anonymous-registry.js.map +1 -0
  108. package/dist/lib/async-process.d.ts +15 -0
  109. package/dist/lib/async-process.d.ts.map +1 -0
  110. package/dist/lib/async-process.js +145 -0
  111. package/dist/lib/async-process.js.map +1 -0
  112. package/dist/lib/backup-process.d.ts +4 -0
  113. package/dist/lib/backup-process.d.ts.map +1 -0
  114. package/dist/lib/backup-process.js +20 -0
  115. package/dist/lib/backup-process.js.map +1 -0
  116. package/dist/lib/brand.d.ts +25 -0
  117. package/dist/lib/brand.d.ts.map +1 -0
  118. package/dist/lib/brand.js +105 -0
  119. package/dist/lib/brand.js.map +1 -0
  120. package/dist/lib/chat.d.ts +1 -0
  121. package/dist/lib/chat.d.ts.map +1 -1
  122. package/dist/lib/chat.js +12 -3
  123. package/dist/lib/chat.js.map +1 -1
  124. package/dist/lib/compose-status.d.ts +14 -0
  125. package/dist/lib/compose-status.d.ts.map +1 -0
  126. package/dist/lib/compose-status.js +31 -0
  127. package/dist/lib/compose-status.js.map +1 -0
  128. package/dist/lib/container-engine.js +2 -2
  129. package/dist/lib/container-engine.js.map +1 -1
  130. package/dist/lib/local-engine-context.d.ts +16 -0
  131. package/dist/lib/local-engine-context.d.ts.map +1 -0
  132. package/dist/lib/local-engine-context.js +123 -0
  133. package/dist/lib/local-engine-context.js.map +1 -0
  134. package/dist/lib/local-mcp-server.d.ts.map +1 -1
  135. package/dist/lib/local-mcp-server.js +18 -2
  136. package/dist/lib/local-mcp-server.js.map +1 -1
  137. package/dist/lib/login-guided.d.ts.map +1 -1
  138. package/dist/lib/login-guided.js +2 -1
  139. package/dist/lib/login-guided.js.map +1 -1
  140. package/dist/lib/login.d.ts +3 -0
  141. package/dist/lib/login.d.ts.map +1 -1
  142. package/dist/lib/login.js +25 -5
  143. package/dist/lib/login.js.map +1 -1
  144. package/dist/lib/oci-registry-probe.d.ts +43 -0
  145. package/dist/lib/oci-registry-probe.d.ts.map +1 -0
  146. package/dist/lib/oci-registry-probe.js +110 -0
  147. package/dist/lib/oci-registry-probe.js.map +1 -0
  148. package/dist/lib/peer-command.d.ts.map +1 -1
  149. package/dist/lib/peer-command.js +3 -1
  150. package/dist/lib/peer-command.js.map +1 -1
  151. package/dist/lib/platform-acquisition.d.ts +27 -0
  152. package/dist/lib/platform-acquisition.d.ts.map +1 -0
  153. package/dist/lib/platform-acquisition.js +21 -0
  154. package/dist/lib/platform-acquisition.js.map +1 -0
  155. package/dist/lib/platform-backup.d.ts +1 -0
  156. package/dist/lib/platform-backup.d.ts.map +1 -1
  157. package/dist/lib/platform-backup.js +375 -157
  158. package/dist/lib/platform-backup.js.map +1 -1
  159. package/dist/lib/platform-command-shared.d.ts +2 -0
  160. package/dist/lib/platform-command-shared.d.ts.map +1 -1
  161. package/dist/lib/platform-command-shared.js +13 -5
  162. package/dist/lib/platform-command-shared.js.map +1 -1
  163. package/dist/lib/platform-edition.d.ts +3 -6
  164. package/dist/lib/platform-edition.d.ts.map +1 -1
  165. package/dist/lib/platform-edition.js +9 -17
  166. package/dist/lib/platform-edition.js.map +1 -1
  167. package/dist/lib/platform-frontdoor-runtime.d.ts.map +1 -1
  168. package/dist/lib/platform-frontdoor-runtime.js +42 -10
  169. package/dist/lib/platform-frontdoor-runtime.js.map +1 -1
  170. package/dist/lib/platform-frontdoor.d.ts +32 -5
  171. package/dist/lib/platform-frontdoor.d.ts.map +1 -1
  172. package/dist/lib/platform-frontdoor.js +249 -171
  173. package/dist/lib/platform-frontdoor.js.map +1 -1
  174. package/dist/lib/platform-image-admission.d.ts +16 -0
  175. package/dist/lib/platform-image-admission.d.ts.map +1 -0
  176. package/dist/lib/platform-image-admission.js +73 -0
  177. package/dist/lib/platform-image-admission.js.map +1 -0
  178. package/dist/lib/platform-image-source.d.ts.map +1 -1
  179. package/dist/lib/platform-image-source.js +2 -0
  180. package/dist/lib/platform-image-source.js.map +1 -1
  181. package/dist/lib/platform-lifecycle.d.ts +4 -0
  182. package/dist/lib/platform-lifecycle.d.ts.map +1 -1
  183. package/dist/lib/platform-lifecycle.js +42 -8
  184. package/dist/lib/platform-lifecycle.js.map +1 -1
  185. package/dist/lib/platform-onboarding.d.ts.map +1 -1
  186. package/dist/lib/platform-onboarding.js +1 -1
  187. package/dist/lib/platform-onboarding.js.map +1 -1
  188. package/dist/lib/platform-preflight.d.ts +6 -3
  189. package/dist/lib/platform-preflight.d.ts.map +1 -1
  190. package/dist/lib/platform-preflight.js +52 -19
  191. package/dist/lib/platform-preflight.js.map +1 -1
  192. package/dist/lib/platform-release-manifest.d.ts +6 -1
  193. package/dist/lib/platform-release-manifest.d.ts.map +1 -1
  194. package/dist/lib/platform-release-manifest.js +10 -0
  195. package/dist/lib/platform-release-manifest.js.map +1 -1
  196. package/dist/lib/platform-runtime.d.ts +5 -2
  197. package/dist/lib/platform-runtime.d.ts.map +1 -1
  198. package/dist/lib/platform-runtime.js +7 -40
  199. package/dist/lib/platform-runtime.js.map +1 -1
  200. package/dist/lib/portability-shared.d.ts +1 -1
  201. package/dist/lib/portability-shared.d.ts.map +1 -1
  202. package/dist/lib/portability-shared.js +6 -2
  203. package/dist/lib/portability-shared.js.map +1 -1
  204. package/dist/lib/portable-release-digests.d.ts +5 -0
  205. package/dist/lib/portable-release-digests.d.ts.map +1 -0
  206. package/dist/lib/portable-release-digests.js +53 -0
  207. package/dist/lib/portable-release-digests.js.map +1 -0
  208. package/dist/lib/release-pin-matrix.d.ts +29 -0
  209. package/dist/lib/release-pin-matrix.d.ts.map +1 -0
  210. package/dist/lib/release-pin-matrix.js +67 -0
  211. package/dist/lib/release-pin-matrix.js.map +1 -0
  212. package/dist/lib/repo-local-mcp-backend.d.ts +2 -5
  213. package/dist/lib/repo-local-mcp-backend.d.ts.map +1 -1
  214. package/dist/lib/repo-local-mcp-backend.js +61 -44
  215. package/dist/lib/repo-local-mcp-backend.js.map +1 -1
  216. package/dist/lib/runtime-backup-archive.d.ts +20 -0
  217. package/dist/lib/runtime-backup-archive.d.ts.map +1 -0
  218. package/dist/lib/runtime-backup-archive.js +269 -0
  219. package/dist/lib/runtime-backup-archive.js.map +1 -0
  220. package/dist/lib/runtime-command.d.ts +37 -0
  221. package/dist/lib/runtime-command.d.ts.map +1 -0
  222. package/dist/lib/runtime-command.js +50 -0
  223. package/dist/lib/runtime-command.js.map +1 -0
  224. package/dist/lib/runtime-discovery.d.ts +18 -0
  225. package/dist/lib/runtime-discovery.d.ts.map +1 -0
  226. package/dist/lib/runtime-discovery.js +56 -0
  227. package/dist/lib/runtime-discovery.js.map +1 -0
  228. package/dist/lib/runtime-lock.d.ts +3 -0
  229. package/dist/lib/runtime-lock.d.ts.map +1 -0
  230. package/dist/lib/runtime-lock.js +50 -0
  231. package/dist/lib/runtime-lock.js.map +1 -0
  232. package/dist/lib/runtime-operations.d.ts +98 -0
  233. package/dist/lib/runtime-operations.d.ts.map +1 -0
  234. package/dist/lib/runtime-operations.js +182 -0
  235. package/dist/lib/runtime-operations.js.map +1 -0
  236. package/dist/lib/runtime-provider.d.ts +17 -0
  237. package/dist/lib/runtime-provider.d.ts.map +1 -0
  238. package/dist/lib/runtime-provider.js +52 -0
  239. package/dist/lib/runtime-provider.js.map +1 -0
  240. package/dist/lib/runtime-status.d.ts +24 -0
  241. package/dist/lib/runtime-status.d.ts.map +1 -0
  242. package/dist/lib/runtime-status.js +128 -0
  243. package/dist/lib/runtime-status.js.map +1 -0
  244. package/dist/lib/selfhosted-backup.d.ts +37 -0
  245. package/dist/lib/selfhosted-backup.d.ts.map +1 -0
  246. package/dist/lib/selfhosted-backup.js +446 -0
  247. package/dist/lib/selfhosted-backup.js.map +1 -0
  248. package/dist/lib/selfhosted-keyring.d.ts +19 -0
  249. package/dist/lib/selfhosted-keyring.d.ts.map +1 -0
  250. package/dist/lib/selfhosted-keyring.js +193 -0
  251. package/dist/lib/selfhosted-keyring.js.map +1 -0
  252. package/dist/lib/selfhosted-lifecycle.d.ts +45 -7
  253. package/dist/lib/selfhosted-lifecycle.d.ts.map +1 -1
  254. package/dist/lib/selfhosted-lifecycle.js +214 -31
  255. package/dist/lib/selfhosted-lifecycle.js.map +1 -1
  256. package/dist/lib/selfhosted-login.d.ts +34 -0
  257. package/dist/lib/selfhosted-login.d.ts.map +1 -0
  258. package/dist/lib/selfhosted-login.js +116 -0
  259. package/dist/lib/selfhosted-login.js.map +1 -0
  260. package/dist/lib/selfhosted-readiness.d.ts +3 -0
  261. package/dist/lib/selfhosted-readiness.d.ts.map +1 -0
  262. package/dist/lib/selfhosted-readiness.js +24 -0
  263. package/dist/lib/selfhosted-readiness.js.map +1 -0
  264. package/dist/lib/setup-capabilities.d.ts +15 -0
  265. package/dist/lib/setup-capabilities.d.ts.map +1 -0
  266. package/dist/lib/setup-capabilities.js +21 -0
  267. package/dist/lib/setup-capabilities.js.map +1 -0
  268. package/dist/lib/setup-console.d.ts +8 -0
  269. package/dist/lib/setup-console.d.ts.map +1 -1
  270. package/dist/lib/setup-console.js +104 -74
  271. package/dist/lib/setup-console.js.map +1 -1
  272. package/dist/lib/setup-page.d.ts +12 -0
  273. package/dist/lib/setup-page.d.ts.map +1 -1
  274. package/dist/lib/setup-page.js +40 -22
  275. package/dist/lib/setup-page.js.map +1 -1
  276. package/dist/lib/setup-plan.d.ts +1 -0
  277. package/dist/lib/setup-plan.d.ts.map +1 -1
  278. package/dist/lib/setup-plan.js +3 -0
  279. package/dist/lib/setup-plan.js.map +1 -1
  280. package/dist/lib/setup-server.d.ts +11 -2
  281. package/dist/lib/setup-server.d.ts.map +1 -1
  282. package/dist/lib/setup-server.js +139 -28
  283. package/dist/lib/setup-server.js.map +1 -1
  284. package/dist/lib/ui.d.ts +3 -1
  285. package/dist/lib/ui.d.ts.map +1 -1
  286. package/dist/lib/ui.js +39 -7
  287. package/dist/lib/ui.js.map +1 -1
  288. package/dist/lib/up-result.d.ts +3 -0
  289. package/dist/lib/up-result.d.ts.map +1 -1
  290. package/dist/lib/up-result.js.map +1 -1
  291. package/dist/menu/run.js +1 -1
  292. package/dist/menu/run.js.map +1 -1
  293. package/dist/menu/should-launch.d.ts +0 -14
  294. package/dist/menu/should-launch.d.ts.map +1 -1
  295. package/dist/menu/should-launch.js +5 -1
  296. package/dist/menu/should-launch.js.map +1 -1
  297. package/oclif.manifest.json +5490 -3263
  298. package/package.json +14 -11
package/README.md ADDED
@@ -0,0 +1,68 @@
1
+ # Knowz CLI
2
+
3
+ Connect to Knowz endpoints, work with knowledge from your terminal, or start your
4
+ own lightweight, open-source Knowz installation with guided browser setup.
5
+
6
+ ## Install
7
+
8
+ This 0.5.0 candidate is distributed on the preview channel. Requires **Node.js 22
9
+ or newer**:
10
+
11
+ ```sh
12
+ npm install -g @knowzai/cli@0.5.0
13
+ knowz --version
14
+ ```
15
+
16
+ Native packages bundle Node and are available through the
17
+ [public CLI releases](https://github.com/knowz-io/knowz-cli/releases).
18
+ Check each release's operating-system support, checksum and signing status.
19
+
20
+ ## Start selfhosted
21
+
22
+ Start a local Docker engine with Compose, then run:
23
+
24
+ ```sh
25
+ knowz up
26
+ ```
27
+
28
+ The browser guides you through configuration and first sign-in. Selfhosted uses
29
+ public images and requires no Knowz license or GitHub login. Replace the temporary
30
+ administrator password and finish connecting the CLI when prompted. Without an AI
31
+ provider, you can still store and browse knowledge; AI answers require a configured
32
+ provider. Saved provider changes take effect after the indicated restart.
33
+
34
+ ```sh
35
+ knowz runtime status
36
+ knowz down
37
+ knowz up
38
+ knowz backup --encrypt --out ./knowz-backup.enc
39
+ ```
40
+
41
+ Stopping preserves your data. Store backups and their passphrases separately.
42
+ Use `knowz restore --help` for checked recovery into a stopped installation.
43
+
44
+ ## Connect to an endpoint
45
+
46
+ Use `knowz login` for the hosted platform. Named profiles keep endpoint credentials
47
+ separate. For an existing selfhosted endpoint:
48
+
49
+ ```sh
50
+ knowz login --self-hosted --api-url https://knowz.example.com --profile my-knowz
51
+ knowz vault list --profile my-knowz
52
+ knowz search "project notes" --profile my-knowz
53
+ ```
54
+
55
+ Run `knowz --help` and `knowz <command> --help` for knowledge creation, attachments,
56
+ chat, local indexing, encryption, synchronization and runtime management.
57
+
58
+ ## Editions and source
59
+
60
+ [Knowz Selfhosted](https://github.com/knowz-io/knowz-selfhosted-source) is the
61
+ Apache-2.0 open-source edition. The proprietary portable platform is a separate
62
+ contracted offering selected explicitly with `--edition portable`. New proprietary
63
+ downloads and updates require a valid installation grant; a SaaS subscription or
64
+ registry login alone is insufficient. Public selfhosted setup remains independent.
65
+
66
+ The [released CLI skills](https://github.com/knowz-io/knowz-cli/releases) include
67
+ matching command inventories for agents. Use the skill for your installed CLI
68
+ version.
@@ -1,5 +1,60 @@
1
1
  {
2
2
  "releases": [
3
+ {
4
+ "version": "0.47.8",
5
+ "flavors": [
6
+ "portable",
7
+ "portable-gcp"
8
+ ],
9
+ "releasedAt": "2026-09-19T19:21:24Z",
10
+ "minCliVersion": null,
11
+ "notes": "Weekend MVP: private sites default + soft-accept uploads + Free audio-only (#1015); HF email brand (#1016); AGW WAF chunk-cap (#1014)",
12
+ "digests": null
13
+ },
14
+ {
15
+ "version": "0.47.6",
16
+ "flavors": [
17
+ "portable",
18
+ "portable-gcp"
19
+ ],
20
+ "releasedAt": "2026-09-19T03:27:04Z",
21
+ "minCliVersion": null,
22
+ "notes": "HF Q&A quality must-fixes MF1\u2013MF8 (#1010)",
23
+ "digests": null
24
+ },
25
+ {
26
+ "version": "0.47.5",
27
+ "flavors": [
28
+ "portable",
29
+ "portable-gcp"
30
+ ],
31
+ "releasedAt": "2026-09-18T15:24:59Z",
32
+ "minCliVersion": null,
33
+ "notes": null,
34
+ "digests": null
35
+ },
36
+ {
37
+ "version": "0.47.0",
38
+ "flavors": [
39
+ "portable",
40
+ "portable-gcp"
41
+ ],
42
+ "releasedAt": "2026-09-12T18:34:28Z",
43
+ "minCliVersion": null,
44
+ "notes": null,
45
+ "digests": null
46
+ },
47
+ {
48
+ "version": "0.46.0",
49
+ "flavors": [
50
+ "portable",
51
+ "portable-gcp"
52
+ ],
53
+ "releasedAt": "2026-09-08T20:40:06Z",
54
+ "minCliVersion": null,
55
+ "notes": null,
56
+ "digests": null
57
+ },
3
58
  {
4
59
  "version": "0.44.1",
5
60
  "flavors": [
@@ -8,8 +63,17 @@
8
63
  ],
9
64
  "releasedAt": "2026-09-04T05:26:59Z",
10
65
  "minCliVersion": "0.3.0",
11
- "notes": "Interview Studio v1, guest answer flow, honest knowledge dates. Supersedes v0.44.0 (web image build failed). Commercial grant required for portable pull.",
12
- "digests": null
66
+ "notes": "Interview Studio v1, guest answer flow, honest knowledge dates. Supersedes v0.44.0 (web image build failed). Commercial grant required for portable pull. Exact seven-component manifest bodies and linux/amd64 availability verified on2026-09-07; anonymous GHCR artifact access denied.",
67
+ "digests": {
68
+ "api": "sha256:625603c64ddfe8ab411fd6ce314fbc1f4881e6ea7018c68dab6bdf5996c8d2cb",
69
+ "api-gcp": "sha256:190afad819f6978ca6301b84e316a038e7b1ba835e5197bfbd72ef5bf77b3041",
70
+ "worker": "sha256:8210c4ba98281202cbec9a0bce91bc8c13a1079c87be677ab3d60bd4539998c0",
71
+ "worker-gcp": "sha256:2cdecd0dd4efd70a0a89865dffed31684e172eedd194acaa333239d4f657ca8e",
72
+ "web": "sha256:382efff53f60bbf073c18eb1eec63c6af62cea2f42c5a74d1b81ec36a8c5c048",
73
+ "mcp": "sha256:7c9e2f5d6f613b77d7b32d5a75f3e613f12cfc36b5c27ed3608435396ca43f5b",
74
+ "public-site": "sha256:f2eee97faa8c41b9505d80c42ee8d5180bbdd65ddfedfa33af4ad79fac194fea"
75
+ },
76
+ "status": "complete"
13
77
  },
14
78
  {
15
79
  "version": "0.43.0",
@@ -128,8 +128,8 @@
128
128
  "realtime-progress": { "status": "full", "transport": "worker-api-redis-sse" },
129
129
  "entity-extraction": { "status": "degraded", "behavior": "terminal completion without structured entities" },
130
130
  "face-recognition": { "status": "degraded", "behavior": "job consumed without recognition output" },
131
- "graph-sync": { "status": "degraded", "behavior": "job consumed without graph output" },
132
- "git-sync": { "status": "unavailable" },
131
+ "graph-sync": { "status": "full", "queues": ["graph-sync"] },
132
+ "git-sync": { "status": "full", "queues": ["git-sync", "git-sync-batch"] },
133
133
  "engagement-jobs": { "status": "unavailable" },
134
134
  "ingestion-jobs": { "status": "unavailable" },
135
135
  "sequence-execution": { "status": "unavailable" },
@@ -13,8 +13,6 @@ services:
13
13
  POSTGRES_USER: knowz
14
14
  POSTGRES_PASSWORD: "${POSTGRES_PASSWORD:?POSTGRES_PASSWORD must be set in .env}"
15
15
  POSTGRES_DB: knowz_selfhosted
16
- ports:
17
- - "127.0.0.1:${DB_PORT:-5432}:5432"
18
16
  volumes:
19
17
  - knowz-db-data:/var/lib/postgresql/data
20
18
  healthcheck:
@@ -32,8 +30,12 @@ services:
32
30
  db:
33
31
  condition: service_healthy
34
32
  environment:
33
+ AllowedHosts: "${ALLOWED_HOSTS:-localhost;127.0.0.1;[::1];api}"
35
34
  ConnectionStrings__McpDb: "Host=db;Port=5432;Database=knowz_selfhosted;Username=knowz;Password=${POSTGRES_PASSWORD:?POSTGRES_PASSWORD must be set}"
36
35
  Database__AutoMigrate: "true"
36
+ KNOWZ_AI_CONFIG_UPDATED_AT: "${KNOWZ_AI_CONFIG_UPDATED_AT:-}"
37
+ KNOWZ_AI_DISABLED: "${KNOWZ_AI_DISABLED:-false}"
38
+ DataProtection__KeysPath: "/data/keys"
37
39
  SelfHosted__JwtSecret: "${JWT_SECRET:?JWT_SECRET must be set in .env (>=32 chars)}"
38
40
  SelfHosted__SuperAdminUsername: "${ADMIN_USERNAME:?ADMIN_USERNAME must be set in .env}"
39
41
  SelfHosted__SuperAdminPassword: "${ADMIN_PASSWORD:?ADMIN_PASSWORD must be set in .env}"
@@ -62,6 +64,8 @@ services:
62
64
  KnowzPlatform__ApiKey: "${KNOWZ_PLATFORM_APIKEY:-}"
63
65
  volumes:
64
66
  - knowz-file-storage:/data/files
67
+ - knowz-protected-keys:/data/keys
68
+ - knowz-protected-keys:/home/app/.aspnet/DataProtection-Keys
65
69
  extra_hosts:
66
70
  - "host.docker.internal:host-gateway"
67
71
  healthcheck:
@@ -87,6 +91,7 @@ services:
87
91
  api:
88
92
  condition: service_healthy
89
93
  environment:
94
+ AllowedHosts: "${ALLOWED_HOSTS:-localhost;127.0.0.1;[::1];mcp}"
90
95
  Knowz__BaseUrl: "${MCP_API_URL:-http://api:8080}"
91
96
  MCP__BackendMode: "${MCP_BACKEND_MODE:-selfhosted}"
92
97
  MCP__ApiKeyValidationEndpoint: "${MCP_API_KEY_VALIDATION_ENDPOINT:-/api/vaults}"
@@ -102,3 +107,4 @@ services:
102
107
  volumes:
103
108
  knowz-db-data:
104
109
  knowz-file-storage:
110
+ knowz-protected-keys:
@@ -1,22 +1,143 @@
1
1
  {
2
2
  "releases": [
3
+ {
4
+ "version": "0.17.0",
5
+ "status": "complete",
6
+ "flavors": [
7
+ "selfhosted"
8
+ ],
9
+ "digests": {
10
+ "api": "sha256:9baa070fff55d6ea031708433680b24a76e7b490620f49f8ee3b47d758ec0d78",
11
+ "web": "sha256:c041ecc61b33982391502c9203a40ef63653aa255cc105d931f6674c27e6164d",
12
+ "mcp": "sha256:00bd12459844b5bc84ec4bca335c789a7a4a7280f87bbd51ede07f5cc88c5095"
13
+ },
14
+ "platforms": {
15
+ "api": [
16
+ "linux/amd64",
17
+ "linux/arm64"
18
+ ],
19
+ "web": [
20
+ "linux/amd64",
21
+ "linux/arm64"
22
+ ],
23
+ "mcp": [
24
+ "linux/amd64",
25
+ "linux/arm64"
26
+ ]
27
+ },
28
+ "runtime": {
29
+ "database": "postgres",
30
+ "composeAsset": "docker-compose.yml"
31
+ },
32
+ "releasedAt": "2026-09-19T23:09:10Z",
33
+ "minCliVersion": "0.5.1",
34
+ "notes": "Verified public API/web/MCP image set. Anydoc-first local document conversion, OpenAI Apps challenge/MCP tool annotations, destinations live-connect UI parity, vault/tenant import-export fidelity and MCP plan-gate 402 surfacing. Exact released-image acceptance is required before CLI stable promotion."
35
+ },
36
+ {
37
+ "version": "0.16.2",
38
+ "status": "complete",
39
+ "flavors": [
40
+ "selfhosted"
41
+ ],
42
+ "digests": {
43
+ "api": "sha256:f1f9682bb1c6634f02d3fa3a5dd515e11ffb55b8203c14fc340e3aa50d086b88",
44
+ "web": "sha256:b12cee9b670e357bfeaeca21851fcf0047cefdf57c57cf20d2f84aa711dae38b",
45
+ "mcp": "sha256:64df9eb93c31a77a252ae6ffa45e03cfe8b8e10ad1bcad5684f9ba4ffc4a2c3d"
46
+ },
47
+ "platforms": {
48
+ "api": [
49
+ "linux/amd64",
50
+ "linux/arm64"
51
+ ],
52
+ "web": [
53
+ "linux/amd64",
54
+ "linux/arm64"
55
+ ],
56
+ "mcp": [
57
+ "linux/amd64",
58
+ "linux/arm64"
59
+ ]
60
+ },
61
+ "runtime": {
62
+ "database": "postgres",
63
+ "composeAsset": "docker-compose.yml"
64
+ },
65
+ "releasedAt": "2026-09-07T18:55:51Z",
66
+ "minCliVersion": "0.5.0",
67
+ "notes": "Verified public API/web/MCP image set. Preserves unsaved Settings drafts through browser navigation and retains the 0.16.1 API-key, provider, attachment and recovery fixes. Exact released-image acceptance is required before CLI stable promotion."
68
+ },
69
+ {
70
+ "version": "0.16.1",
71
+ "status": "complete",
72
+ "flavors": [
73
+ "selfhosted"
74
+ ],
75
+ "digests": {
76
+ "api": "sha256:0d2578a29b1be1d4f06fd7b9f07b94928ba4d08b2c5f47d9fce4e98d9dfa85cc",
77
+ "web": "sha256:5d5df632dc40ae459ffe8692eaaec89001d276068ca9cf0fffac28b39dc39426",
78
+ "mcp": "sha256:f8c2a72658abf409d1065d8d9c520fc5527395d2c0b5a05d53af133d615f55a0"
79
+ },
80
+ "platforms": {
81
+ "api": [
82
+ "linux/amd64",
83
+ "linux/arm64"
84
+ ],
85
+ "web": [
86
+ "linux/amd64",
87
+ "linux/arm64"
88
+ ],
89
+ "mcp": [
90
+ "linux/amd64",
91
+ "linux/arm64"
92
+ ]
93
+ },
94
+ "runtime": {
95
+ "database": "postgres",
96
+ "composeAsset": "docker-compose.yml"
97
+ },
98
+ "releasedAt": "2026-09-07T16:54:11Z",
99
+ "minCliVersion": "0.5.0",
100
+ "notes": "Verified public API/web/MCP image set. Repairs API-key tenant reads and attachments, provider configuration across restart, and browser recovery. Exact released-image acceptance is required before CLI stable promotion."
101
+ },
3
102
  {
4
103
  "version": "0.16.0",
5
104
  "status": "complete",
6
- "flavors": ["selfhosted"],
105
+ "flavors": [
106
+ "selfhosted"
107
+ ],
7
108
  "releasedAt": "2026-09-04T05:28:39Z",
8
109
  "minCliVersion": "0.4.0",
9
110
  "notes": "Native PostgreSQL 16 + pgvector. Limited edition (honesty). MCP 26/36. Azure deploy not offered. File-sync uses PlatformConnection credentials.",
10
- "digests": null,
111
+ "digests": {
112
+ "api": "sha256:96be758eaede90e472d33ea4a3a1231893d5075a4ef4426d6f460a7cfc7c35ab",
113
+ "web": "sha256:ed85e3bd68dcceac2100afbd82426e54e67a88f59498b820b2f847d5054b02e7",
114
+ "mcp": "sha256:0a5a542048506c66ed16455d6e97b0c762be6f10ce0f1c530457743775641efc"
115
+ },
11
116
  "runtime": {
12
117
  "database": "postgres",
13
118
  "composeAsset": "docker-compose.yml"
119
+ },
120
+ "platforms": {
121
+ "api": [
122
+ "linux/amd64",
123
+ "linux/arm64"
124
+ ],
125
+ "web": [
126
+ "linux/amd64",
127
+ "linux/arm64"
128
+ ],
129
+ "mcp": [
130
+ "linux/amd64",
131
+ "linux/arm64"
132
+ ]
14
133
  }
15
134
  },
16
135
  {
17
136
  "version": "0.15.1",
18
137
  "status": "complete",
19
- "flavors": ["selfhosted"],
138
+ "flavors": [
139
+ "selfhosted"
140
+ ],
20
141
  "releasedAt": "2026-09-01T12:49:00Z",
21
142
  "minCliVersion": null,
22
143
  "notes": "User-role mothership connect/browse/pull. Anonymous GHCR triple.",
@@ -30,7 +151,9 @@
30
151
  {
31
152
  "version": "0.15.0",
32
153
  "status": "complete",
33
- "flavors": ["selfhosted"],
154
+ "flavors": [
155
+ "selfhosted"
156
+ ],
34
157
  "releasedAt": "2026-09-01T12:15:00Z",
35
158
  "minCliVersion": null,
36
159
  "notes": "Look/feel restyle, session decrypt, fail-closed compose, vite-only web image. First complete public GHCR triple since the split 0.14.x tags.",
@@ -44,7 +167,9 @@
44
167
  {
45
168
  "version": "0.14.11",
46
169
  "status": "incomplete",
47
- "flavors": ["selfhosted"],
170
+ "flavors": [
171
+ "selfhosted"
172
+ ],
48
173
  "releasedAt": "2026-05-28T00:00:00Z",
49
174
  "minCliVersion": null,
50
175
  "notes": "Incomplete GHCR set: api:0.14.11 exists; web/mcp 0.14.11 404 (web/mcp last published at 0.14.10). Do not pin.",
package/bin/run.js CHANGED
@@ -1,4 +1,9 @@
1
1
  #!/usr/bin/env node
2
- import { execute } from '@oclif/core';
2
+ import { ensureBaselineWasmRuntime } from './wasm-runtime.js';
3
3
 
4
- await execute({ dir: import.meta.url });
4
+ if (!(await ensureBaselineWasmRuntime())) {
5
+ const { applyCliBrandFromProcess } = await import('../dist/lib/brand.js');
6
+ const { execute } = await import('@oclif/core');
7
+ applyCliBrandFromProcess();
8
+ await execute({ dir: import.meta.url });
9
+ }
@@ -0,0 +1,27 @@
1
+ import { spawn } from 'node:child_process';
2
+
3
+ // Large mixed-grammar workloads can exhaust V8's optimizing-WASM compiler zone.
4
+ // Set the flag before VM startup: changing V8 flags after startup is unreliable.
5
+ // Liftoff retains baseline WASM compilation and normal JavaScript JIT execution.
6
+ export async function ensureBaselineWasmRuntime() {
7
+ if (process.execArgv.includes('--liftoff-only')) return false;
8
+
9
+ const child = spawn(process.execPath,
10
+ [...process.execArgv, '--liftoff-only', ...process.argv.slice(1)],
11
+ { stdio: 'inherit', env: process.env });
12
+ const signals = ['SIGINT', 'SIGTERM', ...(process.platform === 'win32' ? [] : ['SIGHUP'])];
13
+ const forwarders = new Map(signals.map(signal => [signal, () => child.kill(signal)]));
14
+ for (const [signal, forward] of forwarders) process.on(signal, forward);
15
+ try {
16
+ const { code, signal } = await new Promise((resolve, reject) => {
17
+ child.once('error', reject);
18
+ child.once('exit', (code, signal) => resolve({ code, signal }));
19
+ });
20
+ for (const [name, forward] of forwarders) process.removeListener(name, forward);
21
+ if (signal) process.kill(process.pid, signal);
22
+ else process.exitCode = code ?? 1;
23
+ } finally {
24
+ for (const [signal, forward] of forwarders) process.removeListener(signal, forward);
25
+ }
26
+ return true;
27
+ }