Back to Opencode

TUI

packages/web/src/content/docs/bs/tui.mdx

1.15.79.9 KB
Original Source

import { Tabs, TabItem } from "@astrojs/starlight/components"

OpenCode pruža interaktivni terminalski interfejs ili TUI za rad na vašim projektima sa LLM.

Pokretanje OpenCode pokreće TUI za trenutni direktorij.

bash
opencode

Ili ga možete pokrenuti za određeni radni direktorij.

bash
opencode /path/to/project

Kada uđete u TUI, možete to zatražiti porukom.

text
Give me a quick summary of the codebase.

Reference datoteka

Možete referencirati datoteke u svojim porukama koristeći @. Ovo vrši nejasnu pretragu datoteka u trenutnom radnom direktoriju.

:::tip Također možete koristiti @ da referencirate datoteke u svojim porukama. :::

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

Sadržaj datoteke se automatski dodaje u razgovor.


Bash naredbe

Započnite poruku sa ! da pokrenete komandu ljuske.

bash
!ls -la

Izlaz naredbe se dodaje u razgovor kao rezultat alata.


Naredbe

Kada koristite OpenCode TUI, možete upisati / nakon čega slijedi ime komande da biste brzo izvršili radnje. na primjer:

bash
/help

Većina naredbi također ima vezu pomoću ctrl+x kao vodeće tipke, gdje je ctrl+x zadani vodeći ključ. Saznajte više.

Ovdje su sve dostupne komande kose crte:


connect

Dodajte provajdera u OpenCode. Omogućava vam da odaberete između dostupnih provajdera i dodate njihove API ključeve.

bash
/connect

compact

Sažimanje trenutne sesije. Alias: /summarize

bash
/compact

Tastatura: ctrl+x c


details

Prebacite detalje o izvršavanju alata.

bash
/details

Tastatura: ctrl+x d


editor

Otvorite vanjski uređivač za sastavljanje poruka. Koristi editor postavljen u vašoj varijabli okruženja EDITOR. Saznajte više.

bash
/editor

Tastatura: ctrl+x e


exit

Izađite iz OpenCode. Aliases: /quit, /q

bash
/exit

Tastatura: ctrl+x q


export

Izvezite trenutni razgovor u Markdown i otvorite ga u zadanom uređivaču. Koristi editor postavljen u vašoj varijabli okruženja EDITOR. Saznajte više.

bash
/export

Tastatura: ctrl+x x


help

Prikaži dijalog pomoći.

bash
/help

Tastatura: ctrl+x h


init

Kreirajte ili ažurirajte datoteku AGENTS.md. Saznajte više.

bash
/init

Tastatura: ctrl+x i


models

Navedite dostupne modele.

bash
/models

Tastatura: ctrl+x m


new

Započnite novu sesiju. Alias: /clear

bash
/new

Tastatura: ctrl+x n


redo

Ponovite prethodno poništenu poruku. Dostupno samo nakon korištenja /undo.

:::tip Sve promjene fajla će također biti vraćene. :::

Interno, ovo koristi Git za upravljanje promjenama datoteke. Dakle, vaš projekat treba biti Git spremište.

bash
/redo

Tastatura: ctrl+x r


sessions

Listanje i prebacivanje između sesija. Aliases: /resume, /continue

bash
/sessions

Tastatura: ctrl+x l


share

Podijelite trenutnu sesiju. Saznajte više.

bash
/share

Tastatura: ctrl+x s


themes

Navedite dostupne teme.

bash
/themes

Tastatura: ctrl+x t


thinking

Uključite/isključite vidljivost blokova razmišljanja/rezoniranja u razgovoru. Kada je omogućeno, možete vidjeti proces rezonovanja modela za modele koji podržavaju prošireno razmišljanje.

:::note Ova naredba samo kontrolira da li se blokovi razmišljanja prikažu - ne omogućava niti onemogućuje mogućnosti razmišljanja modela. Da biste uključili stvarne mogućnosti zaključivanja, koristite ctrl+t za kretanje kroz varijante modela. :::

bash
/thinking

undo

Poništi posljednju poruku u razgovoru. Uklanja najnoviju korisničku poruku, sve naknadne odgovore i sve promjene datoteke.

:::tip Sve promjene u fajlu će također biti poništene. :::

Interno, ovo koristi Git za upravljanje promjenama datoteke. Dakle, vaš projekat treba biti Git spremište.

bash
/undo

Tastatura: ctrl+x u


unshare

Poništi dijeljenje trenutne sesije. Saznajte više.

bash
/unshare

Podešavanje uređivača

Obje naredbe /editor i /export koriste editor specificiran u vašoj varijabli okruženja EDITOR.

<Tabs> <TabItem label="Linux/macOS">
```bash
# 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"
```

Da biste ga učinili trajnim, dodajte ovo u svoj shell profil;
`~/.bashrc`, `~/.zshrc`, itd.
</TabItem> <TabItem label="Windows (CMD)">
```bash
set EDITOR=notepad

# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# include --wait
set EDITOR=code --wait
```

Da biste ga učinili trajnim, koristite **Svojstva sistema** > **Okruženje
Varijable**.
</TabItem> <TabItem label="Windows (PowerShell)">
```powershell
$env:EDITOR = "notepad"

# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# include --wait
$env:EDITOR = "code --wait"
```

Da biste ga učinili trajnim, dodajte ovo u svoj PowerShell profil.
</TabItem> </Tabs>

Popularne opcije uređivača uključuju:

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

:::note Neki uređivači kao što je VS Code moraju biti pokrenuti sa --wait zastavicom. :::

Nekim uređivačima su potrebni argumenti komandne linije da bi se pokrenuli u načinu blokiranja. Oznaka --wait blokira proces uređivača dok se ne zatvori.


Konfiguracija

Možete prilagoditi TUI ponašanje putem tui.json (ili tui.jsonc).

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"
    }
  }
}

Ovo je odvojeno od opencode.json, koji konfiguriše ponašanje servera/izvršavanja.

keybinds se spaja s ugrađenim zadanim vrijednostima, tako da trebate konfigurisati samo prečice koje želite promijeniti.

Opcije

  • theme - Postavlja vašu UI temu. Saznajte više.
  • keybinds - Prilagođava prečice na tastaturi. Saznajte više.
  • leader_timeout - Kontroliše koliko dugo OpenCode čeka nakon leader key. Podrazumijevano je 2000.
  • scroll_acceleration.enabled - ​​Omogućite ubrzanje pomicanja u macOS stilu za glatko, prirodno pomicanje. Kada je omogućeno, brzina pomicanja se povećava brzim pokretima pomicanja i ostaje precizna za sporije pokrete. Ova postavka ima prednost nad scroll_speed i nadjačava je kada je omogućena.
  • scroll_speed - ​​Kontrolira koliko brzo TUI skroluje kada se koriste komande za pomeranje (minimum: 0.001, podržava decimalne vrijednosti). Podrazumevano je 3. Napomena: Ovo se zanemaruje ako je scroll_acceleration.enabled postavljeno na true.
  • diff_style - Kontrolira prikazivanje razlike. "auto" se prilagođava širini terminala, "stacked" uvijek prikazuje raspored u jednoj koloni.
  • mouse - Omogućava ili onemogućava hvatanje miša u TUI (podrazumijevano: true). Kada je onemogućeno, zadržava se izvorno ponašanje terminala za označavanje i pomicanje mišem.
  • attention - Konfiguriše desktop obavještenja i zvukove za TUI. Podrazumijevano je onemogućeno.

Koristite OPENCODE_TUI_CONFIG da učitate prilagođenu putanju TUI konfiguracije.

Attention

Attention omogućava da vas TUI obavijesti kada OpenCode čeka odgovor, treba odobrenje dozvole, prijavi grešku sesije ili završi sesiju. Omogućite ga pomoću attention.enabled; ugrađeni događaji reproduciraju zvuk kada se dogode. Desktop obavještenja se šalju samo kada prozor terminala nije u fokusu i ne koriste se za subagent događaje.

  • enabled - Omogućava sva obavještenja i zvukove za Attention. Podrazumijevano je false.
  • notifications - Kada je Attention omogućen, dozvoljava TUI-ju da šalje desktop obavještenja putem terminala. Podrazumijevano je true.
  • sound - Kada je Attention omogućen, dozvoljava zvukove upozorenja. Podrazumijevano je true.
  • volume - Podrazumijevana jačina zvukova upozorenja od 0 do 1. Podrazumijevano je 0.4.
  • sound_pack - Sound pack ID koji se koristi. Podrazumijevano je opencode.default.
  • sounds - Postavlja prilagođene zvučne datoteke za default, question, permission, error, done ili subagent_done. Putanje mogu biti apsolutne, file:// URL-ovi ili relativne u odnosu na tui.json.

Prilagođavanje

Možete prilagoditi različite aspekte TUI prikaza koristeći paletu komandi (ctrl+x h ili /help). Ove postavke traju i nakon ponovnog pokretanja.


Prikaz korisničkog imena

Uključite da li se vaše korisničko ime pojavljuje u porukama za ćaskanje. Pristupite ovome putem:

  • Paleta naredbi: Potražite "korisničko ime" ili "sakrij korisničko ime"
  • Postavka se automatski nastavlja i pamtit će se tijekom TUI sesija