feat: persist GooseMode per-session via session DB (#7854)

Signed-off-by: Adrian Cole <adrian@tetrate.io>
This commit is contained in:
Adrian Cole
2026-03-16 19:37:21 +08:00
committed by GitHub
parent 2631095f20
commit 94fdcdd07a
42 changed files with 953 additions and 147 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+33
View File
@@ -492,6 +492,8 @@ export type GooseApp = McpAppResource & (WindowProps | null) & {
prd?: string | null;
};
export type GooseMode = 'auto' | 'approve' | 'smart_approve' | 'chat';
/**
* A single downloadable GGUF file (used internally and for downloads).
*/
@@ -1200,6 +1202,7 @@ export type Session = {
conversation?: Conversation | null;
created_at: string;
extension_data: ExtensionData;
goose_mode?: GooseMode;
id: string;
input_tokens?: number | null;
message_count: number;
@@ -1548,6 +1551,11 @@ export type UpdateSessionNameRequest = {
name: string;
};
export type UpdateSessionRequest = {
goose_mode?: string | null;
session_id: string;
};
export type UpdateSessionUserRecipeValuesRequest = {
/**
* Recipe parameter values entered by the user
@@ -2079,6 +2087,31 @@ export type UpdateAgentProviderResponses = {
200: unknown;
};
export type UpdateSessionData = {
body: UpdateSessionRequest;
path?: never;
query?: never;
url: '/agent/update_session';
};
export type UpdateSessionErrors = {
/**
* Invalid request
*/
400: unknown;
/**
* Internal error
*/
500: unknown;
};
export type UpdateSessionResponses = {
/**
* Session updated
*/
200: unknown;
};
export type UpdateWorkingDirData = {
body: UpdateWorkingDirRequest;
path?: never;