# Настройки языка: как заставить Claude Code и Codex работать на вашем языке

**Переключателя языка на стороне шлюза нет**: ключ `cr_` определяет лишь то, до каких моделей вы достаёте, а не
на каком языке приходят ответы. Язык задаёт **то, что вы велели инструменту**, и у обоих популярных агентов есть
документированное место, куда такую инструкцию записывают.

> Эта страница — именно про *язык*. Как устроены файлы инструкций вообще, читайте в
> [Руководство по CLAUDE.md](/docs/usage/claude-md) и [Руководство по AGENTS.md](/docs/usage/agents-md).

## 1. Попросить прямо в сессии

Самый быстрый способ — сказать вслух: пишите промпт на своём языке или добавьте явную просьбу
*«отвечай по-португальски»*. Работает сразу и без настройки, но живёт только в этом разговоре. Всё, что должно
пережить перезапуск, отправляется в файлы ниже.

## 2. Закрепляем через CLAUDE.md (Claude Code)

Официальная формулировка: *“CLAUDE.md files are markdown files that give Claude persistent instructions for a
project, your personal workflow, or your entire organization.”* Требование к языку — ровно такая постоянная
инструкция.

| Область | Файл |
|---|---|
| Организационная | macOS: `/Library/Application Support/ClaudeCode/CLAUDE.md` · Linux and WSL: `/etc/claude-code/CLAUDE.md` · Windows: `C:\Program Files\ClaudeCode/CLAUDE.md` |
| Пользовательская | `~/.claude/CLAUDE.md` |
| Проектная | `./CLAUDE.md` или `./.claude/CLAUDE.md` |
| Локальная | `./CLAUDE.local.md` |

Держите правило одним коротким блоком:

```markdown
## Response language
- Reply in the language of my message unless I say otherwise.
- If I name a language explicitly (for example: "reply in 日本語"), use it for the whole session.
- Keep code, identifiers, file paths, shell commands and log output exactly as they are.
- Do not translate English comments, commit messages or API names inside files.
```

Три полезных утверждения из документации:

- *“Run /init to generate a starting CLAUDE.md automatically.”* — он запишет то, что смог сам увидеть; правило
  о языке добавляете вы.
- *“The /memory command lists your CLAUDE.md, CLAUDE.local.md, and other memory file locations across user and
  project scopes”* — им удобно проверять, что отредактированный файл действительно подхватывается.
- *“CLAUDE.md files can import additional files using @path/to/import syntax.”* — удобно, когда правила о языке
  лежат в одном файле, общем для нескольких репозиториев.

Claude Code умеет читать и `AGENTS.md`: *“Claude Code can read AGENTS.md as project instructions, allowing
compatibility with other coding agents without adding CLAUDE.md.”* — при этом *“CLAUDE.md takes precedence over
AGENTS.md by default.”*. Значит, если репозиторий обслуживают оба инструмента, правило достаточно написать один
раз в `AGENTS.md`, а `CLAUDE.md` заводить только когда Claude Code нужно что-то сверх.

## 3. Закрепляем через AGENTS.md (Codex)

*“Codex reads AGENTS.md files before doing any work.”* Codex строит цепочку инструкций на старте, и порядок
поиска важен для правила о языке:

1. **Глобальная область** — в домашней папке Codex (по умолчанию `~/.codex`, если вы не задали `CODEX_HOME`)
   *“Codex reads `AGENTS.override.md` if it exists. Otherwise, Codex reads `AGENTS.md`.”* На этом уровне
   используется только первый непустой файл.
2. **Проектная область** — *“Starting at the project root (typically the Git root), Codex walks down to your
   current working directory.”* Из каждой папки попадает не больше одного файла: сначала
   `AGENTS.override.md`, затем `AGENTS.md`, затем имена из `project_doc_fallback_filenames`.
3. **Порядок склейки** — *“Codex concatenates files from the root down […] Files closer to your current
   directory override earlier guidance because they appear later in the combined prompt.”*

```markdown
## Response language
- Reply in the language of my message unless I say otherwise.
- Keep code, identifiers, file paths, shell commands and log output exactly as they are.
- Refer to files by their real names, including non-ASCII characters.
```

Ограничение с конкретным числом: *“Codex skips empty files and stops adding files once the combined size
reaches the limit defined by `project_doc_max_bytes` (32 KiB by default).”* Правило о языке — две строки: ставьте
его в начало файла, а не в конец длинной цепочки, иначе оно рискует не попасть в лимит.

Наша собственная рекомендация для команды (см. [Руководство по AGENTS.md](/docs/usage/agents-md)): сам файл можно
писать на вашем языке или по-английски; в личном проекте — как удобнее, в общем репозитории лучше английский, чтобы
совпадал с кодом. Обычная комбинация: **правило по-английски, ответ на другом языке**.

## 4. Какой файл править

| Цель | Пишите сюда |
|---|---|
| Все проекты на своей машине | `~/.claude/CLAUDE.md` **и** `~/.codex/AGENTS.md` |
| Один проект, общий с командой | `./AGENTS.md`, закоммиченный в репозиторий (читают оба инструмента) |
| Один проект, только для себя | `./CLAUDE.local.md` для Claude Code; более глубокий `AGENTS.md` в своей подпапке для Codex |

## 5. Промпты не на английском: чего ждать

- **Промпты тоже стоят токенов.** Язык промпта не меняет тариф; для китайского
  *“1 character typically corresponds to 1-2 tokens”* (см.
  [Информация о тарификации](/docs/reference/billing)), поэтому правило, записанное один раз в файл памяти,
  дешевле, чем повтор в каждом сообщении.
- **Просите про язык ответа, а не про язык кода.** Перевод идентификаторов, флагов команд, строк ошибок и путей
  делает ответ непригодным — поэтому в примерах выше код остаётся как есть.
- **Если ответы снова уходят на английский**, правило, скорее всего, читается поздно или перекрывается —
  проверьте загруженные файлы через `/memory` / `/context` и посмотрите, не побеждает ли более глубокий
  `AGENTS.md` или `AGENTS.override.md` (см. порядок склейки в разделе 3).

## 6. Кодировка файлов, диакритика и не-ASCII пути

Вопрос языка — это ещё и вопрос байтов. Три правила, верные везде:

**Держите файлы в UTF-8.** *“UTF-8 is the universal code page for internationalization and is able to encode the
entire Unicode character set. It is used extensively on the web and is the default encoding for both XML and
\*nix-based platforms.”* Сохраняйте `CLAUDE.md` / `AGENTS.md` в UTF-8 из редактора: файл с кракозябрами будет
прочитан как кракозябры.

**В Windows перед терминалом стоит кодовая страница консоли.** *“Changes the active console code page. If used
without parameters, chcp displays the number of the active console code page.”* — в списке есть, например, `936`
для китайского. Если не-ASCII вывод в консоли выглядит странно, начните с этой проверки; официальная рекомендация
Microsoft для запуска UTF-8-процессов — свойство `activeCodePage`
(*“As of Windows Version 1903 (May 2019 Update), you can specify the activeCodePage property…”*) либо
системная опция *“Beta: Use Unicode UTF-8 for worldwide language support”*.

```powershell
chcp
chcp 936
```

**Имена с диакритикой и иероглифами могут быть «одинаковыми на вид, разными в байтах».** Стандарт Unicode
определяет *canonical equivalence* как *“characters or sequences of characters which represent the same abstract
character […] when correctly displayed should always have the same visual appearance and behavior.”*. Два имени
файла, идентичных на экране, могут различаться побайтово, поэтому:

- заставьте агента **копировать** путь из вывода списка файлов, а не перепечатывать (правило
  *“Refer to files by their real names, including non-ASCII characters”* — об этом);
- пути с пробелами и иероглифами в любой shell-команде берите в кавычки;
- отключите экранирование Git, чтобы `git status` и `git diff` печатали имена как есть:
  *“When this configuration option is set to false, git will not quote pathnames in the output of commands like
  `git status` and `git diff` […] The default value is `true`.”*.

```bash
git config --global core.quotepath false
```

## 7. Чек-лист

- [ ] Правило лежит в файле, который инструмент действительно загружает (`/memory`, `/context` или начало цепочки Codex).
- [ ] Указан язык ответа **и** запрет переводить код, пути и команды.
- [ ] Файл сохранён в UTF-8.
- [ ] Не-ASCII пути копируются из вывода инструментов, а не печатаются вручную.
- [ ] Если репозиторий используют оба инструмента, правило живёт в `AGENTS.md` (либо дублировано осознанно).

## Связанные страницы

- [Руководство по CLAUDE.md](/docs/usage/claude-md)
- [Руководство по AGENTS.md](/docs/usage/agents-md)
- [Полное руководство по Claude Code](/docs/getting-started/claude-code-tutorial)
- [Полное руководство по Codex](/docs/ide/codex)
- [Форматы вывода: json / text / stream-json](/docs/usage/output-formats)
- [Советы по CLI](/docs/usage/cli-tips)
- [QCode для пользователей вне материкового Китая](/docs/getting-started/international-users)