@elizaos/ui 2.0.0-alpha.25 → 2.0.0-alpha.333

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 (1747) hide show
  1. package/package.json +78 -51
  2. package/packages/typescript/src/action-docs.d.ts +22 -0
  3. package/packages/typescript/src/action-docs.d.ts.map +1 -0
  4. package/packages/typescript/src/action-docs.js +95 -0
  5. package/packages/typescript/src/actions.d.ts +29 -0
  6. package/packages/typescript/src/actions.d.ts.map +1 -0
  7. package/packages/typescript/src/actions.js +531 -0
  8. package/packages/typescript/src/character-utils.d.ts +138 -0
  9. package/packages/typescript/src/character-utils.d.ts.map +1 -0
  10. package/packages/typescript/src/character-utils.js +271 -0
  11. package/packages/typescript/src/character.d.ts +68 -0
  12. package/packages/typescript/src/character.d.ts.map +1 -0
  13. package/packages/typescript/src/character.js +155 -0
  14. package/packages/typescript/src/connection.d.ts +45 -0
  15. package/packages/typescript/src/connection.d.ts.map +1 -0
  16. package/packages/typescript/src/connection.js +149 -0
  17. package/packages/typescript/src/constants/index.d.ts +7 -0
  18. package/packages/typescript/src/constants/index.d.ts.map +1 -0
  19. package/packages/typescript/src/constants/index.js +6 -0
  20. package/packages/typescript/src/constants/secrets.d.ts +99 -0
  21. package/packages/typescript/src/constants/secrets.d.ts.map +1 -0
  22. package/packages/typescript/src/constants/secrets.js +239 -0
  23. package/packages/typescript/src/database/inMemoryAdapter.d.ts +285 -0
  24. package/packages/typescript/src/database/inMemoryAdapter.d.ts.map +1 -0
  25. package/packages/typescript/src/database/inMemoryAdapter.js +1171 -0
  26. package/packages/typescript/src/database.d.ts +426 -0
  27. package/packages/typescript/src/database.d.ts.map +1 -0
  28. package/packages/typescript/src/database.js +24 -0
  29. package/packages/typescript/src/entities.d.ts +11 -0
  30. package/packages/typescript/src/entities.d.ts.map +1 -0
  31. package/packages/typescript/src/entities.js +437 -0
  32. package/packages/typescript/src/features/advanced-capabilities/actions/addContact.d.ts +3 -0
  33. package/packages/typescript/src/features/advanced-capabilities/actions/addContact.d.ts.map +1 -0
  34. package/packages/typescript/src/features/advanced-capabilities/actions/addContact.js +142 -0
  35. package/packages/typescript/src/features/advanced-capabilities/actions/followRoom.d.ts +3 -0
  36. package/packages/typescript/src/features/advanced-capabilities/actions/followRoom.d.ts.map +1 -0
  37. package/packages/typescript/src/features/advanced-capabilities/actions/followRoom.js +183 -0
  38. package/packages/typescript/src/features/advanced-capabilities/actions/imageGeneration.d.ts +3 -0
  39. package/packages/typescript/src/features/advanced-capabilities/actions/imageGeneration.d.ts.map +1 -0
  40. package/packages/typescript/src/features/advanced-capabilities/actions/imageGeneration.js +148 -0
  41. package/packages/typescript/src/features/advanced-capabilities/actions/index.d.ts +21 -0
  42. package/packages/typescript/src/features/advanced-capabilities/actions/index.d.ts.map +1 -0
  43. package/packages/typescript/src/features/advanced-capabilities/actions/index.js +20 -0
  44. package/packages/typescript/src/features/advanced-capabilities/actions/muteRoom.d.ts +3 -0
  45. package/packages/typescript/src/features/advanced-capabilities/actions/muteRoom.d.ts.map +1 -0
  46. package/packages/typescript/src/features/advanced-capabilities/actions/muteRoom.js +181 -0
  47. package/packages/typescript/src/features/advanced-capabilities/actions/removeContact.d.ts +3 -0
  48. package/packages/typescript/src/features/advanced-capabilities/actions/removeContact.d.ts.map +1 -0
  49. package/packages/typescript/src/features/advanced-capabilities/actions/removeContact.js +102 -0
  50. package/packages/typescript/src/features/advanced-capabilities/actions/roles.d.ts +13 -0
  51. package/packages/typescript/src/features/advanced-capabilities/actions/roles.d.ts.map +1 -0
  52. package/packages/typescript/src/features/advanced-capabilities/actions/roles.js +317 -0
  53. package/packages/typescript/src/features/advanced-capabilities/actions/scheduleFollowUp.d.ts +3 -0
  54. package/packages/typescript/src/features/advanced-capabilities/actions/scheduleFollowUp.d.ts.map +1 -0
  55. package/packages/typescript/src/features/advanced-capabilities/actions/scheduleFollowUp.js +136 -0
  56. package/packages/typescript/src/features/advanced-capabilities/actions/searchContacts.d.ts +3 -0
  57. package/packages/typescript/src/features/advanced-capabilities/actions/searchContacts.d.ts.map +1 -0
  58. package/packages/typescript/src/features/advanced-capabilities/actions/searchContacts.js +176 -0
  59. package/packages/typescript/src/features/advanced-capabilities/actions/sendMessage.d.ts +15 -0
  60. package/packages/typescript/src/features/advanced-capabilities/actions/sendMessage.d.ts.map +1 -0
  61. package/packages/typescript/src/features/advanced-capabilities/actions/sendMessage.js +476 -0
  62. package/packages/typescript/src/features/advanced-capabilities/actions/settings.d.ts +22 -0
  63. package/packages/typescript/src/features/advanced-capabilities/actions/settings.d.ts.map +1 -0
  64. package/packages/typescript/src/features/advanced-capabilities/actions/settings.js +823 -0
  65. package/packages/typescript/src/features/advanced-capabilities/actions/think.d.ts +3 -0
  66. package/packages/typescript/src/features/advanced-capabilities/actions/think.d.ts.map +1 -0
  67. package/packages/typescript/src/features/advanced-capabilities/actions/think.js +84 -0
  68. package/packages/typescript/src/features/advanced-capabilities/actions/unfollowRoom.d.ts +3 -0
  69. package/packages/typescript/src/features/advanced-capabilities/actions/unfollowRoom.d.ts.map +1 -0
  70. package/packages/typescript/src/features/advanced-capabilities/actions/unfollowRoom.js +134 -0
  71. package/packages/typescript/src/features/advanced-capabilities/actions/unmuteRoom.d.ts +3 -0
  72. package/packages/typescript/src/features/advanced-capabilities/actions/unmuteRoom.d.ts.map +1 -0
  73. package/packages/typescript/src/features/advanced-capabilities/actions/unmuteRoom.js +193 -0
  74. package/packages/typescript/src/features/advanced-capabilities/actions/updateContact.d.ts +3 -0
  75. package/packages/typescript/src/features/advanced-capabilities/actions/updateContact.d.ts.map +1 -0
  76. package/packages/typescript/src/features/advanced-capabilities/actions/updateContact.js +199 -0
  77. package/packages/typescript/src/features/advanced-capabilities/actions/updateEntity.d.ts +43 -0
  78. package/packages/typescript/src/features/advanced-capabilities/actions/updateEntity.d.ts.map +1 -0
  79. package/packages/typescript/src/features/advanced-capabilities/actions/updateEntity.js +372 -0
  80. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/append.d.ts +4 -0
  81. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/append.d.ts.map +1 -0
  82. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/append.js +150 -0
  83. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/delete.d.ts +4 -0
  84. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/delete.d.ts.map +1 -0
  85. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/delete.js +136 -0
  86. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/list.d.ts +4 -0
  87. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/list.d.ts.map +1 -0
  88. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/list.js +84 -0
  89. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/read-attachment.d.ts +4 -0
  90. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/read-attachment.d.ts.map +1 -0
  91. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/read-attachment.js +112 -0
  92. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/read-file.d.ts +16 -0
  93. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/read-file.d.ts.map +1 -0
  94. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/read-file.js +192 -0
  95. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/read.d.ts +4 -0
  96. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/read.d.ts.map +1 -0
  97. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/read.js +138 -0
  98. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/remove-from-clipboard.d.ts +4 -0
  99. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/remove-from-clipboard.d.ts.map +1 -0
  100. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/remove-from-clipboard.js +96 -0
  101. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/search.d.ts +4 -0
  102. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/search.d.ts.map +1 -0
  103. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/search.js +139 -0
  104. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/write.d.ts +4 -0
  105. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/write.d.ts.map +1 -0
  106. package/packages/typescript/src/features/advanced-capabilities/clipboard/actions/write.js +138 -0
  107. package/packages/typescript/src/features/advanced-capabilities/clipboard/index.d.ts +39 -0
  108. package/packages/typescript/src/features/advanced-capabilities/clipboard/index.d.ts.map +1 -0
  109. package/packages/typescript/src/features/advanced-capabilities/clipboard/index.js +78 -0
  110. package/packages/typescript/src/features/advanced-capabilities/clipboard/providers/clipboard.d.ts +4 -0
  111. package/packages/typescript/src/features/advanced-capabilities/clipboard/providers/clipboard.d.ts.map +1 -0
  112. package/packages/typescript/src/features/advanced-capabilities/clipboard/providers/clipboard.js +62 -0
  113. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/attachmentContext.d.ts +16 -0
  114. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/attachmentContext.d.ts.map +1 -0
  115. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/attachmentContext.js +162 -0
  116. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/clipboardService.d.ts +65 -0
  117. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/clipboardService.d.ts.map +1 -0
  118. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/clipboardService.js +352 -0
  119. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/taskClipboardPersistence.d.ts +24 -0
  120. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/taskClipboardPersistence.d.ts.map +1 -0
  121. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/taskClipboardPersistence.js +63 -0
  122. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/taskClipboardService.d.ts +29 -0
  123. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/taskClipboardService.d.ts.map +1 -0
  124. package/packages/typescript/src/features/advanced-capabilities/clipboard/services/taskClipboardService.js +195 -0
  125. package/packages/typescript/src/features/advanced-capabilities/clipboard/specs.d.ts +15 -0
  126. package/packages/typescript/src/features/advanced-capabilities/clipboard/specs.d.ts.map +1 -0
  127. package/packages/typescript/src/features/advanced-capabilities/clipboard/specs.js +164 -0
  128. package/packages/typescript/src/features/advanced-capabilities/clipboard/types.d.ts +92 -0
  129. package/packages/typescript/src/features/advanced-capabilities/clipboard/types.d.ts.map +1 -0
  130. package/packages/typescript/src/features/advanced-capabilities/clipboard/types.js +4 -0
  131. package/packages/typescript/src/features/advanced-capabilities/evaluators/factRefinement.d.ts +20 -0
  132. package/packages/typescript/src/features/advanced-capabilities/evaluators/factRefinement.d.ts.map +1 -0
  133. package/packages/typescript/src/features/advanced-capabilities/evaluators/factRefinement.js +362 -0
  134. package/packages/typescript/src/features/advanced-capabilities/evaluators/index.d.ts +11 -0
  135. package/packages/typescript/src/features/advanced-capabilities/evaluators/index.d.ts.map +1 -0
  136. package/packages/typescript/src/features/advanced-capabilities/evaluators/index.js +10 -0
  137. package/packages/typescript/src/features/advanced-capabilities/evaluators/reflection.d.ts +3 -0
  138. package/packages/typescript/src/features/advanced-capabilities/evaluators/reflection.d.ts.map +1 -0
  139. package/packages/typescript/src/features/advanced-capabilities/evaluators/reflection.js +710 -0
  140. package/packages/typescript/src/features/advanced-capabilities/evaluators/relationshipExtraction.d.ts +3 -0
  141. package/packages/typescript/src/features/advanced-capabilities/evaluators/relationshipExtraction.d.ts.map +1 -0
  142. package/packages/typescript/src/features/advanced-capabilities/evaluators/relationshipExtraction.js +641 -0
  143. package/packages/typescript/src/features/advanced-capabilities/evaluators/skillExtraction.d.ts +25 -0
  144. package/packages/typescript/src/features/advanced-capabilities/evaluators/skillExtraction.d.ts.map +1 -0
  145. package/packages/typescript/src/features/advanced-capabilities/evaluators/skillExtraction.js +362 -0
  146. package/packages/typescript/src/features/advanced-capabilities/evaluators/skillRefinement.d.ts +21 -0
  147. package/packages/typescript/src/features/advanced-capabilities/evaluators/skillRefinement.d.ts.map +1 -0
  148. package/packages/typescript/src/features/advanced-capabilities/evaluators/skillRefinement.js +541 -0
  149. package/packages/typescript/src/features/advanced-capabilities/evaluators/task-completion.d.ts +12 -0
  150. package/packages/typescript/src/features/advanced-capabilities/evaluators/task-completion.d.ts.map +1 -0
  151. package/packages/typescript/src/features/advanced-capabilities/evaluators/task-completion.js +14 -0
  152. package/packages/typescript/src/features/advanced-capabilities/experience/actions/record-experience.d.ts +3 -0
  153. package/packages/typescript/src/features/advanced-capabilities/experience/actions/record-experience.d.ts.map +1 -0
  154. package/packages/typescript/src/features/advanced-capabilities/experience/actions/record-experience.js +71 -0
  155. package/packages/typescript/src/features/advanced-capabilities/experience/evaluators/experienceEvaluator.d.ts +3 -0
  156. package/packages/typescript/src/features/advanced-capabilities/experience/evaluators/experienceEvaluator.d.ts.map +1 -0
  157. package/packages/typescript/src/features/advanced-capabilities/experience/evaluators/experienceEvaluator.js +256 -0
  158. package/packages/typescript/src/features/advanced-capabilities/experience/generated/prompts/typescript/prompts.d.ts +12 -0
  159. package/packages/typescript/src/features/advanced-capabilities/experience/generated/prompts/typescript/prompts.d.ts.map +1 -0
  160. package/packages/typescript/src/features/advanced-capabilities/experience/generated/prompts/typescript/prompts.js +41 -0
  161. package/packages/typescript/src/features/advanced-capabilities/experience/generated/specs/spec-helpers.d.ts +49 -0
  162. package/packages/typescript/src/features/advanced-capabilities/experience/generated/specs/spec-helpers.d.ts.map +1 -0
  163. package/packages/typescript/src/features/advanced-capabilities/experience/generated/specs/spec-helpers.js +78 -0
  164. package/packages/typescript/src/features/advanced-capabilities/experience/generated/specs/specs.d.ts +159 -0
  165. package/packages/typescript/src/features/advanced-capabilities/experience/generated/specs/specs.d.ts.map +1 -0
  166. package/packages/typescript/src/features/advanced-capabilities/experience/generated/specs/specs.js +192 -0
  167. package/packages/typescript/src/features/advanced-capabilities/experience/index.d.ts +9 -0
  168. package/packages/typescript/src/features/advanced-capabilities/experience/index.d.ts.map +1 -0
  169. package/packages/typescript/src/features/advanced-capabilities/experience/index.js +7 -0
  170. package/packages/typescript/src/features/advanced-capabilities/experience/providers/experienceProvider.d.ts +3 -0
  171. package/packages/typescript/src/features/advanced-capabilities/experience/providers/experienceProvider.d.ts.map +1 -0
  172. package/packages/typescript/src/features/advanced-capabilities/experience/providers/experienceProvider.js +51 -0
  173. package/packages/typescript/src/features/advanced-capabilities/experience/service.d.ts +68 -0
  174. package/packages/typescript/src/features/advanced-capabilities/experience/service.d.ts.map +1 -0
  175. package/packages/typescript/src/features/advanced-capabilities/experience/service.js +755 -0
  176. package/packages/typescript/src/features/advanced-capabilities/experience/types.d.ts +90 -0
  177. package/packages/typescript/src/features/advanced-capabilities/experience/types.d.ts.map +1 -0
  178. package/packages/typescript/src/features/advanced-capabilities/experience/types.js +22 -0
  179. package/packages/typescript/src/features/advanced-capabilities/experience/utils/confidenceDecay.d.ts +34 -0
  180. package/packages/typescript/src/features/advanced-capabilities/experience/utils/confidenceDecay.d.ts.map +1 -0
  181. package/packages/typescript/src/features/advanced-capabilities/experience/utils/confidenceDecay.js +106 -0
  182. package/packages/typescript/src/features/advanced-capabilities/experience/utils/experienceRelationships.d.ts +26 -0
  183. package/packages/typescript/src/features/advanced-capabilities/experience/utils/experienceRelationships.d.ts.map +1 -0
  184. package/packages/typescript/src/features/advanced-capabilities/experience/utils/experienceRelationships.js +129 -0
  185. package/packages/typescript/src/features/advanced-capabilities/form/actions/restore.d.ts +13 -0
  186. package/packages/typescript/src/features/advanced-capabilities/form/actions/restore.d.ts.map +1 -0
  187. package/packages/typescript/src/features/advanced-capabilities/form/actions/restore.js +152 -0
  188. package/packages/typescript/src/features/advanced-capabilities/form/builder.d.ts +101 -0
  189. package/packages/typescript/src/features/advanced-capabilities/form/builder.d.ts.map +1 -0
  190. package/packages/typescript/src/features/advanced-capabilities/form/builder.js +362 -0
  191. package/packages/typescript/src/features/advanced-capabilities/form/builtins.d.ts +16 -0
  192. package/packages/typescript/src/features/advanced-capabilities/form/builtins.d.ts.map +1 -0
  193. package/packages/typescript/src/features/advanced-capabilities/form/builtins.js +245 -0
  194. package/packages/typescript/src/features/advanced-capabilities/form/defaults.d.ts +32 -0
  195. package/packages/typescript/src/features/advanced-capabilities/form/defaults.d.ts.map +1 -0
  196. package/packages/typescript/src/features/advanced-capabilities/form/defaults.js +98 -0
  197. package/packages/typescript/src/features/advanced-capabilities/form/evaluators/extractor.d.ts +12 -0
  198. package/packages/typescript/src/features/advanced-capabilities/form/evaluators/extractor.d.ts.map +1 -0
  199. package/packages/typescript/src/features/advanced-capabilities/form/evaluators/extractor.js +231 -0
  200. package/packages/typescript/src/features/advanced-capabilities/form/extraction.d.ts +24 -0
  201. package/packages/typescript/src/features/advanced-capabilities/form/extraction.d.ts.map +1 -0
  202. package/packages/typescript/src/features/advanced-capabilities/form/extraction.js +319 -0
  203. package/packages/typescript/src/features/advanced-capabilities/form/index.d.ts +22 -0
  204. package/packages/typescript/src/features/advanced-capabilities/form/index.d.ts.map +1 -0
  205. package/packages/typescript/src/features/advanced-capabilities/form/index.js +52 -0
  206. package/packages/typescript/src/features/advanced-capabilities/form/intent.d.ts +41 -0
  207. package/packages/typescript/src/features/advanced-capabilities/form/intent.d.ts.map +1 -0
  208. package/packages/typescript/src/features/advanced-capabilities/form/intent.js +119 -0
  209. package/packages/typescript/src/features/advanced-capabilities/form/providers/context.d.ts +11 -0
  210. package/packages/typescript/src/features/advanced-capabilities/form/providers/context.d.ts.map +1 -0
  211. package/packages/typescript/src/features/advanced-capabilities/form/providers/context.js +166 -0
  212. package/packages/typescript/src/features/advanced-capabilities/form/service.d.ts +66 -0
  213. package/packages/typescript/src/features/advanced-capabilities/form/service.d.ts.map +1 -0
  214. package/packages/typescript/src/features/advanced-capabilities/form/service.js +912 -0
  215. package/packages/typescript/src/features/advanced-capabilities/form/storage.d.ts +26 -0
  216. package/packages/typescript/src/features/advanced-capabilities/form/storage.d.ts.map +1 -0
  217. package/packages/typescript/src/features/advanced-capabilities/form/storage.js +228 -0
  218. package/packages/typescript/src/features/advanced-capabilities/form/template.d.ts +10 -0
  219. package/packages/typescript/src/features/advanced-capabilities/form/template.d.ts.map +1 -0
  220. package/packages/typescript/src/features/advanced-capabilities/form/template.js +56 -0
  221. package/packages/typescript/src/features/advanced-capabilities/form/ttl.d.ts +40 -0
  222. package/packages/typescript/src/features/advanced-capabilities/form/ttl.d.ts.map +1 -0
  223. package/packages/typescript/src/features/advanced-capabilities/form/ttl.js +107 -0
  224. package/packages/typescript/src/features/advanced-capabilities/form/types.d.ts +589 -0
  225. package/packages/typescript/src/features/advanced-capabilities/form/types.d.ts.map +1 -0
  226. package/packages/typescript/src/features/advanced-capabilities/form/types.js +71 -0
  227. package/packages/typescript/src/features/advanced-capabilities/form/validation.d.ts +24 -0
  228. package/packages/typescript/src/features/advanced-capabilities/form/validation.d.ts.map +1 -0
  229. package/packages/typescript/src/features/advanced-capabilities/form/validation.js +311 -0
  230. package/packages/typescript/src/features/advanced-capabilities/index.d.ts +47 -0
  231. package/packages/typescript/src/features/advanced-capabilities/index.d.ts.map +1 -0
  232. package/packages/typescript/src/features/advanced-capabilities/index.js +114 -0
  233. package/packages/typescript/src/features/advanced-capabilities/personality/actions/modify-character.d.ts +7 -0
  234. package/packages/typescript/src/features/advanced-capabilities/personality/actions/modify-character.d.ts.map +1 -0
  235. package/packages/typescript/src/features/advanced-capabilities/personality/actions/modify-character.js +1299 -0
  236. package/packages/typescript/src/features/advanced-capabilities/personality/evaluators/character-evolution.d.ts +53 -0
  237. package/packages/typescript/src/features/advanced-capabilities/personality/evaluators/character-evolution.d.ts.map +1 -0
  238. package/packages/typescript/src/features/advanced-capabilities/personality/evaluators/character-evolution.js +429 -0
  239. package/packages/typescript/src/features/advanced-capabilities/personality/index.d.ts +10 -0
  240. package/packages/typescript/src/features/advanced-capabilities/personality/index.d.ts.map +1 -0
  241. package/packages/typescript/src/features/advanced-capabilities/personality/index.js +8 -0
  242. package/packages/typescript/src/features/advanced-capabilities/personality/providers/user-personality.d.ts +8 -0
  243. package/packages/typescript/src/features/advanced-capabilities/personality/providers/user-personality.d.ts.map +1 -0
  244. package/packages/typescript/src/features/advanced-capabilities/personality/providers/user-personality.js +57 -0
  245. package/packages/typescript/src/features/advanced-capabilities/personality/services/character-file-manager.d.ts +71 -0
  246. package/packages/typescript/src/features/advanced-capabilities/personality/services/character-file-manager.d.ts.map +1 -0
  247. package/packages/typescript/src/features/advanced-capabilities/personality/services/character-file-manager.js +478 -0
  248. package/packages/typescript/src/features/advanced-capabilities/personality/types.d.ts +13 -0
  249. package/packages/typescript/src/features/advanced-capabilities/personality/types.d.ts.map +1 -0
  250. package/packages/typescript/src/features/advanced-capabilities/personality/types.js +8 -0
  251. package/packages/typescript/src/features/advanced-capabilities/providers/contacts.d.ts +3 -0
  252. package/packages/typescript/src/features/advanced-capabilities/providers/contacts.d.ts.map +1 -0
  253. package/packages/typescript/src/features/advanced-capabilities/providers/contacts.js +77 -0
  254. package/packages/typescript/src/features/advanced-capabilities/providers/facts.d.ts +11 -0
  255. package/packages/typescript/src/features/advanced-capabilities/providers/facts.d.ts.map +1 -0
  256. package/packages/typescript/src/features/advanced-capabilities/providers/facts.js +162 -0
  257. package/packages/typescript/src/features/advanced-capabilities/providers/followUps.d.ts +3 -0
  258. package/packages/typescript/src/features/advanced-capabilities/providers/followUps.d.ts.map +1 -0
  259. package/packages/typescript/src/features/advanced-capabilities/providers/followUps.js +112 -0
  260. package/packages/typescript/src/features/advanced-capabilities/providers/index.d.ts +13 -0
  261. package/packages/typescript/src/features/advanced-capabilities/providers/index.d.ts.map +1 -0
  262. package/packages/typescript/src/features/advanced-capabilities/providers/index.js +12 -0
  263. package/packages/typescript/src/features/advanced-capabilities/providers/knowledge.d.ts +9 -0
  264. package/packages/typescript/src/features/advanced-capabilities/providers/knowledge.d.ts.map +1 -0
  265. package/packages/typescript/src/features/advanced-capabilities/providers/knowledge.js +83 -0
  266. package/packages/typescript/src/features/advanced-capabilities/providers/relationships.d.ts +15 -0
  267. package/packages/typescript/src/features/advanced-capabilities/providers/relationships.d.ts.map +1 -0
  268. package/packages/typescript/src/features/advanced-capabilities/providers/relationships.js +125 -0
  269. package/packages/typescript/src/features/advanced-capabilities/providers/roles.d.ts +19 -0
  270. package/packages/typescript/src/features/advanced-capabilities/providers/roles.d.ts.map +1 -0
  271. package/packages/typescript/src/features/advanced-capabilities/providers/roles.js +180 -0
  272. package/packages/typescript/src/features/advanced-capabilities/providers/settings.d.ts +7 -0
  273. package/packages/typescript/src/features/advanced-capabilities/providers/settings.d.ts.map +1 -0
  274. package/packages/typescript/src/features/advanced-capabilities/providers/settings.js +294 -0
  275. package/packages/typescript/src/features/advanced-memory/evaluators/index.d.ts +3 -0
  276. package/packages/typescript/src/features/advanced-memory/evaluators/index.d.ts.map +1 -0
  277. package/packages/typescript/src/features/advanced-memory/evaluators/index.js +2 -0
  278. package/packages/typescript/src/features/advanced-memory/evaluators/long-term-extraction.d.ts +3 -0
  279. package/packages/typescript/src/features/advanced-memory/evaluators/long-term-extraction.d.ts.map +1 -0
  280. package/packages/typescript/src/features/advanced-memory/evaluators/long-term-extraction.js +199 -0
  281. package/packages/typescript/src/features/advanced-memory/evaluators/summarization.d.ts +3 -0
  282. package/packages/typescript/src/features/advanced-memory/evaluators/summarization.d.ts.map +1 -0
  283. package/packages/typescript/src/features/advanced-memory/evaluators/summarization.js +240 -0
  284. package/packages/typescript/src/features/advanced-memory/index.d.ts +16 -0
  285. package/packages/typescript/src/features/advanced-memory/index.d.ts.map +1 -0
  286. package/packages/typescript/src/features/advanced-memory/index.js +26 -0
  287. package/packages/typescript/src/features/advanced-memory/prompts.d.ts +2 -0
  288. package/packages/typescript/src/features/advanced-memory/prompts.d.ts.map +1 -0
  289. package/packages/typescript/src/features/advanced-memory/prompts.js +1 -0
  290. package/packages/typescript/src/features/advanced-memory/providers/context-summary.d.ts +3 -0
  291. package/packages/typescript/src/features/advanced-memory/providers/context-summary.d.ts.map +1 -0
  292. package/packages/typescript/src/features/advanced-memory/providers/context-summary.js +85 -0
  293. package/packages/typescript/src/features/advanced-memory/providers/index.d.ts +3 -0
  294. package/packages/typescript/src/features/advanced-memory/providers/index.d.ts.map +1 -0
  295. package/packages/typescript/src/features/advanced-memory/providers/index.js +2 -0
  296. package/packages/typescript/src/features/advanced-memory/providers/long-term-memory.d.ts +3 -0
  297. package/packages/typescript/src/features/advanced-memory/providers/long-term-memory.d.ts.map +1 -0
  298. package/packages/typescript/src/features/advanced-memory/providers/long-term-memory.js +92 -0
  299. package/packages/typescript/src/features/advanced-memory/schemas/index.d.ts +5 -0
  300. package/packages/typescript/src/features/advanced-memory/schemas/index.d.ts.map +1 -0
  301. package/packages/typescript/src/features/advanced-memory/schemas/index.js +3 -0
  302. package/packages/typescript/src/features/advanced-memory/schemas/long-term-memories.d.ts +10 -0
  303. package/packages/typescript/src/features/advanced-memory/schemas/long-term-memories.d.ts.map +1 -0
  304. package/packages/typescript/src/features/advanced-memory/schemas/long-term-memories.js +65 -0
  305. package/packages/typescript/src/features/advanced-memory/schemas/memory-access-logs.d.ts +10 -0
  306. package/packages/typescript/src/features/advanced-memory/schemas/memory-access-logs.d.ts.map +1 -0
  307. package/packages/typescript/src/features/advanced-memory/schemas/memory-access-logs.js +45 -0
  308. package/packages/typescript/src/features/advanced-memory/schemas/session-summaries.d.ts +10 -0
  309. package/packages/typescript/src/features/advanced-memory/schemas/session-summaries.d.ts.map +1 -0
  310. package/packages/typescript/src/features/advanced-memory/schemas/session-summaries.js +66 -0
  311. package/packages/typescript/src/features/advanced-memory/services/memory-service.d.ts +38 -0
  312. package/packages/typescript/src/features/advanced-memory/services/memory-service.d.ts.map +1 -0
  313. package/packages/typescript/src/features/advanced-memory/services/memory-service.js +367 -0
  314. package/packages/typescript/src/features/advanced-memory/trajectory.d.ts +10 -0
  315. package/packages/typescript/src/features/advanced-memory/trajectory.d.ts.map +1 -0
  316. package/packages/typescript/src/features/advanced-memory/trajectory.js +33 -0
  317. package/packages/typescript/src/features/advanced-memory/types.d.ts +68 -0
  318. package/packages/typescript/src/features/advanced-memory/types.d.ts.map +1 -0
  319. package/packages/typescript/src/features/advanced-memory/types.js +6 -0
  320. package/packages/typescript/src/features/advanced-planning/actions/chain-example.d.ts +6 -0
  321. package/packages/typescript/src/features/advanced-planning/actions/chain-example.d.ts.map +1 -0
  322. package/packages/typescript/src/features/advanced-planning/actions/chain-example.js +181 -0
  323. package/packages/typescript/src/features/advanced-planning/index.d.ts +5 -0
  324. package/packages/typescript/src/features/advanced-planning/index.d.ts.map +1 -0
  325. package/packages/typescript/src/features/advanced-planning/index.js +20 -0
  326. package/packages/typescript/src/features/advanced-planning/providers/message-classifier.d.ts +3 -0
  327. package/packages/typescript/src/features/advanced-planning/providers/message-classifier.d.ts.map +1 -0
  328. package/packages/typescript/src/features/advanced-planning/providers/message-classifier.js +105 -0
  329. package/packages/typescript/src/features/advanced-planning/services/planning-service.d.ts +77 -0
  330. package/packages/typescript/src/features/advanced-planning/services/planning-service.d.ts.map +1 -0
  331. package/packages/typescript/src/features/advanced-planning/services/planning-service.js +875 -0
  332. package/packages/typescript/src/features/advanced-planning/types.d.ts +78 -0
  333. package/packages/typescript/src/features/advanced-planning/types.d.ts.map +1 -0
  334. package/packages/typescript/src/features/advanced-planning/types.js +1 -0
  335. package/packages/typescript/src/features/autonomy/action.d.ts +14 -0
  336. package/packages/typescript/src/features/autonomy/action.d.ts.map +1 -0
  337. package/packages/typescript/src/features/autonomy/action.js +177 -0
  338. package/packages/typescript/src/features/autonomy/execution-facade.d.ts +22 -0
  339. package/packages/typescript/src/features/autonomy/execution-facade.d.ts.map +1 -0
  340. package/packages/typescript/src/features/autonomy/execution-facade.js +150 -0
  341. package/packages/typescript/src/features/autonomy/index.d.ts +11 -0
  342. package/packages/typescript/src/features/autonomy/index.d.ts.map +1 -0
  343. package/packages/typescript/src/features/autonomy/index.js +13 -0
  344. package/packages/typescript/src/features/autonomy/providers.d.ts +21 -0
  345. package/packages/typescript/src/features/autonomy/providers.d.ts.map +1 -0
  346. package/packages/typescript/src/features/autonomy/providers.js +154 -0
  347. package/packages/typescript/src/features/autonomy/routes.d.ts +11 -0
  348. package/packages/typescript/src/features/autonomy/routes.d.ts.map +1 -0
  349. package/packages/typescript/src/features/autonomy/routes.js +158 -0
  350. package/packages/typescript/src/features/autonomy/service.d.ts +138 -0
  351. package/packages/typescript/src/features/autonomy/service.d.ts.map +1 -0
  352. package/packages/typescript/src/features/autonomy/service.js +813 -0
  353. package/packages/typescript/src/features/autonomy/types.d.ts +31 -0
  354. package/packages/typescript/src/features/autonomy/types.d.ts.map +1 -0
  355. package/packages/typescript/src/features/autonomy/types.js +6 -0
  356. package/packages/typescript/src/features/basic-capabilities/actions/choice.d.ts +4 -0
  357. package/packages/typescript/src/features/basic-capabilities/actions/choice.d.ts.map +1 -0
  358. package/packages/typescript/src/features/basic-capabilities/actions/choice.js +278 -0
  359. package/packages/typescript/src/features/basic-capabilities/actions/ignore.d.ts +3 -0
  360. package/packages/typescript/src/features/basic-capabilities/actions/ignore.d.ts.map +1 -0
  361. package/packages/typescript/src/features/basic-capabilities/actions/ignore.js +23 -0
  362. package/packages/typescript/src/features/basic-capabilities/actions/index.d.ts +10 -0
  363. package/packages/typescript/src/features/basic-capabilities/actions/index.d.ts.map +1 -0
  364. package/packages/typescript/src/features/basic-capabilities/actions/index.js +9 -0
  365. package/packages/typescript/src/features/basic-capabilities/actions/none.d.ts +3 -0
  366. package/packages/typescript/src/features/basic-capabilities/actions/none.d.ts.map +1 -0
  367. package/packages/typescript/src/features/basic-capabilities/actions/none.js +26 -0
  368. package/packages/typescript/src/features/basic-capabilities/actions/reply.d.ts +3 -0
  369. package/packages/typescript/src/features/basic-capabilities/actions/reply.d.ts.map +1 -0
  370. package/packages/typescript/src/features/basic-capabilities/actions/reply.js +80 -0
  371. package/packages/typescript/src/features/basic-capabilities/index.d.ts +108 -0
  372. package/packages/typescript/src/features/basic-capabilities/index.d.ts.map +1 -0
  373. package/packages/typescript/src/features/basic-capabilities/index.js +1027 -0
  374. package/packages/typescript/src/features/basic-capabilities/providers/actionState.d.ts +7 -0
  375. package/packages/typescript/src/features/basic-capabilities/providers/actionState.d.ts.map +1 -0
  376. package/packages/typescript/src/features/basic-capabilities/providers/actionState.js +232 -0
  377. package/packages/typescript/src/features/basic-capabilities/providers/actions.d.ts +35 -0
  378. package/packages/typescript/src/features/basic-capabilities/providers/actions.d.ts.map +1 -0
  379. package/packages/typescript/src/features/basic-capabilities/providers/actions.js +104 -0
  380. package/packages/typescript/src/features/basic-capabilities/providers/attachments.d.ts +20 -0
  381. package/packages/typescript/src/features/basic-capabilities/providers/attachments.d.ts.map +1 -0
  382. package/packages/typescript/src/features/basic-capabilities/providers/attachments.js +94 -0
  383. package/packages/typescript/src/features/basic-capabilities/providers/character.d.ts +17 -0
  384. package/packages/typescript/src/features/basic-capabilities/providers/character.d.ts.map +1 -0
  385. package/packages/typescript/src/features/basic-capabilities/providers/character.js +190 -0
  386. package/packages/typescript/src/features/basic-capabilities/providers/choice.d.ts +11 -0
  387. package/packages/typescript/src/features/basic-capabilities/providers/choice.d.ts.map +1 -0
  388. package/packages/typescript/src/features/basic-capabilities/providers/choice.js +86 -0
  389. package/packages/typescript/src/features/basic-capabilities/providers/contextBench.d.ts +12 -0
  390. package/packages/typescript/src/features/basic-capabilities/providers/contextBench.d.ts.map +1 -0
  391. package/packages/typescript/src/features/basic-capabilities/providers/contextBench.js +50 -0
  392. package/packages/typescript/src/features/basic-capabilities/providers/currentTime.d.ts +11 -0
  393. package/packages/typescript/src/features/basic-capabilities/providers/currentTime.d.ts.map +1 -0
  394. package/packages/typescript/src/features/basic-capabilities/providers/currentTime.js +56 -0
  395. package/packages/typescript/src/features/basic-capabilities/providers/entities.d.ts +7 -0
  396. package/packages/typescript/src/features/basic-capabilities/providers/entities.d.ts.map +1 -0
  397. package/packages/typescript/src/features/basic-capabilities/providers/entities.js +39 -0
  398. package/packages/typescript/src/features/basic-capabilities/providers/evaluators.d.ts +27 -0
  399. package/packages/typescript/src/features/basic-capabilities/providers/evaluators.d.ts.map +1 -0
  400. package/packages/typescript/src/features/basic-capabilities/providers/evaluators.js +107 -0
  401. package/packages/typescript/src/features/basic-capabilities/providers/index.d.ts +20 -0
  402. package/packages/typescript/src/features/basic-capabilities/providers/index.d.ts.map +1 -0
  403. package/packages/typescript/src/features/basic-capabilities/providers/index.js +19 -0
  404. package/packages/typescript/src/features/basic-capabilities/providers/non-actionable-chatter.d.ts +5 -0
  405. package/packages/typescript/src/features/basic-capabilities/providers/non-actionable-chatter.d.ts.map +1 -0
  406. package/packages/typescript/src/features/basic-capabilities/providers/non-actionable-chatter.js +22 -0
  407. package/packages/typescript/src/features/basic-capabilities/providers/providers.d.ts +18 -0
  408. package/packages/typescript/src/features/basic-capabilities/providers/providers.d.ts.map +1 -0
  409. package/packages/typescript/src/features/basic-capabilities/providers/providers.js +75 -0
  410. package/packages/typescript/src/features/basic-capabilities/providers/recentMessages.d.ts +14 -0
  411. package/packages/typescript/src/features/basic-capabilities/providers/recentMessages.d.ts.map +1 -0
  412. package/packages/typescript/src/features/basic-capabilities/providers/recentMessages.js +323 -0
  413. package/packages/typescript/src/features/basic-capabilities/providers/time.d.ts +12 -0
  414. package/packages/typescript/src/features/basic-capabilities/providers/time.d.ts.map +1 -0
  415. package/packages/typescript/src/features/basic-capabilities/providers/time.js +36 -0
  416. package/packages/typescript/src/features/basic-capabilities/providers/uiContext.d.ts +3 -0
  417. package/packages/typescript/src/features/basic-capabilities/providers/uiContext.d.ts.map +1 -0
  418. package/packages/typescript/src/features/basic-capabilities/providers/uiContext.js +48 -0
  419. package/packages/typescript/src/features/basic-capabilities/providers/world.d.ts +8 -0
  420. package/packages/typescript/src/features/basic-capabilities/providers/world.d.ts.map +1 -0
  421. package/packages/typescript/src/features/basic-capabilities/providers/world.js +212 -0
  422. package/packages/typescript/src/features/evaluator-doc-examples.d.ts +4 -0
  423. package/packages/typescript/src/features/evaluator-doc-examples.d.ts.map +1 -0
  424. package/packages/typescript/src/features/evaluator-doc-examples.js +13 -0
  425. package/packages/typescript/src/features/index.d.ts +58 -0
  426. package/packages/typescript/src/features/index.d.ts.map +1 -0
  427. package/packages/typescript/src/features/index.js +153 -0
  428. package/packages/typescript/src/features/knowledge/actions.d.ts +5 -0
  429. package/packages/typescript/src/features/knowledge/actions.d.ts.map +1 -0
  430. package/packages/typescript/src/features/knowledge/actions.js +275 -0
  431. package/packages/typescript/src/features/knowledge/config.d.ts +5 -0
  432. package/packages/typescript/src/features/knowledge/config.d.ts.map +1 -0
  433. package/packages/typescript/src/features/knowledge/config.js +147 -0
  434. package/packages/typescript/src/features/knowledge/ctx-embeddings.d.ts +53 -0
  435. package/packages/typescript/src/features/knowledge/ctx-embeddings.d.ts.map +1 -0
  436. package/packages/typescript/src/features/knowledge/ctx-embeddings.js +412 -0
  437. package/packages/typescript/src/features/knowledge/docs-loader.d.ts +27 -0
  438. package/packages/typescript/src/features/knowledge/docs-loader.d.ts.map +1 -0
  439. package/packages/typescript/src/features/knowledge/docs-loader.js +226 -0
  440. package/packages/typescript/src/features/knowledge/document-processor.d.ts +27 -0
  441. package/packages/typescript/src/features/knowledge/document-processor.d.ts.map +1 -0
  442. package/packages/typescript/src/features/knowledge/document-processor.js +629 -0
  443. package/packages/typescript/src/features/knowledge/documents-provider.d.ts +3 -0
  444. package/packages/typescript/src/features/knowledge/documents-provider.d.ts.map +1 -0
  445. package/packages/typescript/src/features/knowledge/documents-provider.js +112 -0
  446. package/packages/typescript/src/features/knowledge/index.d.ts +16 -0
  447. package/packages/typescript/src/features/knowledge/index.d.ts.map +1 -0
  448. package/packages/typescript/src/features/knowledge/index.js +29 -0
  449. package/packages/typescript/src/features/knowledge/llm.d.ts +27 -0
  450. package/packages/typescript/src/features/knowledge/llm.d.ts.map +1 -0
  451. package/packages/typescript/src/features/knowledge/llm.js +444 -0
  452. package/packages/typescript/src/features/knowledge/provider.d.ts +3 -0
  453. package/packages/typescript/src/features/knowledge/provider.d.ts.map +1 -0
  454. package/packages/typescript/src/features/knowledge/provider.js +114 -0
  455. package/packages/typescript/src/features/knowledge/service.d.ts +83 -0
  456. package/packages/typescript/src/features/knowledge/service.d.ts.map +1 -0
  457. package/packages/typescript/src/features/knowledge/service.js +648 -0
  458. package/packages/typescript/src/features/knowledge/types.d.ts +162 -0
  459. package/packages/typescript/src/features/knowledge/types.d.ts.map +1 -0
  460. package/packages/typescript/src/features/knowledge/types.js +57 -0
  461. package/packages/typescript/src/features/knowledge/utils.d.ts +22 -0
  462. package/packages/typescript/src/features/knowledge/utils.d.ts.map +1 -0
  463. package/packages/typescript/src/features/knowledge/utils.js +387 -0
  464. package/packages/typescript/src/features/plugin-manager/actions/coreStatusAction.d.ts +3 -0
  465. package/packages/typescript/src/features/plugin-manager/actions/coreStatusAction.d.ts.map +1 -0
  466. package/packages/typescript/src/features/plugin-manager/actions/coreStatusAction.js +65 -0
  467. package/packages/typescript/src/features/plugin-manager/actions/listEjectedPluginsAction.d.ts +3 -0
  468. package/packages/typescript/src/features/plugin-manager/actions/listEjectedPluginsAction.d.ts.map +1 -0
  469. package/packages/typescript/src/features/plugin-manager/actions/listEjectedPluginsAction.js +63 -0
  470. package/packages/typescript/src/features/plugin-manager/actions/searchPluginAction.d.ts +4 -0
  471. package/packages/typescript/src/features/plugin-manager/actions/searchPluginAction.d.ts.map +1 -0
  472. package/packages/typescript/src/features/plugin-manager/actions/searchPluginAction.js +232 -0
  473. package/packages/typescript/src/features/plugin-manager/coreExtensions.d.ts +28 -0
  474. package/packages/typescript/src/features/plugin-manager/coreExtensions.d.ts.map +1 -0
  475. package/packages/typescript/src/features/plugin-manager/coreExtensions.js +54 -0
  476. package/packages/typescript/src/features/plugin-manager/index.d.ts +25 -0
  477. package/packages/typescript/src/features/plugin-manager/index.d.ts.map +1 -0
  478. package/packages/typescript/src/features/plugin-manager/index.js +53 -0
  479. package/packages/typescript/src/features/plugin-manager/providers/pluginConfigurationStatus.d.ts +5 -0
  480. package/packages/typescript/src/features/plugin-manager/providers/pluginConfigurationStatus.d.ts.map +1 -0
  481. package/packages/typescript/src/features/plugin-manager/providers/pluginConfigurationStatus.js +104 -0
  482. package/packages/typescript/src/features/plugin-manager/providers/pluginStateProvider.d.ts +5 -0
  483. package/packages/typescript/src/features/plugin-manager/providers/pluginStateProvider.d.ts.map +1 -0
  484. package/packages/typescript/src/features/plugin-manager/providers/pluginStateProvider.js +105 -0
  485. package/packages/typescript/src/features/plugin-manager/providers/registryPluginsProvider.d.ts +5 -0
  486. package/packages/typescript/src/features/plugin-manager/providers/registryPluginsProvider.d.ts.map +1 -0
  487. package/packages/typescript/src/features/plugin-manager/providers/registryPluginsProvider.js +93 -0
  488. package/packages/typescript/src/features/plugin-manager/providers/relevance.d.ts +9 -0
  489. package/packages/typescript/src/features/plugin-manager/providers/relevance.d.ts.map +1 -0
  490. package/packages/typescript/src/features/plugin-manager/providers/relevance.js +229 -0
  491. package/packages/typescript/src/features/plugin-manager/services/coreManagerService.d.ts +76 -0
  492. package/packages/typescript/src/features/plugin-manager/services/coreManagerService.d.ts.map +1 -0
  493. package/packages/typescript/src/features/plugin-manager/services/coreManagerService.js +479 -0
  494. package/packages/typescript/src/features/plugin-manager/services/pluginConfigurationService.d.ts +31 -0
  495. package/packages/typescript/src/features/plugin-manager/services/pluginConfigurationService.d.ts.map +1 -0
  496. package/packages/typescript/src/features/plugin-manager/services/pluginConfigurationService.js +57 -0
  497. package/packages/typescript/src/features/plugin-manager/services/pluginManagerService.d.ts +68 -0
  498. package/packages/typescript/src/features/plugin-manager/services/pluginManagerService.d.ts.map +1 -0
  499. package/packages/typescript/src/features/plugin-manager/services/pluginManagerService.js +1005 -0
  500. package/packages/typescript/src/features/plugin-manager/services/pluginRegistryService.d.ts +84 -0
  501. package/packages/typescript/src/features/plugin-manager/services/pluginRegistryService.d.ts.map +1 -0
  502. package/packages/typescript/src/features/plugin-manager/services/pluginRegistryService.js +401 -0
  503. package/packages/typescript/src/features/plugin-manager/types.d.ts +142 -0
  504. package/packages/typescript/src/features/plugin-manager/types.d.ts.map +1 -0
  505. package/packages/typescript/src/features/plugin-manager/types.js +13 -0
  506. package/packages/typescript/src/features/plugin-manager/utils/paths.d.ts +4 -0
  507. package/packages/typescript/src/features/plugin-manager/utils/paths.d.ts.map +1 -0
  508. package/packages/typescript/src/features/plugin-manager/utils/paths.js +32 -0
  509. package/packages/typescript/src/features/secrets/actions/index.d.ts +7 -0
  510. package/packages/typescript/src/features/secrets/actions/index.d.ts.map +1 -0
  511. package/packages/typescript/src/features/secrets/actions/index.js +6 -0
  512. package/packages/typescript/src/features/secrets/actions/manage-secret.d.ts +12 -0
  513. package/packages/typescript/src/features/secrets/actions/manage-secret.d.ts.map +1 -0
  514. package/packages/typescript/src/features/secrets/actions/manage-secret.js +278 -0
  515. package/packages/typescript/src/features/secrets/actions/request-secret.d.ts +3 -0
  516. package/packages/typescript/src/features/secrets/actions/request-secret.d.ts.map +1 -0
  517. package/packages/typescript/src/features/secrets/actions/request-secret.js +105 -0
  518. package/packages/typescript/src/features/secrets/actions/set-secret.d.ts +12 -0
  519. package/packages/typescript/src/features/secrets/actions/set-secret.d.ts.map +1 -0
  520. package/packages/typescript/src/features/secrets/actions/set-secret.js +223 -0
  521. package/packages/typescript/src/features/secrets/crypto/encryption.d.ts +184 -0
  522. package/packages/typescript/src/features/secrets/crypto/encryption.d.ts.map +1 -0
  523. package/packages/typescript/src/features/secrets/crypto/encryption.js +373 -0
  524. package/packages/typescript/src/features/secrets/crypto/index.d.ts +5 -0
  525. package/packages/typescript/src/features/secrets/crypto/index.d.ts.map +1 -0
  526. package/packages/typescript/src/features/secrets/crypto/index.js +16 -0
  527. package/packages/typescript/src/features/secrets/onboarding/action.d.ts +12 -0
  528. package/packages/typescript/src/features/secrets/onboarding/action.d.ts.map +1 -0
  529. package/packages/typescript/src/features/secrets/onboarding/action.js +337 -0
  530. package/packages/typescript/src/features/secrets/onboarding/config.d.ts +99 -0
  531. package/packages/typescript/src/features/secrets/onboarding/config.d.ts.map +1 -0
  532. package/packages/typescript/src/features/secrets/onboarding/config.js +240 -0
  533. package/packages/typescript/src/features/secrets/onboarding/index.d.ts +13 -0
  534. package/packages/typescript/src/features/secrets/onboarding/index.d.ts.map +1 -0
  535. package/packages/typescript/src/features/secrets/onboarding/index.js +12 -0
  536. package/packages/typescript/src/features/secrets/onboarding/provider.d.ts +16 -0
  537. package/packages/typescript/src/features/secrets/onboarding/provider.d.ts.map +1 -0
  538. package/packages/typescript/src/features/secrets/onboarding/provider.js +231 -0
  539. package/packages/typescript/src/features/secrets/onboarding/service.d.ts +134 -0
  540. package/packages/typescript/src/features/secrets/onboarding/service.d.ts.map +1 -0
  541. package/packages/typescript/src/features/secrets/onboarding/service.js +436 -0
  542. package/packages/typescript/src/features/secrets/providers/index.d.ts +5 -0
  543. package/packages/typescript/src/features/secrets/providers/index.d.ts.map +1 -0
  544. package/packages/typescript/src/features/secrets/providers/index.js +4 -0
  545. package/packages/typescript/src/features/secrets/providers/secrets-status.d.ts +22 -0
  546. package/packages/typescript/src/features/secrets/providers/secrets-status.d.ts.map +1 -0
  547. package/packages/typescript/src/features/secrets/providers/secrets-status.js +160 -0
  548. package/packages/typescript/src/features/secrets/services/plugin-activator.d.ts +182 -0
  549. package/packages/typescript/src/features/secrets/services/plugin-activator.d.ts.map +1 -0
  550. package/packages/typescript/src/features/secrets/services/plugin-activator.js +617 -0
  551. package/packages/typescript/src/features/secrets/services/secrets.d.ts +183 -0
  552. package/packages/typescript/src/features/secrets/services/secrets.d.ts.map +1 -0
  553. package/packages/typescript/src/features/secrets/services/secrets.js +566 -0
  554. package/packages/typescript/src/features/secrets/storage/character-store.d.ts +63 -0
  555. package/packages/typescript/src/features/secrets/storage/character-store.d.ts.map +1 -0
  556. package/packages/typescript/src/features/secrets/storage/character-store.js +265 -0
  557. package/packages/typescript/src/features/secrets/storage/component-store.d.ts +47 -0
  558. package/packages/typescript/src/features/secrets/storage/component-store.d.ts.map +1 -0
  559. package/packages/typescript/src/features/secrets/storage/component-store.js +264 -0
  560. package/packages/typescript/src/features/secrets/storage/index.d.ts +10 -0
  561. package/packages/typescript/src/features/secrets/storage/index.d.ts.map +1 -0
  562. package/packages/typescript/src/features/secrets/storage/index.js +8 -0
  563. package/packages/typescript/src/features/secrets/storage/interface.d.ts +52 -0
  564. package/packages/typescript/src/features/secrets/storage/interface.d.ts.map +1 -0
  565. package/packages/typescript/src/features/secrets/storage/interface.js +92 -0
  566. package/packages/typescript/src/features/secrets/storage/memory-store.d.ts +44 -0
  567. package/packages/typescript/src/features/secrets/storage/memory-store.d.ts.map +1 -0
  568. package/packages/typescript/src/features/secrets/storage/memory-store.js +142 -0
  569. package/packages/typescript/src/features/secrets/storage/world-store.d.ts +52 -0
  570. package/packages/typescript/src/features/secrets/storage/world-store.d.ts.map +1 -0
  571. package/packages/typescript/src/features/secrets/storage/world-store.js +292 -0
  572. package/packages/typescript/src/features/secrets/types.d.ts +438 -0
  573. package/packages/typescript/src/features/secrets/types.d.ts.map +1 -0
  574. package/packages/typescript/src/features/secrets/types.js +57 -0
  575. package/packages/typescript/src/features/secrets/validation.d.ts +33 -0
  576. package/packages/typescript/src/features/secrets/validation.d.ts.map +1 -0
  577. package/packages/typescript/src/features/secrets/validation.js +389 -0
  578. package/packages/typescript/src/features/shared/schedule-follow-up-response.d.ts +10 -0
  579. package/packages/typescript/src/features/shared/schedule-follow-up-response.d.ts.map +1 -0
  580. package/packages/typescript/src/features/shared/schedule-follow-up-response.js +49 -0
  581. package/packages/typescript/src/features/trajectories/TrajectoriesService.d.ts +289 -0
  582. package/packages/typescript/src/features/trajectories/TrajectoriesService.d.ts.map +1 -0
  583. package/packages/typescript/src/features/trajectories/TrajectoriesService.js +1423 -0
  584. package/packages/typescript/src/features/trajectories/action-interceptor.d.ts +23 -0
  585. package/packages/typescript/src/features/trajectories/action-interceptor.d.ts.map +1 -0
  586. package/packages/typescript/src/features/trajectories/action-interceptor.js +178 -0
  587. package/packages/typescript/src/features/trajectories/art-format.d.ts +32 -0
  588. package/packages/typescript/src/features/trajectories/art-format.d.ts.map +1 -0
  589. package/packages/typescript/src/features/trajectories/art-format.js +221 -0
  590. package/packages/typescript/src/features/trajectories/export.d.ts +40 -0
  591. package/packages/typescript/src/features/trajectories/export.d.ts.map +1 -0
  592. package/packages/typescript/src/features/trajectories/export.js +99 -0
  593. package/packages/typescript/src/features/trajectories/game-rewards.d.ts +14 -0
  594. package/packages/typescript/src/features/trajectories/game-rewards.d.ts.map +1 -0
  595. package/packages/typescript/src/features/trajectories/game-rewards.js +20 -0
  596. package/packages/typescript/src/features/trajectories/index.d.ts +24 -0
  597. package/packages/typescript/src/features/trajectories/index.d.ts.map +1 -0
  598. package/packages/typescript/src/features/trajectories/index.js +332 -0
  599. package/packages/typescript/src/features/trajectories/integration.d.ts +59 -0
  600. package/packages/typescript/src/features/trajectories/integration.d.ts.map +1 -0
  601. package/packages/typescript/src/features/trajectories/integration.js +83 -0
  602. package/packages/typescript/src/features/trajectories/reward-service.d.ts +24 -0
  603. package/packages/typescript/src/features/trajectories/reward-service.d.ts.map +1 -0
  604. package/packages/typescript/src/features/trajectories/reward-service.js +89 -0
  605. package/packages/typescript/src/features/trajectories/types.d.ts +261 -0
  606. package/packages/typescript/src/features/trajectories/types.d.ts.map +1 -0
  607. package/packages/typescript/src/features/trajectories/types.js +1 -0
  608. package/packages/typescript/src/features/trust/actions/evaluateTrust.d.ts +3 -0
  609. package/packages/typescript/src/features/trust/actions/evaluateTrust.d.ts.map +1 -0
  610. package/packages/typescript/src/features/trust/actions/evaluateTrust.js +225 -0
  611. package/packages/typescript/src/features/trust/actions/hasTrustEngine.d.ts +3 -0
  612. package/packages/typescript/src/features/trust/actions/hasTrustEngine.d.ts.map +1 -0
  613. package/packages/typescript/src/features/trust/actions/hasTrustEngine.js +3 -0
  614. package/packages/typescript/src/features/trust/actions/index.d.ts +6 -0
  615. package/packages/typescript/src/features/trust/actions/index.d.ts.map +1 -0
  616. package/packages/typescript/src/features/trust/actions/index.js +5 -0
  617. package/packages/typescript/src/features/trust/actions/recordTrustInteraction.d.ts +3 -0
  618. package/packages/typescript/src/features/trust/actions/recordTrustInteraction.d.ts.map +1 -0
  619. package/packages/typescript/src/features/trust/actions/recordTrustInteraction.js +189 -0
  620. package/packages/typescript/src/features/trust/actions/requestElevation.d.ts +3 -0
  621. package/packages/typescript/src/features/trust/actions/requestElevation.d.ts.map +1 -0
  622. package/packages/typescript/src/features/trust/actions/requestElevation.js +165 -0
  623. package/packages/typescript/src/features/trust/actions/roles.d.ts +3 -0
  624. package/packages/typescript/src/features/trust/actions/roles.d.ts.map +1 -0
  625. package/packages/typescript/src/features/trust/actions/roles.js +295 -0
  626. package/packages/typescript/src/features/trust/actions/settings.d.ts +5 -0
  627. package/packages/typescript/src/features/trust/actions/settings.d.ts.map +1 -0
  628. package/packages/typescript/src/features/trust/actions/settings.js +603 -0
  629. package/packages/typescript/src/features/trust/evaluators/index.d.ts +4 -0
  630. package/packages/typescript/src/features/trust/evaluators/index.d.ts.map +1 -0
  631. package/packages/typescript/src/features/trust/evaluators/index.js +3 -0
  632. package/packages/typescript/src/features/trust/evaluators/reflection.d.ts +3 -0
  633. package/packages/typescript/src/features/trust/evaluators/reflection.d.ts.map +1 -0
  634. package/packages/typescript/src/features/trust/evaluators/reflection.js +319 -0
  635. package/packages/typescript/src/features/trust/evaluators/securityEvaluator.d.ts +3 -0
  636. package/packages/typescript/src/features/trust/evaluators/securityEvaluator.d.ts.map +1 -0
  637. package/packages/typescript/src/features/trust/evaluators/securityEvaluator.js +270 -0
  638. package/packages/typescript/src/features/trust/evaluators/trustChangeEvaluator.d.ts +3 -0
  639. package/packages/typescript/src/features/trust/evaluators/trustChangeEvaluator.d.ts.map +1 -0
  640. package/packages/typescript/src/features/trust/evaluators/trustChangeEvaluator.js +201 -0
  641. package/packages/typescript/src/features/trust/index.d.ts +23 -0
  642. package/packages/typescript/src/features/trust/index.d.ts.map +1 -0
  643. package/packages/typescript/src/features/trust/index.js +96 -0
  644. package/packages/typescript/src/features/trust/providers/adminTrust.d.ts +3 -0
  645. package/packages/typescript/src/features/trust/providers/adminTrust.d.ts.map +1 -0
  646. package/packages/typescript/src/features/trust/providers/adminTrust.js +49 -0
  647. package/packages/typescript/src/features/trust/providers/index.d.ts +6 -0
  648. package/packages/typescript/src/features/trust/providers/index.d.ts.map +1 -0
  649. package/packages/typescript/src/features/trust/providers/index.js +5 -0
  650. package/packages/typescript/src/features/trust/providers/roles.d.ts +4 -0
  651. package/packages/typescript/src/features/trust/providers/roles.d.ts.map +1 -0
  652. package/packages/typescript/src/features/trust/providers/roles.js +142 -0
  653. package/packages/typescript/src/features/trust/providers/securityStatus.d.ts +3 -0
  654. package/packages/typescript/src/features/trust/providers/securityStatus.d.ts.map +1 -0
  655. package/packages/typescript/src/features/trust/providers/securityStatus.js +110 -0
  656. package/packages/typescript/src/features/trust/providers/settings.d.ts +3 -0
  657. package/packages/typescript/src/features/trust/providers/settings.d.ts.map +1 -0
  658. package/packages/typescript/src/features/trust/providers/settings.js +222 -0
  659. package/packages/typescript/src/features/trust/providers/trustProfile.d.ts +3 -0
  660. package/packages/typescript/src/features/trust/providers/trustProfile.d.ts.map +1 -0
  661. package/packages/typescript/src/features/trust/providers/trustProfile.js +68 -0
  662. package/packages/typescript/src/features/trust/schema.d.ts +1170 -0
  663. package/packages/typescript/src/features/trust/schema.d.ts.map +1 -0
  664. package/packages/typescript/src/features/trust/schema.js +108 -0
  665. package/packages/typescript/src/features/trust/services/ContextualPermissionSystem.d.ts +40 -0
  666. package/packages/typescript/src/features/trust/services/ContextualPermissionSystem.d.ts.map +1 -0
  667. package/packages/typescript/src/features/trust/services/ContextualPermissionSystem.js +317 -0
  668. package/packages/typescript/src/features/trust/services/CredentialProtector.d.ts +62 -0
  669. package/packages/typescript/src/features/trust/services/CredentialProtector.d.ts.map +1 -0
  670. package/packages/typescript/src/features/trust/services/CredentialProtector.js +417 -0
  671. package/packages/typescript/src/features/trust/services/SecurityModule.d.ts +142 -0
  672. package/packages/typescript/src/features/trust/services/SecurityModule.d.ts.map +1 -0
  673. package/packages/typescript/src/features/trust/services/SecurityModule.js +1057 -0
  674. package/packages/typescript/src/features/trust/services/SecurityStore.d.ts +53 -0
  675. package/packages/typescript/src/features/trust/services/SecurityStore.d.ts.map +1 -0
  676. package/packages/typescript/src/features/trust/services/SecurityStore.js +123 -0
  677. package/packages/typescript/src/features/trust/services/TrustEngine.d.ts +81 -0
  678. package/packages/typescript/src/features/trust/services/TrustEngine.d.ts.map +1 -0
  679. package/packages/typescript/src/features/trust/services/TrustEngine.js +621 -0
  680. package/packages/typescript/src/features/trust/services/adminContext.d.ts +3 -0
  681. package/packages/typescript/src/features/trust/services/adminContext.d.ts.map +1 -0
  682. package/packages/typescript/src/features/trust/services/adminContext.js +32 -0
  683. package/packages/typescript/src/features/trust/services/db.d.ts +12 -0
  684. package/packages/typescript/src/features/trust/services/db.d.ts.map +1 -0
  685. package/packages/typescript/src/features/trust/services/db.js +10 -0
  686. package/packages/typescript/src/features/trust/services/wrappers.d.ts +56 -0
  687. package/packages/typescript/src/features/trust/services/wrappers.d.ts.map +1 -0
  688. package/packages/typescript/src/features/trust/services/wrappers.js +124 -0
  689. package/packages/typescript/src/features/trust/types/permissions.d.ts +185 -0
  690. package/packages/typescript/src/features/trust/types/permissions.d.ts.map +1 -0
  691. package/packages/typescript/src/features/trust/types/permissions.js +58 -0
  692. package/packages/typescript/src/features/trust/types/security.d.ts +114 -0
  693. package/packages/typescript/src/features/trust/types/security.d.ts.map +1 -0
  694. package/packages/typescript/src/features/trust/types/security.js +15 -0
  695. package/packages/typescript/src/features/trust/types/trust.d.ts +179 -0
  696. package/packages/typescript/src/features/trust/types/trust.d.ts.map +1 -0
  697. package/packages/typescript/src/features/trust/types/trust.js +25 -0
  698. package/packages/typescript/src/generated/action-docs.d.ts +2799 -0
  699. package/packages/typescript/src/generated/action-docs.d.ts.map +1 -0
  700. package/packages/typescript/src/generated/action-docs.js +4021 -0
  701. package/packages/typescript/src/generated/spec-helpers.d.ts +49 -0
  702. package/packages/typescript/src/generated/spec-helpers.d.ts.map +1 -0
  703. package/packages/typescript/src/generated/spec-helpers.js +78 -0
  704. package/packages/typescript/src/i18n/generated/validation-keyword-data.d.ts +1069 -0
  705. package/packages/typescript/src/i18n/generated/validation-keyword-data.d.ts.map +1 -0
  706. package/packages/typescript/src/i18n/generated/validation-keyword-data.js +1069 -0
  707. package/packages/typescript/src/i18n/validation-keywords.d.ts +25 -0
  708. package/packages/typescript/src/i18n/validation-keywords.d.ts.map +1 -0
  709. package/packages/typescript/src/i18n/validation-keywords.js +112 -0
  710. package/packages/typescript/src/index.d.ts +12 -0
  711. package/packages/typescript/src/index.d.ts.map +1 -0
  712. package/packages/typescript/src/index.js +13 -0
  713. package/packages/typescript/src/index.node.d.ts +81 -0
  714. package/packages/typescript/src/index.node.d.ts.map +1 -0
  715. package/packages/typescript/src/index.node.js +114 -0
  716. package/packages/typescript/src/logger.d.ts +121 -0
  717. package/packages/typescript/src/logger.d.ts.map +1 -0
  718. package/packages/typescript/src/logger.js +1023 -0
  719. package/packages/typescript/src/markdown/chunk.d.ts +50 -0
  720. package/packages/typescript/src/markdown/chunk.d.ts.map +1 -0
  721. package/packages/typescript/src/markdown/chunk.js +268 -0
  722. package/packages/typescript/src/markdown/code-spans.d.ts +42 -0
  723. package/packages/typescript/src/markdown/code-spans.d.ts.map +1 -0
  724. package/packages/typescript/src/markdown/code-spans.js +89 -0
  725. package/packages/typescript/src/markdown/fences.d.ts +50 -0
  726. package/packages/typescript/src/markdown/fences.d.ts.map +1 -0
  727. package/packages/typescript/src/markdown/fences.js +90 -0
  728. package/packages/typescript/src/markdown/frontmatter.d.ts +24 -0
  729. package/packages/typescript/src/markdown/frontmatter.d.ts.map +1 -0
  730. package/packages/typescript/src/markdown/frontmatter.js +151 -0
  731. package/packages/typescript/src/markdown/index.d.ts +18 -0
  732. package/packages/typescript/src/markdown/index.d.ts.map +1 -0
  733. package/packages/typescript/src/markdown/index.js +17 -0
  734. package/packages/typescript/src/markdown/ir.d.ts +101 -0
  735. package/packages/typescript/src/markdown/ir.d.ts.map +1 -0
  736. package/packages/typescript/src/markdown/ir.js +789 -0
  737. package/packages/typescript/src/media/fetch.d.ts +39 -0
  738. package/packages/typescript/src/media/fetch.d.ts.map +1 -0
  739. package/packages/typescript/src/media/fetch.js +205 -0
  740. package/packages/typescript/src/media/index.d.ts +8 -0
  741. package/packages/typescript/src/media/index.d.ts.map +1 -0
  742. package/packages/typescript/src/media/index.js +7 -0
  743. package/packages/typescript/src/media/mime.d.ts +51 -0
  744. package/packages/typescript/src/media/mime.d.ts.map +1 -0
  745. package/packages/typescript/src/media/mime.js +225 -0
  746. package/packages/typescript/src/memory.d.ts +40 -0
  747. package/packages/typescript/src/memory.d.ts.map +1 -0
  748. package/packages/typescript/src/memory.js +58 -0
  749. package/packages/typescript/src/network/fetch-guard.d.ts +34 -0
  750. package/packages/typescript/src/network/fetch-guard.d.ts.map +1 -0
  751. package/packages/typescript/src/network/fetch-guard.js +136 -0
  752. package/packages/typescript/src/network/index.d.ts +11 -0
  753. package/packages/typescript/src/network/index.d.ts.map +1 -0
  754. package/packages/typescript/src/network/index.js +10 -0
  755. package/packages/typescript/src/network/ssrf.d.ts +58 -0
  756. package/packages/typescript/src/network/ssrf.d.ts.map +1 -0
  757. package/packages/typescript/src/network/ssrf.js +252 -0
  758. package/packages/typescript/src/optimization/ab-analysis.d.ts +3 -0
  759. package/packages/typescript/src/optimization/ab-analysis.d.ts.map +1 -0
  760. package/packages/typescript/src/optimization/ab-analysis.js +8 -0
  761. package/packages/typescript/src/optimization-root-dir.d.ts +8 -0
  762. package/packages/typescript/src/optimization-root-dir.d.ts.map +1 -0
  763. package/packages/typescript/src/optimization-root-dir.js +14 -0
  764. package/packages/typescript/src/plugin-lifecycle.d.ts +16 -0
  765. package/packages/typescript/src/plugin-lifecycle.d.ts.map +1 -0
  766. package/packages/typescript/src/plugin-lifecycle.js +590 -0
  767. package/packages/typescript/src/plugin.d.ts +13 -0
  768. package/packages/typescript/src/plugin.d.ts.map +1 -0
  769. package/packages/typescript/src/plugin.js +341 -0
  770. package/packages/typescript/src/plugins/index.d.ts +9 -0
  771. package/packages/typescript/src/plugins/index.d.ts.map +1 -0
  772. package/packages/typescript/src/plugins/index.js +8 -0
  773. package/packages/typescript/src/plugins/native-features.d.ts +14 -0
  774. package/packages/typescript/src/plugins/native-features.d.ts.map +1 -0
  775. package/packages/typescript/src/plugins/native-features.js +59 -0
  776. package/packages/typescript/src/prompts.d.ts +88 -0
  777. package/packages/typescript/src/prompts.d.ts.map +1 -0
  778. package/packages/typescript/src/prompts.js +1140 -0
  779. package/packages/typescript/src/providers/onboarding-progress.d.ts +19 -0
  780. package/packages/typescript/src/providers/onboarding-progress.d.ts.map +1 -0
  781. package/packages/typescript/src/providers/onboarding-progress.js +268 -0
  782. package/packages/typescript/src/providers/skill-eligibility.d.ts +28 -0
  783. package/packages/typescript/src/providers/skill-eligibility.d.ts.map +1 -0
  784. package/packages/typescript/src/providers/skill-eligibility.js +179 -0
  785. package/packages/typescript/src/provisioning.d.ts +54 -0
  786. package/packages/typescript/src/provisioning.d.ts.map +1 -0
  787. package/packages/typescript/src/provisioning.js +209 -0
  788. package/packages/typescript/src/roles.d.ts +70 -0
  789. package/packages/typescript/src/roles.d.ts.map +1 -0
  790. package/packages/typescript/src/roles.js +544 -0
  791. package/packages/typescript/src/runtime-composition.d.ts +129 -0
  792. package/packages/typescript/src/runtime-composition.d.ts.map +1 -0
  793. package/packages/typescript/src/runtime-composition.js +335 -0
  794. package/packages/typescript/src/runtime.d.ts +924 -0
  795. package/packages/typescript/src/runtime.d.ts.map +1 -0
  796. package/packages/typescript/src/runtime.js +6013 -0
  797. package/packages/typescript/src/schemas/agent.d.ts +7 -0
  798. package/packages/typescript/src/schemas/agent.d.ts.map +1 -0
  799. package/packages/typescript/src/schemas/agent.js +112 -0
  800. package/packages/typescript/src/schemas/cache.d.ts +7 -0
  801. package/packages/typescript/src/schemas/cache.d.ts.map +1 -0
  802. package/packages/typescript/src/schemas/cache.js +55 -0
  803. package/packages/typescript/src/schemas/channel-participant.d.ts +7 -0
  804. package/packages/typescript/src/schemas/channel-participant.d.ts.map +1 -0
  805. package/packages/typescript/src/schemas/channel-participant.js +49 -0
  806. package/packages/typescript/src/schemas/channel.d.ts +7 -0
  807. package/packages/typescript/src/schemas/channel.d.ts.map +1 -0
  808. package/packages/typescript/src/schemas/channel.js +94 -0
  809. package/packages/typescript/src/schemas/character.d.ts +445 -0
  810. package/packages/typescript/src/schemas/character.d.ts.map +1 -0
  811. package/packages/typescript/src/schemas/character.js +309 -0
  812. package/packages/typescript/src/schemas/component.d.ts +7 -0
  813. package/packages/typescript/src/schemas/component.d.ts.map +1 -0
  814. package/packages/typescript/src/schemas/component.js +156 -0
  815. package/packages/typescript/src/schemas/embedding.d.ts +7 -0
  816. package/packages/typescript/src/schemas/embedding.d.ts.map +1 -0
  817. package/packages/typescript/src/schemas/embedding.js +89 -0
  818. package/packages/typescript/src/schemas/entity-identity.d.ts +29 -0
  819. package/packages/typescript/src/schemas/entity-identity.d.ts.map +1 -0
  820. package/packages/typescript/src/schemas/entity-identity.js +334 -0
  821. package/packages/typescript/src/schemas/entity.d.ts +7 -0
  822. package/packages/typescript/src/schemas/entity.d.ts.map +1 -0
  823. package/packages/typescript/src/schemas/entity.js +69 -0
  824. package/packages/typescript/src/schemas/index.d.ts +77 -0
  825. package/packages/typescript/src/schemas/index.d.ts.map +1 -0
  826. package/packages/typescript/src/schemas/index.js +75 -0
  827. package/packages/typescript/src/schemas/log.d.ts +6 -0
  828. package/packages/typescript/src/schemas/log.d.ts.map +1 -0
  829. package/packages/typescript/src/schemas/log.js +93 -0
  830. package/packages/typescript/src/schemas/memory.d.ts +7 -0
  831. package/packages/typescript/src/schemas/memory.d.ts.map +1 -0
  832. package/packages/typescript/src/schemas/memory.js +167 -0
  833. package/packages/typescript/src/schemas/message-server-agent.d.ts +7 -0
  834. package/packages/typescript/src/schemas/message-server-agent.d.ts.map +1 -0
  835. package/packages/typescript/src/schemas/message-server-agent.js +58 -0
  836. package/packages/typescript/src/schemas/message-server.d.ts +6 -0
  837. package/packages/typescript/src/schemas/message-server.d.ts.map +1 -0
  838. package/packages/typescript/src/schemas/message-server.js +62 -0
  839. package/packages/typescript/src/schemas/message.d.ts +7 -0
  840. package/packages/typescript/src/schemas/message.d.ts.map +1 -0
  841. package/packages/typescript/src/schemas/message.js +106 -0
  842. package/packages/typescript/src/schemas/pairing-allowlist.d.ts +7 -0
  843. package/packages/typescript/src/schemas/pairing-allowlist.d.ts.map +1 -0
  844. package/packages/typescript/src/schemas/pairing-allowlist.js +76 -0
  845. package/packages/typescript/src/schemas/pairing-request.d.ts +7 -0
  846. package/packages/typescript/src/schemas/pairing-request.d.ts.map +1 -0
  847. package/packages/typescript/src/schemas/pairing-request.js +96 -0
  848. package/packages/typescript/src/schemas/participant.d.ts +6 -0
  849. package/packages/typescript/src/schemas/participant.d.ts.map +1 -0
  850. package/packages/typescript/src/schemas/participant.js +91 -0
  851. package/packages/typescript/src/schemas/relationship.d.ts +7 -0
  852. package/packages/typescript/src/schemas/relationship.d.ts.map +1 -0
  853. package/packages/typescript/src/schemas/relationship.js +102 -0
  854. package/packages/typescript/src/schemas/room.d.ts +6 -0
  855. package/packages/typescript/src/schemas/room.d.ts.map +1 -0
  856. package/packages/typescript/src/schemas/room.js +86 -0
  857. package/packages/typescript/src/schemas/server.d.ts +7 -0
  858. package/packages/typescript/src/schemas/server.d.ts.map +1 -0
  859. package/packages/typescript/src/schemas/server.js +33 -0
  860. package/packages/typescript/src/schemas/task.d.ts +6 -0
  861. package/packages/typescript/src/schemas/task.d.ts.map +1 -0
  862. package/packages/typescript/src/schemas/task.js +95 -0
  863. package/packages/typescript/src/schemas/world.d.ts +6 -0
  864. package/packages/typescript/src/schemas/world.d.ts.map +1 -0
  865. package/packages/typescript/src/schemas/world.js +64 -0
  866. package/packages/typescript/src/search.d.ts +359 -0
  867. package/packages/typescript/src/search.d.ts.map +1 -0
  868. package/packages/typescript/src/search.js +1580 -0
  869. package/packages/typescript/src/secrets.d.ts +6 -0
  870. package/packages/typescript/src/secrets.d.ts.map +1 -0
  871. package/packages/typescript/src/secrets.js +28 -0
  872. package/packages/typescript/src/security/external-content.d.ts +96 -0
  873. package/packages/typescript/src/security/external-content.d.ts.map +1 -0
  874. package/packages/typescript/src/security/external-content.js +252 -0
  875. package/packages/typescript/src/security/index.d.ts +12 -0
  876. package/packages/typescript/src/security/index.d.ts.map +1 -0
  877. package/packages/typescript/src/security/index.js +13 -0
  878. package/packages/typescript/src/security/redact.d.ts +111 -0
  879. package/packages/typescript/src/security/redact.d.ts.map +1 -0
  880. package/packages/typescript/src/security/redact.js +254 -0
  881. package/packages/typescript/src/services/agentEvent.d.ts +297 -0
  882. package/packages/typescript/src/services/agentEvent.d.ts.map +1 -0
  883. package/packages/typescript/src/services/agentEvent.js +422 -0
  884. package/packages/typescript/src/services/approval.d.ts +169 -0
  885. package/packages/typescript/src/services/approval.d.ts.map +1 -0
  886. package/packages/typescript/src/services/approval.js +399 -0
  887. package/packages/typescript/src/services/embedding.d.ts +29 -0
  888. package/packages/typescript/src/services/embedding.d.ts.map +1 -0
  889. package/packages/typescript/src/services/embedding.js +211 -0
  890. package/packages/typescript/src/services/followUp.d.ts +48 -0
  891. package/packages/typescript/src/services/followUp.d.ts.map +1 -0
  892. package/packages/typescript/src/services/followUp.js +333 -0
  893. package/packages/typescript/src/services/hook.d.ts +85 -0
  894. package/packages/typescript/src/services/hook.d.ts.map +1 -0
  895. package/packages/typescript/src/services/hook.js +396 -0
  896. package/packages/typescript/src/services/message.d.ts +130 -0
  897. package/packages/typescript/src/services/message.d.ts.map +1 -0
  898. package/packages/typescript/src/services/message.js +4899 -0
  899. package/packages/typescript/src/services/onboarding-cli.d.ts +240 -0
  900. package/packages/typescript/src/services/onboarding-cli.d.ts.map +1 -0
  901. package/packages/typescript/src/services/onboarding-cli.js +688 -0
  902. package/packages/typescript/src/services/onboarding-rpc.d.ts +225 -0
  903. package/packages/typescript/src/services/onboarding-rpc.d.ts.map +1 -0
  904. package/packages/typescript/src/services/onboarding-rpc.js +318 -0
  905. package/packages/typescript/src/services/onboarding-state.d.ts +155 -0
  906. package/packages/typescript/src/services/onboarding-state.d.ts.map +1 -0
  907. package/packages/typescript/src/services/onboarding-state.js +706 -0
  908. package/packages/typescript/src/services/optimized-prompt-resolver.d.ts +23 -0
  909. package/packages/typescript/src/services/optimized-prompt-resolver.d.ts.map +1 -0
  910. package/packages/typescript/src/services/optimized-prompt-resolver.js +49 -0
  911. package/packages/typescript/src/services/optimized-prompt.d.ts +116 -0
  912. package/packages/typescript/src/services/optimized-prompt.d.ts.map +1 -0
  913. package/packages/typescript/src/services/optimized-prompt.js +254 -0
  914. package/packages/typescript/src/services/pairing-integration.d.ts +96 -0
  915. package/packages/typescript/src/services/pairing-integration.d.ts.map +1 -0
  916. package/packages/typescript/src/services/pairing-integration.js +145 -0
  917. package/packages/typescript/src/services/pairing-migration.d.ts +105 -0
  918. package/packages/typescript/src/services/pairing-migration.d.ts.map +1 -0
  919. package/packages/typescript/src/services/pairing-migration.js +283 -0
  920. package/packages/typescript/src/services/pairing.d.ts +80 -0
  921. package/packages/typescript/src/services/pairing.d.ts.map +1 -0
  922. package/packages/typescript/src/services/pairing.js +253 -0
  923. package/packages/typescript/src/services/plugin-hooks.d.ts +112 -0
  924. package/packages/typescript/src/services/plugin-hooks.d.ts.map +1 -0
  925. package/packages/typescript/src/services/plugin-hooks.js +163 -0
  926. package/packages/typescript/src/services/relationships.d.ts +350 -0
  927. package/packages/typescript/src/services/relationships.d.ts.map +1 -0
  928. package/packages/typescript/src/services/relationships.js +1649 -0
  929. package/packages/typescript/src/services/task-scheduler.d.ts +28 -0
  930. package/packages/typescript/src/services/task-scheduler.d.ts.map +1 -0
  931. package/packages/typescript/src/services/task-scheduler.js +89 -0
  932. package/packages/typescript/src/services/task.d.ts +133 -0
  933. package/packages/typescript/src/services/task.d.ts.map +1 -0
  934. package/packages/typescript/src/services/task.js +559 -0
  935. package/packages/typescript/src/services/tool-policy.d.ts +186 -0
  936. package/packages/typescript/src/services/tool-policy.d.ts.map +1 -0
  937. package/packages/typescript/src/services/tool-policy.js +332 -0
  938. package/packages/typescript/src/services/trajectories.d.ts +34 -0
  939. package/packages/typescript/src/services/trajectories.d.ts.map +1 -0
  940. package/packages/typescript/src/services/trajectories.js +1 -0
  941. package/packages/typescript/src/services.d.ts +61 -0
  942. package/packages/typescript/src/services.d.ts.map +1 -0
  943. package/packages/typescript/src/services.js +99 -0
  944. package/packages/typescript/src/sessions/index.d.ts +17 -0
  945. package/packages/typescript/src/sessions/index.d.ts.map +1 -0
  946. package/packages/typescript/src/sessions/index.js +29 -0
  947. package/packages/typescript/src/sessions/provider.d.ts +71 -0
  948. package/packages/typescript/src/sessions/provider.d.ts.map +1 -0
  949. package/packages/typescript/src/sessions/provider.js +243 -0
  950. package/packages/typescript/src/sessions/session-key.d.ts +201 -0
  951. package/packages/typescript/src/sessions/session-key.d.ts.map +1 -0
  952. package/packages/typescript/src/sessions/session-key.js +396 -0
  953. package/packages/typescript/src/sessions/types.d.ts +197 -0
  954. package/packages/typescript/src/sessions/types.d.ts.map +1 -0
  955. package/packages/typescript/src/sessions/types.js +68 -0
  956. package/packages/typescript/src/settings.d.ts +99 -0
  957. package/packages/typescript/src/settings.d.ts.map +1 -0
  958. package/packages/typescript/src/settings.js +409 -0
  959. package/packages/typescript/src/should-respond.d.ts +2 -0
  960. package/packages/typescript/src/should-respond.d.ts.map +1 -0
  961. package/packages/typescript/src/should-respond.js +16 -0
  962. package/packages/typescript/src/streaming-context.d.ts +88 -0
  963. package/packages/typescript/src/streaming-context.d.ts.map +1 -0
  964. package/packages/typescript/src/streaming-context.js +160 -0
  965. package/packages/typescript/src/trajectory-context.d.ts +39 -0
  966. package/packages/typescript/src/trajectory-context.d.ts.map +1 -0
  967. package/packages/typescript/src/trajectory-context.js +85 -0
  968. package/packages/typescript/src/trajectory-utils.d.ts +73 -0
  969. package/packages/typescript/src/trajectory-utils.d.ts.map +1 -0
  970. package/packages/typescript/src/trajectory-utils.js +124 -0
  971. package/packages/typescript/src/types/agent.d.ts +62 -0
  972. package/packages/typescript/src/types/agent.d.ts.map +1 -0
  973. package/packages/typescript/src/types/agent.js +5 -0
  974. package/packages/typescript/src/types/agentEvent.d.ts +258 -0
  975. package/packages/typescript/src/types/agentEvent.d.ts.map +1 -0
  976. package/packages/typescript/src/types/agentEvent.js +11 -0
  977. package/packages/typescript/src/types/channel-config.d.ts +167 -0
  978. package/packages/typescript/src/types/channel-config.d.ts.map +1 -0
  979. package/packages/typescript/src/types/channel-config.js +7 -0
  980. package/packages/typescript/src/types/components.d.ts +358 -0
  981. package/packages/typescript/src/types/components.d.ts.map +1 -0
  982. package/packages/typescript/src/types/components.js +1 -0
  983. package/packages/typescript/src/types/database.d.ts +1079 -0
  984. package/packages/typescript/src/types/database.d.ts.map +1 -0
  985. package/packages/typescript/src/types/database.js +9 -0
  986. package/packages/typescript/src/types/environment.d.ts +73 -0
  987. package/packages/typescript/src/types/environment.d.ts.map +1 -0
  988. package/packages/typescript/src/types/environment.js +16 -0
  989. package/packages/typescript/src/types/events.d.ts +403 -0
  990. package/packages/typescript/src/types/events.d.ts.map +1 -0
  991. package/packages/typescript/src/types/events.js +85 -0
  992. package/packages/typescript/src/types/generated/eliza/v1/agent_pb.d.ts +400 -0
  993. package/packages/typescript/src/types/generated/eliza/v1/agent_pb.d.ts.map +1 -0
  994. package/packages/typescript/src/types/generated/eliza/v1/agent_pb.js +72 -0
  995. package/packages/typescript/src/types/generated/eliza/v1/components_pb.d.ts +364 -0
  996. package/packages/typescript/src/types/generated/eliza/v1/components_pb.d.ts.map +1 -0
  997. package/packages/typescript/src/types/generated/eliza/v1/components_pb.js +68 -0
  998. package/packages/typescript/src/types/generated/eliza/v1/database_pb.d.ts +694 -0
  999. package/packages/typescript/src/types/generated/eliza/v1/database_pb.d.ts.map +1 -0
  1000. package/packages/typescript/src/types/generated/eliza/v1/database_pb.js +172 -0
  1001. package/packages/typescript/src/types/generated/eliza/v1/environment_pb.d.ts +299 -0
  1002. package/packages/typescript/src/types/generated/eliza/v1/environment_pb.d.ts.map +1 -0
  1003. package/packages/typescript/src/types/generated/eliza/v1/environment_pb.js +52 -0
  1004. package/packages/typescript/src/types/generated/eliza/v1/events_pb.d.ts +746 -0
  1005. package/packages/typescript/src/types/generated/eliza/v1/events_pb.d.ts.map +1 -0
  1006. package/packages/typescript/src/types/generated/eliza/v1/events_pb.js +357 -0
  1007. package/packages/typescript/src/types/generated/eliza/v1/ipc_pb.d.ts +799 -0
  1008. package/packages/typescript/src/types/generated/eliza/v1/ipc_pb.d.ts.map +1 -0
  1009. package/packages/typescript/src/types/generated/eliza/v1/ipc_pb.js +172 -0
  1010. package/packages/typescript/src/types/generated/eliza/v1/knowledge_pb.d.ts +63 -0
  1011. package/packages/typescript/src/types/generated/eliza/v1/knowledge_pb.d.ts.map +1 -0
  1012. package/packages/typescript/src/types/generated/eliza/v1/knowledge_pb.js +18 -0
  1013. package/packages/typescript/src/types/generated/eliza/v1/memory_pb.d.ts +290 -0
  1014. package/packages/typescript/src/types/generated/eliza/v1/memory_pb.d.ts.map +1 -0
  1015. package/packages/typescript/src/types/generated/eliza/v1/memory_pb.js +53 -0
  1016. package/packages/typescript/src/types/generated/eliza/v1/message_service_pb.d.ts +160 -0
  1017. package/packages/typescript/src/types/generated/eliza/v1/message_service_pb.d.ts.map +1 -0
  1018. package/packages/typescript/src/types/generated/eliza/v1/message_service_pb.js +88 -0
  1019. package/packages/typescript/src/types/generated/eliza/v1/messaging_pb.d.ts +214 -0
  1020. package/packages/typescript/src/types/generated/eliza/v1/messaging_pb.d.ts.map +1 -0
  1021. package/packages/typescript/src/types/generated/eliza/v1/messaging_pb.js +78 -0
  1022. package/packages/typescript/src/types/generated/eliza/v1/model_pb.d.ts +653 -0
  1023. package/packages/typescript/src/types/generated/eliza/v1/model_pb.d.ts.map +1 -0
  1024. package/packages/typescript/src/types/generated/eliza/v1/model_pb.js +237 -0
  1025. package/packages/typescript/src/types/generated/eliza/v1/payment_pb.d.ts +147 -0
  1026. package/packages/typescript/src/types/generated/eliza/v1/payment_pb.d.ts.map +1 -0
  1027. package/packages/typescript/src/types/generated/eliza/v1/payment_pb.js +27 -0
  1028. package/packages/typescript/src/types/generated/eliza/v1/plugin_pb.d.ts +286 -0
  1029. package/packages/typescript/src/types/generated/eliza/v1/plugin_pb.d.ts.map +1 -0
  1030. package/packages/typescript/src/types/generated/eliza/v1/plugin_pb.js +86 -0
  1031. package/packages/typescript/src/types/generated/eliza/v1/primitives_pb.d.ts +263 -0
  1032. package/packages/typescript/src/types/generated/eliza/v1/primitives_pb.d.ts.map +1 -0
  1033. package/packages/typescript/src/types/generated/eliza/v1/primitives_pb.js +38 -0
  1034. package/packages/typescript/src/types/generated/eliza/v1/prompts_pb.d.ts +137 -0
  1035. package/packages/typescript/src/types/generated/eliza/v1/prompts_pb.d.ts.map +1 -0
  1036. package/packages/typescript/src/types/generated/eliza/v1/prompts_pb.js +27 -0
  1037. package/packages/typescript/src/types/generated/eliza/v1/service_interfaces_pb.d.ts +2687 -0
  1038. package/packages/typescript/src/types/generated/eliza/v1/service_interfaces_pb.d.ts.map +1 -0
  1039. package/packages/typescript/src/types/generated/eliza/v1/service_interfaces_pb.js +392 -0
  1040. package/packages/typescript/src/types/generated/eliza/v1/service_pb.d.ts +144 -0
  1041. package/packages/typescript/src/types/generated/eliza/v1/service_pb.d.ts.map +1 -0
  1042. package/packages/typescript/src/types/generated/eliza/v1/service_pb.js +99 -0
  1043. package/packages/typescript/src/types/generated/eliza/v1/settings_pb.d.ts +146 -0
  1044. package/packages/typescript/src/types/generated/eliza/v1/settings_pb.d.ts.map +1 -0
  1045. package/packages/typescript/src/types/generated/eliza/v1/settings_pb.js +32 -0
  1046. package/packages/typescript/src/types/generated/eliza/v1/state_pb.d.ts +259 -0
  1047. package/packages/typescript/src/types/generated/eliza/v1/state_pb.d.ts.map +1 -0
  1048. package/packages/typescript/src/types/generated/eliza/v1/state_pb.js +44 -0
  1049. package/packages/typescript/src/types/generated/eliza/v1/task_pb.d.ts +120 -0
  1050. package/packages/typescript/src/types/generated/eliza/v1/task_pb.d.ts.map +1 -0
  1051. package/packages/typescript/src/types/generated/eliza/v1/task_pb.js +53 -0
  1052. package/packages/typescript/src/types/generated/eliza/v1/tee_pb.d.ts +205 -0
  1053. package/packages/typescript/src/types/generated/eliza/v1/tee_pb.d.ts.map +1 -0
  1054. package/packages/typescript/src/types/generated/eliza/v1/tee_pb.js +89 -0
  1055. package/packages/typescript/src/types/generated/eliza/v1/testing_pb.d.ts +47 -0
  1056. package/packages/typescript/src/types/generated/eliza/v1/testing_pb.d.ts.map +1 -0
  1057. package/packages/typescript/src/types/generated/eliza/v1/testing_pb.js +16 -0
  1058. package/packages/typescript/src/types/hook.d.ts +338 -0
  1059. package/packages/typescript/src/types/hook.d.ts.map +1 -0
  1060. package/packages/typescript/src/types/hook.js +73 -0
  1061. package/packages/typescript/src/types/index.d.ts +42 -0
  1062. package/packages/typescript/src/types/index.d.ts.map +1 -0
  1063. package/packages/typescript/src/types/index.js +50 -0
  1064. package/packages/typescript/src/types/knowledge.d.ts +49 -0
  1065. package/packages/typescript/src/types/knowledge.d.ts.map +1 -0
  1066. package/packages/typescript/src/types/knowledge.js +1 -0
  1067. package/packages/typescript/src/types/memory-storage.d.ts +28 -0
  1068. package/packages/typescript/src/types/memory-storage.d.ts.map +1 -0
  1069. package/packages/typescript/src/types/memory-storage.js +13 -0
  1070. package/packages/typescript/src/types/memory.d.ts +438 -0
  1071. package/packages/typescript/src/types/memory.d.ts.map +1 -0
  1072. package/packages/typescript/src/types/memory.js +16 -0
  1073. package/packages/typescript/src/types/message-service.d.ts +178 -0
  1074. package/packages/typescript/src/types/message-service.d.ts.map +1 -0
  1075. package/packages/typescript/src/types/message-service.js +1 -0
  1076. package/packages/typescript/src/types/messaging.d.ts +358 -0
  1077. package/packages/typescript/src/types/messaging.d.ts.map +1 -0
  1078. package/packages/typescript/src/types/messaging.js +27 -0
  1079. package/packages/typescript/src/types/model.d.ts +697 -0
  1080. package/packages/typescript/src/types/model.d.ts.map +1 -0
  1081. package/packages/typescript/src/types/model.js +247 -0
  1082. package/packages/typescript/src/types/onboarding.d.ts +319 -0
  1083. package/packages/typescript/src/types/onboarding.d.ts.map +1 -0
  1084. package/packages/typescript/src/types/onboarding.js +97 -0
  1085. package/packages/typescript/src/types/pairing.d.ts +124 -0
  1086. package/packages/typescript/src/types/pairing.d.ts.map +1 -0
  1087. package/packages/typescript/src/types/pairing.js +32 -0
  1088. package/packages/typescript/src/types/payment.d.ts +45 -0
  1089. package/packages/typescript/src/types/payment.d.ts.map +1 -0
  1090. package/packages/typescript/src/types/payment.js +1 -0
  1091. package/packages/typescript/src/types/pipeline-hooks.d.ts +234 -0
  1092. package/packages/typescript/src/types/pipeline-hooks.d.ts.map +1 -0
  1093. package/packages/typescript/src/types/pipeline-hooks.js +111 -0
  1094. package/packages/typescript/src/types/plugin-manifest.d.ts +381 -0
  1095. package/packages/typescript/src/types/plugin-manifest.d.ts.map +1 -0
  1096. package/packages/typescript/src/types/plugin-manifest.js +10 -0
  1097. package/packages/typescript/src/types/plugin-store.d.ts +173 -0
  1098. package/packages/typescript/src/types/plugin-store.d.ts.map +1 -0
  1099. package/packages/typescript/src/types/plugin-store.js +1 -0
  1100. package/packages/typescript/src/types/plugin.d.ts +336 -0
  1101. package/packages/typescript/src/types/plugin.d.ts.map +1 -0
  1102. package/packages/typescript/src/types/plugin.js +1 -0
  1103. package/packages/typescript/src/types/primitives.d.ts +176 -0
  1104. package/packages/typescript/src/types/primitives.d.ts.map +1 -0
  1105. package/packages/typescript/src/types/primitives.js +41 -0
  1106. package/packages/typescript/src/types/prompt-batcher.d.ts +126 -0
  1107. package/packages/typescript/src/types/prompt-batcher.d.ts.map +1 -0
  1108. package/packages/typescript/src/types/prompt-batcher.js +6 -0
  1109. package/packages/typescript/src/types/prompt-optimization-hooks.d.ts +41 -0
  1110. package/packages/typescript/src/types/prompt-optimization-hooks.d.ts.map +1 -0
  1111. package/packages/typescript/src/types/prompt-optimization-hooks.js +1 -0
  1112. package/packages/typescript/src/types/prompt-optimization-score-card.d.ts +22 -0
  1113. package/packages/typescript/src/types/prompt-optimization-score-card.d.ts.map +1 -0
  1114. package/packages/typescript/src/types/prompt-optimization-score-card.js +72 -0
  1115. package/packages/typescript/src/types/prompt-optimization-trace.d.ts +53 -0
  1116. package/packages/typescript/src/types/prompt-optimization-trace.d.ts.map +1 -0
  1117. package/packages/typescript/src/types/prompt-optimization-trace.js +19 -0
  1118. package/packages/typescript/src/types/prompts.d.ts +39 -0
  1119. package/packages/typescript/src/types/prompts.d.ts.map +1 -0
  1120. package/packages/typescript/src/types/prompts.js +7 -0
  1121. package/packages/typescript/src/types/proto.d.ts +60 -0
  1122. package/packages/typescript/src/types/proto.d.ts.map +1 -0
  1123. package/packages/typescript/src/types/proto.js +53 -0
  1124. package/packages/typescript/src/types/runtime.d.ts +445 -0
  1125. package/packages/typescript/src/types/runtime.d.ts.map +1 -0
  1126. package/packages/typescript/src/types/runtime.js +1 -0
  1127. package/packages/typescript/src/types/schema-builder.d.ts +43 -0
  1128. package/packages/typescript/src/types/schema-builder.d.ts.map +1 -0
  1129. package/packages/typescript/src/types/schema-builder.js +16 -0
  1130. package/packages/typescript/src/types/schema.d.ts +99 -0
  1131. package/packages/typescript/src/types/schema.d.ts.map +1 -0
  1132. package/packages/typescript/src/types/schema.js +11 -0
  1133. package/packages/typescript/src/types/service-interfaces.d.ts +1200 -0
  1134. package/packages/typescript/src/types/service-interfaces.d.ts.map +1 -0
  1135. package/packages/typescript/src/types/service-interfaces.js +81 -0
  1136. package/packages/typescript/src/types/service.d.ts +175 -0
  1137. package/packages/typescript/src/types/service.d.ts.map +1 -0
  1138. package/packages/typescript/src/types/service.js +79 -0
  1139. package/packages/typescript/src/types/settings.d.ts +36 -0
  1140. package/packages/typescript/src/types/settings.d.ts.map +1 -0
  1141. package/packages/typescript/src/types/settings.js +1 -0
  1142. package/packages/typescript/src/types/state.d.ts +251 -0
  1143. package/packages/typescript/src/types/state.d.ts.map +1 -0
  1144. package/packages/typescript/src/types/state.js +1 -0
  1145. package/packages/typescript/src/types/streaming.d.ts +93 -0
  1146. package/packages/typescript/src/types/streaming.d.ts.map +1 -0
  1147. package/packages/typescript/src/types/streaming.js +21 -0
  1148. package/packages/typescript/src/types/task.d.ts +122 -0
  1149. package/packages/typescript/src/types/task.d.ts.map +1 -0
  1150. package/packages/typescript/src/types/task.js +1 -0
  1151. package/packages/typescript/src/types/tee.d.ts +3 -0
  1152. package/packages/typescript/src/types/tee.d.ts.map +1 -0
  1153. package/packages/typescript/src/types/tee.js +1 -0
  1154. package/packages/typescript/src/types/testing.d.ts +15 -0
  1155. package/packages/typescript/src/types/testing.d.ts.map +1 -0
  1156. package/packages/typescript/src/types/testing.js +1 -0
  1157. package/packages/typescript/src/types/tools.d.ts +166 -0
  1158. package/packages/typescript/src/types/tools.d.ts.map +1 -0
  1159. package/packages/typescript/src/types/tools.js +380 -0
  1160. package/packages/typescript/src/types/trigger.d.ts +42 -0
  1161. package/packages/typescript/src/types/trigger.d.ts.map +1 -0
  1162. package/packages/typescript/src/types/trigger.js +1 -0
  1163. package/packages/typescript/src/utils/batch-queue/batch-processor.d.ts +52 -0
  1164. package/packages/typescript/src/utils/batch-queue/batch-processor.d.ts.map +1 -0
  1165. package/packages/typescript/src/utils/batch-queue/batch-processor.js +126 -0
  1166. package/packages/typescript/src/utils/batch-queue/index.d.ts +97 -0
  1167. package/packages/typescript/src/utils/batch-queue/index.d.ts.map +1 -0
  1168. package/packages/typescript/src/utils/batch-queue/index.js +175 -0
  1169. package/packages/typescript/src/utils/batch-queue/priority-queue.d.ts +53 -0
  1170. package/packages/typescript/src/utils/batch-queue/priority-queue.d.ts.map +1 -0
  1171. package/packages/typescript/src/utils/batch-queue/priority-queue.js +128 -0
  1172. package/packages/typescript/src/utils/batch-queue/semaphore.d.ts +18 -0
  1173. package/packages/typescript/src/utils/batch-queue/semaphore.d.ts.map +1 -0
  1174. package/packages/typescript/src/utils/batch-queue/semaphore.js +34 -0
  1175. package/packages/typescript/src/utils/batch-queue/task-drain.d.ts +57 -0
  1176. package/packages/typescript/src/utils/batch-queue/task-drain.d.ts.map +1 -0
  1177. package/packages/typescript/src/utils/batch-queue/task-drain.js +150 -0
  1178. package/packages/typescript/src/utils/batch-queue.d.ts +20 -0
  1179. package/packages/typescript/src/utils/batch-queue.d.ts.map +1 -0
  1180. package/packages/typescript/src/utils/batch-queue.js +19 -0
  1181. package/packages/typescript/src/utils/boolean.d.ts +50 -0
  1182. package/packages/typescript/src/utils/boolean.d.ts.map +1 -0
  1183. package/packages/typescript/src/utils/boolean.js +73 -0
  1184. package/packages/typescript/src/utils/buffer.d.ts +107 -0
  1185. package/packages/typescript/src/utils/buffer.d.ts.map +1 -0
  1186. package/packages/typescript/src/utils/buffer.js +229 -0
  1187. package/packages/typescript/src/utils/channel-utils.d.ts +274 -0
  1188. package/packages/typescript/src/utils/channel-utils.d.ts.map +1 -0
  1189. package/packages/typescript/src/utils/channel-utils.js +337 -0
  1190. package/packages/typescript/src/utils/context-catalog.d.ts +6 -0
  1191. package/packages/typescript/src/utils/context-catalog.d.ts.map +1 -0
  1192. package/packages/typescript/src/utils/context-catalog.js +144 -0
  1193. package/packages/typescript/src/utils/context-routing.d.ts +25 -0
  1194. package/packages/typescript/src/utils/context-routing.d.ts.map +1 -0
  1195. package/packages/typescript/src/utils/context-routing.js +164 -0
  1196. package/packages/typescript/src/utils/crypto-compat.d.ts +92 -0
  1197. package/packages/typescript/src/utils/crypto-compat.d.ts.map +1 -0
  1198. package/packages/typescript/src/utils/crypto-compat.js +373 -0
  1199. package/packages/typescript/src/utils/deterministic.d.ts +9 -0
  1200. package/packages/typescript/src/utils/deterministic.d.ts.map +1 -0
  1201. package/packages/typescript/src/utils/deterministic.js +70 -0
  1202. package/packages/typescript/src/utils/environment.d.ts +125 -0
  1203. package/packages/typescript/src/utils/environment.d.ts.map +1 -0
  1204. package/packages/typescript/src/utils/environment.js +290 -0
  1205. package/packages/typescript/src/utils/example-names.d.ts +3 -0
  1206. package/packages/typescript/src/utils/example-names.d.ts.map +1 -0
  1207. package/packages/typescript/src/utils/example-names.js +30 -0
  1208. package/packages/typescript/src/utils/json-llm.d.ts +17 -0
  1209. package/packages/typescript/src/utils/json-llm.d.ts.map +1 -0
  1210. package/packages/typescript/src/utils/json-llm.js +32 -0
  1211. package/packages/typescript/src/utils/model-errors.d.ts +3 -0
  1212. package/packages/typescript/src/utils/model-errors.d.ts.map +1 -0
  1213. package/packages/typescript/src/utils/model-errors.js +23 -0
  1214. package/packages/typescript/src/utils/node.d.ts +8 -0
  1215. package/packages/typescript/src/utils/node.d.ts.map +1 -0
  1216. package/packages/typescript/src/utils/node.js +12 -0
  1217. package/packages/typescript/src/utils/paths.d.ts +97 -0
  1218. package/packages/typescript/src/utils/paths.d.ts.map +1 -0
  1219. package/packages/typescript/src/utils/paths.js +204 -0
  1220. package/packages/typescript/src/utils/prompt-batcher/batcher.d.ts +163 -0
  1221. package/packages/typescript/src/utils/prompt-batcher/batcher.d.ts.map +1 -0
  1222. package/packages/typescript/src/utils/prompt-batcher/batcher.js +896 -0
  1223. package/packages/typescript/src/utils/prompt-batcher/dispatcher.d.ts +15 -0
  1224. package/packages/typescript/src/utils/prompt-batcher/dispatcher.d.ts.map +1 -0
  1225. package/packages/typescript/src/utils/prompt-batcher/dispatcher.js +230 -0
  1226. package/packages/typescript/src/utils/prompt-batcher/shared.d.ts +66 -0
  1227. package/packages/typescript/src/utils/prompt-batcher/shared.d.ts.map +1 -0
  1228. package/packages/typescript/src/utils/prompt-batcher/shared.js +101 -0
  1229. package/packages/typescript/src/utils/prompt-batcher.d.ts +5 -0
  1230. package/packages/typescript/src/utils/prompt-batcher.d.ts.map +1 -0
  1231. package/packages/typescript/src/utils/prompt-batcher.js +4 -0
  1232. package/packages/typescript/src/utils/retry.d.ts +128 -0
  1233. package/packages/typescript/src/utils/retry.d.ts.map +1 -0
  1234. package/packages/typescript/src/utils/retry.js +190 -0
  1235. package/packages/typescript/src/utils/server-health.d.ts +35 -0
  1236. package/packages/typescript/src/utils/server-health.d.ts.map +1 -0
  1237. package/packages/typescript/src/utils/server-health.js +76 -0
  1238. package/packages/typescript/src/utils/slice-to-fit-budget.d.ts +12 -0
  1239. package/packages/typescript/src/utils/slice-to-fit-budget.d.ts.map +1 -0
  1240. package/packages/typescript/src/utils/slice-to-fit-budget.js +36 -0
  1241. package/packages/typescript/src/utils/state-dir.d.ts +19 -0
  1242. package/packages/typescript/src/utils/state-dir.d.ts.map +1 -0
  1243. package/packages/typescript/src/utils/state-dir.js +24 -0
  1244. package/packages/typescript/src/utils/streaming.d.ts +275 -0
  1245. package/packages/typescript/src/utils/streaming.d.ts.map +1 -0
  1246. package/packages/typescript/src/utils/streaming.js +774 -0
  1247. package/packages/typescript/src/utils/text-normalize.d.ts +23 -0
  1248. package/packages/typescript/src/utils/text-normalize.d.ts.map +1 -0
  1249. package/packages/typescript/src/utils/text-normalize.js +42 -0
  1250. package/packages/typescript/src/utils/text-splitting.d.ts +14 -0
  1251. package/packages/typescript/src/utils/text-splitting.d.ts.map +1 -0
  1252. package/packages/typescript/src/utils/text-splitting.js +66 -0
  1253. package/packages/typescript/src/utils/toon.d.ts +8 -0
  1254. package/packages/typescript/src/utils/toon.d.ts.map +1 -0
  1255. package/packages/typescript/src/utils/toon.js +346 -0
  1256. package/packages/typescript/src/utils/type-guards.d.ts +25 -0
  1257. package/packages/typescript/src/utils/type-guards.d.ts.map +1 -0
  1258. package/packages/typescript/src/utils/type-guards.js +73 -0
  1259. package/packages/typescript/src/utils/union-find.d.ts +30 -0
  1260. package/packages/typescript/src/utils/union-find.d.ts.map +1 -0
  1261. package/packages/typescript/src/utils/union-find.js +81 -0
  1262. package/packages/typescript/src/utils.d.ts +192 -0
  1263. package/packages/typescript/src/utils.d.ts.map +1 -0
  1264. package/packages/typescript/src/utils.js +1120 -0
  1265. package/packages/typescript/src/validation/index.d.ts +8 -0
  1266. package/packages/typescript/src/validation/index.d.ts.map +1 -0
  1267. package/packages/typescript/src/validation/index.js +7 -0
  1268. package/packages/typescript/src/validation/keywords.d.ts +26 -0
  1269. package/packages/typescript/src/validation/keywords.d.ts.map +1 -0
  1270. package/packages/typescript/src/validation/keywords.js +76 -0
  1271. package/packages/typescript/src/validation/secrets.d.ts +94 -0
  1272. package/packages/typescript/src/validation/secrets.d.ts.map +1 -0
  1273. package/packages/typescript/src/validation/secrets.js +399 -0
  1274. package/packages/ui/src/components/composites/chat/chat-attachment-strip.d.ts +9 -0
  1275. package/packages/ui/src/components/composites/chat/chat-attachment-strip.d.ts.map +1 -0
  1276. package/packages/ui/src/components/composites/chat/chat-attachment-strip.js +8 -0
  1277. package/packages/ui/src/components/composites/chat/chat-bubble.d.ts +14 -0
  1278. package/packages/ui/src/components/composites/chat/chat-bubble.d.ts.map +1 -0
  1279. package/packages/ui/src/components/composites/chat/chat-bubble.js +7 -0
  1280. package/packages/ui/src/components/composites/chat/chat-composer-shell.d.ts +14 -0
  1281. package/packages/ui/src/components/composites/chat/chat-composer-shell.d.ts.map +1 -0
  1282. package/packages/ui/src/components/composites/chat/chat-composer-shell.js +25 -0
  1283. package/packages/ui/src/components/composites/chat/chat-composer.d.ts +45 -0
  1284. package/packages/ui/src/components/composites/chat/chat-composer.d.ts.map +1 -0
  1285. package/packages/ui/src/components/composites/chat/chat-composer.js +217 -0
  1286. package/packages/ui/src/components/composites/chat/chat-conversation-item.d.ts +21 -0
  1287. package/packages/ui/src/components/composites/chat/chat-conversation-item.d.ts.map +1 -0
  1288. package/packages/ui/src/components/composites/chat/chat-conversation-item.js +118 -0
  1289. package/packages/ui/src/components/composites/chat/chat-conversation-rename-dialog.d.ts +22 -0
  1290. package/packages/ui/src/components/composites/chat/chat-conversation-rename-dialog.d.ts.map +1 -0
  1291. package/packages/ui/src/components/composites/chat/chat-conversation-rename-dialog.js +14 -0
  1292. package/packages/ui/src/components/composites/chat/chat-empty-state.d.ts +19 -0
  1293. package/packages/ui/src/components/composites/chat/chat-empty-state.d.ts.map +1 -0
  1294. package/packages/ui/src/components/composites/chat/chat-empty-state.js +8 -0
  1295. package/packages/ui/src/components/composites/chat/chat-message-actions.d.ts +14 -0
  1296. package/packages/ui/src/components/composites/chat/chat-message-actions.d.ts.map +1 -0
  1297. package/packages/ui/src/components/composites/chat/chat-message-actions.js +10 -0
  1298. package/packages/ui/src/components/composites/chat/chat-message.d.ts +18 -0
  1299. package/packages/ui/src/components/composites/chat/chat-message.d.ts.map +1 -0
  1300. package/packages/ui/src/components/composites/chat/chat-message.js +260 -0
  1301. package/packages/ui/src/components/composites/chat/chat-sidebar.d.ts +54 -0
  1302. package/packages/ui/src/components/composites/chat/chat-sidebar.d.ts.map +1 -0
  1303. package/packages/ui/src/components/composites/chat/chat-sidebar.js +64 -0
  1304. package/packages/ui/src/components/composites/chat/chat-source.d.ts +23 -0
  1305. package/packages/ui/src/components/composites/chat/chat-source.d.ts.map +1 -0
  1306. package/packages/ui/src/components/composites/chat/chat-source.js +60 -0
  1307. package/packages/ui/src/components/composites/chat/chat-thread-layout.d.ts +22 -0
  1308. package/packages/ui/src/components/composites/chat/chat-thread-layout.d.ts.map +1 -0
  1309. package/packages/ui/src/components/composites/chat/chat-thread-layout.js +37 -0
  1310. package/packages/ui/src/components/composites/chat/chat-transcript.d.ts +19 -0
  1311. package/packages/ui/src/components/composites/chat/chat-transcript.d.ts.map +1 -0
  1312. package/packages/ui/src/components/composites/chat/chat-transcript.js +82 -0
  1313. package/packages/ui/src/components/composites/chat/chat-types.d.ts +91 -0
  1314. package/packages/ui/src/components/composites/chat/chat-types.d.ts.map +1 -0
  1315. package/packages/ui/src/components/composites/chat/chat-types.js +1 -0
  1316. package/packages/ui/src/components/composites/chat/chat-typing-indicator.d.ts +10 -0
  1317. package/packages/ui/src/components/composites/chat/chat-typing-indicator.d.ts.map +1 -0
  1318. package/packages/ui/src/components/composites/chat/chat-typing-indicator.js +10 -0
  1319. package/packages/ui/src/components/composites/chat/create-task-popover.d.ts +13 -0
  1320. package/packages/ui/src/components/composites/chat/create-task-popover.d.ts.map +1 -0
  1321. package/packages/ui/src/components/composites/chat/create-task-popover.js +44 -0
  1322. package/packages/ui/src/components/composites/chat/index.d.ts +17 -0
  1323. package/packages/ui/src/components/composites/chat/index.d.ts.map +1 -0
  1324. package/packages/ui/src/components/composites/chat/index.js +16 -0
  1325. package/packages/ui/src/components/composites/form-field/form-field.d.ts +14 -0
  1326. package/packages/ui/src/components/composites/form-field/form-field.d.ts.map +1 -0
  1327. package/packages/ui/src/components/composites/form-field/form-field.js +8 -0
  1328. package/packages/ui/src/components/composites/form-field/index.d.ts +2 -0
  1329. package/packages/ui/src/components/composites/form-field/index.d.ts.map +1 -0
  1330. package/packages/ui/src/components/composites/form-field/index.js +1 -0
  1331. package/packages/ui/src/components/composites/index.d.ts +27 -0
  1332. package/packages/ui/src/components/composites/index.d.ts.map +1 -0
  1333. package/packages/ui/src/components/composites/index.js +26 -0
  1334. package/packages/ui/src/components/composites/page-panel/index.d.ts +29 -0
  1335. package/packages/ui/src/components/composites/page-panel/index.d.ts.map +1 -0
  1336. package/packages/ui/src/components/composites/page-panel/index.js +28 -0
  1337. package/packages/ui/src/components/composites/page-panel/page-panel-collapsible-section.d.ts +4 -0
  1338. package/packages/ui/src/components/composites/page-panel/page-panel-collapsible-section.d.ts.map +1 -0
  1339. package/packages/ui/src/components/composites/page-panel/page-panel-collapsible-section.js +60 -0
  1340. package/packages/ui/src/components/composites/page-panel/page-panel-empty.d.ts +3 -0
  1341. package/packages/ui/src/components/composites/page-panel/page-panel-empty.d.ts.map +1 -0
  1342. package/packages/ui/src/components/composites/page-panel/page-panel-empty.js +15 -0
  1343. package/packages/ui/src/components/composites/page-panel/page-panel-frame.d.ts +5 -0
  1344. package/packages/ui/src/components/composites/page-panel/page-panel-frame.d.ts.map +1 -0
  1345. package/packages/ui/src/components/composites/page-panel/page-panel-frame.js +9 -0
  1346. package/packages/ui/src/components/composites/page-panel/page-panel-header.d.ts +7 -0
  1347. package/packages/ui/src/components/composites/page-panel/page-panel-header.d.ts.map +1 -0
  1348. package/packages/ui/src/components/composites/page-panel/page-panel-header.js +30 -0
  1349. package/packages/ui/src/components/composites/page-panel/page-panel-loading.d.ts +3 -0
  1350. package/packages/ui/src/components/composites/page-panel/page-panel-loading.d.ts.map +1 -0
  1351. package/packages/ui/src/components/composites/page-panel/page-panel-loading.js +13 -0
  1352. package/packages/ui/src/components/composites/page-panel/page-panel-root.d.ts +7 -0
  1353. package/packages/ui/src/components/composites/page-panel/page-panel-root.d.ts.map +1 -0
  1354. package/packages/ui/src/components/composites/page-panel/page-panel-root.js +17 -0
  1355. package/packages/ui/src/components/composites/page-panel/page-panel-toolbar.d.ts +4 -0
  1356. package/packages/ui/src/components/composites/page-panel/page-panel-toolbar.d.ts.map +1 -0
  1357. package/packages/ui/src/components/composites/page-panel/page-panel-toolbar.js +6 -0
  1358. package/packages/ui/src/components/composites/page-panel/page-panel-types.d.ts +66 -0
  1359. package/packages/ui/src/components/composites/page-panel/page-panel-types.d.ts.map +1 -0
  1360. package/packages/ui/src/components/composites/page-panel/page-panel-types.js +1 -0
  1361. package/packages/ui/src/components/composites/search/index.d.ts +3 -0
  1362. package/packages/ui/src/components/composites/search/index.d.ts.map +1 -0
  1363. package/packages/ui/src/components/composites/search/index.js +2 -0
  1364. package/packages/ui/src/components/composites/search/search-input.d.ts.map +1 -0
  1365. package/packages/ui/src/components/composites/search/search-input.js +10 -0
  1366. package/packages/ui/src/components/composites/search/searchbar.d.ts +18 -0
  1367. package/packages/ui/src/components/composites/search/searchbar.d.ts.map +1 -0
  1368. package/packages/ui/src/components/composites/search/searchbar.js +25 -0
  1369. package/packages/ui/src/components/composites/sidebar/index.d.ts +11 -0
  1370. package/packages/ui/src/components/composites/sidebar/index.d.ts.map +1 -0
  1371. package/packages/ui/src/components/composites/sidebar/index.js +10 -0
  1372. package/packages/ui/src/components/composites/sidebar/sidebar-auto-rail.d.ts +15 -0
  1373. package/packages/ui/src/components/composites/sidebar/sidebar-auto-rail.d.ts.map +1 -0
  1374. package/packages/ui/src/components/composites/sidebar/sidebar-auto-rail.js +292 -0
  1375. package/packages/ui/src/components/composites/sidebar/sidebar-body.d.ts +4 -0
  1376. package/packages/ui/src/components/composites/sidebar/sidebar-body.d.ts.map +1 -0
  1377. package/packages/ui/src/components/composites/sidebar/sidebar-body.js +7 -0
  1378. package/packages/ui/src/components/composites/sidebar/sidebar-collapsed-rail.d.ts +11 -0
  1379. package/packages/ui/src/components/composites/sidebar/sidebar-collapsed-rail.d.ts.map +1 -0
  1380. package/packages/ui/src/components/composites/sidebar/sidebar-collapsed-rail.js +13 -0
  1381. package/packages/ui/src/components/composites/sidebar/sidebar-content.d.ts +78 -0
  1382. package/packages/ui/src/components/composites/sidebar/sidebar-content.d.ts.map +1 -0
  1383. package/packages/ui/src/components/composites/sidebar/sidebar-content.js +94 -0
  1384. package/packages/ui/src/components/composites/sidebar/sidebar-filter-bar.d.ts +3 -0
  1385. package/packages/ui/src/components/composites/sidebar/sidebar-filter-bar.d.ts.map +1 -0
  1386. package/packages/ui/src/components/composites/sidebar/sidebar-filter-bar.js +14 -0
  1387. package/packages/ui/src/components/composites/sidebar/sidebar-header-stack.d.ts +3 -0
  1388. package/packages/ui/src/components/composites/sidebar/sidebar-header-stack.d.ts.map +1 -0
  1389. package/packages/ui/src/components/composites/sidebar/sidebar-header-stack.js +6 -0
  1390. package/packages/ui/src/components/composites/sidebar/sidebar-header.d.ts +9 -0
  1391. package/packages/ui/src/components/composites/sidebar/sidebar-header.d.ts.map +1 -0
  1392. package/packages/ui/src/components/composites/sidebar/sidebar-header.js +6 -0
  1393. package/packages/ui/src/components/composites/sidebar/sidebar-panel.d.ts +3 -0
  1394. package/packages/ui/src/components/composites/sidebar/sidebar-panel.d.ts.map +1 -0
  1395. package/packages/ui/src/components/composites/sidebar/sidebar-panel.js +18 -0
  1396. package/packages/ui/src/components/composites/sidebar/sidebar-root.d.ts +4 -0
  1397. package/packages/ui/src/components/composites/sidebar/sidebar-root.d.ts.map +1 -0
  1398. package/packages/ui/src/components/composites/sidebar/sidebar-root.js +491 -0
  1399. package/packages/ui/src/components/composites/sidebar/sidebar-scroll-region.d.ts +3 -0
  1400. package/packages/ui/src/components/composites/sidebar/sidebar-scroll-region.d.ts.map +1 -0
  1401. package/packages/ui/src/components/composites/sidebar/sidebar-scroll-region.js +18 -0
  1402. package/packages/ui/src/components/composites/sidebar/sidebar-types.d.ts +77 -0
  1403. package/packages/ui/src/components/composites/sidebar/sidebar-types.d.ts.map +1 -0
  1404. package/packages/ui/src/components/composites/sidebar/sidebar-types.js +1 -0
  1405. package/packages/ui/src/components/composites/skills/index.d.ts +2 -0
  1406. package/packages/ui/src/components/composites/skills/index.d.ts.map +1 -0
  1407. package/packages/ui/src/components/composites/skills/index.js +1 -0
  1408. package/packages/ui/src/components/composites/skills/skill-sidebar-item.d.ts +16 -0
  1409. package/packages/ui/src/components/composites/skills/skill-sidebar-item.d.ts.map +1 -0
  1410. package/packages/ui/src/components/composites/skills/skill-sidebar-item.js +7 -0
  1411. package/packages/ui/src/components/composites/trajectories/index.d.ts +5 -0
  1412. package/packages/ui/src/components/composites/trajectories/index.d.ts.map +1 -0
  1413. package/packages/ui/src/components/composites/trajectories/index.js +4 -0
  1414. package/packages/ui/src/components/composites/trajectories/trajectory-code-block.d.ts +13 -0
  1415. package/packages/ui/src/components/composites/trajectories/trajectory-code-block.d.ts.map +1 -0
  1416. package/packages/ui/src/components/composites/trajectories/trajectory-code-block.js +13 -0
  1417. package/packages/ui/src/components/composites/trajectories/trajectory-llm-call-card.d.ts +34 -0
  1418. package/packages/ui/src/components/composites/trajectories/trajectory-llm-call-card.d.ts.map +1 -0
  1419. package/packages/ui/src/components/composites/trajectories/trajectory-llm-call-card.js +14 -0
  1420. package/packages/ui/src/components/composites/trajectories/trajectory-pipeline-graph.d.ts +26 -0
  1421. package/packages/ui/src/components/composites/trajectories/trajectory-pipeline-graph.d.ts.map +1 -0
  1422. package/packages/ui/src/components/composites/trajectories/trajectory-pipeline-graph.js +46 -0
  1423. package/packages/ui/src/components/composites/trajectories/trajectory-sidebar-item.d.ts +15 -0
  1424. package/packages/ui/src/components/composites/trajectories/trajectory-sidebar-item.d.ts.map +1 -0
  1425. package/packages/ui/src/components/composites/trajectories/trajectory-sidebar-item.js +8 -0
  1426. package/packages/ui/src/components/primitives/index.d.ts +26 -0
  1427. package/packages/ui/src/components/primitives/index.d.ts.map +1 -0
  1428. package/packages/ui/src/components/primitives/index.js +25 -0
  1429. package/packages/ui/src/components/ui/admin-dialog.d.ts +50 -0
  1430. package/packages/ui/src/components/ui/admin-dialog.d.ts.map +1 -0
  1431. package/packages/ui/src/components/ui/admin-dialog.js +48 -0
  1432. package/packages/ui/src/components/ui/badge.d.ts +10 -0
  1433. package/packages/ui/src/components/ui/badge.d.ts.map +1 -0
  1434. package/packages/ui/src/components/ui/badge.js +21 -0
  1435. package/packages/ui/src/components/ui/banner.d.ts +17 -0
  1436. package/packages/ui/src/components/ui/banner.d.ts.map +1 -0
  1437. package/packages/ui/src/components/ui/banner.js +29 -0
  1438. package/packages/ui/src/components/ui/button.d.ts +13 -0
  1439. package/packages/ui/src/components/ui/button.d.ts.map +1 -0
  1440. package/packages/ui/src/components/ui/button.js +40 -0
  1441. package/packages/ui/src/components/ui/card.d.ts +15 -0
  1442. package/packages/ui/src/components/ui/card.d.ts.map +1 -0
  1443. package/packages/ui/src/components/ui/card.js +32 -0
  1444. package/packages/ui/src/components/ui/checkbox.d.ts.map +1 -0
  1445. package/packages/ui/src/components/ui/confirm-delete.d.ts +20 -0
  1446. package/packages/ui/src/components/ui/confirm-delete.d.ts.map +1 -0
  1447. package/packages/ui/src/components/ui/confirm-delete.js +16 -0
  1448. package/packages/ui/src/components/ui/confirm-dialog.d.ts +49 -0
  1449. package/packages/ui/src/components/ui/confirm-dialog.d.ts.map +1 -0
  1450. package/packages/ui/src/components/ui/confirm-dialog.js +90 -0
  1451. package/packages/ui/src/components/ui/connection-status.d.ts +15 -0
  1452. package/packages/ui/src/components/ui/connection-status.d.ts.map +1 -0
  1453. package/packages/ui/src/components/ui/connection-status.js +25 -0
  1454. package/packages/ui/src/components/ui/copy-button.d.ts.map +1 -0
  1455. package/packages/ui/src/components/ui/dialog.d.ts +25 -0
  1456. package/packages/ui/src/components/ui/dialog.d.ts.map +1 -0
  1457. package/packages/ui/src/components/ui/dialog.js +23 -0
  1458. package/packages/ui/src/components/ui/drawer-sheet.d.ts +19 -0
  1459. package/packages/ui/src/components/ui/drawer-sheet.d.ts.map +1 -0
  1460. package/packages/ui/src/components/ui/drawer-sheet.js +21 -0
  1461. package/packages/ui/src/components/ui/dropdown-menu.d.ts.map +1 -0
  1462. package/packages/ui/src/components/ui/dropdown-menu.js +35 -0
  1463. package/packages/ui/src/components/ui/empty-state.d.ts.map +1 -0
  1464. package/packages/ui/src/components/ui/error-boundary.d.ts +22 -0
  1465. package/packages/ui/src/components/ui/error-boundary.d.ts.map +1 -0
  1466. package/packages/ui/src/components/ui/error-boundary.js +27 -0
  1467. package/packages/ui/src/components/ui/field-switch.d.ts +8 -0
  1468. package/packages/ui/src/components/ui/field-switch.d.ts.map +1 -0
  1469. package/packages/ui/src/components/ui/field-switch.js +10 -0
  1470. package/packages/ui/src/components/ui/field.d.ts +12 -0
  1471. package/packages/ui/src/components/ui/field.d.ts.map +1 -0
  1472. package/packages/ui/src/components/ui/field.js +21 -0
  1473. package/packages/ui/src/components/ui/form-select.d.ts +14 -0
  1474. package/packages/ui/src/components/ui/form-select.d.ts.map +1 -0
  1475. package/packages/ui/src/components/ui/form-select.js +9 -0
  1476. package/packages/ui/src/components/ui/grid.d.ts +10 -0
  1477. package/packages/ui/src/components/ui/grid.d.ts.map +1 -0
  1478. package/packages/ui/src/components/ui/grid.js +31 -0
  1479. package/packages/ui/src/components/ui/input.d.ts +12 -0
  1480. package/packages/ui/src/components/ui/input.d.ts.map +1 -0
  1481. package/packages/ui/src/components/ui/input.js +29 -0
  1482. package/packages/ui/src/components/ui/label.d.ts +5 -0
  1483. package/packages/ui/src/components/ui/label.d.ts.map +1 -0
  1484. package/packages/ui/src/components/ui/label.js +10 -0
  1485. package/packages/ui/src/components/ui/new-action-button.d.ts +7 -0
  1486. package/packages/ui/src/components/ui/new-action-button.d.ts.map +1 -0
  1487. package/packages/ui/src/components/ui/new-action-button.js +13 -0
  1488. package/packages/ui/src/components/ui/popover.d.ts.map +1 -0
  1489. package/packages/ui/src/components/ui/save-footer.d.ts.map +1 -0
  1490. package/packages/ui/src/components/ui/save-footer.js +10 -0
  1491. package/packages/ui/src/components/ui/section-card.d.ts.map +1 -0
  1492. package/packages/ui/src/components/ui/section-card.js +10 -0
  1493. package/packages/ui/src/components/ui/segmented-control.d.ts +18 -0
  1494. package/packages/ui/src/components/ui/segmented-control.d.ts.map +1 -0
  1495. package/packages/ui/src/components/ui/segmented-control.js +10 -0
  1496. package/packages/ui/src/components/ui/select.d.ts.map +1 -0
  1497. package/packages/ui/src/components/ui/select.js +27 -0
  1498. package/packages/ui/src/components/ui/separator.d.ts.map +1 -0
  1499. package/packages/ui/src/components/ui/settings-controls.d.ts +41 -0
  1500. package/packages/ui/src/components/ui/settings-controls.d.ts.map +1 -0
  1501. package/packages/ui/src/components/ui/settings-controls.js +60 -0
  1502. package/packages/ui/src/components/ui/skeleton.d.ts.map +1 -0
  1503. package/packages/ui/src/components/ui/skeleton.js +24 -0
  1504. package/packages/ui/src/components/ui/slider.d.ts.map +1 -0
  1505. package/packages/ui/src/components/ui/slider.js +7 -0
  1506. package/packages/ui/src/components/ui/sonner.d.ts +2 -0
  1507. package/packages/ui/src/components/ui/sonner.d.ts.map +1 -0
  1508. package/packages/ui/src/components/ui/sonner.js +1 -0
  1509. package/packages/ui/src/components/ui/spinner.d.ts.map +1 -0
  1510. package/packages/ui/src/components/ui/stack.d.ts +11 -0
  1511. package/packages/ui/src/components/ui/stack.d.ts.map +1 -0
  1512. package/packages/ui/src/components/ui/stack.js +40 -0
  1513. package/packages/ui/src/components/ui/status-badge.d.ts +27 -0
  1514. package/packages/ui/src/components/ui/status-badge.d.ts.map +1 -0
  1515. package/packages/ui/src/components/ui/status-badge.js +70 -0
  1516. package/packages/ui/src/components/ui/switch.d.ts.map +1 -0
  1517. package/packages/ui/src/components/ui/switch.js +7 -0
  1518. package/packages/ui/src/components/ui/tabs.d.ts.map +1 -0
  1519. package/packages/ui/src/components/ui/tabs.js +12 -0
  1520. package/packages/ui/src/components/ui/tag-editor.d.ts +12 -0
  1521. package/packages/ui/src/components/ui/tag-editor.d.ts.map +1 -0
  1522. package/packages/ui/src/components/ui/tag-editor.js +34 -0
  1523. package/packages/ui/src/components/ui/tag-input.d.ts +3 -0
  1524. package/packages/ui/src/components/ui/tag-input.d.ts.map +1 -0
  1525. package/packages/ui/src/components/ui/tag-input.js +1 -0
  1526. package/packages/ui/src/components/ui/textarea.d.ts +12 -0
  1527. package/packages/ui/src/components/ui/textarea.d.ts.map +1 -0
  1528. package/packages/ui/src/components/ui/textarea.js +29 -0
  1529. package/packages/ui/src/components/ui/themed-select.d.ts +22 -0
  1530. package/packages/ui/src/components/ui/themed-select.d.ts.map +1 -0
  1531. package/packages/ui/src/components/ui/themed-select.js +137 -0
  1532. package/packages/ui/src/components/ui/tooltip-extended.d.ts +54 -0
  1533. package/packages/ui/src/components/ui/tooltip-extended.d.ts.map +1 -0
  1534. package/packages/ui/src/components/ui/tooltip-extended.js +114 -0
  1535. package/packages/ui/src/components/ui/tooltip.d.ts +18 -0
  1536. package/packages/ui/src/components/ui/tooltip.d.ts.map +1 -0
  1537. package/packages/ui/src/components/ui/tooltip.js +13 -0
  1538. package/packages/ui/src/components/ui/typography.d.ts +15 -0
  1539. package/packages/ui/src/components/ui/typography.d.ts.map +1 -0
  1540. package/packages/ui/src/components/ui/typography.js +46 -0
  1541. package/packages/ui/src/hooks/index.d.ts +6 -0
  1542. package/packages/ui/src/hooks/index.d.ts.map +1 -0
  1543. package/packages/ui/src/hooks/index.js +5 -0
  1544. package/packages/ui/src/hooks/useClickOutside.d.ts +3 -0
  1545. package/packages/ui/src/hooks/useClickOutside.d.ts.map +1 -0
  1546. package/packages/ui/src/hooks/useClickOutside.js +22 -0
  1547. package/packages/ui/src/hooks/useDocumentVisibility.d.ts +3 -0
  1548. package/packages/ui/src/hooks/useDocumentVisibility.d.ts.map +1 -0
  1549. package/packages/ui/src/hooks/useDocumentVisibility.js +28 -0
  1550. package/packages/ui/src/hooks/useKeyboardShortcuts.d.ts +13 -0
  1551. package/packages/ui/src/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  1552. package/packages/ui/src/hooks/useKeyboardShortcuts.js +34 -0
  1553. package/packages/ui/src/hooks/useLinkedSidebarSelection.d.ts +16 -0
  1554. package/packages/ui/src/hooks/useLinkedSidebarSelection.d.ts.map +1 -0
  1555. package/packages/ui/src/hooks/useLinkedSidebarSelection.js +117 -0
  1556. package/packages/ui/src/hooks/useTimeout.d.ts +5 -0
  1557. package/packages/ui/src/hooks/useTimeout.d.ts.map +1 -0
  1558. package/packages/ui/src/hooks/useTimeout.js +26 -0
  1559. package/packages/ui/src/index.d.ts +8 -0
  1560. package/packages/ui/src/index.d.ts.map +1 -0
  1561. package/packages/ui/src/index.js +7 -0
  1562. package/packages/ui/src/layouts/chat-panel-layout/chat-panel-layout.d.ts +11 -0
  1563. package/packages/ui/src/layouts/chat-panel-layout/chat-panel-layout.d.ts.map +1 -0
  1564. package/packages/ui/src/layouts/chat-panel-layout/chat-panel-layout.js +37 -0
  1565. package/packages/ui/src/layouts/chat-panel-layout/index.d.ts +2 -0
  1566. package/packages/ui/src/layouts/chat-panel-layout/index.d.ts.map +1 -0
  1567. package/packages/ui/src/layouts/chat-panel-layout/index.js +1 -0
  1568. package/packages/ui/src/layouts/content-layout/content-layout.d.ts +21 -0
  1569. package/packages/ui/src/layouts/content-layout/content-layout.d.ts.map +1 -0
  1570. package/packages/ui/src/layouts/content-layout/content-layout.js +5 -0
  1571. package/packages/ui/src/layouts/content-layout/index.d.ts +2 -0
  1572. package/packages/ui/src/layouts/content-layout/index.d.ts.map +1 -0
  1573. package/packages/ui/src/layouts/content-layout/index.js +1 -0
  1574. package/packages/ui/src/layouts/index.d.ts +5 -0
  1575. package/packages/ui/src/layouts/index.d.ts.map +1 -0
  1576. package/packages/ui/src/layouts/index.js +4 -0
  1577. package/packages/ui/src/layouts/layout-test-utils.d.ts +6 -0
  1578. package/packages/ui/src/layouts/layout-test-utils.d.ts.map +1 -0
  1579. package/packages/ui/src/layouts/layout-test-utils.js +36 -0
  1580. package/packages/ui/src/layouts/page-layout/index.d.ts +5 -0
  1581. package/packages/ui/src/layouts/page-layout/index.d.ts.map +1 -0
  1582. package/packages/ui/src/layouts/page-layout/index.js +4 -0
  1583. package/packages/ui/src/layouts/page-layout/page-layout-header.d.ts +287 -0
  1584. package/packages/ui/src/layouts/page-layout/page-layout-header.d.ts.map +1 -0
  1585. package/packages/ui/src/layouts/page-layout/page-layout-header.js +8 -0
  1586. package/packages/ui/src/layouts/page-layout/page-layout-mobile-drawer.d.ts +3 -0
  1587. package/packages/ui/src/layouts/page-layout/page-layout-mobile-drawer.d.ts.map +1 -0
  1588. package/packages/ui/src/layouts/page-layout/page-layout-mobile-drawer.js +18 -0
  1589. package/packages/ui/src/layouts/page-layout/page-layout-types.d.ts +15 -0
  1590. package/packages/ui/src/layouts/page-layout/page-layout-types.d.ts.map +1 -0
  1591. package/packages/ui/src/layouts/page-layout/page-layout-types.js +1 -0
  1592. package/packages/ui/src/layouts/page-layout/page-layout.d.ts +3 -0
  1593. package/packages/ui/src/layouts/page-layout/page-layout.d.ts.map +1 -0
  1594. package/packages/ui/src/layouts/page-layout/page-layout.js +5 -0
  1595. package/packages/ui/src/layouts/workspace-layout/index.d.ts +3 -0
  1596. package/packages/ui/src/layouts/workspace-layout/index.d.ts.map +1 -0
  1597. package/packages/ui/src/layouts/workspace-layout/index.js +2 -0
  1598. package/packages/ui/src/layouts/workspace-layout/workspace-layout-types.d.ts +19 -0
  1599. package/packages/ui/src/layouts/workspace-layout/workspace-layout-types.d.ts.map +1 -0
  1600. package/packages/ui/src/layouts/workspace-layout/workspace-layout-types.js +1 -0
  1601. package/packages/ui/src/layouts/workspace-layout/workspace-layout.d.ts +3 -0
  1602. package/packages/ui/src/layouts/workspace-layout/workspace-layout.d.ts.map +1 -0
  1603. package/packages/ui/src/layouts/workspace-layout/workspace-layout.js +59 -0
  1604. package/packages/ui/src/lib/floating-layers.d.ts +17 -0
  1605. package/packages/ui/src/lib/floating-layers.d.ts.map +1 -0
  1606. package/packages/ui/src/lib/floating-layers.js +20 -0
  1607. package/packages/ui/src/lib/utils.d.ts +3 -0
  1608. package/packages/ui/src/lib/utils.d.ts.map +1 -0
  1609. package/packages/ui/src/lib/utils.js +5 -0
  1610. package/packages/ui/src/stories/layout-story-fixtures.d.ts +14 -0
  1611. package/packages/ui/src/stories/layout-story-fixtures.d.ts.map +1 -0
  1612. package/packages/ui/src/stories/layout-story-fixtures.js +33 -0
  1613. package/packages/ui/src/types/onboarding.d.ts +8 -0
  1614. package/packages/ui/src/types/onboarding.d.ts.map +1 -0
  1615. package/packages/ui/src/types/onboarding.js +17 -0
  1616. package/styles/electrobun-mac-window-drag.css +94 -0
  1617. package/styles/theme.css +73 -0
  1618. package/README.md +0 -6
  1619. package/dist/components/ui/badge.d.ts +0 -10
  1620. package/dist/components/ui/badge.d.ts.map +0 -1
  1621. package/dist/components/ui/badge.js +0 -20
  1622. package/dist/components/ui/banner.d.ts +0 -18
  1623. package/dist/components/ui/banner.d.ts.map +0 -1
  1624. package/dist/components/ui/banner.js +0 -27
  1625. package/dist/components/ui/button.d.ts +0 -12
  1626. package/dist/components/ui/button.d.ts.map +0 -1
  1627. package/dist/components/ui/button.js +0 -33
  1628. package/dist/components/ui/card.d.ts +0 -9
  1629. package/dist/components/ui/card.d.ts.map +0 -1
  1630. package/dist/components/ui/card.js +0 -16
  1631. package/dist/components/ui/chat-atoms.d.ts +0 -26
  1632. package/dist/components/ui/chat-atoms.d.ts.map +0 -1
  1633. package/dist/components/ui/chat-atoms.js +0 -17
  1634. package/dist/components/ui/checkbox.d.ts.map +0 -1
  1635. package/dist/components/ui/confirm-delete.d.ts +0 -12
  1636. package/dist/components/ui/confirm-delete.d.ts.map +0 -1
  1637. package/dist/components/ui/confirm-delete.js +0 -13
  1638. package/dist/components/ui/confirm-dialog.d.ts +0 -24
  1639. package/dist/components/ui/confirm-dialog.d.ts.map +0 -1
  1640. package/dist/components/ui/confirm-dialog.js +0 -55
  1641. package/dist/components/ui/connection-status.d.ts +0 -9
  1642. package/dist/components/ui/connection-status.d.ts.map +0 -1
  1643. package/dist/components/ui/connection-status.js +0 -25
  1644. package/dist/components/ui/copy-button.d.ts.map +0 -1
  1645. package/dist/components/ui/dialog.d.ts +0 -20
  1646. package/dist/components/ui/dialog.d.ts.map +0 -1
  1647. package/dist/components/ui/dialog.js +0 -22
  1648. package/dist/components/ui/dropdown-menu.d.ts.map +0 -1
  1649. package/dist/components/ui/dropdown-menu.js +0 -35
  1650. package/dist/components/ui/empty-state.d.ts.map +0 -1
  1651. package/dist/components/ui/error-boundary.d.ts +0 -18
  1652. package/dist/components/ui/error-boundary.d.ts.map +0 -1
  1653. package/dist/components/ui/error-boundary.js +0 -27
  1654. package/dist/components/ui/grid.d.ts +0 -11
  1655. package/dist/components/ui/grid.d.ts.map +0 -1
  1656. package/dist/components/ui/grid.js +0 -30
  1657. package/dist/components/ui/input.d.ts +0 -6
  1658. package/dist/components/ui/input.d.ts.map +0 -1
  1659. package/dist/components/ui/input.js +0 -8
  1660. package/dist/components/ui/label.d.ts +0 -6
  1661. package/dist/components/ui/label.d.ts.map +0 -1
  1662. package/dist/components/ui/label.js +0 -9
  1663. package/dist/components/ui/popover.d.ts.map +0 -1
  1664. package/dist/components/ui/save-footer.d.ts.map +0 -1
  1665. package/dist/components/ui/save-footer.js +0 -9
  1666. package/dist/components/ui/search-bar.d.ts +0 -17
  1667. package/dist/components/ui/search-bar.d.ts.map +0 -1
  1668. package/dist/components/ui/search-bar.js +0 -19
  1669. package/dist/components/ui/search-input.d.ts.map +0 -1
  1670. package/dist/components/ui/search-input.js +0 -9
  1671. package/dist/components/ui/section-card.d.ts.map +0 -1
  1672. package/dist/components/ui/section-card.js +0 -9
  1673. package/dist/components/ui/select.d.ts.map +0 -1
  1674. package/dist/components/ui/select.js +0 -26
  1675. package/dist/components/ui/separator.d.ts.map +0 -1
  1676. package/dist/components/ui/skeleton.d.ts.map +0 -1
  1677. package/dist/components/ui/skeleton.js +0 -25
  1678. package/dist/components/ui/slider.d.ts.map +0 -1
  1679. package/dist/components/ui/slider.js +0 -7
  1680. package/dist/components/ui/sonner.d.ts +0 -5
  1681. package/dist/components/ui/sonner.d.ts.map +0 -1
  1682. package/dist/components/ui/sonner.js +0 -15
  1683. package/dist/components/ui/spinner.d.ts.map +0 -1
  1684. package/dist/components/ui/stack.d.ts +0 -13
  1685. package/dist/components/ui/stack.d.ts.map +0 -1
  1686. package/dist/components/ui/stack.js +0 -39
  1687. package/dist/components/ui/status-badge.d.ts +0 -20
  1688. package/dist/components/ui/status-badge.d.ts.map +0 -1
  1689. package/dist/components/ui/status-badge.js +0 -41
  1690. package/dist/components/ui/switch.d.ts.map +0 -1
  1691. package/dist/components/ui/switch.js +0 -7
  1692. package/dist/components/ui/tabs.d.ts.map +0 -1
  1693. package/dist/components/ui/tabs.js +0 -12
  1694. package/dist/components/ui/tag-editor.d.ts +0 -24
  1695. package/dist/components/ui/tag-editor.d.ts.map +0 -1
  1696. package/dist/components/ui/tag-editor.js +0 -32
  1697. package/dist/components/ui/tag-input.d.ts +0 -19
  1698. package/dist/components/ui/tag-input.d.ts.map +0 -1
  1699. package/dist/components/ui/tag-input.js +0 -28
  1700. package/dist/components/ui/textarea.d.ts +0 -6
  1701. package/dist/components/ui/textarea.d.ts.map +0 -1
  1702. package/dist/components/ui/textarea.js +0 -8
  1703. package/dist/components/ui/themed-select.d.ts +0 -27
  1704. package/dist/components/ui/themed-select.d.ts.map +0 -1
  1705. package/dist/components/ui/themed-select.js +0 -57
  1706. package/dist/components/ui/tooltip-extended.d.ts +0 -76
  1707. package/dist/components/ui/tooltip-extended.d.ts.map +0 -1
  1708. package/dist/components/ui/tooltip-extended.js +0 -128
  1709. package/dist/components/ui/tooltip.d.ts +0 -8
  1710. package/dist/components/ui/tooltip.d.ts.map +0 -1
  1711. package/dist/components/ui/tooltip.js +0 -10
  1712. package/dist/components/ui/typography.d.ts +0 -17
  1713. package/dist/components/ui/typography.d.ts.map +0 -1
  1714. package/dist/components/ui/typography.js +0 -44
  1715. package/dist/index.d.ts +0 -42
  1716. package/dist/index.d.ts.map +0 -1
  1717. package/dist/index.js +0 -43
  1718. package/dist/lib/button-styles.d.ts +0 -12
  1719. package/dist/lib/button-styles.d.ts.map +0 -1
  1720. package/dist/lib/button-styles.js +0 -11
  1721. package/dist/lib/utils.d.ts +0 -6
  1722. package/dist/lib/utils.d.ts.map +0 -1
  1723. package/dist/lib/utils.js +0 -8
  1724. package/dist/package.json +0 -65
  1725. package/dist/styles/theme.css +0 -193
  1726. package/src/styles/theme.css +0 -193
  1727. /package/{dist/components/ui → packages/ui/src/components/composites/search}/search-input.d.ts +0 -0
  1728. /package/{dist → packages/ui/src}/components/ui/checkbox.d.ts +0 -0
  1729. /package/{dist → packages/ui/src}/components/ui/checkbox.js +0 -0
  1730. /package/{dist → packages/ui/src}/components/ui/copy-button.d.ts +0 -0
  1731. /package/{dist → packages/ui/src}/components/ui/copy-button.js +0 -0
  1732. /package/{dist → packages/ui/src}/components/ui/dropdown-menu.d.ts +0 -0
  1733. /package/{dist → packages/ui/src}/components/ui/empty-state.d.ts +0 -0
  1734. /package/{dist → packages/ui/src}/components/ui/empty-state.js +0 -0
  1735. /package/{dist → packages/ui/src}/components/ui/popover.d.ts +0 -0
  1736. /package/{dist → packages/ui/src}/components/ui/popover.js +0 -0
  1737. /package/{dist → packages/ui/src}/components/ui/save-footer.d.ts +0 -0
  1738. /package/{dist → packages/ui/src}/components/ui/section-card.d.ts +0 -0
  1739. /package/{dist → packages/ui/src}/components/ui/select.d.ts +0 -0
  1740. /package/{dist → packages/ui/src}/components/ui/separator.d.ts +0 -0
  1741. /package/{dist → packages/ui/src}/components/ui/separator.js +0 -0
  1742. /package/{dist → packages/ui/src}/components/ui/skeleton.d.ts +0 -0
  1743. /package/{dist → packages/ui/src}/components/ui/slider.d.ts +0 -0
  1744. /package/{dist → packages/ui/src}/components/ui/spinner.d.ts +0 -0
  1745. /package/{dist → packages/ui/src}/components/ui/spinner.js +0 -0
  1746. /package/{dist → packages/ui/src}/components/ui/switch.d.ts +0 -0
  1747. /package/{dist → packages/ui/src}/components/ui/tabs.d.ts +0 -0
@@ -0,0 +1,1649 @@
1
+ import { sql } from "drizzle-orm";
2
+ import { logger } from "../logger";
3
+ import { asUUID } from "../types/primitives";
4
+ import { Service } from "../types/service";
5
+ import { stringToUuid } from "../utils";
6
+ import { UnionFind } from "../utils/union-find";
7
+ /**
8
+ * Handles on these platforms are enrichment (phone/email/website) — they
9
+ * identify *contact methods* a person has shared with us, not a separate
10
+ * identity we'd confuse with another person. Keep in sync with the runtime-
11
+ * level CONTACT_PLATFORM_SET in agent/src/services/relationships-graph.ts.
12
+ */
13
+ const CONTACT_HANDLE_PLATFORMS = new Set(["email", "phone", "website"]);
14
+ function isConfirmedIdentityLinkLike(relationship) {
15
+ const tags = relationship.tags;
16
+ if (!Array.isArray(tags) || !tags.includes("identity_link")) {
17
+ return false;
18
+ }
19
+ const metadata = relationship.metadata;
20
+ if (!metadata || typeof metadata !== "object" || Array.isArray(metadata)) {
21
+ return false;
22
+ }
23
+ const status = metadata.status;
24
+ return typeof status === "string" && status === "confirmed";
25
+ }
26
+ /** Max interactions kept in contact component to avoid unbounded growth. */
27
+ const MAX_INTERACTION_HISTORY = 50;
28
+ function getContactDisplayName(contactInfo) {
29
+ const displayName = contactInfo.customFields.displayName;
30
+ return typeof displayName === "string" && displayName.trim().length > 0
31
+ ? displayName.trim()
32
+ : null;
33
+ }
34
+ /** Helper to convert ContactInfo to Metadata for storage */
35
+ function contactInfoToMetadata(contactInfo) {
36
+ return {
37
+ entityId: contactInfo.entityId,
38
+ categories: contactInfo.categories,
39
+ tags: contactInfo.tags,
40
+ preferences: contactInfo.preferences,
41
+ customFields: contactInfo.customFields,
42
+ privacyLevel: contactInfo.privacyLevel,
43
+ lastModified: contactInfo.lastModified,
44
+ handles: contactInfo.handles,
45
+ interactions: contactInfo.interactions,
46
+ followupThresholdDays: contactInfo.followupThresholdDays,
47
+ lastInteractionAt: contactInfo.lastInteractionAt,
48
+ relationshipGoal: contactInfo.relationshipGoal,
49
+ relationshipStatus: contactInfo.relationshipStatus,
50
+ };
51
+ }
52
+ function parseHandles(value) {
53
+ if (!Array.isArray(value))
54
+ return [];
55
+ const out = [];
56
+ for (const item of value) {
57
+ if (!item || typeof item !== "object" || Array.isArray(item))
58
+ continue;
59
+ const record = item;
60
+ const id = record.id;
61
+ const platform = record.platform;
62
+ const identifier = record.identifier;
63
+ const addedAt = record.addedAt;
64
+ if (typeof id !== "string" ||
65
+ typeof platform !== "string" ||
66
+ typeof identifier !== "string" ||
67
+ typeof addedAt !== "string") {
68
+ continue;
69
+ }
70
+ const displayLabel = typeof record.displayLabel === "string" ? record.displayLabel : undefined;
71
+ const isPrimary = typeof record.isPrimary === "boolean" ? record.isPrimary : undefined;
72
+ out.push({
73
+ id: id,
74
+ platform,
75
+ identifier,
76
+ displayLabel,
77
+ isPrimary,
78
+ addedAt,
79
+ });
80
+ }
81
+ return out;
82
+ }
83
+ function parseInteractions(value) {
84
+ if (!Array.isArray(value))
85
+ return [];
86
+ const out = [];
87
+ for (const item of value) {
88
+ if (!item || typeof item !== "object" || Array.isArray(item))
89
+ continue;
90
+ const record = item;
91
+ const id = record.id;
92
+ const platform = record.platform;
93
+ const direction = record.direction;
94
+ const occurredAt = record.occurredAt;
95
+ if (typeof id !== "string" ||
96
+ typeof platform !== "string" ||
97
+ (direction !== "inbound" && direction !== "outbound") ||
98
+ typeof occurredAt !== "string") {
99
+ continue;
100
+ }
101
+ const summary = typeof record.summary === "string" ? record.summary : undefined;
102
+ const externalRef = typeof record.externalRef === "string" ? record.externalRef : undefined;
103
+ out.push({
104
+ id: id,
105
+ platform,
106
+ direction,
107
+ summary,
108
+ externalRef,
109
+ occurredAt,
110
+ });
111
+ }
112
+ return out;
113
+ }
114
+ function parseRelationshipGoal(value) {
115
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
116
+ return undefined;
117
+ }
118
+ const record = value;
119
+ const goalText = record.goalText;
120
+ const setAt = record.setAt;
121
+ if (typeof goalText !== "string" || typeof setAt !== "string") {
122
+ return undefined;
123
+ }
124
+ const targetCadenceDays = typeof record.targetCadenceDays === "number"
125
+ ? record.targetCadenceDays
126
+ : undefined;
127
+ return { goalText, setAt, targetCadenceDays };
128
+ }
129
+ function parseRelationshipStatus(value) {
130
+ if (value === "active" ||
131
+ value === "dormant" ||
132
+ value === "archived" ||
133
+ value === "blocked" ||
134
+ value === "unknown") {
135
+ return value;
136
+ }
137
+ return "active";
138
+ }
139
+ /** Helper to convert Metadata back to ContactInfo */
140
+ function metadataToContactInfo(data) {
141
+ return {
142
+ entityId: data.entityId,
143
+ categories: data.categories ?? [],
144
+ tags: data.tags ?? [],
145
+ preferences: data.preferences ?? {},
146
+ customFields: data.customFields ?? {},
147
+ privacyLevel: data.privacyLevel,
148
+ lastModified: data.lastModified,
149
+ handles: parseHandles(data.handles),
150
+ interactions: parseInteractions(data.interactions),
151
+ followupThresholdDays: typeof data.followupThresholdDays === "number"
152
+ ? data.followupThresholdDays
153
+ : undefined,
154
+ lastInteractionAt: typeof data.lastInteractionAt === "string"
155
+ ? data.lastInteractionAt
156
+ : undefined,
157
+ relationshipGoal: parseRelationshipGoal(data.relationshipGoal),
158
+ relationshipStatus: parseRelationshipStatus(data.relationshipStatus),
159
+ };
160
+ }
161
+ const AUTO_MERGE_CONFIDENCE_THRESHOLD = 0.85;
162
+ const AUTO_MERGE_MIN_EVIDENCE = 2;
163
+ // Entity lifecycle event types
164
+ export var EntityLifecycleEvent;
165
+ (function (EntityLifecycleEvent) {
166
+ EntityLifecycleEvent["CREATED"] = "entity:created";
167
+ EntityLifecycleEvent["UPDATED"] = "entity:updated";
168
+ EntityLifecycleEvent["MERGED"] = "entity:merged";
169
+ EntityLifecycleEvent["RESOLVED"] = "entity:resolved";
170
+ })(EntityLifecycleEvent || (EntityLifecycleEvent = {}));
171
+ /**
172
+ * Calculate relationship strength based on interaction patterns
173
+ */
174
+ export function calculateRelationshipStrength({ interactionCount, lastInteractionAt, messageQuality = 5, relationshipType = "acquaintance", sharedConversationWindows = 0, }) {
175
+ // Base score from interaction count (max 40 points)
176
+ const interactionScore = Math.min(interactionCount * 2, 40);
177
+ // Shared conversation windows in the same room within an hour are a
178
+ // stronger social signal than isolated messages. Cap to avoid swamping
179
+ // explicit relationship/context signals.
180
+ const sharedConversationScore = Math.min(sharedConversationWindows * 4, 16);
181
+ // Recency score (max 30 points)
182
+ let recencyScore = 0;
183
+ if (lastInteractionAt) {
184
+ const daysSinceLastInteraction = (Date.now() - new Date(lastInteractionAt).getTime()) /
185
+ (1000 * 60 * 60 * 24);
186
+ if (daysSinceLastInteraction < 1)
187
+ recencyScore = 30;
188
+ else if (daysSinceLastInteraction < 7)
189
+ recencyScore = 25;
190
+ else if (daysSinceLastInteraction < 30)
191
+ recencyScore = 20;
192
+ else if (daysSinceLastInteraction < 90)
193
+ recencyScore = 10;
194
+ else
195
+ recencyScore = 5;
196
+ }
197
+ // Quality score (max 20 points)
198
+ const qualityScore = (messageQuality / 10) * 20;
199
+ // Relationship type bonus (max 10 points)
200
+ const relationshipBonus = {
201
+ family: 10,
202
+ friend: 8,
203
+ colleague: 6,
204
+ acquaintance: 4,
205
+ unknown: 0,
206
+ };
207
+ // Calculate total strength
208
+ const totalStrength = interactionScore +
209
+ recencyScore +
210
+ qualityScore +
211
+ sharedConversationScore +
212
+ (relationshipBonus[relationshipType] ?? 0);
213
+ // Return clamped value between 0 and 100
214
+ return Math.max(0, Math.min(100, Math.round(totalStrength)));
215
+ }
216
+ function toMessageTimestamp(value) {
217
+ if (typeof value === "number" && Number.isFinite(value)) {
218
+ return value;
219
+ }
220
+ if (typeof value === "string" && value.trim().length > 0) {
221
+ const parsed = Number(value);
222
+ if (Number.isFinite(parsed)) {
223
+ return parsed;
224
+ }
225
+ }
226
+ return null;
227
+ }
228
+ export function countSharedConversationWindows(messages, leftEntityId, rightEntityId, windowMs = 1000 * 60 * 60) {
229
+ const relevantMessages = messages
230
+ .filter((message) => (message.entityId === leftEntityId ||
231
+ message.entityId === rightEntityId) &&
232
+ toMessageTimestamp(message.createdAt) !== null)
233
+ .sort((left, right) => (toMessageTimestamp(left.createdAt) ?? 0) -
234
+ (toMessageTimestamp(right.createdAt) ?? 0));
235
+ if (relevantMessages.length < 2) {
236
+ return 0;
237
+ }
238
+ const rooms = new Map();
239
+ for (const message of relevantMessages) {
240
+ const roomKey = typeof message.roomId === "string" ? message.roomId : "__shared__";
241
+ if (!rooms.has(roomKey)) {
242
+ rooms.set(roomKey, []);
243
+ }
244
+ rooms.get(roomKey)?.push(message);
245
+ }
246
+ let windowCount = 0;
247
+ for (const roomMessages of rooms.values()) {
248
+ let currentWindowStart = null;
249
+ let seenLeft = false;
250
+ let seenRight = false;
251
+ const flushWindow = () => {
252
+ if (seenLeft && seenRight) {
253
+ windowCount += 1;
254
+ }
255
+ currentWindowStart = null;
256
+ seenLeft = false;
257
+ seenRight = false;
258
+ };
259
+ for (const message of roomMessages) {
260
+ const createdAt = toMessageTimestamp(message.createdAt);
261
+ if (createdAt === null) {
262
+ continue;
263
+ }
264
+ if (currentWindowStart === null ||
265
+ createdAt - currentWindowStart > windowMs) {
266
+ if (currentWindowStart !== null) {
267
+ flushWindow();
268
+ }
269
+ currentWindowStart = createdAt;
270
+ }
271
+ if (message.entityId === leftEntityId) {
272
+ seenLeft = true;
273
+ }
274
+ if (message.entityId === rightEntityId) {
275
+ seenRight = true;
276
+ }
277
+ }
278
+ if (currentWindowStart !== null) {
279
+ flushWindow();
280
+ }
281
+ }
282
+ return windowCount;
283
+ }
284
+ export class RelationshipsService extends Service {
285
+ static serviceType = "relationships";
286
+ capabilityDescription = "Comprehensive contact and relationship management service";
287
+ // In-memory caches for performance
288
+ contactInfoCache = new Map();
289
+ analyticsCache = new Map();
290
+ categoriesCache = [];
291
+ static CONTACT_CACHE_LIMIT = 2000;
292
+ static ANALYTICS_CACHE_LIMIT = 2000;
293
+ setCacheWithLimit(cache, key, value, limit) {
294
+ if (cache.has(key)) {
295
+ cache.delete(key);
296
+ }
297
+ cache.set(key, value);
298
+ if (cache.size > limit) {
299
+ const firstKey = cache.keys().next().value;
300
+ if (firstKey !== undefined) {
301
+ cache.delete(firstKey);
302
+ }
303
+ }
304
+ }
305
+ getRelationshipsWorldId() {
306
+ return stringToUuid(`relationships-world-${this.runtime.agentId}`);
307
+ }
308
+ getRelationshipsRoomId() {
309
+ return stringToUuid(`relationships-${this.runtime.agentId}`);
310
+ }
311
+ isRelationshipsContactComponent(component) {
312
+ return (component.type === "contact_info" &&
313
+ component.agentId === this.runtime.agentId &&
314
+ component.worldId === this.getRelationshipsWorldId() &&
315
+ component.sourceEntityId === this.runtime.agentId);
316
+ }
317
+ async getStoredContactComponent(entityId) {
318
+ if (typeof this.runtime.getComponent === "function") {
319
+ return await this.runtime.getComponent(entityId, "contact_info", this.getRelationshipsWorldId(), this.runtime.agentId);
320
+ }
321
+ const components = await this.runtime.getComponents(entityId);
322
+ return (components.find((component) => this.isRelationshipsContactComponent(component)) ?? null);
323
+ }
324
+ cacheContactInfoFromEntities(entities) {
325
+ for (const entity of entities) {
326
+ if (!entity.id || !entity.components) {
327
+ continue;
328
+ }
329
+ const contactComponent = entity.components.find((component) => this.isRelationshipsContactComponent(component));
330
+ if (!contactComponent?.data) {
331
+ continue;
332
+ }
333
+ const contactInfo = metadataToContactInfo(contactComponent.data);
334
+ this.setCacheWithLimit(this.contactInfoCache, entity.id, contactInfo, RelationshipsService.CONTACT_CACHE_LIMIT);
335
+ }
336
+ }
337
+ async initialize(runtime) {
338
+ this.runtime = runtime;
339
+ const relationshipsWorldId = this.getRelationshipsWorldId();
340
+ const relationshipsRoomId = this.getRelationshipsRoomId();
341
+ // Ensure the synthetic relationships world exists so component FK constraints pass
342
+ if (typeof this.runtime.ensureWorldExists === "function") {
343
+ try {
344
+ await this.runtime.ensureWorldExists({
345
+ id: relationshipsWorldId,
346
+ name: "Relationships World",
347
+ agentId: this.runtime.agentId,
348
+ });
349
+ }
350
+ catch (err) {
351
+ logger.warn(`[RelationshipsService] Failed to ensure relationships world: ${err}`);
352
+ }
353
+ }
354
+ // Components are stored in a synthetic room inside the relationships world.
355
+ if (typeof this.runtime.ensureRoomExists === "function") {
356
+ try {
357
+ await this.runtime.ensureRoomExists({
358
+ id: relationshipsRoomId,
359
+ name: "Relationships",
360
+ source: "relationships",
361
+ type: "API",
362
+ channelId: `relationships-${this.runtime.agentId}`,
363
+ worldId: relationshipsWorldId,
364
+ });
365
+ }
366
+ catch (err) {
367
+ logger.warn(`[RelationshipsService] Failed to ensure relationships room: ${err}`);
368
+ }
369
+ }
370
+ // Initialize default categories
371
+ this.categoriesCache = [
372
+ { id: "friend", name: "Friend", color: "#4CAF50" },
373
+ { id: "family", name: "Family", color: "#2196F3" },
374
+ { id: "colleague", name: "Colleague", color: "#FF9800" },
375
+ { id: "acquaintance", name: "Acquaintance", color: "#9E9E9E" },
376
+ { id: "vip", name: "VIP", color: "#9C27B0" },
377
+ { id: "business", name: "Business", color: "#795548" },
378
+ ];
379
+ // Load existing contact info from components
380
+ await this.loadContactInfoFromComponents();
381
+ // Service initialized
382
+ logger.info("[RelationshipsService] Initialized successfully");
383
+ }
384
+ async stop() {
385
+ // Clean up caches
386
+ this.contactInfoCache.clear();
387
+ this.analyticsCache.clear();
388
+ this.categoriesCache = [];
389
+ // Service stopped
390
+ logger.info("[RelationshipsService] Stopped successfully");
391
+ }
392
+ static async start(runtime) {
393
+ const service = new RelationshipsService();
394
+ await service.initialize(runtime);
395
+ return service;
396
+ }
397
+ async loadContactInfoFromComponents() {
398
+ this.contactInfoCache.clear();
399
+ const relationshipsWorldId = this.getRelationshipsWorldId();
400
+ // Load contacts from the synthetic relationships world where they are stored.
401
+ if (typeof this.runtime.queryEntities === "function") {
402
+ try {
403
+ const entities = await this.runtime.queryEntities({
404
+ componentType: "contact_info",
405
+ worldId: relationshipsWorldId,
406
+ includeAllComponents: true,
407
+ });
408
+ if (entities.length > 0) {
409
+ this.cacheContactInfoFromEntities(entities);
410
+ }
411
+ logger.info(`[RelationshipsService] Loaded ${this.contactInfoCache.size} contacts from components`);
412
+ return;
413
+ }
414
+ catch (err) {
415
+ logger.warn(`[RelationshipsService] Failed to query contact components: ${err}`);
416
+ }
417
+ }
418
+ else {
419
+ logger.warn("[RelationshipsService] runtime.queryEntities is not available; starting with an empty contact cache");
420
+ }
421
+ // Start with an empty cache — contacts will be populated as they are added.
422
+ // This avoids crashing on fresh databases or adapters that do not yet
423
+ // support queryEntities.
424
+ logger.info("[RelationshipsService] Starting with empty contact cache (contacts will load on demand)");
425
+ }
426
+ // Contact Management Methods
427
+ async addContact(entityId, categories = ["acquaintance"], preferences, customFields) {
428
+ const contactInfo = {
429
+ entityId,
430
+ categories,
431
+ tags: [],
432
+ preferences: preferences ?? {},
433
+ customFields: customFields ?? {},
434
+ privacyLevel: "private",
435
+ lastModified: new Date().toISOString(),
436
+ handles: [],
437
+ interactions: [],
438
+ relationshipStatus: "active",
439
+ };
440
+ // Save as component
441
+ await this.runtime.createComponent({
442
+ id: stringToUuid(`contact-${entityId}-${this.runtime.agentId}`),
443
+ type: "contact_info",
444
+ agentId: this.runtime.agentId,
445
+ entityId,
446
+ roomId: this.getRelationshipsRoomId(),
447
+ worldId: this.getRelationshipsWorldId(),
448
+ sourceEntityId: this.runtime.agentId,
449
+ data: contactInfoToMetadata(contactInfo),
450
+ createdAt: Date.now(),
451
+ });
452
+ this.setCacheWithLimit(this.contactInfoCache, entityId, contactInfo, RelationshipsService.CONTACT_CACHE_LIMIT);
453
+ // Emit entity lifecycle event
454
+ const entity = await this.runtime.getEntityById(entityId);
455
+ if (entity) {
456
+ await this.runtime.emitEvent(EntityLifecycleEvent.UPDATED, {
457
+ entityId: entity.id ?? "",
458
+ source: "relationships",
459
+ });
460
+ }
461
+ logger.info(`[RelationshipsService] Added contact ${entityId} with categories: ${categories.join(", ")}`);
462
+ return contactInfo;
463
+ }
464
+ async updateContact(entityId, updates) {
465
+ const existing = await this.getContact(entityId);
466
+ if (!existing) {
467
+ logger.warn(`[RelationshipsService] Contact ${entityId} not found`);
468
+ return null;
469
+ }
470
+ const updated = {
471
+ ...existing,
472
+ ...updates,
473
+ entityId, // Ensure entityId cannot be changed
474
+ lastModified: new Date().toISOString(),
475
+ };
476
+ // Update component
477
+ const contactComponent = await this.getStoredContactComponent(entityId);
478
+ if (contactComponent) {
479
+ await this.runtime.updateComponent({
480
+ ...contactComponent,
481
+ data: contactInfoToMetadata(updated),
482
+ });
483
+ }
484
+ this.setCacheWithLimit(this.contactInfoCache, entityId, updated, RelationshipsService.CONTACT_CACHE_LIMIT);
485
+ logger.info(`[RelationshipsService] Updated contact ${entityId}`);
486
+ return updated;
487
+ }
488
+ async getContact(entityId) {
489
+ // Check cache first
490
+ if (this.contactInfoCache.has(entityId)) {
491
+ const cached = this.contactInfoCache.get(entityId);
492
+ if (cached) {
493
+ return cached;
494
+ }
495
+ }
496
+ // Load from component if not in cache
497
+ const contactComponent = await this.getStoredContactComponent(entityId);
498
+ if (contactComponent?.data) {
499
+ const contactInfo = metadataToContactInfo(contactComponent.data);
500
+ this.setCacheWithLimit(this.contactInfoCache, entityId, contactInfo, RelationshipsService.CONTACT_CACHE_LIMIT);
501
+ return contactInfo;
502
+ }
503
+ return null;
504
+ }
505
+ async removeContact(entityId) {
506
+ const existing = await this.getContact(entityId);
507
+ if (!existing) {
508
+ logger.warn(`[RelationshipsService] Contact ${entityId} not found`);
509
+ return false;
510
+ }
511
+ // Remove component
512
+ const contactComponent = await this.getStoredContactComponent(entityId);
513
+ if (contactComponent) {
514
+ await this.runtime.deleteComponent(contactComponent.id);
515
+ }
516
+ // Remove from cache
517
+ this.contactInfoCache.delete(entityId);
518
+ logger.info(`[RelationshipsService] Removed contact ${entityId}`);
519
+ return true;
520
+ }
521
+ async searchContacts(criteria) {
522
+ const results = [];
523
+ for (const [, contactInfo] of this.contactInfoCache) {
524
+ let matches = true;
525
+ // Check categories
526
+ if (criteria.categories && criteria.categories.length > 0) {
527
+ const categorySet = new Set(contactInfo.categories);
528
+ matches =
529
+ matches && criteria.categories.some((cat) => categorySet.has(cat));
530
+ }
531
+ // Check tags
532
+ if (criteria.tags && criteria.tags.length > 0) {
533
+ const tagSet = new Set(contactInfo.tags);
534
+ matches = matches && criteria.tags.some((tag) => tagSet.has(tag));
535
+ }
536
+ // Check privacy level
537
+ if (criteria.privacyLevel) {
538
+ matches = matches && contactInfo.privacyLevel === criteria.privacyLevel;
539
+ }
540
+ if (matches) {
541
+ results.push(contactInfo);
542
+ }
543
+ }
544
+ // If searchTerm is provided, further filter by entity names
545
+ if (criteria.searchTerm) {
546
+ const searchTermLower = criteria.searchTerm.toLowerCase();
547
+ const entities = await Promise.all(results.map((contact) => this.runtime.getEntityById(contact.entityId)));
548
+ const filteredResults = [];
549
+ for (let i = 0; i < results.length; i++) {
550
+ const entity = entities[i];
551
+ const entityNames = entity?.names ?? [];
552
+ const displayName = getContactDisplayName(results[i])?.toLowerCase();
553
+ if (entityNames.some((name) => name.toLowerCase().includes(searchTermLower)) ||
554
+ displayName?.includes(searchTermLower) ||
555
+ String(results[i].entityId).toLowerCase().includes(searchTermLower)) {
556
+ filteredResults.push(results[i]);
557
+ }
558
+ }
559
+ return filteredResults;
560
+ }
561
+ return results;
562
+ }
563
+ // Relationship Analytics Methods
564
+ async analyzeRelationship(sourceEntityId, targetEntityId) {
565
+ const cacheKey = `${sourceEntityId}-${targetEntityId}`;
566
+ // Check cache first
567
+ if (this.analyticsCache.has(cacheKey)) {
568
+ const cached = this.analyticsCache.get(cacheKey);
569
+ if (cached) {
570
+ // Cache for 1 hour
571
+ if (cached.lastInteractionAt &&
572
+ Date.now() - new Date(cached.lastInteractionAt).getTime() < 3600000) {
573
+ return cached;
574
+ }
575
+ }
576
+ }
577
+ // Get relationship
578
+ const relationships = await this.runtime.getRelationships({
579
+ entityIds: [sourceEntityId],
580
+ });
581
+ const relationship = relationships.find((r) => r.targetEntityId === targetEntityId ||
582
+ r.sourceEntityId === targetEntityId);
583
+ // Get recent messages from rooms both entities share. `inReplyTo` stores a
584
+ // parent message id, not an entity id, so direct reply matching here is incorrect.
585
+ const [sourceRoomIds, targetRoomIds] = await Promise.all([
586
+ this.runtime.getRoomsForParticipant(sourceEntityId),
587
+ this.runtime.getRoomsForParticipant(targetEntityId),
588
+ ]);
589
+ const targetRoomIdSet = new Set(targetRoomIds.map((roomId) => String(roomId)));
590
+ const sharedRoomIds = sourceRoomIds.filter((roomId) => targetRoomIdSet.has(String(roomId)));
591
+ const sharedMessages = sharedRoomIds.length > 0
592
+ ? await this.runtime.getMemoriesByRoomIds({
593
+ tableName: "messages",
594
+ roomIds: sharedRoomIds,
595
+ limit: 200,
596
+ })
597
+ : [];
598
+ const interactions = sharedMessages
599
+ .filter((message) => message.entityId === sourceEntityId ||
600
+ message.entityId === targetEntityId)
601
+ .sort((a, b) => Number(a.createdAt ?? 0) - Number(b.createdAt ?? 0));
602
+ if (!relationship && interactions.length === 0) {
603
+ return null;
604
+ }
605
+ // Calculate metrics
606
+ const interactionCount = interactions.length;
607
+ const sharedConversationWindows = countSharedConversationWindows(interactions, sourceEntityId, targetEntityId);
608
+ const lastInteraction = interactions[interactions.length - 1];
609
+ const lastInteractionAt = lastInteraction?.createdAt
610
+ ? new Date(Number(lastInteraction.createdAt)).toISOString()
611
+ : relationship?.lastInteractionAt;
612
+ // Calculate average response time
613
+ let totalResponseTime = 0;
614
+ let responseCount = 0;
615
+ for (let i = 0; i < interactions.length - 1; i++) {
616
+ const current = interactions[i];
617
+ const next = interactions[i + 1];
618
+ if (current.entityId !== next.entityId &&
619
+ current.createdAt &&
620
+ next.createdAt) {
621
+ const timeDiff = Number(next.createdAt) - Number(current.createdAt);
622
+ totalResponseTime += timeDiff;
623
+ responseCount++;
624
+ }
625
+ }
626
+ const averageResponseTime = responseCount > 0 ? totalResponseTime / responseCount : undefined;
627
+ // Extract topics (simplified - could use NLP)
628
+ const topicsSet = new Set();
629
+ for (const msg of interactions) {
630
+ const text = msg.content.text || "";
631
+ // Simple keyword extraction - could be enhanced with NLP
632
+ const keywords = text.match(/\b[A-Z][a-z]+\b/g) || [];
633
+ for (const k of keywords) {
634
+ topicsSet.add(k);
635
+ }
636
+ }
637
+ // Calculate relationship strength
638
+ const strength = calculateRelationshipStrength({
639
+ interactionCount,
640
+ lastInteractionAt,
641
+ relationshipType: relationship?.relationshipType,
642
+ sharedConversationWindows,
643
+ });
644
+ const analytics = {
645
+ strength,
646
+ interactionCount,
647
+ sharedConversationWindows,
648
+ lastInteractionAt,
649
+ averageResponseTime,
650
+ sentimentScore: 0.7, // Placeholder - could integrate sentiment analysis
651
+ topicsDiscussed: Array.from(topicsSet).slice(0, 10),
652
+ };
653
+ // Update relationship with calculated strength
654
+ if (relationship &&
655
+ (relationship.strength !== strength ||
656
+ relationship.lastInteractionAt !== lastInteractionAt)) {
657
+ // Update relationship using components
658
+ const relationshipComponent = {
659
+ id: stringToUuid(`relationship-${relationship.id}`),
660
+ type: "relationship_update",
661
+ agentId: this.runtime.agentId,
662
+ entityId: relationship.sourceEntityId,
663
+ roomId: this.getRelationshipsRoomId(),
664
+ worldId: this.getRelationshipsWorldId(),
665
+ sourceEntityId: relationship.sourceEntityId,
666
+ data: {
667
+ targetEntityId: relationship.targetEntityId,
668
+ strength,
669
+ lastInteractionAt,
670
+ metadata: relationship.metadata,
671
+ },
672
+ createdAt: Date.now(),
673
+ };
674
+ await this.runtime.createComponent(relationshipComponent);
675
+ }
676
+ // Cache the result
677
+ this.setCacheWithLimit(this.analyticsCache, cacheKey, analytics, RelationshipsService.ANALYTICS_CACHE_LIMIT);
678
+ return analytics;
679
+ }
680
+ async getRelationshipInsights(entityId) {
681
+ const relationships = await this.runtime.getRelationships({
682
+ entityIds: [entityId],
683
+ });
684
+ const insights = {
685
+ strongestRelationships: [],
686
+ needsAttention: [],
687
+ recentInteractions: [],
688
+ };
689
+ const targets = relationships.map((rel) => rel.sourceEntityId === entityId ? rel.targetEntityId : rel.sourceEntityId);
690
+ const entities = await Promise.all(targets.map((target) => this.runtime.getEntityById(target)));
691
+ const analyticsResults = await Promise.all(targets.map((target, index) => entities[index] ? this.analyzeRelationship(entityId, target) : null));
692
+ for (let i = 0; i < relationships.length; i++) {
693
+ const entity = entities[i];
694
+ const analytics = analyticsResults[i];
695
+ if (!entity || !analytics)
696
+ continue;
697
+ // Strongest relationships
698
+ if (analytics.strength > 70) {
699
+ insights.strongestRelationships.push({ entity, analytics });
700
+ }
701
+ // Needs attention (no contact in 30+ days)
702
+ if (analytics.lastInteractionAt) {
703
+ const daysSince = (Date.now() - new Date(analytics.lastInteractionAt).getTime()) /
704
+ (1000 * 60 * 60 * 24);
705
+ if (daysSince > 30) {
706
+ insights.needsAttention.push({
707
+ entity,
708
+ daysSinceContact: Math.round(daysSince),
709
+ });
710
+ }
711
+ // Recent interactions (last 7 days)
712
+ if (daysSince < 7) {
713
+ insights.recentInteractions.push({
714
+ entity,
715
+ lastInteraction: analytics.lastInteractionAt,
716
+ });
717
+ }
718
+ }
719
+ }
720
+ // Sort by relevance
721
+ insights.strongestRelationships.sort((a, b) => b.analytics.strength - a.analytics.strength);
722
+ insights.needsAttention.sort((a, b) => b.daysSinceContact - a.daysSinceContact);
723
+ insights.recentInteractions.sort((a, b) => new Date(b.lastInteraction).getTime() -
724
+ new Date(a.lastInteraction).getTime());
725
+ return insights;
726
+ }
727
+ // Category Management
728
+ async getCategories() {
729
+ return this.categoriesCache;
730
+ }
731
+ async addCategory(category) {
732
+ if (this.categoriesCache.find((c) => c.id === category.id)) {
733
+ throw new Error(`Category ${category.id} already exists`);
734
+ }
735
+ this.categoriesCache.push(category);
736
+ logger.info(`[RelationshipsService] Added category: ${category.name}`);
737
+ }
738
+ // Privacy Management
739
+ async setContactPrivacy(entityId, privacyLevel) {
740
+ const contact = await this.getContact(entityId);
741
+ if (!contact)
742
+ return false;
743
+ contact.privacyLevel = privacyLevel;
744
+ await this.updateContact(entityId, { privacyLevel });
745
+ logger.info(`[RelationshipsService] Set privacy level for ${entityId} to ${privacyLevel}`);
746
+ return true;
747
+ }
748
+ async canAccessContact(requestingEntityId, targetEntityId) {
749
+ const contact = await this.getContact(targetEntityId);
750
+ if (!contact)
751
+ return false;
752
+ // Agent always has access
753
+ if (requestingEntityId === this.runtime.agentId)
754
+ return true;
755
+ // Check privacy level
756
+ switch (contact.privacyLevel) {
757
+ case "public":
758
+ return true;
759
+ case "private":
760
+ // Only agent and the entity itself
761
+ return requestingEntityId === targetEntityId;
762
+ case "restricted":
763
+ // Only agent
764
+ return false;
765
+ default:
766
+ return false;
767
+ }
768
+ }
769
+ // ───────────────────────────────────────────────────────────────────────
770
+ // Rolodex extensions (T7b)
771
+ // ───────────────────────────────────────────────────────────────────────
772
+ /** Persist a ContactInfo back to its component + cache. */
773
+ async persistContactInfo(contactInfo) {
774
+ const stored = await this.getStoredContactComponent(contactInfo.entityId);
775
+ if (!stored) {
776
+ throw new Error(`[RelationshipsService] Contact component missing for ${contactInfo.entityId}`);
777
+ }
778
+ const next = {
779
+ ...contactInfo,
780
+ lastModified: new Date().toISOString(),
781
+ };
782
+ await this.runtime.updateComponent({
783
+ ...stored,
784
+ data: contactInfoToMetadata(next),
785
+ });
786
+ this.setCacheWithLimit(this.contactInfoCache, next.entityId, next, RelationshipsService.CONTACT_CACHE_LIMIT);
787
+ }
788
+ /**
789
+ * Add a platform handle to a contact. Enforces uniqueness on
790
+ * (platform, identifier) pairs across the contact.
791
+ */
792
+ async addHandle(contactId, handle) {
793
+ const platform = handle.platform.trim().toLowerCase();
794
+ const identifier = handle.identifier.trim();
795
+ if (platform.length === 0 || identifier.length === 0) {
796
+ throw new Error("Handle platform and identifier are required");
797
+ }
798
+ const contact = await this.getContact(contactId);
799
+ if (!contact) {
800
+ throw new Error(`Contact ${contactId} not found`);
801
+ }
802
+ const normalizedIdentifier = identifier.toLowerCase();
803
+ const duplicate = contact.handles.find((h) => h.platform === platform &&
804
+ h.identifier.toLowerCase() === normalizedIdentifier);
805
+ if (duplicate) {
806
+ return duplicate;
807
+ }
808
+ const newHandle = {
809
+ id: stringToUuid(`handle-${contactId}-${platform}-${identifier}-${Date.now()}`),
810
+ platform,
811
+ identifier,
812
+ displayLabel: handle.displayLabel,
813
+ isPrimary: handle.isPrimary,
814
+ addedAt: new Date().toISOString(),
815
+ };
816
+ let handles = [...contact.handles, newHandle];
817
+ if (newHandle.isPrimary === true) {
818
+ handles = handles.map((h) => h.platform === platform && h.id !== newHandle.id
819
+ ? { ...h, isPrimary: false }
820
+ : h);
821
+ }
822
+ await this.persistContactInfo({ ...contact, handles });
823
+ logger.info(`[RelationshipsService] Added handle ${platform}:${identifier} to ${contactId}`);
824
+ return newHandle;
825
+ }
826
+ async removeHandle(contactId, handleId) {
827
+ const contact = await this.getContact(contactId);
828
+ if (!contact)
829
+ return false;
830
+ const filtered = contact.handles.filter((h) => h.id !== handleId);
831
+ if (filtered.length === contact.handles.length) {
832
+ return false;
833
+ }
834
+ await this.persistContactInfo({ ...contact, handles: filtered });
835
+ logger.info(`[RelationshipsService] Removed handle ${handleId} from ${contactId}`);
836
+ return true;
837
+ }
838
+ /**
839
+ * Record an interaction with a contact. Trims interaction history to
840
+ * MAX_INTERACTION_HISTORY entries (most recent kept). Updates
841
+ * lastInteractionAt so followup thresholds stay accurate.
842
+ */
843
+ async recordInteraction(input) {
844
+ const contact = await this.getContact(input.contactId);
845
+ if (!contact) {
846
+ throw new Error(`Contact ${input.contactId} not found`);
847
+ }
848
+ const platform = input.platform.trim().toLowerCase();
849
+ if (platform.length === 0) {
850
+ throw new Error("Interaction platform is required");
851
+ }
852
+ const occurredAt = input.occurredAt ?? new Date().toISOString();
853
+ const interaction = {
854
+ id: stringToUuid(`interaction-${input.contactId}-${platform}-${occurredAt}-${Math.random()}`),
855
+ platform,
856
+ direction: input.direction,
857
+ summary: input.summary,
858
+ externalRef: input.externalRef,
859
+ occurredAt,
860
+ };
861
+ const appended = [...contact.interactions, interaction].sort((a, b) => new Date(a.occurredAt).getTime() - new Date(b.occurredAt).getTime());
862
+ const trimmed = appended.length > MAX_INTERACTION_HISTORY
863
+ ? appended.slice(appended.length - MAX_INTERACTION_HISTORY)
864
+ : appended;
865
+ const latestAt = trimmed[trimmed.length - 1]?.occurredAt;
866
+ const currentLatest = contact.lastInteractionAt
867
+ ? new Date(contact.lastInteractionAt).getTime()
868
+ : 0;
869
+ const nextLastInteractionAt = latestAt && new Date(latestAt).getTime() >= currentLatest
870
+ ? latestAt
871
+ : contact.lastInteractionAt;
872
+ await this.persistContactInfo({
873
+ ...contact,
874
+ interactions: trimmed,
875
+ lastInteractionAt: nextLastInteractionAt,
876
+ });
877
+ return interaction;
878
+ }
879
+ /**
880
+ * Find a contact by one of its platform handles. Match is case-insensitive
881
+ * on identifier; platform is normalized to lowercase.
882
+ */
883
+ async findByHandle(platform, identifier) {
884
+ const normalizedPlatform = platform.trim().toLowerCase();
885
+ const normalizedIdentifier = identifier.trim().toLowerCase();
886
+ if (normalizedPlatform.length === 0 || normalizedIdentifier.length === 0) {
887
+ return null;
888
+ }
889
+ for (const contact of this.contactInfoCache.values()) {
890
+ const match = contact.handles.find((h) => h.platform === normalizedPlatform &&
891
+ h.identifier.toLowerCase() === normalizedIdentifier);
892
+ if (match)
893
+ return contact;
894
+ }
895
+ return null;
896
+ }
897
+ /**
898
+ * Merge two contacts. Handles, interactions, tags, and categories from the
899
+ * secondary are folded into the primary. The secondary contact is removed.
900
+ */
901
+ async mergeContacts(primaryId, secondaryId) {
902
+ if (primaryId === secondaryId) {
903
+ throw new Error("Cannot merge a contact with itself");
904
+ }
905
+ const primary = await this.getContact(primaryId);
906
+ const secondary = await this.getContact(secondaryId);
907
+ if (!primary) {
908
+ throw new Error(`Primary contact ${primaryId} not found`);
909
+ }
910
+ if (!secondary) {
911
+ throw new Error(`Secondary contact ${secondaryId} not found`);
912
+ }
913
+ // Merge handles, dedupe on (platform, identifier)
914
+ const handleKey = (h) => `${h.platform}:${h.identifier.toLowerCase()}`;
915
+ const mergedHandlesMap = new Map();
916
+ for (const h of [...primary.handles, ...secondary.handles]) {
917
+ if (!mergedHandlesMap.has(handleKey(h))) {
918
+ mergedHandlesMap.set(handleKey(h), h);
919
+ }
920
+ }
921
+ // Merge interactions (dedupe by id) and keep sorted
922
+ const interactionMap = new Map();
923
+ for (const i of [...primary.interactions, ...secondary.interactions]) {
924
+ interactionMap.set(i.id, i);
925
+ }
926
+ const mergedInteractions = Array.from(interactionMap.values()).sort((a, b) => new Date(a.occurredAt).getTime() - new Date(b.occurredAt).getTime());
927
+ const trimmedInteractions = mergedInteractions.length > MAX_INTERACTION_HISTORY
928
+ ? mergedInteractions.slice(mergedInteractions.length - MAX_INTERACTION_HISTORY)
929
+ : mergedInteractions;
930
+ const mergedCategories = Array.from(new Set([...primary.categories, ...secondary.categories]));
931
+ const mergedTags = Array.from(new Set([...primary.tags, ...secondary.tags]));
932
+ const primaryLast = primary.lastInteractionAt
933
+ ? new Date(primary.lastInteractionAt).getTime()
934
+ : 0;
935
+ const secondaryLast = secondary.lastInteractionAt
936
+ ? new Date(secondary.lastInteractionAt).getTime()
937
+ : 0;
938
+ const latestInteractionAt = primaryLast >= secondaryLast
939
+ ? primary.lastInteractionAt
940
+ : secondary.lastInteractionAt;
941
+ const merged = {
942
+ ...primary,
943
+ categories: mergedCategories,
944
+ tags: mergedTags,
945
+ handles: Array.from(mergedHandlesMap.values()),
946
+ interactions: trimmedInteractions,
947
+ lastInteractionAt: latestInteractionAt,
948
+ relationshipGoal: primary.relationshipGoal ?? secondary.relationshipGoal,
949
+ followupThresholdDays: primary.followupThresholdDays ?? secondary.followupThresholdDays,
950
+ customFields: { ...secondary.customFields, ...primary.customFields },
951
+ preferences: { ...secondary.preferences, ...primary.preferences },
952
+ };
953
+ await this.persistContactInfo(merged);
954
+ await this.removeContact(secondaryId);
955
+ logger.info(`[RelationshipsService] Merged ${secondaryId} into ${primaryId}`);
956
+ return merged;
957
+ }
958
+ async setRelationshipGoal(contactId, goal) {
959
+ const contact = await this.getContact(contactId);
960
+ if (!contact) {
961
+ throw new Error(`Contact ${contactId} not found`);
962
+ }
963
+ const goalText = goal.goalText.trim();
964
+ if (goalText.length === 0) {
965
+ throw new Error("Goal text is required");
966
+ }
967
+ const relationshipGoal = {
968
+ goalText,
969
+ targetCadenceDays: goal.targetCadenceDays,
970
+ setAt: new Date().toISOString(),
971
+ };
972
+ await this.persistContactInfo({
973
+ ...contact,
974
+ relationshipGoal,
975
+ followupThresholdDays: goal.targetCadenceDays ?? contact.followupThresholdDays,
976
+ });
977
+ logger.info(`[RelationshipsService] Set relationship goal for ${contactId}`);
978
+ return relationshipGoal;
979
+ }
980
+ async getRelationshipProgress(contactId) {
981
+ const contact = await this.getContact(contactId);
982
+ if (!contact)
983
+ return null;
984
+ const goal = contact.relationshipGoal ?? null;
985
+ const last = contact.lastInteractionAt ?? null;
986
+ const targetCadence = goal?.targetCadenceDays ?? contact.followupThresholdDays ?? null;
987
+ let daysSinceInteraction = null;
988
+ if (last) {
989
+ daysSinceInteraction =
990
+ (Date.now() - new Date(last).getTime()) / (1000 * 60 * 60 * 24);
991
+ }
992
+ let cadenceHealth;
993
+ if (targetCadence === null) {
994
+ cadenceHealth = "no-goal";
995
+ }
996
+ else if (daysSinceInteraction === null) {
997
+ cadenceHealth = "never-contacted";
998
+ }
999
+ else if (daysSinceInteraction < targetCadence * 0.8) {
1000
+ cadenceHealth = "on-track";
1001
+ }
1002
+ else if (daysSinceInteraction <= targetCadence) {
1003
+ cadenceHealth = "due";
1004
+ }
1005
+ else {
1006
+ cadenceHealth = "overdue";
1007
+ }
1008
+ return {
1009
+ contactId,
1010
+ goal,
1011
+ lastInteractionAt: last,
1012
+ cadenceHealth,
1013
+ daysSinceInteraction,
1014
+ targetCadenceDays: targetCadence,
1015
+ };
1016
+ }
1017
+ /**
1018
+ * List all contacts whose followup threshold has lapsed. A contact is
1019
+ * considered overdue when:
1020
+ * - followupThresholdDays is set (or defaultThresholdDays is provided), AND
1021
+ * - (now - lastInteractionAt) > thresholdDays, OR lastInteractionAt is null.
1022
+ */
1023
+ async listOverdueFollowups(options) {
1024
+ const asOf = options?.asOfMs ?? Date.now();
1025
+ const defaultThreshold = options?.defaultThresholdDays;
1026
+ const results = [];
1027
+ for (const contact of this.contactInfoCache.values()) {
1028
+ if (contact.relationshipStatus === "archived")
1029
+ continue;
1030
+ if (contact.relationshipStatus === "blocked")
1031
+ continue;
1032
+ const threshold = contact.followupThresholdDays ??
1033
+ contact.relationshipGoal?.targetCadenceDays ??
1034
+ defaultThreshold;
1035
+ if (threshold === undefined)
1036
+ continue;
1037
+ if (!contact.lastInteractionAt) {
1038
+ results.push({
1039
+ contact,
1040
+ daysSinceInteraction: Number.POSITIVE_INFINITY,
1041
+ thresholdDays: threshold,
1042
+ });
1043
+ continue;
1044
+ }
1045
+ const daysSince = (asOf - new Date(contact.lastInteractionAt).getTime()) /
1046
+ (1000 * 60 * 60 * 24);
1047
+ if (daysSince > threshold) {
1048
+ results.push({
1049
+ contact,
1050
+ daysSinceInteraction: daysSince,
1051
+ thresholdDays: threshold,
1052
+ });
1053
+ }
1054
+ }
1055
+ results.sort((a, b) => b.daysSinceInteraction - a.daysSinceInteraction);
1056
+ return results;
1057
+ }
1058
+ /**
1059
+ * Import contacts from an external platform. For each seed:
1060
+ * - if an existing contact has a matching (platform, identifier) handle,
1061
+ * link any new metadata and return it as linkedToExisting;
1062
+ * - otherwise create a new entity + contact.
1063
+ */
1064
+ async importContactsFromPlatform(platform, contacts) {
1065
+ const normalizedPlatform = platform.trim().toLowerCase();
1066
+ if (normalizedPlatform.length === 0) {
1067
+ throw new Error("Platform is required for import");
1068
+ }
1069
+ const imported = [];
1070
+ const linkedToExisting = [];
1071
+ const skipped = [];
1072
+ for (const seed of contacts) {
1073
+ const seedPlatform = (seed.platform ?? normalizedPlatform)
1074
+ .trim()
1075
+ .toLowerCase();
1076
+ const identifier = seed.identifier?.trim();
1077
+ if (!identifier) {
1078
+ skipped.push({ seed, reason: "missing identifier" });
1079
+ continue;
1080
+ }
1081
+ const existing = await this.findByHandle(seedPlatform, identifier);
1082
+ if (existing) {
1083
+ const refreshed = await this.getContact(existing.entityId);
1084
+ if (refreshed)
1085
+ linkedToExisting.push(refreshed);
1086
+ continue;
1087
+ }
1088
+ const displayName = seed.displayName?.trim() || identifier;
1089
+ const entityId = stringToUuid(`contact-import-${seedPlatform}-${identifier}-${this.runtime.agentId}`);
1090
+ const existingEntity = await this.runtime.getEntityById(entityId);
1091
+ if (!existingEntity) {
1092
+ await this.runtime.createEntity({
1093
+ id: entityId,
1094
+ names: [displayName],
1095
+ agentId: this.runtime.agentId,
1096
+ });
1097
+ }
1098
+ const preferences = {};
1099
+ if (seed.notes)
1100
+ preferences.notes = seed.notes;
1101
+ const newContact = await this.addContact(entityId, seed.categories ?? ["acquaintance"], preferences, { displayName });
1102
+ if (seed.tags && seed.tags.length > 0) {
1103
+ await this.persistContactInfo({
1104
+ ...newContact,
1105
+ tags: Array.from(new Set([...newContact.tags, ...seed.tags])),
1106
+ });
1107
+ }
1108
+ await this.addHandle(entityId, {
1109
+ platform: seedPlatform,
1110
+ identifier,
1111
+ displayLabel: seed.displayLabel,
1112
+ isPrimary: true,
1113
+ });
1114
+ const finalContact = await this.getContact(entityId);
1115
+ if (finalContact)
1116
+ imported.push(finalContact);
1117
+ }
1118
+ logger.info(`[RelationshipsService] Imported ${imported.length}, linked ${linkedToExisting.length}, skipped ${skipped.length} from ${normalizedPlatform}`);
1119
+ return { imported, linkedToExisting, skipped };
1120
+ }
1121
+ // ───────────────────────────────────────────────────────────────────────
1122
+ // Identity strengthening (entity_identities + entity_merge_candidates)
1123
+ // ───────────────────────────────────────────────────────────────────────
1124
+ getRuntimeDb() {
1125
+ const adapter = this.runtime.adapter;
1126
+ const db = adapter?.db;
1127
+ if (!db || typeof db.execute !== "function") {
1128
+ return null;
1129
+ }
1130
+ return db;
1131
+ }
1132
+ async execSql(sqlText) {
1133
+ const db = this.getRuntimeDb();
1134
+ if (!db) {
1135
+ throw new Error("[RelationshipsService] runtime database adapter unavailable");
1136
+ }
1137
+ const result = (await db.execute(sql.raw(sqlText)));
1138
+ return { rows: Array.isArray(result.rows) ? result.rows : [] };
1139
+ }
1140
+ /**
1141
+ * Insert or strengthen an `entity_identities` row. Re-observations of the
1142
+ * same (entity, platform, handle) triple bump confidence to the max,
1143
+ * append (deduped) evidence message ids, and update last_seen.
1144
+ *
1145
+ * When the same (platform, handle) pair has already been observed for a
1146
+ * different entity AND this observation is high-confidence with
1147
+ * sufficient evidence, an auto-merge candidate is proposed and accepted.
1148
+ */
1149
+ async upsertIdentity(entityId, identity, evidenceMessageIds = []) {
1150
+ const platform = identity.platform.trim().toLowerCase();
1151
+ const handle = identity.handle.trim();
1152
+ if (platform.length === 0 || handle.length === 0) {
1153
+ throw new Error("[RelationshipsService] upsertIdentity requires non-empty platform and handle");
1154
+ }
1155
+ const confidence = clampConfidence(identity.confidence);
1156
+ const verified = identity.verified === true;
1157
+ const dedupedEvidence = Array.from(new Set(evidenceMessageIds));
1158
+ const evidenceLiteral = sqlJsonbLiteral(dedupedEvidence);
1159
+ const sourceLiteral = typeof identity.source === "string" && identity.source.trim().length > 0
1160
+ ? sqlQuote(identity.source.trim())
1161
+ : "NULL";
1162
+ const verifiedLiteral = verified ? "TRUE" : "FALSE";
1163
+ const platformLiteral = sqlQuote(platform);
1164
+ const handleLiteral = sqlQuote(handle);
1165
+ const entityLiteral = sqlQuote(entityId);
1166
+ const agentLiteral = sqlQuote(this.runtime.agentId);
1167
+ const upsertSql = `INSERT INTO entity_identities (
1168
+ entity_id, agent_id, platform, handle, verified, confidence, source,
1169
+ first_seen, last_seen, evidence_message_ids
1170
+ ) VALUES (
1171
+ ${entityLiteral}, ${agentLiteral}, ${platformLiteral}, ${handleLiteral},
1172
+ ${verifiedLiteral}, ${confidence}, ${sourceLiteral},
1173
+ now(), now(), ${evidenceLiteral}
1174
+ )
1175
+ ON CONFLICT ON CONSTRAINT unique_entity_identity DO UPDATE SET
1176
+ confidence = GREATEST(entity_identities.confidence, EXCLUDED.confidence),
1177
+ verified = entity_identities.verified OR EXCLUDED.verified,
1178
+ last_seen = now(),
1179
+ source = COALESCE(EXCLUDED.source, entity_identities.source),
1180
+ evidence_message_ids = (
1181
+ SELECT to_jsonb(array_agg(DISTINCT element))
1182
+ FROM jsonb_array_elements_text(
1183
+ COALESCE(entity_identities.evidence_message_ids, '[]'::jsonb)
1184
+ || COALESCE(EXCLUDED.evidence_message_ids, '[]'::jsonb)
1185
+ ) AS element
1186
+ )`;
1187
+ await this.execSql(upsertSql);
1188
+ // Auto-merge: if this (platform, handle) is already pinned to another
1189
+ // entity, surface — and possibly accept — a merge candidate.
1190
+ if (confidence >= AUTO_MERGE_CONFIDENCE_THRESHOLD &&
1191
+ dedupedEvidence.length >= AUTO_MERGE_MIN_EVIDENCE) {
1192
+ const collisions = await this.findEntitiesByIdentity(platform, handle);
1193
+ for (const otherEntityId of collisions) {
1194
+ if (otherEntityId === entityId)
1195
+ continue;
1196
+ const candidate = await this.proposeMerge(entityId, otherEntityId, {
1197
+ platform,
1198
+ handle,
1199
+ notes: "auto-detected high-confidence identity collision",
1200
+ });
1201
+ await this.acceptMerge(candidate);
1202
+ }
1203
+ }
1204
+ }
1205
+ async getEntityIdentities(entityId) {
1206
+ const result = await this.execSql(`SELECT id, entity_id, platform, handle, verified, confidence, source,
1207
+ first_seen, last_seen, evidence_message_ids
1208
+ FROM entity_identities
1209
+ WHERE entity_id = ${sqlQuote(entityId)}
1210
+ AND agent_id = ${sqlQuote(this.runtime.agentId)}
1211
+ ORDER BY confidence DESC, last_seen DESC`);
1212
+ return result.rows.map(parseEntityIdentityRow);
1213
+ }
1214
+ async findEntitiesByIdentity(platform, handle) {
1215
+ const result = await this.execSql(`SELECT DISTINCT entity_id
1216
+ FROM entity_identities
1217
+ WHERE platform = ${sqlQuote(platform)}
1218
+ AND handle = ${sqlQuote(handle)}
1219
+ AND agent_id = ${sqlQuote(this.runtime.agentId)}`);
1220
+ const ids = [];
1221
+ for (const row of result.rows) {
1222
+ const value = row.entity_id;
1223
+ if (typeof value === "string" && value.length > 0) {
1224
+ ids.push(asUUID(value));
1225
+ }
1226
+ }
1227
+ return ids;
1228
+ }
1229
+ async proposeMerge(entityA, entityB, evidence) {
1230
+ if (entityA === entityB) {
1231
+ throw new Error("[RelationshipsService] proposeMerge requires two distinct entities");
1232
+ }
1233
+ // entity_a is the *surviving* entity. Order is intentional and not
1234
+ // normalized — the caller picks the canonical side, and acceptMerge
1235
+ // folds entity_b into entity_a.
1236
+ const evidenceLiteral = sqlJsonbLiteral(evidence);
1237
+ const confidence = clampConfidence(typeof evidence.confidence === "number" ? evidence.confidence : 1);
1238
+ const result = await this.execSql(`INSERT INTO entity_merge_candidates (
1239
+ agent_id, entity_a, entity_b, confidence, evidence, status
1240
+ ) VALUES (
1241
+ ${sqlQuote(this.runtime.agentId)},
1242
+ ${sqlQuote(entityA)},
1243
+ ${sqlQuote(entityB)},
1244
+ ${confidence},
1245
+ ${evidenceLiteral},
1246
+ 'pending'
1247
+ ) RETURNING id`);
1248
+ const row = result.rows[0];
1249
+ const id = row?.id;
1250
+ if (typeof id !== "string") {
1251
+ throw new Error("[RelationshipsService] proposeMerge: insert did not return an id");
1252
+ }
1253
+ logger.info(`[RelationshipsService] Proposed merge candidate ${id} (${entityA} <-> ${entityB})`);
1254
+ return asUUID(id);
1255
+ }
1256
+ async getCandidateMerges() {
1257
+ const result = await this.execSql(`SELECT id, entity_a, entity_b, confidence, evidence, status,
1258
+ proposed_at, resolved_at
1259
+ FROM entity_merge_candidates
1260
+ WHERE agent_id = ${sqlQuote(this.runtime.agentId)}
1261
+ AND status = 'pending'
1262
+ ORDER BY proposed_at DESC`);
1263
+ return result.rows.map(parseMergeCandidateRow);
1264
+ }
1265
+ async acceptMerge(candidateId) {
1266
+ const result = await this.execSql(`SELECT id, entity_a, entity_b, confidence, evidence, status,
1267
+ proposed_at, resolved_at
1268
+ FROM entity_merge_candidates
1269
+ WHERE id = ${sqlQuote(candidateId)}
1270
+ AND agent_id = ${sqlQuote(this.runtime.agentId)}
1271
+ LIMIT 1`);
1272
+ const row = result.rows[0];
1273
+ if (!row) {
1274
+ throw new Error(`[RelationshipsService] merge candidate ${candidateId} not found`);
1275
+ }
1276
+ const candidate = parseMergeCandidateRow(row);
1277
+ if (candidate.status !== "pending") {
1278
+ logger.info(`[RelationshipsService] Merge candidate ${candidateId} already ${candidate.status}`);
1279
+ return;
1280
+ }
1281
+ // Move identities + relationships from B into A, dedupe via the unique
1282
+ // constraint, then collapse the secondary contact (if any). PGlite's
1283
+ // prepared-statement protocol disallows multi-statement queries, so we
1284
+ // issue each step as its own execute() inside an explicit transaction.
1285
+ const a = sqlQuote(candidate.entityA);
1286
+ const b = sqlQuote(candidate.entityB);
1287
+ const agent = sqlQuote(this.runtime.agentId);
1288
+ const candidateLiteral = sqlQuote(candidateId);
1289
+ await this.execSql("BEGIN");
1290
+ try {
1291
+ await this.execSql(`INSERT INTO entity_identities (
1292
+ entity_id, agent_id, platform, handle, verified, confidence, source,
1293
+ first_seen, last_seen, evidence_message_ids
1294
+ )
1295
+ SELECT ${a}, agent_id, platform, handle, verified, confidence, source,
1296
+ first_seen, last_seen, evidence_message_ids
1297
+ FROM entity_identities
1298
+ WHERE entity_id = ${b} AND agent_id = ${agent}
1299
+ ON CONFLICT ON CONSTRAINT unique_entity_identity DO UPDATE SET
1300
+ confidence = GREATEST(entity_identities.confidence, EXCLUDED.confidence),
1301
+ verified = entity_identities.verified OR EXCLUDED.verified,
1302
+ last_seen = GREATEST(entity_identities.last_seen, EXCLUDED.last_seen)`);
1303
+ await this.execSql(`DELETE FROM entity_identities
1304
+ WHERE entity_id = ${b} AND agent_id = ${agent}`);
1305
+ await this.execSql(`UPDATE entity_merge_candidates
1306
+ SET status = 'accepted', resolved_at = now()
1307
+ WHERE id = ${candidateLiteral}`);
1308
+ await this.execSql("COMMIT");
1309
+ }
1310
+ catch (err) {
1311
+ await this.execSql("ROLLBACK").catch(() => undefined);
1312
+ throw err;
1313
+ }
1314
+ // Fold the contact rows. mergeContacts requires both sides to have a
1315
+ // contact; if only the secondary has one we drop it so the secondary
1316
+ // entity does not retain stale relationship rows after the merge.
1317
+ const [contactA, contactB] = await Promise.all([
1318
+ this.getContact(candidate.entityA),
1319
+ this.getContact(candidate.entityB),
1320
+ ]);
1321
+ if (contactA && contactB) {
1322
+ await this.mergeContacts(candidate.entityA, candidate.entityB);
1323
+ }
1324
+ else if (contactB) {
1325
+ await this.removeContact(candidate.entityB);
1326
+ }
1327
+ const existingIdentityLink = (await this.runtime.getRelationships({
1328
+ entityIds: [candidate.entityA, candidate.entityB],
1329
+ })).find((relationship) => {
1330
+ const samePair = (relationship.sourceEntityId === candidate.entityA &&
1331
+ relationship.targetEntityId === candidate.entityB) ||
1332
+ (relationship.sourceEntityId === candidate.entityB &&
1333
+ relationship.targetEntityId === candidate.entityA);
1334
+ return samePair && Array.isArray(relationship.tags);
1335
+ });
1336
+ const identityMetadata = {
1337
+ ...(existingIdentityLink?.metadata ?? {}),
1338
+ ...candidate.evidence,
1339
+ status: "confirmed",
1340
+ mergeCandidateId: candidateId,
1341
+ mergeSurvivorEntityId: candidate.entityA,
1342
+ mergeFoldedEntityId: candidate.entityB,
1343
+ source: "relationships.acceptMerge",
1344
+ };
1345
+ const identityTags = Array.from(new Set([...(existingIdentityLink?.tags ?? []), "identity_link"]));
1346
+ if (existingIdentityLink) {
1347
+ await this.runtime.updateRelationship({
1348
+ ...existingIdentityLink,
1349
+ tags: identityTags,
1350
+ metadata: identityMetadata,
1351
+ });
1352
+ }
1353
+ else {
1354
+ await this.runtime.createRelationship({
1355
+ sourceEntityId: candidate.entityA,
1356
+ targetEntityId: candidate.entityB,
1357
+ tags: identityTags,
1358
+ metadata: identityMetadata,
1359
+ });
1360
+ }
1361
+ logger.info(`[RelationshipsService] Accepted merge ${candidateId}; folded ${candidate.entityB} into ${candidate.entityA}`);
1362
+ }
1363
+ async rejectMerge(candidateId) {
1364
+ await this.execSql(`UPDATE entity_merge_candidates
1365
+ SET status = 'rejected', resolved_at = now()
1366
+ WHERE id = ${sqlQuote(candidateId)}
1367
+ AND agent_id = ${sqlQuote(this.runtime.agentId)}`);
1368
+ logger.info(`[RelationshipsService] Rejected merge ${candidateId}`);
1369
+ }
1370
+ /**
1371
+ * Return every entity that belongs to the same identity cluster as
1372
+ * `primaryEntityId`. An identity cluster is the connected component
1373
+ * formed by:
1374
+ * - confirmed identity-link relationships (tag `identity_link`,
1375
+ * metadata.status === "confirmed"), and
1376
+ * - shared entity_identities rows (same (platform, handle) on two
1377
+ * different entities).
1378
+ *
1379
+ * The returned array always includes `primaryEntityId` itself.
1380
+ * Semantics match the runtime-level clusterer in
1381
+ * `@elizaos/agent/src/services/relationships-graph.ts` (buildClusters),
1382
+ * including contact-platform suppression (email/phone/website handles
1383
+ * are *not* treated as cluster-forming — they're enrichment, not
1384
+ * identity evidence).
1385
+ */
1386
+ async getMemberEntityIds(primaryEntityId) {
1387
+ const uf = await this.buildIdentityUnionFind(primaryEntityId);
1388
+ const members = uf.componentOf(primaryEntityId);
1389
+ if (members.length === 0) {
1390
+ return [primaryEntityId];
1391
+ }
1392
+ return members;
1393
+ }
1394
+ /**
1395
+ * Resolve an entity to its cluster's primary entity.
1396
+ *
1397
+ * The primary is the member with a contact_info component if one
1398
+ * exists; otherwise the lexicographically-smallest UUID. This matches
1399
+ * the runtime-level clusterer's tiebreaker semantics when no scoring
1400
+ * data (EntityContext) is available at the service layer.
1401
+ *
1402
+ * If the entity is not part of a multi-member cluster, returns the
1403
+ * entity id itself.
1404
+ */
1405
+ async resolvePrimaryEntityId(entityId) {
1406
+ const members = await this.getMemberEntityIds(entityId);
1407
+ if (members.length <= 1) {
1408
+ return entityId;
1409
+ }
1410
+ const contactEntries = await Promise.all(members.map(async (memberId) => {
1411
+ const contact = await this.getContact(memberId);
1412
+ return contact ? memberId : null;
1413
+ }));
1414
+ for (const candidate of contactEntries) {
1415
+ if (candidate) {
1416
+ return candidate;
1417
+ }
1418
+ }
1419
+ const sorted = [...members].sort();
1420
+ return sorted[0];
1421
+ }
1422
+ /**
1423
+ * Build a UnionFind keyed by UUID containing every entity reachable
1424
+ * from `seedEntityId` via confirmed identity-link relationships or
1425
+ * shared entity_identities rows.
1426
+ *
1427
+ * We expand iteratively so we don't have to materialise the full
1428
+ * graph: at each step, we query relationships/identities for the
1429
+ * newly-discovered frontier and union in any new neighbours.
1430
+ */
1431
+ async buildIdentityUnionFind(seedEntityId) {
1432
+ const uf = new UnionFind([seedEntityId]);
1433
+ const visited = new Set();
1434
+ let frontier = [seedEntityId];
1435
+ while (frontier.length > 0) {
1436
+ const nextFrontier = new Set();
1437
+ const pending = frontier.filter((id) => !visited.has(id));
1438
+ for (const id of pending) {
1439
+ visited.add(id);
1440
+ }
1441
+ if (pending.length === 0) {
1442
+ break;
1443
+ }
1444
+ const relationships = await this.runtime.getRelationships({
1445
+ entityIds: pending,
1446
+ });
1447
+ for (const relationship of relationships) {
1448
+ if (!isConfirmedIdentityLinkLike(relationship))
1449
+ continue;
1450
+ uf.union(relationship.sourceEntityId, relationship.targetEntityId);
1451
+ if (!visited.has(relationship.sourceEntityId)) {
1452
+ nextFrontier.add(relationship.sourceEntityId);
1453
+ }
1454
+ if (!visited.has(relationship.targetEntityId)) {
1455
+ nextFrontier.add(relationship.targetEntityId);
1456
+ }
1457
+ }
1458
+ const identityRows = await this.getIdentityRowsForEntities(pending);
1459
+ const entitiesByHandleKey = new Map();
1460
+ for (const row of identityRows) {
1461
+ if (CONTACT_HANDLE_PLATFORMS.has(row.platform.toLowerCase())) {
1462
+ continue;
1463
+ }
1464
+ const key = `${row.platform.toLowerCase()}:${row.handle.toLowerCase()}`;
1465
+ const bucket = entitiesByHandleKey.get(key) ?? new Set();
1466
+ bucket.add(row.entityId);
1467
+ entitiesByHandleKey.set(key, bucket);
1468
+ }
1469
+ for (const key of entitiesByHandleKey.keys()) {
1470
+ const matches = await this.findEntitiesSharingHandleKey(key);
1471
+ const combined = entitiesByHandleKey.get(key) ?? new Set();
1472
+ for (const m of matches)
1473
+ combined.add(m);
1474
+ if (combined.size < 2)
1475
+ continue;
1476
+ const members = Array.from(combined);
1477
+ const anchor = members[0];
1478
+ for (const other of members.slice(1)) {
1479
+ uf.union(anchor, other);
1480
+ if (!visited.has(other)) {
1481
+ nextFrontier.add(other);
1482
+ }
1483
+ }
1484
+ }
1485
+ frontier = Array.from(nextFrontier);
1486
+ }
1487
+ return uf;
1488
+ }
1489
+ async getIdentityRowsForEntities(entityIds) {
1490
+ if (entityIds.length === 0)
1491
+ return [];
1492
+ const quoted = entityIds.map(sqlQuote).join(", ");
1493
+ const result = await this.execSql(`SELECT entity_id, platform, handle
1494
+ FROM entity_identities
1495
+ WHERE agent_id = ${sqlQuote(this.runtime.agentId)}
1496
+ AND entity_id IN (${quoted})`);
1497
+ const rows = [];
1498
+ for (const row of result.rows) {
1499
+ const e = row.entity_id;
1500
+ const p = row.platform;
1501
+ const h = row.handle;
1502
+ if (typeof e !== "string" ||
1503
+ typeof p !== "string" ||
1504
+ typeof h !== "string") {
1505
+ continue;
1506
+ }
1507
+ rows.push({ entityId: asUUID(e), platform: p, handle: h });
1508
+ }
1509
+ return rows;
1510
+ }
1511
+ async findEntitiesSharingHandleKey(handleKey) {
1512
+ const [platform, handle] = handleKey.split(":", 2);
1513
+ if (!platform || handle === undefined)
1514
+ return [];
1515
+ const result = await this.execSql(`SELECT DISTINCT entity_id
1516
+ FROM entity_identities
1517
+ WHERE agent_id = ${sqlQuote(this.runtime.agentId)}
1518
+ AND LOWER(platform) = ${sqlQuote(platform)}
1519
+ AND LOWER(handle) = ${sqlQuote(handle)}`);
1520
+ const ids = [];
1521
+ for (const row of result.rows) {
1522
+ const e = row.entity_id;
1523
+ if (typeof e === "string" && e.length > 0) {
1524
+ ids.push(asUUID(e));
1525
+ }
1526
+ }
1527
+ return ids;
1528
+ }
1529
+ }
1530
+ function clampConfidence(value) {
1531
+ if (!Number.isFinite(value))
1532
+ return 0;
1533
+ if (value < 0)
1534
+ return 0;
1535
+ if (value > 1)
1536
+ return 1;
1537
+ return value;
1538
+ }
1539
+ function sqlQuote(value) {
1540
+ return `'${value.replace(/'/g, "''")}'`;
1541
+ }
1542
+ function sqlJsonbLiteral(value) {
1543
+ return `${sqlQuote(JSON.stringify(value ?? null))}::jsonb`;
1544
+ }
1545
+ function parseEntityIdentityRow(row) {
1546
+ const id = row.id;
1547
+ const entityId = row.entity_id;
1548
+ const platform = row.platform;
1549
+ const handle = row.handle;
1550
+ if (typeof id !== "string" ||
1551
+ typeof entityId !== "string" ||
1552
+ typeof platform !== "string" ||
1553
+ typeof handle !== "string") {
1554
+ throw new Error("[RelationshipsService] entity_identities row missing required fields");
1555
+ }
1556
+ const evidenceRaw = row.evidence_message_ids;
1557
+ const evidenceArray = typeof evidenceRaw === "string"
1558
+ ? safeJsonArray(evidenceRaw)
1559
+ : Array.isArray(evidenceRaw)
1560
+ ? evidenceRaw
1561
+ : [];
1562
+ const evidence = [];
1563
+ for (const entry of evidenceArray) {
1564
+ if (typeof entry === "string" && entry.length > 0) {
1565
+ evidence.push(asUUID(entry));
1566
+ }
1567
+ }
1568
+ return {
1569
+ id: asUUID(id),
1570
+ entityId: asUUID(entityId),
1571
+ platform,
1572
+ handle,
1573
+ verified: row.verified === true,
1574
+ confidence: typeof row.confidence === "number" && Number.isFinite(row.confidence)
1575
+ ? row.confidence
1576
+ : 0,
1577
+ source: typeof row.source === "string" ? row.source : undefined,
1578
+ firstSeen: toIsoString(row.first_seen),
1579
+ lastSeen: toIsoString(row.last_seen),
1580
+ evidenceMessageIds: evidence,
1581
+ };
1582
+ }
1583
+ function parseMergeCandidateRow(row) {
1584
+ const id = row.id;
1585
+ const entityA = row.entity_a;
1586
+ const entityB = row.entity_b;
1587
+ if (typeof id !== "string" ||
1588
+ typeof entityA !== "string" ||
1589
+ typeof entityB !== "string") {
1590
+ throw new Error("[RelationshipsService] entity_merge_candidates row missing required fields");
1591
+ }
1592
+ const status = row.status;
1593
+ const normalizedStatus = status === "accepted" || status === "rejected" ? status : "pending";
1594
+ const evidenceRaw = row.evidence;
1595
+ let evidence = {};
1596
+ if (typeof evidenceRaw === "string") {
1597
+ const parsed = safeJsonObject(evidenceRaw);
1598
+ if (parsed)
1599
+ evidence = parsed;
1600
+ }
1601
+ else if (evidenceRaw &&
1602
+ typeof evidenceRaw === "object" &&
1603
+ !Array.isArray(evidenceRaw)) {
1604
+ evidence = evidenceRaw;
1605
+ }
1606
+ return {
1607
+ id: asUUID(id),
1608
+ entityA: asUUID(entityA),
1609
+ entityB: asUUID(entityB),
1610
+ confidence: typeof row.confidence === "number" && Number.isFinite(row.confidence)
1611
+ ? row.confidence
1612
+ : 0,
1613
+ evidence,
1614
+ status: normalizedStatus,
1615
+ proposedAt: toIsoString(row.proposed_at),
1616
+ resolvedAt: row.resolved_at != null ? toIsoString(row.resolved_at) : undefined,
1617
+ };
1618
+ }
1619
+ function safeJsonArray(value) {
1620
+ const trimmed = value.trim();
1621
+ if (!trimmed)
1622
+ return [];
1623
+ const parsed = JSON.parse(trimmed);
1624
+ return Array.isArray(parsed) ? parsed : [];
1625
+ }
1626
+ function safeJsonObject(value) {
1627
+ const trimmed = value.trim();
1628
+ if (!trimmed)
1629
+ return null;
1630
+ const parsed = JSON.parse(trimmed);
1631
+ if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) {
1632
+ return parsed;
1633
+ }
1634
+ return null;
1635
+ }
1636
+ function toIsoString(value) {
1637
+ if (value instanceof Date)
1638
+ return value.toISOString();
1639
+ if (typeof value === "string") {
1640
+ const parsed = new Date(value);
1641
+ if (!Number.isNaN(parsed.getTime()))
1642
+ return parsed.toISOString();
1643
+ return value;
1644
+ }
1645
+ if (typeof value === "number" && Number.isFinite(value)) {
1646
+ return new Date(value).toISOString();
1647
+ }
1648
+ return new Date().toISOString();
1649
+ }