Supported languages

LocaleLanguageLocaleLanguage
enEnglishjaJapanese
esSpanishkoKorean
frFrenchzhChinese (Simplified)
deGermanzh-TWChinese (Traditional)
itItalianarArabic
ptPortuguesehiHindi
ruRussiannlDutch
plPolishtrTurkish

Setting the language

There are three ways to change the display language:

CLI flag

# Set language for this session
autohand --display-language ja

# Short form
autohand --display-language es

Slash command

# Interactive language selector
/language

# Set directly
/language fr

Configuration

{
  "ui": {
    "locale": "ja"
  }
}

What gets translated

When you set a locale, the following elements change:

  • UI chrome — Prompts, status messages, confirmation dialogs, and help text
  • Agent responses — The LLM is instructed to respond in your chosen language
  • Error messages — Validation errors and warnings
  • Slash command descriptions — Help text for commands

Code, file paths, and technical identifiers remain in their original form.

LLM locale integration

Setting a display language does more than translate the UI. Autohand passes the locale to the LLM so it responds in the appropriate language:

  • Agent explanations and reasoning are in your language
  • Commit messages and documentation can be generated in your language
  • Error explanations are localized

Code comments and variable names remain in the language of the codebase (typically English).

Tip: If you want the agent to respond in English but use a localized UI, you can set the UI locale separately from the agent language in your system prompt.

Precedence

Language settings are resolved in this order (highest to lowest):

  1. --display-language CLI flag
  2. /language slash command (session override)
  3. ui.locale in project settings
  4. ui.locale in user settings
  5. System locale (auto-detected)
  6. English (fallback)