Recomendamos que sua equipe entre no Codex com o ChatGPT. Nos planos compatíveis, você pode usar a configuração gerenciada para definir valores padrão e impor requisitos na seção Segurança do agente do console de administração, sem precisar manter um servidor próprio.
Se os usuários não entram no Codex com o ChatGPT, você pode distribuir a configuração para a CLI do Codex e o aplicativo para desktop por meio de um servidor HTTPS que você administra. O Codex carrega as configurações ao iniciar, tanto quando os usuários se conectam diretamente ao provedor de modelos quanto quando usam um gateway.
Limitações dos clientes
O aplicativo para desktop não consegue solicitar que você faça login no servidor de configuração. Se o servidor exigir um novo login, execute codex login em um terminal no mesmo computador e reabra o aplicativo. Se o aplicativo não conseguir carregar as configurações obrigatórias, a inicialização ficará pausada.
Configure o Codex para usar o servidor
Em um computador de teste, crie ou atualize o arquivo requirements.toml do sistema. Adicione uma tabela [config_server] com a URL base do servidor de configuração. Use /etc/codex/requirements.toml no Linux e no macOS ou %ProgramData%\OpenAI\Codex\requirements.toml no Windows. No macOS, você também pode distribuir a tabela por meio das preferências gerenciadas.
[config_server]
base_url = "https://codex-config.example.com/team"
Somente os requisitos locais sob controle do administrador podem definir qual servidor usar. Mantenha essa tabela no computador ao transferir o restante da política para o endpoint.
Configure a autenticação no servidor de configuração (opcional)
Por padrão, o Codex tenta buscar a configuração sem credenciais. Se o servidor exigir login, adicione [config_server.oauth] ao mesmo arquivo requirements.toml. O Codex usa o fluxo de código de autorização do OAuth com Proof Key for Code Exchange (PKCE).
[config_server.oauth]
authorization_url = "https://login.example.com/oauth/authorize"
token_url = "https://login.example.com/oauth/token"
client_id = "codex-policy"
redirect_port = 43127
Neste exemplo, o URI de redirecionamento é http://127.0.0.1:43127/callback. Você pode omitir redirect_port se o provedor aceitar um callback de loopback em qualquer porta disponível. O Codex envia o token de acesso no cabeçalho Authorization. O servidor deve validar o token antes de retornar o pacote.
Disponibilize a configuração do Codex
Hospede a configuração gerenciada em um endpoint HTTPS. Para buscar o pacote, a CLI do Codex envia uma requisição GET usando a URL base do arquivo requirements.toml local:
GET {config_server.base_url}/codex/config/bundle
Com o valor de base_url do exemplo de configuração inicial acima, o Codex envia a seguinte requisição:
GET https://codex-config.example.com/team/codex/config/bundle
Retorne 200 OK e inclua um pacote de configuração em JSON no corpo da resposta.
Formato do pacote de configuração
O pacote agrupa as entradas TOML em dois arrays:
config_toml.enterprise_managedcontém os valores padrão a aplicar. O campocontentsde cada entrada contém texto no formato deconfig.toml.requirements_toml.enterprise_managedcontém os requisitos a impor. O campocontentsde cada entrada contém texto no formato derequirements.toml.
Cada entrada de cada array tem três campos de texto: id, name (um nome de exibição) e contents. Se não precisar de uma categoria, use um array vazio para ela.
Este exemplo define o valor padrão da Pesquisa na Web como disabled e usa allowed_web_search_modes para tornar esse valor obrigatório.
{
"config_toml": {
"enterprise_managed": [
{
"id": "search-default",
"name": "Default web search",
"contents": "web_search = 'disabled'"
}
]
},
"requirements_toml": {
"enterprise_managed": [
{
"id": "search-policy",
"name": "Allowed web search modes",
"contents": "allowed_web_search_modes = ['disabled']"
}
]
}
}
Verifique a configuração no Codex
- Em um computador de teste, abra um terminal no diretório do projeto e execute
codex. Se solicitado, faça login com sua conta corporativa. - No prompt interativo da CLI do Codex, digite
/debug-confige pressione Enter. - Se o servidor fornecer configurações padrão, localize os nomes e IDs delas em Config layer stack. Para o exemplo acima, procure
enterprise-managed (Default web search, search-default) (enabled). - Se o servidor fornecer requisitos, localize uma configuração obrigatória em Requirements e verifique a origem da política indicada ao lado dela.
O Codex pode iniciar com as configurações em cache e atualizá-las em segundo plano. Depois de alterar uma política no servidor, aguarde até que o Codex a atualize. Em seguida, inicie uma nova sessão e repita a verificação antes de distribuir a política para outros computadores.