@opencode-ai/sdk 0.3.112 → 0.3.121

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,37 +1,37 @@
1
1
  export type Event = ({
2
- type: 'installation.updated';
2
+ type: "installation.updated";
3
3
  } & EventInstallationUpdated) | ({
4
- type: 'lsp.client.diagnostics';
4
+ type: "lsp.client.diagnostics";
5
5
  } & EventLspClientDiagnostics) | ({
6
- type: 'message.updated';
6
+ type: "message.updated";
7
7
  } & EventMessageUpdated) | ({
8
- type: 'message.removed';
8
+ type: "message.removed";
9
9
  } & EventMessageRemoved) | ({
10
- type: 'message.part.updated';
10
+ type: "message.part.updated";
11
11
  } & EventMessagePartUpdated) | ({
12
- type: 'message.part.removed';
12
+ type: "message.part.removed";
13
13
  } & EventMessagePartRemoved) | ({
14
- type: 'storage.write';
14
+ type: "storage.write";
15
15
  } & EventStorageWrite) | ({
16
- type: 'permission.updated';
16
+ type: "file.edited";
17
+ } & EventFileEdited) | ({
18
+ type: "server.connected";
19
+ } & EventServerConnected) | ({
20
+ type: "permission.updated";
17
21
  } & EventPermissionUpdated) | ({
18
- type: 'permission.replied';
22
+ type: "permission.replied";
19
23
  } & EventPermissionReplied) | ({
20
- type: 'file.edited';
21
- } & EventFileEdited) | ({
22
- type: 'session.updated';
24
+ type: "session.updated";
23
25
  } & EventSessionUpdated) | ({
24
- type: 'session.deleted';
26
+ type: "session.deleted";
25
27
  } & EventSessionDeleted) | ({
26
- type: 'session.idle';
28
+ type: "session.idle";
27
29
  } & EventSessionIdle) | ({
28
- type: 'session.error';
30
+ type: "session.error";
29
31
  } & EventSessionError) | ({
30
- type: 'server.connected';
31
- } & EventServerConnected) | ({
32
- type: 'file.watcher.updated';
32
+ type: "file.watcher.updated";
33
33
  } & EventFileWatcherUpdated) | ({
34
- type: 'ide.installed';
34
+ type: "ide.installed";
35
35
  } & EventIdeInstalled);
36
36
  export type EventInstallationUpdated = {
37
37
  type: string;
@@ -53,9 +53,9 @@ export type EventMessageUpdated = {
53
53
  };
54
54
  };
55
55
  export type Message = ({
56
- role: 'user';
56
+ role: "user";
57
57
  } & UserMessage) | ({
58
- role: 'assistant';
58
+ role: "assistant";
59
59
  } & AssistantMessage);
60
60
  export type UserMessage = {
61
61
  id: string;
@@ -74,13 +74,13 @@ export type AssistantMessage = {
74
74
  completed?: number;
75
75
  };
76
76
  error?: ({
77
- name: 'ProviderAuthError';
77
+ name: "ProviderAuthError";
78
78
  } & ProviderAuthError) | ({
79
- name: 'UnknownError';
79
+ name: "UnknownError";
80
80
  } & UnknownError) | ({
81
- name: 'MessageOutputLengthError';
81
+ name: "MessageOutputLengthError";
82
82
  } & MessageOutputLengthError) | ({
83
- name: 'MessageAbortedError';
83
+ name: "MessageAbortedError";
84
84
  } & MessageAbortedError);
85
85
  system: Array<string>;
86
86
  modelID: string;
@@ -141,19 +141,19 @@ export type EventMessagePartUpdated = {
141
141
  };
142
142
  };
143
143
  export type Part = ({
144
- type: 'text';
144
+ type: "text";
145
145
  } & TextPart) | ({
146
- type: 'file';
146
+ type: "file";
147
147
  } & FilePart) | ({
148
- type: 'tool';
148
+ type: "tool";
149
149
  } & ToolPart) | ({
150
- type: 'step-start';
150
+ type: "step-start";
151
151
  } & StepStartPart) | ({
152
- type: 'step-finish';
152
+ type: "step-finish";
153
153
  } & StepFinishPart) | ({
154
- type: 'snapshot';
154
+ type: "snapshot";
155
155
  } & SnapshotPart) | ({
156
- type: 'patch';
156
+ type: "patch";
157
157
  } & PatchPart);
158
158
  export type TextPart = {
159
159
  id: string;
@@ -178,9 +178,9 @@ export type FilePart = {
178
178
  source?: FilePartSource;
179
179
  };
180
180
  export type FilePartSource = ({
181
- type: 'file';
181
+ type: "file";
182
182
  } & FileSource) | ({
183
- type: 'symbol';
183
+ type: "symbol";
184
184
  } & SymbolSource);
185
185
  export type FileSource = {
186
186
  text: FilePartSourceText;
@@ -220,13 +220,13 @@ export type ToolPart = {
220
220
  state: ToolState;
221
221
  };
222
222
  export type ToolState = ({
223
- status: 'pending';
223
+ status: "pending";
224
224
  } & ToolStatePending) | ({
225
- status: 'running';
225
+ status: "running";
226
226
  } & ToolStateRunning) | ({
227
- status: 'completed';
227
+ status: "completed";
228
228
  } & ToolStateCompleted) | ({
229
- status: 'error';
229
+ status: "error";
230
230
  } & ToolStateError);
231
231
  export type ToolStatePending = {
232
232
  status: string;
@@ -320,6 +320,18 @@ export type EventStorageWrite = {
320
320
  content?: unknown;
321
321
  };
322
322
  };
323
+ export type EventFileEdited = {
324
+ type: string;
325
+ properties: {
326
+ file: string;
327
+ };
328
+ };
329
+ export type EventServerConnected = {
330
+ type: string;
331
+ properties: {
332
+ [key: string]: unknown;
333
+ };
334
+ };
323
335
  export type EventPermissionUpdated = {
324
336
  type: string;
325
337
  properties: Permission;
@@ -347,12 +359,6 @@ export type EventPermissionReplied = {
347
359
  response: string;
348
360
  };
349
361
  };
350
- export type EventFileEdited = {
351
- type: string;
352
- properties: {
353
- file: string;
354
- };
355
- };
356
362
  export type EventSessionUpdated = {
357
363
  type: string;
358
364
  properties: {
@@ -395,22 +401,16 @@ export type EventSessionError = {
395
401
  properties: {
396
402
  sessionID?: string;
397
403
  error?: ({
398
- name: 'ProviderAuthError';
404
+ name: "ProviderAuthError";
399
405
  } & ProviderAuthError) | ({
400
- name: 'UnknownError';
406
+ name: "UnknownError";
401
407
  } & UnknownError) | ({
402
- name: 'MessageOutputLengthError';
408
+ name: "MessageOutputLengthError";
403
409
  } & MessageOutputLengthError) | ({
404
- name: 'MessageAbortedError';
410
+ name: "MessageAbortedError";
405
411
  } & MessageAbortedError);
406
412
  };
407
413
  };
408
- export type EventServerConnected = {
409
- type: string;
410
- properties: {
411
- [key: string]: unknown;
412
- };
413
- };
414
414
  export type EventFileWatcherUpdated = {
415
415
  type: string;
416
416
  properties: {
@@ -448,10 +448,11 @@ export type Config = {
448
448
  */
449
449
  theme?: string;
450
450
  keybinds?: KeybindsConfig;
451
+ plugin?: Array<string>;
451
452
  /**
452
453
  * Control sharing behavior:'manual' allows manual sharing via commands, 'auto' enables automatic sharing, 'disabled' disables all sharing
453
454
  */
454
- share?: 'manual' | 'auto' | 'disabled';
455
+ share?: "manual" | "auto" | "disabled";
455
456
  /**
456
457
  * @deprecated Use 'share' field instead. Share newly created sessions automatically
457
458
  */
@@ -537,9 +538,9 @@ export type Config = {
537
538
  */
538
539
  mcp?: {
539
540
  [key: string]: ({
540
- type: 'local';
541
+ type: "local";
541
542
  } & McpLocalConfig) | ({
542
- type: 'remote';
543
+ type: "remote";
543
544
  } & McpRemoteConfig);
544
545
  };
545
546
  formatter?: {
@@ -836,7 +837,7 @@ export type McpRemoteConfig = {
836
837
  [key: string]: string;
837
838
  };
838
839
  };
839
- export type LayoutConfig = 'auto' | 'stretch';
840
+ export type LayoutConfig = "auto" | "stretch";
840
841
  export type _Error = {
841
842
  data: {
842
843
  [key: string]: unknown;
@@ -872,7 +873,7 @@ export type File = {
872
873
  path: string;
873
874
  added: number;
874
875
  removed: number;
875
- status: 'added' | 'deleted' | 'modified';
876
+ status: "added" | "deleted" | "modified";
876
877
  };
877
878
  export type Mode = {
878
879
  name: string;
@@ -891,7 +892,7 @@ export type EventSubscribeData = {
891
892
  body?: never;
892
893
  path?: never;
893
894
  query?: never;
894
- url: '/event';
895
+ url: "/event";
895
896
  };
896
897
  export type EventSubscribeResponses = {
897
898
  /**
@@ -904,7 +905,7 @@ export type AppGetData = {
904
905
  body?: never;
905
906
  path?: never;
906
907
  query?: never;
907
- url: '/app';
908
+ url: "/app";
908
909
  };
909
910
  export type AppGetResponses = {
910
911
  /**
@@ -917,7 +918,7 @@ export type AppInitData = {
917
918
  body?: never;
918
919
  path?: never;
919
920
  query?: never;
920
- url: '/app/init';
921
+ url: "/app/init";
921
922
  };
922
923
  export type AppInitResponses = {
923
924
  /**
@@ -930,7 +931,7 @@ export type ConfigGetData = {
930
931
  body?: never;
931
932
  path?: never;
932
933
  query?: never;
933
- url: '/config';
934
+ url: "/config";
934
935
  };
935
936
  export type ConfigGetResponses = {
936
937
  /**
@@ -943,7 +944,7 @@ export type SessionListData = {
943
944
  body?: never;
944
945
  path?: never;
945
946
  query?: never;
946
- url: '/session';
947
+ url: "/session";
947
948
  };
948
949
  export type SessionListResponses = {
949
950
  /**
@@ -956,7 +957,7 @@ export type SessionCreateData = {
956
957
  body?: never;
957
958
  path?: never;
958
959
  query?: never;
959
- url: '/session';
960
+ url: "/session";
960
961
  };
961
962
  export type SessionCreateErrors = {
962
963
  /**
@@ -978,7 +979,7 @@ export type SessionDeleteData = {
978
979
  id: string;
979
980
  };
980
981
  query?: never;
981
- url: '/session/{id}';
982
+ url: "/session/{id}";
982
983
  };
983
984
  export type SessionDeleteResponses = {
984
985
  /**
@@ -1000,7 +1001,7 @@ export type SessionInitData = {
1000
1001
  id: string;
1001
1002
  };
1002
1003
  query?: never;
1003
- url: '/session/{id}/init';
1004
+ url: "/session/{id}/init";
1004
1005
  };
1005
1006
  export type SessionInitResponses = {
1006
1007
  /**
@@ -1015,7 +1016,7 @@ export type SessionAbortData = {
1015
1016
  id: string;
1016
1017
  };
1017
1018
  query?: never;
1018
- url: '/session/{id}/abort';
1019
+ url: "/session/{id}/abort";
1019
1020
  };
1020
1021
  export type SessionAbortResponses = {
1021
1022
  /**
@@ -1030,7 +1031,7 @@ export type SessionUnshareData = {
1030
1031
  id: string;
1031
1032
  };
1032
1033
  query?: never;
1033
- url: '/session/{id}/share';
1034
+ url: "/session/{id}/share";
1034
1035
  };
1035
1036
  export type SessionUnshareResponses = {
1036
1037
  /**
@@ -1045,7 +1046,7 @@ export type SessionShareData = {
1045
1046
  id: string;
1046
1047
  };
1047
1048
  query?: never;
1048
- url: '/session/{id}/share';
1049
+ url: "/session/{id}/share";
1049
1050
  };
1050
1051
  export type SessionShareResponses = {
1051
1052
  /**
@@ -1066,7 +1067,7 @@ export type SessionSummarizeData = {
1066
1067
  id: string;
1067
1068
  };
1068
1069
  query?: never;
1069
- url: '/session/{id}/summarize';
1070
+ url: "/session/{id}/summarize";
1070
1071
  };
1071
1072
  export type SessionSummarizeResponses = {
1072
1073
  /**
@@ -1084,7 +1085,7 @@ export type SessionMessagesData = {
1084
1085
  id: string;
1085
1086
  };
1086
1087
  query?: never;
1087
- url: '/session/{id}/message';
1088
+ url: "/session/{id}/message";
1088
1089
  };
1089
1090
  export type SessionMessagesResponses = {
1090
1091
  /**
@@ -1107,9 +1108,9 @@ export type SessionChatData = {
1107
1108
  [key: string]: boolean;
1108
1109
  };
1109
1110
  parts: Array<({
1110
- type: 'text';
1111
+ type: "text";
1111
1112
  } & TextPartInput) | ({
1112
- type: 'file';
1113
+ type: "file";
1113
1114
  } & FilePartInput)>;
1114
1115
  };
1115
1116
  path: {
@@ -1119,7 +1120,7 @@ export type SessionChatData = {
1119
1120
  id: string;
1120
1121
  };
1121
1122
  query?: never;
1122
- url: '/session/{id}/message';
1123
+ url: "/session/{id}/message";
1123
1124
  };
1124
1125
  export type SessionChatResponses = {
1125
1126
  /**
@@ -1141,7 +1142,7 @@ export type SessionMessageData = {
1141
1142
  messageID: string;
1142
1143
  };
1143
1144
  query?: never;
1144
- url: '/session/{id}/message/{messageID}';
1145
+ url: "/session/{id}/message/{messageID}";
1145
1146
  };
1146
1147
  export type SessionMessageResponses = {
1147
1148
  /**
@@ -1162,7 +1163,7 @@ export type SessionRevertData = {
1162
1163
  id: string;
1163
1164
  };
1164
1165
  query?: never;
1165
- url: '/session/{id}/revert';
1166
+ url: "/session/{id}/revert";
1166
1167
  };
1167
1168
  export type SessionRevertResponses = {
1168
1169
  /**
@@ -1177,7 +1178,7 @@ export type SessionUnrevertData = {
1177
1178
  id: string;
1178
1179
  };
1179
1180
  query?: never;
1180
- url: '/session/{id}/unrevert';
1181
+ url: "/session/{id}/unrevert";
1181
1182
  };
1182
1183
  export type SessionUnrevertResponses = {
1183
1184
  /**
@@ -1188,14 +1189,14 @@ export type SessionUnrevertResponses = {
1188
1189
  export type SessionUnrevertResponse = SessionUnrevertResponses[keyof SessionUnrevertResponses];
1189
1190
  export type PostSessionByIdPermissionsByPermissionIdData = {
1190
1191
  body?: {
1191
- response: 'once' | 'always' | 'reject';
1192
+ response: "once" | "always" | "reject";
1192
1193
  };
1193
1194
  path: {
1194
1195
  id: string;
1195
1196
  permissionID: string;
1196
1197
  };
1197
1198
  query?: never;
1198
- url: '/session/{id}/permissions/{permissionID}';
1199
+ url: "/session/{id}/permissions/{permissionID}";
1199
1200
  };
1200
1201
  export type PostSessionByIdPermissionsByPermissionIdResponses = {
1201
1202
  /**
@@ -1208,7 +1209,7 @@ export type ConfigProvidersData = {
1208
1209
  body?: never;
1209
1210
  path?: never;
1210
1211
  query?: never;
1211
- url: '/config/providers';
1212
+ url: "/config/providers";
1212
1213
  };
1213
1214
  export type ConfigProvidersResponses = {
1214
1215
  /**
@@ -1228,7 +1229,7 @@ export type FindTextData = {
1228
1229
  query: {
1229
1230
  pattern: string;
1230
1231
  };
1231
- url: '/find';
1232
+ url: "/find";
1232
1233
  };
1233
1234
  export type FindTextResponses = {
1234
1235
  /**
@@ -1259,7 +1260,7 @@ export type FindFilesData = {
1259
1260
  query: {
1260
1261
  query: string;
1261
1262
  };
1262
- url: '/find/file';
1263
+ url: "/find/file";
1263
1264
  };
1264
1265
  export type FindFilesResponses = {
1265
1266
  /**
@@ -1274,7 +1275,7 @@ export type FindSymbolsData = {
1274
1275
  query: {
1275
1276
  query: string;
1276
1277
  };
1277
- url: '/find/symbol';
1278
+ url: "/find/symbol";
1278
1279
  };
1279
1280
  export type FindSymbolsResponses = {
1280
1281
  /**
@@ -1289,14 +1290,14 @@ export type FileReadData = {
1289
1290
  query: {
1290
1291
  path: string;
1291
1292
  };
1292
- url: '/file';
1293
+ url: "/file";
1293
1294
  };
1294
1295
  export type FileReadResponses = {
1295
1296
  /**
1296
1297
  * File content
1297
1298
  */
1298
1299
  200: {
1299
- type: 'raw' | 'patch';
1300
+ type: "raw" | "patch";
1300
1301
  content: string;
1301
1302
  };
1302
1303
  };
@@ -1305,7 +1306,7 @@ export type FileStatusData = {
1305
1306
  body?: never;
1306
1307
  path?: never;
1307
1308
  query?: never;
1308
- url: '/file/status';
1309
+ url: "/file/status";
1309
1310
  };
1310
1311
  export type FileStatusResponses = {
1311
1312
  /**
@@ -1323,7 +1324,7 @@ export type AppLogData = {
1323
1324
  /**
1324
1325
  * Log level
1325
1326
  */
1326
- level: 'debug' | 'info' | 'error' | 'warn';
1327
+ level: "debug" | "info" | "error" | "warn";
1327
1328
  /**
1328
1329
  * Log message
1329
1330
  */
@@ -1337,7 +1338,7 @@ export type AppLogData = {
1337
1338
  };
1338
1339
  path?: never;
1339
1340
  query?: never;
1340
- url: '/log';
1341
+ url: "/log";
1341
1342
  };
1342
1343
  export type AppLogResponses = {
1343
1344
  /**
@@ -1350,7 +1351,7 @@ export type AppModesData = {
1350
1351
  body?: never;
1351
1352
  path?: never;
1352
1353
  query?: never;
1353
- url: '/mode';
1354
+ url: "/mode";
1354
1355
  };
1355
1356
  export type AppModesResponses = {
1356
1357
  /**
@@ -1365,7 +1366,7 @@ export type TuiAppendPromptData = {
1365
1366
  };
1366
1367
  path?: never;
1367
1368
  query?: never;
1368
- url: '/tui/append-prompt';
1369
+ url: "/tui/append-prompt";
1369
1370
  };
1370
1371
  export type TuiAppendPromptResponses = {
1371
1372
  /**
@@ -1378,7 +1379,7 @@ export type TuiOpenHelpData = {
1378
1379
  body?: never;
1379
1380
  path?: never;
1380
1381
  query?: never;
1381
- url: '/tui/open-help';
1382
+ url: "/tui/open-help";
1382
1383
  };
1383
1384
  export type TuiOpenHelpResponses = {
1384
1385
  /**
@@ -1391,7 +1392,7 @@ export type TuiOpenSessionsData = {
1391
1392
  body?: never;
1392
1393
  path?: never;
1393
1394
  query?: never;
1394
- url: '/tui/open-sessions';
1395
+ url: "/tui/open-sessions";
1395
1396
  };
1396
1397
  export type TuiOpenSessionsResponses = {
1397
1398
  /**
@@ -1404,7 +1405,7 @@ export type TuiOpenThemesData = {
1404
1405
  body?: never;
1405
1406
  path?: never;
1406
1407
  query?: never;
1407
- url: '/tui/open-themes';
1408
+ url: "/tui/open-themes";
1408
1409
  };
1409
1410
  export type TuiOpenThemesResponses = {
1410
1411
  /**
@@ -1417,7 +1418,7 @@ export type TuiOpenModelsData = {
1417
1418
  body?: never;
1418
1419
  path?: never;
1419
1420
  query?: never;
1420
- url: '/tui/open-models';
1421
+ url: "/tui/open-models";
1421
1422
  };
1422
1423
  export type TuiOpenModelsResponses = {
1423
1424
  /**
@@ -1430,7 +1431,7 @@ export type TuiSubmitPromptData = {
1430
1431
  body?: never;
1431
1432
  path?: never;
1432
1433
  query?: never;
1433
- url: '/tui/submit-prompt';
1434
+ url: "/tui/submit-prompt";
1434
1435
  };
1435
1436
  export type TuiSubmitPromptResponses = {
1436
1437
  /**
@@ -1443,7 +1444,7 @@ export type TuiClearPromptData = {
1443
1444
  body?: never;
1444
1445
  path?: never;
1445
1446
  query?: never;
1446
- url: '/tui/clear-prompt';
1447
+ url: "/tui/clear-prompt";
1447
1448
  };
1448
1449
  export type TuiClearPromptResponses = {
1449
1450
  /**
@@ -1458,7 +1459,7 @@ export type TuiExecuteCommandData = {
1458
1459
  };
1459
1460
  path?: never;
1460
1461
  query?: never;
1461
- url: '/tui/execute-command';
1462
+ url: "/tui/execute-command";
1462
1463
  };
1463
1464
  export type TuiExecuteCommandResponses = {
1464
1465
  /**
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  import { type Config } from "./gen/client/types";
2
2
  import { OpencodeClient } from "./gen/sdk.gen";
3
+ export * from "./gen/types.gen";
3
4
  export declare function createOpencodeClient(config?: Config): OpencodeClient;
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { createClient } from "./gen/client/client";
2
2
  import { OpencodeClient } from "./gen/sdk.gen";
3
+ export * from "./gen/types.gen";
3
4
  export function createOpencodeClient(config) {
4
5
  const client = createClient(config);
5
6
  return new OpencodeClient({ client });
package/package.json CHANGED
@@ -1,10 +1,16 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@opencode-ai/sdk",
4
- "version": "0.3.112",
4
+ "version": "0.3.121",
5
5
  "type": "module",
6
+ "scripts": {
7
+ "typecheck": "tsc --noEmit"
8
+ },
6
9
  "exports": {
7
- ".": "./dist/index.js"
10
+ ".": {
11
+ "development": "./src/index.ts",
12
+ "import": "./dist/index.js"
13
+ }
8
14
  },
9
15
  "files": [
10
16
  "dist"