Pular para o conteúdo

TUI

Usando a interface de usuário de terminal opencode.

O opencode fornece uma interface de terminal interativa ou TUI para trabalhar em seus projetos com um LLM.

Executar opencode inicia o TUI para o diretório atual.

Terminal window
opencode

Ou você pode iniciá-lo para um diretório de trabalho específico.

Terminal window
opencode /path/to/project

Uma vez que você esteja no TUI, você pode solicitar com uma mensagem.

Faça um resumo rápido da base de código.

Referências de arquivos

Você pode referenciar arquivos em suas mensagens usando @. Isso faz uma busca difusa de arquivos no diretório de trabalho atual.

Como a autenticação é tratada em @packages/functions/src/api/index.ts?

O conteúdo do arquivo é adicionado à conversa automaticamente.


Comandos Bash

Comece uma mensagem com ! para executar um comando de shell.

!ls -la

A saída do comando é adicionada à conversa como um resultado de ferramenta.


Comandos

Ao usar o TUI do opencode, você pode digitar / seguido pelo nome de um comando para executar ações rapidamente. Por exemplo:

/help

A maioria dos comandos também possui atalhos usando ctrl+x como a tecla líder, onde ctrl+x é a tecla líder padrão. Saiba mais.

Aqui estão todos os comandos de barra disponíveis:


connect

Adicione um provedor ao opencode. Permite que você selecione entre os provedores disponíveis e adicione suas chaves de API.

/connect

compact

Compacte a sessão atual. Alias: /summarize

/compact

Atalho: ctrl+x c


details

Alternar detalhes da execução da ferramenta.

/details

Atalho: ctrl+x d


editor

Abra um editor externo para compor mensagens. Usa o editor definido na sua variável de ambiente EDITOR. Saiba mais.

/editor

Atalho: ctrl+x e


exit

Saia do opencode. Aliases: /quit, /q

/exit

Atalho: ctrl+x q


export

Exporte a conversa atual para Markdown e abra no seu editor padrão. Usa o editor definido na sua variável de ambiente EDITOR. Saiba mais.

/export

Atalho: ctrl+x x


help

Mostre o diálogo de ajuda.

/help

Atalho: ctrl+x h


init

Crie ou atualize o arquivo AGENTS.md. Saiba mais.

/init

Atalho: ctrl+x i


models

Liste os modelos disponíveis.

/models

Atalho: ctrl+x m


new

Inicie uma nova sessão. Alias: /clear

/new

Atalho: ctrl+x n


redo

Refaça uma mensagem anteriormente desfeita. Disponível apenas após usar /undo.

Internamente, isso usa Git para gerenciar as alterações de arquivo. Portanto, seu projeto precisa ser um repositório Git.

/redo

Atalho: ctrl+x r


sessions

Liste e alterne entre sessões. Aliases: /resume, /continue

/sessions

Atalho: ctrl+x l


share

Compartilhe a sessão atual. Saiba mais.

/share

Atalho: ctrl+x s


themes

Liste os temas disponíveis.

/theme

Atalho: ctrl+x t


thinking

Alternar a visibilidade dos blocos de pensamento/razão na conversa. Quando ativado, você pode ver o processo de raciocínio do modelo para modelos que suportam pensamento estendido.

/thinking

undo

Desfaça a última mensagem na conversa. Remove a mensagem mais recente do usuário, todas as respostas subsequentes e quaisquer alterações de arquivo.

Internamente, isso usa Git para gerenciar as alterações de arquivo. Portanto, seu projeto precisa ser um repositório Git.

/undo

Atalho: ctrl+x u


unshare

Descompartilhe a sessão atual. Saiba mais.

/unshare

Configuração do Editor

Tanto os comandos /editor quanto /export usam o editor especificado na sua variável de ambiente EDITOR.

Terminal window
# Exemplo para nano ou vim
export EDITOR=nano
export EDITOR=vim
# Para editores GUI, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# inclua --wait
export EDITOR="code --wait"

Para torná-lo permanente, adicione isso ao seu perfil de shell; ~/.bashrc, ~/.zshrc, etc.

As opções de editor populares incluem:

  • code - VS Code
  • cursor - Cursor
  • windsurf - Windsurf
  • nvim - Editor Neovim
  • vim - Editor Vim
  • nano - Editor Nano
  • notepad - Bloco de Notas do Windows
  • subl - Sublime Text

Alguns editores precisam de argumentos de linha de comando para rodar em modo bloqueante. A flag --wait faz com que o processo do editor bloqueie até ser fechado.


Configuração

Você pode personalizar o comportamento do TUI através do seu arquivo de configuração do opencode.

opencode.json
{
"$schema": "https://opencode.ai/config.json",
"tui": {
"scroll_speed": 3,
"scroll_acceleration": {
"enabled": true
}
}
}

Opções

  • scroll_acceleration - Ative a aceleração de rolagem no estilo macOS para uma rolagem suave e natural. Quando ativado, a velocidade de rolagem aumenta com gestos de rolagem rápidos e permanece precisa para movimentos mais lentos. Esta configuração tem precedência sobre scroll_speed e a substitui quando ativada.
  • scroll_speed - Controla quão rápido o TUI rola ao usar comandos de rolagem (mínimo: 1). O padrão é 3. Nota: Isso é ignorado se scroll_acceleration.enabled estiver definido como true.

Personalização

Você pode personalizar vários aspectos da visualização do TUI usando a paleta de comandos (ctrl+x h ou /help). Essas configurações persistem entre reinicializações.


Exibição do nome de usuário

Alternar se seu nome de usuário aparece nas mensagens de chat. Acesse isso através de:

  • Paleta de comandos: Pesquise por “username” ou “hide username”
  • A configuração persiste automaticamente e será lembrada entre as sessões do TUI