@opencode-ai/sdk 0.3.101 → 0.3.102

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.
@@ -1,5 +1,5 @@
1
1
  import type { Options as ClientOptions, TDataShape, Client } from './client';
2
- import type { EventSubscribeData, EventSubscribeResponses, AppGetData, AppGetResponses, AppInitData, AppInitResponses, ConfigGetData, ConfigGetResponses, SessionListData, SessionListResponses, SessionCreateData, SessionCreateResponses, SessionCreateErrors, SessionDeleteData, SessionDeleteResponses, SessionInitData, SessionInitResponses, SessionAbortData, SessionAbortResponses, SessionUnshareData, SessionUnshareResponses, SessionShareData, SessionShareResponses, SessionSummarizeData, SessionSummarizeResponses, SessionMessagesData, SessionMessagesResponses, SessionChatData, SessionChatResponses, SessionRevertData, SessionRevertResponses, SessionUnrevertData, SessionUnrevertResponses, ConfigProvidersData, ConfigProvidersResponses, FindTextData, FindTextResponses, FindFilesData, FindFilesResponses, FindSymbolsData, FindSymbolsResponses, FileReadData, FileReadResponses, FileStatusData, FileStatusResponses, AppLogData, AppLogResponses, AppModesData, AppModesResponses, TuiAppendPromptData, TuiAppendPromptResponses, TuiOpenHelpData, TuiOpenHelpResponses } from './types.gen';
2
+ import type { EventSubscribeData, EventSubscribeResponses, AppGetData, AppGetResponses, AppInitData, AppInitResponses, ConfigGetData, ConfigGetResponses, SessionListData, SessionListResponses, SessionCreateData, SessionCreateResponses, SessionCreateErrors, SessionDeleteData, SessionDeleteResponses, SessionInitData, SessionInitResponses, SessionAbortData, SessionAbortResponses, SessionUnshareData, SessionUnshareResponses, SessionShareData, SessionShareResponses, SessionSummarizeData, SessionSummarizeResponses, SessionMessagesData, SessionMessagesResponses, SessionChatData, SessionChatResponses, SessionMessageData, SessionMessageResponses, SessionRevertData, SessionRevertResponses, SessionUnrevertData, SessionUnrevertResponses, PostSessionByIdPermissionsByPermissionIdData, PostSessionByIdPermissionsByPermissionIdResponses, ConfigProvidersData, ConfigProvidersResponses, FindTextData, FindTextResponses, FindFilesData, FindFilesResponses, FindSymbolsData, FindSymbolsResponses, FileReadData, FileReadResponses, FileStatusData, FileStatusResponses, AppLogData, AppLogResponses, AppModesData, AppModesResponses, TuiAppendPromptData, TuiAppendPromptResponses, TuiOpenHelpData, TuiOpenHelpResponses, TuiOpenSessionsData, TuiOpenSessionsResponses, TuiOpenThemesData, TuiOpenThemesResponses, TuiOpenModelsData, TuiOpenModelsResponses, TuiSubmitPromptData, TuiSubmitPromptResponses, TuiClearPromptData, TuiClearPromptResponses, TuiExecuteCommandData, TuiExecuteCommandResponses } from './types.gen';
3
3
  export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = ClientOptions<TData, ThrowOnError> & {
4
4
  /**
5
5
  * You can provide a client instance returned by `createClient()` instead of
@@ -94,6 +94,10 @@ declare class Session extends _HeyApiClient {
94
94
  * Create and send a new message to a session
95
95
  */
96
96
  chat<ThrowOnError extends boolean = false>(options: Options<SessionChatData, ThrowOnError>): import("./client").RequestResult<SessionChatResponses, unknown, ThrowOnError, "fields">;
97
+ /**
98
+ * Get a message from a session
99
+ */
100
+ message<ThrowOnError extends boolean = false>(options: Options<SessionMessageData, ThrowOnError>): import("./client").RequestResult<SessionMessageResponses, unknown, ThrowOnError, "fields">;
97
101
  /**
98
102
  * Revert a message
99
103
  */
@@ -136,8 +140,36 @@ declare class Tui extends _HeyApiClient {
136
140
  * Open the help dialog
137
141
  */
138
142
  openHelp<ThrowOnError extends boolean = false>(options?: Options<TuiOpenHelpData, ThrowOnError>): import("./client").RequestResult<TuiOpenHelpResponses, unknown, ThrowOnError, "fields">;
143
+ /**
144
+ * Open the session dialog
145
+ */
146
+ openSessions<ThrowOnError extends boolean = false>(options?: Options<TuiOpenSessionsData, ThrowOnError>): import("./client").RequestResult<TuiOpenSessionsResponses, unknown, ThrowOnError, "fields">;
147
+ /**
148
+ * Open the theme dialog
149
+ */
150
+ openThemes<ThrowOnError extends boolean = false>(options?: Options<TuiOpenThemesData, ThrowOnError>): import("./client").RequestResult<TuiOpenThemesResponses, unknown, ThrowOnError, "fields">;
151
+ /**
152
+ * Open the model dialog
153
+ */
154
+ openModels<ThrowOnError extends boolean = false>(options?: Options<TuiOpenModelsData, ThrowOnError>): import("./client").RequestResult<TuiOpenModelsResponses, unknown, ThrowOnError, "fields">;
155
+ /**
156
+ * Submit the prompt
157
+ */
158
+ submitPrompt<ThrowOnError extends boolean = false>(options?: Options<TuiSubmitPromptData, ThrowOnError>): import("./client").RequestResult<TuiSubmitPromptResponses, unknown, ThrowOnError, "fields">;
159
+ /**
160
+ * Clear the prompt
161
+ */
162
+ clearPrompt<ThrowOnError extends boolean = false>(options?: Options<TuiClearPromptData, ThrowOnError>): import("./client").RequestResult<TuiClearPromptResponses, unknown, ThrowOnError, "fields">;
163
+ /**
164
+ * Execute a TUI command (e.g. switch_mode)
165
+ */
166
+ executeCommand<ThrowOnError extends boolean = false>(options?: Options<TuiExecuteCommandData, ThrowOnError>): import("./client").RequestResult<TuiExecuteCommandResponses, unknown, ThrowOnError, "fields">;
139
167
  }
140
168
  export declare class OpencodeClient extends _HeyApiClient {
169
+ /**
170
+ * Respond to a permission request
171
+ */
172
+ postSessionByIdPermissionsByPermissionId<ThrowOnError extends boolean = false>(options: Options<PostSessionByIdPermissionsByPermissionIdData, ThrowOnError>): import("./client").RequestResult<PostSessionByIdPermissionsByPermissionIdResponses, unknown, ThrowOnError, "fields">;
141
173
  event: Event;
142
174
  app: App;
143
175
  config: Config;
@@ -184,6 +184,15 @@ class Session extends _HeyApiClient {
184
184
  }
185
185
  });
186
186
  }
187
+ /**
188
+ * Get a message from a session
189
+ */
190
+ message(options) {
191
+ return (options.client ?? this._client).get({
192
+ url: '/session/{id}/message/{messageID}',
193
+ ...options
194
+ });
195
+ }
187
196
  /**
188
197
  * Revert a message
189
198
  */
@@ -279,8 +288,79 @@ class Tui extends _HeyApiClient {
279
288
  ...options
280
289
  });
281
290
  }
291
+ /**
292
+ * Open the session dialog
293
+ */
294
+ openSessions(options) {
295
+ return (options?.client ?? this._client).post({
296
+ url: '/tui/open-sessions',
297
+ ...options
298
+ });
299
+ }
300
+ /**
301
+ * Open the theme dialog
302
+ */
303
+ openThemes(options) {
304
+ return (options?.client ?? this._client).post({
305
+ url: '/tui/open-themes',
306
+ ...options
307
+ });
308
+ }
309
+ /**
310
+ * Open the model dialog
311
+ */
312
+ openModels(options) {
313
+ return (options?.client ?? this._client).post({
314
+ url: '/tui/open-models',
315
+ ...options
316
+ });
317
+ }
318
+ /**
319
+ * Submit the prompt
320
+ */
321
+ submitPrompt(options) {
322
+ return (options?.client ?? this._client).post({
323
+ url: '/tui/submit-prompt',
324
+ ...options
325
+ });
326
+ }
327
+ /**
328
+ * Clear the prompt
329
+ */
330
+ clearPrompt(options) {
331
+ return (options?.client ?? this._client).post({
332
+ url: '/tui/clear-prompt',
333
+ ...options
334
+ });
335
+ }
336
+ /**
337
+ * Execute a TUI command (e.g. switch_mode)
338
+ */
339
+ executeCommand(options) {
340
+ return (options?.client ?? this._client).post({
341
+ url: '/tui/execute-command',
342
+ ...options,
343
+ headers: {
344
+ 'Content-Type': 'application/json',
345
+ ...options?.headers
346
+ }
347
+ });
348
+ }
282
349
  }
283
350
  export class OpencodeClient extends _HeyApiClient {
351
+ /**
352
+ * Respond to a permission request
353
+ */
354
+ postSessionByIdPermissionsByPermissionId(options) {
355
+ return (options.client ?? this._client).post({
356
+ url: '/session/{id}/permissions/{permissionID}',
357
+ ...options,
358
+ headers: {
359
+ 'Content-Type': 'application/json',
360
+ ...options.headers
361
+ }
362
+ });
363
+ }
284
364
  event = new Event({ client: this._client });
285
365
  app = new App({ client: this._client });
286
366
  config = new Config({ client: this._client });
@@ -15,6 +15,8 @@ export type Event = ({
15
15
  } & EventStorageWrite) | ({
16
16
  type: 'permission.updated';
17
17
  } & EventPermissionUpdated) | ({
18
+ type: 'permission.replied';
19
+ } & EventPermissionReplied) | ({
18
20
  type: 'file.edited';
19
21
  } & EventFileEdited) | ({
20
22
  type: 'session.updated';
@@ -320,11 +322,15 @@ export type EventStorageWrite = {
320
322
  };
321
323
  export type EventPermissionUpdated = {
322
324
  type: string;
323
- properties: PermissionInfo;
325
+ properties: Permission;
324
326
  };
325
- export type PermissionInfo = {
327
+ export type Permission = {
326
328
  id: string;
329
+ type: string;
330
+ pattern?: string;
327
331
  sessionID: string;
332
+ messageID: string;
333
+ callID?: string;
328
334
  title: string;
329
335
  metadata: {
330
336
  [key: string]: unknown;
@@ -333,6 +339,14 @@ export type PermissionInfo = {
333
339
  created: number;
334
340
  };
335
341
  };
342
+ export type EventPermissionReplied = {
343
+ type: string;
344
+ properties: {
345
+ sessionID: string;
346
+ permissionID: string;
347
+ response: string;
348
+ };
349
+ };
336
350
  export type EventFileEdited = {
337
351
  type: string;
338
352
  properties: {
@@ -1087,6 +1101,31 @@ export type SessionChatResponses = {
1087
1101
  200: AssistantMessage;
1088
1102
  };
1089
1103
  export type SessionChatResponse = SessionChatResponses[keyof SessionChatResponses];
1104
+ export type SessionMessageData = {
1105
+ body?: never;
1106
+ path: {
1107
+ /**
1108
+ * Session ID
1109
+ */
1110
+ id: string;
1111
+ /**
1112
+ * Message ID
1113
+ */
1114
+ messageID: string;
1115
+ };
1116
+ query?: never;
1117
+ url: '/session/{id}/message/{messageID}';
1118
+ };
1119
+ export type SessionMessageResponses = {
1120
+ /**
1121
+ * Message
1122
+ */
1123
+ 200: {
1124
+ info: Message;
1125
+ parts: Array<Part>;
1126
+ };
1127
+ };
1128
+ export type SessionMessageResponse = SessionMessageResponses[keyof SessionMessageResponses];
1090
1129
  export type SessionRevertData = {
1091
1130
  body?: {
1092
1131
  messageID: string;
@@ -1120,6 +1159,24 @@ export type SessionUnrevertResponses = {
1120
1159
  200: Session;
1121
1160
  };
1122
1161
  export type SessionUnrevertResponse = SessionUnrevertResponses[keyof SessionUnrevertResponses];
1162
+ export type PostSessionByIdPermissionsByPermissionIdData = {
1163
+ body?: {
1164
+ response: 'once' | 'always' | 'reject';
1165
+ };
1166
+ path: {
1167
+ id: string;
1168
+ permissionID: string;
1169
+ };
1170
+ query?: never;
1171
+ url: '/session/{id}/permissions/{permissionID}';
1172
+ };
1173
+ export type PostSessionByIdPermissionsByPermissionIdResponses = {
1174
+ /**
1175
+ * Permission processed successfully
1176
+ */
1177
+ 200: boolean;
1178
+ };
1179
+ export type PostSessionByIdPermissionsByPermissionIdResponse = PostSessionByIdPermissionsByPermissionIdResponses[keyof PostSessionByIdPermissionsByPermissionIdResponses];
1123
1180
  export type ConfigProvidersData = {
1124
1181
  body?: never;
1125
1182
  path?: never;
@@ -1303,6 +1360,86 @@ export type TuiOpenHelpResponses = {
1303
1360
  200: boolean;
1304
1361
  };
1305
1362
  export type TuiOpenHelpResponse = TuiOpenHelpResponses[keyof TuiOpenHelpResponses];
1363
+ export type TuiOpenSessionsData = {
1364
+ body?: never;
1365
+ path?: never;
1366
+ query?: never;
1367
+ url: '/tui/open-sessions';
1368
+ };
1369
+ export type TuiOpenSessionsResponses = {
1370
+ /**
1371
+ * Session dialog opened successfully
1372
+ */
1373
+ 200: boolean;
1374
+ };
1375
+ export type TuiOpenSessionsResponse = TuiOpenSessionsResponses[keyof TuiOpenSessionsResponses];
1376
+ export type TuiOpenThemesData = {
1377
+ body?: never;
1378
+ path?: never;
1379
+ query?: never;
1380
+ url: '/tui/open-themes';
1381
+ };
1382
+ export type TuiOpenThemesResponses = {
1383
+ /**
1384
+ * Theme dialog opened successfully
1385
+ */
1386
+ 200: boolean;
1387
+ };
1388
+ export type TuiOpenThemesResponse = TuiOpenThemesResponses[keyof TuiOpenThemesResponses];
1389
+ export type TuiOpenModelsData = {
1390
+ body?: never;
1391
+ path?: never;
1392
+ query?: never;
1393
+ url: '/tui/open-models';
1394
+ };
1395
+ export type TuiOpenModelsResponses = {
1396
+ /**
1397
+ * Model dialog opened successfully
1398
+ */
1399
+ 200: boolean;
1400
+ };
1401
+ export type TuiOpenModelsResponse = TuiOpenModelsResponses[keyof TuiOpenModelsResponses];
1402
+ export type TuiSubmitPromptData = {
1403
+ body?: never;
1404
+ path?: never;
1405
+ query?: never;
1406
+ url: '/tui/submit-prompt';
1407
+ };
1408
+ export type TuiSubmitPromptResponses = {
1409
+ /**
1410
+ * Prompt submitted successfully
1411
+ */
1412
+ 200: boolean;
1413
+ };
1414
+ export type TuiSubmitPromptResponse = TuiSubmitPromptResponses[keyof TuiSubmitPromptResponses];
1415
+ export type TuiClearPromptData = {
1416
+ body?: never;
1417
+ path?: never;
1418
+ query?: never;
1419
+ url: '/tui/clear-prompt';
1420
+ };
1421
+ export type TuiClearPromptResponses = {
1422
+ /**
1423
+ * Prompt cleared successfully
1424
+ */
1425
+ 200: boolean;
1426
+ };
1427
+ export type TuiClearPromptResponse = TuiClearPromptResponses[keyof TuiClearPromptResponses];
1428
+ export type TuiExecuteCommandData = {
1429
+ body?: {
1430
+ command: string;
1431
+ };
1432
+ path?: never;
1433
+ query?: never;
1434
+ url: '/tui/execute-command';
1435
+ };
1436
+ export type TuiExecuteCommandResponses = {
1437
+ /**
1438
+ * Command executed successfully
1439
+ */
1440
+ 200: boolean;
1441
+ };
1442
+ export type TuiExecuteCommandResponse = TuiExecuteCommandResponses[keyof TuiExecuteCommandResponses];
1306
1443
  export type ClientOptions = {
1307
1444
  baseUrl: `${string}://${string}` | (string & {});
1308
1445
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@opencode-ai/sdk",
4
- "version": "0.3.101",
4
+ "version": "0.3.102",
5
5
  "type": "module",
6
6
  "exports": {
7
7
  ".": "./dist/index.js"