@prismer/sdk 2.0.8 → 2.2.55

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 (387) hide show
  1. package/README.md +13 -7
  2. package/dist/chunk-R7POPVJR.mjs +35 -0
  3. package/dist/cli.js +59653 -8452
  4. package/dist/index.d.mts +716 -229
  5. package/dist/index.d.ts +716 -229
  6. package/dist/index.js +307 -23
  7. package/dist/index.mjs +306 -23
  8. package/dist/katex-OIP2Q473.mjs +14515 -0
  9. package/dist/pkf-schema.json +35 -0
  10. package/dist/pkf.d.mts +1 -0
  11. package/dist/pkf.d.ts +1 -0
  12. package/dist/pkf.js +48370 -0
  13. package/dist/pkf.mjs +33683 -0
  14. package/node_modules/@clack/core/CHANGELOG.md +249 -0
  15. package/node_modules/@clack/core/LICENSE +9 -0
  16. package/node_modules/@clack/core/README.md +22 -0
  17. package/node_modules/@clack/core/dist/index.cjs +15 -0
  18. package/node_modules/@clack/core/dist/index.cjs.map +1 -0
  19. package/node_modules/@clack/core/dist/index.d.cts +209 -0
  20. package/node_modules/@clack/core/dist/index.d.mts +209 -0
  21. package/node_modules/@clack/core/dist/index.d.ts +209 -0
  22. package/node_modules/@clack/core/dist/index.mjs +15 -0
  23. package/node_modules/@clack/core/dist/index.mjs.map +1 -0
  24. package/node_modules/@clack/core/package.json +62 -0
  25. package/node_modules/@clack/prompts/CHANGELOG.md +374 -0
  26. package/node_modules/@clack/prompts/LICENSE +9 -0
  27. package/node_modules/@clack/prompts/README.md +191 -0
  28. package/node_modules/@clack/prompts/dist/index.cjs +80 -0
  29. package/node_modules/@clack/prompts/dist/index.cjs.map +1 -0
  30. package/node_modules/@clack/prompts/dist/index.d.cts +151 -0
  31. package/node_modules/@clack/prompts/dist/index.d.mts +151 -0
  32. package/node_modules/@clack/prompts/dist/index.d.ts +151 -0
  33. package/node_modules/@clack/prompts/dist/index.mjs +80 -0
  34. package/node_modules/@clack/prompts/dist/index.mjs.map +1 -0
  35. package/node_modules/@clack/prompts/package.json +61 -0
  36. package/node_modules/@iarna/toml/LICENSE +14 -0
  37. package/node_modules/@iarna/toml/README.md +301 -0
  38. package/node_modules/@iarna/toml/index.d.ts +57 -0
  39. package/node_modules/@iarna/toml/lib/create-date.js +23 -0
  40. package/node_modules/@iarna/toml/lib/create-datetime-float.js +24 -0
  41. package/node_modules/@iarna/toml/lib/create-datetime.js +10 -0
  42. package/node_modules/@iarna/toml/lib/create-time.js +22 -0
  43. package/node_modules/@iarna/toml/lib/format-num.js +6 -0
  44. package/node_modules/@iarna/toml/lib/parser-debug.js +60 -0
  45. package/node_modules/@iarna/toml/lib/parser.js +127 -0
  46. package/node_modules/@iarna/toml/lib/toml-parser.js +1379 -0
  47. package/node_modules/@iarna/toml/package.json +82 -0
  48. package/node_modules/@iarna/toml/parse-async.js +30 -0
  49. package/node_modules/@iarna/toml/parse-pretty-error.js +33 -0
  50. package/node_modules/@iarna/toml/parse-stream.js +80 -0
  51. package/node_modules/@iarna/toml/parse-string.js +18 -0
  52. package/node_modules/@iarna/toml/parse.js +5 -0
  53. package/node_modules/@iarna/toml/stringify.js +296 -0
  54. package/node_modules/@iarna/toml/toml.js +3 -0
  55. package/node_modules/@prismer/aip-sdk/README.md +36 -0
  56. package/node_modules/@prismer/aip-sdk/dist/cli/chunk-LIJDUCHB.js +104 -0
  57. package/node_modules/@prismer/aip-sdk/dist/cli/chunk-QUQXZ2LD.js +99 -0
  58. package/node_modules/@prismer/aip-sdk/dist/cli/credentials-5GGZEJFG.js +56 -0
  59. package/node_modules/@prismer/aip-sdk/dist/cli/delegation-3J35VGBZ.js +64 -0
  60. package/node_modules/@prismer/aip-sdk/dist/cli/identity-LXVWKSVB.js +7 -0
  61. package/node_modules/@prismer/aip-sdk/dist/cli/index.js +259 -0
  62. package/node_modules/@prismer/aip-sdk/dist/cli/resolver-TGOPKW52.js +26 -0
  63. package/node_modules/@prismer/aip-sdk/dist/index.cjs +368 -0
  64. package/node_modules/@prismer/aip-sdk/dist/index.d.cts +174 -0
  65. package/node_modules/@prismer/aip-sdk/dist/index.d.ts +174 -0
  66. package/node_modules/@prismer/aip-sdk/dist/index.js +322 -0
  67. package/node_modules/@prismer/aip-sdk/package.json +53 -0
  68. package/node_modules/ansi-regex/index.d.ts +37 -0
  69. package/node_modules/ansi-regex/index.js +10 -0
  70. package/node_modules/ansi-regex/license +9 -0
  71. package/node_modules/ansi-regex/package.json +55 -0
  72. package/node_modules/ansi-regex/readme.md +78 -0
  73. package/node_modules/camelcase/index.d.ts +63 -0
  74. package/node_modules/camelcase/index.js +76 -0
  75. package/node_modules/camelcase/license +9 -0
  76. package/node_modules/camelcase/package.json +43 -0
  77. package/node_modules/camelcase/readme.md +99 -0
  78. package/node_modules/cliui/LICENSE.txt +14 -0
  79. package/node_modules/cliui/README.md +115 -0
  80. package/node_modules/cliui/index.js +354 -0
  81. package/node_modules/cliui/package.json +65 -0
  82. package/node_modules/color-convert/LICENSE +21 -0
  83. package/node_modules/color-convert/README.md +68 -0
  84. package/node_modules/color-convert/conversions.js +839 -0
  85. package/node_modules/color-convert/index.js +81 -0
  86. package/node_modules/color-convert/package.json +48 -0
  87. package/node_modules/color-convert/route.js +97 -0
  88. package/node_modules/color-name/LICENSE +8 -0
  89. package/node_modules/color-name/README.md +11 -0
  90. package/node_modules/color-name/index.js +152 -0
  91. package/node_modules/color-name/package.json +28 -0
  92. package/node_modules/commander/LICENSE +22 -0
  93. package/node_modules/commander/Readme.md +1157 -0
  94. package/node_modules/commander/esm.mjs +16 -0
  95. package/node_modules/commander/index.js +24 -0
  96. package/node_modules/commander/lib/argument.js +149 -0
  97. package/node_modules/commander/lib/command.js +2509 -0
  98. package/node_modules/commander/lib/error.js +39 -0
  99. package/node_modules/commander/lib/help.js +520 -0
  100. package/node_modules/commander/lib/option.js +330 -0
  101. package/node_modules/commander/lib/suggestSimilar.js +101 -0
  102. package/node_modules/commander/package-support.json +16 -0
  103. package/node_modules/commander/package.json +84 -0
  104. package/node_modules/commander/typings/esm.d.mts +3 -0
  105. package/node_modules/commander/typings/index.d.ts +969 -0
  106. package/node_modules/decamelize/index.js +13 -0
  107. package/node_modules/decamelize/license +21 -0
  108. package/node_modules/decamelize/package.json +38 -0
  109. package/node_modules/decamelize/readme.md +48 -0
  110. package/node_modules/dijkstrajs/.travis.yml +4 -0
  111. package/node_modules/dijkstrajs/CONTRIBUTING.md +8 -0
  112. package/node_modules/dijkstrajs/LICENSE.md +19 -0
  113. package/node_modules/dijkstrajs/README.md +18 -0
  114. package/node_modules/dijkstrajs/dijkstra.js +165 -0
  115. package/node_modules/dijkstrajs/package.json +60 -0
  116. package/node_modules/dijkstrajs/test/dijkstra.test.js +96 -0
  117. package/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  118. package/node_modules/emoji-regex/README.md +73 -0
  119. package/node_modules/emoji-regex/es2015/index.js +6 -0
  120. package/node_modules/emoji-regex/es2015/text.js +6 -0
  121. package/node_modules/emoji-regex/index.d.ts +23 -0
  122. package/node_modules/emoji-regex/index.js +6 -0
  123. package/node_modules/emoji-regex/package.json +50 -0
  124. package/node_modules/emoji-regex/text.js +6 -0
  125. package/node_modules/find-up/index.d.ts +137 -0
  126. package/node_modules/find-up/index.js +89 -0
  127. package/node_modules/find-up/license +9 -0
  128. package/node_modules/find-up/package.json +53 -0
  129. package/node_modules/find-up/readme.md +156 -0
  130. package/node_modules/get-caller-file/LICENSE.md +6 -0
  131. package/node_modules/get-caller-file/README.md +41 -0
  132. package/node_modules/get-caller-file/index.d.ts +2 -0
  133. package/node_modules/get-caller-file/index.js +22 -0
  134. package/node_modules/get-caller-file/index.js.map +1 -0
  135. package/node_modules/get-caller-file/package.json +42 -0
  136. package/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
  137. package/node_modules/is-fullwidth-code-point/index.js +50 -0
  138. package/node_modules/is-fullwidth-code-point/license +9 -0
  139. package/node_modules/is-fullwidth-code-point/package.json +42 -0
  140. package/node_modules/is-fullwidth-code-point/readme.md +39 -0
  141. package/node_modules/locate-path/index.d.ts +83 -0
  142. package/node_modules/locate-path/index.js +65 -0
  143. package/node_modules/locate-path/license +9 -0
  144. package/node_modules/locate-path/package.json +45 -0
  145. package/node_modules/locate-path/readme.md +122 -0
  146. package/node_modules/p-locate/index.d.ts +64 -0
  147. package/node_modules/p-locate/index.js +52 -0
  148. package/node_modules/p-locate/license +9 -0
  149. package/node_modules/p-locate/node_modules/p-limit/index.d.ts +38 -0
  150. package/node_modules/p-locate/node_modules/p-limit/index.js +57 -0
  151. package/node_modules/p-locate/node_modules/p-limit/license +9 -0
  152. package/node_modules/p-locate/node_modules/p-limit/package.json +52 -0
  153. package/node_modules/p-locate/node_modules/p-limit/readme.md +101 -0
  154. package/node_modules/p-locate/package.json +53 -0
  155. package/node_modules/p-locate/readme.md +90 -0
  156. package/node_modules/p-try/index.d.ts +39 -0
  157. package/node_modules/p-try/index.js +9 -0
  158. package/node_modules/p-try/license +9 -0
  159. package/node_modules/p-try/package.json +42 -0
  160. package/node_modules/p-try/readme.md +58 -0
  161. package/node_modules/path-exists/index.d.ts +28 -0
  162. package/node_modules/path-exists/index.js +23 -0
  163. package/node_modules/path-exists/license +9 -0
  164. package/node_modules/path-exists/package.json +39 -0
  165. package/node_modules/path-exists/readme.md +52 -0
  166. package/node_modules/picocolors/LICENSE +15 -0
  167. package/node_modules/picocolors/README.md +21 -0
  168. package/node_modules/picocolors/package.json +25 -0
  169. package/node_modules/picocolors/picocolors.browser.js +4 -0
  170. package/node_modules/picocolors/picocolors.d.ts +5 -0
  171. package/node_modules/picocolors/picocolors.js +75 -0
  172. package/node_modules/picocolors/types.d.ts +51 -0
  173. package/node_modules/pngjs/.eslintignore +2 -0
  174. package/node_modules/pngjs/.eslintrc.json +19 -0
  175. package/node_modules/pngjs/.prettierignore +3 -0
  176. package/node_modules/pngjs/LICENSE +20 -0
  177. package/node_modules/pngjs/README.md +429 -0
  178. package/node_modules/pngjs/browser.js +16096 -0
  179. package/node_modules/pngjs/coverage/lcov-report/base.css +354 -0
  180. package/node_modules/pngjs/coverage/lcov-report/bitmapper.js.html +881 -0
  181. package/node_modules/pngjs/coverage/lcov-report/bitpacker.js.html +554 -0
  182. package/node_modules/pngjs/coverage/lcov-report/block-navigation.js +77 -0
  183. package/node_modules/pngjs/coverage/lcov-report/chunkstream.js.html +647 -0
  184. package/node_modules/pngjs/coverage/lcov-report/constants.js.html +176 -0
  185. package/node_modules/pngjs/coverage/lcov-report/crc.js.html +200 -0
  186. package/node_modules/pngjs/coverage/lcov-report/favicon.png +0 -0
  187. package/node_modules/pngjs/coverage/lcov-report/filter-pack.js.html +593 -0
  188. package/node_modules/pngjs/coverage/lcov-report/filter-parse-async.js.html +152 -0
  189. package/node_modules/pngjs/coverage/lcov-report/filter-parse-sync.js.html +143 -0
  190. package/node_modules/pngjs/coverage/lcov-report/filter-parse.js.html +611 -0
  191. package/node_modules/pngjs/coverage/lcov-report/format-normaliser.js.html +359 -0
  192. package/node_modules/pngjs/coverage/lcov-report/index.html +426 -0
  193. package/node_modules/pngjs/coverage/lcov-report/interlace.js.html +365 -0
  194. package/node_modules/pngjs/coverage/lcov-report/packer-async.js.html +230 -0
  195. package/node_modules/pngjs/coverage/lcov-report/packer-sync.js.html +248 -0
  196. package/node_modules/pngjs/coverage/lcov-report/packer.js.html +467 -0
  197. package/node_modules/pngjs/coverage/lcov-report/paeth-predictor.js.html +128 -0
  198. package/node_modules/pngjs/coverage/lcov-report/parser-async.js.html +575 -0
  199. package/node_modules/pngjs/coverage/lcov-report/parser-sync.js.html +404 -0
  200. package/node_modules/pngjs/coverage/lcov-report/parser.js.html +950 -0
  201. package/node_modules/pngjs/coverage/lcov-report/png-sync.js.html +116 -0
  202. package/node_modules/pngjs/coverage/lcov-report/png.js.html +662 -0
  203. package/node_modules/pngjs/coverage/lcov-report/prettify.css +101 -0
  204. package/node_modules/pngjs/coverage/lcov-report/prettify.js +1007 -0
  205. package/node_modules/pngjs/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  206. package/node_modules/pngjs/coverage/lcov-report/sorter.js +169 -0
  207. package/node_modules/pngjs/coverage/lcov-report/sync-inflate.js.html +584 -0
  208. package/node_modules/pngjs/coverage/lcov-report/sync-reader.js.html +215 -0
  209. package/node_modules/pngjs/coverage/lcov.info +2177 -0
  210. package/node_modules/pngjs/lib/bitmapper.js +267 -0
  211. package/node_modules/pngjs/lib/bitpacker.js +158 -0
  212. package/node_modules/pngjs/lib/chunkstream.js +189 -0
  213. package/node_modules/pngjs/lib/constants.js +32 -0
  214. package/node_modules/pngjs/lib/crc.js +40 -0
  215. package/node_modules/pngjs/lib/filter-pack.js +171 -0
  216. package/node_modules/pngjs/lib/filter-parse-async.js +24 -0
  217. package/node_modules/pngjs/lib/filter-parse-sync.js +21 -0
  218. package/node_modules/pngjs/lib/filter-parse.js +177 -0
  219. package/node_modules/pngjs/lib/format-normaliser.js +93 -0
  220. package/node_modules/pngjs/lib/interlace.js +95 -0
  221. package/node_modules/pngjs/lib/packer-async.js +50 -0
  222. package/node_modules/pngjs/lib/packer-sync.js +56 -0
  223. package/node_modules/pngjs/lib/packer.js +129 -0
  224. package/node_modules/pngjs/lib/paeth-predictor.js +16 -0
  225. package/node_modules/pngjs/lib/parser-async.js +165 -0
  226. package/node_modules/pngjs/lib/parser-sync.js +108 -0
  227. package/node_modules/pngjs/lib/parser.js +290 -0
  228. package/node_modules/pngjs/lib/png-sync.js +12 -0
  229. package/node_modules/pngjs/lib/png.js +194 -0
  230. package/node_modules/pngjs/lib/sync-inflate.js +168 -0
  231. package/node_modules/pngjs/lib/sync-reader.js +45 -0
  232. package/node_modules/pngjs/package.json +73 -0
  233. package/node_modules/qrcode/README.md +770 -0
  234. package/node_modules/qrcode/bin/qrcode +159 -0
  235. package/node_modules/qrcode/helper/to-sjis-browser.js +2 -0
  236. package/node_modules/qrcode/helper/to-sjis.js +105 -0
  237. package/node_modules/qrcode/lib/browser.js +76 -0
  238. package/node_modules/qrcode/lib/can-promise.js +7 -0
  239. package/node_modules/qrcode/lib/core/alignment-pattern.js +83 -0
  240. package/node_modules/qrcode/lib/core/alphanumeric-data.js +59 -0
  241. package/node_modules/qrcode/lib/core/bit-buffer.js +37 -0
  242. package/node_modules/qrcode/lib/core/bit-matrix.js +65 -0
  243. package/node_modules/qrcode/lib/core/byte-data.js +30 -0
  244. package/node_modules/qrcode/lib/core/error-correction-code.js +135 -0
  245. package/node_modules/qrcode/lib/core/error-correction-level.js +50 -0
  246. package/node_modules/qrcode/lib/core/finder-pattern.js +22 -0
  247. package/node_modules/qrcode/lib/core/format-info.js +29 -0
  248. package/node_modules/qrcode/lib/core/galois-field.js +69 -0
  249. package/node_modules/qrcode/lib/core/kanji-data.js +54 -0
  250. package/node_modules/qrcode/lib/core/mask-pattern.js +234 -0
  251. package/node_modules/qrcode/lib/core/mode.js +167 -0
  252. package/node_modules/qrcode/lib/core/numeric-data.js +43 -0
  253. package/node_modules/qrcode/lib/core/polynomial.js +62 -0
  254. package/node_modules/qrcode/lib/core/qrcode.js +495 -0
  255. package/node_modules/qrcode/lib/core/reed-solomon-encoder.js +56 -0
  256. package/node_modules/qrcode/lib/core/regex.js +31 -0
  257. package/node_modules/qrcode/lib/core/segments.js +330 -0
  258. package/node_modules/qrcode/lib/core/utils.js +63 -0
  259. package/node_modules/qrcode/lib/core/version-check.js +9 -0
  260. package/node_modules/qrcode/lib/core/version.js +163 -0
  261. package/node_modules/qrcode/lib/index.js +12 -0
  262. package/node_modules/qrcode/lib/renderer/canvas.js +63 -0
  263. package/node_modules/qrcode/lib/renderer/png.js +78 -0
  264. package/node_modules/qrcode/lib/renderer/svg-tag.js +81 -0
  265. package/node_modules/qrcode/lib/renderer/svg.js +19 -0
  266. package/node_modules/qrcode/lib/renderer/terminal/terminal-small.js +85 -0
  267. package/node_modules/qrcode/lib/renderer/terminal/terminal.js +49 -0
  268. package/node_modules/qrcode/lib/renderer/terminal.js +9 -0
  269. package/node_modules/qrcode/lib/renderer/utf8.js +71 -0
  270. package/node_modules/qrcode/lib/renderer/utils.js +99 -0
  271. package/node_modules/qrcode/lib/server.js +138 -0
  272. package/node_modules/qrcode/license +10 -0
  273. package/node_modules/qrcode/package.json +77 -0
  274. package/node_modules/require-directory/.jshintrc +67 -0
  275. package/node_modules/require-directory/.npmignore +1 -0
  276. package/node_modules/require-directory/.travis.yml +3 -0
  277. package/node_modules/require-directory/LICENSE +22 -0
  278. package/node_modules/require-directory/README.markdown +184 -0
  279. package/node_modules/require-directory/index.js +86 -0
  280. package/node_modules/require-directory/package.json +40 -0
  281. package/node_modules/require-main-filename/LICENSE.txt +14 -0
  282. package/node_modules/require-main-filename/README.md +26 -0
  283. package/node_modules/require-main-filename/index.js +18 -0
  284. package/node_modules/require-main-filename/package.json +35 -0
  285. package/node_modules/set-blocking/LICENSE.txt +14 -0
  286. package/node_modules/set-blocking/README.md +31 -0
  287. package/node_modules/set-blocking/index.js +7 -0
  288. package/node_modules/set-blocking/package.json +42 -0
  289. package/node_modules/sisteransi/license +21 -0
  290. package/node_modules/sisteransi/package.json +34 -0
  291. package/node_modules/sisteransi/readme.md +113 -0
  292. package/node_modules/sisteransi/src/index.js +58 -0
  293. package/node_modules/sisteransi/src/sisteransi.d.ts +35 -0
  294. package/node_modules/string-width/index.d.ts +29 -0
  295. package/node_modules/string-width/index.js +47 -0
  296. package/node_modules/string-width/license +9 -0
  297. package/node_modules/string-width/package.json +56 -0
  298. package/node_modules/string-width/readme.md +50 -0
  299. package/node_modules/strip-ansi/index.d.ts +17 -0
  300. package/node_modules/strip-ansi/index.js +4 -0
  301. package/node_modules/strip-ansi/license +9 -0
  302. package/node_modules/strip-ansi/package.json +54 -0
  303. package/node_modules/strip-ansi/readme.md +46 -0
  304. package/node_modules/which-module/LICENSE +13 -0
  305. package/node_modules/which-module/README.md +58 -0
  306. package/node_modules/which-module/index.js +9 -0
  307. package/node_modules/which-module/package.json +41 -0
  308. package/node_modules/wrap-ansi/index.js +186 -0
  309. package/node_modules/wrap-ansi/license +9 -0
  310. package/node_modules/wrap-ansi/node_modules/ansi-styles/index.d.ts +345 -0
  311. package/node_modules/wrap-ansi/node_modules/ansi-styles/index.js +163 -0
  312. package/node_modules/wrap-ansi/node_modules/ansi-styles/license +9 -0
  313. package/node_modules/wrap-ansi/node_modules/ansi-styles/package.json +56 -0
  314. package/node_modules/wrap-ansi/node_modules/ansi-styles/readme.md +152 -0
  315. package/node_modules/wrap-ansi/package.json +61 -0
  316. package/node_modules/wrap-ansi/readme.md +97 -0
  317. package/node_modules/y18n/LICENSE +13 -0
  318. package/node_modules/y18n/README.md +109 -0
  319. package/node_modules/y18n/index.js +188 -0
  320. package/node_modules/y18n/package.json +39 -0
  321. package/node_modules/yargs/LICENSE +21 -0
  322. package/node_modules/yargs/README.md +140 -0
  323. package/node_modules/yargs/build/lib/apply-extends.d.ts +2 -0
  324. package/node_modules/yargs/build/lib/apply-extends.js +65 -0
  325. package/node_modules/yargs/build/lib/argsert.d.ts +2 -0
  326. package/node_modules/yargs/build/lib/argsert.js +65 -0
  327. package/node_modules/yargs/build/lib/command.d.ts +64 -0
  328. package/node_modules/yargs/build/lib/command.js +416 -0
  329. package/node_modules/yargs/build/lib/common-types.d.ts +36 -0
  330. package/node_modules/yargs/build/lib/common-types.js +25 -0
  331. package/node_modules/yargs/build/lib/completion-templates.d.ts +2 -0
  332. package/node_modules/yargs/build/lib/completion-templates.js +50 -0
  333. package/node_modules/yargs/build/lib/completion.d.ts +21 -0
  334. package/node_modules/yargs/build/lib/completion.js +135 -0
  335. package/node_modules/yargs/build/lib/is-promise.d.ts +1 -0
  336. package/node_modules/yargs/build/lib/is-promise.js +9 -0
  337. package/node_modules/yargs/build/lib/levenshtein.d.ts +1 -0
  338. package/node_modules/yargs/build/lib/levenshtein.js +58 -0
  339. package/node_modules/yargs/build/lib/middleware.d.ts +10 -0
  340. package/node_modules/yargs/build/lib/middleware.js +57 -0
  341. package/node_modules/yargs/build/lib/obj-filter.d.ts +1 -0
  342. package/node_modules/yargs/build/lib/obj-filter.js +14 -0
  343. package/node_modules/yargs/build/lib/parse-command.d.ts +11 -0
  344. package/node_modules/yargs/build/lib/parse-command.js +36 -0
  345. package/node_modules/yargs/build/lib/process-argv.d.ts +2 -0
  346. package/node_modules/yargs/build/lib/process-argv.js +31 -0
  347. package/node_modules/yargs/build/lib/usage.d.ts +49 -0
  348. package/node_modules/yargs/build/lib/usage.js +540 -0
  349. package/node_modules/yargs/build/lib/validation.d.ts +34 -0
  350. package/node_modules/yargs/build/lib/validation.js +330 -0
  351. package/node_modules/yargs/build/lib/yargs.d.ts +274 -0
  352. package/node_modules/yargs/build/lib/yargs.js +1190 -0
  353. package/node_modules/yargs/build/lib/yerror.d.ts +4 -0
  354. package/node_modules/yargs/build/lib/yerror.js +11 -0
  355. package/node_modules/yargs/index.js +40 -0
  356. package/node_modules/yargs/locales/be.json +46 -0
  357. package/node_modules/yargs/locales/de.json +46 -0
  358. package/node_modules/yargs/locales/en.json +51 -0
  359. package/node_modules/yargs/locales/es.json +46 -0
  360. package/node_modules/yargs/locales/fi.json +49 -0
  361. package/node_modules/yargs/locales/fr.json +53 -0
  362. package/node_modules/yargs/locales/hi.json +49 -0
  363. package/node_modules/yargs/locales/hu.json +46 -0
  364. package/node_modules/yargs/locales/id.json +50 -0
  365. package/node_modules/yargs/locales/it.json +46 -0
  366. package/node_modules/yargs/locales/ja.json +51 -0
  367. package/node_modules/yargs/locales/ko.json +49 -0
  368. package/node_modules/yargs/locales/nb.json +44 -0
  369. package/node_modules/yargs/locales/nl.json +49 -0
  370. package/node_modules/yargs/locales/nn.json +44 -0
  371. package/node_modules/yargs/locales/pirate.json +13 -0
  372. package/node_modules/yargs/locales/pl.json +49 -0
  373. package/node_modules/yargs/locales/pt.json +45 -0
  374. package/node_modules/yargs/locales/pt_BR.json +48 -0
  375. package/node_modules/yargs/locales/ru.json +46 -0
  376. package/node_modules/yargs/locales/th.json +46 -0
  377. package/node_modules/yargs/locales/tr.json +48 -0
  378. package/node_modules/yargs/locales/zh_CN.json +48 -0
  379. package/node_modules/yargs/locales/zh_TW.json +47 -0
  380. package/node_modules/yargs/package.json +92 -0
  381. package/node_modules/yargs/yargs.js +14 -0
  382. package/node_modules/yargs-parser/LICENSE.txt +14 -0
  383. package/node_modules/yargs-parser/README.md +449 -0
  384. package/node_modules/yargs-parser/index.js +1032 -0
  385. package/node_modules/yargs-parser/lib/tokenize-arg-string.js +40 -0
  386. package/node_modules/yargs-parser/package.json +46 -0
  387. package/package.json +28 -5
package/dist/index.d.mts CHANGED
@@ -1,6 +1,245 @@
1
1
  import { AIPIdentity } from '@prismer/aip-sdk';
2
2
  export { AIPIdentity, DIDDocument, SignedPayload } from '@prismer/aip-sdk';
3
3
 
4
+ /** Subset of the cloud-side AgentStatus enum used by status-change events. */
5
+ type IMAgentStatus = 'online' | 'busy' | 'idle' | 'offline';
6
+ interface HostedAgentDeclaration {
7
+ imUserId: string;
8
+ name: string;
9
+ adapterName: string;
10
+ capabilities: string[];
11
+ profiles: Array<{
12
+ id: string;
13
+ version: number;
14
+ }>;
15
+ }
16
+ interface AgentHostDeclarePayload {
17
+ daemonId: string;
18
+ /** Optional explicit workspace for local daemons without an IMContainer row. */
19
+ workspaceId?: string;
20
+ daemonVersion: string;
21
+ platform: 'darwin' | 'linux' | 'win32';
22
+ agents: HostedAgentDeclaration[];
23
+ }
24
+ interface RejectedHostedAgent {
25
+ imUserId: string;
26
+ reason: 'bound-to-other-daemon' | 'not-owned' | 'unknown';
27
+ ownerDaemonId?: string;
28
+ }
29
+ interface HostAckedPayload {
30
+ workspaceId: string;
31
+ syncCursor: {
32
+ workspaces: number;
33
+ agent_profiles: number;
34
+ [key: string]: number;
35
+ };
36
+ profilesToSync: string[];
37
+ /** Profile IDs the daemon declared but that no longer exist on the cloud
38
+ * (soft-deleted). The daemon should remove these from its local store. */
39
+ profilesToDelete: string[];
40
+ acceptedAgents?: string[];
41
+ rejectedAgents?: RejectedHostedAgent[];
42
+ }
43
+ interface AgentStatusChangedPayload {
44
+ agentImUserId: string;
45
+ status: IMAgentStatus;
46
+ activeProfileId?: string;
47
+ runningTaskIds?: string[];
48
+ }
49
+ interface TaskDispatchContextEntry {
50
+ sender: string;
51
+ senderRole: 'human' | 'agent' | 'admin' | 'system';
52
+ content: string;
53
+ createdAt: string;
54
+ /** Wave-8 W1: assets the human attached to THIS chat message. */
55
+ attachedAssetIds?: string[];
56
+ }
57
+ /** Wave-8 W1: hydrated asset reference attached to a dispatch. */
58
+ interface AssetRef {
59
+ assetId: string;
60
+ contentHash: string;
61
+ mime: string | null;
62
+ sizeBytes: number | null;
63
+ kind: string;
64
+ workspaceId: string;
65
+ role: 'attachment' | 'context';
66
+ }
67
+ interface TaskDispatchRequestPayload {
68
+ taskId: string;
69
+ /** Agent target for runtimeRoute='agent'. Shell dispatches do not use this. */
70
+ agentImUserId?: string;
71
+ /** Runtime/device target for runtimeRoute='shell'. */
72
+ targetDaemonId?: string;
73
+ profileId: string;
74
+ capability: string;
75
+ prompt: string;
76
+ /** Execution surface. `shell` is daemon-local command execution. */
77
+ runtimeRoute?: 'agent' | 'sandbox' | 'shell';
78
+ metadata?: Record<string, unknown>;
79
+ timeoutMs?: number;
80
+ context?: TaskDispatchContextEntry[];
81
+ conversationId?: string;
82
+ /**
83
+ * Channel mode for the originating conversation. Optional and
84
+ * forward-compatible: when missing, daemon renders 'unknown' in the
85
+ * [Channel context] prompt block.
86
+ * - `direct`: 1:1 DM (no @-mention needed in reply).
87
+ * - `group`: multi-party room (end reply with `@<recipient>` to
88
+ * continue the chain).
89
+ */
90
+ conversationType?: 'direct' | 'group';
91
+ /**
92
+ * Active participants of the dispatch's conversation. Daemon injects this
93
+ * into [Channel context] so the agent knows the authoritative recipient list
94
+ * without hallucinating. Capped at 50 entries server-side.
95
+ */
96
+ participants?: Array<{
97
+ imUserId: string;
98
+ username: string;
99
+ displayName: string;
100
+ role: string;
101
+ agentType?: string | null;
102
+ }>;
103
+ /** Wave-8 W1: assets cloud wants daemon to fold into agent context. */
104
+ assetRefs?: AssetRef[];
105
+ }
106
+ interface TaskDispatchProgressPayload {
107
+ taskId: string;
108
+ progress: number;
109
+ message?: string;
110
+ detail?: Record<string, unknown>;
111
+ }
112
+ /** Wave-8 W1: how the daemon handled a single AssetRef. */
113
+ type AssetDispatchStrategy = 'inline-text' | 'inline-text-truncated' | 'uri-only' | 'error';
114
+ interface AssetDispatchObservation {
115
+ assetId: string;
116
+ contentHash: string;
117
+ mime: string | null;
118
+ sizeBytes: number | null;
119
+ strategy: AssetDispatchStrategy;
120
+ inlinedBytes?: number;
121
+ error?: string;
122
+ }
123
+ /**
124
+ * P1-2 (2026-05-25): per-file outbox rejection record emitted by daemon when
125
+ * outbox-watcher quarantines an artifact (MIME ≠ filename extension). Cloud
126
+ * persists these on `IMTask.metadata.outboxRejections` and re-injects into
127
+ * the next dispatch prompt as agent-visible feedback.
128
+ */
129
+ interface OutboxRejectionRecord {
130
+ filename: string;
131
+ reason: string;
132
+ inferredMime: string;
133
+ detectedMime: string;
134
+ rejectedAt: string;
135
+ }
136
+ interface TaskDurabilityPageReceipt {
137
+ pageId: string;
138
+ path: string;
139
+ version: number;
140
+ contentHash: string;
141
+ authority?: 'cloud' | 'outbox';
142
+ authorityEventId?: string;
143
+ }
144
+ interface TaskDurabilityResult {
145
+ commitKey: string;
146
+ postTurnKey: string;
147
+ canonicalTurnId: string;
148
+ conversationId?: string;
149
+ runId?: string;
150
+ messageId?: string;
151
+ profileId?: string;
152
+ profileName?: string;
153
+ model?: string;
154
+ provider?: string;
155
+ targetPageKey?: string;
156
+ normalizedContentHash?: string;
157
+ state: 'persisted' | 'skipped_not_durable' | 'skipped_duplicate' | 'retryable_failure' | 'terminal_failure';
158
+ receipts: TaskDurabilityPageReceipt[];
159
+ error?: {
160
+ code: string;
161
+ message: string;
162
+ };
163
+ timeoutMs: number;
164
+ replyCommittedAt: number;
165
+ duplicateOf?: {
166
+ state: 'persisted' | 'skipped_not_durable' | 'retryable_failure' | 'terminal_failure';
167
+ receipts: TaskDurabilityPageReceipt[];
168
+ replyCommittedAt: number;
169
+ };
170
+ }
171
+ interface TaskDispatchReplyPayload {
172
+ taskId: string;
173
+ ok: boolean;
174
+ output?: string;
175
+ /** Markdown projection remains in output; rich PKF rides beside it. */
176
+ contentBlocks?: ContentBlockInput[];
177
+ error?: {
178
+ code: string;
179
+ message: string;
180
+ };
181
+ assetIds?: string[];
182
+ metrics?: {
183
+ tokensUsed?: number;
184
+ durationMs?: number;
185
+ };
186
+ /** Wave-8 W1: per-asset handling report. */
187
+ assetObservability?: AssetDispatchObservation[];
188
+ /**
189
+ * P1-2: files quarantined by daemon outbox-watcher's magic-bytes guard
190
+ * during this turn. Empty/absent when nothing was rejected.
191
+ */
192
+ outboxRejections?: OutboxRejectionRecord[];
193
+ /** PKF 209 Phase 1: bounded pre-reply authoritative Memory outcome. */
194
+ durability?: TaskDurabilityResult;
195
+ }
196
+ interface TaskCancelPayload {
197
+ taskId: string;
198
+ reason?: string;
199
+ }
200
+ /**
201
+ * Wire envelope for v2.0 WS events. `timestamp` is required (mirrors the
202
+ * cloud-side `WSMessage<T>` definition in src/im/types/index.ts).
203
+ */
204
+ interface IMWSMessage<T = unknown> {
205
+ type: string;
206
+ payload: T;
207
+ requestId?: string;
208
+ timestamp: number;
209
+ }
210
+ interface WorkspaceChangedPayload {
211
+ workspaceId: string;
212
+ /** ISO-8601 timestamp from im_workspaces.updatedAt. */
213
+ updatedAt: string;
214
+ }
215
+ interface AgentProfileChangedPayload {
216
+ profileId: string;
217
+ version: number;
218
+ }
219
+ interface AgentChangedPayload {
220
+ agentImUserId: string;
221
+ fields: {
222
+ displayName?: string;
223
+ capabilities?: string[];
224
+ };
225
+ }
226
+ interface WorkspaceFileChangedPayload {
227
+ workspaceId: string;
228
+ path: string;
229
+ operation: 'create' | 'update' | 'delete';
230
+ assetId?: string;
231
+ contentHash?: string;
232
+ version: number;
233
+ }
234
+ interface AssetChangedPayload {
235
+ workspaceId: string;
236
+ assetId: string;
237
+ operation: 'create' | 'update' | 'delete';
238
+ contentHash?: string;
239
+ assetIndexSeq?: number;
240
+ revision?: number;
241
+ }
242
+
4
243
  /**
5
244
  * Prismer SDK — Storage adapters for offline-first IM.
6
245
  *
@@ -256,7 +495,7 @@ interface PrismerConfig {
256
495
  timeout?: number;
257
496
  /** Custom fetch implementation */
258
497
  fetch?: typeof fetch;
259
- /** Default X-IM-Agent header for IM requests (select which agent identity to use) */
498
+ /** Agent identity hint: X-IM-Agent for IM requests, X-Prismer-Agent for canonical PKF requests. */
260
499
  imAgent?: string;
261
500
  /**
262
501
  * Default X-IM-Workspace header for IM requests (release202/09 §3.6 B).
@@ -582,18 +821,47 @@ type ContentBlockToolUse = {
582
821
  toolName: string;
583
822
  inputJson: unknown;
584
823
  };
585
- type ContentBlockToolResult = {
586
- kind: 'tool_result';
587
- toolCallId: string;
588
- output: ContentBlock[];
589
- };
590
824
  type ContentBlockReasoning = {
591
825
  kind: 'reasoning';
592
826
  text: string;
593
827
  redacted?: boolean;
594
828
  };
595
- /** v2.0 §4.6 ContentBlock discriminated union (Anthropic-shape, 8 variants). */
596
- type ContentBlock = ContentBlockText | ContentBlockImage | ContentBlockAudio | ContentBlockVideo | ContentBlockFile | ContentBlockToolUse | ContentBlockToolResult | ContentBlockReasoning;
829
+ type ContentBlockPkfInput = {
830
+ kind: 'pkf';
831
+ source: string;
832
+ title?: string;
833
+ };
834
+ type ContentBlockPkfOutput = ContentBlockPkfInput & {
835
+ blockId: string;
836
+ blockRevision: number;
837
+ sourceHash: string;
838
+ authority: {
839
+ status: 'verified';
840
+ source: 'pkf_inline_blocks';
841
+ } | {
842
+ status: 'corrupt';
843
+ source: 'pkf_inline_blocks';
844
+ code: string;
845
+ };
846
+ };
847
+ /** @deprecated Use ContentBlockPkfInput or ContentBlockPkfOutput at a concrete boundary. */
848
+ type ContentBlockPkf = ContentBlockPkfInput | ContentBlockPkfOutput;
849
+ type ContentBlockToolResultInput = {
850
+ kind: 'tool_result';
851
+ toolCallId: string;
852
+ output: ContentBlockInput[];
853
+ };
854
+ type ContentBlockToolResultOutput = {
855
+ kind: 'tool_result';
856
+ toolCallId: string;
857
+ output: ContentBlockOutput[];
858
+ };
859
+ /** @deprecated Use the boundary-specific recursive ToolResult type. */
860
+ type ContentBlockToolResult = ContentBlockToolResultInput | ContentBlockToolResultOutput;
861
+ type ContentBlockInput = ContentBlockText | ContentBlockImage | ContentBlockAudio | ContentBlockVideo | ContentBlockFile | ContentBlockToolUse | ContentBlockToolResultInput | ContentBlockReasoning | ContentBlockPkfInput;
862
+ type ContentBlockOutput = ContentBlockText | ContentBlockImage | ContentBlockAudio | ContentBlockVideo | ContentBlockFile | ContentBlockToolUse | ContentBlockToolResultOutput | ContentBlockReasoning | ContentBlockPkfOutput;
863
+ /** v2.0 §4.6 + product209 PKF ContentBlock discriminated union (9 variants). */
864
+ type ContentBlock = ContentBlockInput | ContentBlockOutput;
597
865
  /**
598
866
  * v2.0 §4.6 ChatMessage — used by TaskInput.messages and other multi-turn
599
867
  * dispatch shapes. Content may be a plain string (legacy / single-text) or a
@@ -601,7 +869,7 @@ type ContentBlock = ContentBlockText | ContentBlockImage | ContentBlockAudio | C
601
869
  */
602
870
  interface ChatMessage {
603
871
  role: 'system' | 'user' | 'assistant' | 'tool';
604
- content: string | ContentBlock[];
872
+ content: string | ContentBlockInput[];
605
873
  /** Optional name (tool message provenance, OpenAI-compat). */
606
874
  name?: string;
607
875
  /** Optional tool_call_id (for role='tool' responses). */
@@ -638,7 +906,7 @@ interface IMMessage {
638
906
  * string) and `attachments` (legacy) for the 6-sprint double-write window.
639
907
  * When the server returns ContentBlock[], renderers should prefer this.
640
908
  */
641
- contentBlocks?: ContentBlock[] | null;
909
+ contentBlocks?: ContentBlockOutput[] | null;
642
910
  /**
643
911
  * v2.0 §4.1 — per-conversation strictly monotonic boundary sequence number
644
912
  * stamped by the server inside the same tx as the message insert.
@@ -738,6 +1006,42 @@ interface IMDiscoverAgent {
738
1006
  capabilities?: string[];
739
1007
  status: string;
740
1008
  }
1009
+ /** Workspace-scoped filters for the Agent Registry (`GET /api/im/agents`). */
1010
+ interface IMAgentDiscoverOptions {
1011
+ workspaceId: string;
1012
+ agentType?: string;
1013
+ capability?: string;
1014
+ onlineOnly?: boolean;
1015
+ }
1016
+ /** Capability declared on an AgentCard returned by the Agent Registry. */
1017
+ interface IMAgentCatalogCapability {
1018
+ name: string;
1019
+ description: string;
1020
+ version?: string;
1021
+ inputSchema?: Record<string, unknown>;
1022
+ outputSchema?: Record<string, unknown>;
1023
+ }
1024
+ /** Agent Registry entry. Independent from the contacts-only `IMDiscoverAgent`. */
1025
+ interface IMAgentCatalogEntry {
1026
+ agentId: string;
1027
+ userId: string;
1028
+ username?: string;
1029
+ name: string;
1030
+ description: string;
1031
+ agentType: string;
1032
+ /**
1033
+ * Agent Registry rows include both legacy string capability names and
1034
+ * structured AgentCapability declarations. The endpoint intentionally
1035
+ * preserves both persisted shapes.
1036
+ */
1037
+ capabilities: Array<string | IMAgentCatalogCapability>;
1038
+ status: string;
1039
+ load: number;
1040
+ endpoint?: string;
1041
+ did?: string;
1042
+ didDocumentUrl?: string;
1043
+ visionCapable: boolean;
1044
+ }
741
1045
  interface IMBindingData {
742
1046
  bindingId: string;
743
1047
  platform: string;
@@ -811,6 +1115,13 @@ interface IMWorkspaceInitGroupOptions {
811
1115
  }>;
812
1116
  force?: boolean;
813
1117
  }
1118
+ interface IMWorkspaceCreateAgentOptions {
1119
+ agentName: string;
1120
+ agentDisplayName: string;
1121
+ agentType?: string;
1122
+ capabilities?: string[];
1123
+ metadata?: Record<string, unknown>;
1124
+ }
814
1125
  interface IMAutocompleteResult {
815
1126
  userId: string;
816
1127
  username: string;
@@ -855,7 +1166,7 @@ interface IMSendOptions {
855
1166
  * v2.0 §4.6 — multimodal content blocks. When set, `content` is treated as
856
1167
  * a fallback summary string for adapters that don't speak ContentBlock yet.
857
1168
  */
858
- contentBlocks?: ContentBlock[];
1169
+ contentBlocks?: ContentBlockInput[];
859
1170
  }
860
1171
  interface IMPaginationOptions {
861
1172
  limit?: number;
@@ -972,8 +1283,20 @@ interface OfflineConfig {
972
1283
  data: any;
973
1284
  seq: number;
974
1285
  }) => 'keep_local' | 'accept_remote' | StoredMessage;
975
- /** Sync mode: 'push' = SSE continuous stream, 'poll' = periodic polling (default: 'push') */
1286
+ /** Sync mode: 'push' = continuous stream, 'poll' = periodic polling (default: 'push') */
976
1287
  syncMode?: 'push' | 'poll';
1288
+ /**
1289
+ * release203/12 — prefer the unified single WebSocket (`WS /ws/realtime`) for
1290
+ * continuous push sync instead of the legacy `/api/im/sync/stream` SSE.
1291
+ * Default: true. Set false to pin the SSE transport (e.g. behind a proxy that
1292
+ * doesn't yet pass WS upgrades). Falls back to SSE then polling automatically
1293
+ * when no WebSocket is available. */
1294
+ unifiedWs?: boolean;
1295
+ /**
1296
+ * Custom WebSocket constructor (Node <21 without a global `WebSocket`, or test
1297
+ * mocks). Mirrors the realtime client's injection point. When omitted the
1298
+ * global `WebSocket` is used (browser / Node 21+). */
1299
+ WebSocket?: new (url: string) => WebSocket;
977
1300
  /** Enable multi-tab coordination via BroadcastChannel (default: true in browser, false in Node.js) */
978
1301
  multiTab?: boolean;
979
1302
  /** E2E encryption config */
@@ -990,10 +1313,12 @@ interface OfflineConfig {
990
1313
  warningThreshold?: number;
991
1314
  };
992
1315
  }
993
- type TaskStatus = 'pending' | 'assigned' | 'running' | 'review' | 'completed' | 'failed' | 'cancelled';
1316
+ type TaskStatus = 'pending' | 'assigned' | 'running' | 'review' | 'blocked' | 'awaiting_approval' | 'completed' | 'failed' | 'cancelled';
994
1317
  type ScheduleType = 'once' | 'interval' | 'cron';
995
1318
  interface IMCreateTaskOptions {
996
1319
  title: string;
1320
+ /** Caller-scoped create idempotency key (1-191 chars). */
1321
+ idempotencyKey?: string;
997
1322
  description?: string;
998
1323
  capability?: string;
999
1324
  input?: Record<string, unknown>;
@@ -1018,6 +1343,10 @@ interface IMCreateTaskOptions {
1018
1343
  conversationId?: string;
1019
1344
  /** v1.9.x: pick the executor — `agent` (default), `sandbox`, or `shell`. */
1020
1345
  runtimeRoute?: 'agent' | 'sandbox' | 'shell';
1346
+ /** runtime210/06 W2: link the task to an OKR Key Result (same workspace). */
1347
+ keyResultId?: string;
1348
+ /** runtime210/06 W2: consistency check — the objective the keyResult belongs to. */
1349
+ objectiveId?: string;
1021
1350
  }
1022
1351
  interface IMUpdateTaskOptions {
1023
1352
  title?: string;
@@ -1137,6 +1466,8 @@ interface IMTaskResult {
1137
1466
  assetIds: string[];
1138
1467
  resultUri?: string | null;
1139
1468
  completedAt: string;
1469
+ /** PKF 209: authoritative pre-reply Memory outcome, when this turn requested durability. */
1470
+ durability?: TaskDurabilityResult;
1140
1471
  }
1141
1472
  interface IMCreateMemoryFileOptions {
1142
1473
  path: string;
@@ -1601,7 +1932,7 @@ interface IMAgentForkResult {
1601
1932
  /**
1602
1933
  * Per-call options for the internal request function (v2.0).
1603
1934
  * `headers` — extra request headers to merge in (caller wins over default
1604
- * Authorization/X-IM-Agent on collision).
1935
+ * Authorization/authority-specific agent header on collision).
1605
1936
  */
1606
1937
  interface RequestOpts {
1607
1938
  headers?: Record<string, string>;
@@ -1614,6 +1945,183 @@ interface RequestOpts {
1614
1945
  * existing 4-arg callsites still type-check.
1615
1946
  */
1616
1947
  type RequestFn = <T>(method: string, path: string, body?: unknown, query?: Record<string, string>, opts?: RequestOpts) => Promise<T>;
1948
+ interface PkfApiEnvelope<T> {
1949
+ success: boolean;
1950
+ data?: T;
1951
+ error?: {
1952
+ code: string;
1953
+ message: string;
1954
+ details?: unknown;
1955
+ retryable?: boolean;
1956
+ };
1957
+ requestId: string;
1958
+ }
1959
+ interface PkfMessageSourceLocator {
1960
+ kind: 'message-pkf';
1961
+ messageId: string;
1962
+ blockId: string;
1963
+ blockRevision: number;
1964
+ sourceHash: string;
1965
+ }
1966
+ type PkfCarrierMaterializationTarget = {
1967
+ kind: 'asset';
1968
+ filename: string;
1969
+ } | {
1970
+ kind: 'memory-page';
1971
+ path: string;
1972
+ pathConfirmed: true;
1973
+ visibility?: string;
1974
+ };
1975
+ interface PkfCarrierMaterializeRequest {
1976
+ workspaceId: string;
1977
+ source: PkfMessageSourceLocator;
1978
+ target: PkfCarrierMaterializationTarget;
1979
+ idempotencyKey: string;
1980
+ }
1981
+ interface PkfCarrierMaterializationView {
1982
+ receiptId: string;
1983
+ state: 'committed';
1984
+ source: {
1985
+ kind: 'message-pkf';
1986
+ messageId: string;
1987
+ blockId: string;
1988
+ revision: number;
1989
+ contentHash: string;
1990
+ };
1991
+ target: {
1992
+ kind: 'asset';
1993
+ id: string;
1994
+ revision: number;
1995
+ contentHash: string;
1996
+ filename: string;
1997
+ workspacePath: string;
1998
+ } | {
1999
+ kind: 'memory-page';
2000
+ id: string;
2001
+ revision: number;
2002
+ contentHash: string;
2003
+ path: string;
2004
+ visibility: string;
2005
+ };
2006
+ validation: {
2007
+ structureStatus: 'pass';
2008
+ resourceStatus: 'unverified';
2009
+ };
2010
+ }
2011
+ interface PkfMaterializationReadQuery {
2012
+ workspaceId: string;
2013
+ idempotencyKey: string;
2014
+ targetKind: 'asset' | 'memory-page';
2015
+ }
2016
+ interface PkfMaterializationDiscoveryQuery {
2017
+ workspaceId: string;
2018
+ source: PkfMessageSourceLocator;
2019
+ targetKind: 'asset' | 'memory-page';
2020
+ }
2021
+ /** The two mutually exclusive GET /api/pkf/materializations locator forms. */
2022
+ type PkfMaterializationQuery = PkfMaterializationReadQuery | PkfMaterializationDiscoveryQuery;
2023
+ type PkfBundleResourceUsage = 'harness-manifest' | 'harness-script' | 'harness-style' | 'harness-resource' | 'image' | 'video' | 'audio' | 'file' | 'data';
2024
+ interface PkfBundleCommitRequest {
2025
+ workspaceId: string;
2026
+ idempotencyKey: string;
2027
+ root: {
2028
+ filename: string;
2029
+ source: string;
2030
+ sourceHash: string;
2031
+ };
2032
+ resources: Array<{
2033
+ path: string;
2034
+ fromPath?: string;
2035
+ bytesBase64: string;
2036
+ contentHash: string;
2037
+ integrity: string;
2038
+ mime: string;
2039
+ usage: PkfBundleResourceUsage;
2040
+ }>;
2041
+ }
2042
+ interface PkfBundleReadQuery {
2043
+ workspaceId: string;
2044
+ idempotencyKey: string;
2045
+ }
2046
+ interface PkfBundleCommitView {
2047
+ replayed: boolean;
2048
+ receipt: {
2049
+ id: string;
2050
+ state: 'committed';
2051
+ requestHash: string;
2052
+ };
2053
+ root: {
2054
+ id: string;
2055
+ revision: number;
2056
+ contentHash: string;
2057
+ filename: string;
2058
+ workspacePath: string;
2059
+ };
2060
+ resources: Array<{
2061
+ id: string;
2062
+ path: string;
2063
+ contentHash: string;
2064
+ integrity: string;
2065
+ mime: string;
2066
+ usage: string;
2067
+ fromContentHash: string;
2068
+ fromNodeKey: string;
2069
+ boundKind: 'pkf-resource';
2070
+ }>;
2071
+ }
2072
+ type PkfArtifactRootKind = 'message-pkf' | 'asset' | 'memory-page';
2073
+ interface PkfArtifactRelationsQuery {
2074
+ workspaceId: string;
2075
+ rootKind: PkfArtifactRootKind;
2076
+ rootId: string;
2077
+ revision: number;
2078
+ }
2079
+ interface PkfArtifactRelationView {
2080
+ id: string;
2081
+ fromNodeKey: string;
2082
+ fromContentHash: string;
2083
+ toAssetId: string;
2084
+ toContentHash: string;
2085
+ relation: string;
2086
+ usage: string;
2087
+ resourcePathKey: string;
2088
+ displayName: string | null;
2089
+ integrity: string | null;
2090
+ required: boolean;
2091
+ visibility: string;
2092
+ lifecycle: string;
2093
+ }
2094
+ interface PkfArtifactGraphView {
2095
+ root: {
2096
+ kind: PkfArtifactRootKind;
2097
+ id: string;
2098
+ revision: number;
2099
+ contentHash: string;
2100
+ };
2101
+ relations: PkfArtifactRelationView[];
2102
+ }
2103
+ interface PkfResourceReadQueryBase {
2104
+ workspaceId: string;
2105
+ rootKind: PkfArtifactRootKind;
2106
+ rootId: string;
2107
+ rootRevision: number;
2108
+ rootHash: string;
2109
+ }
2110
+ type PkfResourceReadQuery = PkfResourceReadQueryBase & ({
2111
+ targetAssetId: string;
2112
+ targetHash?: never;
2113
+ } | {
2114
+ targetAssetId?: never;
2115
+ targetHash: string;
2116
+ });
2117
+ interface PkfResourceDetailView {
2118
+ id: string;
2119
+ workspaceId: string;
2120
+ contentHash: string;
2121
+ mime: string | null;
2122
+ sizeBytes: number | null;
2123
+ filename: string | null;
2124
+ }
1617
2125
  interface ExecutionContext {
1618
2126
  error?: string;
1619
2127
  provider?: string;
@@ -2380,8 +2888,14 @@ declare class OfflineManager extends OfflineEmitter {
2380
2888
  private _isOnline;
2381
2889
  private _syncState;
2382
2890
  private sseSource;
2891
+ /** release203/12 — unified single-WS realtime transport (preferred over SSE). */
2892
+ private wsSource;
2383
2893
  private sseReconnectTimer;
2384
2894
  private sseReconnectAttempts;
2895
+ /** Injected/global WebSocket ctor (undefined → WS transport unavailable). */
2896
+ private readonly WS?;
2897
+ /** Prefer the unified WS over SSE for continuous sync (default true). */
2898
+ private readonly unifiedWs;
2385
2899
  /** Presence cache for realtime presence events */
2386
2900
  private presenceCache;
2387
2901
  /** Auth token provider — set by PrismerClient for SSE auth */
@@ -2443,7 +2957,15 @@ declare class OfflineManager extends OfflineEmitter {
2443
2957
  */
2444
2958
  startContinuousSync(): Promise<void>;
2445
2959
  /**
2446
- * Stop the SSE continuous sync connection.
2960
+ * release203/12 continuous sync over the unified single WebSocket.
2961
+ * Consumes the `{ch:'sync',name:'sync',data}` frames (the same per-user
2962
+ * fan-out the SSE endpoint served) and ignores the `tasks` channel + control
2963
+ * frames. Behaviour-preserving vs the SSE path: same applySyncEvent, same
2964
+ * cursor, same emitted events — only the transport differs (2 sockets → 1).
2965
+ */
2966
+ private startContinuousSyncWs;
2967
+ /**
2968
+ * Stop the continuous sync connection (WS or SSE).
2447
2969
  */
2448
2970
  stopContinuousSync(): void;
2449
2971
  private scheduleSseReconnect;
@@ -2739,204 +3261,6 @@ interface WorkspaceAssetsApiContract {
2739
3261
  getAssetUrl(id: string): Promise<string>;
2740
3262
  }
2741
3263
 
2742
- /** Subset of the cloud-side AgentStatus enum used by status-change events. */
2743
- type IMAgentStatus = 'online' | 'busy' | 'idle' | 'offline';
2744
- interface HostedAgentDeclaration {
2745
- imUserId: string;
2746
- name: string;
2747
- adapterName: string;
2748
- capabilities: string[];
2749
- profiles: Array<{
2750
- id: string;
2751
- version: number;
2752
- }>;
2753
- }
2754
- interface AgentHostDeclarePayload {
2755
- daemonId: string;
2756
- daemonVersion: string;
2757
- platform: 'darwin' | 'linux' | 'win32';
2758
- agents: HostedAgentDeclaration[];
2759
- }
2760
- interface RejectedHostedAgent {
2761
- imUserId: string;
2762
- reason: 'bound-to-other-daemon' | 'not-owned' | 'unknown';
2763
- ownerDaemonId?: string;
2764
- }
2765
- interface HostAckedPayload {
2766
- workspaceId: string;
2767
- syncCursor: {
2768
- workspaces: number;
2769
- agent_profiles: number;
2770
- [key: string]: number;
2771
- };
2772
- profilesToSync: string[];
2773
- /** Profile IDs the daemon declared but that no longer exist on the cloud
2774
- * (soft-deleted). The daemon should remove these from its local store. */
2775
- profilesToDelete: string[];
2776
- acceptedAgents?: string[];
2777
- rejectedAgents?: RejectedHostedAgent[];
2778
- }
2779
- interface AgentStatusChangedPayload {
2780
- agentImUserId: string;
2781
- status: IMAgentStatus;
2782
- activeProfileId?: string;
2783
- runningTaskIds?: string[];
2784
- }
2785
- interface TaskDispatchContextEntry {
2786
- sender: string;
2787
- senderRole: 'human' | 'agent' | 'admin' | 'system';
2788
- content: string;
2789
- createdAt: string;
2790
- /** Wave-8 W1: assets the human attached to THIS chat message. */
2791
- attachedAssetIds?: string[];
2792
- }
2793
- /** Wave-8 W1: hydrated asset reference attached to a dispatch. */
2794
- interface AssetRef {
2795
- assetId: string;
2796
- contentHash: string;
2797
- mime: string | null;
2798
- sizeBytes: number | null;
2799
- kind: string;
2800
- workspaceId: string;
2801
- role: 'attachment' | 'context';
2802
- }
2803
- interface TaskDispatchRequestPayload {
2804
- taskId: string;
2805
- /** Agent target for runtimeRoute='agent'. Shell dispatches do not use this. */
2806
- agentImUserId?: string;
2807
- /** Runtime/device target for runtimeRoute='shell'. */
2808
- targetDaemonId?: string;
2809
- profileId: string;
2810
- capability: string;
2811
- prompt: string;
2812
- /** Execution surface. `shell` is daemon-local command execution. */
2813
- runtimeRoute?: 'agent' | 'sandbox' | 'shell';
2814
- metadata?: Record<string, unknown>;
2815
- timeoutMs?: number;
2816
- context?: TaskDispatchContextEntry[];
2817
- conversationId?: string;
2818
- /**
2819
- * Channel mode for the originating conversation. Optional and
2820
- * forward-compatible: when missing, daemon renders 'unknown' in the
2821
- * [Channel context] prompt block.
2822
- * - `direct`: 1:1 DM (no @-mention needed in reply).
2823
- * - `group`: multi-party room (end reply with `@<recipient>` to
2824
- * continue the chain).
2825
- */
2826
- conversationType?: 'direct' | 'group';
2827
- /**
2828
- * Active participants of the dispatch's conversation. Daemon injects this
2829
- * into [Channel context] so the agent knows the authoritative recipient list
2830
- * without hallucinating. Capped at 50 entries server-side.
2831
- */
2832
- participants?: Array<{
2833
- imUserId: string;
2834
- username: string;
2835
- displayName: string;
2836
- role: string;
2837
- agentType?: string | null;
2838
- }>;
2839
- /** Wave-8 W1: assets cloud wants daemon to fold into agent context. */
2840
- assetRefs?: AssetRef[];
2841
- }
2842
- interface TaskDispatchProgressPayload {
2843
- taskId: string;
2844
- progress: number;
2845
- message?: string;
2846
- detail?: Record<string, unknown>;
2847
- }
2848
- /** Wave-8 W1: how the daemon handled a single AssetRef. */
2849
- type AssetDispatchStrategy = 'inline-text' | 'inline-text-truncated' | 'uri-only' | 'error';
2850
- interface AssetDispatchObservation {
2851
- assetId: string;
2852
- contentHash: string;
2853
- mime: string | null;
2854
- sizeBytes: number | null;
2855
- strategy: AssetDispatchStrategy;
2856
- inlinedBytes?: number;
2857
- error?: string;
2858
- }
2859
- /**
2860
- * P1-2 (2026-05-25): per-file outbox rejection record emitted by daemon when
2861
- * outbox-watcher quarantines an artifact (MIME ≠ filename extension). Cloud
2862
- * persists these on `IMTask.metadata.outboxRejections` and re-injects into
2863
- * the next dispatch prompt as agent-visible feedback.
2864
- */
2865
- interface OutboxRejectionRecord {
2866
- filename: string;
2867
- reason: string;
2868
- inferredMime: string;
2869
- detectedMime: string;
2870
- rejectedAt: string;
2871
- }
2872
- interface TaskDispatchReplyPayload {
2873
- taskId: string;
2874
- ok: boolean;
2875
- output?: string;
2876
- error?: {
2877
- code: string;
2878
- message: string;
2879
- };
2880
- assetIds?: string[];
2881
- metrics?: {
2882
- tokensUsed?: number;
2883
- durationMs?: number;
2884
- };
2885
- /** Wave-8 W1: per-asset handling report. */
2886
- assetObservability?: AssetDispatchObservation[];
2887
- /**
2888
- * P1-2: files quarantined by daemon outbox-watcher's magic-bytes guard
2889
- * during this turn. Empty/absent when nothing was rejected.
2890
- */
2891
- outboxRejections?: OutboxRejectionRecord[];
2892
- }
2893
- interface TaskCancelPayload {
2894
- taskId: string;
2895
- reason?: string;
2896
- }
2897
- /**
2898
- * Wire envelope for v2.0 WS events. `timestamp` is required (mirrors the
2899
- * cloud-side `WSMessage<T>` definition in src/im/types/index.ts).
2900
- */
2901
- interface IMWSMessage<T = unknown> {
2902
- type: string;
2903
- payload: T;
2904
- requestId?: string;
2905
- timestamp: number;
2906
- }
2907
- interface WorkspaceChangedPayload {
2908
- workspaceId: string;
2909
- /** ISO-8601 timestamp from im_workspaces.updatedAt. */
2910
- updatedAt: string;
2911
- }
2912
- interface AgentProfileChangedPayload {
2913
- profileId: string;
2914
- version: number;
2915
- }
2916
- interface AgentChangedPayload {
2917
- agentImUserId: string;
2918
- fields: {
2919
- displayName?: string;
2920
- capabilities?: string[];
2921
- };
2922
- }
2923
- interface WorkspaceFileChangedPayload {
2924
- workspaceId: string;
2925
- path: string;
2926
- operation: 'create' | 'update' | 'delete';
2927
- assetId?: string;
2928
- contentHash?: string;
2929
- version: number;
2930
- }
2931
- interface AssetChangedPayload {
2932
- workspaceId: string;
2933
- assetId: string;
2934
- operation: 'create' | 'update' | 'delete';
2935
- contentHash?: string;
2936
- assetIndexSeq?: number;
2937
- revision?: number;
2938
- }
2939
-
2940
3264
  /**
2941
3265
  * Prismer SDK — Multi-Tab Coordination
2942
3266
  *
@@ -3616,7 +3940,7 @@ declare class DirectClient {
3616
3940
  * generates a UUID per call and stamps it into the `X-Idempotency-Key`
3617
3941
  * header. Pass the same key across retries to trigger server dedup.
3618
3942
  */
3619
- send(userId: string, content: string | ContentBlock[], options?: IMSendOptions): Promise<IMResult<IMMessageData>>;
3943
+ send(userId: string, content: string | ContentBlockInput[], options?: IMSendOptions): Promise<IMResult<IMMessageData>>;
3620
3944
  /** Get direct message history with a user */
3621
3945
  getMessages(userId: string, options?: IMPaginationOptions): Promise<IMResult<IMMessage[]>>;
3622
3946
  }
@@ -3636,7 +3960,7 @@ declare class GroupsClient {
3636
3960
  * v2.0 §4.6 — `content` may now be a `ContentBlock[]` for multimodal sends.
3637
3961
  * v2.0 §3.0.2 Gap A-④ — auto-generates `X-Idempotency-Key` per call.
3638
3962
  */
3639
- send(groupId: string, content: string | ContentBlock[], options?: IMSendOptions): Promise<IMResult<IMMessageData>>;
3963
+ send(groupId: string, content: string | ContentBlockInput[], options?: IMSendOptions): Promise<IMResult<IMMessageData>>;
3640
3964
  /** Get group message history */
3641
3965
  getMessages(groupId: string, options?: IMPaginationOptions): Promise<IMResult<IMMessage[]>>;
3642
3966
  /** Add a member to a group (owner/admin only) */
@@ -3691,7 +4015,7 @@ declare class MessagesClient {
3691
4015
  * `(conversationId, idempotencyKey)` dedup; pass the same key across
3692
4016
  * retries to safely re-send.
3693
4017
  */
3694
- send(conversationId: string, content: string | ContentBlock[], options?: IMSendOptions): Promise<IMResult<IMMessageData>>;
4018
+ send(conversationId: string, content: string | ContentBlockInput[], options?: IMSendOptions): Promise<IMResult<IMMessageData>>;
3695
4019
  /** Get message history for a conversation */
3696
4020
  getHistory(conversationId: string, options?: IMPaginationOptions): Promise<IMResult<IMMessage[]>>;
3697
4021
  /** Edit a message */
@@ -3794,8 +4118,8 @@ declare class WorkspaceClient {
3794
4118
  init(options: IMWorkspaceInitOptions): Promise<IMResult<IMWorkspaceData>>;
3795
4119
  /** Initialize a group workspace (multi-user + multi-agent) */
3796
4120
  initGroup(options: IMWorkspaceInitGroupOptions): Promise<IMResult<IMWorkspaceData>>;
3797
- /** Add an agent to a workspace */
3798
- addAgent(workspaceId: string, agentId: string): Promise<IMResult<void>>;
4121
+ /** Create a low-level agent identity in a workspace. Role workflows use the role-builder harness. */
4122
+ addAgent(workspaceId: string, options: IMWorkspaceCreateAgentOptions | string): Promise<IMResult<unknown>>;
3799
4123
  /** List agents in a workspace */
3800
4124
  listAgents(workspaceId: string): Promise<IMResult<any[]>>;
3801
4125
  /** @mention autocomplete */
@@ -3848,6 +4172,22 @@ declare class TasksClient {
3848
4172
  fail(taskId: string, error: string, metadata?: Record<string, unknown>): Promise<IMResult<IMTask>>;
3849
4173
  /** Approve a completed task */
3850
4174
  approve(taskId: string): Promise<IMResult<IMTask>>;
4175
+ /**
4176
+ * apc P-6 — post an auditable task event (`POST /tasks/:id/event`).
4177
+ *
4178
+ * Lands one `im_task_logs` row: `action = code.toLowerCase()`, `payload`
4179
+ * serialised into metadata. Server-side authorization: only the task
4180
+ * assignee may post. Used by `cloud skill ack` for skill invocation
4181
+ * receipts (code `SKILL_ACK` → action `skill_ack`).
4182
+ */
4183
+ postEvent(taskId: string, options: {
4184
+ code: string;
4185
+ payload?: Record<string, unknown>;
4186
+ message?: string;
4187
+ }): Promise<IMResult<{
4188
+ taskId: string;
4189
+ action: string;
4190
+ }>>;
3851
4191
  /** Reject a task with reason */
3852
4192
  reject(taskId: string, reason: string): Promise<IMResult<IMTask>>;
3853
4193
  /** Cancel a task */
@@ -3866,7 +4206,7 @@ declare class TasksClient {
3866
4206
  * `allowedActors`.
3867
4207
  */
3868
4208
  transition(taskId: string, options: {
3869
- to: 'pending' | 'assigned' | 'running' | 'review' | 'blocked' | 'failed' | 'completed' | 'cancelled';
4209
+ to: 'pending' | 'assigned' | 'running' | 'review' | 'blocked' | 'awaiting_approval' | 'failed' | 'completed' | 'cancelled';
3870
4210
  assigneeId?: string | null;
3871
4211
  position?: number;
3872
4212
  reason?: string;
@@ -3880,7 +4220,7 @@ declare class TasksClient {
3880
4220
  * with `force_transition: true`. UI does NOT expose this — ops only.
3881
4221
  */
3882
4222
  forceTransition(taskId: string, options: {
3883
- to: 'pending' | 'assigned' | 'running' | 'review' | 'blocked' | 'failed' | 'completed' | 'cancelled';
4223
+ to: 'pending' | 'assigned' | 'running' | 'review' | 'blocked' | 'awaiting_approval' | 'failed' | 'completed' | 'cancelled';
3884
4224
  reason: string;
3885
4225
  }): Promise<IMResult<IMTask>>;
3886
4226
  /** Get rolled-up acceptance + criteria list for a task. */
@@ -3916,6 +4256,12 @@ declare class TasksClient {
3916
4256
  required?: boolean;
3917
4257
  weight?: number;
3918
4258
  evidenceRefs?: unknown[];
4259
+ execution?: {
4260
+ command: string;
4261
+ cwd: string;
4262
+ workdirId: string;
4263
+ };
4264
+ reviewKind?: "code-review" | "design-review";
3919
4265
  }) => Promise<IMResult<unknown>>;
3920
4266
  /** Update a criterion in place. */
3921
4267
  update: (taskId: string, cid: string, patch: {
@@ -3925,6 +4271,12 @@ declare class TasksClient {
3925
4271
  weight?: number;
3926
4272
  required?: boolean;
3927
4273
  evidenceRefs?: unknown[];
4274
+ execution?: {
4275
+ command: string;
4276
+ cwd: string;
4277
+ workdirId: string;
4278
+ };
4279
+ reviewKind?: "code-review" | "design-review";
3928
4280
  }) => Promise<IMResult<unknown>>;
3929
4281
  /** Remove a criterion. */
3930
4282
  remove: (taskId: string, cid: string) => Promise<IMResult<unknown>>;
@@ -3937,6 +4289,7 @@ declare class TasksClient {
3937
4289
  outcome: "passed" | "failed" | "n/a" | "waived";
3938
4290
  note?: string;
3939
4291
  evidenceRefs?: string[];
4292
+ reviewArtifact?: unknown;
3940
4293
  waiveReason?: string;
3941
4294
  }) => Promise<IMResult<unknown>>;
3942
4295
  };
@@ -4049,6 +4402,83 @@ interface MetricAggregateResponse {
4049
4402
  };
4050
4403
  buckets: MetricBucketResult[];
4051
4404
  }
4405
+ /**
4406
+ * B-P1c — scope axis of `turnSummary()` (GET /api/im/metrics/turns).
4407
+ */
4408
+ type TurnScope = 'conversation' | 'task' | 'agent';
4409
+ /**
4410
+ * Frozen contract — mirrors `TurnMetricsSummary` in
4411
+ * src/im/services/metric-turns.service.ts VERBATIM (field names are additive
4412
+ * only; renames / removals are not allowed). `null` always means "no rows in
4413
+ * the window" — never 0-by-inference, never NaN. `turnCountByStatus` carries
4414
+ * `null` for a status the window never saw (the daemon emits only ok/error);
4415
+ * `models` lists only turns that carried a model dim, so sum(models.turns)
4416
+ * can be < turnCount.
4417
+ */
4418
+ interface TurnMetricsSummary {
4419
+ turnCount: number;
4420
+ turnCountByStatus: {
4421
+ ok: number | null;
4422
+ error: number | null;
4423
+ };
4424
+ avgTokensPerTurn: {
4425
+ input: number | null;
4426
+ output: number | null;
4427
+ cacheRead: number | null;
4428
+ cacheWrite: number | null;
4429
+ };
4430
+ cacheHitRatio: number | null;
4431
+ p95FirstEventMs: number | null;
4432
+ avgDurationMs: number | null;
4433
+ toolCallsPerTurn: number | null;
4434
+ models: Array<{
4435
+ model: string;
4436
+ turns: number;
4437
+ }>;
4438
+ }
4439
+ interface TurnSummaryOptions {
4440
+ scope: TurnScope;
4441
+ /** conversationId | taskId | agentId (IM user id of the agent). */
4442
+ id: string;
4443
+ /** Mandatory; a plain query param on /turns (unlike aggregate()'s filter csv). */
4444
+ workspaceId: string;
4445
+ /** e.g. '24h' | '7d' — same Nh|Nd grammar as aggregate(); default 24h. */
4446
+ range?: string;
4447
+ from?: string;
4448
+ to?: string;
4449
+ }
4450
+ interface MetricEventsOptions {
4451
+ namespace: string;
4452
+ name: string;
4453
+ /** workspaceId is required; other keys ride the filter csv like aggregate(). */
4454
+ filter: Record<string, string> & {
4455
+ workspaceId: string;
4456
+ };
4457
+ range?: string;
4458
+ from?: string;
4459
+ to?: string;
4460
+ /** Server default 50, clamped to 200. */
4461
+ limit?: number;
4462
+ }
4463
+ /** One raw event row (runtime210/06 W12b provenance read). */
4464
+ interface MetricEventRow {
4465
+ id: string;
4466
+ ts: string;
4467
+ valueNumeric: number | null;
4468
+ valueString: string | null;
4469
+ dims: Record<string, unknown> | null;
4470
+ source: string;
4471
+ sourceId: string | null;
4472
+ }
4473
+ interface MetricEventsResponse {
4474
+ namespace: string;
4475
+ name: string;
4476
+ range: {
4477
+ from: string;
4478
+ to: string;
4479
+ };
4480
+ events: MetricEventRow[];
4481
+ }
4052
4482
  /**
4053
4483
  * release201/11 §6 — unified metric data channel.
4054
4484
  *
@@ -4056,6 +4486,8 @@ interface MetricAggregateResponse {
4056
4486
  * - `batch()` ships an array of events (≤ 500) — used by daemon outbox flush
4057
4487
  * in Phase 2.
4058
4488
  * - `aggregate()` runs a server-side query against `im_metric_events`.
4489
+ * - `events()` reads the raw rows behind an aggregate (provenance drill-down).
4490
+ * - `turnSummary()` joins the turn.* family into a scoped summary (B-P1d).
4059
4491
  */
4060
4492
  declare class MetricsClient {
4061
4493
  private _r;
@@ -4072,6 +4504,18 @@ declare class MetricsClient {
4072
4504
  }>;
4073
4505
  }>>;
4074
4506
  aggregate(opts: MetricAggregateOptions): Promise<IMResult<MetricAggregateResponse>>;
4507
+ /**
4508
+ * B-P1d — raw event rows behind an aggregate (runtime210/06 W12b
4509
+ * provenance read). workspaceId is mandatory on the filter — same
4510
+ * cross-workspace rule as aggregate(); the server rejects without it.
4511
+ */
4512
+ events(opts: MetricEventsOptions): Promise<IMResult<MetricEventsResponse>>;
4513
+ /**
4514
+ * B-P1d — conversation / task / agent scoped turn summary over the turn.*
4515
+ * family. The response `data` shape is the frozen TurnMetricsSummary
4516
+ * contract above.
4517
+ */
4518
+ turnSummary(opts: TurnSummaryOptions): Promise<IMResult<TurnMetricsSummary>>;
4075
4519
  }
4076
4520
  /** Identity key management: Ed25519 keys, attestation, audit */
4077
4521
  declare class IdentityClient {
@@ -4217,6 +4661,8 @@ declare class AgentsClient {
4217
4661
  private _r;
4218
4662
  readonly skills: AgentSkillsClient;
4219
4663
  constructor(_r: RequestFn);
4664
+ /** Discover AgentCard-backed agents in a workspace the caller belongs to. */
4665
+ discover(options: IMAgentDiscoverOptions): Promise<IMResult<IMAgentCatalogEntry[]>>;
4220
4666
  spec(agentId: string, workspaceId?: string): Promise<IMResult<IMAgentSpec>>;
4221
4667
  snapshot(agentId: string, options?: IMAgentSnapshotOptions): Promise<IMResult<IMAgentSnapshot>>;
4222
4668
  snapshots(agentId: string, options?: {
@@ -4689,15 +5135,18 @@ declare class WorkspacesClient {
4689
5135
  */
4690
5136
  getOrchestrator(workspaceId: string): Promise<IMResult<IMWorkspaceOrchestratorEnvelope>>;
4691
5137
  /**
4692
- * Appoint an agent as the workspace's orchestrator. Owner-only. If an
4693
- * orchestrator is already active, this auto-revokes the previous one in the
4694
- * same UPDATE.
5138
+ * Appoint an agent as the workspace's orchestrator. Owner-only.
5139
+ *
5140
+ * ⚠️ FIRST appointment only. The orchestrator is a node of the platform
5141
+ * network — it holds a globally-unique AIP identity (DID) and system contact
5142
+ * edges to the platform official agents — so the appointment is PERMANENT:
5143
+ * appointing a different agent while one is already in place fails with
5144
+ * 409 `ORCHESTRATOR_IMMUTABLE`. Re-appointing the same agent is a no-op.
5145
+ * Revocation does not exist (`revokeOrchestrator` was removed in 2.1.0).
4695
5146
  */
4696
5147
  appointOrchestrator(workspaceId: string, agentImUserId: string): Promise<IMResult<{
4697
5148
  orchestrator: IMWorkspaceOrchestrator | null;
4698
5149
  }>>;
4699
- /** Revoke the workspace's current orchestrator. Owner-only. Idempotent. */
4700
- revokeOrchestrator(workspaceId: string): Promise<IMResult<void>>;
4701
5150
  }
4702
5151
  /** Workspace membership role. Different enum from project (16 §5.1 decision). */
4703
5152
  type WorkspaceRole = 'owner' | 'admin' | 'member';
@@ -5111,9 +5560,23 @@ declare class IMRealtimeClient {
5111
5560
  subscribeTaskEvents(token: string, onEvent: (event: TaskEventEnvelope) => void, options?: {
5112
5561
  lastEventId?: string;
5113
5562
  signal?: AbortSignal;
5563
+ /** release203/12 — prefer the unified single WS (`ch:'tasks'`) over the
5564
+ * `/api/im/tasks/events` SSE. Default true; falls back to SSE when no
5565
+ * WebSocket is available. */
5566
+ unifiedWs?: boolean;
5567
+ /** Custom WebSocket ctor (Node <21 / tests); else the global WebSocket. */
5568
+ WebSocket?: new (url: string) => WebSocket;
5114
5569
  }): Promise<{
5115
5570
  disconnect: () => void;
5116
5571
  }>;
5572
+ /**
5573
+ * release203/12 — task events over the unified single WebSocket.
5574
+ * Connects to `WS /ws/realtime`, filters the `ch:'tasks'` frames, and emits
5575
+ * the SAME `{ type, payload }` envelopes `subscribeTaskEvents` did over SSE
5576
+ * (the WS carries no per-event `id`; cursor resume is handled by the sync
5577
+ * channel). The `ch:'sync'` frames + control frames are ignored here.
5578
+ */
5579
+ private subscribeTaskEventsWs;
5117
5580
  }
5118
5581
  interface SkillDraftManifestFile {
5119
5582
  path: string;
@@ -5222,6 +5685,27 @@ declare class SkillsClient {
5222
5685
  readonly draft: SkillsDraftClient;
5223
5686
  constructor(_r: RequestFn);
5224
5687
  }
5688
+ declare class PkfClient {
5689
+ private readonly _r;
5690
+ private readonly _fetchAuthed;
5691
+ constructor(_r: RequestFn, _fetchAuthed: (path: string, init?: RequestInit) => Promise<Response>);
5692
+ materialize(input: PkfCarrierMaterializeRequest): Promise<PkfApiEnvelope<PkfCarrierMaterializationView>>;
5693
+ getMaterialization(query: PkfMaterializationReadQuery): Promise<PkfApiEnvelope<PkfCarrierMaterializationView | null>>;
5694
+ discoverMaterialization(query: PkfMaterializationDiscoveryQuery): Promise<PkfApiEnvelope<PkfCarrierMaterializationView | null>>;
5695
+ /** Atomically commit a PKF root plus its exact root-bound dependency graph. */
5696
+ commitBundle(input: PkfBundleCommitRequest): Promise<PkfApiEnvelope<PkfBundleCommitView>>;
5697
+ /** Restore the caller-scoped durable bundle receipt after process restart. */
5698
+ getBundle(query: PkfBundleReadQuery): Promise<PkfApiEnvelope<PkfBundleCommitView>>;
5699
+ getArtifactRelations(query: PkfArtifactRelationsQuery): Promise<PkfApiEnvelope<PkfArtifactGraphView>>;
5700
+ getResourceDetail(query: PkfResourceReadQuery): Promise<PkfApiEnvelope<PkfResourceDetailView>>;
5701
+ /**
5702
+ * Read root-authorized dependency bytes. This intentionally returns the raw
5703
+ * Response so callers can stream the body and verify `X-Asset-Hash`.
5704
+ */
5705
+ getResourceBytes(query: PkfResourceReadQuery): Promise<Response>;
5706
+ /** Low-level canonical request seam used by the Cloud CLI. */
5707
+ request<T = unknown>(method: string, path: `/api/pkf/${string}`, body?: unknown, query?: Record<string, string>): Promise<T>;
5708
+ }
5225
5709
  declare class IMClient {
5226
5710
  readonly account: AccountClient;
5227
5711
  readonly direct: DirectClient;
@@ -5298,6 +5782,8 @@ declare class PrismerClient {
5298
5782
  private _identityReady;
5299
5783
  /** IM API sub-client */
5300
5784
  readonly im: IMClient;
5785
+ /** Canonical Cloud PKF surface (`/api/pkf/*`), never nested under IM. */
5786
+ readonly pkf: PkfClient;
5301
5787
  /** v2.0 workspace public surface (`/api/im/workspaces`). */
5302
5788
  readonly workspaces: WorkspacesClient;
5303
5789
  /** v2.0.8 release201/16 — token-bearing invite endpoints (preview/accept/reject). */
@@ -5331,9 +5817,10 @@ declare class PrismerClient {
5331
5817
  *
5332
5818
  * The path may be absolute (`/api/...`) or a full URL — full URLs are used
5333
5819
  * verbatim (useful for following 302 redirects), otherwise the path is
5334
- * appended to the client's configured `baseUrl`. Authorization + `X-IM-Agent`
5335
- * headers are added automatically; caller-supplied headers in `init.headers`
5336
- * override them on collision.
5820
+ * appended to the client's configured `baseUrl`. Authorization plus the
5821
+ * authority-specific agent header are added automatically: canonical PKF
5822
+ * requests use `X-Prismer-Agent`, while legacy `/api/im/*` keeps
5823
+ * `X-IM-Agent`. Caller-supplied headers override them on collision.
5337
5824
  *
5338
5825
  * Use this for binary downloads / partial fetches; for normal JSON-envelope
5339
5826
  * IM requests use `client.im.request()` (typed) or the typed sub-clients.
@@ -5367,4 +5854,4 @@ declare class PrismerClient {
5367
5854
 
5368
5855
  declare function createClient(config: PrismerConfig): PrismerClient;
5369
5856
 
5370
- export { AccountClient, type AgentChangedPayload, type AgentHostDeclarePayload, type AgentProfileChangedPayload, AgentSkillsClient, type AgentStatusChangedPayload, AgentsClient, type AssetChangedPayload, type AssetDispatchObservation, type AssetDispatchStrategy, type AssetRef, AssetsClient, AttachmentQueue, type AudioMime, type AuthenticatedPayload, type BatchSummary, type BatchUrlCost, BindingsClient, type CacheManager, type Card, type CardCreateInput, type CardFilters, type CardKanbanMetadata, type CardKanbanMetadataSource, type CardKanbanStatus, type CardMetadata, type CardMove, type ChatMessage, type CommandResult, CommunityHub, type CommunityHubConfig, ContactsClient, type ContentBlock, type ContentBlockAudio, type ContentBlockFile, type ContentBlockImage, type ContentBlockReasoning, type ContentBlockText, type ContentBlockToolResult, type ContentBlockToolUse, type ContentBlockVideo, type ControlCommand, ConversationsClient, CreditsClient, CriteriaTemplatesClient, type DaemonControlPlane, type DecryptResult, type DerivationMode, DirectClient, type DisconnectedPayload, E2EEncryption, ENVIRONMENTS, type EncryptedContextResult, type EncryptedFileResult, type EncryptedMessage, type Environment, type ErrorPayload, EvolutionCache, EvolutionClient, EvolutionRuntime, type EvolutionRuntimeConfig, type EvolutionSession, EvolutionSkillsClient, type EvolutionSyncDelta, type EvolutionSyncSnapshot, type ExecutionContext, type ExecutionPolicy, type FileInput, FilesClient, type GeneCategory, type GeneSelectionResult, type GeneVisibility, GroupsClient, type HostAckedPayload, type HostedAgentDeclaration, type IMAccountDeleteResult, type IMAgentCard, type IMAgentForkOptions, type IMAgentForkResult, type IMAgentPack, type IMAgentPackListOptions, type IMAgentPersonality, type IMAgentPublishOptions, type IMAgentRestoreOptions, type IMAgentSkillAckInput, type IMAgentSkillInstallOptions, type IMAgentSkillListOptions, type IMAgentSkillRecord, type IMAgentSnapshot, type IMAgentSnapshotOptions, type IMAgentSpec, type IMAgentStatus, type IMAnalyzeOptions, type IMAnalyzeResult, type IMAsset, type IMAssetDetail, type IMAssetListOptions, type IMAssetPreviewContract, type IMAssetPreviewKind, type IMAssetPreviewStatus, type IMAssetRevision, type IMAssetRevisionList, type IMAssetUploadOptions, type IMAutocompleteResult, type IMBinding, type IMBindingData, type IMBlockedUser, type IMCapsule, IMClient, type IMCompactOptions, type IMCompactionSummary, type IMCompleteTaskOptions, type IMConfirmResult, type IMContact, type IMConversation, type IMConversationsOptions, type IMCreateBindingOptions, type IMCreateGeneOptions, type IMCreateGroupOptions, type IMCreateMemoryFileOptions, type IMCreateRuntimeInstallationOptions, type IMCreateTaskOptions, type IMCreateWorkspaceFileOptions, type IMCreateWorkspaceOptions, type IMCreditsData, type IMDiscoverAgent, type IMDiscoverOptions, type IMEvolutionEdge, type IMEvolutionStats, type IMFileQuota, type IMForkGeneOptions, type IMFriendRequest, type IMGene, type IMGeneListOptions, type IMGroupData, type IMGroupMember, type IMIdentityKey, type IMInstallAgentOnRuntimeOptions, type IMInstallAgentOnRuntimeResult, type IMKeyAuditEntry, type IMKeyVerifyResult, type IMKnowledgeLink, type IMMeData, type IMMemoryDigest, type IMMemoryDigestOptions, type IMMemoryFile, type IMMemoryFileDetail, type IMMemoryKnowledgeLinks, type IMMemoryLoadResult, type IMMessage, type IMMessageAttachment, type IMMessageData, type IMMultipartInitResult, type IMOwnedAgent, type IMPaginationOptions, type IMPatchRuntimeInstallationOptions, type IMPresignOptions, type IMPresignResult, type IMProject, type IMProjectMembership, type IMProjectWithCounts, IMRealtimeClient, type IMRecordOutcomeOptions, type IMRegisterData, type IMRegisterKeyOptions, type IMRegisterOptions, type IMResult, type IMRouting, type IMRuntimeInstallation, type IMSendOptions, type IMSkillContent, type IMSkillCreateInput, type IMSkillInfo, type IMSkillInstallResult, type IMSkillSearchOptions, type IMSkillUpdateInput, type IMStudioAgentSummary, type IMStudioInstalled, type IMStudioInstalledSkill, type IMStudioOverview, type IMStudioProfile, type IMTask, type IMTaskDetail, type IMTaskListOptions, type IMTaskLog, type IMTaskResult, type IMTokenData, type IMTransaction, type IMUpdateMemoryFileOptions, type IMUpdateTaskOptions, type IMUpdateWorkspaceOptions, type IMUser, type IMUserProfile, type IMWSMessage, type IMWorkspace, type IMWorkspaceData, type IMWorkspaceFile, type IMWorkspaceFileSyncResult, type IMWorkspaceInitGroupOptions, type IMWorkspaceInitOptions, type IMWorkspaceInvite, type IMWorkspaceMember, type IMWorkspaceOrchestrator, type IMWorkspaceOrchestratorEnvelope, type IMWorkspaceSyncResult, IdentityClient, type ImageMime, IndexedDBStorage, InvitesClient, type KeyManager, KnowledgeLinkClient, type KnowledgeLinkSource, type KnowledgeLinkType, type LLMBackend, type LLMDispatcher, type LLMResult, type LLMTask, type LoadOptions, type LoadResult, type LoadResultItem, MemoryClient, MemoryStorage, type MessageDeletedPayload, type MessageEditPayload, type MessageNewPayload, type MessageReactionPayload, MessagesClient, type MetricAgg, type MetricAggregateOptions, type MetricAggregateResponse, type MetricBucket, type MetricBucketResult, type MetricEmitInput, MetricsClient, type ModelEntry, type NotificationSink, type OfflineConfig, type OfflineEventMap, type OfflineEventType, OfflineManager, type OutboxOperation, type OutboxRejectionRecord, type ParseCost, type ParseCostBreakdown, type ParseDocument, type ParseDocumentImage, type ParseOptions, type ParseResult, type ParseUsage, type PongPayload, type PresenceChangedPayload, PrismerClient, type PrismerConfig, type PrismerEvent, type ProjectCreateOptions, type ProjectDeleteCascade, type ProjectListOptions, type ProjectListResult, type ProjectMemberAddOptions, ProjectMembersClient, type ProjectMembershipRole, type ProjectPrincipalKind, type ProjectStatus, type ProjectUpdateOptions, ProjectsClient, type QueryCost, type QuerySummary, type QueuedAttachment, type QueuedTask, type RankingFactors, type RealtimeCommand, type RealtimeConfig, type RealtimeEventMap, type RealtimeEventType, RealtimeSSEClient, type RealtimeState, RealtimeWSClient, type ReconnectingPayload, type RejectedHostedAgent, type RequestFn, type RequestOpts, RuntimeInstallationsClient, type RuntimePhase, type RuntimeRoute, SQLiteStorage, type SaveBatchOptions, type SaveOptions, type SaveResult, type ScheduleType, SecurityClient, type SendFileOptions, type SendFileResult, type SessionMetrics, type SignalEnrichmentConfig, type SignalTag, type SingleUrlCost, type SkillDraftCreateInput, type SkillDraftCreateResult, type SkillDraftDTO, type SkillDraftManifestFile, type SkillDraftPatchInput, type SkillDraftPatchOp, type SkillDraftRegenerateInput, type SkillDraftValidationWarning, SkillsClient, SkillsDraftClient, type StorageAdapter, type StoredContact, type StoredConversation, type StoredMessage, StudioClient, StudioEvolutionClient, type Suggestion, type SyncEvent, type SyncResult, TabCoordinator, type TaskCancelPayload, type TaskDispatchContextEntry, type TaskDispatchProgressPayload, type TaskDispatchReplyPayload, type TaskDispatchRequestPayload, type TaskEventEnvelope, type TaskEventType, type TaskExecutor, type TaskInput, type TaskKind, type TaskStatus, TasksClient, type TypingIndicatorPayload, type UploadOptions, type UploadResult, type VideoMime, WORKSPACE_ASSETS_ROUTE, type WorkspaceAssetFilters, type WorkspaceAssetRoute, type WorkspaceAssetUploadInput, type WorkspaceAssetsApiContract, type WorkspaceChangedPayload, WorkspaceClient, type WorkspaceFileChangedPayload, WorkspaceFilesClient, type WorkspaceInviteCreateOptions, type WorkspaceInvitePreview, type WorkspaceInviteRole, type WorkspaceInviteStatus, WorkspaceInvitesClient, type WorkspaceMemberAddOptions, type WorkspaceMemberRemoveResult, WorkspaceMembersClient, type WorkspaceRole, WorkspacesClient, createClient, createEnrichedExtractor, decryptContext, decryptFile, decryptMessages, decryptOnReceive, PrismerClient as default, encryptContext, encryptFile, encryptForSend, extractSignals, guessMimeType, readCardKanbanMetadata, safeSlug, writeCardKanbanMetadata };
5857
+ export { AccountClient, type AgentChangedPayload, type AgentHostDeclarePayload, type AgentProfileChangedPayload, AgentSkillsClient, type AgentStatusChangedPayload, AgentsClient, type AssetChangedPayload, type AssetDispatchObservation, type AssetDispatchStrategy, type AssetRef, AssetsClient, AttachmentQueue, type AudioMime, type AuthenticatedPayload, type BatchSummary, type BatchUrlCost, BindingsClient, type CacheManager, type Card, type CardCreateInput, type CardFilters, type CardKanbanMetadata, type CardKanbanMetadataSource, type CardKanbanStatus, type CardMetadata, type CardMove, type ChatMessage, type CommandResult, CommunityHub, type CommunityHubConfig, ContactsClient, type ContentBlock, type ContentBlockAudio, type ContentBlockFile, type ContentBlockImage, type ContentBlockInput, type ContentBlockOutput, type ContentBlockPkf, type ContentBlockPkfInput, type ContentBlockPkfOutput, type ContentBlockReasoning, type ContentBlockText, type ContentBlockToolResult, type ContentBlockToolResultInput, type ContentBlockToolResultOutput, type ContentBlockToolUse, type ContentBlockVideo, type ControlCommand, ConversationsClient, CreditsClient, CriteriaTemplatesClient, type DaemonControlPlane, type DecryptResult, type DerivationMode, DirectClient, type DisconnectedPayload, E2EEncryption, ENVIRONMENTS, type EncryptedContextResult, type EncryptedFileResult, type EncryptedMessage, type Environment, type ErrorPayload, EvolutionCache, EvolutionClient, EvolutionRuntime, type EvolutionRuntimeConfig, type EvolutionSession, EvolutionSkillsClient, type EvolutionSyncDelta, type EvolutionSyncSnapshot, type ExecutionContext, type ExecutionPolicy, type FileInput, FilesClient, type GeneCategory, type GeneSelectionResult, type GeneVisibility, GroupsClient, type HostAckedPayload, type HostedAgentDeclaration, type IMAccountDeleteResult, type IMAgentCard, type IMAgentCatalogCapability, type IMAgentCatalogEntry, type IMAgentDiscoverOptions, type IMAgentForkOptions, type IMAgentForkResult, type IMAgentPack, type IMAgentPackListOptions, type IMAgentPersonality, type IMAgentPublishOptions, type IMAgentRestoreOptions, type IMAgentSkillAckInput, type IMAgentSkillInstallOptions, type IMAgentSkillListOptions, type IMAgentSkillRecord, type IMAgentSnapshot, type IMAgentSnapshotOptions, type IMAgentSpec, type IMAgentStatus, type IMAnalyzeOptions, type IMAnalyzeResult, type IMAsset, type IMAssetDetail, type IMAssetListOptions, type IMAssetPreviewContract, type IMAssetPreviewKind, type IMAssetPreviewStatus, type IMAssetRevision, type IMAssetRevisionList, type IMAssetUploadOptions, type IMAutocompleteResult, type IMBinding, type IMBindingData, type IMBlockedUser, type IMCapsule, IMClient, type IMCompactOptions, type IMCompactionSummary, type IMCompleteTaskOptions, type IMConfirmResult, type IMContact, type IMConversation, type IMConversationsOptions, type IMCreateBindingOptions, type IMCreateGeneOptions, type IMCreateGroupOptions, type IMCreateMemoryFileOptions, type IMCreateRuntimeInstallationOptions, type IMCreateTaskOptions, type IMCreateWorkspaceFileOptions, type IMCreateWorkspaceOptions, type IMCreditsData, type IMDiscoverAgent, type IMDiscoverOptions, type IMEvolutionEdge, type IMEvolutionStats, type IMFileQuota, type IMForkGeneOptions, type IMFriendRequest, type IMGene, type IMGeneListOptions, type IMGroupData, type IMGroupMember, type IMIdentityKey, type IMInstallAgentOnRuntimeOptions, type IMInstallAgentOnRuntimeResult, type IMKeyAuditEntry, type IMKeyVerifyResult, type IMKnowledgeLink, type IMMeData, type IMMemoryDigest, type IMMemoryDigestOptions, type IMMemoryFile, type IMMemoryFileDetail, type IMMemoryKnowledgeLinks, type IMMemoryLoadResult, type IMMessage, type IMMessageAttachment, type IMMessageData, type IMMultipartInitResult, type IMOwnedAgent, type IMPaginationOptions, type IMPatchRuntimeInstallationOptions, type IMPresignOptions, type IMPresignResult, type IMProject, type IMProjectMembership, type IMProjectWithCounts, IMRealtimeClient, type IMRecordOutcomeOptions, type IMRegisterData, type IMRegisterKeyOptions, type IMRegisterOptions, type IMResult, type IMRouting, type IMRuntimeInstallation, type IMSendOptions, type IMSkillContent, type IMSkillCreateInput, type IMSkillInfo, type IMSkillInstallResult, type IMSkillSearchOptions, type IMSkillUpdateInput, type IMStudioAgentSummary, type IMStudioInstalled, type IMStudioInstalledSkill, type IMStudioOverview, type IMStudioProfile, type IMTask, type IMTaskDetail, type IMTaskListOptions, type IMTaskLog, type IMTaskResult, type IMTokenData, type IMTransaction, type IMUpdateMemoryFileOptions, type IMUpdateTaskOptions, type IMUpdateWorkspaceOptions, type IMUser, type IMUserProfile, type IMWSMessage, type IMWorkspace, type IMWorkspaceCreateAgentOptions, type IMWorkspaceData, type IMWorkspaceFile, type IMWorkspaceFileSyncResult, type IMWorkspaceInitGroupOptions, type IMWorkspaceInitOptions, type IMWorkspaceInvite, type IMWorkspaceMember, type IMWorkspaceOrchestrator, type IMWorkspaceOrchestratorEnvelope, type IMWorkspaceSyncResult, IdentityClient, type ImageMime, IndexedDBStorage, InvitesClient, type KeyManager, KnowledgeLinkClient, type KnowledgeLinkSource, type KnowledgeLinkType, type LLMBackend, type LLMDispatcher, type LLMResult, type LLMTask, type LoadOptions, type LoadResult, type LoadResultItem, MemoryClient, MemoryStorage, type MessageDeletedPayload, type MessageEditPayload, type MessageNewPayload, type MessageReactionPayload, MessagesClient, type MetricAgg, type MetricAggregateOptions, type MetricAggregateResponse, type MetricBucket, type MetricBucketResult, type MetricEmitInput, type MetricEventRow, type MetricEventsOptions, type MetricEventsResponse, MetricsClient, type ModelEntry, type NotificationSink, type OfflineConfig, type OfflineEventMap, type OfflineEventType, OfflineManager, type OutboxOperation, type OutboxRejectionRecord, type ParseCost, type ParseCostBreakdown, type ParseDocument, type ParseDocumentImage, type ParseOptions, type ParseResult, type ParseUsage, type PkfApiEnvelope, type PkfArtifactGraphView, type PkfArtifactRelationView, type PkfArtifactRelationsQuery, type PkfArtifactRootKind, type PkfBundleCommitRequest, type PkfBundleCommitView, type PkfBundleReadQuery, type PkfBundleResourceUsage, type PkfCarrierMaterializationTarget, type PkfCarrierMaterializationView, type PkfCarrierMaterializeRequest, PkfClient, type PkfMaterializationDiscoveryQuery, type PkfMaterializationQuery, type PkfMaterializationReadQuery, type PkfMessageSourceLocator, type PkfResourceDetailView, type PkfResourceReadQuery, type PongPayload, type PresenceChangedPayload, PrismerClient, type PrismerConfig, type PrismerEvent, type ProjectCreateOptions, type ProjectDeleteCascade, type ProjectListOptions, type ProjectListResult, type ProjectMemberAddOptions, ProjectMembersClient, type ProjectMembershipRole, type ProjectPrincipalKind, type ProjectStatus, type ProjectUpdateOptions, ProjectsClient, type QueryCost, type QuerySummary, type QueuedAttachment, type QueuedTask, type RankingFactors, type RealtimeCommand, type RealtimeConfig, type RealtimeEventMap, type RealtimeEventType, RealtimeSSEClient, type RealtimeState, RealtimeWSClient, type ReconnectingPayload, type RejectedHostedAgent, type RequestFn, type RequestOpts, RuntimeInstallationsClient, type RuntimePhase, type RuntimeRoute, SQLiteStorage, type SaveBatchOptions, type SaveOptions, type SaveResult, type ScheduleType, SecurityClient, type SendFileOptions, type SendFileResult, type SessionMetrics, type SignalEnrichmentConfig, type SignalTag, type SingleUrlCost, type SkillDraftCreateInput, type SkillDraftCreateResult, type SkillDraftDTO, type SkillDraftManifestFile, type SkillDraftPatchInput, type SkillDraftPatchOp, type SkillDraftRegenerateInput, type SkillDraftValidationWarning, SkillsClient, SkillsDraftClient, type StorageAdapter, type StoredContact, type StoredConversation, type StoredMessage, StudioClient, StudioEvolutionClient, type Suggestion, type SyncEvent, type SyncResult, TabCoordinator, type TaskCancelPayload, type TaskDispatchContextEntry, type TaskDispatchProgressPayload, type TaskDispatchReplyPayload, type TaskDispatchRequestPayload, type TaskDurabilityPageReceipt, type TaskDurabilityResult, type TaskEventEnvelope, type TaskEventType, type TaskExecutor, type TaskInput, type TaskKind, type TaskStatus, TasksClient, type TurnMetricsSummary, type TurnScope, type TurnSummaryOptions, type TypingIndicatorPayload, type UploadOptions, type UploadResult, type VideoMime, WORKSPACE_ASSETS_ROUTE, type WorkspaceAssetFilters, type WorkspaceAssetRoute, type WorkspaceAssetUploadInput, type WorkspaceAssetsApiContract, type WorkspaceChangedPayload, WorkspaceClient, type WorkspaceFileChangedPayload, WorkspaceFilesClient, type WorkspaceInviteCreateOptions, type WorkspaceInvitePreview, type WorkspaceInviteRole, type WorkspaceInviteStatus, WorkspaceInvitesClient, type WorkspaceMemberAddOptions, type WorkspaceMemberRemoveResult, WorkspaceMembersClient, type WorkspaceRole, WorkspacesClient, createClient, createEnrichedExtractor, decryptContext, decryptFile, decryptMessages, decryptOnReceive, PrismerClient as default, encryptContext, encryptFile, encryptForSend, extractSignals, guessMimeType, readCardKanbanMetadata, safeSlug, writeCardKanbanMetadata };