Summary
Every conversation gets a hard-coded language instruction injected into the system prompt:
Language
Respond in English. This applies to any visible reasoning or thinking text as much as to the answer itself: do not drift into another language mid-conversation, even when earlier context, file contents, or prior turns contain other languages. Only when the user explicitly asks for another language - a translation, or a request to answer in a specific language - follow their request.
There is no setting anywhere - CLI, desktop app, config file, or env var - to change this language or to disable the injection.
Why this is a problem
- Non-English users have to re-convince the agent to answer in their language in every conversation. Because a system-prompt instruction outranks user messages, the agent frequently still answers in English, or drifts back to it mid-session despite being asked otherwise.
- Even when persuasion works, it costs extra tokens and friction on every single session ("please respond in Russian", "I asked you to answer in Russian", ...).
- Thinking text is forced into English too, so even the model's visible reasoning leaks English into an otherwise non-English workflow.
- Language is purely a user preference. Modern models mirror the user's language just fine when left alone; baking a fixed value into the system prompt with no override makes the product genuinely painful for anyone whose primary language isn't English.
Suggested fix
- Make the injected language user-configurable: a
language option in the config file, a /language command in the CLI and desktop app, or an env var.
- Support an
auto (default) mode that removes the injection entirely and lets the agent mirror the user's language naturally.
- Ensure an explicit in-chat request ("answer in X") always wins over the injected default - right now the injected instruction is what the model treats as authoritative.
This would remove a daily annoyance for every non-English-speaking user with essentially zero downside for English speakers (English remains the default).
Summary
Every conversation gets a hard-coded language instruction injected into the system prompt:
There is no setting anywhere - CLI, desktop app, config file, or env var - to change this language or to disable the injection.
Why this is a problem
Suggested fix
languageoption in the config file, a/languagecommand in the CLI and desktop app, or an env var.auto(default) mode that removes the injection entirely and lets the agent mirror the user's language naturally.This would remove a daily annoyance for every non-English-speaking user with essentially zero downside for English speakers (English remains the default).