Gå til indhold

TUI

Brug af OpenCode-terminalbrugergrænsefladen.

OpenCode giver en interaktiv terminalgrænseflade eller TUI til at arbejde med dine projekter med en LLM.

At køre OpenCode starter TUI for den nuværende mappe.

Terminal window
opencode

Eller du kan starte den for en bestemt arbejdsmappe.

Terminal window
opencode /path/to/project

Når du er i TUI, kan du spørge den med en besked.

Give me a quick summary of the codebase.

Filreferencer

Du kan referere til filer i dine beskeder med @. Det laver en fuzzy filsøgning i den nuværende arbejdsmappe.

How is auth handled in @packages/functions/src/api/index.ts?

Indholdet i filen tilføjes automatisk til samtalen.


Bash-kommandoer

Start en besked med ! for at køre en shell-kommando.

!ls -la

Outputtet fra kommandoen tilføjes til samtalen som et værktøjsresultat.


Kommandoer

Når du bruger OpenCode TUI, kan du skrive / efterfulgt af et kommandonavn for hurtigt at udføre handlinger. For eksempel:

/help

De fleste kommandoer har også genvejstaster som bruger ctrl+x som Leader-tast, hvor ctrl+x er standard Leader-tast. Læs mere.

Her er alle tilgængelige skråstregskommandoer:


connect

Tilføj en udbyder til OpenCode. Lader dig vælge fra tilgængelige udbydere og tilføje deres API-nøgler.

/connect

compact

Komprimer nuværende session. Alias: /summarize

/compact

Genvejstast: ctrl+x c


details

Skift visning af værktøjsudførelsesdetaljer.

/details

Genvejstast: ctrl+x d


editor

Åbn eksternt redigeringsprogram for at skrive beskeder. Bruger redigeringsprogrammet i miljøvariablen EDITOR. Læs mere.

/editor

Genvejstast: ctrl+x e


exit

Afslut OpenCode. Aliaser: /quit, /q

/exit

Genvejstast: ctrl+x q


export

Eksporter nuværende samtale til Markdown og åbn i standardredigeringsprogrammet. Bruger redigeringsprogrammet i miljøvariablen EDITOR. Læs mere.

/export

Genvejstast: ctrl+x x


help

Vis hjælpedialogen.

/help

Genvejstast: ctrl+x h


init

Opret eller opdater AGENTS.md-fil. Læs mere.

/init

Genvejstast: ctrl+x i


models

Liste over tilgængelige modeller.

/models

Genvejstast: ctrl+x m


new

Start en ny session. Alias: /clear

/new

Genvejstast: ctrl+x n


redo

Gentag en tidligere fortrudt besked. Kun tilgængelig efter brug af /undo.

Internt bruger dette Git til at administrere filændringerne. Så dit projekt skal være et Git-depot.

/redo

Genvejstast: ctrl+x r


sessions

List og skift mellem sessioner. Aliaser: /resume, /continue

/sessions

Genvejstast: ctrl+x l


share

Del nuværende session. Læs mere.

/share

Genvejstast: ctrl+x s


themes

Liste over tilgængelige temaer.

/theme

Genvejstast: ctrl+x t


thinking

Skift synligheden af tænke-/ræsonneringsblokke i samtalen. Når den er aktiveret, kan du se modellens ræsonneringsproces for modeller, som understøtter udvidet tænkning.

/thinking

undo

Fortryd sidste besked i samtalen. Fjerner den sidste brugerbesked, alle efterfølgende svar og eventuelle filændringer.

Internt bruger dette Git til at administrere filændringerne. Så dit projekt skal være et Git-depot.

/undo

Genvejstast: ctrl+x u


unshare

Ophæv deling af nuværende session. Læs mere.

/unshare

Opsætning af editor

Både kommandoerne /editor og /export bruger editoren som er specificeret i miljøvariablen 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"

For at gøre det permanent, tilføj dette til din shellprofil; ~/.bashrc, ~/.zshrc osv.

Populære redigeringsalternativer inkluderer:

  • code - Visual Studio Code
  • cursor - Cursor
  • windsurf - Windsurf
  • nvim - Neovim-editor
  • vim - Vim editor
  • nano - Nano-editor
  • notepad - Windows Notesblok
  • subl - Sublime Text

Nogle editorer kræver kommandolinjeargumenter for at køre i blokeringstilstand. --wait-flaget gør at redigeringsprocessen blokeres indtil den lukkes.


Konfigurer

Du kan tilpasse TUI-adfærd gennem tui.json (eller tui.jsonc).

tui.json
{
"$schema": "https://opencode.ai/tui.json",
"theme": "opencode",
"leader_timeout": 2000,
"keybinds": {
"leader": "ctrl+x",
"command_list": "ctrl+p"
},
"scroll_speed": 3,
"scroll_acceleration": {
"enabled": false
},
"diff_style": "auto",
"mouse": true,
"attention": {
"enabled": true,
"notifications": true,
"sound": true,
"volume": 0.4,
"sound_pack": "opencode.default",
"sounds": {
"error": "./sounds/error.mp3"
}
}
}

Dette er adskilt fra opencode.json, som konfigurerer server-/kørselstidsadfærd.

keybinds flettes sammen med de indbyggede standarder, så du behøver kun at konfigurere de genveje, du vil ændre.

Indstillinger

  • theme - Indstiller dit brugergrænsefladetema. Læs mere.
  • keybinds - Tilpasser tastaturgenveje. Læs mere.
  • leader_timeout - Styrer hvor længe OpenCode venter efter leader key. Standard er 2000.
  • scroll_acceleration.enabled - Aktiver rulleacceleration i macOS-stil for jævn, naturlig rulning. Når aktiveret, øger rullehastigheden med hurtige rullebevægelser og forbliver præcis for langsommere bevægelser. Denne indstilling har forrang over scroll_speed og tilsidesætter den, når den er aktiveret.
  • scroll_speed - Styrer hvor hurtigt TUI ruller, når du bruger rullekommandoer (minimum: 0.001, understøtter decimalværdier). Standard er 3. Bemærk: Dette ignoreres hvis scroll_acceleration.enabled er sat til true.
  • diff_style - Styrer diff-gengivelse. "auto" tilpasser sig terminalbredde, "stacked" viser altid et enkeltkolonne-layout.
  • mouse - Aktiverer eller deaktiverer musefangst i TUI (standard: true). Når den er deaktiveret, bevares terminalens oprindelige musemarkering og rulning.
  • attention - Konfigurerer skrivebordsnotifikationer og lyde for TUI. Deaktiveret som standard.

Brug OPENCODE_TUI_CONFIG til at indlæse en brugerdefineret TUI-konfigurationssti.

Attention

Attention lader TUI give dig besked, når OpenCode venter på et svar, kræver godkendelse af en tilladelse, rapporterer en sessionsfejl eller har afsluttet en session. Aktivér det med attention.enabled; indbyggede hændelser afspiller en lyd, når de sker. Skrivebordsnotifikationer sendes kun, når terminalvinduet ikke er i fokus, og bruges ikke til subagent-hændelser.

  • enabled - Aktiverer alle notifikationer og lyde for Attention. Standard er false.
  • notifications - Når Attention er aktiveret, lader dette TUI sende skrivebordsnotifikationer via terminalen. Standard er true.
  • sound - Når Attention er aktiveret, tillader dette advarselslyde. Standard er true.
  • volume - Standard lydstyrke for advarselslyde fra 0 til 1. Standard er 0.4.
  • sound_pack - Sound pack-ID der skal bruges. Standard er opencode.default.
  • sounds - Angiver brugerdefinerede lydfiler for default, question, permission, error, done eller subagent_done. Stier kan være absolutte, file:// URL’er eller relative til tui.json.

Tilpasning

Du kan tilpasse forskellige aspekter af TUI-visningen ved at bruge kommandopaletten (ctrl+x h eller /help). Disse indstillinger gemmes ved genstart.


Visning af brugernavn

Skift om dit brugernavn vises i chat-beskeder. Få adgang til dette gennem:

  • Kommandopalet: Søg efter “brugernavn” eller “skjul brugernavn”
  • Indstillingen gemmes automatisk og vil blive husket over TUI-sessioner