@senguoyun/dsh-arkme 0.1.11 → 0.1.13

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 (218) hide show
  1. package/README.md +6 -2
  2. package/assets/desktop_call/avatar-lin-xiaoman.jpeg +0 -0
  3. package/assets/desktop_call/avatar-mother.jpg +0 -0
  4. package/assets/desktop_call/avatar-self.png +0 -0
  5. package/assets/desktop_call/call-add-linear.svg +13 -0
  6. package/assets/desktop_call/icon-scan-add-contact.svg +4 -0
  7. package/assets/desktop_call/profile-circle-linear.svg +11 -0
  8. package/assets/desktop_call/user-add-linear.svg +15 -0
  9. package/cordis.patch.yml +4 -1
  10. package/docs/consumer-plugin-contract.md +13 -4
  11. package/docs/extension-market-controls.md +1 -1
  12. package/docs/gui-production-integration.md +46 -0
  13. package/docs/record-calendar-ui-flow.md +88 -0
  14. package/docs/tool-registry.md +4 -0
  15. package/lib/client.js +43275 -15385
  16. package/lib/client.js.map +1 -1
  17. package/lib/extension-profile-restart-helper.js +19 -3
  18. package/lib/index.js +2293 -420
  19. package/lib/{install-store-D6P-dH2i.js → install-store-Sn3Ccxfu.js} +32 -5
  20. package/lib/persistent-extension.js +2 -2
  21. package/lib/{persistent-runtime-DInn3Zb1.js → persistent-runtime-Cki0XC3L.js} +1941 -288
  22. package/lib/plugin-updater-helper-CiPlNqBc.js +346 -0
  23. package/lib/plugin-updater-helper.js +2 -250
  24. package/lib/sdk.js +202 -3
  25. package/lib/types/arkme-service.d.ts +67 -2
  26. package/lib/types/arkme-service.d.ts.map +1 -1
  27. package/lib/types/chat-realtime.d.ts +8 -0
  28. package/lib/types/chat-realtime.d.ts.map +1 -1
  29. package/lib/types/client/ArkmeAccountMenu.d.ts +4 -0
  30. package/lib/types/client/ArkmeAccountMenu.d.ts.map +1 -0
  31. package/lib/types/client/ArkmeAppUpdateDialog.d.ts +5 -0
  32. package/lib/types/client/ArkmeAppUpdateDialog.d.ts.map +1 -0
  33. package/lib/types/client/ArkmeArkoSurface.d.ts.map +1 -1
  34. package/lib/types/client/ArkmeAvatar.d.ts.map +1 -1
  35. package/lib/types/client/ArkmeBrand.d.ts +35 -0
  36. package/lib/types/client/ArkmeBrand.d.ts.map +1 -0
  37. package/lib/types/client/ArkmeCalendarSurface.d.ts +10 -0
  38. package/lib/types/client/ArkmeCalendarSurface.d.ts.map +1 -0
  39. package/lib/types/client/ArkmeCallHistorySurface.d.ts +57 -0
  40. package/lib/types/client/ArkmeCallHistorySurface.d.ts.map +1 -0
  41. package/lib/types/client/ArkmeContactAddSurface.d.ts +9 -0
  42. package/lib/types/client/ArkmeContactAddSurface.d.ts.map +1 -0
  43. package/lib/types/client/ArkmeConversationSurface.d.ts +5 -3
  44. package/lib/types/client/ArkmeConversationSurface.d.ts.map +1 -1
  45. package/lib/types/client/ArkmeExtensionAvatar.d.ts.map +1 -1
  46. package/lib/types/client/ArkmeExtensionPublishDialog.d.ts.map +1 -1
  47. package/lib/types/client/ArkmeExtensionReviews.d.ts +10 -0
  48. package/lib/types/client/ArkmeExtensionReviews.d.ts.map +1 -1
  49. package/lib/types/client/ArkmeFooterDropdown.d.ts +1 -1
  50. package/lib/types/client/ArkmeFooterDropdown.d.ts.map +1 -1
  51. package/lib/types/client/ArkmeGroupChatControls.d.ts +1 -0
  52. package/lib/types/client/ArkmeGroupChatControls.d.ts.map +1 -1
  53. package/lib/types/client/ArkmeLogin.d.ts.map +1 -1
  54. package/lib/types/client/ArkmeMarketplace.d.ts +153 -0
  55. package/lib/types/client/ArkmeMarketplace.d.ts.map +1 -0
  56. package/lib/types/client/ArkmePrivateCallMenu.d.ts.map +1 -1
  57. package/lib/types/client/ArkmeProductNavigation.d.ts +8 -0
  58. package/lib/types/client/ArkmeProductNavigation.d.ts.map +1 -0
  59. package/lib/types/client/ArkmeQuickAdd.d.ts +12 -0
  60. package/lib/types/client/ArkmeQuickAdd.d.ts.map +1 -0
  61. package/lib/types/client/ArkmeRecordingSurface.d.ts +109 -3
  62. package/lib/types/client/ArkmeRecordingSurface.d.ts.map +1 -1
  63. package/lib/types/client/ArkmeSearchSurface.d.ts.map +1 -1
  64. package/lib/types/client/ArkmeSendToSelfIcon.d.ts +5 -0
  65. package/lib/types/client/ArkmeSendToSelfIcon.d.ts.map +1 -0
  66. package/lib/types/client/ArkmeSettingsRow.d.ts.map +1 -1
  67. package/lib/types/client/ArkmeSettingsSurface.d.ts +22 -0
  68. package/lib/types/client/ArkmeSettingsSurface.d.ts.map +1 -0
  69. package/lib/types/client/ArkmeSharedExtensionDetail.d.ts +7 -0
  70. package/lib/types/client/ArkmeSharedExtensionDetail.d.ts.map +1 -0
  71. package/lib/types/client/ArkmeSidebar.d.ts +11 -2
  72. package/lib/types/client/ArkmeSidebar.d.ts.map +1 -1
  73. package/lib/types/client/ArkmeTopicCreateDialog.d.ts +1 -1
  74. package/lib/types/client/ArkmeTopicCreateDialog.d.ts.map +1 -1
  75. package/lib/types/client/ArkmeTopicDirectoryPopover.d.ts +1 -0
  76. package/lib/types/client/ArkmeTopicDirectoryPopover.d.ts.map +1 -1
  77. package/lib/types/client/ArkmeVirtualWorkspace.d.ts +18 -1
  78. package/lib/types/client/ArkmeVirtualWorkspace.d.ts.map +1 -1
  79. package/lib/types/client/ArkmeWorldSurface.d.ts +30 -0
  80. package/lib/types/client/ArkmeWorldSurface.d.ts.map +1 -0
  81. package/lib/types/client/api.d.ts +1 -1
  82. package/lib/types/client/api.d.ts.map +1 -1
  83. package/lib/types/client/app-update-store.d.ts +35 -0
  84. package/lib/types/client/app-update-store.d.ts.map +1 -0
  85. package/lib/types/client/arkme-assets.d.ts +2 -2
  86. package/lib/types/client/arkme-assets.d.ts.map +1 -1
  87. package/lib/types/client/arkme-theme.d.ts +5 -3
  88. package/lib/types/client/arkme-theme.d.ts.map +1 -1
  89. package/lib/types/client/arkme-wordmark.d.ts +3 -0
  90. package/lib/types/client/arkme-wordmark.d.ts.map +1 -0
  91. package/lib/types/client/demo-audio.d.ts +2 -0
  92. package/lib/types/client/demo-audio.d.ts.map +1 -0
  93. package/lib/types/client/desktop-notification-runtime.d.ts +35 -0
  94. package/lib/types/client/desktop-notification-runtime.d.ts.map +1 -0
  95. package/lib/types/client/extension-market-model.d.ts +1 -0
  96. package/lib/types/client/extension-market-model.d.ts.map +1 -1
  97. package/lib/types/client/extension-share-deeplink.d.ts +5 -0
  98. package/lib/types/client/extension-share-deeplink.d.ts.map +1 -0
  99. package/lib/types/client/index.d.ts +15 -2
  100. package/lib/types/client/index.d.ts.map +1 -1
  101. package/lib/types/client/interwoven-moments.d.ts +1 -1
  102. package/lib/types/client/interwoven-moments.d.ts.map +1 -1
  103. package/lib/types/client/notification-activation-store.d.ts +16 -0
  104. package/lib/types/client/notification-activation-store.d.ts.map +1 -0
  105. package/lib/types/client/personal-test-edition.d.ts +17 -0
  106. package/lib/types/client/personal-test-edition.d.ts.map +1 -0
  107. package/lib/types/client/related-recordings.d.ts +1 -0
  108. package/lib/types/client/related-recordings.d.ts.map +1 -1
  109. package/lib/types/client/ui-controller.d.ts +13 -1
  110. package/lib/types/client/ui-controller.d.ts.map +1 -1
  111. package/lib/types/extensions/bundle-artifact.d.ts +22 -0
  112. package/lib/types/extensions/bundle-artifact.d.ts.map +1 -1
  113. package/lib/types/extensions/install-store.d.ts +1 -0
  114. package/lib/types/extensions/install-store.d.ts.map +1 -1
  115. package/lib/types/extensions/manager.d.ts +52 -2
  116. package/lib/types/extensions/manager.d.ts.map +1 -1
  117. package/lib/types/extensions/owned-inventory.d.ts +6 -3
  118. package/lib/types/extensions/owned-inventory.d.ts.map +1 -1
  119. package/lib/types/extensions/owned-refs.d.ts +1 -1
  120. package/lib/types/extensions/owned-refs.d.ts.map +1 -1
  121. package/lib/types/extensions/owned-types.d.ts +19 -5
  122. package/lib/types/extensions/owned-types.d.ts.map +1 -1
  123. package/lib/types/extensions/persistent-bundle.d.ts +7 -0
  124. package/lib/types/extensions/persistent-bundle.d.ts.map +1 -1
  125. package/lib/types/extensions/persistent-client-bundle.d.ts.map +1 -1
  126. package/lib/types/extensions/persistent-runtime.d.ts +6 -0
  127. package/lib/types/extensions/persistent-runtime.d.ts.map +1 -1
  128. package/lib/types/extensions/profile-owned-inventory.d.ts +1 -0
  129. package/lib/types/extensions/profile-owned-inventory.d.ts.map +1 -1
  130. package/lib/types/extensions/profile-restart-helper.d.ts.map +1 -1
  131. package/lib/types/extensions/publish-client.d.ts +51 -2
  132. package/lib/types/extensions/publish-client.d.ts.map +1 -1
  133. package/lib/types/extensions/share-discovery-relay.d.ts +33 -0
  134. package/lib/types/extensions/share-discovery-relay.d.ts.map +1 -0
  135. package/lib/types/extensions/signature.d.ts +31 -1
  136. package/lib/types/extensions/signature.d.ts.map +1 -1
  137. package/lib/types/extensions/types.d.ts +118 -5
  138. package/lib/types/extensions/types.d.ts.map +1 -1
  139. package/lib/types/host-api.d.ts.map +1 -1
  140. package/lib/types/index.d.ts +12 -4
  141. package/lib/types/index.d.ts.map +1 -1
  142. package/lib/types/outgoing-call-assets.d.ts.map +1 -1
  143. package/lib/types/plugin-update-artifact.d.ts +46 -0
  144. package/lib/types/plugin-update-artifact.d.ts.map +1 -0
  145. package/lib/types/plugin-update.d.ts +20 -11
  146. package/lib/types/plugin-update.d.ts.map +1 -1
  147. package/lib/types/plugin-updater-helper.d.ts +11 -0
  148. package/lib/types/plugin-updater-helper.d.ts.map +1 -1
  149. package/lib/types/recording-presentation.d.ts +2 -2
  150. package/lib/types/recording-presentation.d.ts.map +1 -1
  151. package/lib/types/rich-media-routes.d.ts.map +1 -1
  152. package/lib/types/sdk/index.d.ts +103 -7
  153. package/lib/types/sdk/index.d.ts.map +1 -1
  154. package/lib/types/services/bot-service.d.ts +5 -1
  155. package/lib/types/services/bot-service.d.ts.map +1 -1
  156. package/lib/types/services/calendar-service.d.ts +25 -0
  157. package/lib/types/services/calendar-service.d.ts.map +1 -0
  158. package/lib/types/services/chat-realtime-service.d.ts +19 -4
  159. package/lib/types/services/chat-realtime-service.d.ts.map +1 -1
  160. package/lib/types/services/contact-service.d.ts +25 -0
  161. package/lib/types/services/contact-service.d.ts.map +1 -0
  162. package/lib/types/services/group-service.d.ts +20 -2
  163. package/lib/types/services/group-service.d.ts.map +1 -1
  164. package/lib/types/services/media-service.d.ts +9 -1
  165. package/lib/types/services/media-service.d.ts.map +1 -1
  166. package/lib/types/services/recording-service.d.ts +4 -2
  167. package/lib/types/services/recording-service.d.ts.map +1 -1
  168. package/lib/types/services/search-service.d.ts +10 -2
  169. package/lib/types/services/search-service.d.ts.map +1 -1
  170. package/lib/types/services/service.d.ts +2 -0
  171. package/lib/types/services/service.d.ts.map +1 -1
  172. package/lib/types/services/world-service.d.ts +20 -1
  173. package/lib/types/services/world-service.d.ts.map +1 -1
  174. package/lib/types/tools/business/calendar/index.d.ts +4 -0
  175. package/lib/types/tools/business/calendar/index.d.ts.map +1 -0
  176. package/lib/types/tools/business/contacts/index.d.ts +4 -0
  177. package/lib/types/tools/business/contacts/index.d.ts.map +1 -0
  178. package/lib/types/tools/business/groups/create.d.ts +2 -0
  179. package/lib/types/tools/business/groups/create.d.ts.map +1 -0
  180. package/lib/types/tools/business/groups/index.d.ts +4 -0
  181. package/lib/types/tools/business/groups/index.d.ts.map +1 -0
  182. package/lib/types/tools/business/index.d.ts.map +1 -1
  183. package/lib/types/tools/business/recordings/index.d.ts +2 -1
  184. package/lib/types/tools/business/recordings/index.d.ts.map +1 -1
  185. package/lib/types/tools/business/records/images.d.ts +2 -0
  186. package/lib/types/tools/business/records/images.d.ts.map +1 -0
  187. package/lib/types/tools/business/records/index.d.ts.map +1 -1
  188. package/lib/types/tools/business/world/index.d.ts +2 -0
  189. package/lib/types/tools/business/world/index.d.ts.map +1 -1
  190. package/lib/types/tools/business/world/mine.d.ts +2 -0
  191. package/lib/types/tools/business/world/mine.d.ts.map +1 -0
  192. package/lib/types/tools/business/world/voiceprint-invite.d.ts +2 -0
  193. package/lib/types/tools/business/world/voiceprint-invite.d.ts.map +1 -0
  194. package/lib/types/tools/extensions/index.d.ts.map +1 -1
  195. package/lib/types/tools/extensions/publish-conversation.d.ts +9 -1
  196. package/lib/types/tools/extensions/publish-conversation.d.ts.map +1 -1
  197. package/lib/types/tools/ports/calendar.d.ts +17 -0
  198. package/lib/types/tools/ports/calendar.d.ts.map +1 -0
  199. package/lib/types/tools/ports/contacts.d.ts +12 -0
  200. package/lib/types/tools/ports/contacts.d.ts.map +1 -0
  201. package/lib/types/tools/ports/groups.d.ts +14 -0
  202. package/lib/types/tools/ports/groups.d.ts.map +1 -0
  203. package/lib/types/tools/ports/index.d.ts +5 -2
  204. package/lib/types/tools/ports/index.d.ts.map +1 -1
  205. package/lib/types/tools/ports/recordings.d.ts +3 -2
  206. package/lib/types/tools/ports/recordings.d.ts.map +1 -1
  207. package/lib/types/tools/ports/records.d.ts +6 -1
  208. package/lib/types/tools/ports/records.d.ts.map +1 -1
  209. package/lib/types/tools/ports/world.d.ts +12 -1
  210. package/lib/types/tools/ports/world.d.ts.map +1 -1
  211. package/lib/types/tools/prompts/business.d.ts.map +1 -1
  212. package/lib/types/tools/registry/registrar.d.ts.map +1 -1
  213. package/lib/types/types.d.ts +218 -3
  214. package/lib/types/types.d.ts.map +1 -1
  215. package/package.json +6 -4
  216. package/lib/plugin-update-install-state-CIsOCjWK.js +0 -67
  217. package/lib/types/client/ArkmeExtensionCenter.d.ts +0 -61
  218. package/lib/types/client/ArkmeExtensionCenter.d.ts.map +0 -1
@@ -1,7 +1,9 @@
1
1
  import type { ArkmeAiVideoToolPort } from './ai-video.js';
2
2
  import type { ArkmeArkoToolPort } from './arko.js';
3
3
  import type { ArkmeBotToolPort } from './bots.js';
4
+ import type { ArkmeCalendarToolPort } from './calendar.js';
4
5
  import type { ArkmeConversationToolPort } from './conversations.js';
6
+ import type { ArkmeContactToolPort } from './contacts.js';
5
7
  import type { ArkmeMediaToolPort } from './media.js';
6
8
  import type { ArkmeOutgoingCallToolPort } from './outgoing-call.js';
7
9
  import type { ArkmeOpenClawToolPort } from './openclaw.js';
@@ -11,9 +13,10 @@ import type { ArkmeRecordToolPort } from './records.js';
11
13
  import type { ArkmeWorldToolPort } from './world.js';
12
14
  import type { ArkmeWechatToolPort } from './wechat.js';
13
15
  import type { ArkmeExtensionReviewToolPort } from './extensions.js';
14
- export interface ArkmeCoreToolPorts extends ArkmeAiVideoToolPort, ArkmeArkoToolPort, ArkmeBotToolPort, ArkmeRecordToolPort, ArkmeProfileToolPort, ArkmeRecordingToolPort, ArkmeConversationToolPort, ArkmeOutgoingCallToolPort, ArkmeOpenClawToolPort, ArkmeWorldToolPort, ArkmeExtensionReviewToolPort, ArkmeWechatToolPort {
16
+ import type { ArkmeGroupToolPort } from './groups.js';
17
+ export interface ArkmeCoreToolPorts extends ArkmeAiVideoToolPort, ArkmeArkoToolPort, ArkmeBotToolPort, ArkmeCalendarToolPort, ArkmeRecordToolPort, ArkmeProfileToolPort, ArkmeRecordingToolPort, ArkmeConversationToolPort, ArkmeContactToolPort, ArkmeOutgoingCallToolPort, ArkmeOpenClawToolPort, ArkmeWorldToolPort, ArkmeExtensionReviewToolPort, ArkmeGroupToolPort, ArkmeWechatToolPort {
15
18
  }
16
19
  export interface ArkmeToolPorts extends ArkmeCoreToolPorts, ArkmeMediaToolPort {
17
20
  }
18
- export type { ArkmeAiVideoToolPort, ArkmeArkoToolPort, ArkmeBotToolPort, ArkmeConversationToolPort, ArkmeMediaToolPort, ArkmeProfileToolPort, ArkmeOpenClawToolPort, ArkmeOutgoingCallToolPort, ArkmeRecordingToolPort, ArkmeRecordToolPort, ArkmeWorldToolPort, ArkmeWechatToolPort, ArkmeExtensionReviewToolPort, };
21
+ export type { ArkmeAiVideoToolPort, ArkmeArkoToolPort, ArkmeBotToolPort, ArkmeCalendarToolPort, ArkmeConversationToolPort, ArkmeMediaToolPort, ArkmeProfileToolPort, ArkmeContactToolPort, ArkmeOpenClawToolPort, ArkmeOutgoingCallToolPort, ArkmeRecordingToolPort, ArkmeRecordToolPort, ArkmeWorldToolPort, ArkmeWechatToolPort, ArkmeExtensionReviewToolPort, ArkmeGroupToolPort, };
19
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tools/ports/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AACjD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAA;AAEnE,MAAM,WAAW,kBAAmB,SAClC,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,EACrB,kBAAkB,EAClB,4BAA4B,EAC5B,mBAAmB;CAAG;AAExB,MAAM,WAAW,cAAe,SAAQ,kBAAkB,EAAE,kBAAkB;CAAG;AAEjF,YAAY,EACV,oBAAoB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,oBAAoB,EAC9H,qBAAqB,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,mBAAmB,EAC7F,kBAAkB,EAAE,mBAAmB,EACvC,4BAA4B,GAC7B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tools/ports/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AACjD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAA;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAErD,MAAM,WAAW,kBAAmB,SAClC,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,kBAAkB,EAClB,4BAA4B,EAC5B,kBAAkB,EAClB,mBAAmB;CAAG;AAExB,MAAM,WAAW,cAAe,SAAQ,kBAAkB,EAAE,kBAAkB;CAAG;AAEjF,YAAY,EACV,oBAAoB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,oBAAoB,EACrJ,oBAAoB,EACpB,qBAAqB,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,mBAAmB,EAC7F,kBAAkB,EAAE,mBAAmB,EACvC,4BAA4B,EAC5B,kBAAkB,GACnB,CAAA"}
@@ -1,7 +1,8 @@
1
- import type { ArkmeRecordingCalendarMonth, ArkmeRecordingCursorPayload, ArkmeRecordingProjectionKind, ArkmeRecordingSection, ArkmeRecordingTranscriptSection, ArkmeRecordingVersion } from '../../types.js';
1
+ import type { ArkmeRecordingCalendarMonth, ArkmeRecordingCursorPayload, ArkmeRecordingDoubaoBackfillResult, ArkmeRecordingProjectionKind, ArkmeRecordingSection, ArkmeRecordingTranscriptSection, ArkmeRecordingVersion } from '../../types.js';
2
2
  export interface ArkmeRecordingToolPort {
3
3
  recordingCalendar(fromStamp: number, toStamp: number, signal?: AbortSignal): Promise<ArkmeRecordingCalendarMonth>;
4
- recordingTranscript(dateStamp: number, signal?: AbortSignal): Promise<ArkmeRecordingTranscriptSection>;
4
+ recordingTranscript(dateStamp: number, signal?: AbortSignal, source?: 'system' | 'doubao'): Promise<ArkmeRecordingTranscriptSection>;
5
+ startRecordingDoubaoBackfill(dateStamp: number, signal?: AbortSignal): Promise<ArkmeRecordingDoubaoBackfillResult>;
5
6
  recordingProjection(dateStamp: number, kind: ArkmeRecordingProjectionKind, signal?: AbortSignal): Promise<ArkmeRecordingSection<ArkmeRecordingVersion>>;
6
7
  sealRecordingCursor(payload: ArkmeRecordingCursorPayload): Promise<string>;
7
8
  openRecordingCursor(cursor: string): Promise<ArkmeRecordingCursorPayload>;
@@ -1 +1 @@
1
- {"version":3,"file":"recordings.d.ts","sourceRoot":"","sources":["../../../../src/tools/ports/recordings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,2BAA2B,EAC3B,4BAA4B,EAC5B,qBAAqB,EACrB,+BAA+B,EAC/B,qBAAqB,EACtB,MAAM,gBAAgB,CAAA;AAEvB,MAAM,WAAW,sBAAsB;IACrC,iBAAiB,CACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACvC,mBAAmB,CACjB,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,+BAA+B,CAAC,CAAA;IAC3C,mBAAmB,CACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,4BAA4B,EAClC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IACxD,mBAAmB,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC1E,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAA;CAC1E"}
1
+ {"version":3,"file":"recordings.d.ts","sourceRoot":"","sources":["../../../../src/tools/ports/recordings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,2BAA2B,EAC3B,kCAAkC,EAClC,4BAA4B,EAC5B,qBAAqB,EACrB,+BAA+B,EAC/B,qBAAqB,EACtB,MAAM,gBAAgB,CAAA;AAEvB,MAAM,WAAW,sBAAsB;IACrC,iBAAiB,CACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACvC,mBAAmB,CACjB,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,WAAW,EACpB,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAC3B,OAAO,CAAC,+BAA+B,CAAC,CAAA;IAC3C,4BAA4B,CAC1B,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kCAAkC,CAAC,CAAA;IAC9C,mBAAmB,CACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,4BAA4B,EAClC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,CAAC,CAAA;IACxD,mBAAmB,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC1E,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAA;CAC1E"}
@@ -1,4 +1,4 @@
1
- import type { ArkmeCachedQueryResult, ArkmeConversationWriteResult, ArkmeRecordSearchResult, ArkmeRecordingSearchResult, ArkmeSearchSceneKind } from '../../types.js';
1
+ import type { ArkmeCachedQueryResult, ArkmeConversationWriteResult, ArkmeImageSearchResult, ArkmeRecordSearchResult, ArkmeRecordingSearchResult, ArkmeSearchSceneKind } from '../../types.js';
2
2
  export interface ArkmeRecordToolPort {
3
3
  refreshLatest(): Promise<void>;
4
4
  syncHistory(maxPages?: number, signal?: AbortSignal): Promise<{
@@ -22,6 +22,11 @@ export interface ArkmeRecordToolPort {
22
22
  cursor?: string;
23
23
  signal?: AbortSignal;
24
24
  }): Promise<ArkmeRecordSearchResult>;
25
+ searchImages(options: {
26
+ limit: number;
27
+ cursor?: string;
28
+ signal?: AbortSignal;
29
+ }): Promise<ArkmeImageSearchResult>;
25
30
  searchRecordings(options: {
26
31
  query: string;
27
32
  limit: number;
@@ -1 +1 @@
1
- {"version":3,"file":"records.d.ts","sourceRoot":"","sources":["../../../../src/tools/ports/records.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EAAE,4BAA4B,EAAE,uBAAuB,EAC7E,0BAA0B,EAAE,oBAAoB,EACjD,MAAM,gBAAgB,CAAA;AAEvB,MAAM,WAAW,mBAAmB;IAClC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACnG,WAAW,CAAC,OAAO,EAAE;QACnB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,MAAM,CAAA;QACb,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAA;IACnC,YAAY,CAAC,OAAO,EAAE;QACpB,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;IACpC,WAAW,CAAC,OAAO,EAAE;QACnB,KAAK,EAAE,oBAAoB,CAAA;QAC3B,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;IACpC,gBAAgB,CAAC,OAAO,EAAE;QACxB,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAA;IACvC,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAA;CACzG"}
1
+ {"version":3,"file":"records.d.ts","sourceRoot":"","sources":["../../../../src/tools/ports/records.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,uBAAuB,EACrG,0BAA0B,EAAE,oBAAoB,EACjD,MAAM,gBAAgB,CAAA;AAEvB,MAAM,WAAW,mBAAmB;IAClC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACnG,WAAW,CAAC,OAAO,EAAE;QACnB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,MAAM,CAAA;QACb,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAA;IACnC,YAAY,CAAC,OAAO,EAAE;QACpB,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;IACpC,WAAW,CAAC,OAAO,EAAE;QACnB,KAAK,EAAE,oBAAoB,CAAA;QAC3B,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;IACpC,YAAY,CAAC,OAAO,EAAE;QACpB,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAA;IACnC,gBAAgB,CAAC,OAAO,EAAE;QACxB,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAA;IACvC,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAA;CACzG"}
@@ -1,10 +1,21 @@
1
- import type { ArkmeWorldPublishResult, ArkmeWorldRecordList } from '../../types.js';
1
+ import type { ArkmeWorldFeedPage, ArkmeWorldPublishResult, ArkmeWorldRecordList, ArkmeWorldVoiceprintInviteResult } from '../../types.js';
2
2
  export interface ArkmeWorldToolPort {
3
3
  listWorldRecords(options?: {
4
4
  limit?: number;
5
5
  offset?: number;
6
6
  signal?: AbortSignal;
7
7
  }): Promise<ArkmeWorldRecordList>;
8
+ listWorldFeed(options?: {
9
+ limit?: number;
10
+ offset?: number;
11
+ signal?: AbortSignal;
12
+ }): Promise<ArkmeWorldFeedPage>;
13
+ listMyWorldFeed(options?: {
14
+ limit?: number;
15
+ offset?: number;
16
+ signal?: AbortSignal;
17
+ }): Promise<ArkmeWorldFeedPage>;
18
+ inviteWorldVoiceprint(recordRef: string, signal?: AbortSignal): Promise<ArkmeWorldVoiceprintInviteResult>;
8
19
  publishWorldTextForConversation(recordUid: string, textContent: string, signal?: AbortSignal): Promise<ArkmeWorldPublishResult>;
9
20
  }
10
21
  //# sourceMappingURL=world.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"world.d.ts","sourceRoot":"","sources":["../../../../src/tools/ports/world.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAEnF,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;IACpH,+BAA+B,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;CAChI"}
1
+ {"version":3,"file":"world.d.ts","sourceRoot":"","sources":["../../../../src/tools/ports/world.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,gCAAgC,EACjC,MAAM,gBAAgB,CAAA;AAEvB,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;IACpH,aAAa,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAC/G,eAAe,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;IACjH,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAAA;IACzG,+BAA+B,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;CAChI"}
@@ -1 +1 @@
1
- {"version":3,"file":"business.d.ts","sourceRoot":"","sources":["../../../../src/tools/prompts/business.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,4BAA4B,QAEiI,CAAA;AA4C1K,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,OAAO,GAAG,MAAM,CAE/D;AAED,eAAO,MAAM,0BAA0B,QAA2B,CAAA"}
1
+ {"version":3,"file":"business.d.ts","sourceRoot":"","sources":["../../../../src/tools/prompts/business.ts"],"names":[],"mappings":"AA8CA,eAAO,MAAM,4BAA4B,QAEkK,CAAA;AAkD3M,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,OAAO,GAAG,MAAM,CAE/D;AAED,eAAO,MAAM,0BAA0B,QAA2B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"registrar.d.ts","sourceRoot":"","sources":["../../../../src/tools/registry/registrar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAE5D,OAAO,KAAK,EAAmB,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAqB3E,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,kBAAkB,EACzB,OAAO,GAAE,gBAA6B,GACrC,cAAc,EAAE,CAGlB;AA4DD,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,cAAc,EACrB,OAAO,GAAE,gBAA6B,GACrC,IAAI,CAwBN"}
1
+ {"version":3,"file":"registrar.d.ts","sourceRoot":"","sources":["../../../../src/tools/registry/registrar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAE5D,OAAO,KAAK,EAAmB,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAyB3E,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,kBAAkB,EACzB,OAAO,GAAE,gBAA6B,GACrC,cAAc,EAAE,CAGlB;AA6ED,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,cAAc,EACrB,OAAO,GAAE,gBAA6B,GACrC,IAAI,CAwBN"}
@@ -1,5 +1,6 @@
1
1
  export type ArkmeEnvironment = 'test' | 'prod';
2
2
  export declare const ARKME_PROVIDER_CONTRACT_VERSION: 1;
3
+ export declare const ARKME_DEFAULT_SHARE_WEBSITE = "https://app.arkme.ai";
3
4
  export type ArkmeAuthStatus = 'logged-out' | 'pending' | 'binding-required' | 'authenticated' | 'expired';
4
5
  export interface ArkmeAuthSnapshot {
5
6
  status: ArkmeAuthStatus;
@@ -20,6 +21,24 @@ export interface ArkmeClientConfig {
20
21
  environment: ArkmeEnvironment;
21
22
  testLoginEnabled: boolean;
22
23
  callAssetBasePath: string;
24
+ shareWebsite: string;
25
+ }
26
+ export type ArkmeContactIdentifierKind = 'phone' | 'arkme_id';
27
+ /** Browser/model-safe projection returned by contact lookup. */
28
+ export interface ArkmeContactSearchResult {
29
+ contactRef: string;
30
+ identifierKind: ArkmeContactIdentifierKind;
31
+ displayName: string;
32
+ arkmeId?: string;
33
+ avatarRef?: string;
34
+ registered: boolean;
35
+ inviteBySms: boolean;
36
+ canAdd: boolean;
37
+ isSelf: boolean;
38
+ }
39
+ export interface ArkmeContactAddResult {
40
+ state: 'ready' | 'pending';
41
+ source: ArkmeSourceItem;
23
42
  }
24
43
  export interface ArkmeRecordCursor {
25
44
  sendAtMillis: number;
@@ -50,6 +69,53 @@ export interface ArkmeSelfSummary {
50
69
  wordsCount: number;
51
70
  totalSec: number;
52
71
  }
72
+ export type ArkmeCalendarScopeKind = 'self';
73
+ export interface ArkmeCalendarBucketDay {
74
+ bucketDate: string;
75
+ count: number;
76
+ protectedCount: number;
77
+ hasRecords: boolean;
78
+ firstSendAtMillis?: number;
79
+ }
80
+ export interface ArkmeCalendarBucketPage {
81
+ scope: ArkmeCalendarScopeKind;
82
+ startDate: string;
83
+ endDate: string;
84
+ timezone: string;
85
+ refreshedAtMillis: number;
86
+ days: ArkmeCalendarBucketDay[];
87
+ }
88
+ export type ArkmeCalendarContentAccessState = 'available' | 'protected' | 'unknown';
89
+ export interface ArkmeCalendarRecordCursor {
90
+ sendAtMillis: number;
91
+ recordUid: string;
92
+ }
93
+ export interface ArkmeCalendarRecordItem {
94
+ recordUid: string;
95
+ sendAtMillis: number;
96
+ accessState: ArkmeCalendarContentAccessState;
97
+ title: string;
98
+ textContent: string;
99
+ preview: string;
100
+ topicTitle?: string;
101
+ sourceKind: 'self' | 'topic' | 'chat' | 'unknown';
102
+ creationSource: number;
103
+ templateKind: number;
104
+ displayKind: number;
105
+ protected: boolean;
106
+ isUncategorized?: boolean;
107
+ hasManualEdit?: boolean;
108
+ hasPolish?: boolean;
109
+ }
110
+ export interface ArkmeCalendarDayRecordPage {
111
+ scope: ArkmeCalendarScopeKind;
112
+ bucketDate: string;
113
+ timezone: string;
114
+ refreshedAtMillis: number;
115
+ items: ArkmeCalendarRecordItem[];
116
+ hasMore: boolean;
117
+ nextCursor?: ArkmeCalendarRecordCursor;
118
+ }
53
119
  export interface ArkmePendingWrite {
54
120
  recordUid: string;
55
121
  textContent: string;
@@ -129,6 +195,30 @@ export interface ArkmeWorldFeedPage {
129
195
  hasMore: boolean;
130
196
  nextOffset?: number;
131
197
  }
198
+ export interface ArkmeWorldVoiceprintAvailabilityItem {
199
+ recordRef: string;
200
+ playable: boolean;
201
+ }
202
+ export interface ArkmeWorldVoiceprintAvailability {
203
+ items: ArkmeWorldVoiceprintAvailabilityItem[];
204
+ }
205
+ /** Browser-safe generated World voice chunk. The signed Audio URL stays inside the Provider. */
206
+ export interface ArkmeWorldVoiceprintPlaybackChunk {
207
+ mediaRef: string;
208
+ mimeType: string;
209
+ durationMillis: number;
210
+ cacheHit: boolean;
211
+ chunkIndex: number;
212
+ chunkCount: number;
213
+ chunkStartRune: number;
214
+ chunkEndRune: number;
215
+ }
216
+ export interface ArkmeWorldVoiceprintInviteResult {
217
+ sent: true;
218
+ peerDisplayName: string;
219
+ messageItemUid?: string;
220
+ expiresAtMillis: number;
221
+ }
132
222
  /** Browser-safe World comment or reply. Stable record IDs stay inside the Provider. */
133
223
  export interface ArkmeWorldInteractionItem {
134
224
  interactionRef: string;
@@ -269,6 +359,24 @@ export interface ArkmeSearchAssetItem {
269
359
  size?: number;
270
360
  durationMillis?: number;
271
361
  }
362
+ /** Browser-safe image projection used by the desktop search image library. */
363
+ export interface ArkmeImageSearchItem {
364
+ itemKey: string;
365
+ mediaRef: string;
366
+ recordUid: string;
367
+ sendAtMillis: number;
368
+ fileName: string;
369
+ mimeType: string;
370
+ size: number;
371
+ recordTitle: string;
372
+ sourceTitle?: string;
373
+ }
374
+ export interface ArkmeImageSearchResult {
375
+ items: ArkmeImageSearchItem[];
376
+ hasMore: boolean;
377
+ nextCursor?: string;
378
+ queryGuard: ArkmeSearchQueryGuard;
379
+ }
272
380
  export interface ArkmeSearchRecordItem {
273
381
  recordUid: string;
274
382
  sourceKind: number;
@@ -338,6 +446,10 @@ export interface ArkmeProviderCapabilities {
338
446
  revisionPolling: true;
339
447
  userProfile: true;
340
448
  imageRead: true;
449
+ /** Record-calendar bucket and day-record reads backed by the Arkme record service. */
450
+ recordCalendar?: true;
451
+ /** Authorized image-library listing with opaque, account-bound media references is available. */
452
+ imageLibrary?: true;
341
453
  sourceDirectory: true;
342
454
  sourceTimeline: true;
343
455
  sourceTextSend: true;
@@ -346,8 +458,13 @@ export interface ArkmeProviderCapabilities {
346
458
  fileUpload: boolean;
347
459
  outgoingCall: true;
348
460
  groupMembers: true;
461
+ groupMemberAdd?: true;
349
462
  userCard: true;
350
463
  openPrivateChat: true;
464
+ /** Search accounts and idempotently add/open a contact conversation. */
465
+ contactAdd?: true;
466
+ /** Built-in quick-add surface plus SDK/Host support for contacts, groups, and Bots. */
467
+ conversationQuickAdd?: true;
351
468
  groupSettings: true;
352
469
  /** Installed-extension inspection and desired enable/disable state are available. */
353
470
  extensionManagement?: true;
@@ -362,6 +479,10 @@ export interface ArkmeProviderCapabilities {
362
479
  worldFeed?: true;
363
480
  /** Optional additive capability for reading and writing World comments and replies. */
364
481
  worldInteractions?: true;
482
+ /** Optional additive capability for author-voice playback of public World text. */
483
+ worldVoiceprintPlayback?: true;
484
+ /** Optional additive capability for sending a voiceprint invite reminder to a World author. */
485
+ worldVoiceprintInvite?: true;
365
486
  /** Optional additive capability for the independent Arrangement consumer. */
366
487
  arrangements?: true;
367
488
  /** Optional additive current-account Cordis/Profile/cloud extension inventory. */
@@ -370,6 +491,10 @@ export interface ArkmeProviderCapabilities {
370
491
  extensionPublish?: true;
371
492
  /** Optional additive capability for extension reviews, replies, and rating summaries. */
372
493
  extensionReviews?: true;
494
+ /** Optional additive capability for reading system and Doubao all-day recording transcripts. */
495
+ recordingTranscripts?: true;
496
+ /** Optional additive capability for explicitly starting Doubao backfill for one local recording day. */
497
+ recordingDoubaoBackfill?: true;
373
498
  };
374
499
  limits: {
375
500
  maxTextLength: number;
@@ -769,6 +894,7 @@ export interface ArkmeGroupMemberItem {
769
894
  isSelf: boolean;
770
895
  isOwner: boolean;
771
896
  joinedAtMillis: number;
897
+ recordCount: number;
772
898
  }
773
899
  export interface ArkmeGroupMemberList {
774
900
  source: ArkmeSourceItem;
@@ -778,6 +904,71 @@ export interface ArkmeGroupMemberList {
778
904
  selfRole: ArkmeGroupMemberRole;
779
905
  selfStatus: ArkmeGroupMemberStatus;
780
906
  }
907
+ export interface ArkmeGroupMemberCandidate {
908
+ candidateRef: string;
909
+ displayName: string;
910
+ avatarRef?: string;
911
+ origin: 'private_chat' | 'group_chat';
912
+ relation: 'contact' | 'stranger' | 'group';
913
+ disabled?: boolean;
914
+ alreadyMember?: boolean;
915
+ statusText?: string;
916
+ }
917
+ export interface ArkmeGroupMemberCandidateGroup {
918
+ group: ArkmeSourceItem;
919
+ items: ArkmeGroupMemberCandidate[];
920
+ total: number;
921
+ error?: string;
922
+ }
923
+ export interface ArkmeGroupBotCandidate {
924
+ botRef: string;
925
+ name: string;
926
+ description: string;
927
+ installed: boolean;
928
+ }
929
+ export interface ArkmeGroupBotCandidateList {
930
+ groupSourceRef: string;
931
+ displayName: string;
932
+ canAddBots: boolean;
933
+ items: ArkmeGroupBotCandidate[];
934
+ }
935
+ export interface ArkmeGroupBotAddResult {
936
+ botRef: string;
937
+ groupSourceRef: string;
938
+ installed: boolean;
939
+ }
940
+ export interface ArkmeGroupMemberCandidateList {
941
+ source: ArkmeSourceItem;
942
+ items: ArkmeGroupMemberCandidate[];
943
+ total: number;
944
+ hasMore: boolean;
945
+ mode: 'direct_add' | 'approval_invite';
946
+ groups: ArkmeSourceItem[];
947
+ groupCandidates: ArkmeGroupMemberCandidateGroup[];
948
+ contactCount: number;
949
+ strangerCount: number;
950
+ }
951
+ export interface ArkmeGroupInvitePreview {
952
+ source: ArkmeSourceItem;
953
+ title: string;
954
+ inviterDisplayName: string;
955
+ inviteLink: string;
956
+ expireAtMillis: number;
957
+ mode: 'direct_add' | 'approval_invite';
958
+ }
959
+ export type ArkmeGroupMemberAddStatus = 'added' | 'reactivated' | 'already_member' | 'invite_sent' | 'failed';
960
+ export interface ArkmeGroupMemberAddItemResult {
961
+ candidateRef: string;
962
+ displayName: string;
963
+ status: ArkmeGroupMemberAddStatus;
964
+ error?: string;
965
+ }
966
+ export interface ArkmeGroupMemberAddResult {
967
+ source: ArkmeSourceItem;
968
+ results: ArkmeGroupMemberAddItemResult[];
969
+ succeededCount: number;
970
+ failedCount: number;
971
+ }
781
972
  export interface ArkmeUserCardSnapshot {
782
973
  displayName: string;
783
974
  avatarRef?: string;
@@ -818,6 +1009,7 @@ export interface ArkmeRecordingCursorPayload {
818
1009
  version: 1;
819
1010
  dateStamp: number;
820
1011
  content: ArkmeRecordingToolContent;
1012
+ transcriptSource?: ArkmeAiVideoTranscriptSource;
821
1013
  versionId?: string;
822
1014
  itemOffset: number;
823
1015
  textOffset: number;
@@ -837,6 +1029,8 @@ export interface ArkmeRecordingTranscriptItem {
837
1029
  isSelf: boolean;
838
1030
  isBackground: boolean;
839
1031
  text: string;
1032
+ /** Omitted by older providers and treated as a completed transcript row. */
1033
+ transcriptStatus?: 'ready' | 'processing' | 'silent' | 'failed';
840
1034
  }
841
1035
  export interface ArkmeRecordingTimelineEvent {
842
1036
  eventId: string;
@@ -874,10 +1068,17 @@ export interface ArkmeRecordingTranscriptSection extends ArkmeRecordingSection<A
874
1068
  identityCoverage?: 'complete' | 'partial';
875
1069
  totalDurationMillis: number;
876
1070
  }
1071
+ export interface ArkmeRecordingDoubaoBackfillResult {
1072
+ queuedChildCount: number;
1073
+ inFlightChildCount: number;
1074
+ missingAudioChildCount: number;
1075
+ }
877
1076
  export interface ArkmeRecordingDay {
878
1077
  dateStamp: number;
879
1078
  totalDurationMillis: number;
880
1079
  transcript: ArkmeRecordingSection<ArkmeRecordingTranscriptItem>;
1080
+ /** Optional for compatibility with Providers released before Doubao comparison. */
1081
+ doubaoTranscript?: ArkmeRecordingSection<ArkmeRecordingTranscriptItem>;
881
1082
  summary: ArkmeRecordingSection<ArkmeRecordingVersion>;
882
1083
  timeline: ArkmeRecordingSection<ArkmeRecordingVersion>;
883
1084
  }
@@ -1209,7 +1410,7 @@ export interface ArkmePluginUpdateStatus {
1209
1410
  installBlockedReason?: 'update-disabled' | 'local-install' | 'profile-unavailable' | 'runtime-unavailable';
1210
1411
  restartRequired: true;
1211
1412
  }
1212
- export type ArkmePluginUpdateInstallPhase = 'idle' | 'preparing' | 'installing' | 'restarting' | 'succeeded' | 'failed' | 'rolled-back';
1413
+ export type ArkmePluginUpdateInstallPhase = 'idle' | 'preparing' | 'downloading' | 'verifying' | 'installing' | 'restarting' | 'succeeded' | 'failed' | 'rolled-back';
1213
1414
  export interface ArkmePluginUpdateInstallSnapshot {
1214
1415
  schemaVersion: 1;
1215
1416
  jobId: string;
@@ -1222,6 +1423,7 @@ export interface ArkmePluginUpdateInstallSnapshot {
1222
1423
  export interface ArkmeChatRealtimeState {
1223
1424
  revision: number;
1224
1425
  connected: boolean;
1426
+ connectionGeneration: number;
1225
1427
  lastEventAtMillis?: number;
1226
1428
  }
1227
1429
  export type ArkmeChatClientEvent = {
@@ -1229,6 +1431,7 @@ export type ArkmeChatClientEvent = {
1229
1431
  revision: number;
1230
1432
  connected: boolean;
1231
1433
  refresh?: 'none' | 'if-stale' | 'force';
1434
+ connectionGeneration: number;
1232
1435
  } | {
1233
1436
  type: 'sessions-delta';
1234
1437
  revision: number;
@@ -1237,6 +1440,18 @@ export type ArkmeChatClientEvent = {
1237
1440
  source: ArkmeSourceItem;
1238
1441
  timelineItems: ArkmeTimelineItem[];
1239
1442
  }>;
1443
+ } | {
1444
+ type: 'message-notification';
1445
+ revision: number;
1446
+ notification: {
1447
+ eventUid: string;
1448
+ sourceRef: string;
1449
+ sourceKey: string;
1450
+ sourceKind: 'private_chat' | 'group_chat';
1451
+ title: string;
1452
+ body: string;
1453
+ eventAtMillis: number;
1454
+ };
1240
1455
  } | {
1241
1456
  type: 'read-ack';
1242
1457
  revision: number;
@@ -1245,8 +1460,8 @@ export type ArkmeChatClientEvent = {
1245
1460
  effectiveReadSequence: number;
1246
1461
  unreadCount: number;
1247
1462
  };
1248
- export type ArkmePluginOperation = 'provider.capabilities' | 'provider.state' | 'chat.realtime.state' | 'auth.status' | 'auth.config' | 'auth.begin' | 'auth.poll' | 'auth.test.login' | 'auth.phone.send' | 'auth.phone.verify' | 'auth.logout' | 'records.summary' | 'records.cache' | 'records.refresh' | 'records.search' | 'records.list' | 'records.create' | 'records.outbox' | 'records.retry' | 'user.profile' | 'user.profile.refresh' | 'image.read' | 'world.feed' | 'world.interactions.list' | 'world.interactions.create-text' | 'world.image.read' | 'arrangements.list' | 'arrangements.detail' | 'arrangements.mutate' | 'arrangements.reminder-enabled' | 'arrangements.reminders.summary' | 'arrangements.reminders.list' | 'arrangements.reminders.mark-read' | 'arrangements.reminders.mark-all-read' | 'arrangements.reminders.clear' | 'extensions.reviews.list' | 'extensions.reviews.create' | 'sources.list' | 'source.timeline' | 'source.mark-read' | 'source.send-text' | 'related-recordings.eligibility' | 'related-recordings.page' | 'source.ai-polish.settings' | 'source.ai-polish.notices' | 'source.ai-polish.generate-rule' | 'source.ai-polish.confirm-enable' | 'source.ai-polish.prepare-disable' | 'source.ai-polish.confirm-disable' | 'source.ai-polish.retry' | 'group.members' | 'group.settings' | 'group.notification.set' | 'group.rename' | 'group.leave' | 'group.dissolve' | 'group.report' | 'user.card' | 'chat.private.open' | 'source.send-rich' | 'source.long-article.detail' | 'source.long-article.update' | 'source.long-article.draft.get' | 'source.long-article.draft.put' | 'source.long-article.draft.delete' | 'calls.outgoing.intent.claim' | 'calls.outgoing.intent.resolve' | 'calls.outgoing.prepare' | 'calls.outgoing.heartbeat' | 'calls.outgoing.release' | 'extensions.mine.list' | 'extensions.mine.publish' | 'extensions.metadata.update' | 'extensions.share.rotate' | 'extensions.installed-list' | 'extensions.enabled-state' | 'extensions.enabled.set' | 'extensions.preview.delete' | 'extensions.preview.reorder';
1249
- export type ArkmeHostOperation = ArkmePluginOperation | 'provider.instance' | 'dsh-beta-community.entry-state' | 'dsh-beta-community.join' | 'recordings.calendar' | 'recordings.day' | 'search.records' | 'search.scene' | 'search.recordings' | 'search.history' | 'search.history.create' | 'ai-video.list' | 'files.assets' | 'topic.create' | 'arko.profile' | 'arko.session' | 'arko.new-session' | 'arko.models' | 'arko.model.activate' | 'arko.history' | 'arko.ask' | 'arko.run.status' | 'arko.cancel' | 'plugin.update.status' | 'plugin.update.check' | 'plugin.update.acknowledge' | 'plugin.update.install' | 'plugin.update.install-status' | 'source.interwoven-moments' | 'source.interwoven-detail' | 'extensions.catalog.list' | 'extensions.catalog.detail' | 'extensions.my-list' | 'extensions.delete' | 'extensions.updates' | 'extensions.install.preview' | 'extensions.install.start' | 'extensions.install.status' | 'extensions.install.pause' | 'extensions.install.resume' | 'extensions.uninstall' | 'extensions.restart' | 'extensions.persistent.invoke' | 'extensions.bundle.invoke';
1463
+ export type ArkmePluginOperation = 'provider.capabilities' | 'provider.state' | 'chat.realtime.state' | 'auth.status' | 'auth.config' | 'auth.begin' | 'auth.poll' | 'auth.test.login' | 'auth.phone.send' | 'auth.phone.verify' | 'auth.logout' | 'contacts.search' | 'contacts.add' | 'group.create' | 'bots.create' | 'records.summary' | 'records.cache' | 'records.refresh' | 'records.search' | 'records.list' | 'records.create' | 'records.outbox' | 'records.retry' | 'calendar.buckets' | 'calendar.records' | 'recordings.day' | 'recordings.doubao.start' | 'user.profile' | 'user.profile.refresh' | 'image.read' | 'images.list' | 'world.feed' | 'world.mine' | 'world.voiceprint.availability' | 'world.voiceprint.playback.generate' | 'world.voiceprint.invite' | 'world.interactions.list' | 'world.interactions.create-text' | 'world.image.read' | 'arrangements.list' | 'arrangements.detail' | 'arrangements.mutate' | 'arrangements.reminder-enabled' | 'arrangements.reminders.summary' | 'arrangements.reminders.list' | 'arrangements.reminders.mark-read' | 'arrangements.reminders.mark-all-read' | 'arrangements.reminders.clear' | 'extensions.reviews.list' | 'extensions.reviews.create' | 'extensions.audit.check' | 'sources.list' | 'source.timeline' | 'source.mark-read' | 'source.send-text' | 'related-recordings.eligibility' | 'related-recordings.page' | 'source.ai-polish.settings' | 'source.ai-polish.notices' | 'source.ai-polish.generate-rule' | 'source.ai-polish.confirm-enable' | 'source.ai-polish.prepare-disable' | 'source.ai-polish.confirm-disable' | 'source.ai-polish.retry' | 'group.members' | 'group.member-candidates' | 'group.invite-preview' | 'group.members.add' | 'group.bots' | 'group.bot.add' | 'group.settings' | 'group.notification.set' | 'group.rename' | 'group.leave' | 'group.dissolve' | 'group.report' | 'user.card' | 'chat.private.open' | 'source.send-rich' | 'source.long-article.detail' | 'source.long-article.update' | 'source.long-article.draft.get' | 'source.long-article.draft.put' | 'source.long-article.draft.delete' | 'calls.outgoing.intent.claim' | 'calls.outgoing.intent.resolve' | 'calls.outgoing.prepare' | 'calls.outgoing.heartbeat' | 'calls.outgoing.release' | 'extensions.mine.list' | 'extensions.mine.publish' | 'extensions.catalog.list' | 'extensions.catalog.detail' | 'extensions.install.preview' | 'extensions.metadata.update' | 'extensions.share.rotate' | 'extensions.share.detail' | 'extensions.installed-list' | 'extensions.enabled-state' | 'extensions.persistent.client-state' | 'extensions.enabled.set' | 'extensions.preview.delete' | 'extensions.preview.reorder' | 'extensions.catalog.list' | 'extensions.classification.tree' | 'extensions.classification.items';
1464
+ export type ArkmeHostOperation = ArkmePluginOperation | 'provider.instance' | 'dsh-beta-community.entry-state' | 'dsh-beta-community.join' | 'recordings.calendar' | 'search.records' | 'search.scene' | 'search.recordings' | 'search.history' | 'search.history.create' | 'ai-video.list' | 'files.assets' | 'topic.create' | 'arko.profile' | 'arko.session' | 'arko.new-session' | 'arko.models' | 'arko.model.activate' | 'arko.history' | 'arko.ask' | 'arko.run.status' | 'arko.cancel' | 'plugin.update.status' | 'plugin.update.check' | 'plugin.update.acknowledge' | 'plugin.update.install' | 'plugin.update.install-status' | 'source.interwoven-moments' | 'source.interwoven-detail' | 'extensions.catalog.list' | 'extensions.classification.tree' | 'extensions.classification.items' | 'extensions.catalog.detail' | 'extensions.audit.check' | 'extensions.my-list' | 'extensions.delete' | 'extensions.updates' | 'extensions.install.preview' | 'extensions.install.start' | 'extensions.install.status' | 'extensions.install.pause' | 'extensions.install.resume' | 'extensions.uninstall' | 'extensions.restart' | 'extensions.persistent.invoke' | 'extensions.bundle.invoke';
1250
1465
  export interface ArkmePluginRequest {
1251
1466
  operation: ArkmeHostOperation;
1252
1467
  params?: Record<string, unknown>;