GitHub расширил enterprise telemetry для Copilot: теперь администратор может связать agent activity с конкретным пользователем, не включая сбор prompts, responses или содержимого tool calls.
Это важное разделение. Раньше аудит agent usage часто ставил компанию перед неудобным выбором: либо собирать мало данных и плохо понимать, кто что запускал, либо включать слишком подробный capture и рисковать отправлять в observability систему исходный код, команды и чувствительный контекст.
Что добавляет telemetry.capture.identity
Новая настройка telemetry.capture.identity добавляет в OpenTelemetry три атрибута:
user.name— authenticated Copilot account, сейчас GitHub login;process.user.name— локальная учётная запись операционной системы;host.name— имя локальной машины.
Identity capture выключен по умолчанию и не заменяет существующий pseudonymous user identifier.
Главное: identity не включает prompt capture
GitHub специально отделил user attribution от содержимого сессии.
Можно включить identity, но оставить выключенными:
- prompts;
- responses;
- tool arguments;
- tool output;
- policy details.
Для enterprise это позволяет ответить на вопрос «кто использовал Copilot agent и когда», не превращая telemetry backend в копию рабочих чатов и исходников.
Как теперь разделяется telemetry
- IdentityКто использовал agent и с какой машины
- PromptsТекст запросов и поддерживаемый input context
- ResponsesОтветы assistant и поддерживаемое reasoning content
- Tool argumentsКоманды, raw arguments, schemas и identifiers
- Tool outputРезультаты инструментов и execution errors
- Policy detailСырые policy details, включая sandbox paths
Каждый класс включается отдельно. По умолчанию все они выключены.
Какие capture classes появились
GitHub перечисляет пять независимых content classes.
Prompts
Могут включать user, system и developer prompts, а также поддерживаемый input context.
Responses
Assistant responses и часть reasoning content, если клиент поддерживает такой capture.
Tool arguments
Raw tool arguments, команды, schemas и identifiers для tools, MCP servers, plugins и hooks.
Tool output
Результаты выполнения tools и details ошибок.
Policy detail
Raw policy information, например filesystem paths sandbox.
Почему tool telemetry особенно чувствительна
Agent tool calls могут содержать гораздо более чувствительные данные, чем обычная метрика «сколько запросов сделал пользователь».
В arguments или output могут оказаться:
- фрагменты source code;
- shell commands;
- пути к workspace;
- имена внутренних сервисов;
- части конфигурации;
- результаты запросов к MCP;
- текст ошибок с environment details.
Поэтому GitHub рекомендует включать только те классы, которые действительно нужны для audit use case, и отправлять их в одобренный collection endpoint.
Managed settings имеют приоритет
Enterprise admin может зафиксировать capture policy централизованно.
Explicit managed values имеют приоритет над:
- локальными настройками пользователя;
- SDK configuration;
- environment variables.
Это важно, потому что telemetry policy для regulated environment не должна зависеть от того, что разработчик случайно изменил локально.
Где работает fine-grained telemetry
GitHub указывает поддержку в:
- GitHub Copilot CLI;
- GitHub Copilot app;
- VS Code sessions, использующих Agent Host.
Для JetBrains GitHub параллельно развивает другие enterprise controls — мы разбирали их в статье про Copilot в JetBrains и MCP.
Что осталось от captureContent
Старый параметр captureContent остаётся как legacy shorthand для пяти content classes.
Но он не включает identity.
Это хорошее решение с точки зрения privacy: старую настройку нельзя случайно интерпретировать как согласие на сбор имени пользователя и hostname.
Для чего enterprise нужен user attribution
Не только для контроля сотрудников.
Практические задачи:
- разбор security incident;
- поиск источника необычной agent activity;
- сопоставление расхода AI с командами;
- аудит использования MCP/tools;
- поиск проблемной конфигурации на конкретной машине;
- анализ adoption без чтения содержания conversations.
Identity capture тоже требует осторожности
Даже без prompts данные user.name, OS account и host.name являются персонализированной operational telemetry.
Компания должна заранее определить:
- кто имеет доступ к telemetry;
- сколько она хранится;
- куда отправляется;
- для каких целей используется;
- нужно ли маскирование или ограничение доступа.
Не включать всё «на всякий случай»
Если задача — только понять adoption, нет смысла собирать source code или raw tool outputs.
Если задача — forensic investigation, наоборот, на ограниченный период может понадобиться более подробный capture.
Fine-grained controls позволяют строить policy под задачу вместо одного глобального переключателя.
Что проверить enterprise-администратору
- Нужен ли identity capture вообще.
- Какие content classes действительно нужны.
- Куда отправляется OpenTelemetry.
- Есть ли доступ к collector у лишних сотрудников.
- Какой retention установлен.
- Может ли telemetry содержать source code и secrets.
- Не конфликтуют ли managed settings с локальной конфигурацией.
Практический вывод
GitHub делает Copilot telemetry более полезной для enterprise и одновременно более управляемой с точки зрения privacy.
Теперь user attribution можно включить отдельно от содержимого agent session. Это позволяет строить аудит по принципу минимально необходимого сбора данных.
Для самих agent operations полезно также проверить локальный sandbox Copilot и правила доступа к MCP/tools.
Официальный источник
GitHub Changelog — Client telemetry user attribution and configurable capture
Обсуждение
Вопросы и комментарии
Можно уточнить детали статьи или поделиться своим опытом. Первый комментарий проходит проверку.