@opencode-ai/sdk 1.1.6 → 1.1.7

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 Client, type Options as Options2, type TDataShape } from "./client/index.js";
2
- import type { AgentPartInput, AppAgentsResponses, AppLogErrors, AppLogResponses, Auth as Auth2, AuthSetErrors, AuthSetResponses, CommandListResponses, Config as Config2, ConfigGetResponses, ConfigProvidersResponses, ConfigUpdateErrors, ConfigUpdateResponses, EventSubscribeResponses, EventTuiCommandExecute, EventTuiPromptAppend, EventTuiSessionSelect, EventTuiToastShow, ExperimentalResourceListResponses, FileListResponses, FilePartInput, FilePartSource, FileReadResponses, FileStatusResponses, FindFilesResponses, FindSymbolsResponses, FindTextResponses, FormatterStatusResponses, GlobalDisposeResponses, GlobalEventResponses, GlobalHealthResponses, InstanceDisposeResponses, LspStatusResponses, McpAddErrors, McpAddResponses, McpAuthAuthenticateErrors, McpAuthAuthenticateResponses, McpAuthCallbackErrors, McpAuthCallbackResponses, McpAuthRemoveErrors, McpAuthRemoveResponses, McpAuthStartErrors, McpAuthStartResponses, McpConnectResponses, McpDisconnectResponses, McpLocalConfig, McpRemoteConfig, McpStatusResponses, Part as Part2, PartDeleteErrors, PartDeleteResponses, PartUpdateErrors, PartUpdateResponses, PathGetResponses, PermissionListResponses, PermissionReplyErrors, PermissionReplyResponses, PermissionRespondErrors, PermissionRespondResponses, PermissionRuleset, ProjectCurrentResponses, ProjectListResponses, ProjectUpdateErrors, ProjectUpdateResponses, ProviderAuthResponses, ProviderListResponses, ProviderOauthAuthorizeErrors, ProviderOauthAuthorizeResponses, ProviderOauthCallbackErrors, ProviderOauthCallbackResponses, PtyConnectErrors, PtyConnectResponses, PtyCreateErrors, PtyCreateResponses, PtyGetErrors, PtyGetResponses, PtyListResponses, PtyRemoveErrors, PtyRemoveResponses, PtyUpdateErrors, PtyUpdateResponses, SessionAbortErrors, SessionAbortResponses, SessionChildrenErrors, SessionChildrenResponses, SessionCommandErrors, SessionCommandResponses, SessionCreateErrors, SessionCreateResponses, SessionDeleteErrors, SessionDeleteResponses, SessionDiffErrors, SessionDiffResponses, SessionForkResponses, SessionGetErrors, SessionGetResponses, SessionInitErrors, SessionInitResponses, SessionListResponses, SessionMessageErrors, SessionMessageResponses, SessionMessagesErrors, SessionMessagesResponses, SessionPromptAsyncErrors, SessionPromptAsyncResponses, SessionPromptErrors, SessionPromptResponses, SessionRevertErrors, SessionRevertResponses, SessionShareErrors, SessionShareResponses, SessionShellErrors, SessionShellResponses, SessionStatusErrors, SessionStatusResponses, SessionSummarizeErrors, SessionSummarizeResponses, SessionTodoErrors, SessionTodoResponses, SessionUnrevertErrors, SessionUnrevertResponses, SessionUnshareErrors, SessionUnshareResponses, SessionUpdateErrors, SessionUpdateResponses, SubtaskPartInput, TextPartInput, ToolIdsErrors, ToolIdsResponses, ToolListErrors, ToolListResponses, TuiAppendPromptErrors, TuiAppendPromptResponses, TuiClearPromptResponses, TuiControlNextResponses, TuiControlResponseResponses, TuiExecuteCommandErrors, TuiExecuteCommandResponses, TuiOpenHelpResponses, TuiOpenModelsResponses, TuiOpenSessionsResponses, TuiOpenThemesResponses, TuiPublishErrors, TuiPublishResponses, TuiSelectSessionErrors, TuiSelectSessionResponses, TuiShowToastResponses, TuiSubmitPromptResponses, VcsGetResponses, WorktreeCreateErrors, WorktreeCreateInput, WorktreeCreateResponses, WorktreeListResponses } from "./types.gen.js";
2
+ import type { AgentPartInput, AppAgentsResponses, AppLogErrors, AppLogResponses, Auth as Auth2, AuthSetErrors, AuthSetResponses, CommandListResponses, Config as Config2, ConfigGetResponses, ConfigProvidersResponses, ConfigUpdateErrors, ConfigUpdateResponses, EventSubscribeResponses, EventTuiCommandExecute, EventTuiPromptAppend, EventTuiSessionSelect, EventTuiToastShow, ExperimentalResourceListResponses, FileListResponses, FilePartInput, FilePartSource, FileReadResponses, FileStatusResponses, FindFilesResponses, FindSymbolsResponses, FindTextResponses, FormatterStatusResponses, GlobalDisposeResponses, GlobalEventResponses, GlobalHealthResponses, InstanceDisposeResponses, LspStatusResponses, McpAddErrors, McpAddResponses, McpAuthAuthenticateErrors, McpAuthAuthenticateResponses, McpAuthCallbackErrors, McpAuthCallbackResponses, McpAuthRemoveErrors, McpAuthRemoveResponses, McpAuthStartErrors, McpAuthStartResponses, McpConnectResponses, McpDisconnectResponses, McpLocalConfig, McpRemoteConfig, McpStatusResponses, Part as Part2, PartDeleteErrors, PartDeleteResponses, PartUpdateErrors, PartUpdateResponses, PathGetResponses, PermissionListResponses, PermissionReplyErrors, PermissionReplyResponses, PermissionRespondErrors, PermissionRespondResponses, PermissionRuleset, ProjectCurrentResponses, ProjectListResponses, ProjectUpdateErrors, ProjectUpdateResponses, ProviderAuthResponses, ProviderListResponses, ProviderOauthAuthorizeErrors, ProviderOauthAuthorizeResponses, ProviderOauthCallbackErrors, ProviderOauthCallbackResponses, PtyConnectErrors, PtyConnectResponses, PtyCreateErrors, PtyCreateResponses, PtyGetErrors, PtyGetResponses, PtyListResponses, PtyRemoveErrors, PtyRemoveResponses, PtyUpdateErrors, PtyUpdateResponses, QuestionListResponses, QuestionRejectErrors, QuestionRejectResponses, QuestionReplyErrors, QuestionReplyResponses, SessionAbortErrors, SessionAbortResponses, SessionChildrenErrors, SessionChildrenResponses, SessionCommandErrors, SessionCommandResponses, SessionCreateErrors, SessionCreateResponses, SessionDeleteErrors, SessionDeleteResponses, SessionDiffErrors, SessionDiffResponses, SessionForkResponses, SessionGetErrors, SessionGetResponses, SessionInitErrors, SessionInitResponses, SessionListResponses, SessionMessageErrors, SessionMessageResponses, SessionMessagesErrors, SessionMessagesResponses, SessionPromptAsyncErrors, SessionPromptAsyncResponses, SessionPromptErrors, SessionPromptResponses, SessionRevertErrors, SessionRevertResponses, SessionShareErrors, SessionShareResponses, SessionShellErrors, SessionShellResponses, SessionStatusErrors, SessionStatusResponses, SessionSummarizeErrors, SessionSummarizeResponses, SessionTodoErrors, SessionTodoResponses, SessionUnrevertErrors, SessionUnrevertResponses, SessionUnshareErrors, SessionUnshareResponses, SessionUpdateErrors, SessionUpdateResponses, SubtaskPartInput, TextPartInput, ToolIdsErrors, ToolIdsResponses, ToolListErrors, ToolListResponses, TuiAppendPromptErrors, TuiAppendPromptResponses, TuiClearPromptResponses, TuiControlNextResponses, TuiControlResponseResponses, TuiExecuteCommandErrors, TuiExecuteCommandResponses, TuiOpenHelpResponses, TuiOpenModelsResponses, TuiOpenSessionsResponses, TuiOpenThemesResponses, TuiPublishErrors, TuiPublishResponses, TuiSelectSessionErrors, TuiSelectSessionResponses, TuiShowToastResponses, TuiSubmitPromptResponses, VcsGetResponses, WorktreeCreateErrors, WorktreeCreateInput, WorktreeCreateResponses, WorktreeListResponses } from "./types.gen.js";
3
3
  export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {
4
4
  /**
5
5
  * You can provide a client instance returned by `createClient()` instead of
@@ -568,6 +568,35 @@ export declare class Permission extends HeyApiClient {
568
568
  directory?: string;
569
569
  }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<PermissionListResponses, unknown, ThrowOnError, "fields">;
570
570
  }
571
+ export declare class Question extends HeyApiClient {
572
+ /**
573
+ * List pending questions
574
+ *
575
+ * Get all pending question requests across all sessions.
576
+ */
577
+ list<ThrowOnError extends boolean = false>(parameters?: {
578
+ directory?: string;
579
+ }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<QuestionListResponses, unknown, ThrowOnError, "fields">;
580
+ /**
581
+ * Reply to question request
582
+ *
583
+ * Provide answers to a question request from the AI assistant.
584
+ */
585
+ reply<ThrowOnError extends boolean = false>(parameters: {
586
+ requestID: string;
587
+ directory?: string;
588
+ answers?: Array<string>;
589
+ }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<QuestionReplyResponses, QuestionReplyErrors, ThrowOnError, "fields">;
590
+ /**
591
+ * Reject question request
592
+ *
593
+ * Reject a question request from the AI assistant.
594
+ */
595
+ reject<ThrowOnError extends boolean = false>(parameters: {
596
+ requestID: string;
597
+ directory?: string;
598
+ }, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<QuestionRejectResponses, QuestionRejectErrors, ThrowOnError, "fields">;
599
+ }
571
600
  export declare class Command extends HeyApiClient {
572
601
  /**
573
602
  * List commands
@@ -967,6 +996,7 @@ export declare class OpencodeClient extends HeyApiClient {
967
996
  session: Session;
968
997
  part: Part;
969
998
  permission: Permission;
999
+ question: Question;
970
1000
  command: Command;
971
1001
  provider: Provider;
972
1002
  find: Find;
@@ -1084,6 +1084,67 @@ export class Permission extends HeyApiClient {
1084
1084
  });
1085
1085
  }
1086
1086
  }
1087
+ export class Question extends HeyApiClient {
1088
+ /**
1089
+ * List pending questions
1090
+ *
1091
+ * Get all pending question requests across all sessions.
1092
+ */
1093
+ list(parameters, options) {
1094
+ const params = buildClientParams([parameters], [{ args: [{ in: "query", key: "directory" }] }]);
1095
+ return (options?.client ?? this.client).get({
1096
+ url: "/question",
1097
+ ...options,
1098
+ ...params,
1099
+ });
1100
+ }
1101
+ /**
1102
+ * Reply to question request
1103
+ *
1104
+ * Provide answers to a question request from the AI assistant.
1105
+ */
1106
+ reply(parameters, options) {
1107
+ const params = buildClientParams([parameters], [
1108
+ {
1109
+ args: [
1110
+ { in: "path", key: "requestID" },
1111
+ { in: "query", key: "directory" },
1112
+ { in: "body", key: "answers" },
1113
+ ],
1114
+ },
1115
+ ]);
1116
+ return (options?.client ?? this.client).post({
1117
+ url: "/question/{requestID}/reply",
1118
+ ...options,
1119
+ ...params,
1120
+ headers: {
1121
+ "Content-Type": "application/json",
1122
+ ...options?.headers,
1123
+ ...params.headers,
1124
+ },
1125
+ });
1126
+ }
1127
+ /**
1128
+ * Reject question request
1129
+ *
1130
+ * Reject a question request from the AI assistant.
1131
+ */
1132
+ reject(parameters, options) {
1133
+ const params = buildClientParams([parameters], [
1134
+ {
1135
+ args: [
1136
+ { in: "path", key: "requestID" },
1137
+ { in: "query", key: "directory" },
1138
+ ],
1139
+ },
1140
+ ]);
1141
+ return (options?.client ?? this.client).post({
1142
+ url: "/question/{requestID}/reject",
1143
+ ...options,
1144
+ ...params,
1145
+ });
1146
+ }
1147
+ }
1087
1148
  export class Command extends HeyApiClient {
1088
1149
  /**
1089
1150
  * List commands
@@ -1854,6 +1915,7 @@ export class OpencodeClient extends HeyApiClient {
1854
1915
  session = new Session({ client: this.client });
1855
1916
  part = new Part({ client: this.client });
1856
1917
  permission = new Permission({ client: this.client });
1918
+ question = new Question({ client: this.client });
1857
1919
  command = new Command({ client: this.client });
1858
1920
  provider = new Provider({ client: this.client });
1859
1921
  find = new Find({ client: this.client });
@@ -450,6 +450,61 @@ export type EventSessionIdle = {
450
450
  sessionID: string;
451
451
  };
452
452
  };
453
+ export type QuestionOption = {
454
+ /**
455
+ * Display text (1-5 words, concise)
456
+ */
457
+ label: string;
458
+ /**
459
+ * Explanation of choice
460
+ */
461
+ description: string;
462
+ };
463
+ export type QuestionInfo = {
464
+ /**
465
+ * Complete question
466
+ */
467
+ question: string;
468
+ /**
469
+ * Very short label (max 12 chars)
470
+ */
471
+ header: string;
472
+ /**
473
+ * Available choices
474
+ */
475
+ options: Array<QuestionOption>;
476
+ };
477
+ export type QuestionRequest = {
478
+ id: string;
479
+ sessionID: string;
480
+ /**
481
+ * Questions to ask
482
+ */
483
+ questions: Array<QuestionInfo>;
484
+ tool?: {
485
+ messageID: string;
486
+ callID: string;
487
+ };
488
+ };
489
+ export type EventQuestionAsked = {
490
+ type: "question.asked";
491
+ properties: QuestionRequest;
492
+ };
493
+ export type EventQuestionReplied = {
494
+ type: "question.replied";
495
+ properties: {
496
+ sessionID: string;
497
+ requestID: string;
498
+ answers: Array<string>;
499
+ };
500
+ };
501
+ export type EventQuestionRejected = {
502
+ type: "question.rejected";
503
+ properties: {
504
+ sessionID: string;
505
+ requestID: string;
506
+ };
507
+ };
453
508
  export type EventSessionCompacted = {
454
509
  type: "session.compacted";
455
510
  properties: {
@@ -663,7 +718,7 @@ export type EventGlobalDisposed = {
663
718
  [key: string]: unknown;
664
719
  };
665
720
  };
666
- export type Event = EventInstallationUpdated | EventInstallationUpdateAvailable | EventProjectUpdated | EventServerInstanceDisposed | EventLspClientDiagnostics | EventLspUpdated | EventMessageUpdated | EventMessageRemoved | EventMessagePartUpdated | EventMessagePartRemoved | EventPermissionAsked | EventPermissionReplied | EventSessionStatus | EventSessionIdle | EventSessionCompacted | EventFileEdited | EventTodoUpdated | EventTuiPromptAppend | EventTuiCommandExecute | EventTuiToastShow | EventTuiSessionSelect | EventMcpToolsChanged | EventCommandExecuted | EventSessionCreated | EventSessionUpdated | EventSessionDeleted | EventSessionDiff | EventSessionError | EventFileWatcherUpdated | EventVcsBranchUpdated | EventPtyCreated | EventPtyUpdated | EventPtyExited | EventPtyDeleted | EventServerConnected | EventGlobalDisposed;
721
+ export type Event = EventInstallationUpdated | EventInstallationUpdateAvailable | EventProjectUpdated | EventServerInstanceDisposed | EventLspClientDiagnostics | EventLspUpdated | EventMessageUpdated | EventMessageRemoved | EventMessagePartUpdated | EventMessagePartRemoved | EventPermissionAsked | EventPermissionReplied | EventSessionStatus | EventSessionIdle | EventQuestionAsked | EventQuestionReplied | EventQuestionRejected | EventSessionCompacted | EventFileEdited | EventTodoUpdated | EventTuiPromptAppend | EventTuiCommandExecute | EventTuiToastShow | EventTuiSessionSelect | EventMcpToolsChanged | EventCommandExecuted | EventSessionCreated | EventSessionUpdated | EventSessionDeleted | EventSessionDiff | EventSessionError | EventFileWatcherUpdated | EventVcsBranchUpdated | EventPtyCreated | EventPtyUpdated | EventPtyExited | EventPtyDeleted | EventServerConnected | EventGlobalDisposed;
667
722
  export type GlobalEvent = {
668
723
  directory: string;
669
724
  payload: Event;
@@ -1076,6 +1131,7 @@ export type PermissionConfig = {
1076
1131
  external_directory?: PermissionRuleConfig;
1077
1132
  todowrite?: PermissionActionConfig;
1078
1133
  todoread?: PermissionActionConfig;
1134
+ question?: PermissionActionConfig;
1079
1135
  webfetch?: PermissionActionConfig;
1080
1136
  websearch?: PermissionActionConfig;
1081
1137
  codesearch?: PermissionActionConfig;
@@ -3097,6 +3153,79 @@ export type PermissionListResponses = {
3097
3153
  200: Array<PermissionRequest>;
3098
3154
  };
3099
3155
  export type PermissionListResponse = PermissionListResponses[keyof PermissionListResponses];
3156
+ export type QuestionListData = {
3157
+ body?: never;
3158
+ path?: never;
3159
+ query?: {
3160
+ directory?: string;
3161
+ };
3162
+ url: "/question";
3163
+ };
3164
+ export type QuestionListResponses = {
3165
+ /**
3166
+ * List of pending questions
3167
+ */
3168
+ 200: Array<QuestionRequest>;
3169
+ };
3170
+ export type QuestionListResponse = QuestionListResponses[keyof QuestionListResponses];
3171
+ export type QuestionReplyData = {
3172
+ body?: {
3173
+ answers: Array<string>;
3174
+ };
3175
+ path: {
3176
+ requestID: string;
3177
+ };
3178
+ query?: {
3179
+ directory?: string;
3180
+ };
3181
+ url: "/question/{requestID}/reply";
3182
+ };
3183
+ export type QuestionReplyErrors = {
3184
+ /**
3185
+ * Bad request
3186
+ */
3187
+ 400: BadRequestError;
3188
+ /**
3189
+ * Not found
3190
+ */
3191
+ 404: NotFoundError;
3192
+ };
3193
+ export type QuestionReplyError = QuestionReplyErrors[keyof QuestionReplyErrors];
3194
+ export type QuestionReplyResponses = {
3195
+ /**
3196
+ * Question answered successfully
3197
+ */
3198
+ 200: boolean;
3199
+ };
3200
+ export type QuestionReplyResponse = QuestionReplyResponses[keyof QuestionReplyResponses];
3201
+ export type QuestionRejectData = {
3202
+ body?: never;
3203
+ path: {
3204
+ requestID: string;
3205
+ };
3206
+ query?: {
3207
+ directory?: string;
3208
+ };
3209
+ url: "/question/{requestID}/reject";
3210
+ };
3211
+ export type QuestionRejectErrors = {
3212
+ /**
3213
+ * Bad request
3214
+ */
3215
+ 400: BadRequestError;
3216
+ /**
3217
+ * Not found
3218
+ */
3219
+ 404: NotFoundError;
3220
+ };
3221
+ export type QuestionRejectError = QuestionRejectErrors[keyof QuestionRejectErrors];
3222
+ export type QuestionRejectResponses = {
3223
+ /**
3224
+ * Question rejected successfully
3225
+ */
3226
+ 200: boolean;
3227
+ };
3228
+ export type QuestionRejectResponse = QuestionRejectResponses[keyof QuestionRejectResponses];
3100
3229
  export type CommandListData = {
3101
3230
  body?: never;
3102
3231
  path?: never;
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": "1.1.6",
4
+ "version": "1.1.7",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "scripts": {