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

Руководство по анонимайзеру

Анонимайзер (KodikShield) — это опциональная функция, которая заменяет вручную помеченные чувствительные значения в результатах инструментов на заполнители перед передачей модели. Содержимое ваших файлов не изменяется.

Когда анонимайзер включён и вы пометили текст в редакторе как чувствительный, Kodik маскирует совпадения с этим текстом в результатах инструментов: чтении файлов, поиске, выводе команд и ответах MCP. Непомеченные секреты автоматически не обнаруживаются.

Вместо исходного значения модель получает заполнитель вида __KODIK_...__. Это позволяет агенту рассуждать о задаче, не видя защищённого контента.

image

Вы можете вручную пометить значения, чтобы снизить риск их раскрытия в результатах инструментов:

  • API-ключей, токенов, паролей и приватных URL;
  • учётных данных баз данных и строк подключения;
  • внутренних фрагментов кода, которые вы не хотите показывать модели;
  • регионов, явно отмеченных вами как чувствительные.

Анонимайзер — не универсальная граница конфиденциальности.

  • Он не шифрует файлы и не изменяет их содержимое.
  • Он не скрывает пути файлов и их имена.
  • Он маскирует только значения, которые вы вручную пометили; другие секреты остаются в результатах инструментов.
  • Включение анонимайзера не означает, что прямые сообщения, вложения и весь остальной контекст чата очищаются от секретов.
  • Локальные функции редактора, например поиск по файлам и автодополнение, работают с исходными данными.

Используйте анонимайзер как дополнительный уровень защиты, а не как замену стандартным средствам управления секретами.

  1. Откройте Настройки Kodik.
  2. Перейдите на вкладку Настройки анонимайзера.
  3. Включите Включить анонимайзер.

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

  1. Откройте файл в редакторе.
  2. Выделите текст, который хотите защитить.
  3. Выполните команду Mark Selection Sensitive.

image

image

Команду можно запустить из палитры команд или с помощью сочетания клавиш — см. настройки клавиатуры:

  • Linux/Windows: Ctrl+Alt+S
  • macOS: Cmd+Alt+S

Kodik сохраняет выделение как ручной регион чувствительности для текущего рабочего пространства. Помеченные регионы подсвечиваются в редакторе.

Ручные регионы привязаны к сохранённым файлам, поэтому команда не показывается для каналов панели «Вывод» и другого содержимого редактора, не являющегося файлом.

Выберите уже защищённый текст и выполните команду Unmark Sensitive Selection, или откройте Настройки Kodik → Настройки анонимайзера и удалите регион из списка.

Сочетание клавиш:

  • Linux/Windows: Ctrl+Alt+U
  • macOS: Cmd+Alt+U

Снятие маркера не изменяет содержимое файла — удаляется только сохранённое правило защиты.

  1. Вы отправляете Kodik запрос или он начинает выполнять инструмент.
  2. Kodik собирает контекст запроса и результаты инструментов.
  3. Помеченные значения в результатах инструментов маскируются локально. Kodik заменяет совпадения с вручную помеченным текстом на заполнители. Отдельный запрос к Kodik API для этого не требуется.
  4. Каждый маркер чувствительности имеет постоянный ID, сохранённый локально вместе с маркером рабочего пространства. Kodik строит заполнитель из этого ID и восстанавливает соответствие по существующим маркерам для каждого ответа. Поэтому следующие ответы и перезагрузка окна сохраняют ту же идентичность без дополнительной копии помеченного значения.
  5. Модель получает маскированный результат инструмента. Непомеченный контент остаётся без изменений.
  6. Аргументы инструментов деанонимизируются перед применением. Когда модель генерирует правку файла или другую операцию, ссылающуюся на заполнитель, Kodik подставляет обратно исходные значения перед записью на диск. Карточка подтверждения и ваши хуки PermissionRequest и PreToolUse тоже видят восстановленные значения, поэтому вы подтверждаете то, что действительно будет выполнено.

Заполнитель из предыдущего ответа можно использовать в локальной правке, пока существует его маркер чувствительности. В следующем ответе, если маркер удалён или старый чат использует заполнитель, идентичность которого невозможно восстановить, Kodik блокирует вызов инструмента с недоступным заполнителем и просит агента снова прочитать помеченный файл.

Тот же маппинг в памяти действует и для работы, переданной субагенту. Дочерняя модель и сохранённая стенограмма продолжают видеть заполнители в задании, сообщениях, вызовах и результатах инструментов, резюме сжатия и отчётах, а локальные инструменты субагента получают восстановленные значения, необходимые для работы с файлами. Сообщение, которое субагент отправляет основному агенту или любой агент отправляет другому чату, маскируется так же, поэтому получающая модель тоже видит заполнители.

Вкладка Анонимайзер в настройках показывает:

  • включён ли анонимайзер;
  • сколько файлов содержат ручные регионы и сколько регионов отслеживается;
  • список регионов по файлам с предпросмотром кода.

Оттуда можно открыть регион в редакторе или удалить маркер.

Маскирование выполняется локально перед передачей результата инструмента модели. Большой объём вывода или большое число помеченных значений могут увеличить время этой обработки.

  • Помечайте наименьший регион, который действительно нуждается в защите.
  • Регулярно проверяйте список Чувствительные файлы и удаляйте устаревшие маркеры.
  • Продолжайте использовать стандартные практики управления секретами — анонимайзер является дополнительным слоем, а не самостоятельным решением.