@honcho-ai/core 1.0.0

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 (277) hide show
  1. package/CHANGELOG.md +344 -0
  2. package/LICENSE +201 -0
  3. package/README.md +322 -0
  4. package/_shims/MultipartBody.d.ts +9 -0
  5. package/_shims/MultipartBody.d.ts.map +1 -0
  6. package/_shims/MultipartBody.js +16 -0
  7. package/_shims/MultipartBody.js.map +1 -0
  8. package/_shims/MultipartBody.mjs +12 -0
  9. package/_shims/MultipartBody.mjs.map +1 -0
  10. package/_shims/README.md +46 -0
  11. package/_shims/auto/runtime-bun.d.ts +5 -0
  12. package/_shims/auto/runtime-bun.d.ts.map +1 -0
  13. package/_shims/auto/runtime-bun.js +21 -0
  14. package/_shims/auto/runtime-bun.js.map +1 -0
  15. package/_shims/auto/runtime-bun.mjs +2 -0
  16. package/_shims/auto/runtime-bun.mjs.map +1 -0
  17. package/_shims/auto/runtime-node.d.ts +5 -0
  18. package/_shims/auto/runtime-node.d.ts.map +1 -0
  19. package/_shims/auto/runtime-node.js +21 -0
  20. package/_shims/auto/runtime-node.js.map +1 -0
  21. package/_shims/auto/runtime-node.mjs +2 -0
  22. package/_shims/auto/runtime-node.mjs.map +1 -0
  23. package/_shims/auto/runtime.d.ts +5 -0
  24. package/_shims/auto/runtime.d.ts.map +1 -0
  25. package/_shims/auto/runtime.js +21 -0
  26. package/_shims/auto/runtime.js.map +1 -0
  27. package/_shims/auto/runtime.mjs +2 -0
  28. package/_shims/auto/runtime.mjs.map +1 -0
  29. package/_shims/auto/types-node.d.ts +5 -0
  30. package/_shims/auto/types-node.d.ts.map +1 -0
  31. package/_shims/auto/types-node.js +21 -0
  32. package/_shims/auto/types-node.js.map +1 -0
  33. package/_shims/auto/types-node.mjs +2 -0
  34. package/_shims/auto/types-node.mjs.map +1 -0
  35. package/_shims/auto/types.d.ts +101 -0
  36. package/_shims/auto/types.js +3 -0
  37. package/_shims/auto/types.mjs +3 -0
  38. package/_shims/bun-runtime.d.ts +6 -0
  39. package/_shims/bun-runtime.d.ts.map +1 -0
  40. package/_shims/bun-runtime.js +14 -0
  41. package/_shims/bun-runtime.js.map +1 -0
  42. package/_shims/bun-runtime.mjs +10 -0
  43. package/_shims/bun-runtime.mjs.map +1 -0
  44. package/_shims/index.d.ts +83 -0
  45. package/_shims/index.js +17 -0
  46. package/_shims/index.mjs +11 -0
  47. package/_shims/manual-types.d.ts +12 -0
  48. package/_shims/manual-types.js +3 -0
  49. package/_shims/manual-types.mjs +3 -0
  50. package/_shims/node-runtime.d.ts +3 -0
  51. package/_shims/node-runtime.d.ts.map +1 -0
  52. package/_shims/node-runtime.js +89 -0
  53. package/_shims/node-runtime.js.map +1 -0
  54. package/_shims/node-runtime.mjs +56 -0
  55. package/_shims/node-runtime.mjs.map +1 -0
  56. package/_shims/node-types.d.ts +42 -0
  57. package/_shims/node-types.js +3 -0
  58. package/_shims/node-types.mjs +3 -0
  59. package/_shims/registry.d.ts +37 -0
  60. package/_shims/registry.d.ts.map +1 -0
  61. package/_shims/registry.js +41 -0
  62. package/_shims/registry.js.map +1 -0
  63. package/_shims/registry.mjs +37 -0
  64. package/_shims/registry.mjs.map +1 -0
  65. package/_shims/web-runtime.d.ts +5 -0
  66. package/_shims/web-runtime.d.ts.map +1 -0
  67. package/_shims/web-runtime.js +78 -0
  68. package/_shims/web-runtime.js.map +1 -0
  69. package/_shims/web-runtime.mjs +71 -0
  70. package/_shims/web-runtime.mjs.map +1 -0
  71. package/_shims/web-types.d.ts +83 -0
  72. package/_shims/web-types.js +3 -0
  73. package/_shims/web-types.mjs +3 -0
  74. package/core.d.ts +255 -0
  75. package/core.d.ts.map +1 -0
  76. package/core.js +922 -0
  77. package/core.js.map +1 -0
  78. package/core.mjs +890 -0
  79. package/core.mjs.map +1 -0
  80. package/error.d.ts +47 -0
  81. package/error.d.ts.map +1 -0
  82. package/error.js +113 -0
  83. package/error.js.map +1 -0
  84. package/error.mjs +97 -0
  85. package/error.mjs.map +1 -0
  86. package/index.d.mts +134 -0
  87. package/index.d.ts +134 -0
  88. package/index.d.ts.map +1 -0
  89. package/index.js +141 -0
  90. package/index.js.map +1 -0
  91. package/index.mjs +98 -0
  92. package/index.mjs.map +1 -0
  93. package/package.json +103 -0
  94. package/pagination.d.ts +30 -0
  95. package/pagination.d.ts.map +1 -0
  96. package/pagination.js +39 -0
  97. package/pagination.js.map +1 -0
  98. package/pagination.mjs +35 -0
  99. package/pagination.mjs.map +1 -0
  100. package/resource.d.ts +6 -0
  101. package/resource.d.ts.map +1 -0
  102. package/resource.js +11 -0
  103. package/resource.js.map +1 -0
  104. package/resource.mjs +7 -0
  105. package/resource.mjs.map +1 -0
  106. package/resources/index.d.ts +3 -0
  107. package/resources/index.d.ts.map +1 -0
  108. package/resources/index.js +10 -0
  109. package/resources/index.js.map +1 -0
  110. package/resources/index.mjs +4 -0
  111. package/resources/index.mjs.map +1 -0
  112. package/resources/keys.d.ts +29 -0
  113. package/resources/keys.d.ts.map +1 -0
  114. package/resources/keys.js +20 -0
  115. package/resources/keys.js.map +1 -0
  116. package/resources/keys.mjs +16 -0
  117. package/resources/keys.mjs.map +1 -0
  118. package/resources/workspaces/index.d.ts +4 -0
  119. package/resources/workspaces/index.d.ts.map +1 -0
  120. package/resources/workspaces/index.js +14 -0
  121. package/resources/workspaces/index.js.map +1 -0
  122. package/resources/workspaces/index.mjs +5 -0
  123. package/resources/workspaces/index.mjs.map +1 -0
  124. package/resources/workspaces/peers/index.d.ts +4 -0
  125. package/resources/workspaces/peers/index.d.ts.map +1 -0
  126. package/resources/workspaces/peers/index.js +12 -0
  127. package/resources/workspaces/peers/index.js.map +1 -0
  128. package/resources/workspaces/peers/index.mjs +5 -0
  129. package/resources/workspaces/peers/index.mjs.map +1 -0
  130. package/resources/workspaces/peers/messages.d.ts +35 -0
  131. package/resources/workspaces/peers/messages.d.ts.map +1 -0
  132. package/resources/workspaces/peers/messages.js +25 -0
  133. package/resources/workspaces/peers/messages.js.map +1 -0
  134. package/resources/workspaces/peers/messages.mjs +21 -0
  135. package/resources/workspaces/peers/messages.mjs.map +1 -0
  136. package/resources/workspaces/peers/peers.d.ts +120 -0
  137. package/resources/workspaces/peers/peers.d.ts.map +1 -0
  138. package/resources/workspaces/peers/peers.js +108 -0
  139. package/resources/workspaces/peers/peers.js.map +1 -0
  140. package/resources/workspaces/peers/peers.mjs +80 -0
  141. package/resources/workspaces/peers/peers.mjs.map +1 -0
  142. package/resources/workspaces/peers/sessions.d.ts +27 -0
  143. package/resources/workspaces/peers/sessions.d.ts.map +1 -0
  144. package/resources/workspaces/peers/sessions.js +24 -0
  145. package/resources/workspaces/peers/sessions.js.map +1 -0
  146. package/resources/workspaces/peers/sessions.mjs +20 -0
  147. package/resources/workspaces/peers/sessions.mjs.map +1 -0
  148. package/resources/workspaces/peers.d.ts +2 -0
  149. package/resources/workspaces/peers.d.ts.map +1 -0
  150. package/resources/workspaces/peers.js +19 -0
  151. package/resources/workspaces/peers.js.map +1 -0
  152. package/resources/workspaces/peers.mjs +3 -0
  153. package/resources/workspaces/peers.mjs.map +1 -0
  154. package/resources/workspaces/sessions/index.d.ts +4 -0
  155. package/resources/workspaces/sessions/index.d.ts.map +1 -0
  156. package/resources/workspaces/sessions/index.js +13 -0
  157. package/resources/workspaces/sessions/index.js.map +1 -0
  158. package/resources/workspaces/sessions/index.mjs +5 -0
  159. package/resources/workspaces/sessions/index.mjs.map +1 -0
  160. package/resources/workspaces/sessions/messages.d.ts +60 -0
  161. package/resources/workspaces/sessions/messages.d.ts.map +1 -0
  162. package/resources/workspaces/sessions/messages.js +46 -0
  163. package/resources/workspaces/sessions/messages.js.map +1 -0
  164. package/resources/workspaces/sessions/messages.mjs +41 -0
  165. package/resources/workspaces/sessions/messages.mjs.map +1 -0
  166. package/resources/workspaces/sessions/peers.d.ts +96 -0
  167. package/resources/workspaces/sessions/peers.d.ts.map +1 -0
  168. package/resources/workspaces/sessions/peers.js +63 -0
  169. package/resources/workspaces/sessions/peers.js.map +1 -0
  170. package/resources/workspaces/sessions/peers.mjs +59 -0
  171. package/resources/workspaces/sessions/peers.mjs.map +1 -0
  172. package/resources/workspaces/sessions/sessions.d.ts +129 -0
  173. package/resources/workspaces/sessions/sessions.d.ts.map +1 -0
  174. package/resources/workspaces/sessions/sessions.js +110 -0
  175. package/resources/workspaces/sessions/sessions.js.map +1 -0
  176. package/resources/workspaces/sessions/sessions.mjs +82 -0
  177. package/resources/workspaces/sessions/sessions.mjs.map +1 -0
  178. package/resources/workspaces/sessions.d.ts +2 -0
  179. package/resources/workspaces/sessions.d.ts.map +1 -0
  180. package/resources/workspaces/sessions.js +19 -0
  181. package/resources/workspaces/sessions.js.map +1 -0
  182. package/resources/workspaces/sessions.mjs +3 -0
  183. package/resources/workspaces/sessions.mjs.map +1 -0
  184. package/resources/workspaces/workspaces.d.ts +69 -0
  185. package/resources/workspaces/workspaces.d.ts.map +1 -0
  186. package/resources/workspaces/workspaces.js +92 -0
  187. package/resources/workspaces/workspaces.js.map +1 -0
  188. package/resources/workspaces/workspaces.mjs +64 -0
  189. package/resources/workspaces/workspaces.mjs.map +1 -0
  190. package/resources/workspaces.d.ts +2 -0
  191. package/resources/workspaces.d.ts.map +1 -0
  192. package/resources/workspaces.js +19 -0
  193. package/resources/workspaces.js.map +1 -0
  194. package/resources/workspaces.mjs +3 -0
  195. package/resources/workspaces.mjs.map +1 -0
  196. package/resources.d.ts +2 -0
  197. package/resources.d.ts.map +1 -0
  198. package/resources.js +18 -0
  199. package/resources.js.map +1 -0
  200. package/resources.mjs +2 -0
  201. package/resources.mjs.map +1 -0
  202. package/shims/node.d.ts +30 -0
  203. package/shims/node.d.ts.map +1 -0
  204. package/shims/node.js +31 -0
  205. package/shims/node.js.map +1 -0
  206. package/shims/node.mjs +5 -0
  207. package/shims/node.mjs.map +1 -0
  208. package/shims/web.d.ts +26 -0
  209. package/shims/web.d.ts.map +1 -0
  210. package/shims/web.js +31 -0
  211. package/shims/web.js.map +1 -0
  212. package/shims/web.mjs +5 -0
  213. package/shims/web.mjs.map +1 -0
  214. package/src/_shims/MultipartBody.ts +9 -0
  215. package/src/_shims/README.md +46 -0
  216. package/src/_shims/auto/runtime-bun.ts +4 -0
  217. package/src/_shims/auto/runtime-node.ts +4 -0
  218. package/src/_shims/auto/runtime.ts +4 -0
  219. package/src/_shims/auto/types-node.ts +4 -0
  220. package/src/_shims/auto/types.d.ts +101 -0
  221. package/src/_shims/auto/types.js +3 -0
  222. package/src/_shims/auto/types.mjs +3 -0
  223. package/src/_shims/bun-runtime.ts +14 -0
  224. package/src/_shims/index.d.ts +83 -0
  225. package/src/_shims/index.js +17 -0
  226. package/src/_shims/index.mjs +11 -0
  227. package/src/_shims/manual-types.d.ts +12 -0
  228. package/src/_shims/manual-types.js +3 -0
  229. package/src/_shims/manual-types.mjs +3 -0
  230. package/src/_shims/node-runtime.ts +81 -0
  231. package/src/_shims/node-types.d.ts +42 -0
  232. package/src/_shims/node-types.js +3 -0
  233. package/src/_shims/node-types.mjs +3 -0
  234. package/src/_shims/registry.ts +67 -0
  235. package/src/_shims/web-runtime.ts +103 -0
  236. package/src/_shims/web-types.d.ts +83 -0
  237. package/src/_shims/web-types.js +3 -0
  238. package/src/_shims/web-types.mjs +3 -0
  239. package/src/core.ts +1234 -0
  240. package/src/error.ts +130 -0
  241. package/src/index.ts +246 -0
  242. package/src/lib/.keep +4 -0
  243. package/src/pagination.ts +73 -0
  244. package/src/resource.ts +11 -0
  245. package/src/resources/index.ts +12 -0
  246. package/src/resources/keys.ts +51 -0
  247. package/src/resources/workspaces/index.ts +39 -0
  248. package/src/resources/workspaces/peers/index.ts +24 -0
  249. package/src/resources/workspaces/peers/messages.ts +81 -0
  250. package/src/resources/workspaces/peers/peers.ts +245 -0
  251. package/src/resources/workspaces/peers/sessions.ts +60 -0
  252. package/src/resources/workspaces/peers.ts +3 -0
  253. package/src/resources/workspaces/sessions/index.ts +35 -0
  254. package/src/resources/workspaces/sessions/messages.ts +149 -0
  255. package/src/resources/workspaces/sessions/peers.ts +200 -0
  256. package/src/resources/workspaces/sessions/sessions.ts +308 -0
  257. package/src/resources/workspaces/sessions.ts +3 -0
  258. package/src/resources/workspaces/workspaces.ts +194 -0
  259. package/src/resources/workspaces.ts +3 -0
  260. package/src/resources.ts +1 -0
  261. package/src/shims/node.ts +50 -0
  262. package/src/shims/web.ts +50 -0
  263. package/src/tsconfig.json +11 -0
  264. package/src/uploads.ts +255 -0
  265. package/src/version.ts +1 -0
  266. package/uploads.d.ts +75 -0
  267. package/uploads.d.ts.map +1 -0
  268. package/uploads.js +171 -0
  269. package/uploads.js.map +1 -0
  270. package/uploads.mjs +158 -0
  271. package/uploads.mjs.map +1 -0
  272. package/version.d.ts +2 -0
  273. package/version.d.ts.map +1 -0
  274. package/version.js +5 -0
  275. package/version.js.map +1 -0
  276. package/version.mjs +2 -0
  277. package/version.mjs.map +1 -0
@@ -0,0 +1,308 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from "../../../resource.js";
4
+ import { isRequestOptions } from "../../../core.js";
5
+ import * as Core from "../../../core.js";
6
+ import * as MessagesAPI from "./messages.js";
7
+ import {
8
+ Message,
9
+ MessageCreate,
10
+ MessageCreateParams,
11
+ MessageCreateResponse,
12
+ MessageListParams,
13
+ MessageUpdateParams,
14
+ Messages,
15
+ MessagesPage,
16
+ } from "./messages.js";
17
+ import * as PeersAPI from "./peers.js";
18
+ import {
19
+ PeerAddParams,
20
+ PeerGetConfigResponse,
21
+ PeerListParams,
22
+ PeerRemoveParams,
23
+ PeerSetConfigParams,
24
+ PeerSetConfigResponse,
25
+ PeerSetParams,
26
+ Peers as PeersAPIPeers,
27
+ } from "./peers.js";
28
+ import { Page, type PageParams } from "../../../pagination.js";
29
+
30
+ export class Sessions extends APIResource {
31
+ messages: MessagesAPI.Messages = new MessagesAPI.Messages(this._client);
32
+ peers: PeersAPI.Peers = new PeersAPI.Peers(this._client);
33
+
34
+ /**
35
+ * Update the metadata of a Session
36
+ */
37
+ update(
38
+ workspaceId: string,
39
+ sessionId: string,
40
+ body: SessionUpdateParams,
41
+ options?: Core.RequestOptions,
42
+ ): Core.APIPromise<Session> {
43
+ return this._client.put(`/v1/workspaces/${workspaceId}/sessions/${sessionId}`, { body, ...options });
44
+ }
45
+
46
+ /**
47
+ * Get All Sessions in a Workspace
48
+ */
49
+ list(
50
+ workspaceId: string,
51
+ params?: SessionListParams,
52
+ options?: Core.RequestOptions,
53
+ ): Core.PagePromise<SessionsPage, Session>;
54
+ list(workspaceId: string, options?: Core.RequestOptions): Core.PagePromise<SessionsPage, Session>;
55
+ list(
56
+ workspaceId: string,
57
+ params: SessionListParams | Core.RequestOptions = {},
58
+ options?: Core.RequestOptions,
59
+ ): Core.PagePromise<SessionsPage, Session> {
60
+ if (isRequestOptions(params)) {
61
+ return this.list(workspaceId, {}, params);
62
+ }
63
+ const { page, size, ...body } = params;
64
+ return this._client.getAPIList(`/v1/workspaces/${workspaceId}/sessions/list`, SessionsPage, {
65
+ query: { page, size },
66
+ body,
67
+ method: 'post',
68
+ ...options,
69
+ });
70
+ }
71
+
72
+ /**
73
+ * Delete a session by marking it as inactive
74
+ */
75
+ delete(workspaceId: string, sessionId: string, options?: Core.RequestOptions): Core.APIPromise<unknown> {
76
+ return this._client.delete(`/v1/workspaces/${workspaceId}/sessions/${sessionId}`, options);
77
+ }
78
+
79
+ /**
80
+ * Clone a session, optionally up to a specific message
81
+ */
82
+ clone(
83
+ workspaceId: string,
84
+ sessionId: string,
85
+ query?: SessionCloneParams,
86
+ options?: Core.RequestOptions,
87
+ ): Core.APIPromise<Session>;
88
+ clone(workspaceId: string, sessionId: string, options?: Core.RequestOptions): Core.APIPromise<Session>;
89
+ clone(
90
+ workspaceId: string,
91
+ sessionId: string,
92
+ query: SessionCloneParams | Core.RequestOptions = {},
93
+ options?: Core.RequestOptions,
94
+ ): Core.APIPromise<Session> {
95
+ if (isRequestOptions(query)) {
96
+ return this.clone(workspaceId, sessionId, {}, query);
97
+ }
98
+ return this._client.get(`/v1/workspaces/${workspaceId}/sessions/${sessionId}/clone`, {
99
+ query,
100
+ ...options,
101
+ });
102
+ }
103
+
104
+ /**
105
+ * Produce a context object from the session. The caller provides a token limit
106
+ * which the entire context must fit into. To do this, we allocate 40% of the token
107
+ * limit to the summary, and 60% to recent messages -- as many as can fit. If the
108
+ * caller does not want a summary, we allocate all the tokens to recent messages.
109
+ * The default token limit if not provided is 2048. (TODO: make this configurable)
110
+ */
111
+ getContext(
112
+ workspaceId: string,
113
+ sessionId: string,
114
+ query?: SessionGetContextParams,
115
+ options?: Core.RequestOptions,
116
+ ): Core.APIPromise<SessionGetContextResponse>;
117
+ getContext(
118
+ workspaceId: string,
119
+ sessionId: string,
120
+ options?: Core.RequestOptions,
121
+ ): Core.APIPromise<SessionGetContextResponse>;
122
+ getContext(
123
+ workspaceId: string,
124
+ sessionId: string,
125
+ query: SessionGetContextParams | Core.RequestOptions = {},
126
+ options?: Core.RequestOptions,
127
+ ): Core.APIPromise<SessionGetContextResponse> {
128
+ if (isRequestOptions(query)) {
129
+ return this.getContext(workspaceId, sessionId, {}, query);
130
+ }
131
+ return this._client.get(`/v1/workspaces/${workspaceId}/sessions/${sessionId}/context`, {
132
+ query,
133
+ ...options,
134
+ });
135
+ }
136
+
137
+ /**
138
+ * Get a specific session in a workspace.
139
+ *
140
+ * If session_id is provided as a query parameter, it verifies the session is in
141
+ * the workspace. Otherwise, it uses the session_id from the JWT token for
142
+ * verification.
143
+ */
144
+ getOrCreate(
145
+ workspaceId: string,
146
+ body: SessionGetOrCreateParams,
147
+ options?: Core.RequestOptions,
148
+ ): Core.APIPromise<Session> {
149
+ return this._client.post(`/v1/workspaces/${workspaceId}/sessions`, { body, ...options });
150
+ }
151
+
152
+ /**
153
+ * Search a Session
154
+ */
155
+ search(
156
+ workspaceId: string,
157
+ sessionId: string,
158
+ params: SessionSearchParams,
159
+ options?: Core.RequestOptions,
160
+ ): Core.PagePromise<MessagesPage, MessagesAPI.Message> {
161
+ const { body, page, size } = params;
162
+ return this._client.getAPIList(
163
+ `/v1/workspaces/${workspaceId}/sessions/${sessionId}/search`,
164
+ MessagesPage,
165
+ { query: { page, size }, body: body, method: 'post', ...options },
166
+ );
167
+ }
168
+ }
169
+
170
+ export class SessionsPage extends Page<Session> {}
171
+
172
+ export interface Session {
173
+ id: string;
174
+
175
+ created_at: string;
176
+
177
+ is_active: boolean;
178
+
179
+ workspace_id: string;
180
+
181
+ configuration?: Record<string, unknown>;
182
+
183
+ metadata?: Record<string, unknown>;
184
+ }
185
+
186
+ export type SessionDeleteResponse = unknown;
187
+
188
+ export interface SessionGetContextResponse {
189
+ id: string;
190
+
191
+ messages: Array<MessagesAPI.Message>;
192
+
193
+ summary: string;
194
+ }
195
+
196
+ export interface SessionUpdateParams {
197
+ configuration?: Record<string, unknown> | null;
198
+
199
+ metadata?: Record<string, unknown> | null;
200
+ }
201
+
202
+ export interface SessionListParams extends PageParams {
203
+ /**
204
+ * Body param:
205
+ */
206
+ filter?: Record<string, unknown> | null;
207
+
208
+ /**
209
+ * Body param:
210
+ */
211
+ is_active?: boolean;
212
+ }
213
+
214
+ export interface SessionCloneParams {
215
+ /**
216
+ * Message ID to cut off the clone at
217
+ */
218
+ message_id?: string | null;
219
+ }
220
+
221
+ export interface SessionGetContextParams {
222
+ /**
223
+ * Whether to summarize the session history prior to the cutoff message
224
+ */
225
+ summary?: boolean;
226
+
227
+ /**
228
+ * Number of tokens to use for the context. Includes summary if set to true
229
+ */
230
+ tokens?: number | null;
231
+ }
232
+
233
+ export interface SessionGetOrCreateParams {
234
+ id: string;
235
+
236
+ configuration?: Record<string, unknown> | null;
237
+
238
+ metadata?: Record<string, unknown> | null;
239
+
240
+ peers?: Record<string, SessionGetOrCreateParams.Peers> | null;
241
+ }
242
+
243
+ export namespace SessionGetOrCreateParams {
244
+ export interface Peers {
245
+ /**
246
+ * Whether other peers in this session should try to form a session-level
247
+ * theory-of-mind representation of this peer
248
+ */
249
+ observe_me?: boolean;
250
+
251
+ /**
252
+ * Whether this peer should form a session-level theory-of-mind representation of
253
+ * other peers in the session
254
+ */
255
+ observe_others?: boolean;
256
+ }
257
+ }
258
+
259
+ export interface SessionSearchParams extends PageParams {
260
+ /**
261
+ * Body param: Search query
262
+ */
263
+ body: string;
264
+ }
265
+
266
+ Sessions.SessionsPage = SessionsPage;
267
+ Sessions.Messages = Messages;
268
+ Sessions.MessagesPage = MessagesPage;
269
+ Sessions.Peers = PeersAPIPeers;
270
+
271
+ export declare namespace Sessions {
272
+ export {
273
+ type Session as Session,
274
+ type SessionDeleteResponse as SessionDeleteResponse,
275
+ type SessionGetContextResponse as SessionGetContextResponse,
276
+ SessionsPage as SessionsPage,
277
+ type SessionUpdateParams as SessionUpdateParams,
278
+ type SessionListParams as SessionListParams,
279
+ type SessionCloneParams as SessionCloneParams,
280
+ type SessionGetContextParams as SessionGetContextParams,
281
+ type SessionGetOrCreateParams as SessionGetOrCreateParams,
282
+ type SessionSearchParams as SessionSearchParams,
283
+ };
284
+
285
+ export {
286
+ Messages as Messages,
287
+ type Message as Message,
288
+ type MessageCreate as MessageCreate,
289
+ type MessageCreateResponse as MessageCreateResponse,
290
+ MessagesPage as MessagesPage,
291
+ type MessageCreateParams as MessageCreateParams,
292
+ type MessageUpdateParams as MessageUpdateParams,
293
+ type MessageListParams as MessageListParams,
294
+ };
295
+
296
+ export {
297
+ PeersAPIPeers as Peers,
298
+ type PeerGetConfigResponse as PeerGetConfigResponse,
299
+ type PeerSetConfigResponse as PeerSetConfigResponse,
300
+ type PeerListParams as PeerListParams,
301
+ type PeerAddParams as PeerAddParams,
302
+ type PeerRemoveParams as PeerRemoveParams,
303
+ type PeerSetParams as PeerSetParams,
304
+ type PeerSetConfigParams as PeerSetConfigParams,
305
+ };
306
+ }
307
+
308
+ export { MessagesPage };
@@ -0,0 +1,3 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export * from "./sessions/index.js";
@@ -0,0 +1,194 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from "../../resource.js";
4
+ import { isRequestOptions } from "../../core.js";
5
+ import * as Core from "../../core.js";
6
+ import * as PeersAPI from "./peers/peers.js";
7
+ import {
8
+ PageSession,
9
+ Peer,
10
+ PeerChatParams,
11
+ PeerChatResponse,
12
+ PeerGetOrCreateParams,
13
+ PeerListParams,
14
+ PeerSearchParams,
15
+ PeerUpdateParams,
16
+ PeerWorkingRepresentationParams,
17
+ PeerWorkingRepresentationResponse,
18
+ Peers,
19
+ PeersPage,
20
+ SessionGet,
21
+ } from "./peers/peers.js";
22
+ import * as MessagesAPI from "./sessions/messages.js";
23
+ import { MessagesPage } from "./sessions/messages.js";
24
+ import * as SessionsAPI from "./sessions/sessions.js";
25
+ import {
26
+ Session,
27
+ SessionCloneParams,
28
+ SessionDeleteResponse,
29
+ SessionGetContextParams,
30
+ SessionGetContextResponse,
31
+ SessionGetOrCreateParams,
32
+ SessionListParams,
33
+ SessionSearchParams,
34
+ SessionUpdateParams,
35
+ Sessions,
36
+ SessionsPage,
37
+ } from "./sessions/sessions.js";
38
+ import { Page, type PageParams } from "../../pagination.js";
39
+
40
+ export class Workspaces extends APIResource {
41
+ peers: PeersAPI.Peers = new PeersAPI.Peers(this._client);
42
+ sessions: SessionsAPI.Sessions = new SessionsAPI.Sessions(this._client);
43
+
44
+ /**
45
+ * Update a Workspace
46
+ */
47
+ update(
48
+ workspaceId: string,
49
+ body: WorkspaceUpdateParams,
50
+ options?: Core.RequestOptions,
51
+ ): Core.APIPromise<Workspace> {
52
+ return this._client.put(`/v1/workspaces/${workspaceId}`, { body, ...options });
53
+ }
54
+
55
+ /**
56
+ * Get all Workspaces
57
+ */
58
+ list(
59
+ params?: WorkspaceListParams,
60
+ options?: Core.RequestOptions,
61
+ ): Core.PagePromise<WorkspacesPage, Workspace>;
62
+ list(options?: Core.RequestOptions): Core.PagePromise<WorkspacesPage, Workspace>;
63
+ list(
64
+ params: WorkspaceListParams | Core.RequestOptions = {},
65
+ options?: Core.RequestOptions,
66
+ ): Core.PagePromise<WorkspacesPage, Workspace> {
67
+ if (isRequestOptions(params)) {
68
+ return this.list({}, params);
69
+ }
70
+ const { page, size, ...body } = params;
71
+ return this._client.getAPIList('/v1/workspaces/list', WorkspacesPage, {
72
+ query: { page, size },
73
+ body,
74
+ method: 'post',
75
+ ...options,
76
+ });
77
+ }
78
+
79
+ /**
80
+ * Get a Workspace by ID.
81
+ *
82
+ * If workspace_id is provided as a query parameter, it uses that (must match JWT
83
+ * workspace_id). Otherwise, it uses the workspace_id from the JWT token.
84
+ */
85
+ getOrCreate(body: WorkspaceGetOrCreateParams, options?: Core.RequestOptions): Core.APIPromise<Workspace> {
86
+ return this._client.post('/v1/workspaces', { body, ...options });
87
+ }
88
+
89
+ /**
90
+ * Search a Workspace
91
+ */
92
+ search(
93
+ workspaceId: string,
94
+ params: WorkspaceSearchParams,
95
+ options?: Core.RequestOptions,
96
+ ): Core.PagePromise<MessagesPage, MessagesAPI.Message> {
97
+ const { body, page, size } = params;
98
+ return this._client.getAPIList(`/v1/workspaces/${workspaceId}/search`, MessagesPage, {
99
+ query: { page, size },
100
+ body: body,
101
+ method: 'post',
102
+ ...options,
103
+ });
104
+ }
105
+ }
106
+
107
+ export class WorkspacesPage extends Page<Workspace> {}
108
+
109
+ export interface Workspace {
110
+ id: string;
111
+
112
+ created_at: string;
113
+
114
+ configuration?: Record<string, unknown>;
115
+
116
+ metadata?: Record<string, unknown>;
117
+ }
118
+
119
+ export interface WorkspaceUpdateParams {
120
+ configuration?: Record<string, unknown> | null;
121
+
122
+ metadata?: Record<string, unknown> | null;
123
+ }
124
+
125
+ export interface WorkspaceListParams extends PageParams {
126
+ /**
127
+ * Body param:
128
+ */
129
+ filter?: Record<string, unknown> | null;
130
+ }
131
+
132
+ export interface WorkspaceGetOrCreateParams {
133
+ id: string;
134
+
135
+ configuration?: Record<string, unknown>;
136
+
137
+ metadata?: Record<string, unknown>;
138
+ }
139
+
140
+ export interface WorkspaceSearchParams extends PageParams {
141
+ /**
142
+ * Body param: Search query
143
+ */
144
+ body: string;
145
+ }
146
+
147
+ Workspaces.WorkspacesPage = WorkspacesPage;
148
+ Workspaces.Peers = Peers;
149
+ Workspaces.PeersPage = PeersPage;
150
+ Workspaces.Sessions = Sessions;
151
+ Workspaces.SessionsPage = SessionsPage;
152
+
153
+ export declare namespace Workspaces {
154
+ export {
155
+ type Workspace as Workspace,
156
+ WorkspacesPage as WorkspacesPage,
157
+ type WorkspaceUpdateParams as WorkspaceUpdateParams,
158
+ type WorkspaceListParams as WorkspaceListParams,
159
+ type WorkspaceGetOrCreateParams as WorkspaceGetOrCreateParams,
160
+ type WorkspaceSearchParams as WorkspaceSearchParams,
161
+ };
162
+
163
+ export {
164
+ Peers as Peers,
165
+ type PageSession as PageSession,
166
+ type Peer as Peer,
167
+ type SessionGet as SessionGet,
168
+ type PeerChatResponse as PeerChatResponse,
169
+ type PeerWorkingRepresentationResponse as PeerWorkingRepresentationResponse,
170
+ PeersPage as PeersPage,
171
+ type PeerUpdateParams as PeerUpdateParams,
172
+ type PeerListParams as PeerListParams,
173
+ type PeerChatParams as PeerChatParams,
174
+ type PeerGetOrCreateParams as PeerGetOrCreateParams,
175
+ type PeerSearchParams as PeerSearchParams,
176
+ type PeerWorkingRepresentationParams as PeerWorkingRepresentationParams,
177
+ };
178
+
179
+ export {
180
+ Sessions as Sessions,
181
+ type Session as Session,
182
+ type SessionDeleteResponse as SessionDeleteResponse,
183
+ type SessionGetContextResponse as SessionGetContextResponse,
184
+ SessionsPage as SessionsPage,
185
+ type SessionUpdateParams as SessionUpdateParams,
186
+ type SessionListParams as SessionListParams,
187
+ type SessionCloneParams as SessionCloneParams,
188
+ type SessionGetContextParams as SessionGetContextParams,
189
+ type SessionGetOrCreateParams as SessionGetOrCreateParams,
190
+ type SessionSearchParams as SessionSearchParams,
191
+ };
192
+ }
193
+
194
+ export { MessagesPage };
@@ -0,0 +1,3 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export * from "./workspaces/index.js";
@@ -0,0 +1 @@
1
+ export * from "./resources/index.js";
@@ -0,0 +1,50 @@
1
+ // @ts-ignore
2
+ import * as types from "../_shims/node-types.js";
3
+ import { setShims } from "../_shims/registry.js";
4
+ import { getRuntime } from "../_shims/node-runtime.js";
5
+ setShims(getRuntime());
6
+
7
+ declare module '../_shims/manual-types' {
8
+ export namespace manual {
9
+ // @ts-ignore
10
+ export type Agent = types.Agent;
11
+ // @ts-ignore
12
+ export import fetch = types.fetch;
13
+ // @ts-ignore
14
+ export type Request = types.Request;
15
+ // @ts-ignore
16
+ export type RequestInfo = types.RequestInfo;
17
+ // @ts-ignore
18
+ export type RequestInit = types.RequestInit;
19
+ // @ts-ignore
20
+ export type Response = types.Response;
21
+ // @ts-ignore
22
+ export type ResponseInit = types.ResponseInit;
23
+ // @ts-ignore
24
+ export type ResponseType = types.ResponseType;
25
+ // @ts-ignore
26
+ export type BodyInit = types.BodyInit;
27
+ // @ts-ignore
28
+ export type Headers = types.Headers;
29
+ // @ts-ignore
30
+ export type HeadersInit = types.HeadersInit;
31
+ // @ts-ignore
32
+ export type BlobPropertyBag = types.BlobPropertyBag;
33
+ // @ts-ignore
34
+ export type FilePropertyBag = types.FilePropertyBag;
35
+ // @ts-ignore
36
+ export type FileFromPathOptions = types.FileFromPathOptions;
37
+ // @ts-ignore
38
+ export import FormData = types.FormData;
39
+ // @ts-ignore
40
+ export import File = types.File;
41
+ // @ts-ignore
42
+ export import Blob = types.Blob;
43
+ // @ts-ignore
44
+ export type Readable = types.Readable;
45
+ // @ts-ignore
46
+ export type FsReadStream = types.FsReadStream;
47
+ // @ts-ignore
48
+ export import ReadableStream = types.ReadableStream;
49
+ }
50
+ }
@@ -0,0 +1,50 @@
1
+ // @ts-ignore
2
+ import * as types from "../_shims/web-types.js";
3
+ import { setShims } from "../_shims/registry.js";
4
+ import { getRuntime } from "../_shims/web-runtime.js";
5
+ setShims(getRuntime({ manuallyImported: true }));
6
+
7
+ declare module '../_shims/manual-types' {
8
+ export namespace manual {
9
+ // @ts-ignore
10
+ export type Agent = types.Agent;
11
+ // @ts-ignore
12
+ export import fetch = types.fetch;
13
+ // @ts-ignore
14
+ export type Request = types.Request;
15
+ // @ts-ignore
16
+ export type RequestInfo = types.RequestInfo;
17
+ // @ts-ignore
18
+ export type RequestInit = types.RequestInit;
19
+ // @ts-ignore
20
+ export type Response = types.Response;
21
+ // @ts-ignore
22
+ export type ResponseInit = types.ResponseInit;
23
+ // @ts-ignore
24
+ export type ResponseType = types.ResponseType;
25
+ // @ts-ignore
26
+ export type BodyInit = types.BodyInit;
27
+ // @ts-ignore
28
+ export type Headers = types.Headers;
29
+ // @ts-ignore
30
+ export type HeadersInit = types.HeadersInit;
31
+ // @ts-ignore
32
+ export type BlobPropertyBag = types.BlobPropertyBag;
33
+ // @ts-ignore
34
+ export type FilePropertyBag = types.FilePropertyBag;
35
+ // @ts-ignore
36
+ export type FileFromPathOptions = types.FileFromPathOptions;
37
+ // @ts-ignore
38
+ export import FormData = types.FormData;
39
+ // @ts-ignore
40
+ export import File = types.File;
41
+ // @ts-ignore
42
+ export import Blob = types.Blob;
43
+ // @ts-ignore
44
+ export type Readable = types.Readable;
45
+ // @ts-ignore
46
+ export type FsReadStream = types.FsReadStream;
47
+ // @ts-ignore
48
+ export import ReadableStream = types.ReadableStream;
49
+ }
50
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ // this config is included in the published src directory to prevent TS errors
3
+ // from appearing when users go to source, and VSCode opens the source .ts file
4
+ // via declaration maps
5
+ "include": ["index.ts"],
6
+ "compilerOptions": {
7
+ "target": "es2015",
8
+ "lib": ["DOM"],
9
+ "moduleResolution": "node"
10
+ }
11
+ }