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.
opencodeEller du kan starte den for en bestemt arbejdsmappe.
opencode /path/to/projectNå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 -laOutputtet 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:
/helpDe 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.
/connectcompact
Komprimer nuværende session. Alias: /summarize
/compactGenvejstast: ctrl+x c
details
Skift visning af værktøjsudførelsesdetaljer.
/detailsGenvejstast: ctrl+x d
editor
Åbn eksternt redigeringsprogram for at skrive beskeder. Bruger redigeringsprogrammet i miljøvariablen EDITOR. Læs mere.
/editorGenvejstast: ctrl+x e
exit
Afslut OpenCode. Aliaser: /quit, /q
/exitGenvejstast: ctrl+x q
export
Eksporter nuværende samtale til Markdown og åbn i standardredigeringsprogrammet. Bruger redigeringsprogrammet i miljøvariablen EDITOR. Læs mere.
/exportGenvejstast: ctrl+x x
help
Vis hjælpedialogen.
/helpGenvejstast: ctrl+x h
init
Opret eller opdater AGENTS.md-fil. Læs mere.
/initGenvejstast: ctrl+x i
models
Liste over tilgængelige modeller.
/modelsGenvejstast: ctrl+x m
new
Start en ny session. Alias: /clear
/newGenvejstast: 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.
/redoGenvejstast: ctrl+x r
sessions
List og skift mellem sessioner. Aliaser: /resume, /continue
/sessionsGenvejstast: ctrl+x l
share
Del nuværende session. Læs mere.
/shareGenvejstast: ctrl+x s
themes
Liste over tilgængelige temaer.
/themeGenvejstast: 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.
/thinkingundo
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.
/undoGenvejstast: ctrl+x u
unshare
Ophæv deling af nuværende session. Læs mere.
/unshareOpsætning af editor
Både kommandoerne /editor og /export bruger editoren som er specificeret i miljøvariablen 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"For at gøre det permanent, tilføj dette til din shellprofil;
~/.bashrc, ~/.zshrc osv.
set EDITOR=notepad
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.# include --waitset EDITOR=code --waitFor at gøre det permanent, brug Systemegenskaber > Miljøvariabler.
$env:EDITOR = "notepad"
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.# include --wait$env:EDITOR = "code --wait"For at gøre det permanent, tilføj dette til din PowerShell-profil.
Populære redigeringsalternativer inkluderer:
code- Visual Studio Codecursor- Cursorwindsurf- Windsurfnvim- Neovim-editorvim- Vim editornano- Nano-editornotepad- Windows Notesbloksubl- 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).
{ "$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 er2000.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 overscroll_speedog 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 er3. Bemærk: Dette ignoreres hvisscroll_acceleration.enableder sat tiltrue.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 erfalse.notifications- Når Attention er aktiveret, lader dette TUI sende skrivebordsnotifikationer via terminalen. Standard ertrue.sound- Når Attention er aktiveret, tillader dette advarselslyde. Standard ertrue.volume- Standard lydstyrke for advarselslyde fra0til1. Standard er0.4.sound_pack- Sound pack-ID der skal bruges. Standard eropencode.default.sounds- Angiver brugerdefinerede lydfiler fordefault,question,permission,error,doneellersubagent_done. Stier kan være absolutte,file://URL’er eller relative tiltui.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