From 682e0f500021d57edd91549db0ef20265f85cba4 Mon Sep 17 00:00:00 2001 From: tt-a1i <53142663+tt-a1i@users.noreply.github.com> Date: Sat, 20 Jun 2026 12:40:46 +0800 Subject: [PATCH] fix(acp): match toggleable models case-insensitively --- .changeset/acp-model-toggle-case.md | 5 +++++ packages/acp-adapter/src/model-catalog.ts | 2 +- packages/acp-adapter/test/model-catalog.test.ts | 5 +++++ 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 .changeset/acp-model-toggle-case.md diff --git a/.changeset/acp-model-toggle-case.md b/.changeset/acp-model-toggle-case.md new file mode 100644 index 000000000..5565e8768 --- /dev/null +++ b/.changeset/acp-model-toggle-case.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Detect ACP toggleable thinking models case-insensitively. diff --git a/packages/acp-adapter/src/model-catalog.ts b/packages/acp-adapter/src/model-catalog.ts index e126362b4..67c883e3f 100644 --- a/packages/acp-adapter/src/model-catalog.ts +++ b/packages/acp-adapter/src/model-catalog.ts @@ -52,7 +52,7 @@ export function deriveThinkingSupported(alias: ModelAlias): boolean { if (declared.includes('thinking') || declared.includes('always_thinking')) return true; const lower = alias.model.toLowerCase(); if (lower.includes('thinking') || lower.includes('reason')) return true; - if (TOGGLEABLE_THINKING_MODELS.has(alias.model)) return true; + if (TOGGLEABLE_THINKING_MODELS.has(lower)) return true; return false; } diff --git a/packages/acp-adapter/test/model-catalog.test.ts b/packages/acp-adapter/test/model-catalog.test.ts index 59a340300..d60d0227b 100644 --- a/packages/acp-adapter/test/model-catalog.test.ts +++ b/packages/acp-adapter/test/model-catalog.test.ts @@ -21,6 +21,11 @@ describe('deriveThinkingSupported', () => { expect(deriveThinkingSupported(alias('some-thinking-model'))).toBe(true); expect(deriveThinkingSupported(alias('plain-model'))).toBe(false); }); + + it('matches toggleable model names case-insensitively', () => { + expect(deriveThinkingSupported(alias('Kimi-Code'))).toBe(true); + expect(deriveThinkingSupported(alias('Kimi-For-Coding'))).toBe(true); + }); }); describe('deriveAlwaysThinking', () => {