feat(tui): add extension management screen (#8536)
This commit is contained in:
@@ -21,6 +21,8 @@ import type {
|
||||
GetProviderDetailsResponse,
|
||||
GetProviderModelsRequest,
|
||||
GetProviderModelsResponse,
|
||||
GetSessionExtensionsRequest,
|
||||
GetSessionExtensionsResponse,
|
||||
GetToolsRequest,
|
||||
GetToolsResponse,
|
||||
ImportSessionRequest,
|
||||
@@ -47,6 +49,7 @@ import {
|
||||
zGetExtensionsResponse,
|
||||
zGetProviderDetailsResponse,
|
||||
zGetProviderModelsResponse,
|
||||
zGetSessionExtensionsResponse,
|
||||
zGetToolsResponse,
|
||||
zImportSessionResponse,
|
||||
zListProvidersResponse,
|
||||
@@ -93,6 +96,15 @@ export class GooseExtClient {
|
||||
return zGetExtensionsResponse.parse(raw) as GetExtensionsResponse;
|
||||
}
|
||||
|
||||
async GooseSessionExtensions(
|
||||
params: GetSessionExtensionsRequest,
|
||||
): Promise<GetSessionExtensionsResponse> {
|
||||
const raw = await this.conn.extMethod("_goose/session/extensions", params);
|
||||
return zGetSessionExtensionsResponse.parse(
|
||||
raw,
|
||||
) as GetSessionExtensionsResponse;
|
||||
}
|
||||
|
||||
async GooseSessionProviderUpdate(
|
||||
params: UpdateProviderRequest,
|
||||
): Promise<UpdateProviderResponse> {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// This file is auto-generated by @hey-api/openapi-ts
|
||||
|
||||
export type { AddExtensionRequest, ArchiveSessionRequest, CheckSecretRequest, CheckSecretResponse, DeleteSessionRequest, EmptyResponse, ExportSessionRequest, ExportSessionResponse, ExtRequest, ExtResponse, GetExtensionsRequest, GetExtensionsResponse, GetProviderDetailsRequest, GetProviderDetailsResponse, GetProviderModelsRequest, GetProviderModelsResponse, GetToolsRequest, GetToolsResponse, ImportSessionRequest, ImportSessionResponse, ListProvidersRequest, ListProvidersResponse, ModelEntry, ProviderConfigKey, ProviderDetailEntry, ProviderListEntry, ReadConfigRequest, ReadConfigResponse, ReadResourceRequest, ReadResourceResponse, RemoveConfigRequest, RemoveExtensionRequest, RemoveSecretRequest, UnarchiveSessionRequest, UpdateProviderRequest, UpdateProviderResponse, UpdateWorkingDirRequest, UpsertConfigRequest, UpsertSecretRequest } from './types.gen.js';
|
||||
export type { AddExtensionRequest, ArchiveSessionRequest, CheckSecretRequest, CheckSecretResponse, DeleteSessionRequest, EmptyResponse, ExportSessionRequest, ExportSessionResponse, ExtRequest, ExtResponse, GetExtensionsRequest, GetExtensionsResponse, GetProviderDetailsRequest, GetProviderDetailsResponse, GetProviderModelsRequest, GetProviderModelsResponse, GetSessionExtensionsRequest, GetSessionExtensionsResponse, GetToolsRequest, GetToolsResponse, ImportSessionRequest, ImportSessionResponse, ListProvidersRequest, ListProvidersResponse, ModelEntry, ProviderConfigKey, ProviderDetailEntry, ProviderListEntry, ReadConfigRequest, ReadConfigResponse, ReadResourceRequest, ReadResourceResponse, RemoveConfigRequest, RemoveExtensionRequest, RemoveSecretRequest, UnarchiveSessionRequest, UpdateProviderRequest, UpdateProviderResponse, UpdateWorkingDirRequest, UpsertConfigRequest, UpsertSecretRequest } from './types.gen.js';
|
||||
|
||||
export const GOOSE_EXT_METHODS = [
|
||||
{
|
||||
@@ -38,6 +38,11 @@ export const GOOSE_EXT_METHODS = [
|
||||
requestType: "GetExtensionsRequest",
|
||||
responseType: "GetExtensionsResponse",
|
||||
},
|
||||
{
|
||||
method: "_goose/session/extensions",
|
||||
requestType: "GetSessionExtensionsRequest",
|
||||
responseType: "GetSessionExtensionsResponse",
|
||||
},
|
||||
{
|
||||
method: "_goose/session/provider/update",
|
||||
requestType: "UpdateProviderRequest",
|
||||
|
||||
@@ -96,6 +96,14 @@ export type GetExtensionsResponse = {
|
||||
warnings: Array<string>;
|
||||
};
|
||||
|
||||
export type GetSessionExtensionsRequest = {
|
||||
sessionId: string;
|
||||
};
|
||||
|
||||
export type GetSessionExtensionsResponse = {
|
||||
extensions: Array<unknown>;
|
||||
};
|
||||
|
||||
/**
|
||||
* Atomically update the provider for a live session.
|
||||
*/
|
||||
@@ -299,14 +307,14 @@ export type UnarchiveSessionRequest = {
|
||||
export type ExtRequest = {
|
||||
id: string;
|
||||
method: string;
|
||||
params?: AddExtensionRequest | RemoveExtensionRequest | GetToolsRequest | ReadResourceRequest | UpdateWorkingDirRequest | DeleteSessionRequest | GetExtensionsRequest | UpdateProviderRequest | ListProvidersRequest | GetProviderDetailsRequest | GetProviderModelsRequest | ReadConfigRequest | UpsertConfigRequest | RemoveConfigRequest | CheckSecretRequest | UpsertSecretRequest | RemoveSecretRequest | ExportSessionRequest | ImportSessionRequest | ArchiveSessionRequest | UnarchiveSessionRequest | {
|
||||
params?: AddExtensionRequest | RemoveExtensionRequest | GetToolsRequest | ReadResourceRequest | UpdateWorkingDirRequest | DeleteSessionRequest | GetExtensionsRequest | GetSessionExtensionsRequest | UpdateProviderRequest | ListProvidersRequest | GetProviderDetailsRequest | GetProviderModelsRequest | ReadConfigRequest | UpsertConfigRequest | RemoveConfigRequest | CheckSecretRequest | UpsertSecretRequest | RemoveSecretRequest | ExportSessionRequest | ImportSessionRequest | ArchiveSessionRequest | UnarchiveSessionRequest | {
|
||||
[key: string]: unknown;
|
||||
} | null;
|
||||
};
|
||||
|
||||
export type ExtResponse = {
|
||||
id: string;
|
||||
result?: EmptyResponse | GetToolsResponse | ReadResourceResponse | GetExtensionsResponse | UpdateProviderResponse | ListProvidersResponse | GetProviderDetailsResponse | GetProviderModelsResponse | ReadConfigResponse | CheckSecretResponse | ExportSessionResponse | ImportSessionResponse | unknown;
|
||||
result?: EmptyResponse | GetToolsResponse | ReadResourceResponse | GetExtensionsResponse | GetSessionExtensionsResponse | UpdateProviderResponse | ListProvidersResponse | GetProviderDetailsResponse | GetProviderModelsResponse | ReadConfigResponse | CheckSecretResponse | ExportSessionResponse | ImportSessionResponse | unknown;
|
||||
} | {
|
||||
error: {
|
||||
code: number;
|
||||
|
||||
@@ -81,6 +81,14 @@ export const zGetExtensionsResponse = z.object({
|
||||
warnings: z.array(z.string())
|
||||
});
|
||||
|
||||
export const zGetSessionExtensionsRequest = z.object({
|
||||
sessionId: z.string()
|
||||
});
|
||||
|
||||
export const zGetSessionExtensionsResponse = z.object({
|
||||
extensions: z.array(z.unknown())
|
||||
});
|
||||
|
||||
/**
|
||||
* Atomically update the provider for a live session.
|
||||
*/
|
||||
@@ -302,6 +310,7 @@ export const zExtRequest = z.object({
|
||||
zUpdateWorkingDirRequest,
|
||||
zDeleteSessionRequest,
|
||||
zGetExtensionsRequest,
|
||||
zGetSessionExtensionsRequest,
|
||||
zUpdateProviderRequest,
|
||||
zListProvidersRequest,
|
||||
zGetProviderDetailsRequest,
|
||||
@@ -333,6 +342,7 @@ export const zExtResponse = z.union([
|
||||
zGetToolsResponse,
|
||||
zReadResourceResponse,
|
||||
zGetExtensionsResponse,
|
||||
zGetSessionExtensionsResponse,
|
||||
zUpdateProviderResponse,
|
||||
zListProvidersResponse,
|
||||
zGetProviderDetailsResponse,
|
||||
|
||||
Reference in New Issue
Block a user