> ## Content Index
> Fetch the complete content index at: https://matveev.tech/llms.txt
> Use this file to discover other available public pages before exploring further.

# Настройка Claude Code — полный гайд по settings.json
- URL: https://matveev.tech/claude-code-settings-json/
- Published: 2026-02-11T14:07:27.000Z
- Updated: 2026-02-13T16:34:13.000Z
- Description: Всё о настройке Claude Code через settings.json: скоупы, permissions, модели, плагины, sandbox и переменные окружения в одном гайде.
- Author: Pavel Matveev
- Tags: Claude Code, Claude, Dev Tools, Гайд

> **TL;DR:** `settings.json` — главный файл конфигурации Claude Code. Через него настраивается всё: разрешения, модели, sandbox, hooks, плагины, переменные окружения. Файл может быть глобальным, проектным или локальным — настройки наследуются и перекрывают друг друга.

Claude Code из коробки работает нормально. Но «нормально» — это как IDE без настроенных шорткатов. Можно жить, но неудобно. Настройка settings.json занимает 10 минут и экономит часы в долгосрочной перспективе.

## Где лежат настройки

У Claude Code четыре уровня настроек, от самого приоритетного к наименее:

| Уровень | Файл                                                          | Для кого                                     |
| ------- | ------------------------------------------------------------- | -------------------------------------------- |
| Managed | /Library/Application Support/ClaudeCode/managed-settings.json | Все пользователи на машине (ставит IT-отдел) |
| Local   | .claude/settings.local.json                                   | Ты, только в этом проекте                    |
| Project | .claude/settings.json                                         | Вся команда (коммитится в git)               |
| User    | \~/.claude/settings.json                                      | Ты, во всех проектах                         |

Managed перебивает всё остальное — это для корпоративных политик. Local перебивает Project и User. Project перебивает User.

На практике чаще всего нужны два: User (личные предпочтения) и Project (командные настройки).

## Как открыть настройки

Три способа:

1. Команда `/config` в Claude Code — откроет интерактивный интерфейс с вкладками
2. Ручное редактирование файла `~/.claude/settings.json` для глобальных настроек
3. Ручное редактирование `.claude/settings.json` в проекте для проектных

У файла есть JSON-схема — если добавить `"$schema": "https://json.schemastore.org/claude-code-settings.json"` в начало, то VS Code и Cursor покажут автокомплит и валидацию.

## Стартовая конфигурация

Вот settings.json, с которого я рекомендую начать. Он покрывает 80% потребностей:

```json
{
  "$schema": "https://json.schemastore.org/claude-code-settings.json",
  "permissions": {
    "allow": [
      "Bash(npm run *)",
      "Bash(pytest *)",
      "Bash(ruff *)",
      "Bash(git status)",
      "Bash(git diff *)",
      "Bash(git log *)"
    ],
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)"
    ]
  },
  "language": "russian"
}

```

`language: "russian"` — Claude будет отвечать на русском по умолчанию.

## Что можно настроить

Пройдусь по основным секциям.

### Модель и скорость

```json
{
  "model": "claude-sonnet-4-5-20250929",
  "alwaysThinkingEnabled": true
}

```

По умолчанию Claude Code использует Opus 4.6\. Можно переключить на Sonnet — дешевле и быстрее, но менее умный. `alwaysThinkingEnabled` включает расширенное мышление — модель тратит больше токенов на размышления перед ответом.

Для быстрых задач (линтинг, простые правки) Sonnet хватает. Для сложного рефакторинга или архитектурных решений — Opus.

### Sandbox

```json
{
  "sandbox": {
    "enabled": true,
    "autoAllowBashIfSandboxed": true,
    "network": {
      "allowedDomains": ["github.com", "*.npmjs.org"]
    }
  }
}

```

Sandbox изолирует bash-команды. Включи `autoAllowBashIfSandboxed` — и Claude перестанет спрашивать разрешение на каждую команду, потому что они всё равно в изоляции. Подробнее — в [статье про разрешения](https://matveev.tech/claude-code-permissions-sandbox/).

### Hooks

```json
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "ruff format \"$CLAUDE_FILE_PATH\" 2>/dev/null || true"
          }
        ]
      }
    ]
  }
}

```

Автоматические действия до и после инструментов Claude. Подробнее — в [статье про hooks](https://matveev.tech/claude-code-hooks-avtomatizatsiya/).

### Attribution — подпись в коммитах

По умолчанию Claude Code добавляет в git-коммиты строку «Co-Authored-By: Claude». Можно настроить или отключить:

```json
{
  "attribution": {
    "commit": "",
    "pr": ""
  }
}

```

Пустые строки отключают подпись полностью.

### Интерфейс

```json
{
  "showTurnDuration": true,
  "spinnerTipsEnabled": false,
  "prefersReducedMotion": true
}

```

`showTurnDuration` показывает, сколько времени Claude думал. Полезно для оценки стоимости запроса. `spinnerTipsEnabled: false` убирает подсказки в спиннере.

### Автообновления

```json
{
  "autoUpdatesChannel": "stable"
}

```

Два канала: `latest` (свежайшая версия, может быть нестабильной) и `stable` (версия примерно на неделю старше, без критичных багов). Для продакшн-работы рекомендую `stable`.

## Переменные окружения через settings

Вместо того чтобы выставлять переменные в терминале, можно прописать их в settings:

```json
{
  "env": {
    "CLAUDE_CODE_ENABLE_TELEMETRY": "1",
    "BASH_DEFAULT_TIMEOUT_MS": "60000"
  }
}

```

Это удобно для командных настроек — добавил в проектный settings.json, и у всех одинаковые параметры.

## Часто задаваемые вопросы

**Как сбросить все настройки?** Удали файл `~/.claude/settings.json`. Claude Code пересоздаст его с дефолтами при следующем запуске. Claude Code хранит до пяти резервных копий настроек с таймстампами — можно откатиться.

**Можно ли настроить Claude Code через UI?** Да, команда `/config` открывает интерфейс с вкладками. Но не все настройки там доступны — для тонкой настройки всё равно придётся редактировать JSON.

**Project settings конфликтуют с моими user settings — что делать?** Project settings приоритетнее. Если нужно перебить что-то лично для себя — создай `.claude/settings.local.json`. Он приоритетнее project settings, но не коммитится в git.

## Что ещё почитать

- [CLAUDE.md — как писать инструкции для Claude Code](https://matveev.tech/claude-md-instruktsii-claude-code/) — настройка контекста проекта через markdown-файл
- [Разрешения в Claude Code — allow, deny и sandbox](https://matveev.tech/claude-code-permissions-sandbox/) — детальная настройка permissions
- [Claude Code Hooks — автоматизация рабочего процесса](https://matveev.tech/claude-code-hooks-avtomatizatsiya/) — автоматические действия при событиях
- [Переменные окружения Claude Code — справочник](https://matveev.tech/claude-code-environment-variables/) — все переменные с описанием
- [Fast Mode в Claude Code — ускоряем Opus 4.6](https://matveev.tech/claude-code-fast-mode/) — настройка скорости ответов
- [Лучшие AI-редакторы кода в 2026](https://matveev.tech/luchshie-ai-redaktory-koda-2026/) — Claude Code среди конкурентов