feat(claude): add effort setting parity with model across stack (#353)

Co-authored-by: Xiaoyi <xiaoyizhang@microsoft.com>
This commit is contained in:
xyzhang626
2026-03-24 21:15:48 +08:00
committed by GitHub
co-authored by Xiaoyi
parent 30265fdc25
commit a200fe9628
50 changed files with 715 additions and 52 deletions
+9 -2
View File
@@ -2,7 +2,7 @@ import { ApiClient, ApiSessionClient } from '@/lib';
import { MessageQueue2 } from '@/utils/MessageQueue2';
import { logger } from '@/ui/logger';
import { AgentSessionBase } from '@/agent/sessionBase';
import type { SessionModel } from '@/api/types';
import type { SessionEffort, SessionModel } from '@/api/types';
import type { EnhancedMode } from './loop';
import type { PermissionMode } from './loop';
import type { LocalLaunchExitReason } from '@/agent/localLaunchPolicy';
@@ -40,6 +40,7 @@ export class Session extends AgentSessionBase<EnhancedMode> {
hookSettingsPath: string;
permissionMode?: PermissionMode;
model?: SessionModel;
effort?: SessionEffort;
}) {
super({
api: opts.api,
@@ -57,7 +58,8 @@ export class Session extends AgentSessionBase<EnhancedMode> {
claudeSessionId: sessionId
}),
permissionMode: opts.permissionMode,
model: opts.model
model: opts.model,
effort: opts.effort
});
this.claudeEnvVars = opts.claudeEnvVars;
@@ -69,6 +71,7 @@ export class Session extends AgentSessionBase<EnhancedMode> {
this.startingMode = opts.startingMode;
this.permissionMode = opts.permissionMode;
this.model = opts.model;
this.effort = opts.effort;
}
setPermissionMode = (mode: PermissionMode): void => {
@@ -79,6 +82,10 @@ export class Session extends AgentSessionBase<EnhancedMode> {
this.model = model;
};
setEffort = (effort: SessionEffort): void => {
this.effort = effort;
};
recordLocalLaunchFailure = (message: string, exitReason: LocalLaunchExitReason): void => {
this.localLaunchFailure = { message, exitReason };
};