Перейти к содержимому

Генератор конфигурации

Claude Code Settings

Permissions и command-hooks для Claude Code.

Генератор

Заполните поля и проверьте файл

Предпросмотр обновляется локально после каждого изменения.

1. Основа и размещение

Размещение: .claude/settings.json. Общие настройки можно хранить в репозитории.

2. Permissions

acceptEdits автоматически одобряет правки и часть файловых операций, но не любые команды. Пресеты не гарантируют изоляцию.

Приоритет: deny → ask → allow. Более узкое allow-правило не отменяет deny. Каждая строка — permission rule, а не matcher hook. Примеры: Bash(pnpm test), Read(./.env), WebFetch(domain:example.com). MCP: mcp__github__get_*. Наличие инструментов, файлов и доменов не проверяется.

Разрешать
Запрашивать подтверждение
Запрещать

3. Hooks

Синхронные command-hooks выполняются Claude Code. Генератор их не запускает. Совпавшие hooks могут выполняться параллельно; порядок карточек не задаёт последовательное выполнение.

4. Применение

Скачайте файл и вручную объедините его с существующими настройками по выбранному пути. Проверьте загрузку через /status и ошибки через claude doctor; permissions и hooks можно проверить в Claude Code через /permissions и /hooks. Другие уровни конфигурации и политики организации могут менять итоговое поведение. Успешная генерация не подтверждает наличие команд или безопасность конфигурации.

О формате и использовании

Claude Code Settings — JSON настроек клиента. Конструктор v1 создаёт только permissions.defaultMode (default, acceptEdits, plan или отсутствие ключа), списки allow/ask/deny и синхронные command-hooks для PreToolUse, PostToolUse, PostToolUseFailure, SessionStart, UserPromptSubmit и Stop. acceptEdits одобряет правки и часть файловых операций, но не любые команды. CLAUDE.md хранит текстовые инструкции; подключения MCP остаются в отдельном инструменте.

Куда сохранить файл

Project — .claude/settings.json, Local — .claude/settings.local.json, User — ~/.claude/settings.json для стандартного каталога конфигурации. Имена скачивания: settings.json, settings.local.json и settings.json соответственно. Вручную созданный Local-файл проверьте на исключение из Git.

Как использовать

  1. Выберите один из трёх пресетов и область размещения. Пресет заменяет только permissions; область и hooks сохраняются.
  2. Добавьте правила permissions в исходном синтаксисе Claude Code. Приоритет deny → ask → allow; matcher hooks имеет другой синтаксис.
  3. Добавьте command-hooks при необходимости. Генератор их не запускает; подготовьте команды, зависимости и обработку stdin самостоятельно.
  4. Сверьте live preview, скачайте файл и вручную объедините JSON с существующими настройками. Проверьте результат в Claude Code; другие уровни и политики организации могут менять поведение.

Частые вопросы

Куда сохранить файл?

Project: .claude/settings.json (settings.json); Local: .claude/settings.local.json (settings.local.json); User: ~/.claude/settings.json (settings.json) для стандартного каталога конфигурации. Проверьте исключение вручную созданного Local-файла из Git.

Чем settings отличается от CLAUDE.md?

Settings — JSON с настройками клиента, permissions и hooks. CLAUDE.md — Markdown с инструкциями и контекстом проекта. Подключения MCP создаются отдельным генератором MCP Config.

Как разрешаются совпадающие permission rules?

Приоритет deny → ask → allow. Более узкое allow-правило не отменяет deny. Строка содержит имя инструмента или поддерживаемый Tool(specifier), например Bash(pnpm test), Read(./.env), WebFetch(domain:example.com). Для ограничения записи по пути используйте Edit(path): Write(path) не применяется Claude Code. Отдельное Write без пути допустимо. Порядок и дубликаты сохраняются.

Что означает matcher hook?

Это отдельный синтаксис: имя инструмента или причина SessionStart, список exact-значений через | или запятую, либо JavaScript regex при наличии других символов. Пустой matcher и * означают все совпадения. UserPromptSubmit и Stop не используют matcher.

Запускает ли генератор команды hooks?

Нет. Команды выполняет Claude Code, matching hooks могут выполняться параллельно. Команды, зависимости и обработку JSON из stdin пользователь готовит самостоятельно. В скрипте Stop учитывайте stop_hook_active. Успешная генерация не проверяет существование команд или безопасность конфигурации.

Как применить файл к существующим настройкам?

Вручную объедините скачанный JSON с существующим файлом. Проверьте источники через /status, ошибки через claude doctor, правила через /permissions и hooks через /hooks. Другие уровни конфигурации и политики организации могут менять итоговое поведение.

Следующий шаг