Use um agente de programação instalado como modelo de chat
Se você já paga por um agente de programação e ele está conectado na máquina que executa o Libre WebUI, pode conversar com ele em um chat normal em vez de adicionar outra chave de API. O Libre WebUI detecta a interface de linha de comando do agente e a oferece no seletor de modelos como qualquer outro modelo.
O que é detectado
A cada solicitação da lista de modelos, o Libre WebUI procura estes comandos no PATH
do servidor:
| Modelo | Comando | Fornecido por |
|---|---|---|
| Claude Code | claude | Anthropic |
| Codex | codex | OpenAI |
| OpenCode | opencode | SST |
| Pi | pi | Mario Zechner |
Tudo o que for encontrado aparecerá em um grupo Agentes no seletor de modelos. Nada é instalado para você e nenhum arquivo de configuração é necessário — se o comando for executado no shell do servidor, ele aparecerá.
Configurações → Chat → Padrões também identifica essas entradas como Agente, incluindo o Strands quando sua conta pode usá-lo. Modelos de plugins mantêm o nome do provedor, e apenas modelos Ollama usam o rótulo Ollama. Desativar Ollama não oculta agentes ou plugins configurados. O cartão de informações mostra nome e provedor, e só exibe tamanho, família e formato quando o catálogo os fornece.
Como escolher um modelo, e não apenas uma CLI
Cada CLI pode oferecer várias opções no grupo Agentes:
- O Claude Code oferece seu padrão conectado, além de Sonnet, Opus e Haiku.
Também oferece opções explícitas Sonnet 5.5 (
claude-sonnet-5-5) e Opus 5.5 (claude-opus-5-5). O Sonnet 5.5 exige Claude Code 2.1.284 ou posterior e o Opus 5.5 exige Claude Code 2.1.280 ou posterior, ambos com acesso pela conta conectada; executeclaude updatepara atualizar a CLI. Os aliases Sonnet e Opus existentes continuam seguindo o mapeamento atual de modelos da CLI. - O Codex oferece seu padrão configurado, além da família documentada de login do ChatGPT:
GPT-6 Astra, GPT-6.1 Sol (
gpt-6.1-sol), GPT-6 Sol, GPT-6 Luna, GPT-5.6 Sol, Terra, Luna, GPT-5.5 e GPT-5.3 Codex Spark. A disponibilidade depende do login da CLI e do acesso a modelos da conta. - O Pi é executado com o modelo configurado na própria CLI.
- O OpenCode lista os modelos de todos os provedores nos quais está autenticado
(a partir de
opencode models) e sempre exige uma escolha explícita — seu padrão no nível da CLI pode apontar para um servidor local inacessível pelo host do Libre WebUI.
O motor Strands integrado também aparece no grupo Agentes quando sua conta pode usá-lo. Ele não é uma CLI: roda dentro do backend e usa seus modelos do Ollama e de plugins de provedor. A entrada simples Strands (strands) usa o seu modelo de chat padrão. As outras entradas (strands:<route>) aparecem uma por modelo disponível, como Strands · gpt-5.6-sol (Codex (ChatGPT)), e fixam o modelo e o provedor dele para a conversa; outro provedor disponível não pode substituí-lo em uma falha. Listar as opções não inicia o motor.
As mesmas entradas Strands funcionam como modelo de tarefa em Configurações → Chat → Padrões para títulos automáticos e resumos de raciocínio. Usar modelo atualmente em execução usa a seleção Strands salva na conversa. Essas solicitações curtas de texto chamam diretamente o modelo do provedor subjacente, sem executar as ferramentas do agente nem criar sessão de agente. Outros perfis CLI exigem um modelo de tarefa Ollama, de plugin ou Strands para essas solicitações auxiliares.
O Pi executa cada interação sem estado (--no-session), com as ferramentas locais desativadas e um
prompt de sistema neutro; assim, as respostas não são influenciadas pela configuração pessoal do Pi
do usuário do sistema operacional do servidor, e as conversas nunca a acessam.
Como usar
- Entre como administrador.
- Inicie uma conversa e abra o seletor de modelos.
- Escolha uma opção em Agentes.
- Envie mensagens normalmente. As respostas chegam em streaming, token por token.
A conversa é armazenada como qualquer outro chat; portanto, você pode sair e voltar a ela, renomeá-la e pesquisá-la pela paleta de comandos. A cada interação, uma transcrição da conversa recente é enviada ao agente, e a resposta volta em streaming.
Quem pode usar e o que pode ser acessado
Este recurso é exclusivo para administradores, por um motivo importante. O agente é executado como o mesmo usuário do sistema operacional que o backend do Libre WebUI, no host — e não dentro de um contêiner do Work. Portanto, ele herda as credenciais do agente desse usuário e todo o acesso que esses agentes normalmente têm, incluindo a possibilidade de ler arquivos e executar comandos no servidor, caso decida fazê-lo.
Considere a ativação equivalente a conceder ao agente acesso ao shell da máquina. Por isso, o recurso vem desativado: um administrador precisa ativá-lo em Configurações → Gerenciamento de Usuários → Acesso e políticas → Modelos de agentes CLI. A escolha é persistida e aplicada imediatamente, sem reiniciar.
Alterar esse controle atualiza o catálogo de modelos imediatamente. A categoria Agentes contém entradas CLI diretas; Modelos de plugins contém integrações de API de provedores, como Codex (ChatGPT). Strands aparece na mesma categoria, mas segue a própria configuração de acesso Motor Strands, e não esta chave, então pode aparecer com os modelos de agentes CLI desligados. A descoberta de modelos dele não pode bloquear a descoberta dos agentes CLI instalados.
Instalações existentes herdam a decisão anterior de Agentes até salvar uma configuração CLI independente.
Para fixar a decisão no nível da implantação, independentemente da opção do ambiente de execução, defina a variável de ambiente como desejar (isso também bloqueia a opção na interface):
AGENT_CLI_MODELS_ENABLED=false # or true
Para usar um modelo que possa atuar sobre arquivos, mas permaneça dentro de um sandbox, use Work: ele executa modelos compatíveis com ferramentas em um contêiner restrito com espaço de trabalho isolado.
Acompanhamento de uso
Abra Uso de Fornecedores (/usage) e encontre Agentes perto do topo. Claude Code, Codex, OpenCode, Pi e Strands têm entradas explícitas, inclusive uma mensagem clara quando o período não tem chamadas registradas.
Chamadas CLI feitas pelo LWUI registram resultado, duração e tokens informados. Cada execução gera um evento; snapshots repetidos e relatórios por etapa não duplicam eventos ou tokens. Contadores ausentes permanecem não informados. Interromper uma resposta registra cancelamento, e uma saída malsucedida não vira sucesso apenas por ter produzido texto parcial. Chamadas CLI feitas fora do LWUI não são importadas.
As chamadas do Strands são atribuídas ao agente Strands. Consulte Uso dos agentes para detalhes e limites.
Configuração
| Variável | Padrão | Finalidade |
|---|---|---|
AGENT_CLI_MODELS_ENABLED | unset | Fixa o recurso em true/false; unset delega à opção do administrador (desativada por padrão) |
AGENT_CLI_TIMEOUT_MS | 600000 | Tempo máximo de uma interação do agente antes de ser encerrada |
Solução de problemas
O grupo Agentes não aparece. Confirme a ativação em Configurações → Gerenciamento de Usuários → Acesso e políticas → Modelos de agentes CLI (desativado por padrão) e o login como administrador. Depois confirme que o comando está no PATH do processo do backend, não apenas do shell interativo. Um gerenciador de serviços, contêiner Docker ou inicializador desktop costuma usar um PATH menor do que o terminal de login.
A resposta falha imediatamente. Execute o mesmo comando manualmente como o usuário do servidor
(claude -p "hello" ou codex exec "hello"). Na maioria das vezes, a falha indica que o agente solicita
um login expirado ou que a assinatura subjacente atingiu um limite de taxa.
Em particular, o OpenCode informa um login de provedor expirado somente nos próprios logs;
execute novamente opencode auth login como o usuário do servidor.
As respostas param no meio. Uma interação longa pode ter atingido AGENT_CLI_TIMEOUT_MS. Aumente
esse valor ou divida a solicitação em etapas menores.