diff options
| author | opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com> | 2026-02-20 13:46:03 +0000 |
|---|---|---|
| committer | opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com> | 2026-02-20 13:46:03 +0000 |
| commit | 7867ba441ff416ebda51fe13b0b139fc6d81de25 (patch) | |
| tree | c49ffbffbae2e01055fb25021faa9d7ce01f7b0d /packages/sdk/js/src | |
| parent | 7419ebc872ae99f0d8bb8cca0579619f46712723 (diff) | |
| download | opencode-7867ba441ff416ebda51fe13b0b139fc6d81de25.tar.gz opencode-7867ba441ff416ebda51fe13b0b139fc6d81de25.zip | |
chore: generate
Diffstat (limited to 'packages/sdk/js/src')
| -rw-r--r-- | packages/sdk/js/src/v2/gen/sdk.gen.ts | 56 | ||||
| -rw-r--r-- | packages/sdk/js/src/v2/gen/types.gen.ts | 84 |
2 files changed, 136 insertions, 4 deletions
diff --git a/packages/sdk/js/src/v2/gen/sdk.gen.ts b/packages/sdk/js/src/v2/gen/sdk.gen.ts index af79c44a1..b4848e605 100644 --- a/packages/sdk/js/src/v2/gen/sdk.gen.ts +++ b/packages/sdk/js/src/v2/gen/sdk.gen.ts @@ -25,6 +25,7 @@ import type { EventTuiSessionSelect, EventTuiToastShow, ExperimentalResourceListResponses, + ExperimentalSessionListResponses, FileListResponses, FilePartInput, FilePartSource, @@ -898,6 +899,48 @@ export class Worktree extends HeyApiClient { } } +export class Session extends HeyApiClient { + /** + * List sessions + * + * Get a list of all OpenCode sessions across projects, sorted by most recently updated. Archived sessions are excluded by default. + */ + public list<ThrowOnError extends boolean = false>( + parameters?: { + directory?: string + roots?: boolean + start?: number + cursor?: number + search?: string + limit?: number + archived?: boolean + }, + options?: Options<never, ThrowOnError>, + ) { + const params = buildClientParams( + [parameters], + [ + { + args: [ + { in: "query", key: "directory" }, + { in: "query", key: "roots" }, + { in: "query", key: "start" }, + { in: "query", key: "cursor" }, + { in: "query", key: "search" }, + { in: "query", key: "limit" }, + { in: "query", key: "archived" }, + ], + }, + ], + ) + return (options?.client ?? this.client).get<ExperimentalSessionListResponses, unknown, ThrowOnError>({ + url: "/experimental/session", + ...options, + ...params, + }) + } +} + export class Resource extends HeyApiClient { /** * Get MCP resources @@ -920,13 +963,18 @@ export class Resource extends HeyApiClient { } export class Experimental extends HeyApiClient { + private _session?: Session + get session(): Session { + return (this._session ??= new Session({ client: this.client })) + } + private _resource?: Resource get resource(): Resource { return (this._resource ??= new Resource({ client: this.client })) } } -export class Session extends HeyApiClient { +export class Session2 extends HeyApiClient { /** * List sessions * @@ -3231,9 +3279,9 @@ export class OpencodeClient extends HeyApiClient { return (this._experimental ??= new Experimental({ client: this.client })) } - private _session?: Session - get session(): Session { - return (this._session ??= new Session({ client: this.client })) + private _session?: Session2 + get session(): Session2 { + return (this._session ??= new Session2({ client: this.client })) } private _part?: Part diff --git a/packages/sdk/js/src/v2/gen/types.gen.ts b/packages/sdk/js/src/v2/gen/types.gen.ts index efb7e202e..4050ef157 100644 --- a/packages/sdk/js/src/v2/gen/types.gen.ts +++ b/packages/sdk/js/src/v2/gen/types.gen.ts @@ -2044,6 +2044,45 @@ export type WorktreeResetInput = { directory: string } +export type ProjectSummary = { + id: string + name?: string + worktree: string +} + +export type GlobalSession = { + id: string + slug: string + projectID: string + directory: string + parentID?: string + summary?: { + additions: number + deletions: number + files: number + diffs?: Array<FileDiff> + } + share?: { + url: string + } + title: string + version: string + time: { + created: number + updated: number + compacting?: number + archived?: number + } + permission?: PermissionRuleset + revert?: { + messageID: string + partID?: string + snapshot?: string + diff?: string + } + project: ProjectSummary | null +} + export type McpResource = { name: string uri: string @@ -2870,6 +2909,51 @@ export type WorktreeResetResponses = { export type WorktreeResetResponse = WorktreeResetResponses[keyof WorktreeResetResponses] +export type ExperimentalSessionListData = { + body?: never + path?: never + query?: { + /** + * Filter sessions by project directory + */ + directory?: string + /** + * Only return root sessions (no parentID) + */ + roots?: boolean + /** + * Filter sessions updated on or after this timestamp (milliseconds since epoch) + */ + start?: number + /** + * Return sessions updated before this timestamp (milliseconds since epoch) + */ + cursor?: number + /** + * Filter sessions by title (case-insensitive) + */ + search?: string + /** + * Maximum number of sessions to return + */ + limit?: number + /** + * Include archived sessions (default false) + */ + archived?: boolean + } + url: "/experimental/session" +} + +export type ExperimentalSessionListResponses = { + /** + * List of sessions + */ + 200: Array<GlobalSession> +} + +export type ExperimentalSessionListResponse = ExperimentalSessionListResponses[keyof ExperimentalSessionListResponses] + export type ExperimentalResourceListData = { body?: never path?: never |
