diff --git a/src/commands/lang/lang.ts b/src/commands/lang/lang.ts index 8520d26f2..e386ec726 100644 --- a/src/commands/lang/lang.ts +++ b/src/commands/lang/lang.ts @@ -1,4 +1,5 @@ import type { ToolUseContext } from '../../Tool.js' +import { clearCommandsCache } from '../../commands.js' import type { LocalJSXCommandContext, LocalJSXCommandOnDone, @@ -9,6 +10,7 @@ import { getLanguageDisplayName, getResolvedLanguage, } from '../../utils/language.js' +import { Extension as ReviewExtension } from '../../costrict/review/index.js' const VALID_LANGS: readonly PreferredLanguage[] = ['en', 'zh', 'auto'] @@ -40,6 +42,10 @@ export async function call( const lang = arg as PreferredLanguage saveGlobalConfig(current => ({ ...current, preferredLanguage: lang })) + // Re-extract review skills for the new locale and refresh skill caches + await ReviewExtension.initializeBuiltinSkills().catch(() => {}) + clearCommandsCache() + const resolved = getResolvedLanguage() const suffix = lang === 'auto' ? ` → ${getLanguageDisplayName(resolved)}` : '' onDone(`Language set to ${getLanguageDisplayName(lang)}${suffix}`, {