mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-21 23:04:41 +00:00
fix: use findInitialModel in SDK, default to opus-4-5 for anthropic
This commit is contained in:
parent
0423c2c2d5
commit
07325c27e8
2 changed files with 16 additions and 27 deletions
|
|
@ -11,8 +11,8 @@ import type { ModelRegistry } from "./model-registry.js";
|
||||||
|
|
||||||
/** Default model IDs for each known provider */
|
/** Default model IDs for each known provider */
|
||||||
export const defaultModelPerProvider: Record<KnownProvider, string> = {
|
export const defaultModelPerProvider: Record<KnownProvider, string> = {
|
||||||
"amazon-bedrock": "global.anthropic.claude-sonnet-4-5-20250929-v1:0",
|
"amazon-bedrock": "us.anthropic.claude-opus-4-20250514-v1:0",
|
||||||
anthropic: "claude-sonnet-4-5",
|
anthropic: "claude-opus-4-5",
|
||||||
openai: "gpt-5.1-codex",
|
openai: "gpt-5.1-codex",
|
||||||
"azure-openai-responses": "gpt-5.2",
|
"azure-openai-responses": "gpt-5.2",
|
||||||
"openai-codex": "gpt-5.2-codex",
|
"openai-codex": "gpt-5.2-codex",
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ import { AuthStorage } from "./auth-storage.js";
|
||||||
import type { ExtensionRunner, LoadExtensionsResult, ToolDefinition } from "./extensions/index.js";
|
import type { ExtensionRunner, LoadExtensionsResult, ToolDefinition } from "./extensions/index.js";
|
||||||
import { convertToLlm } from "./messages.js";
|
import { convertToLlm } from "./messages.js";
|
||||||
import { ModelRegistry } from "./model-registry.js";
|
import { ModelRegistry } from "./model-registry.js";
|
||||||
|
import { findInitialModel } from "./model-resolver.js";
|
||||||
import type { ResourceLoader } from "./resource-loader.js";
|
import type { ResourceLoader } from "./resource-loader.js";
|
||||||
import { DefaultResourceLoader } from "./resource-loader.js";
|
import { DefaultResourceLoader } from "./resource-loader.js";
|
||||||
import { SessionManager } from "./session-manager.js";
|
import { SessionManager } from "./session-manager.js";
|
||||||
|
|
@ -195,33 +196,21 @@ export async function createAgentSession(options: CreateAgentSessionOptions = {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// If still no model, try settings default
|
// If still no model, use findInitialModel (checks settings default, then provider defaults)
|
||||||
if (!model) {
|
if (!model) {
|
||||||
const defaultProvider = settingsManager.getDefaultProvider();
|
const result = await findInitialModel({
|
||||||
const defaultModelId = settingsManager.getDefaultModel();
|
scopedModels: [],
|
||||||
if (defaultProvider && defaultModelId) {
|
isContinuing: hasExistingSession,
|
||||||
const settingsModel = modelRegistry.find(defaultProvider, defaultModelId);
|
defaultProvider: settingsManager.getDefaultProvider(),
|
||||||
if (settingsModel && (await modelRegistry.getApiKey(settingsModel))) {
|
defaultModelId: settingsManager.getDefaultModel(),
|
||||||
model = settingsModel;
|
defaultThinkingLevel: settingsManager.getDefaultThinkingLevel(),
|
||||||
}
|
modelRegistry,
|
||||||
}
|
});
|
||||||
}
|
model = result.model;
|
||||||
|
|
||||||
// Fall back to first available model with a valid API key
|
|
||||||
if (!model) {
|
if (!model) {
|
||||||
for (const m of modelRegistry.getAll()) {
|
|
||||||
if (await modelRegistry.getApiKey(m)) {
|
|
||||||
model = m;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (model) {
|
|
||||||
if (modelFallbackMessage) {
|
|
||||||
modelFallbackMessage += `. Using ${model.provider}/${model.id}`;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
// No models available - set message so user knows to /login or configure keys
|
|
||||||
modelFallbackMessage = `No models available. Use /login or set an API key environment variable. See ${join(getDocsPath(), "authentication.md")}. Then use /model to select a model.`;
|
modelFallbackMessage = `No models available. Use /login or set an API key environment variable. See ${join(getDocsPath(), "authentication.md")}. Then use /model to select a model.`;
|
||||||
|
} else if (modelFallbackMessage) {
|
||||||
|
modelFallbackMessage += `. Using ${model.provider}/${model.id}`;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue