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.
opencodeOu você pode iniciá-lo para um diretório de trabalho específico.
opencode /path/to/projectUma 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 -laA 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:
/helpA 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.
/connectcompact
Compacte a sessão atual. Alias: /summarize
/compactAtalho: ctrl+x c
details
Alternar detalhes da execução da ferramenta.
/detailsAtalho: ctrl+x d
editor
Abra um editor externo para compor mensagens. Usa o editor definido na sua variável de ambiente EDITOR. Saiba mais.
/editorAtalho: ctrl+x e
exit
Saia do opencode. Aliases: /quit, /q
/exitAtalho: 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.
/exportAtalho: ctrl+x x
help
Mostre o diálogo de ajuda.
/helpAtalho: ctrl+x h
init
Crie ou atualize o arquivo AGENTS.md. Saiba mais.
/initAtalho: ctrl+x i
models
Liste os modelos disponíveis.
/modelsAtalho: ctrl+x m
new
Inicie uma nova sessão. Alias: /clear
/newAtalho: 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.
/redoAtalho: ctrl+x r
sessions
Liste e alterne entre sessões. Aliases: /resume, /continue
/sessionsAtalho: ctrl+x l
share
Compartilhe a sessão atual. Saiba mais.
/shareAtalho: ctrl+x s
themes
Liste os temas disponíveis.
/themeAtalho: 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.
/thinkingundo
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.
/undoAtalho: ctrl+x u
unshare
Descompartilhe a sessão atual. Saiba mais.
/unshareConfiguração do Editor
Tanto os comandos /editor quanto /export usam o editor especificado na sua variável de ambiente EDITOR.
# Example for nano or vimexport EDITOR=nanoexport EDITOR=vim
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.# include --waitexport EDITOR="code --wait"Para torná-lo permanente, adicione isso ao seu perfil de shell;
~/.bashrc, ~/.zshrc, etc.
set EDITOR=notepad
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.# include --waitset EDITOR=code --waitPara torná-lo permanente, use Propriedades do Sistema > Variáveis de Ambiente.
$env:EDITOR = "notepad"
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.# include --wait$env:EDITOR = "code --wait"Para torná-lo permanente, adicione isso ao seu perfil do PowerShell.
As opções de editor populares incluem:
code- VS Codecursor- Cursorwindsurf- Windsurfnvim- Editor Neovimvim- Editor Vimnano- Editor Nanonotepad- Bloco de Notas do Windowssubl- 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.
{ "$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 sobrescroll_speede 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 sescroll_acceleration.enabledestiver definido comotrue.
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