# Portability: UNIVERSAL
# Last validated: 2026-05-17
# Next review: 2027-05-17

ОБРАБОТЧИК РАЗРЕШЕНИЙ — Профили разрешений кода Claude
-----------------------------------------------------

ИМЯ ОБРАБОТЧИКА
------------
разрешения

ОПИСАНИЕ
------------
Обработчик разрешений управляет профилями разрешений для кода Claude в
База данных BACH (таблица system_config, категория: claude_permissions).

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

 Профили сохраняются в базе данных и, при активации, в файле.
~/.claude/settings.json написано. При деактивации предыдущий
Состояние автоматически восстанавливается (механизм резервного копирования).

BACKGROUND
-----------
Claude Code Remote Control (мобильное приложение) игнорирует --dangerously-skip-permissions
из-за известной ошибки (GitHub Issue #29214). Разрешающие правила в
Однако файл settings.json также учитывается программой Remote Control. Поэтому будет
Разрешения управляются через профили в базе данных BACH-DB и, при необходимости, в
Написано в settings.json.

ОПЕРАЦИИ
-----------

СПИСОК
----
bach permissions list

Показать все сохраненные профили с количеством разрешающих/запрещающих правил.
Помечает текущий активный профиль как [АКТИВНЫЙ].

ПОКАЗАТЬ
----
bach permissions show <profil>

Подробное представление профиля: описание, все разрешающие и запрещающие правила.

УСТАНОВИТЬ
---
bach permissions set <profil> allow=<Tool> [allow=<Tool2>] [deny=<Tool3>]

Добавить правила в профиль.
-allow=Инструмент: разрешить инструмент без подтверждения.
- Deny=Инструмент: Инструмент запрета
- Возможны подстановочные знаки: mcp__bach-*__* (все инструменты BACH MCP)
- Изменения в активном профиле немедленно отражаются в файле settings.json

REMOVE
------
bach permissions remove <profil> allow=<Tool> [deny=<Tool2>]

Удалить правила из профиля.
Изменения активного профиля немедленно отражаются в файле settings.json.

АКТИВИРОВАТЬ
--------
bach permissions activate <profil>

Активировать профиль:
1. Сделайте резервную копию текущих разрешений из settings.json в БД.
2. Пропишите правила профиля в settings.json.
3. Запомнить активный профиль в БД.

Другие настройки (хуки, модель, язык и т.д.) остаются нетронутыми.

ДЕАКТИВИРОВАТЬ
----------
bach permissions deactivate

Вернуться к обычному профилю:
1. Восстановить резервную копию из БД.
2. Обновите settings.json.
3. Установите для активного профиля значение «нормальный»

СИНХРОНИЗАЦИЯ
----
bach permissions sync

Текущие правила разрешения/запрета из файла settings.json в активный профиль БД.
импорт. Полезно, если правила были изменены вручную в файле settings.json.

RESET
-----
bach permissions reset <profil>

Сбросить профиль к предопределенным значениям по умолчанию.
Доступные значения по умолчанию: обычный, удаленное_управление.
Изменения активного профиля немедленно отражаются в файле settings.json.

STATUS
------
bach permissions status

Показывает:
- Активный профиль и путь к файлу settings.json.
- Количество разрешающих/запрещающих правил находится в файле settings.json.
- Количество разрешающих/запрещающих правил в БД.
- Синхронны ли БД и settings.json
- Доступна ли резервная копия

INIT
----
bach permissions init

Создает профили по умолчанию (обычный, удаленное_управление) в БД.
Идемпотент: пропускает существующие профили.
Выполняется автоматически при первом запуске пульта дистанционного управления.

ПРИМЕРЫ
---------

Создание профилей по умолчанию:
$ bach Permissions init

Просмотреть все профили:
Список разрешений $ bach

Подробности профиля удаленного управления:
Разрешения $ bach show Remote_control

Добавить новый инструмент в профиль удаленного управления:
$ bach разрешения set Remote_controlallow=mcp__slack__*

Удалить инструмент из профиля:
$ bach Permissions Remove Remote_Control Allow=mcp__slack__*

Активировать профиль удаленного управления (перед мобильным сеансом):
Разрешения $ bach активируют пульт дистанционного управления

Вернуться к обычному профилю:
$ bach разрешения деактивировать

Проверить текущий статус:
$ bach статус разрешений

Применить вручную измененный файл settings.json в БД:
$ bach Permissions sync

Сбросить профиль к настройкам по умолчанию:
$ bach разрешения сбрасывают Remote_control

РАБОЧЕЕ ПРОЦЕСС ДИСТАНЦИОННОГО УПРАВЛЕНИЯ
-----------------------

Автоматически (рекомендуется):
  1. Рабочий стол: дважды щелкните Claude_RemoteControl.bat.
  2. Меню BACH: нажмите клавишу [P] в меню загрузки.
  -> Скрипт активирует профиль, запускает Клода, восстанавливает профиль

Вручную:
  1. разрешения Баха активируют Remote_control
  2. Клод --опасно-пропустить-разрешения
  3. Введите /rc, отсканируйте QR-код.
  4. После завершения: деактивировать разрешения Баха

АРХИТЕКТУРА ПРОФИЛЯ
------------------

+---------------------------------+
  |     БД БАХА (system_config) |
  |  категория: claude_permissions |
  |                                 |
  |  нормально: {разрешить, запретить} |
  |  Remote_control: {разрешить, запретить} |
  |  active_profile: «нормальный» |
  |  резервная копия: {разрешить, запретить} |
  +---------------------------------+
            |  активировать/деактивировать
            в
  +---------------------------------+
  |   ~/.claude/settings.json |
  |   разрешения.allow/запретить |
  |   (крючки, модель и т.п. остаются) |
  +---------------------------------+
            |
            в
  +---------------------------------+
  |   Клод Код (локальный + удаленный) |
  +---------------------------------+

ФАЙЛЫ
-------
hub/claude_permissions.py Реализация обработчика
start/_internal/claude_remote_control.py Автоматический запуск
start/_internal/claude_remote_control.bat Обертка для стартера
меню загрузки start/bach.bat (пункт меню [P])
~/.claude/settings.json Настройки кода Клода (целевой файл)
bach.db (system_config) Хранение профилей в БД

СМОТРИТЕ ТАКЖЕ
----------
settings.txt Обработчик настроек (таблица system_config)
claude-code.txt Краткий справочник по коду Claude
claude-code-automatization.txt Автоматизация кода Claude
