При развертывании, управляемом сервером, вы можете настроить файл предприятия managed-settings.json для применения различных параметров управления к группам пользователей на основе членства в команде предприятия. Предприятие определяет все параметры в центральном месте, а членство в команде определяет, какие пользователи получают заданный набор значений.
Если файл еще не создан managed-settings.json , см. раздел AUTOTITLE.
Чтобы сделать ключ допустимым для переопределения команды, вы пометите его как overridable в managed-settings.json. Переопределенный ключ использует значение команды при установке или возвращается к корпоративному умолчанию, когда команда оставляет ее неустановленной.
Поддерживаемые ключи
Синтаксис { "overridable": <VALUE> } применяется к ключам model, permissions.deny``deniedMcpServers``permissions.disableBypassPermissionsMode``permissions.ask``permissions.allow``allowedMcpServersа также к ключам.
enabledPlugins и extraKnownMarketplaces работать аддитивно. Предприятие managed-settings.json задает базовый план, а корпоративный файл команды может добавлять дополнительные подключаемые модули и marketplace на его основе.
Полное описание этих ключей и их синтаксис см. в разделе Управляемые корпоративными настройками.
Переопределение параметров для определенных команд
Эти инструкции применяются к развертываниям, управляемым серверомmanaged-settings.json (размещенным в GitHub). Другие методы развертывания не поддерживают переопределения группы предприятия и требуют развертывания различных параметров в разных группах пользователей с помощью платформы MDM.
Вы будете copilot/team-mappings.json использовать copilot/teams/ и каталог, чтобы настроить, какие корпоративные команды должны использовать параметры, которые отличаются от значений по умолчаниюcopilot/managed-settings.json.
После завершения этого раздела .github-private репозиторий будет иметь следующую структуру:
.github-private/copilot/
managed-settings.json
**: { "model": { "overridable": "auto" } }
* **
team-mappings.json
**: { "no-auto.json": ["special-team"] }
* teams/
* **
no-auto.json
**: { "model": "unmanaged" }
Шаги
-
В файле предприятия
copilot/managed-settings.jsonпометьте каждый ключ, который вы хотите сделать доступным для переопределения с помощью синтаксиса{ "overridable": <VALUE> }.jsonФайлы, сопоставленные с командами, могут отправлять только разные значения для ключей, которые можно переопределить.Указанное
overridableзначение является значениемmanaged-settings.jsonпо умолчанию, если файлы команды не объявляют другое значение для заданного ключа.Например, чтобы отложить
modelиdisableBypassPermissionsMode``allowedMcpServersв команды:{ "model": { "overridable": "auto" }, "permissions": { "disableBypassPermissionsMode": { "overridable": "disable" } }, "allowedMcpServers": { "overridable": [ { "serverUrl": "https://mcp.company.com/*" } ] } } -
Создайте в
.github-privateрепозиторииcopilot/team-mappings.jsonпредприятия. Сопоставить каждый файл параметров команды с одним или несколькими корпоративными слизями команды. Ключ — это имя файла параметров, а значение — массив командных слизней, поэтому можно применить один файл между несколькими командами.{ "devs.json": ["developers-all", "finops-dev"], "ai-users.json": ["ai-baseline-trained"], "frontier.json": ["ai-pioneers"] } -
Создайте файл параметров команды в разделе
copilot/teams/. Вы можете включить все ключи, помеченные как переопределимые, а также аддитивные ключиenabledPluginsиextraKnownMarketplaces. Каждый другой ключ остается управляемым вашей компанией по умолчанию.{ "model": "unmanaged", "permissions": { "disableBypassPermissionsMode": "unmanaged" }, "allowedMcpServers": [ { "serverUrl": "https://team-specific-mcp.company.com/*" } ] } -
Зафиксируйте и отправьте изменения в ветвь по умолчанию.
GitHub оценивает членство в команде предприятия и применяет соответствующие параметры для каждого пользователя. Если пользователь принадлежит нескольким командам, их файлы групп объединяются с использованием наименьшего ограничивающего значения для каждого ключа, а затем применяется под параметрами предприятия, где решения платформы всегда выигрывают.