From 78dc3a9582316eeabce7bb24c61ac14e34174205 Mon Sep 17 00:00:00 2001 From: fey Date: Sun, 22 Feb 2026 16:11:27 +0000 Subject: [PATCH] fix(chat): don't override chibi's model with invalid openrouter name MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit the TUI hardcoded model to "claude-sonnet-4-5" which is not a valid openrouter model ID (needs "anthropic/" prefix). this caused chibi-json to fail with a 400 error before making any LLM call — the root cause of the "no visible response" bug in autonav chat with chibi harness. fix: only pass DEFAULT_MODEL for non-chibi harnesses. chibi uses its own config.toml default. navigator config.harness.model is threaded through as an explicit override when set. --- packages/autonav/src/cli/nav-chat.ts | 2 ++ packages/autonav/src/conversation/index.ts | 2 ++ 2 files changed, 4 insertions(+) diff --git a/packages/autonav/src/cli/nav-chat.ts b/packages/autonav/src/cli/nav-chat.ts index ab32995..399c37b 100644 --- a/packages/autonav/src/cli/nav-chat.ts +++ b/packages/autonav/src/cli/nav-chat.ts @@ -133,6 +133,7 @@ export async function run(args: string[]): Promise { instructionsPath?: string; relatedNavigators?: Array<{ name: string; description?: string }>; sandbox?: { chat?: { enabled: boolean } }; + harness?: { type?: string; model?: string }; }; let configContent: string; try { @@ -219,6 +220,7 @@ export async function run(args: string[]): Promise { mcpServers: Object.keys(mcpServers).length > 0 ? mcpServers : undefined, sandboxEnabled: chatSandboxEnabled, configJson: configContent, + model: config.harness?.model, }); console.log("\nšŸ‘‹ Conversation ended.\n"); diff --git a/packages/autonav/src/conversation/index.ts b/packages/autonav/src/conversation/index.ts index de93580..ba6bbf4 100644 --- a/packages/autonav/src/conversation/index.ts +++ b/packages/autonav/src/conversation/index.ts @@ -37,6 +37,8 @@ export interface ConversationOptions { sandboxEnabled?: boolean; /** Raw config.json content for config-aware prompts */ configJson?: string; + /** Model override for the harness. When undefined, the harness uses its own default. */ + model?: string; } /**