@smoothbuilder/smoothagent-agent-client 0.0.0-stage → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/README.md +55 -2
  3. package/dist/chunk-PZ5AY32C.js +10 -0
  4. package/dist/chunk-PZ5AY32C.js.map +7 -0
  5. package/dist/index.js +24 -0
  6. package/dist/index.js.map +7 -0
  7. package/dist/testing.js +139 -0
  8. package/dist/testing.js.map +7 -0
  9. package/dist/types/contract/events/ts/src/gen/events.d.ts +5990 -0
  10. package/dist/types/contract/events/ts/src/gen/known.d.ts +117 -0
  11. package/dist/types/contract/events/ts/src/reducer.d.ts +21 -0
  12. package/dist/types/sdk/generated/ts-client/BaseClient.d.ts +54 -0
  13. package/dist/types/sdk/generated/ts-client/Client.d.ts +41 -0
  14. package/dist/types/sdk/generated/ts-client/api/errors/BadGatewayError.d.ts +7 -0
  15. package/dist/types/sdk/generated/ts-client/api/errors/BadRequestError.d.ts +7 -0
  16. package/dist/types/sdk/generated/ts-client/api/errors/ConflictError.d.ts +7 -0
  17. package/dist/types/sdk/generated/ts-client/api/errors/FailedDependencyError.d.ts +7 -0
  18. package/dist/types/sdk/generated/ts-client/api/errors/ForbiddenError.d.ts +7 -0
  19. package/dist/types/sdk/generated/ts-client/api/errors/GoneError.d.ts +7 -0
  20. package/dist/types/sdk/generated/ts-client/api/errors/InternalServerError.d.ts +7 -0
  21. package/dist/types/sdk/generated/ts-client/api/errors/NotFoundError.d.ts +7 -0
  22. package/dist/types/sdk/generated/ts-client/api/errors/PaymentRequiredError.d.ts +7 -0
  23. package/dist/types/sdk/generated/ts-client/api/errors/ServiceUnavailableError.d.ts +7 -0
  24. package/dist/types/sdk/generated/ts-client/api/errors/TooManyRequestsError.d.ts +7 -0
  25. package/dist/types/sdk/generated/ts-client/api/errors/UnauthorizedError.d.ts +7 -0
  26. package/dist/types/sdk/generated/ts-client/api/errors/UnprocessableEntityError.d.ts +7 -0
  27. package/dist/types/sdk/generated/ts-client/api/errors/index.d.ts +13 -0
  28. package/dist/types/sdk/generated/ts-client/api/index.d.ts +3 -0
  29. package/dist/types/sdk/generated/ts-client/api/resources/agents/client/Client.d.ts +66 -0
  30. package/dist/types/sdk/generated/ts-client/api/resources/agents/client/index.d.ts +1 -0
  31. package/dist/types/sdk/generated/ts-client/api/resources/agents/client/requests/AgentsGetRequest.d.ts +9 -0
  32. package/dist/types/sdk/generated/ts-client/api/resources/agents/client/requests/AgentsListRequest.d.ts +10 -0
  33. package/dist/types/sdk/generated/ts-client/api/resources/agents/client/requests/index.d.ts +2 -0
  34. package/dist/types/sdk/generated/ts-client/api/resources/agents/index.d.ts +2 -0
  35. package/dist/types/sdk/generated/ts-client/api/resources/agents/types/AgentsGetResponse.d.ts +2 -0
  36. package/dist/types/sdk/generated/ts-client/api/resources/agents/types/AgentsListResponse.d.ts +12 -0
  37. package/dist/types/sdk/generated/ts-client/api/resources/agents/types/index.d.ts +2 -0
  38. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/Client.d.ts +970 -0
  39. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/index.d.ts +1 -0
  40. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/CancelSwitchChatsRequest.d.ts +11 -0
  41. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatBoxListFilesRequest.d.ts +11 -0
  42. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatBoxListTasksRequest.d.ts +10 -0
  43. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatBoxReadFileRequest.d.ts +12 -0
  44. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatBoxStopTaskRequest.d.ts +13 -0
  45. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatBoxTaskOutputRequest.d.ts +13 -0
  46. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsDeleteRequest.d.ts +10 -0
  47. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsEventsRequest.d.ts +14 -0
  48. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsGetRequest.d.ts +10 -0
  49. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsHistoryRequest.d.ts +16 -0
  50. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsLimitsRequest.d.ts +10 -0
  51. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsListRequest.d.ts +14 -0
  52. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsMessageRequest.d.ts +12 -0
  53. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsQueueRequest.d.ts +10 -0
  54. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsResendRequest.d.ts +13 -0
  55. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsResetRequest.d.ts +12 -0
  56. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsRespondRequest.d.ts +17 -0
  57. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsRunRequest.d.ts +12 -0
  58. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsRunsRequest.d.ts +13 -0
  59. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsSelectionRequest.d.ts +10 -0
  60. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsSnapshotRequest.d.ts +10 -0
  61. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsStopRequest.d.ts +11 -0
  62. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsUpdateRequest.d.ts +13 -0
  63. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ChatsUsageRequest.d.ts +10 -0
  64. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/CreateChat.d.ts +33 -0
  65. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/EditQueuedChatsRequest.d.ts +20 -0
  66. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/EventsRangeChatsRequest.d.ts +14 -0
  67. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/GetContextChatsRequest.d.ts +10 -0
  68. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/MarkReadChatsRequest.d.ts +13 -0
  69. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/RemoveQueuedChatsRequest.d.ts +14 -0
  70. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/ReorderQueueChatsRequest.d.ts +15 -0
  71. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/SendMessage.d.ts +39 -0
  72. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/SendNowChatsRequest.d.ts +15 -0
  73. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/SwitchAgent.d.ts +35 -0
  74. package/dist/types/sdk/generated/ts-client/api/resources/chats/client/requests/index.d.ts +34 -0
  75. package/dist/types/sdk/generated/ts-client/api/resources/chats/index.d.ts +2 -0
  76. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatBoxListTasksResponse.d.ts +4 -0
  77. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatBoxStopTaskResponse.d.ts +3 -0
  78. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsEventsRequestAccept.d.ts +4 -0
  79. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsHistoryRequestAnchor.d.ts +4 -0
  80. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsListResponse.d.ts +6 -0
  81. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsResendResponse.d.ts +3 -0
  82. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsRespondResponse.d.ts +3 -0
  83. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsRunsResponse.d.ts +6 -0
  84. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsSendResponse.d.ts +15 -0
  85. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/ChatsStopResponse.d.ts +3 -0
  86. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/MarkReadChatsResponse.d.ts +6 -0
  87. package/dist/types/sdk/generated/ts-client/api/resources/chats/types/index.d.ts +11 -0
  88. package/dist/types/sdk/generated/ts-client/api/resources/files/client/Client.d.ts +180 -0
  89. package/dist/types/sdk/generated/ts-client/api/resources/files/client/index.d.ts +1 -0
  90. package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/CreateUploadFilesRequest.d.ts +17 -0
  91. package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/FilesCompleteRequest.d.ts +11 -0
  92. package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/FilesContentRequest.d.ts +9 -0
  93. package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/FilesDeleteRequest.d.ts +9 -0
  94. package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/FilesGetRequest.d.ts +9 -0
  95. package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/FilesUploadRequest.d.ts +14 -0
  96. package/dist/types/sdk/generated/ts-client/api/resources/files/client/requests/index.d.ts +6 -0
  97. package/dist/types/sdk/generated/ts-client/api/resources/files/index.d.ts +2 -0
  98. package/dist/types/sdk/generated/ts-client/api/resources/files/types/CreateUploadFilesResponse.d.ts +6 -0
  99. package/dist/types/sdk/generated/ts-client/api/resources/files/types/index.d.ts +1 -0
  100. package/dist/types/sdk/generated/ts-client/api/resources/identity/client/Client.d.ts +42 -0
  101. package/dist/types/sdk/generated/ts-client/api/resources/identity/client/index.d.ts +1 -0
  102. package/dist/types/sdk/generated/ts-client/api/resources/identity/client/requests/MeFeedRequest.d.ts +10 -0
  103. package/dist/types/sdk/generated/ts-client/api/resources/identity/client/requests/index.d.ts +1 -0
  104. package/dist/types/sdk/generated/ts-client/api/resources/identity/index.d.ts +2 -0
  105. package/dist/types/sdk/generated/ts-client/api/resources/identity/types/MeFeedRequestAccept.d.ts +4 -0
  106. package/dist/types/sdk/generated/ts-client/api/resources/identity/types/MeWhoamiResponse.d.ts +2 -0
  107. package/dist/types/sdk/generated/ts-client/api/resources/identity/types/index.d.ts +2 -0
  108. package/dist/types/sdk/generated/ts-client/api/resources/index.d.ts +18 -0
  109. package/dist/types/sdk/generated/ts-client/api/resources/machines/client/Client.d.ts +152 -0
  110. package/dist/types/sdk/generated/ts-client/api/resources/machines/client/index.d.ts +1 -0
  111. package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/MachinesDeleteRequest.d.ts +9 -0
  112. package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/MachinesGetRequest.d.ts +9 -0
  113. package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/MachinesListRequest.d.ts +13 -0
  114. package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/MachinesPairRequest.d.ts +10 -0
  115. package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/PairingStatusMachinesRequest.d.ts +9 -0
  116. package/dist/types/sdk/generated/ts-client/api/resources/machines/client/requests/index.d.ts +5 -0
  117. package/dist/types/sdk/generated/ts-client/api/resources/machines/index.d.ts +2 -0
  118. package/dist/types/sdk/generated/ts-client/api/resources/machines/types/MachinesListResponse.d.ts +6 -0
  119. package/dist/types/sdk/generated/ts-client/api/resources/machines/types/index.d.ts +1 -0
  120. package/dist/types/sdk/generated/ts-client/api/resources/providers/client/Client.d.ts +212 -0
  121. package/dist/types/sdk/generated/ts-client/api/resources/providers/client/index.d.ts +1 -0
  122. package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersCompleteRequest.d.ts +14 -0
  123. package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersConnectRequest.d.ts +12 -0
  124. package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersDisconnectRequest.d.ts +12 -0
  125. package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersLimitsRequest.d.ts +11 -0
  126. package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersListRequest.d.ts +7 -0
  127. package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersLoginStatusRequest.d.ts +10 -0
  128. package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/MyProvidersSetKeyRequest.d.ts +13 -0
  129. package/dist/types/sdk/generated/ts-client/api/resources/providers/client/requests/index.d.ts +7 -0
  130. package/dist/types/sdk/generated/ts-client/api/resources/providers/index.d.ts +2 -0
  131. package/dist/types/sdk/generated/ts-client/api/resources/providers/types/MyProvidersConnectResponse.d.ts +10 -0
  132. package/dist/types/sdk/generated/ts-client/api/resources/providers/types/MyProvidersDisconnectRequestVia.d.ts +5 -0
  133. package/dist/types/sdk/generated/ts-client/api/resources/providers/types/MyProvidersListResponse.d.ts +4 -0
  134. package/dist/types/sdk/generated/ts-client/api/resources/providers/types/index.d.ts +3 -0
  135. package/dist/types/sdk/generated/ts-client/api/types/Agent.d.ts +84 -0
  136. package/dist/types/sdk/generated/ts-client/api/types/AgentCredential.d.ts +7 -0
  137. package/dist/types/sdk/generated/ts-client/api/types/AgentHooks.d.ts +11 -0
  138. package/dist/types/sdk/generated/ts-client/api/types/AgentLimits.d.ts +11 -0
  139. package/dist/types/sdk/generated/ts-client/api/types/AgentMessageOrigin.d.ts +12 -0
  140. package/dist/types/sdk/generated/ts-client/api/types/AgentProviderOption.d.ts +11 -0
  141. package/dist/types/sdk/generated/ts-client/api/types/AgentPublic.d.ts +18 -0
  142. package/dist/types/sdk/generated/ts-client/api/types/AgentTheme.d.ts +14 -0
  143. package/dist/types/sdk/generated/ts-client/api/types/BoxFileContent.d.ts +17 -0
  144. package/dist/types/sdk/generated/ts-client/api/types/BoxFileEntry.d.ts +15 -0
  145. package/dist/types/sdk/generated/ts-client/api/types/BoxFileList.d.ts +5 -0
  146. package/dist/types/sdk/generated/ts-client/api/types/BoxProfile.d.ts +9 -0
  147. package/dist/types/sdk/generated/ts-client/api/types/Chat.d.ts +39 -0
  148. package/dist/types/sdk/generated/ts-client/api/types/ChatContext.d.ts +18 -0
  149. package/dist/types/sdk/generated/ts-client/api/types/ChatDeleted.d.ts +15 -0
  150. package/dist/types/sdk/generated/ts-client/api/types/ChatSelection.d.ts +40 -0
  151. package/dist/types/sdk/generated/ts-client/api/types/ChatTask.d.ts +32 -0
  152. package/dist/types/sdk/generated/ts-client/api/types/ChatTaskOutput.d.ts +9 -0
  153. package/dist/types/sdk/generated/ts-client/api/types/ChatUsage.d.ts +19 -0
  154. package/dist/types/sdk/generated/ts-client/api/types/Deleted.d.ts +4 -0
  155. package/dist/types/sdk/generated/ts-client/api/types/DeviceFlow.d.ts +11 -0
  156. package/dist/types/sdk/generated/ts-client/api/types/ErrorBody.d.ts +12 -0
  157. package/dist/types/sdk/generated/ts-client/api/types/Error_.d.ts +4 -0
  158. package/dist/types/sdk/generated/ts-client/api/types/EventRange.d.ts +15 -0
  159. package/dist/types/sdk/generated/ts-client/api/types/EventsAgentId.d.ts +4 -0
  160. package/dist/types/sdk/generated/ts-client/api/types/EventsAgentSelection.d.ts +14 -0
  161. package/dist/types/sdk/generated/ts-client/api/types/EventsApprovalOption.d.ts +24 -0
  162. package/dist/types/sdk/generated/ts-client/api/types/EventsCapabilities.d.ts +146 -0
  163. package/dist/types/sdk/generated/ts-client/api/types/EventsChatId.d.ts +4 -0
  164. package/dist/types/sdk/generated/ts-client/api/types/EventsContentFile.d.ts +15 -0
  165. package/dist/types/sdk/generated/ts-client/api/types/EventsContentImage.d.ts +11 -0
  166. package/dist/types/sdk/generated/ts-client/api/types/EventsContentPart.d.ts +19 -0
  167. package/dist/types/sdk/generated/ts-client/api/types/EventsContentResource.d.ts +13 -0
  168. package/dist/types/sdk/generated/ts-client/api/types/EventsContentText.d.ts +7 -0
  169. package/dist/types/sdk/generated/ts-client/api/types/EventsDelta.d.ts +21 -0
  170. package/dist/types/sdk/generated/ts-client/api/types/EventsEAgentSwitchFailed.d.ts +21 -0
  171. package/dist/types/sdk/generated/ts-client/api/types/EventsEAgentSwitchFailedData.d.ts +9 -0
  172. package/dist/types/sdk/generated/ts-client/api/types/EventsEAgentSwitched.d.ts +21 -0
  173. package/dist/types/sdk/generated/ts-client/api/types/EventsEAgentSwitchedData.d.ts +12 -0
  174. package/dist/types/sdk/generated/ts-client/api/types/EventsEChatState.d.ts +21 -0
  175. package/dist/types/sdk/generated/ts-client/api/types/EventsEChatStateData.d.ts +17 -0
  176. package/dist/types/sdk/generated/ts-client/api/types/EventsEContextUpdated.d.ts +21 -0
  177. package/dist/types/sdk/generated/ts-client/api/types/EventsEContextUpdatedData.d.ts +20 -0
  178. package/dist/types/sdk/generated/ts-client/api/types/EventsEError.d.ts +21 -0
  179. package/dist/types/sdk/generated/ts-client/api/types/EventsEErrorData.d.ts +13 -0
  180. package/dist/types/sdk/generated/ts-client/api/types/EventsEItemCompleted.d.ts +21 -0
  181. package/dist/types/sdk/generated/ts-client/api/types/EventsEItemCompletedData.d.ts +8 -0
  182. package/dist/types/sdk/generated/ts-client/api/types/EventsEItemDelta.d.ts +21 -0
  183. package/dist/types/sdk/generated/ts-client/api/types/EventsEItemDeltaData.d.ts +7 -0
  184. package/dist/types/sdk/generated/ts-client/api/types/EventsEItemRetracted.d.ts +21 -0
  185. package/dist/types/sdk/generated/ts-client/api/types/EventsEItemRetractedData.d.ts +18 -0
  186. package/dist/types/sdk/generated/ts-client/api/types/EventsEItemStarted.d.ts +21 -0
  187. package/dist/types/sdk/generated/ts-client/api/types/EventsEItemStartedData.d.ts +8 -0
  188. package/dist/types/sdk/generated/ts-client/api/types/EventsEItemUpdated.d.ts +21 -0
  189. package/dist/types/sdk/generated/ts-client/api/types/EventsEItemUpdatedData.d.ts +7 -0
  190. package/dist/types/sdk/generated/ts-client/api/types/EventsELimitsUpdated.d.ts +21 -0
  191. package/dist/types/sdk/generated/ts-client/api/types/EventsENotice.d.ts +21 -0
  192. package/dist/types/sdk/generated/ts-client/api/types/EventsENoticeData.d.ts +19 -0
  193. package/dist/types/sdk/generated/ts-client/api/types/EventsERunCompleted.d.ts +21 -0
  194. package/dist/types/sdk/generated/ts-client/api/types/EventsERunCompletedData.d.ts +35 -0
  195. package/dist/types/sdk/generated/ts-client/api/types/EventsERunStarted.d.ts +21 -0
  196. package/dist/types/sdk/generated/ts-client/api/types/EventsERunStartedData.d.ts +23 -0
  197. package/dist/types/sdk/generated/ts-client/api/types/EventsERunWaiting.d.ts +21 -0
  198. package/dist/types/sdk/generated/ts-client/api/types/EventsERunWaitingData.d.ts +22 -0
  199. package/dist/types/sdk/generated/ts-client/api/types/EventsESessionStarted.d.ts +21 -0
  200. package/dist/types/sdk/generated/ts-client/api/types/EventsESessionStartedData.d.ts +46 -0
  201. package/dist/types/sdk/generated/ts-client/api/types/EventsETaskUpdated.d.ts +21 -0
  202. package/dist/types/sdk/generated/ts-client/api/types/EventsETaskUpdatedData.d.ts +7 -0
  203. package/dist/types/sdk/generated/ts-client/api/types/EventsEUsageUpdated.d.ts +21 -0
  204. package/dist/types/sdk/generated/ts-client/api/types/EventsEUsageUpdatedData.d.ts +9 -0
  205. package/dist/types/sdk/generated/ts-client/api/types/EventsErrorCode.d.ts +21 -0
  206. package/dist/types/sdk/generated/ts-client/api/types/EventsEvent.d.ts +61 -0
  207. package/dist/types/sdk/generated/ts-client/api/types/EventsFailure.d.ts +17 -0
  208. package/dist/types/sdk/generated/ts-client/api/types/EventsFailureReason.d.ts +16 -0
  209. package/dist/types/sdk/generated/ts-client/api/types/EventsFileId.d.ts +4 -0
  210. package/dist/types/sdk/generated/ts-client/api/types/EventsHandoffInjected.d.ts +29 -0
  211. package/dist/types/sdk/generated/ts-client/api/types/EventsHandoffLost.d.ts +24 -0
  212. package/dist/types/sdk/generated/ts-client/api/types/EventsInboxEntry.d.ts +52 -0
  213. package/dist/types/sdk/generated/ts-client/api/types/EventsInboxState.d.ts +50 -0
  214. package/dist/types/sdk/generated/ts-client/api/types/EventsItem.d.ts +64 -0
  215. package/dist/types/sdk/generated/ts-client/api/types/EventsItemApproval.d.ts +93 -0
  216. package/dist/types/sdk/generated/ts-client/api/types/EventsItemCommand.d.ts +74 -0
  217. package/dist/types/sdk/generated/ts-client/api/types/EventsItemCompaction.d.ts +55 -0
  218. package/dist/types/sdk/generated/ts-client/api/types/EventsItemError.d.ts +40 -0
  219. package/dist/types/sdk/generated/ts-client/api/types/EventsItemFileChange.d.ts +73 -0
  220. package/dist/types/sdk/generated/ts-client/api/types/EventsItemFileSearch.d.ts +61 -0
  221. package/dist/types/sdk/generated/ts-client/api/types/EventsItemHandoff.d.ts +66 -0
  222. package/dist/types/sdk/generated/ts-client/api/types/EventsItemHook.d.ts +49 -0
  223. package/dist/types/sdk/generated/ts-client/api/types/EventsItemId.d.ts +4 -0
  224. package/dist/types/sdk/generated/ts-client/api/types/EventsItemNotification.d.ts +65 -0
  225. package/dist/types/sdk/generated/ts-client/api/types/EventsItemPlan.d.ts +65 -0
  226. package/dist/types/sdk/generated/ts-client/api/types/EventsItemProposedPlan.d.ts +43 -0
  227. package/dist/types/sdk/generated/ts-client/api/types/EventsItemQuestion.d.ts +81 -0
  228. package/dist/types/sdk/generated/ts-client/api/types/EventsItemReasoning.d.ts +47 -0
  229. package/dist/types/sdk/generated/ts-client/api/types/EventsItemSubagent.d.ts +56 -0
  230. package/dist/types/sdk/generated/ts-client/api/types/EventsItemText.d.ts +49 -0
  231. package/dist/types/sdk/generated/ts-client/api/types/EventsItemTimer.d.ts +46 -0
  232. package/dist/types/sdk/generated/ts-client/api/types/EventsItemToolCall.d.ts +76 -0
  233. package/dist/types/sdk/generated/ts-client/api/types/EventsItemUserMessage.d.ts +67 -0
  234. package/dist/types/sdk/generated/ts-client/api/types/EventsItemWebSearch.d.ts +74 -0
  235. package/dist/types/sdk/generated/ts-client/api/types/EventsLimitWindow.d.ts +26 -0
  236. package/dist/types/sdk/generated/ts-client/api/types/EventsLimits.d.ts +46 -0
  237. package/dist/types/sdk/generated/ts-client/api/types/EventsMessageId.d.ts +4 -0
  238. package/dist/types/sdk/generated/ts-client/api/types/EventsModelUsage.d.ts +19 -0
  239. package/dist/types/sdk/generated/ts-client/api/types/EventsNativeRef.d.ts +17 -0
  240. package/dist/types/sdk/generated/ts-client/api/types/EventsOrigin.d.ts +37 -0
  241. package/dist/types/sdk/generated/ts-client/api/types/EventsProvider.d.ts +4 -0
  242. package/dist/types/sdk/generated/ts-client/api/types/EventsRawFrame.d.ts +18 -0
  243. package/dist/types/sdk/generated/ts-client/api/types/EventsRequestId.d.ts +4 -0
  244. package/dist/types/sdk/generated/ts-client/api/types/EventsRunAgent.d.ts +27 -0
  245. package/dist/types/sdk/generated/ts-client/api/types/EventsRunId.d.ts +4 -0
  246. package/dist/types/sdk/generated/ts-client/api/types/EventsRunTrigger.d.ts +29 -0
  247. package/dist/types/sdk/generated/ts-client/api/types/EventsScheduledSwitch.d.ts +11 -0
  248. package/dist/types/sdk/generated/ts-client/api/types/EventsStopId.d.ts +4 -0
  249. package/dist/types/sdk/generated/ts-client/api/types/EventsSwitchId.d.ts +4 -0
  250. package/dist/types/sdk/generated/ts-client/api/types/EventsTask.d.ts +45 -0
  251. package/dist/types/sdk/generated/ts-client/api/types/EventsTaskId.d.ts +4 -0
  252. package/dist/types/sdk/generated/ts-client/api/types/EventsTaskProgress.d.ts +15 -0
  253. package/dist/types/sdk/generated/ts-client/api/types/EventsTimestamp.d.ts +4 -0
  254. package/dist/types/sdk/generated/ts-client/api/types/EventsToolOutput.d.ts +16 -0
  255. package/dist/types/sdk/generated/ts-client/api/types/EventsUsage.d.ts +34 -0
  256. package/dist/types/sdk/generated/ts-client/api/types/FileObject.d.ts +24 -0
  257. package/dist/types/sdk/generated/ts-client/api/types/HistoryEntry.d.ts +10 -0
  258. package/dist/types/sdk/generated/ts-client/api/types/HistoryPage.d.ts +24 -0
  259. package/dist/types/sdk/generated/ts-client/api/types/LoginStatus.d.ts +15 -0
  260. package/dist/types/sdk/generated/ts-client/api/types/Machine.d.ts +43 -0
  261. package/dist/types/sdk/generated/ts-client/api/types/McpServer.d.ts +13 -0
  262. package/dist/types/sdk/generated/ts-client/api/types/MessageReceipt.d.ts +21 -0
  263. package/dist/types/sdk/generated/ts-client/api/types/Metadata.d.ts +4 -0
  264. package/dist/types/sdk/generated/ts-client/api/types/ModelInfo.d.ts +12 -0
  265. package/dist/types/sdk/generated/ts-client/api/types/MyProviderStatus.d.ts +61 -0
  266. package/dist/types/sdk/generated/ts-client/api/types/OAuthFlow.d.ts +9 -0
  267. package/dist/types/sdk/generated/ts-client/api/types/Pairing.d.ts +18 -0
  268. package/dist/types/sdk/generated/ts-client/api/types/Placement.d.ts +38 -0
  269. package/dist/types/sdk/generated/ts-client/api/types/PreTurnHook.d.ts +21 -0
  270. package/dist/types/sdk/generated/ts-client/api/types/Principal.d.ts +30 -0
  271. package/dist/types/sdk/generated/ts-client/api/types/ProviderKind.d.ts +5 -0
  272. package/dist/types/sdk/generated/ts-client/api/types/ProviderLimits.d.ts +44 -0
  273. package/dist/types/sdk/generated/ts-client/api/types/ProviderStatus.d.ts +53 -0
  274. package/dist/types/sdk/generated/ts-client/api/types/QueueResult.d.ts +5 -0
  275. package/dist/types/sdk/generated/ts-client/api/types/RunSummary.d.ts +30 -0
  276. package/dist/types/sdk/generated/ts-client/api/types/Scope.d.ts +35 -0
  277. package/dist/types/sdk/generated/ts-client/api/types/SwitchResult.d.ts +19 -0
  278. package/dist/types/sdk/generated/ts-client/api/types/Timestamp.d.ts +4 -0
  279. package/dist/types/sdk/generated/ts-client/api/types/ToolPrincipal.d.ts +29 -0
  280. package/dist/types/sdk/generated/ts-client/api/types/index.d.ts +145 -0
  281. package/dist/types/sdk/generated/ts-client/auth/BearerAuthProvider.d.ts +20 -0
  282. package/dist/types/sdk/generated/ts-client/core/auth/AuthProvider.d.ts +8 -0
  283. package/dist/types/sdk/generated/ts-client/core/auth/AuthRequest.d.ts +9 -0
  284. package/dist/types/sdk/generated/ts-client/core/auth/BasicAuth.d.ts +8 -0
  285. package/dist/types/sdk/generated/ts-client/core/auth/BearerToken.d.ts +7 -0
  286. package/dist/types/sdk/generated/ts-client/core/auth/NoOpAuthProvider.d.ts +5 -0
  287. package/dist/types/sdk/generated/ts-client/core/auth/index.d.ts +5 -0
  288. package/dist/types/sdk/generated/ts-client/core/base64.d.ts +2 -0
  289. package/dist/types/sdk/generated/ts-client/core/exports.d.ts +3 -0
  290. package/dist/types/sdk/generated/ts-client/core/fetcher/APIResponse.d.ts +20 -0
  291. package/dist/types/sdk/generated/ts-client/core/fetcher/BinaryResponse.d.ts +19 -0
  292. package/dist/types/sdk/generated/ts-client/core/fetcher/EndpointMetadata.d.ts +13 -0
  293. package/dist/types/sdk/generated/ts-client/core/fetcher/EndpointSupplier.d.ts +12 -0
  294. package/dist/types/sdk/generated/ts-client/core/fetcher/Fetcher.d.ts +56 -0
  295. package/dist/types/sdk/generated/ts-client/core/fetcher/Headers.d.ts +2 -0
  296. package/dist/types/sdk/generated/ts-client/core/fetcher/HttpResponsePromise.d.ts +58 -0
  297. package/dist/types/sdk/generated/ts-client/core/fetcher/RawResponse.d.ts +29 -0
  298. package/dist/types/sdk/generated/ts-client/core/fetcher/Supplier.d.ts +4 -0
  299. package/dist/types/sdk/generated/ts-client/core/fetcher/createRequestUrl.d.ts +1 -0
  300. package/dist/types/sdk/generated/ts-client/core/fetcher/getErrorResponseBody.d.ts +1 -0
  301. package/dist/types/sdk/generated/ts-client/core/fetcher/getFetchFn.d.ts +1 -0
  302. package/dist/types/sdk/generated/ts-client/core/fetcher/getHeader.d.ts +1 -0
  303. package/dist/types/sdk/generated/ts-client/core/fetcher/getRequestBody.d.ts +7 -0
  304. package/dist/types/sdk/generated/ts-client/core/fetcher/getResponseBody.d.ts +17 -0
  305. package/dist/types/sdk/generated/ts-client/core/fetcher/index.d.ts +13 -0
  306. package/dist/types/sdk/generated/ts-client/core/fetcher/makePassthroughRequest.d.ts +49 -0
  307. package/dist/types/sdk/generated/ts-client/core/fetcher/makeRequest.d.ts +11 -0
  308. package/dist/types/sdk/generated/ts-client/core/fetcher/redactUrl.d.ts +2 -0
  309. package/dist/types/sdk/generated/ts-client/core/fetcher/requestWithRetries.d.ts +1 -0
  310. package/dist/types/sdk/generated/ts-client/core/fetcher/signals.d.ts +6 -0
  311. package/dist/types/sdk/generated/ts-client/core/file/exports.d.ts +1 -0
  312. package/dist/types/sdk/generated/ts-client/core/file/file.d.ts +10 -0
  313. package/dist/types/sdk/generated/ts-client/core/file/index.d.ts +2 -0
  314. package/dist/types/sdk/generated/ts-client/core/file/types.d.ts +66 -0
  315. package/dist/types/sdk/generated/ts-client/core/form-data-utils/FormDataWrapper.d.ts +15 -0
  316. package/dist/types/sdk/generated/ts-client/core/form-data-utils/encodeAsFormParameter.d.ts +1 -0
  317. package/dist/types/sdk/generated/ts-client/core/form-data-utils/index.d.ts +2 -0
  318. package/dist/types/sdk/generated/ts-client/core/headers.d.ts +2 -0
  319. package/dist/types/sdk/generated/ts-client/core/index.d.ts +11 -0
  320. package/dist/types/sdk/generated/ts-client/core/json.d.ts +15 -0
  321. package/dist/types/sdk/generated/ts-client/core/logging/exports.d.ts +18 -0
  322. package/dist/types/sdk/generated/ts-client/core/logging/index.d.ts +1 -0
  323. package/dist/types/sdk/generated/ts-client/core/logging/logger.d.ts +126 -0
  324. package/dist/types/sdk/generated/ts-client/core/pagination/Page.d.ts +33 -0
  325. package/dist/types/sdk/generated/ts-client/core/pagination/exports.d.ts +1 -0
  326. package/dist/types/sdk/generated/ts-client/core/pagination/index.d.ts +1 -0
  327. package/dist/types/sdk/generated/ts-client/core/requestBody.d.ts +12 -0
  328. package/dist/types/sdk/generated/ts-client/core/runtime/index.d.ts +1 -0
  329. package/dist/types/sdk/generated/ts-client/core/runtime/runtime.d.ts +28 -0
  330. package/dist/types/sdk/generated/ts-client/core/stream/Stream.d.ts +103 -0
  331. package/dist/types/sdk/generated/ts-client/core/stream/index.d.ts +2 -0
  332. package/dist/types/sdk/generated/ts-client/core/url/QueryStringBuilder.d.ts +47 -0
  333. package/dist/types/sdk/generated/ts-client/core/url/encodePathParam.d.ts +3 -0
  334. package/dist/types/sdk/generated/ts-client/core/url/index.d.ts +4 -0
  335. package/dist/types/sdk/generated/ts-client/core/url/join.d.ts +1 -0
  336. package/dist/types/sdk/generated/ts-client/core/url/qs.d.ts +7 -0
  337. package/dist/types/sdk/generated/ts-client/core/utils/index.d.ts +1 -0
  338. package/dist/types/sdk/generated/ts-client/core/utils/setObjectProperty.d.ts +12 -0
  339. package/dist/types/sdk/generated/ts-client/environments.d.ts +4 -0
  340. package/dist/types/sdk/generated/ts-client/errors/SmoothAgentApiError.d.ts +15 -0
  341. package/dist/types/sdk/generated/ts-client/errors/SmoothAgentApiTimeoutError.d.ts +6 -0
  342. package/dist/types/sdk/generated/ts-client/errors/handleNonStatusCodeError.d.ts +2 -0
  343. package/dist/types/sdk/generated/ts-client/errors/index.d.ts +2 -0
  344. package/dist/types/sdk/generated/ts-client/exports.d.ts +1 -0
  345. package/dist/types/sdk/generated/ts-client/index.d.ts +6 -0
  346. package/dist/types/sdk/ts/client/src/index.d.ts +85 -0
  347. package/dist/types/sdk/ts/client/src/testing.d.ts +71 -0
  348. package/dist/types/sdk/ts/core-live/src/auth.d.ts +40 -0
  349. package/dist/types/sdk/ts/core-live/src/backoff.d.ts +9 -0
  350. package/dist/types/sdk/ts/core-live/src/client.d.ts +89 -0
  351. package/dist/types/sdk/ts/core-live/src/deps.d.ts +63 -0
  352. package/dist/types/sdk/ts/core-live/src/edge.d.ts +73 -0
  353. package/dist/types/sdk/ts/core-live/src/feed.d.ts +66 -0
  354. package/dist/types/sdk/ts/core-live/src/ids.d.ts +7 -0
  355. package/dist/types/sdk/ts/core-live/src/index.d.ts +11 -0
  356. package/dist/types/sdk/ts/core-live/src/native.d.ts +7 -0
  357. package/dist/types/sdk/ts/core-live/src/prompt.d.ts +81 -0
  358. package/dist/types/sdk/ts/core-live/src/providers.d.ts +187 -0
  359. package/dist/types/sdk/ts/core-live/src/reducers/contract.d.ts +18 -0
  360. package/dist/types/sdk/ts/core-live/src/rest.d.ts +48 -0
  361. package/dist/types/sdk/ts/core-live/src/stream.d.ts +145 -0
  362. package/dist/types/sdk/ts/core-live/src/types.d.ts +55 -0
  363. package/dist/types/sdk/ts/core-live/src/wasm/bytes.d.ts +1 -0
  364. package/dist/types/sdk/ts/core-live/src/wasm/empty.d.ts +1 -0
  365. package/dist/types/sdk/ts/core-live/src/wasm/live.d.ts +278 -0
  366. package/dist/types/sdk/ts/core-live/src/watch.d.ts +299 -0
  367. package/package.json +39 -4
@@ -0,0 +1,9 @@
1
+ export interface BackoffPolicy {
2
+ baseMs: number;
3
+ factor: number;
4
+ capVisibleMs: number;
5
+ capHiddenMs: number;
6
+ /** Só zera o contador depois de ficar de pé este tempo. */
7
+ stableMs: number;
8
+ }
9
+ export declare const DEFAULT_BACKOFF: BackoffPolicy;
@@ -0,0 +1,89 @@
1
+ import { TokenSource } from './auth.js';
2
+ import { type Clock, type LiveEnv, type SocketLike } from './deps.js';
3
+ import type { DebugEvent, Violation } from './stream.js';
4
+ import type { ContentPart, Envelope, SendMode } from './types.js';
5
+ import { LiveChat, type HistoryPage, type Reducer, type WatchOptions } from './watch.js';
6
+ import { RunHandle } from './prompt.js';
7
+ import type { HistoryPage as ControlHistoryPage } from '../../../generated/ts-client/api/types/HistoryPage.js';
8
+ import { ChatListLive } from './feed.js';
9
+ export interface LiveClientOptions<S, I> {
10
+ /** a base da API, ex. `https://smoothagent-v3-api.uaibuilder.workers.dev` (white-label: só isto muda). */
11
+ baseUrl: string;
12
+ token?: string;
13
+ getToken?: () => Promise<string>;
14
+ /** Ignorado: o reducer é o do contrato, no núcleo Rust (mantido pra compatibilidade). */
15
+ reducer?: Reducer<S, I>;
16
+ fetch?: typeof fetch;
17
+ WebSocket?: new (url: string, protocols: string[]) => SocketLike;
18
+ clock?: Clock;
19
+ env?: LiveEnv;
20
+ keepAliveMs?: number;
21
+ onDebug?(chatId: string, e: DebugEvent): void;
22
+ /** Modo estrito (testes): buraco vira violação em vez de resync. */
23
+ strict?: boolean;
24
+ onViolation?(chatId: string, v: Violation): void;
25
+ /** Revogado: a sessão acabou (o app volta pro login dele). */
26
+ onAuthRevoked?(): void;
27
+ /** Opções repassadas a cada stream (testes e ajuste fino). */
28
+ stream?: Partial<Omit<WatchOptions<S, I>, 'chatId' | 'reducer'>>;
29
+ }
30
+ export declare class LiveClient<S, I = unknown> {
31
+ private readonly o;
32
+ readonly tokens: TokenSource;
33
+ /** `fetch` com o token e a regra do 401 (a SDK gerada usa o mesmo). */
34
+ readonly fetch: typeof fetch;
35
+ private readonly clock;
36
+ private readonly entries;
37
+ private readonly lists;
38
+ private readonly api;
39
+ constructor(o: LiveClientOptions<S, I>);
40
+ /** O estado ao vivo do chat. Chame `close()` no handle quando a tela desmontar. */
41
+ watch(chatId: string): LiveChat<S, I> & {
42
+ release(): void;
43
+ };
44
+ /**
45
+ * Eventos crus, já sem duplicado/buraco e com a troca de transporte. Termina no `return()`/break.
46
+ * - `after`: começa DEPOIS deste seq (retomar de onde parou: todo evento de `after+1` em diante, sem snapshot);
47
+ * sem `after`, começa no estado atual (o snapshot do servidor; `onSnapshot(seq)` diz até onde ele cobre).
48
+ * - `onSnapshot(seq)`: o servidor mandou um snapshot em vez dos eventos — os anteriores a `seq` NÃO vêm
49
+ * (início sem `after`, ou resync depois de um buraco que não fechou). Nunca pula em silêncio (M46).
50
+ * - `includeRaw`: os eventos trazem o `raw` do provedor.
51
+ * Um socket próprio (não o do `watch()`), pra o cursor ser só dele.
52
+ */
53
+ events(chatId: string, o?: {
54
+ after?: number;
55
+ includeRaw?: boolean;
56
+ onSnapshot?(seq: number): void;
57
+ }): AsyncGenerator<Envelope, void, undefined>;
58
+ /** Manda e acompanha só esse run. `result` nunca rejeita por transporte. */
59
+ prompt(chatId: string, content: string | ContentPart[], opts?: {
60
+ mode?: SendMode;
61
+ attachments?: string[];
62
+ messageId?: string;
63
+ metadata?: Record<string, string>;
64
+ }): RunHandle;
65
+ /** A lista lateral ao vivo (UserFeed): título, estado, esperando o quê, não lidas. Filtro por agente aqui. */
66
+ watchList(filter?: {
67
+ agentId?: string;
68
+ }): ChatListLive;
69
+ /** Marca como lido até `seq` (vale pra todos os dispositivos do usuário; o feed atualiza o unreadCount). */
70
+ markRead(chatId: string, seq: number): Promise<void>;
71
+ /** Fecha tudo agora. */
72
+ close(): void;
73
+ private release;
74
+ private watchOptions;
75
+ private deps;
76
+ /**
77
+ * O caminho durável do `send` (REST `SendMessage`): a mesma fila fria do ChatLog, deduplicada pelo
78
+ * `clientMessageId` (= o messageId do socket) e pela Idempotency-Key (a mesma). Falha passageira: repete com
79
+ * espera (`untilStored`) e, esgotado, rejeita; recusa do servidor = `rejected` com o código do §6.
80
+ */
81
+ private postMessage;
82
+ private json;
83
+ }
84
+ /**
85
+ * A página do `GET /v3/chats/{id}/history` do contrato (tipo GERADO): cada entrada é o EVENTO que fechou
86
+ * um item (`entry.event`, um Events.Event) + o `seq` dele. Vira envelope do log e passa pelo reducer do
87
+ * contrato como qualquer evento (`item.completed` traz o item em `data.item`). Ids de evento vêm em string.
88
+ */
89
+ export declare function fromControlPage(_chatId: string, p: ControlHistoryPage): HistoryPage;
@@ -0,0 +1,63 @@
1
+ import type { ChatSnapshot, Envelope } from './types.js';
2
+ /** O mínimo de um WebSocket (browser, React Native, Node ≥ 22, Bun, Deno ou um falso de teste). */
3
+ export interface SocketLike {
4
+ readonly readyState: number;
5
+ send(data: string): void;
6
+ close(code?: number, reason?: string): void;
7
+ onopen: ((ev?: unknown) => void) | null;
8
+ onmessage: ((ev: {
9
+ data: unknown;
10
+ }) => void) | null;
11
+ onclose: ((ev: {
12
+ code: number;
13
+ reason: string;
14
+ }) => void) | null;
15
+ onerror: ((ev?: unknown) => void) | null;
16
+ }
17
+ export type OpenSocket = (url: string, protocols: string[]) => SocketLike;
18
+ export interface Clock {
19
+ now(): number;
20
+ setTimeout(fn: () => void, ms: number): unknown;
21
+ clearTimeout(handle: unknown): void;
22
+ }
23
+ export interface LiveEnv {
24
+ /** false = sabemos que não há rede (navigator.onLine). */
25
+ online(): boolean;
26
+ /** Primeiro plano? (visibilitychange / AppState). Muda o teto do backoff. */
27
+ visible(): boolean;
28
+ /** Rede voltou, aba voltou pro primeiro plano, foco: acorda o retry na hora. Devolve o "desligar". */
29
+ onWake(cb: (why: 'online' | 'visible' | 'focus' | 'manual', awayMs?: number) => void): () => void;
30
+ }
31
+ export interface LiveDeps {
32
+ /** URL do conector (o WebSocket do ChatLog): `wss://…/v3/chats/:id/live`. */
33
+ connectorUrl(chatId: string): string;
34
+ openSocket: OpenSocket;
35
+ /** Token do usuário (ou chave), já com a renovação single-flight (auth.ts). */
36
+ token(): Promise<string>;
37
+ /** O servidor disse que o token venceu: a próxima `token()` tem que trazer um novo. */
38
+ invalidateToken?(): void;
39
+ /** Pedaço do log por REST, quando não há socket que responda o `fetch`. */
40
+ eventsRange?(chatId: string, from: number, to: number): Promise<{
41
+ events: Envelope[];
42
+ range: {
43
+ from: number;
44
+ to: number;
45
+ };
46
+ }>;
47
+ /**
48
+ * O WebSocket não mostra o HTTP de um upgrade recusado (o navegador só dá 1006). Quando o conector nem
49
+ * chega a abrir, a SDK pergunta aqui (REST `GET /chats/{id}`) se é falta de acesso, pra não religar pra sempre.
50
+ */
51
+ probeAccess?(chatId: string): Promise<'ok' | 'unauthorized' | 'forbidden'>;
52
+ /** Snapshot por REST (resync sem socket). */
53
+ snapshot?(chatId: string): Promise<ChatSnapshot>;
54
+ clock: Clock;
55
+ env: LiveEnv;
56
+ }
57
+ export declare const PROTOCOL = "smoothagent.v3";
58
+ /** A auto-resposta hibernável do DO compara a STRING EXATA (realtime: PING/PONG). Qualquer outra forma acorda o DO. */
59
+ export declare const PING = "{\"t\":\"ping\"}";
60
+ export declare const PONG = "{\"t\":\"pong\"}";
61
+ export declare const systemClock: Clock;
62
+ /** Ambiente neutro (Node/servidor): sempre online e visível, sem eventos de wakeup. */
63
+ export declare const serverEnv: LiveEnv;
@@ -0,0 +1,73 @@
1
+ import type { LiveDeps } from './deps.js';
2
+ export type Env = [now: number, online: boolean, visible: boolean, rand: number];
3
+ /** As entradas que todo núcleo (LiveSession, LiveWatch) aceita; cada uma devolve os efeitos em JSON. */
4
+ export interface CoreLike {
5
+ tick(...e: Env): string;
6
+ on_open(...a: [...Env, number]): string;
7
+ on_message(...a: [...Env, number, string]): string;
8
+ on_error(...a: [...Env, number]): string;
9
+ on_close(...a: [...Env, number, number, string]): string;
10
+ on_open_failed(...a: [...Env, number]): string;
11
+ on_token(...a: [...Env, number, boolean, string]): string;
12
+ on_probe(...a: [...Env, number, boolean, string]): string;
13
+ on_range(...a: [...Env, number, boolean, string, number, number]): string;
14
+ on_snapshot(...a: [...Env, number, boolean, string]): string;
15
+ next_deadline(): number;
16
+ }
17
+ export type IoFx = {
18
+ k: 'token' | 'probe' | 'snapshot';
19
+ req: number;
20
+ } | {
21
+ k: 'invalidateToken';
22
+ } | {
23
+ k: 'range';
24
+ req: number;
25
+ from: number;
26
+ to: number;
27
+ } | {
28
+ k: 'open';
29
+ conn: number;
30
+ via: string;
31
+ url: string;
32
+ protocols: string[];
33
+ } | {
34
+ k: 'send';
35
+ conn: number;
36
+ text: string;
37
+ } | {
38
+ k: 'close';
39
+ conn: number;
40
+ code: number;
41
+ reason: string;
42
+ };
43
+ /** Um efeito que não é IO (cada casca trata os seus). */
44
+ export type OtherFx = {
45
+ k: string;
46
+ [x: string]: unknown;
47
+ };
48
+ export declare class Edge<C extends CoreLike> {
49
+ private readonly d;
50
+ private readonly chatId;
51
+ private readonly random;
52
+ private readonly handle;
53
+ private readonly sockets;
54
+ private timer;
55
+ private stopped;
56
+ /** O núcleo desta casca; `null` até o wasm carregar (as entradas esperam em `pending`, em ordem). */
57
+ core: C | null;
58
+ private pending;
59
+ constructor(make: () => C, d: LiveDeps, chatId: string, random: () => number, handle: (f: OtherFx) => void);
60
+ /** Roda `fn` com o núcleo: na hora se já carregou, senão na ordem em que foi pedido, quando carregar. */
61
+ when(fn: (c: C) => void): void;
62
+ env(): Env;
63
+ /** Uma entrada pro núcleo; executa os efeitos devolvidos, em ordem; re-arma o timer. */
64
+ run(input: (c: C, e: Env) => string): void;
65
+ /** Executa uma lista de efeitos já devolvida (quando quem chamou precisou do JSON antes). */
66
+ exec(fx: Array<IoFx | OtherFx>): void;
67
+ /** Para tudo (depois do close do núcleo): sem timer, sem novas entradas. */
68
+ stop(): void;
69
+ private arm;
70
+ private disarm;
71
+ private one;
72
+ private open;
73
+ }
@@ -0,0 +1,66 @@
1
+ import type { Clock, LiveEnv, OpenSocket } from './deps.js';
2
+ import type { BoxPresence } from './types.js';
3
+ export interface ChatRow {
4
+ chatId: string;
5
+ agentId: string;
6
+ title?: string;
7
+ state: string;
8
+ waiting?: 'approval' | 'question' | 'input';
9
+ box?: BoxPresence;
10
+ lastEventSeq: number;
11
+ updatedAt: string;
12
+ lastReadSeq: number;
13
+ unreadCount: number;
14
+ }
15
+ export type FeedFrame = {
16
+ t: 'feed';
17
+ version: number;
18
+ rows: ChatRow[];
19
+ } | {
20
+ t: 'row';
21
+ version: number;
22
+ row: ChatRow;
23
+ } | {
24
+ t: 'removed';
25
+ version: number;
26
+ chatId: string;
27
+ } | {
28
+ t: 'hello';
29
+ tokenExpiresAt?: number;
30
+ } | {
31
+ t: 'bye';
32
+ reason: string;
33
+ reconnect: string;
34
+ } | {
35
+ t: 'pong';
36
+ };
37
+ export type FeedStatus = 'connecting' | 'live' | 'reconnecting' | 'offline' | 'auth_failed' | 'forbidden' | 'closed';
38
+ export interface FeedState {
39
+ version: number;
40
+ /** Ordenadas por `updatedAt` (mais recente primeiro), já filtradas por agente se pedido. */
41
+ rows: ChatRow[];
42
+ status: FeedStatus;
43
+ }
44
+ export interface FeedDeps {
45
+ url: string;
46
+ openSocket: OpenSocket;
47
+ token(): Promise<string>;
48
+ invalidateToken?(): void;
49
+ clock: Clock;
50
+ env: LiveEnv;
51
+ }
52
+ /** CASCA FINA sobre o núcleo Rust (`Feed`): a borda comum executa o IO; o estado chega pronto. */
53
+ export declare class ChatListLive {
54
+ private readonly d;
55
+ private readonly edge;
56
+ private state;
57
+ private readonly listeners;
58
+ private readonly unWake;
59
+ private closed;
60
+ constructor(d: FeedDeps, filter?: {
61
+ agentId?: string;
62
+ });
63
+ getState: () => FeedState;
64
+ subscribe: (cb: (s: FeedState) => void) => (() => void);
65
+ close(): void;
66
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * `messageId` gerado no cliente: `msg_` + UUIDv7 (contrato control: `^msg_[A-Za-z0-9_-]{8,64}$`).
3
+ * É a idempotência e o dedupe do log; o prefixo separa mensagem de número de evento no `history?around=`.
4
+ */
5
+ export declare function newMessageId(nowMs?: number): string;
6
+ /** UUIDv7 (ordenável no tempo). */
7
+ export declare function uuidv7(nowMs?: number): string;
@@ -0,0 +1,11 @@
1
+ export { LiveClient, type LiveClientOptions } from './client.js';
2
+ export { LiveChat, SendNotConfirmedError, CommandAbortedError, SEND_FALLBACK_MS, newMessageId, uuidv7, type HistoryPage, type HistoryQuery, type HistoryWindow, type LocalSend, type Reducer, type WatchDeps, type SwitchTo, type WatchOptions, type WatchState } from './watch.js';
3
+ export { RunHandle, PromptRejectedError, type RunEvent, type RunOutcome, type RunResult } from './prompt.js';
4
+ export { ChatStream, ERROR_CODES, ERROR_CODE_HTTP, errorCode, type ErrorCode, type DebugEvent, type LiveStatus, type StreamListener, type StreamOptions, type Via, type Violation } from './stream.js';
5
+ export { TokenSource, authedFetch, jwtExpiresAt, SmoothAgentAuthError, type AuthErrorReason } from './auth.js';
6
+ export { DEFAULT_BACKOFF, type BackoffPolicy } from './backoff.js';
7
+ export { ChatListLive, type ChatRow, type FeedState, type FeedStatus } from './feed.js';
8
+ export { PING, PONG, PROTOCOL, serverEnv, systemClock, type Clock, type LiveDeps, type LiveEnv, type OpenSocket, type SocketLike } from './deps.js';
9
+ export type * from './types.js';
10
+ export { toContentParts } from './types.js';
11
+ export { loadCore } from './native.js';
@@ -0,0 +1,7 @@
1
+ import * as live from './wasm/live.js';
2
+ /** Carrega o núcleo (uma vez). A camada ao vivo chama sozinha; chamar antes só adianta o download. */
3
+ export declare function loadCore(): Promise<typeof live>;
4
+ /** O núcleo, se já carregou (senão `null`: quem usa enfileira até `loadCore()` resolver). */
5
+ export declare function coreIfReady(): typeof live | null;
6
+ /** O núcleo já carregado; antes disso é erro (use `loadCore()`). */
7
+ export declare function core(): typeof live;
@@ -0,0 +1,81 @@
1
+ import type { ContentPart, Envelope, SendMode } from './types.js';
2
+ import type { LiveChat } from './watch.js';
3
+ export type RunOutcome = 'completed' | 'stopped' | 'failed' | 'not_delivered' | 'cancelled';
4
+ export interface RunResult {
5
+ status: RunOutcome;
6
+ messageId: string;
7
+ runId?: string;
8
+ text: string;
9
+ /** Itens fechados deste run (o `data.item` dos item.completed). */
10
+ items: unknown[];
11
+ usage?: unknown;
12
+ error?: unknown;
13
+ /** Só em `not_delivered`: `not_consumed` = a box dormiu várias vezes sem o provedor ler; ausente = STOP antes do turno. */
14
+ notDeliveredReason?: string;
15
+ }
16
+ export type RunEvent = {
17
+ type: 'queued';
18
+ } | {
19
+ type: 'started';
20
+ runId: string;
21
+ } | {
22
+ type: 'text';
23
+ delta: string;
24
+ text: string;
25
+ } | {
26
+ type: 'item';
27
+ item: unknown;
28
+ } | {
29
+ type: 'event';
30
+ event: Envelope;
31
+ } | {
32
+ type: 'done';
33
+ result: RunResult;
34
+ };
35
+ export declare class PromptRejectedError extends Error {
36
+ readonly code: string;
37
+ constructor(code: string, message: string);
38
+ }
39
+ export declare class RunHandle implements AsyncIterable<RunEvent> {
40
+ private readonly live;
41
+ private readonly onSettled?;
42
+ readonly result: Promise<RunResult>;
43
+ state: 'sending' | 'queued' | 'running' | 'done';
44
+ messageId: string;
45
+ runId: string | undefined;
46
+ private resolve;
47
+ private reject;
48
+ private readonly handlers;
49
+ private readonly buffer;
50
+ private wakeIterators;
51
+ private text;
52
+ private readonly items;
53
+ private readonly untap;
54
+ private unselect;
55
+ constructor(live: LiveChat<unknown, unknown>, content: string | ContentPart[], opts?: {
56
+ mode?: SendMode;
57
+ attachments?: string[];
58
+ messageId?: string;
59
+ metadata?: Record<string, string>;
60
+ }, onSettled?: (() => void) | undefined);
61
+ on<K extends RunEvent['type']>(type: K, cb: (e: Extract<RunEvent, {
62
+ type: K;
63
+ }>) => void): this;
64
+ /** STOP do chat (o run é dele). O `result` resolve com `stopped` quando o run fechar. */
65
+ stop(): Promise<unknown>;
66
+ /** Para de ouvir; o agente segue. O `result` resolve com `cancelled`. */
67
+ cancel(): void;
68
+ [Symbol.asyncIterator](): AsyncIterator<RunEvent>;
69
+ private watchQueue;
70
+ private onEvent;
71
+ /**
72
+ * O texto do run = os itens `text` fechados. Um steer no Codex CORTA a resposta em andamento
73
+ * (`steerBoundary: 'model_call'`): o parcial fecha `interrupted` e outra resposta começa já com o
74
+ * steer — a resposta final é a que completou; o parcial cortado só entra se não houver outra.
75
+ */
76
+ private finalText;
77
+ private settle;
78
+ private fail;
79
+ private cleanup;
80
+ private emit;
81
+ }
@@ -0,0 +1,187 @@
1
+ import type { Clock } from './deps.js';
2
+ /** Um provedor como a API devolve (`/me/providers` ou dentro de uma conexão). */
3
+ export interface ProviderRow {
4
+ provider: string;
5
+ connected: boolean;
6
+ via: string[];
7
+ expiresAt?: string | null;
8
+ /** ok | expiring (renova sozinho no próximo uso) | dead (reconectar) | disconnected. */
9
+ status: 'ok' | 'expiring' | 'dead' | 'disconnected';
10
+ message?: string;
11
+ models: {
12
+ id: string;
13
+ name?: string;
14
+ }[];
15
+ connect: string[];
16
+ /** `/me/providers`: algum agente do usuário roda neste provedor. Ausente nas conexões do workspace. */
17
+ needed?: boolean;
18
+ }
19
+ /** O início de um login, como a API devolve (`connect`). */
20
+ export type LoginStart = {
21
+ kind: 'oauth';
22
+ loginId: string;
23
+ url: string;
24
+ expiresAt: string;
25
+ } | {
26
+ kind: 'device';
27
+ loginId: string;
28
+ url: string;
29
+ userCode: string;
30
+ expiresAt: string;
31
+ };
32
+ /** As rotas de UM dono. A cola (client/server) monta isto com o REST gerado. */
33
+ export interface ProviderEndpoints {
34
+ list(): Promise<ProviderRow[]>;
35
+ connect(provider: string): Promise<LoginStart>;
36
+ complete(loginId: string, code: string): Promise<unknown>;
37
+ loginStatus(loginId: string): Promise<{
38
+ status: string;
39
+ error?: {
40
+ code?: string;
41
+ message?: string;
42
+ };
43
+ }>;
44
+ setKey(provider: string, key: string): Promise<unknown>;
45
+ disconnect(provider: string, via?: 'subscription' | 'key'): Promise<unknown>;
46
+ }
47
+ /** O estado de um fluxo de conectar. `error` no pending = falha que dá pra tentar de novo (código errado, rede). */
48
+ export type ConnectState = {
49
+ status: 'starting';
50
+ provider: string;
51
+ } | {
52
+ status: 'pending';
53
+ provider: string;
54
+ kind: 'oauth';
55
+ url: string;
56
+ expiresAt: string;
57
+ submitting: boolean;
58
+ error?: string;
59
+ } | {
60
+ status: 'pending';
61
+ provider: string;
62
+ kind: 'device';
63
+ userCode: string;
64
+ verificationUrl: string;
65
+ expiresAt: string;
66
+ error?: string;
67
+ } | {
68
+ status: 'connected';
69
+ provider: string;
70
+ } | {
71
+ status: 'expired';
72
+ provider: string;
73
+ } | {
74
+ status: 'failed';
75
+ provider: string;
76
+ message: string;
77
+ code?: string;
78
+ } | {
79
+ status: 'cancelled';
80
+ provider: string;
81
+ };
82
+ export type ConnectStatus = ConnectState['status'];
83
+ /** Um login em andamento. `subscribe`/`getState` servem o `useSyncExternalStore`. */
84
+ export interface ConnectFlow {
85
+ readonly provider: string;
86
+ getState(): ConnectState;
87
+ subscribe(fn: (s: ConnectState) => void): () => void;
88
+ /** Só OAuth: o código que o site mostrou. Código errado = continua `pending` com `error` (cole de novo). */
89
+ complete(code: string): Promise<ConnectState>;
90
+ /** Para de esperar (o login no servidor vence sozinho). */
91
+ cancel(): void;
92
+ /** Resolve no estado final: connected | expired | failed | cancelled. Nunca rejeita. */
93
+ readonly done: Promise<ConnectState>;
94
+ }
95
+ /** Um provedor na tela: a linha da API + o fluxo de conectar dele + a ação de chave/desconectar em curso. */
96
+ export interface ProviderEntry extends ProviderRow {
97
+ /** Em que seção desenhar (ver `sortProviders`). */
98
+ group: ProviderGroup;
99
+ /** O login aberto (ou o último que falhou/venceu, até o próximo `connect`/`dismiss`). */
100
+ flow: ConnectState | null;
101
+ /** `setKey`/`disconnect` em curso. */
102
+ busy: 'key' | 'disconnect' | null;
103
+ /** O erro da última `setKey`/`disconnect` (limpo na próxima ação). */
104
+ error: string | null;
105
+ }
106
+ export interface ProvidersState {
107
+ /** Ordenada: os que algum agente do usuário usa (`needed`) primeiro, depois os outros, na ordem da API. */
108
+ rows: ProviderEntry[];
109
+ loading: boolean;
110
+ /** Falha ao carregar a lista. */
111
+ error: string | null;
112
+ }
113
+ export interface ProviderSetOptions {
114
+ clock: Clock;
115
+ /** Os provedores do agente/chat aberto (ex.: `agent.needs` ou `[agent.provider]`): vêm primeiro. Troque com `setPrimary`. */
116
+ primary?: readonly string[];
117
+ /** Intervalo do poll do device (padrão 2 s). */
118
+ pollMs?: number;
119
+ /** Folga sobre o `expiresAt` do servidor antes de dar `expired` localmente (relógio do aparelho torto; padrão 30 s). */
120
+ graceMs?: number;
121
+ }
122
+ export declare const PROVIDER_POLL_MS = 2000;
123
+ /** O grupo da linha na tela: os do agente/chat (`primary`), os que algum agente do usuário usa (`needed`), o resto. */
124
+ export type ProviderGroup = 'primary' | 'needed' | 'other';
125
+ export declare const groupOf: (r: {
126
+ provider: string;
127
+ needed?: boolean;
128
+ }, primary?: readonly string[]) => ProviderGroup;
129
+ /** Ordena: `primary` (na ordem dada) → `needed` → o resto; estável. A lista nunca é filtrada. */
130
+ export declare function sortProviders<R extends {
131
+ provider: string;
132
+ needed?: boolean;
133
+ }>(rows: readonly R[], primary?: readonly string[]): R[];
134
+ /** Texto curto de um erro do REST pra tela (sem nada do pedido). */
135
+ export declare function errorMessage(e: unknown): string;
136
+ /** Só http(s): URL de login com outro esquema (javascript:, data:) não chega na tela. */
137
+ export declare function safeLoginUrl(url: unknown): string | null;
138
+ /**
139
+ * Os provedores de UM dono, prontos pra tela: lista ordenada, conectar (OAuth/device, com o poll aqui dentro), chave,
140
+ * desconectar. Recarrega a lista sozinho depois de cada mudança. `release()` quando a tela desmontar.
141
+ */
142
+ export declare class ProviderSet {
143
+ private readonly ep;
144
+ private state;
145
+ private raw;
146
+ private flows;
147
+ private last;
148
+ private busy;
149
+ private errors;
150
+ private subs;
151
+ private loadSeq;
152
+ private released;
153
+ private readonly o;
154
+ private primary;
155
+ constructor(ep: ProviderEndpoints, o: ProviderSetOptions);
156
+ getState: () => ProvidersState;
157
+ subscribe: (fn: (s: ProvidersState) => void) => (() => void);
158
+ /** Busca a lista de novo (a resposta mais nova vence). */
159
+ reload: () => Promise<void>;
160
+ /** Abre o login: Claude → `oauth` (abra `url`, cole o código em `complete`); Codex → `device` (mostre `userCode`). */
161
+ connect: (provider: string) => ConnectFlow;
162
+ /** O login aberto deste provedor, se houver. */
163
+ flow(provider: string): ConnectFlow | null;
164
+ /** Troca os provedores que vêm primeiro (o chat mudou de agente). Não busca de novo. */
165
+ setPrimary: (primary: readonly string[] | undefined) => void;
166
+ /** Some com o erro/expirado que ficou na linha. */
167
+ dismiss: (provider: string) => void;
168
+ /** Chave própria. Rejeita com o erro da API (e o deixa na linha); a chave nunca fica guardada. */
169
+ setKey: (provider: string, key: string) => Promise<void>;
170
+ disconnect: (provider: string, via?: "subscription" | "key") => Promise<void>;
171
+ /** Cancela os logins abertos e para de avisar. */
172
+ release: () => void;
173
+ private act;
174
+ private emit;
175
+ }
176
+ type Method = (req: never, opts?: never) => PromiseLike<unknown>;
177
+ /** O que a SDK gerada tem pra `/me/providers` (o mesmo no client e no server). */
178
+ export type GeneratedMyProviders = Record<'myProvidersList' | 'myProvidersConnect' | 'myProvidersComplete' | 'myProvidersLoginStatus' | 'myProvidersSetKey' | 'myProvidersDisconnect', Method>;
179
+ /** O que a SDK gerada (server) tem pra `/connections`. */
180
+ export type GeneratedConnections = Record<'get' | 'connect' | 'complete' | 'loginStatus' | 'setKey' | 'disconnect', Method>;
181
+ /** As rotas do usuário (`/me/providers`), com a gerada. */
182
+ export declare function myProviderEndpoints(g: GeneratedMyProviders): ProviderEndpoints;
183
+ /** As rotas de uma conexão do workspace (`/connections/{id}`), com a gerada: a mesma forma do usuário. */
184
+ export declare function connectionProviderEndpoints(g: GeneratedConnections, id: string): ProviderEndpoints;
185
+ /** A gerada + métodos a mais (os da gerada continuam presos a ela). */
186
+ export declare function withExtra<G extends object, E extends object>(gen: G, extra: E): G & E;
187
+ export {};
@@ -0,0 +1,18 @@
1
+ import type { ChatState } from '../types.js';
2
+ import type { Reducer } from '../watch.js';
3
+ /**
4
+ * O `ChatState` GERADO do contrato (contract/events, auditoria H23), com os itens vistos pela lente solta
5
+ * `ContractItem` (o app lê campos do item sem estreitar a união `Item` por `kind`).
6
+ */
7
+ export type ContractChatState = Omit<ChatState, 'items'> & {
8
+ items: Record<string, ContractItem>;
9
+ };
10
+ export interface ContractItem {
11
+ id: string;
12
+ kind: string;
13
+ status?: string;
14
+ /** `user_message`: o metadata que o app mandou com a mensagem (ausente quando não houve; o agente nunca vê). */
15
+ metadata?: Record<string, string>;
16
+ [k: string]: unknown;
17
+ }
18
+ export declare const contractReducer: Reducer<ContractChatState, ContractItem>;
@@ -0,0 +1,48 @@
1
+ import type { Clock } from './deps.js';
2
+ import type { ErrorCode } from './types.js';
3
+ /** Cabeçalho padrão do cliente gerado: uma chave nova por chamada (a mesma em todas as tentativas dela). */
4
+ export declare function idempotencyHeaders(): Record<string, () => string>;
5
+ /** Tentativas do `send` além do retry do gerador (que não cobre queda de rede): ~1+2+4+8+16 s. */
6
+ export declare const SEND_ATTEMPTS = 6;
7
+ /**
8
+ * Falha passageira: rede caiu (sem status), timeout, 408/429/5xx, ou 409 `retryable` (a mesma chave ainda em
9
+ * andamento) — a menos que o corpo diga `retryable:false`.
10
+ */
11
+ export declare function transient(e: unknown, errors: {
12
+ api: abstract new (...a: never[]) => unknown;
13
+ timeout: abstract new (...a: never[]) => unknown;
14
+ }): boolean;
15
+ /** O corpo de erro do contrato (`{ error: ErrorBody }`, §6). */
16
+ export interface ApiErrorBody {
17
+ code: ErrorCode;
18
+ message: string;
19
+ retryable: boolean;
20
+ /** o campo culpado em `invalid_request` */
21
+ param?: string;
22
+ requestId?: string;
23
+ /** dados do código: `reason`, `resetsAt`, `scope`… */
24
+ details?: Record<string, unknown>;
25
+ }
26
+ /**
27
+ * O corpo tipado de um erro do REST (`SmoothAgentApiError`), ou `undefined` se não for um (rede, timeout,
28
+ * outro erro). Código fora da lista do §6 vira `internal` (versão nova do servidor não quebra a tela).
29
+ */
30
+ export declare function apiErrorBody(e: unknown): ApiErrorBody | undefined;
31
+ /**
32
+ * Faz o `send` até gravar: o `clientMessageId` é gerado UMA vez (antes do 1º envio) e vira também a
33
+ * Idempotency-Key; na falha passageira repete o MESMO pedido com espera. O log responde `duplicate`/a mesma
34
+ * resposta se o primeiro já tinha gravado.
35
+ */
36
+ export declare function sendBody<R extends {
37
+ clientMessageId?: string;
38
+ 'Idempotency-Key'?: string;
39
+ }>(req: R): R & {
40
+ clientMessageId: string;
41
+ 'Idempotency-Key': string;
42
+ };
43
+ export declare function untilStored<T>(call: () => Promise<T>, o: {
44
+ clock: Clock;
45
+ abortSignal?: AbortSignal;
46
+ isTransient(e: unknown): boolean;
47
+ attempts?: number;
48
+ }): Promise<T>;