@opencode-ai/client 0.0.0-dev-18112 → 0.0.0-dev-18122

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.
@@ -1293,7 +1293,9 @@ export type SessionInterruptInput = {
1293
1293
  readonly sessionID: Session.ID;
1294
1294
  readonly continue?: boolean | undefined;
1295
1295
  };
1296
- export type SessionInterruptOutput = void;
1296
+ export type SessionInterruptOutput = {
1297
+ readonly interrupted: boolean;
1298
+ };
1297
1299
  export type SessionInterruptOperation<E = never> = (input: SessionInterruptInput) => Effect.Effect<SessionInterruptOutput, E>;
1298
1300
  export type SessionBackgroundInput = {
1299
1301
  readonly sessionID: Session.ID;
@@ -1412,10 +1414,6 @@ export interface ModelApi<E = never> {
1412
1414
  readonly default: ModelDefaultOperation<E>;
1413
1415
  }
1414
1416
  export type GenerateTextInput = {
1415
- readonly location?: {
1416
- readonly directory?: string | undefined;
1417
- readonly workspace?: string | undefined;
1418
- } | undefined;
1419
1417
  readonly prompt: string;
1420
1418
  readonly model?: Model.Ref | undefined;
1421
1419
  };
@@ -2129,6 +2127,14 @@ export interface WorktreeApi<E = never> {
2129
2127
  readonly remove: WorktreeRemoveOperation<E>;
2130
2128
  readonly refresh: WorktreeRefreshOperation<E>;
2131
2129
  }
2130
+ export type WorkspaceDestroyInput = {
2131
+ readonly workspaceID: Workspace.ID;
2132
+ };
2133
+ export type WorkspaceDestroyOutput = Workspace.DestroyResult;
2134
+ export type WorkspaceDestroyOperation<E = never> = (input: WorkspaceDestroyInput) => Effect.Effect<WorkspaceDestroyOutput, E>;
2135
+ export interface WorkspaceApi<E = never> {
2136
+ readonly destroy: WorkspaceDestroyOperation<E>;
2137
+ }
2132
2138
  export type VcsGetInput = {
2133
2139
  readonly location?: {
2134
2140
  readonly directory?: string | undefined;
@@ -2268,6 +2274,7 @@ export interface AppApi<E = never> {
2268
2274
  readonly shell: ShellApi<E>;
2269
2275
  readonly reference: ReferenceApi<E>;
2270
2276
  readonly worktree: WorktreeApi<E>;
2277
+ readonly workspace: WorkspaceApi<E>;
2271
2278
  readonly vcs: VcsApi<E>;
2272
2279
  readonly debug: DebugApi<E>;
2273
2280
  readonly migration: MigrationApi<E>;
@@ -1,7 +1,7 @@
1
1
  import { Effect, Stream, Schema } from "effect";
2
2
  import { Sse } from "effect/unstable/encoding";
3
3
  import { HttpClientError } from "effect/unstable/http";
4
- import type { HealthGetOutput, ServerGetOutput, LocationGetInput, AgentListInput, AgentListOutput, AgentGetInput, AgentGetOutput, PluginListInput, PluginListOutput, SessionListInput, SessionListOutput, SessionStatsInput, SessionStatsOutput, SessionCreateInput, SessionImportInput, SessionExportInput, SessionExportOutput, SessionActiveOutput, SessionGetInput, SessionRemoveInput, SessionForkInput, SessionSwitchAgentInput, SessionSwitchModelInput, SessionRenameInput, SessionMoveInput, SessionPromptInput, SessionCommandInput, SessionSkillInput, SessionSyntheticInput, SessionShellInput, SessionCompactInput, SessionWaitInput, SessionRevertStageInput, SessionRevertClearInput, SessionRevertCommitInput, SessionContextInput, SessionContextOutput, SessionInboxListInput, SessionInboxListOutput, SessionInboxCancelInput, SessionInboxSteerInput, SessionInboxQueueInput, SessionInstructionsEntryListInput, SessionInstructionsEntryListOutput, SessionInstructionsEntryPutInput, SessionInstructionsEntryRemoveInput, SessionGenerateInput, SessionGenerateOutput, SessionLogInput, SessionLogOutput, SessionInterruptInput, SessionBackgroundInput, SessionMessageInput, SessionEnvironmentInput, SessionViewInput, MessageListInput, MessageListOutput, ModelListInput, ModelListOutput, ModelDefaultInput, ModelDefaultOutput, GenerateTextInput, GenerateTextOutput, ProviderListInput, ProviderListOutput, ProviderGetInput, ProviderGetOutput, IntegrationListInput, IntegrationListOutput, IntegrationGetInput, IntegrationGetOutput, IntegrationWellknownAddInput, IntegrationConnectKeyInput, IntegrationOauthConnectInput, IntegrationOauthConnectOutput, IntegrationOauthStatusInput, IntegrationOauthStatusOutput, IntegrationOauthCompleteInput, IntegrationOauthCancelInput, IntegrationCommandConnectInput, IntegrationCommandConnectOutput, IntegrationCommandStatusInput, IntegrationCommandStatusOutput, IntegrationCommandCancelInput, McpListInput, McpListOutput, McpAddInput, McpRemoveInput, McpConnectInput, McpDisconnectInput, McpResourceCatalogInput, McpResourceCatalogOutput, CredentialUpdateInput, CredentialRemoveInput, ProjectListOutput, ProjectCurrentInput, FormRequestListInput, FormRequestListOutput, FormListInput, FormListOutput, FormCreateInput, FormGetInput, FormStateInput, FormReplyInput, FormCancelInput, PermissionRequestListInput, PermissionRequestListOutput, PermissionSavedListInput, PermissionSavedListOutput, PermissionSavedRemoveInput, PermissionCreateInput, PermissionCreateOutput, PermissionListInput, PermissionListOutput, PermissionGetInput, PermissionReplyInput, FileListInput, FileListOutput, FileFindInput, FileFindOutput, CommandListInput, CommandListOutput, SkillListInput, SkillListOutput, PtyListInput, PtyListOutput, PtyCreateInput, PtyCreateOutput, PtyGetInput, PtyGetOutput, PtyUpdateInput, PtyUpdateOutput, PtyRemoveInput, PtyConnectTokenInput, PtyConnectTokenOutput, ShellListInput, ShellListOutput, ShellCreateInput, ShellCreateOutput, ShellGetInput, ShellGetOutput, ShellTimeoutInput, ShellTimeoutOutput, ShellOutputInput, ShellOutputOutput, ShellRemoveInput, ReferenceListInput, ReferenceListOutput, WorktreeListInput, WorktreeCreateInput, WorktreeRemoveInput, WorktreeRefreshInput, VcsGetInput, VcsGetOutput, VcsStatusInput, VcsStatusOutput, VcsDiffInput, VcsDiffOutput, DebugLocationListOutput, DebugLocationEvictInput, MigrationV1StatusOutput, WebsearchProvidersInput, WebsearchProvidersOutput, WebsearchQueryInput, WebsearchQueryOutput, ConfigGetInput, ConfigGetOutput } from "../api/api.js";
4
+ import type { HealthGetOutput, ServerGetOutput, LocationGetInput, AgentListInput, AgentListOutput, AgentGetInput, AgentGetOutput, PluginListInput, PluginListOutput, SessionListInput, SessionListOutput, SessionStatsInput, SessionStatsOutput, SessionCreateInput, SessionImportInput, SessionExportInput, SessionExportOutput, SessionActiveOutput, SessionGetInput, SessionRemoveInput, SessionForkInput, SessionSwitchAgentInput, SessionSwitchModelInput, SessionRenameInput, SessionMoveInput, SessionPromptInput, SessionCommandInput, SessionSkillInput, SessionSyntheticInput, SessionShellInput, SessionCompactInput, SessionWaitInput, SessionRevertStageInput, SessionRevertClearInput, SessionRevertCommitInput, SessionContextInput, SessionContextOutput, SessionInboxListInput, SessionInboxListOutput, SessionInboxCancelInput, SessionInboxSteerInput, SessionInboxQueueInput, SessionInstructionsEntryListInput, SessionInstructionsEntryListOutput, SessionInstructionsEntryPutInput, SessionInstructionsEntryRemoveInput, SessionGenerateInput, SessionGenerateOutput, SessionLogInput, SessionLogOutput, SessionInterruptInput, SessionInterruptOutput, SessionBackgroundInput, SessionMessageInput, SessionEnvironmentInput, SessionViewInput, MessageListInput, MessageListOutput, ModelListInput, ModelListOutput, ModelDefaultInput, ModelDefaultOutput, GenerateTextInput, GenerateTextOutput, ProviderListInput, ProviderListOutput, ProviderGetInput, ProviderGetOutput, IntegrationListInput, IntegrationListOutput, IntegrationGetInput, IntegrationGetOutput, IntegrationWellknownAddInput, IntegrationConnectKeyInput, IntegrationOauthConnectInput, IntegrationOauthConnectOutput, IntegrationOauthStatusInput, IntegrationOauthStatusOutput, IntegrationOauthCompleteInput, IntegrationOauthCancelInput, IntegrationCommandConnectInput, IntegrationCommandConnectOutput, IntegrationCommandStatusInput, IntegrationCommandStatusOutput, IntegrationCommandCancelInput, McpListInput, McpListOutput, McpAddInput, McpRemoveInput, McpConnectInput, McpDisconnectInput, McpResourceCatalogInput, McpResourceCatalogOutput, CredentialUpdateInput, CredentialRemoveInput, ProjectListOutput, ProjectCurrentInput, FormRequestListInput, FormRequestListOutput, FormListInput, FormListOutput, FormCreateInput, FormGetInput, FormStateInput, FormReplyInput, FormCancelInput, PermissionRequestListInput, PermissionRequestListOutput, PermissionSavedListInput, PermissionSavedListOutput, PermissionSavedRemoveInput, PermissionCreateInput, PermissionCreateOutput, PermissionListInput, PermissionListOutput, PermissionGetInput, PermissionReplyInput, FileListInput, FileListOutput, FileFindInput, FileFindOutput, CommandListInput, CommandListOutput, SkillListInput, SkillListOutput, PtyListInput, PtyListOutput, PtyCreateInput, PtyCreateOutput, PtyGetInput, PtyGetOutput, PtyUpdateInput, PtyUpdateOutput, PtyRemoveInput, PtyConnectTokenInput, PtyConnectTokenOutput, ShellListInput, ShellListOutput, ShellCreateInput, ShellCreateOutput, ShellGetInput, ShellGetOutput, ShellTimeoutInput, ShellTimeoutOutput, ShellOutputInput, ShellOutputOutput, ShellRemoveInput, ReferenceListInput, ReferenceListOutput, WorktreeListInput, WorktreeCreateInput, WorktreeRemoveInput, WorktreeRefreshInput, WorkspaceDestroyInput, VcsGetInput, VcsGetOutput, VcsStatusInput, VcsStatusOutput, VcsDiffInput, VcsDiffOutput, DebugLocationListOutput, DebugLocationEvictInput, MigrationV1StatusOutput, WebsearchProvidersInput, WebsearchProvidersOutput, WebsearchQueryInput, WebsearchQueryOutput, ConfigGetInput, ConfigGetOutput } from "../api/api.js";
5
5
  import { ClientError } from "./client-error.js";
6
6
  export declare const make: (options?: {
7
7
  readonly baseUrl?: URL | string;
@@ -64,7 +64,7 @@ export declare const make: (options?: {
64
64
  };
65
65
  generate: (input: SessionGenerateInput) => Effect.Effect<SessionGenerateOutput, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | import("@opencode-ai/protocol/errors").ServiceUnavailableError | import("@opencode-ai/protocol/errors").SessionNotFoundError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
66
66
  log: (input: SessionLogInput) => Stream.Stream<SessionLogOutput, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | import("@opencode-ai/protocol/errors").SessionNotFoundError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError | Sse.Retry | Sse.SseError, never>;
67
- interrupt: (input: SessionInterruptInput) => Effect.Effect<void, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | import("@opencode-ai/protocol/errors").SessionNotFoundError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
67
+ interrupt: (input: SessionInterruptInput) => Effect.Effect<SessionInterruptOutput, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | import("@opencode-ai/protocol/errors").SessionNotFoundError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
68
68
  background: (input: SessionBackgroundInput) => Effect.Effect<void, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | import("@opencode-ai/protocol/errors").SessionNotFoundError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
69
69
  message: (input: SessionMessageInput) => Effect.Effect<import("@opencode-ai/schema/session-message").Info, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | import("@opencode-ai/protocol/errors").SessionNotFoundError | import("@opencode-ai/protocol/errors").MessageNotFoundError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
70
70
  environment: (input: SessionEnvironmentInput) => Effect.Effect<void, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | import("@opencode-ai/protocol/errors").SessionNotFoundError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
@@ -2136,7 +2136,7 @@ export declare const make: (options?: {
2136
2136
  readonly id: string & import("effect/Brand").Brand<"Event.ID">;
2137
2137
  readonly data: {
2138
2138
  readonly message: string;
2139
- readonly variant: "error" | "success" | "info" | "warning";
2139
+ readonly variant: "error" | "info" | "success" | "warning";
2140
2140
  readonly duration: number;
2141
2141
  readonly title?: string | undefined;
2142
2142
  };
@@ -2220,6 +2220,9 @@ export declare const make: (options?: {
2220
2220
  remove: (input: WorktreeRemoveInput) => Effect.Effect<void, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | Schema.SchemaError | import("@opencode-ai/protocol/groups/worktree").WorktreeError | ClientError | HttpClientError.HttpClientError, never>;
2221
2221
  refresh: (input: WorktreeRefreshInput) => Effect.Effect<void, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | Schema.SchemaError | import("@opencode-ai/protocol/groups/worktree").WorktreeError | ClientError | HttpClientError.HttpClientError, never>;
2222
2222
  };
2223
+ workspace: {
2224
+ destroy: (input: WorkspaceDestroyInput) => Effect.Effect<import("@opencode-ai/schema/workspace").DestroyResult, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | import("@opencode-ai/protocol/errors").UnknownError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
2225
+ };
2223
2226
  vcs: {
2224
2227
  get: (input?: VcsGetInput) => Effect.Effect<VcsGetOutput, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
2225
2228
  status: (input?: VcsStatusInput) => Effect.Effect<VcsStatusOutput, import("@opencode-ai/protocol/errors").InvalidRequestError | import("@opencode-ai/protocol/errors").UnauthorizedError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
@@ -210,10 +210,7 @@ const adaptGroupModel = (raw) => ({
210
210
  list: EndpointModelList(raw),
211
211
  default: EndpointModelDefault(raw),
212
212
  });
213
- const EndpointGenerateText = (raw) => (input) => preserveEffect()(raw["generate.text"]({
214
- query: { location: input["location"] },
215
- payload: { prompt: input["prompt"], model: input["model"] },
216
- }).pipe(Effect.mapError(mapClientError), Effect.map((value) => value.data)));
213
+ const EndpointGenerateText = (raw) => (input) => preserveEffect()(raw["generate.text"]({ payload: { prompt: input["prompt"], model: input["model"] } }).pipe(Effect.mapError(mapClientError), Effect.map((value) => value.data)));
217
214
  const adaptGroupGenerate = (raw) => ({ text: EndpointGenerateText(raw) });
218
215
  const EndpointProviderList = (raw) => (input) => preserveEffect()(raw["provider.list"]({ query: { location: input?.["location"] } }).pipe(Effect.mapError(mapClientError)));
219
216
  const EndpointProviderGet = (raw) => (input) => preserveEffect()(raw["provider.get"]({ params: { providerID: input["providerID"] }, query: { location: input["location"] } }).pipe(Effect.mapError(mapClientError)));
@@ -452,6 +449,8 @@ const adaptGroupWorktree = (raw) => ({
452
449
  remove: EndpointWorktreeRemove(raw),
453
450
  refresh: EndpointWorktreeRefresh(raw),
454
451
  });
452
+ const EndpointWorkspaceDestroy = (raw) => (input) => preserveEffect()(raw["workspace.destroy"]({ params: { workspaceID: input["workspaceID"] } }).pipe(Effect.mapError(mapClientError)));
453
+ const adaptGroupWorkspace = (raw) => ({ destroy: EndpointWorkspaceDestroy(raw) });
455
454
  const EndpointVcsGet = (raw) => (input) => preserveEffect()(raw["vcs.get"]({ query: { location: input?.["location"] } }).pipe(Effect.mapError(mapClientError)));
456
455
  const EndpointVcsStatus = (raw) => (input) => preserveEffect()(raw["vcs.status"]({ query: { location: input?.["location"] } }).pipe(Effect.mapError(mapClientError)));
457
456
  const EndpointVcsDiff = (raw) => (input) => preserveEffect()(raw["vcs.diff"]({ query: { location: input["location"], mode: input["mode"], context: input["context"] } }).pipe(Effect.mapError(mapClientError)));
@@ -503,6 +502,7 @@ const adaptClient = (raw) => ({
503
502
  shell: adaptGroupShell(raw["server.shell"]),
504
503
  reference: adaptGroupReference(raw["server.reference"]),
505
504
  worktree: adaptGroupWorktree(raw["server.worktree"]),
505
+ workspace: adaptGroupWorkspace(raw["server.workspace"]),
506
506
  vcs: adaptGroupVcs(raw["server.vcs"]),
507
507
  debug: adaptGroupDebug(raw["server.debug"]),
508
508
  migration: adaptGroupMigration(raw["server.migration"]),
@@ -1,4 +1,4 @@
1
- import type { ServerGetOutput, LocationGetInput, LocationGetOutput, AgentListInput, AgentListOutput, AgentGetInput, AgentGetOutput, PluginListInput, PluginListOutput, SessionListInput, SessionStatsInput, SessionCreateInput, SessionImportInput, SessionExportInput, SessionGetInput, SessionRemoveInput, SessionForkInput, SessionSwitchAgentInput, SessionSwitchModelInput, SessionRenameInput, SessionMoveInput, SessionPromptInput, SessionCommandInput, SessionSkillInput, SessionSyntheticInput, SessionShellInput, SessionCompactInput, SessionWaitInput, SessionRevertStageInput, SessionRevertClearInput, SessionRevertCommitInput, SessionContextInput, SessionInboxListInput, SessionInboxCancelInput, SessionInboxSteerInput, SessionInboxQueueInput, SessionInstructionsEntryListInput, SessionInstructionsEntryPutInput, SessionInstructionsEntryRemoveInput, SessionGenerateInput, SessionLogInput, SessionLogOutput, SessionInterruptInput, SessionBackgroundInput, SessionMessageInput, SessionEnvironmentInput, SessionViewInput, MessageListInput, ModelListInput, ModelListOutput, ModelDefaultInput, ModelDefaultOutput, GenerateTextInput, ProviderListInput, ProviderListOutput, ProviderGetInput, ProviderGetOutput, IntegrationListInput, IntegrationListOutput, IntegrationGetInput, IntegrationGetOutput, IntegrationWellknownAddInput, IntegrationConnectKeyInput, IntegrationOauthConnectInput, IntegrationOauthConnectOutput, IntegrationOauthStatusInput, IntegrationOauthStatusOutput, IntegrationOauthCompleteInput, IntegrationOauthCancelInput, IntegrationCommandConnectInput, IntegrationCommandConnectOutput, IntegrationCommandStatusInput, IntegrationCommandStatusOutput, IntegrationCommandCancelInput, McpListInput, McpListOutput, McpAddInput, McpRemoveInput, McpConnectInput, McpDisconnectInput, McpResourceCatalogInput, McpResourceCatalogOutput, CredentialUpdateInput, CredentialRemoveInput, ProjectListOutput, ProjectCurrentInput, FormRequestListInput, FormRequestListOutput, FormListInput, FormCreateInput, FormGetInput, FormStateInput, FormReplyInput, FormCancelInput, PermissionRequestListInput, PermissionRequestListOutput, PermissionSavedListInput, PermissionSavedRemoveInput, PermissionCreateInput, PermissionListInput, PermissionGetInput, PermissionReplyInput, FileReadInput, FileReadOutput, FileListInput, FileListOutput, FileFindInput, FileFindOutput, CommandListInput, CommandListOutput, SkillListInput, SkillListOutput, EventSubscribeOutput, PtyListInput, PtyListOutput, PtyCreateInput, PtyCreateOutput, PtyGetInput, PtyGetOutput, PtyUpdateInput, PtyUpdateOutput, PtyRemoveInput, PtyConnectTokenInput, PtyConnectTokenOutput, ShellListInput, ShellListOutput, ShellCreateInput, ShellCreateOutput, ShellGetInput, ShellGetOutput, ShellTimeoutInput, ShellTimeoutOutput, ShellOutputInput, ShellOutputOutput, ShellRemoveInput, ReferenceListInput, ReferenceListOutput, WorktreeListInput, WorktreeCreateInput, WorktreeRemoveInput, WorktreeRefreshInput, VcsGetInput, VcsGetOutput, VcsStatusInput, VcsStatusOutput, VcsDiffInput, VcsDiffOutput, DebugLocationListOutput, DebugLocationEvictInput, MigrationV1StatusOutput, WebsearchProvidersInput, WebsearchProvidersOutput, WebsearchQueryInput, WebsearchQueryOutput, ConfigGetInput, ConfigGetOutput } from "./types.js";
1
+ import type { ServerGetOutput, LocationGetInput, LocationGetOutput, AgentListInput, AgentListOutput, AgentGetInput, AgentGetOutput, PluginListInput, PluginListOutput, SessionListInput, SessionStatsInput, SessionCreateInput, SessionImportInput, SessionExportInput, SessionGetInput, SessionRemoveInput, SessionForkInput, SessionSwitchAgentInput, SessionSwitchModelInput, SessionRenameInput, SessionMoveInput, SessionPromptInput, SessionCommandInput, SessionSkillInput, SessionSyntheticInput, SessionShellInput, SessionCompactInput, SessionWaitInput, SessionRevertStageInput, SessionRevertClearInput, SessionRevertCommitInput, SessionContextInput, SessionInboxListInput, SessionInboxCancelInput, SessionInboxSteerInput, SessionInboxQueueInput, SessionInstructionsEntryListInput, SessionInstructionsEntryPutInput, SessionInstructionsEntryRemoveInput, SessionGenerateInput, SessionLogInput, SessionLogOutput, SessionInterruptInput, SessionBackgroundInput, SessionMessageInput, SessionEnvironmentInput, SessionViewInput, MessageListInput, ModelListInput, ModelListOutput, ModelDefaultInput, ModelDefaultOutput, GenerateTextInput, ProviderListInput, ProviderListOutput, ProviderGetInput, ProviderGetOutput, IntegrationListInput, IntegrationListOutput, IntegrationGetInput, IntegrationGetOutput, IntegrationWellknownAddInput, IntegrationConnectKeyInput, IntegrationOauthConnectInput, IntegrationOauthConnectOutput, IntegrationOauthStatusInput, IntegrationOauthStatusOutput, IntegrationOauthCompleteInput, IntegrationOauthCancelInput, IntegrationCommandConnectInput, IntegrationCommandConnectOutput, IntegrationCommandStatusInput, IntegrationCommandStatusOutput, IntegrationCommandCancelInput, McpListInput, McpListOutput, McpAddInput, McpRemoveInput, McpConnectInput, McpDisconnectInput, McpResourceCatalogInput, McpResourceCatalogOutput, CredentialUpdateInput, CredentialRemoveInput, ProjectListOutput, ProjectCurrentInput, FormRequestListInput, FormRequestListOutput, FormListInput, FormCreateInput, FormGetInput, FormStateInput, FormReplyInput, FormCancelInput, PermissionRequestListInput, PermissionRequestListOutput, PermissionSavedListInput, PermissionSavedRemoveInput, PermissionCreateInput, PermissionListInput, PermissionGetInput, PermissionReplyInput, FileReadInput, FileReadOutput, FileListInput, FileListOutput, FileFindInput, FileFindOutput, CommandListInput, CommandListOutput, SkillListInput, SkillListOutput, EventSubscribeOutput, PtyListInput, PtyListOutput, PtyCreateInput, PtyCreateOutput, PtyGetInput, PtyGetOutput, PtyUpdateInput, PtyUpdateOutput, PtyRemoveInput, PtyConnectTokenInput, PtyConnectTokenOutput, ShellListInput, ShellListOutput, ShellCreateInput, ShellCreateOutput, ShellGetInput, ShellGetOutput, ShellTimeoutInput, ShellTimeoutOutput, ShellOutputInput, ShellOutputOutput, ShellRemoveInput, ReferenceListInput, ReferenceListOutput, WorktreeListInput, WorktreeCreateInput, WorktreeRemoveInput, WorktreeRefreshInput, WorkspaceDestroyInput, VcsGetInput, VcsGetOutput, VcsStatusInput, VcsStatusOutput, VcsDiffInput, VcsDiffOutput, DebugLocationListOutput, DebugLocationEvictInput, MigrationV1StatusOutput, WebsearchProvidersInput, WebsearchProvidersOutput, WebsearchQueryInput, WebsearchQueryOutput, ConfigGetInput, ConfigGetOutput } from "./types.js";
2
2
  export interface ClientOptions {
3
3
  readonly baseUrl: string;
4
4
  readonly fetch?: typeof globalThis.fetch;
@@ -71,7 +71,7 @@ export declare function make(options: ClientOptions): {
71
71
  text: string;
72
72
  }>;
73
73
  log: (input: SessionLogInput, requestOptions?: RequestOptions) => AsyncIterable<SessionLogOutput>;
74
- interrupt: (input: SessionInterruptInput, requestOptions?: RequestOptions) => Promise<void>;
74
+ interrupt: (input: SessionInterruptInput, requestOptions?: RequestOptions) => Promise<import("./types.js").SessionInterruptResponse>;
75
75
  background: (input: SessionBackgroundInput, requestOptions?: RequestOptions) => Promise<void>;
76
76
  message: (input: SessionMessageInput, requestOptions?: RequestOptions) => Promise<import("./types.js").SessionMessageAgentSelected | import("./types.js").SessionMessageModelSelected | import("./types.js").SessionMessageLocationSwitched | import("./types.js").SessionMessageSynthetic | import("./types.js").SessionMessageSystem | import("./types.js").SessionMessageSkill | import("./types.js").SessionMessageShell | import("./types.js").SessionMessageCompactionRunning | import("./types.js").SessionMessageCompactionCompleted | import("./types.js").SessionMessageCompactionFailed | import("./types.js").SessionMessageUser | import("./types.js").SessionMessageAssistant>;
77
77
  environment: (input: SessionEnvironmentInput, requestOptions?: RequestOptions) => Promise<void>;
@@ -207,6 +207,9 @@ export declare function make(options: ClientOptions): {
207
207
  remove: (input: WorktreeRemoveInput, requestOptions?: RequestOptions) => Promise<void>;
208
208
  refresh: (input: WorktreeRefreshInput, requestOptions?: RequestOptions) => Promise<void>;
209
209
  };
210
+ workspace: {
211
+ destroy: (input: WorkspaceDestroyInput, requestOptions?: RequestOptions) => Promise<import("./types.js").WorkspaceDestroyResult>;
212
+ };
210
213
  vcs: {
211
214
  get: (input?: VcsGetInput, requestOptions?: RequestOptions) => Promise<VcsGetOutput>;
212
215
  status: (input?: VcsStatusInput, requestOptions?: RequestOptions) => Promise<VcsStatusOutput>;
@@ -480,9 +480,9 @@ export function make(options) {
480
480
  method: "POST",
481
481
  path: `/api/session/${encodeURIComponent(input.sessionID)}/interrupt`,
482
482
  query: { continue: input["continue"] },
483
- successStatus: 204,
483
+ successStatus: 200,
484
484
  declaredStatuses: [404, 400, 401],
485
- empty: true,
485
+ empty: false,
486
486
  }, requestOptions),
487
487
  background: (input, requestOptions) => request({
488
488
  method: "POST",
@@ -547,7 +547,6 @@ export function make(options) {
547
547
  text: (input, requestOptions) => request({
548
548
  method: "POST",
549
549
  path: `/api/generate`,
550
- query: { location: input["location"] },
551
550
  body: { prompt: input["prompt"], model: input["model"] },
552
551
  successStatus: 200,
553
552
  declaredStatuses: [400, 503, 401],
@@ -1096,6 +1095,15 @@ export function make(options) {
1096
1095
  empty: true,
1097
1096
  }, requestOptions),
1098
1097
  },
1098
+ workspace: {
1099
+ destroy: (input, requestOptions) => request({
1100
+ method: "DELETE",
1101
+ path: `/api/workspace/${encodeURIComponent(input.workspaceID)}`,
1102
+ successStatus: 200,
1103
+ declaredStatuses: [500, 401, 400],
1104
+ empty: false,
1105
+ }, requestOptions),
1106
+ },
1099
1107
  vcs: {
1100
1108
  get: (input, requestOptions) => request({
1101
1109
  method: "GET",
@@ -121,6 +121,9 @@ export type EventLogSynced = {
121
121
  aggregateID: string;
122
122
  seq?: number;
123
123
  };
124
+ export type SessionInterruptResponse = {
125
+ interrupted: boolean;
126
+ };
124
127
  export type ModelReasoningField = "reasoning" | "reasoning_content" | "reasoning_text" | (string & {});
125
128
  export type ModelMaxTokensField = "max_completion_tokens" | "max_tokens";
126
129
  export type MoneyUSDPerMillionTokens = number;
@@ -299,6 +302,9 @@ export type WorktreeDirectory = {
299
302
  export type WorktreeInfo = {
300
303
  directory: string;
301
304
  };
305
+ export type WorkspaceDestroyResult = {
306
+ destroyed: boolean;
307
+ };
302
308
  export type VcsBranch = {
303
309
  current?: string;
304
310
  default?: string;
@@ -5413,7 +5419,7 @@ export type SessionInterruptInput = {
5413
5419
  readonly continue?: boolean | undefined;
5414
5420
  }["continue"];
5415
5421
  };
5416
- export type SessionInterruptOutput = void;
5422
+ export type SessionInterruptOutput = SessionInterruptResponse;
5417
5423
  export type SessionBackgroundInput = {
5418
5424
  readonly sessionID: {
5419
5425
  readonly sessionID: string;
@@ -5515,12 +5521,6 @@ export type ModelDefaultOutput = {
5515
5521
  data: ModelInfo | null;
5516
5522
  };
5517
5523
  export type GenerateTextInput = {
5518
- readonly location?: {
5519
- readonly location?: {
5520
- readonly directory?: string | undefined;
5521
- readonly workspace?: string | undefined;
5522
- } | undefined;
5523
- }["location"];
5524
5524
  readonly prompt: {
5525
5525
  readonly prompt: string;
5526
5526
  readonly model?: {
@@ -7628,6 +7628,12 @@ export type WorktreeRefreshInput = {
7628
7628
  }["projectID"];
7629
7629
  };
7630
7630
  export type WorktreeRefreshOutput = void;
7631
+ export type WorkspaceDestroyInput = {
7632
+ readonly workspaceID: {
7633
+ readonly workspaceID: string;
7634
+ }["workspaceID"];
7635
+ };
7636
+ export type WorkspaceDestroyOutput = WorkspaceDestroyResult;
7631
7637
  export type VcsGetInput = {
7632
7638
  readonly location?: {
7633
7639
  readonly location?: {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@opencode-ai/client",
4
- "version": "0.0.0-dev-18112",
4
+ "version": "0.0.0-dev-18122",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -57,8 +57,8 @@
57
57
  "typecheck": "tsgo --noEmit"
58
58
  },
59
59
  "dependencies": {
60
- "@opencode-ai/schema": "0.0.0-dev-18112",
61
- "@opencode-ai/protocol": "0.0.0-dev-18112"
60
+ "@opencode-ai/schema": "0.0.0-dev-18122",
61
+ "@opencode-ai/protocol": "0.0.0-dev-18122"
62
62
  },
63
63
  "peerDependencies": {
64
64
  "effect": "4.0.0-rc.111",
@@ -74,7 +74,7 @@
74
74
  },
75
75
  "devDependencies": {
76
76
  "@effect/platform-node": "4.0.0-rc.111",
77
- "@opencode-ai/httpapi-codegen": "0.0.0-dev-18112",
77
+ "@opencode-ai/httpapi-codegen": "0.0.0-dev-18122",
78
78
  "@tsconfig/bun": "1.0.9",
79
79
  "@types/bun": "1.3.13",
80
80
  "@typescript/native-preview": "7.0.0-dev.20251207.1",