@ex-machina/opencode-sdk 1.3.2001 → 1.3.3001
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/client.js +26 -0
- package/dist/v2/client.js +40 -3
- package/dist/v2/gen/sdk.gen.d.ts +1 -11
- package/dist/v2/gen/sdk.gen.js +0 -21
- package/dist/v2/gen/types.gen.d.ts +0 -18
- package/package.json +1 -1
package/dist/client.js
CHANGED
|
@@ -2,6 +2,31 @@ export * from "./gen/types.gen.js";
|
|
|
2
2
|
import { createClient } from "./gen/client/client.gen.js";
|
|
3
3
|
import { OpencodeClient } from "./gen/sdk.gen.js";
|
|
4
4
|
export { OpencodeClient };
|
|
5
|
+
function pick(value, fallback) {
|
|
6
|
+
if (!value)
|
|
7
|
+
return;
|
|
8
|
+
if (!fallback)
|
|
9
|
+
return value;
|
|
10
|
+
if (value === fallback)
|
|
11
|
+
return fallback;
|
|
12
|
+
if (value === encodeURIComponent(fallback))
|
|
13
|
+
return fallback;
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
function rewrite(request, directory) {
|
|
17
|
+
if (request.method !== "GET" && request.method !== "HEAD")
|
|
18
|
+
return request;
|
|
19
|
+
const value = pick(request.headers.get("x-opencode-directory"), directory);
|
|
20
|
+
if (!value)
|
|
21
|
+
return request;
|
|
22
|
+
const url = new URL(request.url);
|
|
23
|
+
if (!url.searchParams.has("directory")) {
|
|
24
|
+
url.searchParams.set("directory", value);
|
|
25
|
+
}
|
|
26
|
+
const next = new Request(url, request);
|
|
27
|
+
next.headers.delete("x-opencode-directory");
|
|
28
|
+
return next;
|
|
29
|
+
}
|
|
5
30
|
export function createOpencodeClient(config) {
|
|
6
31
|
if (!config?.fetch) {
|
|
7
32
|
const customFetch = (req) => {
|
|
@@ -21,5 +46,6 @@ export function createOpencodeClient(config) {
|
|
|
21
46
|
};
|
|
22
47
|
}
|
|
23
48
|
const client = createClient(config);
|
|
49
|
+
client.interceptors.request.use((request) => rewrite(request, config?.directory));
|
|
24
50
|
return new OpencodeClient({ client });
|
|
25
51
|
}
|
package/dist/v2/client.js
CHANGED
|
@@ -2,6 +2,41 @@ export * from "./gen/types.gen.js";
|
|
|
2
2
|
import { createClient } from "./gen/client/client.gen.js";
|
|
3
3
|
import { OpencodeClient } from "./gen/sdk.gen.js";
|
|
4
4
|
export { OpencodeClient };
|
|
5
|
+
function pick(value, fallback, encode) {
|
|
6
|
+
if (!value)
|
|
7
|
+
return;
|
|
8
|
+
if (!fallback)
|
|
9
|
+
return value;
|
|
10
|
+
if (value === fallback)
|
|
11
|
+
return fallback;
|
|
12
|
+
if (encode && value === encode(fallback))
|
|
13
|
+
return fallback;
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
function rewrite(request, values) {
|
|
17
|
+
if (request.method !== "GET" && request.method !== "HEAD")
|
|
18
|
+
return request;
|
|
19
|
+
const url = new URL(request.url);
|
|
20
|
+
let changed = false;
|
|
21
|
+
for (const [name, key] of [
|
|
22
|
+
["x-opencode-directory", "directory"],
|
|
23
|
+
["x-opencode-workspace", "workspace"],
|
|
24
|
+
]) {
|
|
25
|
+
const value = pick(request.headers.get(name), key === "directory" ? values.directory : values.workspace, key === "directory" ? encodeURIComponent : undefined);
|
|
26
|
+
if (!value)
|
|
27
|
+
continue;
|
|
28
|
+
if (!url.searchParams.has(key)) {
|
|
29
|
+
url.searchParams.set(key, value);
|
|
30
|
+
}
|
|
31
|
+
changed = true;
|
|
32
|
+
}
|
|
33
|
+
if (!changed)
|
|
34
|
+
return request;
|
|
35
|
+
const next = new Request(url, request);
|
|
36
|
+
next.headers.delete("x-opencode-directory");
|
|
37
|
+
next.headers.delete("x-opencode-workspace");
|
|
38
|
+
return next;
|
|
39
|
+
}
|
|
5
40
|
export function createOpencodeClient(config) {
|
|
6
41
|
if (!config?.fetch) {
|
|
7
42
|
const customFetch = (req) => {
|
|
@@ -15,11 +50,9 @@ export function createOpencodeClient(config) {
|
|
|
15
50
|
};
|
|
16
51
|
}
|
|
17
52
|
if (config?.directory) {
|
|
18
|
-
const isNonASCII = /[^\x00-\x7F]/.test(config.directory);
|
|
19
|
-
const encodedDirectory = isNonASCII ? encodeURIComponent(config.directory) : config.directory;
|
|
20
53
|
config.headers = {
|
|
21
54
|
...config.headers,
|
|
22
|
-
"x-opencode-directory":
|
|
55
|
+
"x-opencode-directory": encodeURIComponent(config.directory),
|
|
23
56
|
};
|
|
24
57
|
}
|
|
25
58
|
if (config?.experimental_workspaceID) {
|
|
@@ -29,5 +62,9 @@ export function createOpencodeClient(config) {
|
|
|
29
62
|
};
|
|
30
63
|
}
|
|
31
64
|
const client = createClient(config);
|
|
65
|
+
client.interceptors.request.use((request) => rewrite(request, {
|
|
66
|
+
directory: config?.directory,
|
|
67
|
+
workspace: config?.experimental_workspaceID,
|
|
68
|
+
}));
|
|
32
69
|
return new OpencodeClient({ client });
|
|
33
70
|
}
|
package/dist/v2/gen/sdk.gen.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Client, type Options as Options2, type TDataShape } from "./client/index.js";
|
|
2
|
-
import type { AgentPartInput, AppAgentsResponses, AppLogErrors, AppLogResponses, AppSkillsResponses, Auth as Auth3, AuthRemoveErrors, AuthRemoveResponses, AuthSetErrors, AuthSetResponses, CommandListResponses, Config as Config3, ConfigGetResponses, ConfigProvidersResponses, ConfigUpdateErrors, ConfigUpdateResponses, EventSubscribeResponses, EventTuiCommandExecute, EventTuiPromptAppend, EventTuiSessionSelect, EventTuiToastShow, ExperimentalResourceListResponses, ExperimentalSessionListResponses, ExperimentalWorkspaceCreateErrors, ExperimentalWorkspaceCreateResponses, ExperimentalWorkspaceListResponses, ExperimentalWorkspaceRemoveErrors, ExperimentalWorkspaceRemoveResponses, FileListResponses, FilePartInput, FilePartSource, FileReadResponses, FileStatusResponses, FindFilesResponses, FindSymbolsResponses, FindTextResponses, FormatterStatusResponses, GlobalConfigGetResponses, GlobalConfigUpdateErrors, GlobalConfigUpdateResponses, GlobalDisposeResponses, GlobalEventResponses, GlobalHealthResponses, GlobalSyncEventSubscribeResponses, GlobalUpgradeErrors, GlobalUpgradeResponses, InstanceDisposeResponses, LspStatusResponses, McpAddErrors, McpAddResponses, McpAuthAuthenticateErrors, McpAuthAuthenticateResponses, McpAuthCallbackErrors, McpAuthCallbackResponses, McpAuthRemoveErrors, McpAuthRemoveResponses, McpAuthStartErrors, McpAuthStartResponses, McpConnectResponses, McpDisconnectResponses, McpLocalConfig, McpRemoteConfig, McpStatusResponses, OutputFormat, Part as Part2, PartDeleteErrors, PartDeleteResponses, PartUpdateErrors, PartUpdateResponses, PathGetResponses, PermissionListResponses, PermissionReplyErrors, PermissionReplyResponses, PermissionRespondErrors, PermissionRespondResponses, PermissionRuleset, ProjectCurrentResponses, ProjectInitGitResponses, ProjectListResponses, ProjectUpdateErrors, ProjectUpdateResponses, ProviderAuthResponses, ProviderListResponses, ProviderOauthAuthorizeErrors, ProviderOauthAuthorizeResponses, ProviderOauthCallbackErrors, ProviderOauthCallbackResponses, PtyConnectErrors, PtyConnectResponses, PtyCreateErrors, PtyCreateResponses, PtyGetErrors, PtyGetResponses, PtyListResponses, PtyRemoveErrors, PtyRemoveResponses, PtyUpdateErrors, PtyUpdateResponses, QuestionAnswer, QuestionAskErrors, QuestionAskInput, QuestionAskResponses, QuestionListResponses, QuestionRejectErrors, QuestionRejectResponses, QuestionReplyErrors, QuestionReplyResponses, SessionAbortErrors, SessionAbortResponses, SessionChildrenErrors, SessionChildrenResponses, SessionCommandErrors, SessionCommandResponses, SessionCreateErrors, SessionCreateResponses, SessionDeleteErrors, SessionDeleteMessageErrors, SessionDeleteMessageResponses, SessionDeleteResponses, SessionDiffResponses, SessionForkResponses, SessionGetErrors, SessionGetResponses, SessionInitErrors, SessionInitResponses, SessionListResponses, SessionMessageErrors, SessionMessageResponses, SessionMessagesErrors, SessionMessagesResponses, SessionPromptAsyncErrors, SessionPromptAsyncResponses, SessionPromptErrors, SessionPromptResponses, SessionRevertErrors, SessionRevertResponses, SessionShareErrors, SessionShareResponses, SessionShellErrors, SessionShellResponses, SessionStatusErrors, SessionStatusResponses, SessionSummarizeErrors, SessionSummarizeResponses, SessionTodoErrors, SessionTodoResponses, SessionUnrevertErrors, SessionUnrevertResponses, SessionUnshareErrors, SessionUnshareResponses, SessionUpdateErrors, SessionUpdateResponses, SubtaskPartInput, TextPartInput, ToolIdsErrors, ToolIdsResponses, ToolListErrors, ToolListResponses, TuiAppendPromptErrors, TuiAppendPromptResponses, TuiClearPromptResponses, TuiControlNextResponses, TuiControlResponseResponses, TuiExecuteCommandErrors, TuiExecuteCommandResponses, TuiOpenHelpResponses, TuiOpenModelsResponses, TuiOpenSessionsResponses, TuiOpenThemesResponses, TuiPublishErrors, TuiPublishResponses, TuiSelectSessionErrors, TuiSelectSessionResponses, TuiShowToastResponses, TuiSubmitPromptResponses,
|
|
2
|
+
import type { AgentPartInput, AppAgentsResponses, AppLogErrors, AppLogResponses, AppSkillsResponses, Auth as Auth3, AuthRemoveErrors, AuthRemoveResponses, AuthSetErrors, AuthSetResponses, CommandListResponses, Config as Config3, ConfigGetResponses, ConfigProvidersResponses, ConfigUpdateErrors, ConfigUpdateResponses, EventSubscribeResponses, EventTuiCommandExecute, EventTuiPromptAppend, EventTuiSessionSelect, EventTuiToastShow, ExperimentalResourceListResponses, ExperimentalSessionListResponses, ExperimentalWorkspaceCreateErrors, ExperimentalWorkspaceCreateResponses, ExperimentalWorkspaceListResponses, ExperimentalWorkspaceRemoveErrors, ExperimentalWorkspaceRemoveResponses, FileListResponses, FilePartInput, FilePartSource, FileReadResponses, FileStatusResponses, FindFilesResponses, FindSymbolsResponses, FindTextResponses, FormatterStatusResponses, GlobalConfigGetResponses, GlobalConfigUpdateErrors, GlobalConfigUpdateResponses, GlobalDisposeResponses, GlobalEventResponses, GlobalHealthResponses, GlobalSyncEventSubscribeResponses, GlobalUpgradeErrors, GlobalUpgradeResponses, InstanceDisposeResponses, LspStatusResponses, McpAddErrors, McpAddResponses, McpAuthAuthenticateErrors, McpAuthAuthenticateResponses, McpAuthCallbackErrors, McpAuthCallbackResponses, McpAuthRemoveErrors, McpAuthRemoveResponses, McpAuthStartErrors, McpAuthStartResponses, McpConnectResponses, McpDisconnectResponses, McpLocalConfig, McpRemoteConfig, McpStatusResponses, OutputFormat, Part as Part2, PartDeleteErrors, PartDeleteResponses, PartUpdateErrors, PartUpdateResponses, PathGetResponses, PermissionListResponses, PermissionReplyErrors, PermissionReplyResponses, PermissionRespondErrors, PermissionRespondResponses, PermissionRuleset, ProjectCurrentResponses, ProjectInitGitResponses, ProjectListResponses, ProjectUpdateErrors, ProjectUpdateResponses, ProviderAuthResponses, ProviderListResponses, ProviderOauthAuthorizeErrors, ProviderOauthAuthorizeResponses, ProviderOauthCallbackErrors, ProviderOauthCallbackResponses, PtyConnectErrors, PtyConnectResponses, PtyCreateErrors, PtyCreateResponses, PtyGetErrors, PtyGetResponses, PtyListResponses, PtyRemoveErrors, PtyRemoveResponses, PtyUpdateErrors, PtyUpdateResponses, QuestionAnswer, QuestionAskErrors, QuestionAskInput, QuestionAskResponses, QuestionListResponses, QuestionRejectErrors, QuestionRejectResponses, QuestionReplyErrors, QuestionReplyResponses, SessionAbortErrors, SessionAbortResponses, SessionChildrenErrors, SessionChildrenResponses, SessionCommandErrors, SessionCommandResponses, SessionCreateErrors, SessionCreateResponses, SessionDeleteErrors, SessionDeleteMessageErrors, SessionDeleteMessageResponses, SessionDeleteResponses, SessionDiffResponses, SessionForkResponses, SessionGetErrors, SessionGetResponses, SessionInitErrors, SessionInitResponses, SessionListResponses, SessionMessageErrors, SessionMessageResponses, SessionMessagesErrors, SessionMessagesResponses, SessionPromptAsyncErrors, SessionPromptAsyncResponses, SessionPromptErrors, SessionPromptResponses, SessionRevertErrors, SessionRevertResponses, SessionShareErrors, SessionShareResponses, SessionShellErrors, SessionShellResponses, SessionStatusErrors, SessionStatusResponses, SessionSummarizeErrors, SessionSummarizeResponses, SessionTodoErrors, SessionTodoResponses, SessionUnrevertErrors, SessionUnrevertResponses, SessionUnshareErrors, SessionUnshareResponses, SessionUpdateErrors, SessionUpdateResponses, SubtaskPartInput, TextPartInput, ToolIdsErrors, ToolIdsResponses, ToolListErrors, ToolListResponses, TuiAppendPromptErrors, TuiAppendPromptResponses, TuiClearPromptResponses, TuiControlNextResponses, TuiControlResponseResponses, TuiExecuteCommandErrors, TuiExecuteCommandResponses, TuiOpenHelpResponses, TuiOpenModelsResponses, TuiOpenSessionsResponses, TuiOpenThemesResponses, TuiPublishErrors, TuiPublishResponses, TuiSelectSessionErrors, TuiSelectSessionResponses, TuiShowToastResponses, TuiSubmitPromptResponses, VcsGetResponses, WorktreeCreateErrors, WorktreeCreateInput, WorktreeCreateResponses, WorktreeListResponses, WorktreeRemoveErrors, WorktreeRemoveInput, WorktreeRemoveResponses, WorktreeResetErrors, WorktreeResetInput, WorktreeResetResponses } from "./types.gen.js";
|
|
3
3
|
export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {
|
|
4
4
|
/**
|
|
5
5
|
* You can provide a client instance returned by `createClient()` instead of
|
|
@@ -1175,16 +1175,6 @@ export declare class Vcs extends HeyApiClient {
|
|
|
1175
1175
|
directory?: string;
|
|
1176
1176
|
workspace?: string;
|
|
1177
1177
|
}, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<VcsGetResponses, unknown, ThrowOnError, "fields">;
|
|
1178
|
-
/**
|
|
1179
|
-
* Get VCS diff
|
|
1180
|
-
*
|
|
1181
|
-
* Retrieve the current git diff for the working tree or against the default branch.
|
|
1182
|
-
*/
|
|
1183
|
-
diff<ThrowOnError extends boolean = false>(parameters: {
|
|
1184
|
-
directory?: string;
|
|
1185
|
-
workspace?: string;
|
|
1186
|
-
mode: "git" | "branch";
|
|
1187
|
-
}, options?: Options<never, ThrowOnError>): import("./client/types.gen.js").RequestResult<VcsDiffResponses, unknown, ThrowOnError, "fields">;
|
|
1188
1178
|
}
|
|
1189
1179
|
export declare class Command extends HeyApiClient {
|
|
1190
1180
|
/**
|
package/dist/v2/gen/sdk.gen.js
CHANGED
|
@@ -2392,27 +2392,6 @@ export class Vcs extends HeyApiClient {
|
|
|
2392
2392
|
...params,
|
|
2393
2393
|
});
|
|
2394
2394
|
}
|
|
2395
|
-
/**
|
|
2396
|
-
* Get VCS diff
|
|
2397
|
-
*
|
|
2398
|
-
* Retrieve the current git diff for the working tree or against the default branch.
|
|
2399
|
-
*/
|
|
2400
|
-
diff(parameters, options) {
|
|
2401
|
-
const params = buildClientParams([parameters], [
|
|
2402
|
-
{
|
|
2403
|
-
args: [
|
|
2404
|
-
{ in: "query", key: "directory" },
|
|
2405
|
-
{ in: "query", key: "workspace" },
|
|
2406
|
-
{ in: "query", key: "mode" },
|
|
2407
|
-
],
|
|
2408
|
-
},
|
|
2409
|
-
]);
|
|
2410
|
-
return (options?.client ?? this.client).get({
|
|
2411
|
-
url: "/vcs/diff",
|
|
2412
|
-
...options,
|
|
2413
|
-
...params,
|
|
2414
|
-
});
|
|
2415
|
-
}
|
|
2416
2395
|
}
|
|
2417
2396
|
export class Command extends HeyApiClient {
|
|
2418
2397
|
/**
|
|
@@ -1713,7 +1713,6 @@ export type Path = {
|
|
|
1713
1713
|
};
|
|
1714
1714
|
export type VcsInfo = {
|
|
1715
1715
|
branch?: string;
|
|
1716
|
-
default_branch?: string;
|
|
1717
1716
|
};
|
|
1718
1717
|
export type Command = {
|
|
1719
1718
|
name: string;
|
|
@@ -4329,23 +4328,6 @@ export type VcsGetResponses = {
|
|
|
4329
4328
|
200: VcsInfo;
|
|
4330
4329
|
};
|
|
4331
4330
|
export type VcsGetResponse = VcsGetResponses[keyof VcsGetResponses];
|
|
4332
|
-
export type VcsDiffData = {
|
|
4333
|
-
body?: never;
|
|
4334
|
-
path?: never;
|
|
4335
|
-
query: {
|
|
4336
|
-
directory?: string;
|
|
4337
|
-
workspace?: string;
|
|
4338
|
-
mode: "git" | "branch";
|
|
4339
|
-
};
|
|
4340
|
-
url: "/vcs/diff";
|
|
4341
|
-
};
|
|
4342
|
-
export type VcsDiffResponses = {
|
|
4343
|
-
/**
|
|
4344
|
-
* VCS diff
|
|
4345
|
-
*/
|
|
4346
|
-
200: Array<FileDiff>;
|
|
4347
|
-
};
|
|
4348
|
-
export type VcsDiffResponse = VcsDiffResponses[keyof VcsDiffResponses];
|
|
4349
4331
|
export type CommandListData = {
|
|
4350
4332
|
body?: never;
|
|
4351
4333
|
path?: never;
|