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
+6 -2
View File
@@ -19,6 +19,7 @@ export class ApiClient {
metadata: Metadata
state: AgentState | null
model?: string
effort?: string
}): Promise<Session> {
const response = await axios.post<CreateSessionResponse>(
`${configuration.apiUrl}/cli/sessions`,
@@ -26,7 +27,8 @@ export class ApiClient {
tag: opts.tag,
metadata: opts.metadata,
agentState: opts.state,
model: opts.model
model: opts.model,
effort: opts.effort
},
{
headers: {
@@ -72,7 +74,9 @@ export class ApiClient {
thinkingAt: raw.thinkingAt,
todos: raw.todos,
model: raw.model,
permissionMode: raw.permissionMode
effort: raw.effort,
permissionMode: raw.permissionMode,
collaborationMode: raw.collaborationMode
}
}
+2 -1
View File
@@ -102,7 +102,7 @@ export class ApiMachineClient {
setRPCHandlers({ spawnSession, stopSession, requestShutdown }: MachineRpcHandlers): void {
this.rpcHandlerManager.registerHandler('spawn-happy-session', async (params: any) => {
const { directory, sessionId, resumeSessionId, machineId, approvedNewDirectoryCreation, agent, model, modelReasoningEffort, yolo, token, sessionType, worktreeName } = params || {}
const { directory, sessionId, resumeSessionId, machineId, approvedNewDirectoryCreation, agent, model, effort, modelReasoningEffort, yolo, token, sessionType, worktreeName } = params || {}
if (!directory) {
throw new Error('Directory is required')
@@ -116,6 +116,7 @@ export class ApiMachineClient {
approvedNewDirectoryCreation,
agent,
model,
effort,
modelReasoningEffort,
yolo,
token,
+1
View File
@@ -443,6 +443,7 @@ export class ApiSessionClient extends EventEmitter {
runtime?: {
permissionMode?: SessionPermissionMode
model?: SessionModel
effort?: string | null
collaborationMode?: SessionCollaborationMode
}
): void {
+2
View File
@@ -24,6 +24,7 @@ export type {
export type SessionPermissionMode = PermissionMode
export type SessionCollaborationMode = CodexCollaborationMode
export type SessionModel = string | null
export type SessionEffort = string | null
export { AgentStateSchema, AttachmentMetadataSchema, MetadataSchema }
@@ -99,6 +100,7 @@ export const CreateSessionResponseSchema = z.object({
thinkingAt: z.number(),
todos: TodosSchema.optional(),
model: z.string().nullable(),
effort: z.string().nullable(),
permissionMode: PermissionModeSchema.optional(),
collaborationMode: CodexCollaborationModeSchema.optional()
})