Pular para o conteúdo
Navegar Abrir escFechar

Extensões

Uma extensão pode oferecer uma página em tela cheia, como um quadro de tarefas. Abra pelo menu Páginas de extensões acima das sessões. O menu só aparece para páginas ativadas e aprovadas. Escolher um chat, recarregar, pausar, remover ou trocar de servidor fecha a página. A extensão não pode abri-la sozinha.

Os dados próprios da extensão ficam no servidor conectado e são apagados ao removê-la. Um quadro pode acompanhar sessões de vários projetos e worktrees sem criar arquivos no seu projeto.

Use Configurações → Extensões para adicionar ao OpenChamber painéis feitos por outras pessoas. Uma extensão é uma página pequena que fica na barra da direita, ao lado dos painéis integrados. Ela pode mostrar dados de outro serviço, anexar uma tarefa ao chat e, se você permitir, iniciar sessões, enviar prompts ou ler arquivos.

As extensões funcionam no OpenChamber web e desktop. O VS Code e o app móvel ainda não as carregam. Elas não são a mesma coisa que plugins do OpenCode.

Instalar uma

Extensões marcadas como Integrada vêm com a instância OpenChamber selecionada. Começam ativadas e recebem as permissões declaradas sem outro diálogo. Use Desativar ou Ativar no cartão. Elas não podem ser removidas nem atualizadas separadamente do app. Desativar preserva os dados e as contas conectadas, e essa escolha permanece após atualizações do app.

As contas ficam em Configurações → Integrações → Integrações nativas. Um serviço ainda pode precisar de um token API ou login para acessar sua conta.

  1. Abra Configurações → Extensões.
  2. Cole uma destas opções no campo Pasta, ZIP ou URL e escolha Adicionar:
    • o caminho absoluto de uma pasta neste computador
    • o caminho de um arquivo .zip
    • um link https para um repositório git ou um arquivo zip
    • um endereço Git SSH, como [email protected]:owner/extension.git
  3. Se a extensão pedir permissões, um diálogo lista todas. Escolha Permitir e ativar, ou Remover para tirá-la de volta.

Você também pode arrastar um .zip para o campo ou escolher um com o botão de arquivo ao lado; o arquivo é enviado ao servidor do OpenChamber, então isso funciona também com uma instância remota. No desktop, o botão de pasta abre um seletor nativo, e uma pasta arrastada é instalada a partir do seu caminho.

O ícone da extensão aparece na barra. Se não aparecer, veja Solução de problemas.

Uma instalação por pasta roda direto daquela pasta, então quem desenvolve uma extensão pode editar e recarregar. Um zip ou uma URL é copiado primeiro para a pasta de dados do OpenChamber; o arquivo original não é tocado.

Repositórios privados e identidades Git

Instalações SSH aceitam [email protected]:owner/extension.git e ssh://[email protected]/owner/extension.git, com #branch-or-tag opcional. Escolha a identidade global ou uma identidade Git salva no menu de impressão digital ao lado do campo. A seleção é mantida para verificar e instalar atualizações; mudanças na chave valem na próxima operação.

A identidade global usa a configuração Git/SSH e o agente SSH do usuário que executa o servidor OpenChamber selecionado. Em uma instância remota, a chave precisa estar disponível naquele servidor. Desbloqueie chaves protegidas por senha no agente SSH do processo do servidor antes de instalar. HTTPS usa as credenciais HTTPS do Git, sem trocar automaticamente para SSH. Os hosts Git devem resolver para endereços públicos; aliases SSH locais e destinos de redes privadas não são aceitos.

O que uma extensão pode fazer

Mostrar um painel e ler qual projeto e sessão estão abertos não precisa de permissão. Tudo que age em seu nome precisa, e você vê a lista inteira uma vez, na instalação:

  • Enviar mensagens nas suas sessões: escreve e envia prompts ao modelo, o que gasta tokens e pode executar ferramentas.
  • Acessar projetos e sessões: listar projetos, worktrees e estados de sessões, além de criar e abrir sessões em projetos registrados. O conteúdo das conversas permanece privado.
  • Ler e gravar arquivos do projeto: qualquer arquivo do projeto aberto.
  • Ler e gravar arquivos fora do projeto: só os locais listados no diálogo.
  • Usar seu Small Model: geração de texto avulsa fora das suas sessões, com o modelo de Configurações → Sessões → Small Model. Custa tokens.
  • Conectar a um serviço externo: com a conta que você conecta em Configurações → Integrações.
  • Ler a conversa de uma sessão: só quando você executa a ação da extensão naquela sessão.
  • Executar um serviço local: um programa separado com todo o acesso do seu usuário. Permita só se confiar no autor.

Quando uma versão mais nova pede mais do que você permitiu, o card mostra Precisa de aprovação e um botão Revisar permissões. Até você permitir a nova lista, essa extensão fica desligada.

Onde ela aparece

Além do painel na barra lateral, uma extensão pode adicionar entradas a menus que você já usa: as ações de uma mensagem do chat, o menu de uma sessão, o menu + ao lado da caixa de chat e comandos de barra como /task ABC-12, que anexam algo sem abrir nada. Ela também pode dar às próprias ferramentas um ícone, um título e um layout de saída adequados no chat, como as ferramentas embutidas do OpenChamber têm. A extensão decide quais deles oferece; todos ficam desligados até você permitir a extensão.

Algumas extensões mostram uma imagem ao vivo em vez de um painel próprio: aquilo em que um agente está trabalhando no servidor, como um navegador ou um simulador. Clique na imagem ou digite para assumir o controle; a linha de status mostra Você está no controle e as ações de navegador do agente são recusadas até você pressionar Devolver ao agente. Copiar e colar funcionam normalmente. Outro dispositivo conectado ao mesmo tempo vê quem está no controle e não pode tomá-lo. Uma extensão assim pode adicionar seus próprios controles ao lado da imagem, por exemplo uma barra de endereço acima ou uma coluna de ferramentas ao lado.

Conectar a conta dela

Uma extensão que fala com um serviço ganha um card em Configurações → Integrações sob Contas de extensões. Dependendo do serviço, o card pede um token de API, um usuário e token, ou um client id para um fluxo de login. Escolha Conectar; Desconectar esquece o token guardado. Campos extras que a extensão declara são salvos sozinhos quando você sai deles.

O token fica no servidor do OpenChamber. A página da extensão nunca o vê.

Atualizar

Extensões instaladas a partir de uma URL git podem se atualizar sozinhas. Abrir Configurações → Extensões verifica cada uma no máximo uma vez por hora; Verificar atualizações verifica na hora. Um card com versão mais nova mostra Atualização disponível e um botão Atualizar. A atualização mantém suas permissões, contas e configurações; se a nova versão pedir mais, o diálogo de aprovação aparece de novo. Instalações por pasta ou zip não se atualizam: substitua-as à mão.

Adicione #v1.2.0 ou #stable à URL git ao instalar para seguir uma tag ou branch em vez do branch padrão.

Pausar ou remover

Cada card tem uma chave Ativado. Desligada, mantém a extensão instalada, mas esconde o painel e bloqueia as chamadas. Remover apaga uma instalação por zip ou URL da pasta de dados do OpenChamber; numa instalação por pasta só esquece o caminho, sua pasta continua lá.

Criar a sua

Tudo que uma extensão pode fazer, e como criar uma, está em Criar uma extensão.