Pular para o conteúdo

TUI

Usando a interface de usuário de terminal opencode.

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.

Give me a quick summary of the codebase.

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.

How is auth handled in @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
# Example for nano or vim
export EDITOR=nano
export EDITOR=vim
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# include --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.


Configurar

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