chore: bump coding-agent to 0.7.14 - fix Anthropic OAuth and Mistral API compatibility

This commit is contained in:
Mario Zechner 2025-11-17 12:46:59 +01:00
parent a5ed6ab641
commit 063b7e0f11
9 changed files with 303 additions and 7 deletions

View file

@ -164,6 +164,9 @@ async function streamAssistantResponse(
} else {
context.messages.push(finalMessage);
}
if (!addedPartial) {
stream.push({ type: "message_start", message: { ...finalMessage } });
}
stream.push({ type: "message_end", message: finalMessage });
return finalMessage;
}

View file

@ -273,13 +273,22 @@ function buildParams(model: Model<"openai-completions">, context: Context, optio
stream_options: { include_usage: true },
};
// Cerebras/xAI dont like the "store" field
if (!model.baseUrl.includes("cerebras.ai") && !model.baseUrl.includes("api.x.ai")) {
// Cerebras/xAI/Mistral dont like the "store" field
if (
!model.baseUrl.includes("cerebras.ai") &&
!model.baseUrl.includes("api.x.ai") &&
!model.baseUrl.includes("mistral.ai")
) {
params.store = false;
}
if (options?.maxTokens) {
params.max_completion_tokens = options?.maxTokens;
// Mistral uses max_tokens instead of max_completion_tokens
if (model.baseUrl.includes("mistral.ai")) {
(params as any).max_tokens = options?.maxTokens;
} else {
params.max_completion_tokens = options?.maxTokens;
}
}
if (options?.temperature !== undefined) {
@ -308,9 +317,12 @@ function convertMessages(model: Model<"openai-completions">, context: Context):
const transformedMessages = transformMessages(context.messages, model);
if (context.systemPrompt) {
// Cerebras/xAi don't like the "developer" role
// Cerebras/xAi/Mistral don't like the "developer" role
const useDeveloperRole =
model.reasoning && !model.baseUrl.includes("cerebras.ai") && !model.baseUrl.includes("api.x.ai");
model.reasoning &&
!model.baseUrl.includes("cerebras.ai") &&
!model.baseUrl.includes("api.x.ai") &&
!model.baseUrl.includes("mistral.ai");
const role = useDeveloperRole ? "developer" : "system";
params.push({ role: role, content: sanitizeSurrogates(context.systemPrompt) });
}