@opencode/client 2.0.5 → 2.0.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.
- package/dist/effect/api/api.d.ts +10 -3
- package/dist/effect/client.d.ts +25 -1
- package/dist/effect/generated/client.d.ts +26 -2
- package/dist/effect/generated/client.js +7 -3
- package/dist/effect/service.js +8 -8
- package/dist/promise/client.d.ts +3 -1
- package/dist/promise/generated/client.d.ts +4 -2
- package/dist/promise/generated/client.js +24 -3
- package/dist/promise/generated/types.d.ts +96 -9
- package/dist/promise/generated/types.js +1 -1
- package/dist/promise/service.js +8 -8
- package/dist/solid/data.js +2 -1
- package/package.json +4 -4
package/dist/effect/api/api.d.ts
CHANGED
|
@@ -37,14 +37,17 @@ import type { Worktree } from "@opencode/schema/worktree";
|
|
|
37
37
|
import type { Vcs } from "@opencode/schema/vcs";
|
|
38
38
|
import type { WebSearch } from "@opencode/schema/websearch";
|
|
39
39
|
import type { Config } from "@opencode/schema/config";
|
|
40
|
-
export type
|
|
40
|
+
export type ServerInfoOutput = {
|
|
41
41
|
readonly version: string;
|
|
42
42
|
readonly pid: number;
|
|
43
43
|
readonly urls: ReadonlyArray<string>;
|
|
44
|
+
readonly paths: {
|
|
45
|
+
readonly tmp: string;
|
|
46
|
+
};
|
|
44
47
|
};
|
|
45
|
-
export type
|
|
48
|
+
export type ServerInfoOperation<E = never> = () => Effect.Effect<ServerInfoOutput, E>;
|
|
46
49
|
export interface ServerApi<E = never> {
|
|
47
|
-
readonly
|
|
50
|
+
readonly info: ServerInfoOperation<E>;
|
|
48
51
|
}
|
|
49
52
|
export type LocationGetInput = {
|
|
50
53
|
readonly location?: {
|
|
@@ -53,8 +56,11 @@ export type LocationGetInput = {
|
|
|
53
56
|
};
|
|
54
57
|
export type LocationGetOutput = Location.PublicInfo;
|
|
55
58
|
export type LocationGetOperation<E = never> = (input?: LocationGetInput) => Effect.Effect<LocationGetOutput, E>;
|
|
59
|
+
export type LocationReloadOutput = void;
|
|
60
|
+
export type LocationReloadOperation<E = never> = () => Effect.Effect<LocationReloadOutput, E>;
|
|
56
61
|
export interface LocationApi<E = never> {
|
|
57
62
|
readonly get: LocationGetOperation<E>;
|
|
63
|
+
readonly reload: LocationReloadOperation<E>;
|
|
58
64
|
}
|
|
59
65
|
export type AgentListInput = {
|
|
60
66
|
readonly location?: {
|
|
@@ -932,6 +938,7 @@ export type SessionLogOutput = ({
|
|
|
932
938
|
readonly agent: Agent.ID;
|
|
933
939
|
readonly model: Model.Ref;
|
|
934
940
|
readonly snapshot?: (string & Brand.Brand<"Snapshot.ID">) | undefined;
|
|
941
|
+
readonly started: number;
|
|
935
942
|
};
|
|
936
943
|
} | {
|
|
937
944
|
readonly id: Event.ID;
|
package/dist/effect/client.d.ts
CHANGED
|
@@ -43,6 +43,7 @@ export declare const make: (options?: {
|
|
|
43
43
|
}[] | undefined;
|
|
44
44
|
readonly custom?: boolean | undefined;
|
|
45
45
|
readonly title?: string | undefined;
|
|
46
|
+
readonly hidden?: boolean | undefined;
|
|
46
47
|
readonly when?: readonly {
|
|
47
48
|
readonly key: string;
|
|
48
49
|
readonly op: "eq" | "neq";
|
|
@@ -55,6 +56,7 @@ export declare const make: (options?: {
|
|
|
55
56
|
readonly description?: string | undefined;
|
|
56
57
|
readonly default?: number | undefined;
|
|
57
58
|
readonly title?: string | undefined;
|
|
59
|
+
readonly hidden?: boolean | undefined;
|
|
58
60
|
readonly when?: readonly {
|
|
59
61
|
readonly key: string;
|
|
60
62
|
readonly op: "eq" | "neq";
|
|
@@ -69,6 +71,7 @@ export declare const make: (options?: {
|
|
|
69
71
|
readonly description?: string | undefined;
|
|
70
72
|
readonly default?: number | undefined;
|
|
71
73
|
readonly title?: string | undefined;
|
|
74
|
+
readonly hidden?: boolean | undefined;
|
|
72
75
|
readonly when?: readonly {
|
|
73
76
|
readonly key: string;
|
|
74
77
|
readonly op: "eq" | "neq";
|
|
@@ -83,6 +86,7 @@ export declare const make: (options?: {
|
|
|
83
86
|
readonly description?: string | undefined;
|
|
84
87
|
readonly default?: boolean | undefined;
|
|
85
88
|
readonly title?: string | undefined;
|
|
89
|
+
readonly hidden?: boolean | undefined;
|
|
86
90
|
readonly when?: readonly {
|
|
87
91
|
readonly key: string;
|
|
88
92
|
readonly op: "eq" | "neq";
|
|
@@ -101,6 +105,7 @@ export declare const make: (options?: {
|
|
|
101
105
|
readonly default?: readonly string[] | undefined;
|
|
102
106
|
readonly custom?: boolean | undefined;
|
|
103
107
|
readonly title?: string | undefined;
|
|
108
|
+
readonly hidden?: boolean | undefined;
|
|
104
109
|
readonly when?: readonly {
|
|
105
110
|
readonly key: string;
|
|
106
111
|
readonly op: "eq" | "neq";
|
|
@@ -132,6 +137,7 @@ export declare const make: (options?: {
|
|
|
132
137
|
}[] | undefined;
|
|
133
138
|
readonly custom?: boolean | undefined;
|
|
134
139
|
readonly title?: string | undefined;
|
|
140
|
+
readonly hidden?: boolean | undefined;
|
|
135
141
|
readonly when?: readonly {
|
|
136
142
|
readonly key: string;
|
|
137
143
|
readonly op: "eq" | "neq";
|
|
@@ -144,6 +150,7 @@ export declare const make: (options?: {
|
|
|
144
150
|
readonly description?: string | undefined;
|
|
145
151
|
readonly default?: number | undefined;
|
|
146
152
|
readonly title?: string | undefined;
|
|
153
|
+
readonly hidden?: boolean | undefined;
|
|
147
154
|
readonly when?: readonly {
|
|
148
155
|
readonly key: string;
|
|
149
156
|
readonly op: "eq" | "neq";
|
|
@@ -158,6 +165,7 @@ export declare const make: (options?: {
|
|
|
158
165
|
readonly description?: string | undefined;
|
|
159
166
|
readonly default?: number | undefined;
|
|
160
167
|
readonly title?: string | undefined;
|
|
168
|
+
readonly hidden?: boolean | undefined;
|
|
161
169
|
readonly when?: readonly {
|
|
162
170
|
readonly key: string;
|
|
163
171
|
readonly op: "eq" | "neq";
|
|
@@ -172,6 +180,7 @@ export declare const make: (options?: {
|
|
|
172
180
|
readonly description?: string | undefined;
|
|
173
181
|
readonly default?: boolean | undefined;
|
|
174
182
|
readonly title?: string | undefined;
|
|
183
|
+
readonly hidden?: boolean | undefined;
|
|
175
184
|
readonly when?: readonly {
|
|
176
185
|
readonly key: string;
|
|
177
186
|
readonly op: "eq" | "neq";
|
|
@@ -190,6 +199,7 @@ export declare const make: (options?: {
|
|
|
190
199
|
readonly default?: readonly string[] | undefined;
|
|
191
200
|
readonly custom?: boolean | undefined;
|
|
192
201
|
readonly title?: string | undefined;
|
|
202
|
+
readonly hidden?: boolean | undefined;
|
|
193
203
|
readonly when?: readonly {
|
|
194
204
|
readonly key: string;
|
|
195
205
|
readonly op: "eq" | "neq";
|
|
@@ -1110,6 +1120,7 @@ export declare const make: (options?: {
|
|
|
1110
1120
|
readonly providerID: string & import("effect/Brand").Brand<"Provider.ID">;
|
|
1111
1121
|
readonly variant?: (string & import("effect/Brand").Brand<"Model.VariantID">) | undefined;
|
|
1112
1122
|
};
|
|
1123
|
+
readonly started: number;
|
|
1113
1124
|
readonly agent: string & import("effect/Brand").Brand<"Agent.ID">;
|
|
1114
1125
|
readonly assistantMessageID: string & import("effect/Brand").Brand<"Session.Message.ID">;
|
|
1115
1126
|
readonly snapshot?: (string & import("effect/Brand").Brand<"Snapshot.ID">) | undefined;
|
|
@@ -1896,6 +1907,18 @@ export declare const make: (options?: {
|
|
|
1896
1907
|
readonly metadata?: {
|
|
1897
1908
|
readonly [x: string]: unknown;
|
|
1898
1909
|
} | undefined;
|
|
1910
|
+
} | {
|
|
1911
|
+
readonly id: string & import("effect/Brand").Brand<"Event.ID">;
|
|
1912
|
+
readonly data: {};
|
|
1913
|
+
readonly type: "location.shutdown";
|
|
1914
|
+
readonly created: number;
|
|
1915
|
+
readonly location?: {
|
|
1916
|
+
readonly directory: string & import("effect/Brand").Brand<"AbsolutePath">;
|
|
1917
|
+
readonly workspaceID?: (string & import("effect/Brand").Brand<"Workspace.ID">) | undefined;
|
|
1918
|
+
} | undefined;
|
|
1919
|
+
readonly metadata?: {
|
|
1920
|
+
readonly [x: string]: unknown;
|
|
1921
|
+
} | undefined;
|
|
1899
1922
|
} | {
|
|
1900
1923
|
readonly id: string & import("effect/Brand").Brand<"Event.ID">;
|
|
1901
1924
|
readonly data: {
|
|
@@ -2232,10 +2255,11 @@ export declare const make: (options?: {
|
|
|
2232
2255
|
call: (input: import("./api.js").RpcCallInput) => Effect.Effect<import("./api.js").RpcCallOutput, import("@opencode/protocol/errors").InvalidRequestError | import("@opencode/protocol/errors").RpcError | import("@opencode/protocol/errors").RpcInternalError | import("@opencode/protocol/errors").UnauthorizedError | import("effect/Schema").SchemaError | ClientError | import("effect/unstable/http/HttpClientError").HttpClientError, never>;
|
|
2233
2256
|
};
|
|
2234
2257
|
server: {
|
|
2235
|
-
|
|
2258
|
+
info: () => Effect.Effect<import("./api.js").ServerInfoOutput, import("@opencode/protocol/errors").InvalidRequestError | import("@opencode/protocol/errors").UnauthorizedError | import("effect/Schema").SchemaError | ClientError | import("effect/unstable/http/HttpClientError").HttpClientError, never>;
|
|
2236
2259
|
};
|
|
2237
2260
|
location: {
|
|
2238
2261
|
get: (input?: import("./api.js").LocationGetInput) => Effect.Effect<import("@opencode/schema/location").PublicInfo, import("@opencode/protocol/errors").InvalidRequestError | import("@opencode/protocol/errors").UnauthorizedError | import("effect/Schema").SchemaError | ClientError | import("effect/unstable/http/HttpClientError").HttpClientError, never>;
|
|
2262
|
+
reload: () => Effect.Effect<void, import("@opencode/protocol/errors").InvalidRequestError | import("@opencode/protocol/errors").UnauthorizedError | import("@opencode/protocol/errors").ServiceUnavailableError | import("effect/Schema").SchemaError | ClientError | import("effect/unstable/http/HttpClientError").HttpClientError, never>;
|
|
2239
2263
|
};
|
|
2240
2264
|
agent: {
|
|
2241
2265
|
list: (input?: import("./api.js").AgentListInput) => Effect.Effect<import("./api.js").AgentListOutput, import("@opencode/protocol/errors").InvalidRequestError | import("@opencode/protocol/errors").UnauthorizedError | import("effect/Schema").SchemaError | ClientError | import("effect/unstable/http/HttpClientError").HttpClientError, never>;
|
|
@@ -1,16 +1,17 @@
|
|
|
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 {
|
|
4
|
+
import type { ServerInfoOutput, LocationGetInput, AgentListInput, AgentListOutput, AgentGetInput, AgentGetOutput, PluginListInput, PluginListOutput, PluginCheckInput, PluginCheckOutput, PluginUpdateInput, SessionListInput, SessionListOutput, SessionStatsInput, SessionStatsOutput, SessionCreateInput, SessionImportInput, SessionExportInput, SessionExportOutput, SessionActiveOutput, SessionGetInput, SessionRemoveInput, SessionForkInput, SessionSwitchAgentInput, SessionSwitchModelInput, SessionUpdateInput, SessionMoveInput, SessionPromptInput, SessionCommandInput, SessionSkillInput, SessionSyntheticInput, SessionShellInput, SessionCompactInput, SessionWaitInput, SessionRevertStageInput, SessionRevertClearInput, SessionRevertCommitInput, SessionContextInput, SessionContextOutput, SessionDiffInput, SessionDiffOutput, SessionInboxListInput, SessionInboxListOutput, SessionInboxCancelInput, SessionInboxUpdateInput, SessionInstructionsEntryListInput, SessionInstructionsEntryListOutput, SessionInstructionsEntryPutInput, SessionInstructionsEntryRemoveInput, SessionGenerateInput, SessionGenerateOutput, SessionLogInput, SessionLogOutput, SessionInterruptInput, SessionInterruptOutput, SessionBackgroundInput, SessionMessageGetInput, SessionFormListInput, SessionFormListOutput, SessionFormCreateInput, SessionFormGetInput, SessionFormReplyInput, SessionFormCancelInput, 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, CredentialActivateInput, CredentialRemoveInput, ProjectListOutput, ProjectUpdateInput, FormListInput, FormListOutput, PermissionRequestListInput, PermissionRequestListOutput, PermissionSavedListInput, PermissionSavedListOutput, PermissionSavedRemoveInput, PermissionCreateInput, PermissionCreateOutput, PermissionListInput, PermissionListOutput, PermissionGetInput, PermissionReplyInput, FileListInput, FileListOutput, FileFindInput, FileFindOutput, CommandListInput, CommandListOutput, SkillListInput, SkillListOutput, RpcCallInput, RpcCallOutput, PtyListInput, PtyListOutput, PtyCreateInput, PtyCreateOutput, PtyGetInput, PtyGetOutput, PtyUpdateInput, PtyUpdateOutput, PtyRemoveInput, PtyConnectTokenInput, PtyConnectTokenOutput, ExperimentalPersistentPtyReadInput, ExperimentalPersistentPtyReadOutput, ExperimentalPersistentPtyListInput, ExperimentalPersistentPtyListOutput, ExperimentalPersistentPtyCreateInput, ExperimentalPersistentPtyCreateOutput, ExperimentalPersistentPtyHandoffOutput, ExperimentalPersistentPtyGetInput, ExperimentalPersistentPtyGetOutput, ExperimentalPersistentPtyUpdateInput, ExperimentalPersistentPtyUpdateOutput, ExperimentalPersistentPtySnapshotInput, ExperimentalPersistentPtySnapshotOutput, ExperimentalPersistentPtyRemoveInput, ExperimentalPersistentPtyConnectTokenInput, ShellListInput, ShellListOutput, ShellCreateInput, ShellCreateOutput, ShellGetInput, ShellGetOutput, ShellOutputInput, ShellOutputOutput, ShellRemoveInput, ReferenceListInput, ReferenceListOutput, WorktreeListInput, WorktreeCreateInput, WorktreeRemoveInput, WorktreeRefreshInput, VcsGetInput, VcsGetOutput, VcsBaseInput, VcsBaseOutput, VcsStatusInput, VcsStatusOutput, VcsBranchListInput, VcsBranchListOutput, VcsDiffInput, VcsDiffOutput, DebugLocationListOutput, DebugLocationEvictInput, MigrationV1StatusOutput, WebsearchProvidersInput, WebsearchProvidersOutput, WebsearchQueryInput, WebsearchQueryOutput, ConfigGetInput, ConfigGetOutput, ConfigShellsOutput, ConfigUpdateInput } 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;
|
|
8
8
|
}) => Effect.Effect<{
|
|
9
9
|
server: {
|
|
10
|
-
|
|
10
|
+
info: () => Effect.Effect<ServerInfoOutput, import("@opencode/protocol/errors").InvalidRequestError | import("@opencode/protocol/errors").UnauthorizedError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
|
|
11
11
|
};
|
|
12
12
|
location: {
|
|
13
13
|
get: (input?: LocationGetInput) => Effect.Effect<import("@opencode/schema/location").PublicInfo, import("@opencode/protocol/errors").InvalidRequestError | import("@opencode/protocol/errors").UnauthorizedError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
|
|
14
|
+
reload: () => Effect.Effect<void, import("@opencode/protocol/errors").InvalidRequestError | import("@opencode/protocol/errors").UnauthorizedError | import("@opencode/protocol/errors").ServiceUnavailableError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
|
|
14
15
|
};
|
|
15
16
|
agent: {
|
|
16
17
|
list: (input?: AgentListInput) => Effect.Effect<AgentListOutput, import("@opencode/protocol/errors").InvalidRequestError | import("@opencode/protocol/errors").UnauthorizedError | Schema.SchemaError | ClientError | HttpClientError.HttpClientError, never>;
|
|
@@ -197,6 +198,7 @@ export declare const make: (options?: {
|
|
|
197
198
|
}[] | undefined;
|
|
198
199
|
readonly custom?: boolean | undefined;
|
|
199
200
|
readonly title?: string | undefined;
|
|
201
|
+
readonly hidden?: boolean | undefined;
|
|
200
202
|
readonly when?: readonly {
|
|
201
203
|
readonly key: string;
|
|
202
204
|
readonly op: "eq" | "neq";
|
|
@@ -209,6 +211,7 @@ export declare const make: (options?: {
|
|
|
209
211
|
readonly description?: string | undefined;
|
|
210
212
|
readonly default?: number | undefined;
|
|
211
213
|
readonly title?: string | undefined;
|
|
214
|
+
readonly hidden?: boolean | undefined;
|
|
212
215
|
readonly when?: readonly {
|
|
213
216
|
readonly key: string;
|
|
214
217
|
readonly op: "eq" | "neq";
|
|
@@ -223,6 +226,7 @@ export declare const make: (options?: {
|
|
|
223
226
|
readonly description?: string | undefined;
|
|
224
227
|
readonly default?: number | undefined;
|
|
225
228
|
readonly title?: string | undefined;
|
|
229
|
+
readonly hidden?: boolean | undefined;
|
|
226
230
|
readonly when?: readonly {
|
|
227
231
|
readonly key: string;
|
|
228
232
|
readonly op: "eq" | "neq";
|
|
@@ -237,6 +241,7 @@ export declare const make: (options?: {
|
|
|
237
241
|
readonly description?: string | undefined;
|
|
238
242
|
readonly default?: boolean | undefined;
|
|
239
243
|
readonly title?: string | undefined;
|
|
244
|
+
readonly hidden?: boolean | undefined;
|
|
240
245
|
readonly when?: readonly {
|
|
241
246
|
readonly key: string;
|
|
242
247
|
readonly op: "eq" | "neq";
|
|
@@ -255,6 +260,7 @@ export declare const make: (options?: {
|
|
|
255
260
|
readonly default?: readonly string[] | undefined;
|
|
256
261
|
readonly custom?: boolean | undefined;
|
|
257
262
|
readonly title?: string | undefined;
|
|
263
|
+
readonly hidden?: boolean | undefined;
|
|
258
264
|
readonly when?: readonly {
|
|
259
265
|
readonly key: string;
|
|
260
266
|
readonly op: "eq" | "neq";
|
|
@@ -286,6 +292,7 @@ export declare const make: (options?: {
|
|
|
286
292
|
}[] | undefined;
|
|
287
293
|
readonly custom?: boolean | undefined;
|
|
288
294
|
readonly title?: string | undefined;
|
|
295
|
+
readonly hidden?: boolean | undefined;
|
|
289
296
|
readonly when?: readonly {
|
|
290
297
|
readonly key: string;
|
|
291
298
|
readonly op: "eq" | "neq";
|
|
@@ -298,6 +305,7 @@ export declare const make: (options?: {
|
|
|
298
305
|
readonly description?: string | undefined;
|
|
299
306
|
readonly default?: number | undefined;
|
|
300
307
|
readonly title?: string | undefined;
|
|
308
|
+
readonly hidden?: boolean | undefined;
|
|
301
309
|
readonly when?: readonly {
|
|
302
310
|
readonly key: string;
|
|
303
311
|
readonly op: "eq" | "neq";
|
|
@@ -312,6 +320,7 @@ export declare const make: (options?: {
|
|
|
312
320
|
readonly description?: string | undefined;
|
|
313
321
|
readonly default?: number | undefined;
|
|
314
322
|
readonly title?: string | undefined;
|
|
323
|
+
readonly hidden?: boolean | undefined;
|
|
315
324
|
readonly when?: readonly {
|
|
316
325
|
readonly key: string;
|
|
317
326
|
readonly op: "eq" | "neq";
|
|
@@ -326,6 +335,7 @@ export declare const make: (options?: {
|
|
|
326
335
|
readonly description?: string | undefined;
|
|
327
336
|
readonly default?: boolean | undefined;
|
|
328
337
|
readonly title?: string | undefined;
|
|
338
|
+
readonly hidden?: boolean | undefined;
|
|
329
339
|
readonly when?: readonly {
|
|
330
340
|
readonly key: string;
|
|
331
341
|
readonly op: "eq" | "neq";
|
|
@@ -344,6 +354,7 @@ export declare const make: (options?: {
|
|
|
344
354
|
readonly default?: readonly string[] | undefined;
|
|
345
355
|
readonly custom?: boolean | undefined;
|
|
346
356
|
readonly title?: string | undefined;
|
|
357
|
+
readonly hidden?: boolean | undefined;
|
|
347
358
|
readonly when?: readonly {
|
|
348
359
|
readonly key: string;
|
|
349
360
|
readonly op: "eq" | "neq";
|
|
@@ -1264,6 +1275,7 @@ export declare const make: (options?: {
|
|
|
1264
1275
|
readonly providerID: string & import("effect/Brand").Brand<"Provider.ID">;
|
|
1265
1276
|
readonly variant?: (string & import("effect/Brand").Brand<"Model.VariantID">) | undefined;
|
|
1266
1277
|
};
|
|
1278
|
+
readonly started: number;
|
|
1267
1279
|
readonly agent: string & import("effect/Brand").Brand<"Agent.ID">;
|
|
1268
1280
|
readonly assistantMessageID: string & import("effect/Brand").Brand<"Session.Message.ID">;
|
|
1269
1281
|
readonly snapshot?: (string & import("effect/Brand").Brand<"Snapshot.ID">) | undefined;
|
|
@@ -2050,6 +2062,18 @@ export declare const make: (options?: {
|
|
|
2050
2062
|
readonly metadata?: {
|
|
2051
2063
|
readonly [x: string]: unknown;
|
|
2052
2064
|
} | undefined;
|
|
2065
|
+
} | {
|
|
2066
|
+
readonly id: string & import("effect/Brand").Brand<"Event.ID">;
|
|
2067
|
+
readonly data: {};
|
|
2068
|
+
readonly type: "location.shutdown";
|
|
2069
|
+
readonly created: number;
|
|
2070
|
+
readonly location?: {
|
|
2071
|
+
readonly directory: string & import("effect/Brand").Brand<"AbsolutePath">;
|
|
2072
|
+
readonly workspaceID?: (string & import("effect/Brand").Brand<"Workspace.ID">) | undefined;
|
|
2073
|
+
} | undefined;
|
|
2074
|
+
readonly metadata?: {
|
|
2075
|
+
readonly [x: string]: unknown;
|
|
2076
|
+
} | undefined;
|
|
2053
2077
|
} | {
|
|
2054
2078
|
readonly id: string & import("effect/Brand").Brand<"Event.ID">;
|
|
2055
2079
|
readonly data: {
|
|
@@ -10,10 +10,14 @@ const mapClientError = (error) => HttpClientError.isHttpClientError(error) || Sc
|
|
|
10
10
|
: error;
|
|
11
11
|
const preserveEffect = () => (effect) => effect;
|
|
12
12
|
const preserveStream = () => (stream) => stream;
|
|
13
|
-
const
|
|
14
|
-
const adaptGroupServer = (raw) => ({
|
|
13
|
+
const EndpointServerInfo = (raw) => () => preserveEffect()(raw["server.info"]({}).pipe(Effect.mapError(mapClientError)));
|
|
14
|
+
const adaptGroupServer = (raw) => ({ info: EndpointServerInfo(raw) });
|
|
15
15
|
const EndpointLocationGet = (raw) => (input) => preserveEffect()(raw["location.get"]({ query: { location: input?.["location"] } }).pipe(Effect.mapError(mapClientError)));
|
|
16
|
-
const
|
|
16
|
+
const EndpointLocationReload = (raw) => () => preserveEffect()(raw["location.reload"]({}).pipe(Effect.mapError(mapClientError)));
|
|
17
|
+
const adaptGroupLocation = (raw) => ({
|
|
18
|
+
get: EndpointLocationGet(raw),
|
|
19
|
+
reload: EndpointLocationReload(raw),
|
|
20
|
+
});
|
|
17
21
|
const EndpointAgentList = (raw) => (input) => preserveEffect()(raw["agent.list"]({ query: { location: input?.["location"] } }).pipe(Effect.mapError(mapClientError)));
|
|
18
22
|
const EndpointAgentGet = (raw) => (input) => preserveEffect()(raw["agent.get"]({ params: { agentID: input["agentID"] }, query: { location: input["location"] } }).pipe(Effect.mapError(mapClientError)));
|
|
19
23
|
const adaptGroupAgent = (raw) => ({
|
package/dist/effect/service.js
CHANGED
|
@@ -162,7 +162,7 @@ export const Info = Schema.Struct({
|
|
|
162
162
|
password: Schema.optional(Schema.String),
|
|
163
163
|
});
|
|
164
164
|
const decode = Schema.decodeUnknownEffect(Schema.fromJsonString(Info));
|
|
165
|
-
const
|
|
165
|
+
const decodeInfo = Schema.decodeUnknownOption(Schema.Struct({
|
|
166
166
|
version: Schema.String,
|
|
167
167
|
pid: Schema.Int.check(Schema.isGreaterThanOrEqualTo(0)),
|
|
168
168
|
}));
|
|
@@ -186,7 +186,7 @@ const probeResult = Effect.fnUntraced(function* (info, timeout = defaultEnsureTi
|
|
|
186
186
|
: { type: "basic", username: "opencode", password: info.password },
|
|
187
187
|
};
|
|
188
188
|
const signal = AbortSignal.timeout(timeout);
|
|
189
|
-
const result = yield* Effect.promise(() => fetch(new URL("/api/
|
|
189
|
+
const result = yield* Effect.promise(() => fetch(new URL("/api/info", info.url), { headers: headers(endpoint), signal })
|
|
190
190
|
.then(async (response) => ({
|
|
191
191
|
response,
|
|
192
192
|
body: response.status === 404 ? undefined : (await response.json()),
|
|
@@ -195,7 +195,7 @@ const probeResult = Effect.fnUntraced(function* (info, timeout = defaultEnsureTi
|
|
|
195
195
|
if ("cause" in result)
|
|
196
196
|
return { service: undefined, timedOut: signal.aborted };
|
|
197
197
|
const response = result.value.response;
|
|
198
|
-
// The previous V2 service exposes /api/
|
|
198
|
+
// The previous V2 service exposes /api/status instead. Its authenticated 404 is enough
|
|
199
199
|
// to recognize the registered daemon as incompatible and route it through replacement.
|
|
200
200
|
if (response.status === 404)
|
|
201
201
|
return {
|
|
@@ -209,17 +209,17 @@ const probeResult = Effect.fnUntraced(function* (info, timeout = defaultEnsureTi
|
|
|
209
209
|
timedOut: false,
|
|
210
210
|
};
|
|
211
211
|
const body = result.value.body;
|
|
212
|
-
const
|
|
213
|
-
if (Option.isSome(
|
|
214
|
-
if (
|
|
212
|
+
const serverInfo = decodeInfo(body);
|
|
213
|
+
if (Option.isSome(serverInfo)) {
|
|
214
|
+
if (serverInfo.value.pid !== info.pid)
|
|
215
215
|
return { service: undefined, timedOut: false };
|
|
216
|
-
if (info.version !== undefined &&
|
|
216
|
+
if (info.version !== undefined && serverInfo.value.version !== info.version)
|
|
217
217
|
return { service: undefined, timedOut: false };
|
|
218
218
|
return {
|
|
219
219
|
service: {
|
|
220
220
|
info,
|
|
221
221
|
endpoint,
|
|
222
|
-
version:
|
|
222
|
+
version: serverInfo.value.version,
|
|
223
223
|
state: response.ok ? "ready" : response.status === 500 ? "failed" : "waiting",
|
|
224
224
|
compatible: true,
|
|
225
225
|
},
|
package/dist/promise/client.d.ts
CHANGED
|
@@ -11,10 +11,11 @@ export declare function make(options: ClientOptions): {
|
|
|
11
11
|
subscribe(options?: SharedEvents.SubscribeOptions): AsyncIterable<import("./index.js").V2Event>;
|
|
12
12
|
};
|
|
13
13
|
server: {
|
|
14
|
-
|
|
14
|
+
info: (requestOptions?: OpenCode.RequestOptions) => Promise<import("./index.js").ServerInfo>;
|
|
15
15
|
};
|
|
16
16
|
location: {
|
|
17
17
|
get: (input?: import("./index.js").LocationGetInput, requestOptions?: OpenCode.RequestOptions) => Promise<import("./index.js").LocationPublicInfo>;
|
|
18
|
+
reload: (requestOptions?: OpenCode.RequestOptions) => Promise<void>;
|
|
18
19
|
};
|
|
19
20
|
agent: {
|
|
20
21
|
list: (input?: import("./index.js").AgentListInput, requestOptions?: OpenCode.RequestOptions) => Promise<import("./index.js").AgentListOutput>;
|
|
@@ -165,6 +166,7 @@ export declare function make(options: ClientOptions): {
|
|
|
165
166
|
read: (input: import("./index.js").FileReadInput, requestOptions?: OpenCode.RequestOptions) => Promise<import("./index.js").FileReadOutput>;
|
|
166
167
|
list: (input?: import("./index.js").FileListInput, requestOptions?: OpenCode.RequestOptions) => Promise<import("./index.js").FileListOutput>;
|
|
167
168
|
find: (input: import("./index.js").FileFindInput, requestOptions?: OpenCode.RequestOptions) => Promise<import("./index.js").FileFindOutput>;
|
|
169
|
+
write: (input: import("./index.js").FileWriteInput, requestOptions?: OpenCode.RequestOptions) => Promise<import("./index.js").FileWriteOutput>;
|
|
168
170
|
};
|
|
169
171
|
command: {
|
|
170
172
|
list: (input?: import("./index.js").CommandListInput, requestOptions?: OpenCode.RequestOptions) => Promise<import("./index.js").CommandListOutput>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { LocationGetInput, AgentListInput, AgentListOutput, AgentGetInput, AgentGetOutput, PluginListInput, PluginListOutput, PluginCheckInput, PluginCheckOutput, PluginUpdateInput, SessionListInput, SessionStatsInput, SessionCreateInput, SessionImportInput, SessionExportInput, SessionGetInput, SessionRemoveInput, SessionForkInput, SessionSwitchAgentInput, SessionSwitchModelInput, SessionUpdateInput, SessionMoveInput, SessionPromptInput, SessionCommandInput, SessionSkillInput, SessionSyntheticInput, SessionShellInput, SessionCompactInput, SessionWaitInput, SessionRevertStageInput, SessionRevertClearInput, SessionRevertCommitInput, SessionContextInput, SessionDiffInput, SessionInboxListInput, SessionInboxCancelInput, SessionInboxUpdateInput, SessionInstructionsEntryListInput, SessionInstructionsEntryPutInput, SessionInstructionsEntryRemoveInput, SessionGenerateInput, SessionLogInput, SessionLogOutput, SessionInterruptInput, SessionBackgroundInput, SessionMessageGetInput, SessionFormListInput, SessionFormCreateInput, SessionFormGetInput, SessionFormReplyInput, SessionFormCancelInput, 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, CredentialActivateInput, CredentialRemoveInput, ProjectListOutput, ProjectUpdateInput, FormListInput, FormListOutput, PermissionRequestListInput, PermissionRequestListOutput, PermissionSavedListInput, PermissionSavedRemoveInput, PermissionCreateInput, PermissionListInput, PermissionGetInput, PermissionReplyInput, FileReadInput, FileReadOutput, FileListInput, FileListOutput, FileFindInput, FileFindOutput, CommandListInput, CommandListOutput, SkillListInput, SkillListOutput, RpcCallInput, EventSubscribeOutput, PtyListInput, PtyListOutput, PtyCreateInput, PtyCreateOutput, PtyGetInput, PtyGetOutput, PtyUpdateInput, PtyUpdateOutput, PtyRemoveInput, PtyConnectTokenInput, PtyConnectTokenOutput, ExperimentalPersistentPtyReadInput, ExperimentalPersistentPtyListInput, ExperimentalPersistentPtyCreateInput, ExperimentalPersistentPtyHandoffOutput, ExperimentalPersistentPtyGetInput, ExperimentalPersistentPtyUpdateInput, ExperimentalPersistentPtySnapshotInput, ExperimentalPersistentPtyRemoveInput, ExperimentalPersistentPtyConnectTokenInput, ShellListInput, ShellListOutput, ShellCreateInput, ShellCreateOutput, ShellGetInput, ShellGetOutput, ShellOutputInput, ShellOutputOutput, ShellRemoveInput, ReferenceListInput, ReferenceListOutput, WorktreeListInput, WorktreeCreateInput, WorktreeRemoveInput, WorktreeRefreshInput, VcsGetInput, VcsGetOutput, VcsBaseInput, VcsBaseOutput, VcsStatusInput, VcsStatusOutput, VcsBranchListInput, VcsBranchListOutput, VcsDiffInput, VcsDiffOutput, DebugLocationListOutput, DebugLocationEvictInput, MigrationV1StatusOutput, WebsearchProvidersInput, WebsearchProvidersOutput, WebsearchQueryInput, WebsearchQueryOutput, ConfigGetInput, ConfigGetOutput, ConfigShellsOutput, ConfigUpdateInput } from "./types.js";
|
|
1
|
+
import type { LocationGetInput, AgentListInput, AgentListOutput, AgentGetInput, AgentGetOutput, PluginListInput, PluginListOutput, PluginCheckInput, PluginCheckOutput, PluginUpdateInput, SessionListInput, SessionStatsInput, SessionCreateInput, SessionImportInput, SessionExportInput, SessionGetInput, SessionRemoveInput, SessionForkInput, SessionSwitchAgentInput, SessionSwitchModelInput, SessionUpdateInput, SessionMoveInput, SessionPromptInput, SessionCommandInput, SessionSkillInput, SessionSyntheticInput, SessionShellInput, SessionCompactInput, SessionWaitInput, SessionRevertStageInput, SessionRevertClearInput, SessionRevertCommitInput, SessionContextInput, SessionDiffInput, SessionInboxListInput, SessionInboxCancelInput, SessionInboxUpdateInput, SessionInstructionsEntryListInput, SessionInstructionsEntryPutInput, SessionInstructionsEntryRemoveInput, SessionGenerateInput, SessionLogInput, SessionLogOutput, SessionInterruptInput, SessionBackgroundInput, SessionMessageGetInput, SessionFormListInput, SessionFormCreateInput, SessionFormGetInput, SessionFormReplyInput, SessionFormCancelInput, 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, CredentialActivateInput, CredentialRemoveInput, ProjectListOutput, ProjectUpdateInput, FormListInput, FormListOutput, PermissionRequestListInput, PermissionRequestListOutput, PermissionSavedListInput, PermissionSavedRemoveInput, PermissionCreateInput, PermissionListInput, PermissionGetInput, PermissionReplyInput, FileReadInput, FileReadOutput, FileListInput, FileListOutput, FileFindInput, FileFindOutput, FileWriteInput, FileWriteOutput, CommandListInput, CommandListOutput, SkillListInput, SkillListOutput, RpcCallInput, EventSubscribeOutput, PtyListInput, PtyListOutput, PtyCreateInput, PtyCreateOutput, PtyGetInput, PtyGetOutput, PtyUpdateInput, PtyUpdateOutput, PtyRemoveInput, PtyConnectTokenInput, PtyConnectTokenOutput, ExperimentalPersistentPtyReadInput, ExperimentalPersistentPtyListInput, ExperimentalPersistentPtyCreateInput, ExperimentalPersistentPtyHandoffOutput, ExperimentalPersistentPtyGetInput, ExperimentalPersistentPtyUpdateInput, ExperimentalPersistentPtySnapshotInput, ExperimentalPersistentPtyRemoveInput, ExperimentalPersistentPtyConnectTokenInput, ShellListInput, ShellListOutput, ShellCreateInput, ShellCreateOutput, ShellGetInput, ShellGetOutput, ShellOutputInput, ShellOutputOutput, ShellRemoveInput, ReferenceListInput, ReferenceListOutput, WorktreeListInput, WorktreeCreateInput, WorktreeRemoveInput, WorktreeRefreshInput, VcsGetInput, VcsGetOutput, VcsBaseInput, VcsBaseOutput, VcsStatusInput, VcsStatusOutput, VcsBranchListInput, VcsBranchListOutput, VcsDiffInput, VcsDiffOutput, DebugLocationListOutput, DebugLocationEvictInput, MigrationV1StatusOutput, WebsearchProvidersInput, WebsearchProvidersOutput, WebsearchQueryInput, WebsearchQueryOutput, ConfigGetInput, ConfigGetOutput, ConfigShellsOutput, ConfigUpdateInput } from "./types.js";
|
|
2
2
|
export interface ClientOptions {
|
|
3
3
|
readonly baseUrl: string;
|
|
4
4
|
readonly fetch?: typeof globalThis.fetch;
|
|
@@ -12,10 +12,11 @@ export interface RequestOptions {
|
|
|
12
12
|
}
|
|
13
13
|
export declare function make(options: ClientOptions): {
|
|
14
14
|
server: {
|
|
15
|
-
|
|
15
|
+
info: (requestOptions?: RequestOptions) => Promise<import("./types.js").ServerInfo>;
|
|
16
16
|
};
|
|
17
17
|
location: {
|
|
18
18
|
get: (input?: LocationGetInput, requestOptions?: RequestOptions) => Promise<import("./types.js").LocationPublicInfo>;
|
|
19
|
+
reload: (requestOptions?: RequestOptions) => Promise<void>;
|
|
19
20
|
};
|
|
20
21
|
agent: {
|
|
21
22
|
list: (input?: AgentListInput, requestOptions?: RequestOptions) => Promise<AgentListOutput>;
|
|
@@ -166,6 +167,7 @@ export declare function make(options: ClientOptions): {
|
|
|
166
167
|
read: (input: FileReadInput, requestOptions?: RequestOptions) => Promise<FileReadOutput>;
|
|
167
168
|
list: (input?: FileListInput, requestOptions?: RequestOptions) => Promise<FileListOutput>;
|
|
168
169
|
find: (input: FileFindInput, requestOptions?: RequestOptions) => Promise<FileFindOutput>;
|
|
170
|
+
write: (input: FileWriteInput, requestOptions?: RequestOptions) => Promise<FileWriteOutput>;
|
|
169
171
|
};
|
|
170
172
|
command: {
|
|
171
173
|
list: (input?: CommandListInput, requestOptions?: RequestOptions) => Promise<CommandListOutput>;
|
|
@@ -14,14 +14,18 @@ export function make(options) {
|
|
|
14
14
|
for (const [key, value] of new Headers(requestOptions?.headers))
|
|
15
15
|
headers.set(key, value);
|
|
16
16
|
if (descriptor.body !== undefined && !headers.has("content-type"))
|
|
17
|
-
headers.set("content-type", "application/json");
|
|
17
|
+
headers.set("content-type", descriptor.binaryBody ? "application/octet-stream" : "application/json");
|
|
18
18
|
return {
|
|
19
19
|
url,
|
|
20
20
|
init: {
|
|
21
21
|
method: descriptor.method,
|
|
22
22
|
signal: requestOptions?.signal,
|
|
23
23
|
headers,
|
|
24
|
-
body: descriptor.body === undefined
|
|
24
|
+
body: descriptor.body === undefined
|
|
25
|
+
? undefined
|
|
26
|
+
: descriptor.binaryBody
|
|
27
|
+
? descriptor.body
|
|
28
|
+
: JSON.stringify(descriptor.body),
|
|
25
29
|
},
|
|
26
30
|
};
|
|
27
31
|
};
|
|
@@ -130,7 +134,7 @@ export function make(options) {
|
|
|
130
134
|
});
|
|
131
135
|
return {
|
|
132
136
|
server: {
|
|
133
|
-
|
|
137
|
+
info: (requestOptions) => request({ method: "GET", path: `/api/info`, successStatus: 200, declaredStatuses: [400, 401], empty: false }, requestOptions),
|
|
134
138
|
},
|
|
135
139
|
location: {
|
|
136
140
|
get: (input, requestOptions) => request({
|
|
@@ -141,6 +145,13 @@ export function make(options) {
|
|
|
141
145
|
declaredStatuses: [400, 401],
|
|
142
146
|
empty: false,
|
|
143
147
|
}, requestOptions),
|
|
148
|
+
reload: (requestOptions) => request({
|
|
149
|
+
method: "POST",
|
|
150
|
+
path: `/api/location/reload`,
|
|
151
|
+
successStatus: 204,
|
|
152
|
+
declaredStatuses: [400, 401, 503],
|
|
153
|
+
empty: true,
|
|
154
|
+
}, requestOptions),
|
|
144
155
|
},
|
|
145
156
|
agent: {
|
|
146
157
|
list: (input, requestOptions) => request({
|
|
@@ -931,6 +942,16 @@ export function make(options) {
|
|
|
931
942
|
declaredStatuses: [400, 401],
|
|
932
943
|
empty: false,
|
|
933
944
|
}, requestOptions),
|
|
945
|
+
write: (input, requestOptions) => request({
|
|
946
|
+
method: "POST",
|
|
947
|
+
path: `/api/experimental/fs/write`,
|
|
948
|
+
query: { location: input["location"], path: input["path"] },
|
|
949
|
+
body: input["payload"],
|
|
950
|
+
successStatus: 200,
|
|
951
|
+
declaredStatuses: [400, 401],
|
|
952
|
+
empty: false,
|
|
953
|
+
binaryBody: true,
|
|
954
|
+
}, requestOptions),
|
|
934
955
|
},
|
|
935
956
|
command: {
|
|
936
957
|
list: (input, requestOptions) => request({
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
export type JsonValue = null | boolean | number | string | Array<JsonValue> | {
|
|
2
2
|
[key: string]: JsonValue;
|
|
3
3
|
};
|
|
4
|
-
export type
|
|
4
|
+
export type ServerInfo = {
|
|
5
5
|
version: string;
|
|
6
6
|
pid: number;
|
|
7
7
|
urls: Array<string>;
|
|
8
|
+
paths: {
|
|
9
|
+
tmp: string;
|
|
10
|
+
};
|
|
8
11
|
};
|
|
9
12
|
export type LocationPublicInfo = {
|
|
10
13
|
directory: string;
|
|
@@ -521,6 +524,9 @@ export type FileSystemEntry = {
|
|
|
521
524
|
path: string;
|
|
522
525
|
type: "file" | "directory";
|
|
523
526
|
};
|
|
527
|
+
export type FileSystemWrite = {
|
|
528
|
+
path: string;
|
|
529
|
+
};
|
|
524
530
|
export type CommandInfo = {
|
|
525
531
|
name: string;
|
|
526
532
|
description?: string;
|
|
@@ -1172,6 +1178,7 @@ export type SessionStepStarted = {
|
|
|
1172
1178
|
agent: string;
|
|
1173
1179
|
model: ModelRef;
|
|
1174
1180
|
snapshot?: string;
|
|
1181
|
+
started: number;
|
|
1175
1182
|
};
|
|
1176
1183
|
};
|
|
1177
1184
|
export type SessionStepStreamed = {
|
|
@@ -1369,6 +1376,16 @@ export type SessionUsageRecorded = {
|
|
|
1369
1376
|
tokens: TokenUsageInfo;
|
|
1370
1377
|
};
|
|
1371
1378
|
};
|
|
1379
|
+
export type LocationShutdown = {
|
|
1380
|
+
id: string;
|
|
1381
|
+
created: number;
|
|
1382
|
+
metadata?: {
|
|
1383
|
+
[x: string]: any;
|
|
1384
|
+
};
|
|
1385
|
+
type: "location.shutdown";
|
|
1386
|
+
location?: LocationRef;
|
|
1387
|
+
data: {};
|
|
1388
|
+
};
|
|
1372
1389
|
export type ModelsDevRefreshed = {
|
|
1373
1390
|
id: string;
|
|
1374
1391
|
created: number;
|
|
@@ -2072,6 +2089,7 @@ export type FormNumberField = {
|
|
|
2072
2089
|
title?: string;
|
|
2073
2090
|
description?: string;
|
|
2074
2091
|
required?: boolean;
|
|
2092
|
+
hidden?: boolean;
|
|
2075
2093
|
when?: Array<FormWhen>;
|
|
2076
2094
|
type: "number";
|
|
2077
2095
|
minimum?: number | "Infinity" | "-Infinity" | "NaN";
|
|
@@ -2083,6 +2101,7 @@ export type FormIntegerField = {
|
|
|
2083
2101
|
title?: string;
|
|
2084
2102
|
description?: string;
|
|
2085
2103
|
required?: boolean;
|
|
2104
|
+
hidden?: boolean;
|
|
2086
2105
|
when?: Array<FormWhen>;
|
|
2087
2106
|
type: "integer";
|
|
2088
2107
|
minimum?: number | "Infinity" | "-Infinity" | "NaN";
|
|
@@ -2094,6 +2113,7 @@ export type FormBooleanField = {
|
|
|
2094
2113
|
title?: string;
|
|
2095
2114
|
description?: string;
|
|
2096
2115
|
required?: boolean;
|
|
2116
|
+
hidden?: boolean;
|
|
2097
2117
|
when?: Array<FormWhen>;
|
|
2098
2118
|
type: "boolean";
|
|
2099
2119
|
default?: boolean;
|
|
@@ -2103,6 +2123,7 @@ export type FormStringField = {
|
|
|
2103
2123
|
title?: string;
|
|
2104
2124
|
description?: string;
|
|
2105
2125
|
required?: boolean;
|
|
2126
|
+
hidden?: boolean;
|
|
2106
2127
|
when?: Array<FormWhen>;
|
|
2107
2128
|
type: "string";
|
|
2108
2129
|
format?: "email" | "uri" | "date" | "date-time";
|
|
@@ -2119,6 +2140,7 @@ export type FormMultiselectField = {
|
|
|
2119
2140
|
title?: string;
|
|
2120
2141
|
description?: string;
|
|
2121
2142
|
required?: boolean;
|
|
2143
|
+
hidden?: boolean;
|
|
2122
2144
|
when?: Array<FormWhen>;
|
|
2123
2145
|
type: "multiselect";
|
|
2124
2146
|
options: Array<FormOption>;
|
|
@@ -2306,6 +2328,7 @@ export type FormStringField1 = {
|
|
|
2306
2328
|
title?: string;
|
|
2307
2329
|
description?: string;
|
|
2308
2330
|
required?: boolean;
|
|
2331
|
+
hidden?: boolean;
|
|
2309
2332
|
when?: Array<FormWhen1>;
|
|
2310
2333
|
type: "string";
|
|
2311
2334
|
format?: "email" | "uri" | "date" | "date-time";
|
|
@@ -2322,6 +2345,7 @@ export type FormNumberField1 = {
|
|
|
2322
2345
|
title?: string;
|
|
2323
2346
|
description?: string;
|
|
2324
2347
|
required?: boolean;
|
|
2348
|
+
hidden?: boolean;
|
|
2325
2349
|
when?: Array<FormWhen1>;
|
|
2326
2350
|
type: "number";
|
|
2327
2351
|
minimum?: number;
|
|
@@ -2333,6 +2357,7 @@ export type FormIntegerField1 = {
|
|
|
2333
2357
|
title?: string;
|
|
2334
2358
|
description?: string;
|
|
2335
2359
|
required?: boolean;
|
|
2360
|
+
hidden?: boolean;
|
|
2336
2361
|
when?: Array<FormWhen1>;
|
|
2337
2362
|
type: "integer";
|
|
2338
2363
|
minimum?: number;
|
|
@@ -2344,6 +2369,7 @@ export type FormBooleanField1 = {
|
|
|
2344
2369
|
title?: string;
|
|
2345
2370
|
description?: string;
|
|
2346
2371
|
required?: boolean;
|
|
2372
|
+
hidden?: boolean;
|
|
2347
2373
|
when?: Array<FormWhen1>;
|
|
2348
2374
|
type: "boolean";
|
|
2349
2375
|
default?: boolean;
|
|
@@ -2353,6 +2379,7 @@ export type FormMultiselectField1 = {
|
|
|
2353
2379
|
title?: string;
|
|
2354
2380
|
description?: string;
|
|
2355
2381
|
required?: boolean;
|
|
2382
|
+
hidden?: boolean;
|
|
2356
2383
|
when?: Array<FormWhen1>;
|
|
2357
2384
|
type: "multiselect";
|
|
2358
2385
|
options: Array<FormOption>;
|
|
@@ -3249,7 +3276,7 @@ export type IntegrationInfo = {
|
|
|
3249
3276
|
methods: Array<IntegrationMethod>;
|
|
3250
3277
|
connections: Array<ConnectionInfo>;
|
|
3251
3278
|
};
|
|
3252
|
-
export type V2Event = ModelsDevRefreshed | CredentialUpdated | CredentialSwitched | IntegrationUpdated | ProviderUpdated | ModelUpdated | AgentUpdated | SessionCreated | SessionAgentSelected | SessionModelSelected | SessionMoved | SessionRenamed | SessionPermissions | SessionViewed | SessionUsageUpdated | SessionDeleted | SessionForked | SessionInboxDelivered | SessionInboxEnqueued | SessionInboxCancelled | SessionInboxDeliveryChanged | SessionExecutionStarted | SessionExecutionSucceeded | SessionExecutionFailed | SessionExecutionInterrupted | SessionInstructionsUpdated | SessionSynthetic | SessionSkillActivated | SessionShellStarted | SessionShellEnded | SessionStepStarted | SessionStepStreamed | SessionStepEnded | SessionStepFailed | SessionTextStarted | SessionTextDelta | SessionTextEnded | SessionReasoningStarted | SessionReasoningDelta | SessionReasoningEnded | SessionToolInputStarted | SessionToolInputDelta | SessionToolInputEnded | SessionToolCalled | SessionToolProgress | SessionToolSuccess | SessionToolFailed | SessionRetryScheduled | SessionCompactionStarted | SessionCompactionDelta | SessionCompactionEnded | SessionCompactionFailed | SessionRevertStaged | SessionRevertCleared | SessionRevertCommitted | FilesystemChanged | ReferenceUpdated | PermissionAsked | PermissionReplied | PluginUpdated | ProjectUpdated | WorktreeUpdated | WorktreeResolved | CommandUpdated | ConfigUpdated | SkillUpdated | PtyCreated | PtyUpdated | PtyExited | PtyDeleted | PersistentPtyAdded | PersistentPtyRemoved | ShellCreated | ShellExited | ShellDeleted | FormCreated | FormReplied | FormCancelled | WebsearchUpdated | SessionStatusUpdated | SessionIdle | TuiPromptAppend | TuiCommandExecute | TuiToastShow | TuiSessionSelect | InstallationUpdated | InstallationUpdateAvailable | VcsBranchUpdated | McpStatusChanged | McpResourcesChanged | V2EventRpc | V2EventServerConnected;
|
|
3279
|
+
export type V2Event = LocationShutdown | ModelsDevRefreshed | CredentialUpdated | CredentialSwitched | IntegrationUpdated | ProviderUpdated | ModelUpdated | AgentUpdated | SessionCreated | SessionAgentSelected | SessionModelSelected | SessionMoved | SessionRenamed | SessionPermissions | SessionViewed | SessionUsageUpdated | SessionDeleted | SessionForked | SessionInboxDelivered | SessionInboxEnqueued | SessionInboxCancelled | SessionInboxDeliveryChanged | SessionExecutionStarted | SessionExecutionSucceeded | SessionExecutionFailed | SessionExecutionInterrupted | SessionInstructionsUpdated | SessionSynthetic | SessionSkillActivated | SessionShellStarted | SessionShellEnded | SessionStepStarted | SessionStepStreamed | SessionStepEnded | SessionStepFailed | SessionTextStarted | SessionTextDelta | SessionTextEnded | SessionReasoningStarted | SessionReasoningDelta | SessionReasoningEnded | SessionToolInputStarted | SessionToolInputDelta | SessionToolInputEnded | SessionToolCalled | SessionToolProgress | SessionToolSuccess | SessionToolFailed | SessionRetryScheduled | SessionCompactionStarted | SessionCompactionDelta | SessionCompactionEnded | SessionCompactionFailed | SessionRevertStaged | SessionRevertCleared | SessionRevertCommitted | FilesystemChanged | ReferenceUpdated | PermissionAsked | PermissionReplied | PluginUpdated | ProjectUpdated | WorktreeUpdated | WorktreeResolved | CommandUpdated | ConfigUpdated | SkillUpdated | PtyCreated | PtyUpdated | PtyExited | PtyDeleted | PersistentPtyAdded | PersistentPtyRemoved | ShellCreated | ShellExited | ShellDeleted | FormCreated | FormReplied | FormCancelled | WebsearchUpdated | SessionStatusUpdated | SessionIdle | TuiPromptAppend | TuiCommandExecute | TuiToastShow | TuiSessionSelect | InstallationUpdated | InstallationUpdateAvailable | VcsBranchUpdated | McpStatusChanged | McpResourcesChanged | V2EventRpc | V2EventServerConnected;
|
|
3253
3280
|
export type SessionLogItem = SessionEventDurable | EventLogSynced;
|
|
3254
3281
|
export type InvalidRequestError = {
|
|
3255
3282
|
readonly _tag: "InvalidRequestError";
|
|
@@ -3263,18 +3290,18 @@ export type UnauthorizedError = {
|
|
|
3263
3290
|
readonly message: string;
|
|
3264
3291
|
};
|
|
3265
3292
|
export declare const isUnauthorizedError: (value: unknown) => value is UnauthorizedError;
|
|
3266
|
-
export type AgentNotFoundError = {
|
|
3267
|
-
readonly _tag: "AgentNotFoundError";
|
|
3268
|
-
readonly agentID: string;
|
|
3269
|
-
readonly message: string;
|
|
3270
|
-
};
|
|
3271
|
-
export declare const isAgentNotFoundError: (value: unknown) => value is AgentNotFoundError;
|
|
3272
3293
|
export type ServiceUnavailableError = {
|
|
3273
3294
|
readonly _tag: "ServiceUnavailableError";
|
|
3274
3295
|
readonly message: string;
|
|
3275
3296
|
readonly service?: string | undefined;
|
|
3276
3297
|
};
|
|
3277
3298
|
export declare const isServiceUnavailableError: (value: unknown) => value is ServiceUnavailableError;
|
|
3299
|
+
export type AgentNotFoundError = {
|
|
3300
|
+
readonly _tag: "AgentNotFoundError";
|
|
3301
|
+
readonly agentID: string;
|
|
3302
|
+
readonly message: string;
|
|
3303
|
+
};
|
|
3304
|
+
export declare const isAgentNotFoundError: (value: unknown) => value is AgentNotFoundError;
|
|
3278
3305
|
export type InvalidCursorError = {
|
|
3279
3306
|
readonly _tag: "InvalidCursorError";
|
|
3280
3307
|
readonly message: string;
|
|
@@ -3443,7 +3470,7 @@ export type WorktreeError = {
|
|
|
3443
3470
|
};
|
|
3444
3471
|
};
|
|
3445
3472
|
export declare const isWorktreeError: (value: unknown) => value is WorktreeError;
|
|
3446
|
-
export type
|
|
3473
|
+
export type ServerInfoOutput = ServerInfo;
|
|
3447
3474
|
export type LocationGetInput = {
|
|
3448
3475
|
readonly location?: {
|
|
3449
3476
|
readonly location?: {
|
|
@@ -3452,6 +3479,7 @@ export type LocationGetInput = {
|
|
|
3452
3479
|
}["location"];
|
|
3453
3480
|
};
|
|
3454
3481
|
export type LocationGetOutput = LocationPublicInfo;
|
|
3482
|
+
export type LocationReloadOutput = void;
|
|
3455
3483
|
export type AgentListInput = {
|
|
3456
3484
|
readonly location?: {
|
|
3457
3485
|
readonly location?: {
|
|
@@ -6097,6 +6125,7 @@ export type SessionFormCreateInput = {
|
|
|
6097
6125
|
readonly title?: string;
|
|
6098
6126
|
readonly description?: string;
|
|
6099
6127
|
readonly required?: boolean;
|
|
6128
|
+
readonly hidden?: boolean;
|
|
6100
6129
|
readonly when?: ReadonlyArray<{
|
|
6101
6130
|
readonly key: string;
|
|
6102
6131
|
readonly op: "eq" | "neq";
|
|
@@ -6120,6 +6149,7 @@ export type SessionFormCreateInput = {
|
|
|
6120
6149
|
readonly title?: string;
|
|
6121
6150
|
readonly description?: string;
|
|
6122
6151
|
readonly required?: boolean;
|
|
6152
|
+
readonly hidden?: boolean;
|
|
6123
6153
|
readonly when?: ReadonlyArray<{
|
|
6124
6154
|
readonly key: string;
|
|
6125
6155
|
readonly op: "eq" | "neq";
|
|
@@ -6134,6 +6164,7 @@ export type SessionFormCreateInput = {
|
|
|
6134
6164
|
readonly title?: string;
|
|
6135
6165
|
readonly description?: string;
|
|
6136
6166
|
readonly required?: boolean;
|
|
6167
|
+
readonly hidden?: boolean;
|
|
6137
6168
|
readonly when?: ReadonlyArray<{
|
|
6138
6169
|
readonly key: string;
|
|
6139
6170
|
readonly op: "eq" | "neq";
|
|
@@ -6148,6 +6179,7 @@ export type SessionFormCreateInput = {
|
|
|
6148
6179
|
readonly title?: string;
|
|
6149
6180
|
readonly description?: string;
|
|
6150
6181
|
readonly required?: boolean;
|
|
6182
|
+
readonly hidden?: boolean;
|
|
6151
6183
|
readonly when?: ReadonlyArray<{
|
|
6152
6184
|
readonly key: string;
|
|
6153
6185
|
readonly op: "eq" | "neq";
|
|
@@ -6160,6 +6192,7 @@ export type SessionFormCreateInput = {
|
|
|
6160
6192
|
readonly title?: string;
|
|
6161
6193
|
readonly description?: string;
|
|
6162
6194
|
readonly required?: boolean;
|
|
6195
|
+
readonly hidden?: boolean;
|
|
6163
6196
|
readonly when?: ReadonlyArray<{
|
|
6164
6197
|
readonly key: string;
|
|
6165
6198
|
readonly op: "eq" | "neq";
|
|
@@ -6187,6 +6220,7 @@ export type SessionFormCreateInput = {
|
|
|
6187
6220
|
readonly title?: string;
|
|
6188
6221
|
readonly description?: string;
|
|
6189
6222
|
readonly required?: boolean;
|
|
6223
|
+
readonly hidden?: boolean;
|
|
6190
6224
|
readonly when?: ReadonlyArray<{
|
|
6191
6225
|
readonly key: string;
|
|
6192
6226
|
readonly op: "eq" | "neq";
|
|
@@ -6210,6 +6244,7 @@ export type SessionFormCreateInput = {
|
|
|
6210
6244
|
readonly title?: string;
|
|
6211
6245
|
readonly description?: string;
|
|
6212
6246
|
readonly required?: boolean;
|
|
6247
|
+
readonly hidden?: boolean;
|
|
6213
6248
|
readonly when?: ReadonlyArray<{
|
|
6214
6249
|
readonly key: string;
|
|
6215
6250
|
readonly op: "eq" | "neq";
|
|
@@ -6224,6 +6259,7 @@ export type SessionFormCreateInput = {
|
|
|
6224
6259
|
readonly title?: string;
|
|
6225
6260
|
readonly description?: string;
|
|
6226
6261
|
readonly required?: boolean;
|
|
6262
|
+
readonly hidden?: boolean;
|
|
6227
6263
|
readonly when?: ReadonlyArray<{
|
|
6228
6264
|
readonly key: string;
|
|
6229
6265
|
readonly op: "eq" | "neq";
|
|
@@ -6238,6 +6274,7 @@ export type SessionFormCreateInput = {
|
|
|
6238
6274
|
readonly title?: string;
|
|
6239
6275
|
readonly description?: string;
|
|
6240
6276
|
readonly required?: boolean;
|
|
6277
|
+
readonly hidden?: boolean;
|
|
6241
6278
|
readonly when?: ReadonlyArray<{
|
|
6242
6279
|
readonly key: string;
|
|
6243
6280
|
readonly op: "eq" | "neq";
|
|
@@ -6250,6 +6287,7 @@ export type SessionFormCreateInput = {
|
|
|
6250
6287
|
readonly title?: string;
|
|
6251
6288
|
readonly description?: string;
|
|
6252
6289
|
readonly required?: boolean;
|
|
6290
|
+
readonly hidden?: boolean;
|
|
6253
6291
|
readonly when?: ReadonlyArray<{
|
|
6254
6292
|
readonly key: string;
|
|
6255
6293
|
readonly op: "eq" | "neq";
|
|
@@ -6286,6 +6324,7 @@ export type SessionFormCreateInput = {
|
|
|
6286
6324
|
readonly title?: string;
|
|
6287
6325
|
readonly description?: string;
|
|
6288
6326
|
readonly required?: boolean;
|
|
6327
|
+
readonly hidden?: boolean;
|
|
6289
6328
|
readonly when?: ReadonlyArray<{
|
|
6290
6329
|
readonly key: string;
|
|
6291
6330
|
readonly op: "eq" | "neq";
|
|
@@ -6309,6 +6348,7 @@ export type SessionFormCreateInput = {
|
|
|
6309
6348
|
readonly title?: string;
|
|
6310
6349
|
readonly description?: string;
|
|
6311
6350
|
readonly required?: boolean;
|
|
6351
|
+
readonly hidden?: boolean;
|
|
6312
6352
|
readonly when?: ReadonlyArray<{
|
|
6313
6353
|
readonly key: string;
|
|
6314
6354
|
readonly op: "eq" | "neq";
|
|
@@ -6323,6 +6363,7 @@ export type SessionFormCreateInput = {
|
|
|
6323
6363
|
readonly title?: string;
|
|
6324
6364
|
readonly description?: string;
|
|
6325
6365
|
readonly required?: boolean;
|
|
6366
|
+
readonly hidden?: boolean;
|
|
6326
6367
|
readonly when?: ReadonlyArray<{
|
|
6327
6368
|
readonly key: string;
|
|
6328
6369
|
readonly op: "eq" | "neq";
|
|
@@ -6337,6 +6378,7 @@ export type SessionFormCreateInput = {
|
|
|
6337
6378
|
readonly title?: string;
|
|
6338
6379
|
readonly description?: string;
|
|
6339
6380
|
readonly required?: boolean;
|
|
6381
|
+
readonly hidden?: boolean;
|
|
6340
6382
|
readonly when?: ReadonlyArray<{
|
|
6341
6383
|
readonly key: string;
|
|
6342
6384
|
readonly op: "eq" | "neq";
|
|
@@ -6349,6 +6391,7 @@ export type SessionFormCreateInput = {
|
|
|
6349
6391
|
readonly title?: string;
|
|
6350
6392
|
readonly description?: string;
|
|
6351
6393
|
readonly required?: boolean;
|
|
6394
|
+
readonly hidden?: boolean;
|
|
6352
6395
|
readonly when?: ReadonlyArray<{
|
|
6353
6396
|
readonly key: string;
|
|
6354
6397
|
readonly op: "eq" | "neq";
|
|
@@ -6376,6 +6419,7 @@ export type SessionFormCreateInput = {
|
|
|
6376
6419
|
readonly title?: string;
|
|
6377
6420
|
readonly description?: string;
|
|
6378
6421
|
readonly required?: boolean;
|
|
6422
|
+
readonly hidden?: boolean;
|
|
6379
6423
|
readonly when?: ReadonlyArray<{
|
|
6380
6424
|
readonly key: string;
|
|
6381
6425
|
readonly op: "eq" | "neq";
|
|
@@ -6399,6 +6443,7 @@ export type SessionFormCreateInput = {
|
|
|
6399
6443
|
readonly title?: string;
|
|
6400
6444
|
readonly description?: string;
|
|
6401
6445
|
readonly required?: boolean;
|
|
6446
|
+
readonly hidden?: boolean;
|
|
6402
6447
|
readonly when?: ReadonlyArray<{
|
|
6403
6448
|
readonly key: string;
|
|
6404
6449
|
readonly op: "eq" | "neq";
|
|
@@ -6413,6 +6458,7 @@ export type SessionFormCreateInput = {
|
|
|
6413
6458
|
readonly title?: string;
|
|
6414
6459
|
readonly description?: string;
|
|
6415
6460
|
readonly required?: boolean;
|
|
6461
|
+
readonly hidden?: boolean;
|
|
6416
6462
|
readonly when?: ReadonlyArray<{
|
|
6417
6463
|
readonly key: string;
|
|
6418
6464
|
readonly op: "eq" | "neq";
|
|
@@ -6427,6 +6473,7 @@ export type SessionFormCreateInput = {
|
|
|
6427
6473
|
readonly title?: string;
|
|
6428
6474
|
readonly description?: string;
|
|
6429
6475
|
readonly required?: boolean;
|
|
6476
|
+
readonly hidden?: boolean;
|
|
6430
6477
|
readonly when?: ReadonlyArray<{
|
|
6431
6478
|
readonly key: string;
|
|
6432
6479
|
readonly op: "eq" | "neq";
|
|
@@ -6439,6 +6486,7 @@ export type SessionFormCreateInput = {
|
|
|
6439
6486
|
readonly title?: string;
|
|
6440
6487
|
readonly description?: string;
|
|
6441
6488
|
readonly required?: boolean;
|
|
6489
|
+
readonly hidden?: boolean;
|
|
6442
6490
|
readonly when?: ReadonlyArray<{
|
|
6443
6491
|
readonly key: string;
|
|
6444
6492
|
readonly op: "eq" | "neq";
|
|
@@ -6475,6 +6523,7 @@ export type SessionFormCreateInput = {
|
|
|
6475
6523
|
readonly title?: string;
|
|
6476
6524
|
readonly description?: string;
|
|
6477
6525
|
readonly required?: boolean;
|
|
6526
|
+
readonly hidden?: boolean;
|
|
6478
6527
|
readonly when?: ReadonlyArray<{
|
|
6479
6528
|
readonly key: string;
|
|
6480
6529
|
readonly op: "eq" | "neq";
|
|
@@ -6498,6 +6547,7 @@ export type SessionFormCreateInput = {
|
|
|
6498
6547
|
readonly title?: string;
|
|
6499
6548
|
readonly description?: string;
|
|
6500
6549
|
readonly required?: boolean;
|
|
6550
|
+
readonly hidden?: boolean;
|
|
6501
6551
|
readonly when?: ReadonlyArray<{
|
|
6502
6552
|
readonly key: string;
|
|
6503
6553
|
readonly op: "eq" | "neq";
|
|
@@ -6512,6 +6562,7 @@ export type SessionFormCreateInput = {
|
|
|
6512
6562
|
readonly title?: string;
|
|
6513
6563
|
readonly description?: string;
|
|
6514
6564
|
readonly required?: boolean;
|
|
6565
|
+
readonly hidden?: boolean;
|
|
6515
6566
|
readonly when?: ReadonlyArray<{
|
|
6516
6567
|
readonly key: string;
|
|
6517
6568
|
readonly op: "eq" | "neq";
|
|
@@ -6526,6 +6577,7 @@ export type SessionFormCreateInput = {
|
|
|
6526
6577
|
readonly title?: string;
|
|
6527
6578
|
readonly description?: string;
|
|
6528
6579
|
readonly required?: boolean;
|
|
6580
|
+
readonly hidden?: boolean;
|
|
6529
6581
|
readonly when?: ReadonlyArray<{
|
|
6530
6582
|
readonly key: string;
|
|
6531
6583
|
readonly op: "eq" | "neq";
|
|
@@ -6538,6 +6590,7 @@ export type SessionFormCreateInput = {
|
|
|
6538
6590
|
readonly title?: string;
|
|
6539
6591
|
readonly description?: string;
|
|
6540
6592
|
readonly required?: boolean;
|
|
6593
|
+
readonly hidden?: boolean;
|
|
6541
6594
|
readonly when?: ReadonlyArray<{
|
|
6542
6595
|
readonly key: string;
|
|
6543
6596
|
readonly op: "eq" | "neq";
|
|
@@ -6565,6 +6618,7 @@ export type SessionFormCreateInput = {
|
|
|
6565
6618
|
readonly title?: string;
|
|
6566
6619
|
readonly description?: string;
|
|
6567
6620
|
readonly required?: boolean;
|
|
6621
|
+
readonly hidden?: boolean;
|
|
6568
6622
|
readonly when?: ReadonlyArray<{
|
|
6569
6623
|
readonly key: string;
|
|
6570
6624
|
readonly op: "eq" | "neq";
|
|
@@ -6588,6 +6642,7 @@ export type SessionFormCreateInput = {
|
|
|
6588
6642
|
readonly title?: string;
|
|
6589
6643
|
readonly description?: string;
|
|
6590
6644
|
readonly required?: boolean;
|
|
6645
|
+
readonly hidden?: boolean;
|
|
6591
6646
|
readonly when?: ReadonlyArray<{
|
|
6592
6647
|
readonly key: string;
|
|
6593
6648
|
readonly op: "eq" | "neq";
|
|
@@ -6602,6 +6657,7 @@ export type SessionFormCreateInput = {
|
|
|
6602
6657
|
readonly title?: string;
|
|
6603
6658
|
readonly description?: string;
|
|
6604
6659
|
readonly required?: boolean;
|
|
6660
|
+
readonly hidden?: boolean;
|
|
6605
6661
|
readonly when?: ReadonlyArray<{
|
|
6606
6662
|
readonly key: string;
|
|
6607
6663
|
readonly op: "eq" | "neq";
|
|
@@ -6616,6 +6672,7 @@ export type SessionFormCreateInput = {
|
|
|
6616
6672
|
readonly title?: string;
|
|
6617
6673
|
readonly description?: string;
|
|
6618
6674
|
readonly required?: boolean;
|
|
6675
|
+
readonly hidden?: boolean;
|
|
6619
6676
|
readonly when?: ReadonlyArray<{
|
|
6620
6677
|
readonly key: string;
|
|
6621
6678
|
readonly op: "eq" | "neq";
|
|
@@ -6628,6 +6685,7 @@ export type SessionFormCreateInput = {
|
|
|
6628
6685
|
readonly title?: string;
|
|
6629
6686
|
readonly description?: string;
|
|
6630
6687
|
readonly required?: boolean;
|
|
6688
|
+
readonly hidden?: boolean;
|
|
6631
6689
|
readonly when?: ReadonlyArray<{
|
|
6632
6690
|
readonly key: string;
|
|
6633
6691
|
readonly op: "eq" | "neq";
|
|
@@ -6664,6 +6722,7 @@ export type SessionFormCreateInput = {
|
|
|
6664
6722
|
readonly title?: string;
|
|
6665
6723
|
readonly description?: string;
|
|
6666
6724
|
readonly required?: boolean;
|
|
6725
|
+
readonly hidden?: boolean;
|
|
6667
6726
|
readonly when?: ReadonlyArray<{
|
|
6668
6727
|
readonly key: string;
|
|
6669
6728
|
readonly op: "eq" | "neq";
|
|
@@ -6687,6 +6746,7 @@ export type SessionFormCreateInput = {
|
|
|
6687
6746
|
readonly title?: string;
|
|
6688
6747
|
readonly description?: string;
|
|
6689
6748
|
readonly required?: boolean;
|
|
6749
|
+
readonly hidden?: boolean;
|
|
6690
6750
|
readonly when?: ReadonlyArray<{
|
|
6691
6751
|
readonly key: string;
|
|
6692
6752
|
readonly op: "eq" | "neq";
|
|
@@ -6701,6 +6761,7 @@ export type SessionFormCreateInput = {
|
|
|
6701
6761
|
readonly title?: string;
|
|
6702
6762
|
readonly description?: string;
|
|
6703
6763
|
readonly required?: boolean;
|
|
6764
|
+
readonly hidden?: boolean;
|
|
6704
6765
|
readonly when?: ReadonlyArray<{
|
|
6705
6766
|
readonly key: string;
|
|
6706
6767
|
readonly op: "eq" | "neq";
|
|
@@ -6715,6 +6776,7 @@ export type SessionFormCreateInput = {
|
|
|
6715
6776
|
readonly title?: string;
|
|
6716
6777
|
readonly description?: string;
|
|
6717
6778
|
readonly required?: boolean;
|
|
6779
|
+
readonly hidden?: boolean;
|
|
6718
6780
|
readonly when?: ReadonlyArray<{
|
|
6719
6781
|
readonly key: string;
|
|
6720
6782
|
readonly op: "eq" | "neq";
|
|
@@ -6727,6 +6789,7 @@ export type SessionFormCreateInput = {
|
|
|
6727
6789
|
readonly title?: string;
|
|
6728
6790
|
readonly description?: string;
|
|
6729
6791
|
readonly required?: boolean;
|
|
6792
|
+
readonly hidden?: boolean;
|
|
6730
6793
|
readonly when?: ReadonlyArray<{
|
|
6731
6794
|
readonly key: string;
|
|
6732
6795
|
readonly op: "eq" | "neq";
|
|
@@ -6754,6 +6817,7 @@ export type SessionFormCreateInput = {
|
|
|
6754
6817
|
readonly title?: string;
|
|
6755
6818
|
readonly description?: string;
|
|
6756
6819
|
readonly required?: boolean;
|
|
6820
|
+
readonly hidden?: boolean;
|
|
6757
6821
|
readonly when?: ReadonlyArray<{
|
|
6758
6822
|
readonly key: string;
|
|
6759
6823
|
readonly op: "eq" | "neq";
|
|
@@ -6777,6 +6841,7 @@ export type SessionFormCreateInput = {
|
|
|
6777
6841
|
readonly title?: string;
|
|
6778
6842
|
readonly description?: string;
|
|
6779
6843
|
readonly required?: boolean;
|
|
6844
|
+
readonly hidden?: boolean;
|
|
6780
6845
|
readonly when?: ReadonlyArray<{
|
|
6781
6846
|
readonly key: string;
|
|
6782
6847
|
readonly op: "eq" | "neq";
|
|
@@ -6791,6 +6856,7 @@ export type SessionFormCreateInput = {
|
|
|
6791
6856
|
readonly title?: string;
|
|
6792
6857
|
readonly description?: string;
|
|
6793
6858
|
readonly required?: boolean;
|
|
6859
|
+
readonly hidden?: boolean;
|
|
6794
6860
|
readonly when?: ReadonlyArray<{
|
|
6795
6861
|
readonly key: string;
|
|
6796
6862
|
readonly op: "eq" | "neq";
|
|
@@ -6805,6 +6871,7 @@ export type SessionFormCreateInput = {
|
|
|
6805
6871
|
readonly title?: string;
|
|
6806
6872
|
readonly description?: string;
|
|
6807
6873
|
readonly required?: boolean;
|
|
6874
|
+
readonly hidden?: boolean;
|
|
6808
6875
|
readonly when?: ReadonlyArray<{
|
|
6809
6876
|
readonly key: string;
|
|
6810
6877
|
readonly op: "eq" | "neq";
|
|
@@ -6817,6 +6884,7 @@ export type SessionFormCreateInput = {
|
|
|
6817
6884
|
readonly title?: string;
|
|
6818
6885
|
readonly description?: string;
|
|
6819
6886
|
readonly required?: boolean;
|
|
6887
|
+
readonly hidden?: boolean;
|
|
6820
6888
|
readonly when?: ReadonlyArray<{
|
|
6821
6889
|
readonly key: string;
|
|
6822
6890
|
readonly op: "eq" | "neq";
|
|
@@ -7654,6 +7722,25 @@ export type FileFindOutput = {
|
|
|
7654
7722
|
location: LocationPublicRef;
|
|
7655
7723
|
data: Array<FileSystemEntry>;
|
|
7656
7724
|
};
|
|
7725
|
+
export type FileWriteInput = {
|
|
7726
|
+
readonly location?: {
|
|
7727
|
+
readonly location?: {
|
|
7728
|
+
readonly directory?: string | undefined;
|
|
7729
|
+
} | undefined;
|
|
7730
|
+
readonly path: string;
|
|
7731
|
+
}["location"];
|
|
7732
|
+
readonly path: {
|
|
7733
|
+
readonly location?: {
|
|
7734
|
+
readonly directory?: string | undefined;
|
|
7735
|
+
} | undefined;
|
|
7736
|
+
readonly path: string;
|
|
7737
|
+
}["path"];
|
|
7738
|
+
readonly payload: globalThis.Uint8Array;
|
|
7739
|
+
};
|
|
7740
|
+
export type FileWriteOutput = {
|
|
7741
|
+
location: LocationPublicRef;
|
|
7742
|
+
data: FileSystemWrite;
|
|
7743
|
+
};
|
|
7657
7744
|
export type CommandListInput = {
|
|
7658
7745
|
readonly location?: {
|
|
7659
7746
|
readonly location?: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export const isInvalidRequestError = (value) => typeof value === "object" && value !== null && "_tag" in value && value["_tag"] === "InvalidRequestError";
|
|
2
2
|
export const isUnauthorizedError = (value) => typeof value === "object" && value !== null && "_tag" in value && value["_tag"] === "UnauthorizedError";
|
|
3
|
-
export const isAgentNotFoundError = (value) => typeof value === "object" && value !== null && "_tag" in value && value["_tag"] === "AgentNotFoundError";
|
|
4
3
|
export const isServiceUnavailableError = (value) => typeof value === "object" && value !== null && "_tag" in value && value["_tag"] === "ServiceUnavailableError";
|
|
4
|
+
export const isAgentNotFoundError = (value) => typeof value === "object" && value !== null && "_tag" in value && value["_tag"] === "AgentNotFoundError";
|
|
5
5
|
export const isInvalidCursorError = (value) => typeof value === "object" && value !== null && "_tag" in value && value["_tag"] === "InvalidCursorError";
|
|
6
6
|
export const isSessionNotFoundError = (value) => typeof value === "object" && value !== null && "_tag" in value && value["_tag"] === "SessionNotFoundError";
|
|
7
7
|
export const isConflictError = (value) => typeof value === "object" && value !== null && "_tag" in value && value["_tag"] === "ConflictError";
|
package/dist/promise/service.js
CHANGED
|
@@ -155,7 +155,7 @@ async function probeResult(info, timeout = defaultEnsureTiming.requestTimeout) {
|
|
|
155
155
|
: { type: "basic", username: "opencode", password: info.password },
|
|
156
156
|
};
|
|
157
157
|
const signal = AbortSignal.timeout(timeout);
|
|
158
|
-
const result = await fetch(new URL("/api/
|
|
158
|
+
const result = await fetch(new URL("/api/info", info.url), { headers: headers(endpoint), signal })
|
|
159
159
|
.then(async (response) => ({
|
|
160
160
|
response,
|
|
161
161
|
body: response.status === 404 ? undefined : (await response.json()),
|
|
@@ -164,7 +164,7 @@ async function probeResult(info, timeout = defaultEnsureTiming.requestTimeout) {
|
|
|
164
164
|
if ("cause" in result)
|
|
165
165
|
return { service: undefined, timedOut: signal.aborted };
|
|
166
166
|
const response = result.value.response;
|
|
167
|
-
// The previous V2 service exposes /api/
|
|
167
|
+
// The previous V2 service exposes /api/status instead. Its authenticated 404 is enough
|
|
168
168
|
// to recognize the registered daemon as incompatible and route it through replacement.
|
|
169
169
|
if (response.status === 404)
|
|
170
170
|
return {
|
|
@@ -177,17 +177,17 @@ async function probeResult(info, timeout = defaultEnsureTiming.requestTimeout) {
|
|
|
177
177
|
},
|
|
178
178
|
timedOut: false,
|
|
179
179
|
};
|
|
180
|
-
const
|
|
181
|
-
if (
|
|
182
|
-
if (
|
|
180
|
+
const serverInfo = decodeInfo(result.value.body);
|
|
181
|
+
if (serverInfo !== undefined) {
|
|
182
|
+
if (serverInfo.pid !== info.pid)
|
|
183
183
|
return { service: undefined, timedOut: false };
|
|
184
|
-
if (info.version !== undefined &&
|
|
184
|
+
if (info.version !== undefined && serverInfo.version !== info.version)
|
|
185
185
|
return { service: undefined, timedOut: false };
|
|
186
186
|
return {
|
|
187
187
|
service: {
|
|
188
188
|
info,
|
|
189
189
|
endpoint,
|
|
190
|
-
version:
|
|
190
|
+
version: serverInfo.version,
|
|
191
191
|
state: response.ok ? "ready" : response.status === 500 ? "failed" : "waiting",
|
|
192
192
|
compatible: true,
|
|
193
193
|
},
|
|
@@ -196,7 +196,7 @@ async function probeResult(info, timeout = defaultEnsureTiming.requestTimeout) {
|
|
|
196
196
|
}
|
|
197
197
|
return { service: undefined, timedOut: false };
|
|
198
198
|
}
|
|
199
|
-
function
|
|
199
|
+
function decodeInfo(input) {
|
|
200
200
|
if (typeof input !== "object" || input === null)
|
|
201
201
|
return;
|
|
202
202
|
if (!("version" in input) || typeof input.version !== "string")
|
package/dist/solid/data.js
CHANGED
|
@@ -704,6 +704,7 @@ export function createData(config) {
|
|
|
704
704
|
existing.finish = undefined;
|
|
705
705
|
existing.rawFinish = undefined;
|
|
706
706
|
existing.providerState = undefined;
|
|
707
|
+
existing.time.created = event.data.started;
|
|
707
708
|
existing.time.streamed = undefined;
|
|
708
709
|
existing.time.completed = undefined;
|
|
709
710
|
if (event.data.snapshot)
|
|
@@ -723,7 +724,7 @@ export function createData(config) {
|
|
|
723
724
|
metadata: event.metadata,
|
|
724
725
|
content: [],
|
|
725
726
|
snapshot: event.data.snapshot ? { start: event.data.snapshot } : undefined,
|
|
726
|
-
time: { created: event.
|
|
727
|
+
time: { created: event.data.started },
|
|
727
728
|
});
|
|
728
729
|
});
|
|
729
730
|
return;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "@opencode/client",
|
|
4
|
-
"version": "2.0.
|
|
4
|
+
"version": "2.0.7",
|
|
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/schema": "2.0.
|
|
61
|
-
"@opencode/protocol": "2.0.
|
|
60
|
+
"@opencode/schema": "2.0.7",
|
|
61
|
+
"@opencode/protocol": "2.0.7"
|
|
62
62
|
},
|
|
63
63
|
"peerDependencies": {
|
|
64
64
|
"effect": "4.0.0-rc.112",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
76
|
"@effect/platform-node": "4.0.0-rc.112",
|
|
77
|
-
"@opencode/httpapi-codegen": "2.0.
|
|
77
|
+
"@opencode/httpapi-codegen": "2.0.7",
|
|
78
78
|
"@tsconfig/bun": "1.0.9",
|
|
79
79
|
"@types/bun": "1.4.0",
|
|
80
80
|
"@typescript/native-preview": "7.0.0-dev.20251207.1",
|