--- title: TUI description: Korištenje korisničkog interfejsa OpenCode terminala. --- 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 "@packages/functions/src/api/index.ts" 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 frame="none" !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 frame="none" /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](/docs/keybinds). 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 frame="none" /connect ``` --- ### compact Sažimanje trenutne sesije. _Alias_: `/summarize` ```bash frame="none" /compact ``` **Tastatura:** `ctrl+x c` --- ### details Prebacite detalje o izvršavanju alata. ```bash frame="none" /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](#editor-setup). ```bash frame="none" /editor ``` **Tastatura:** `ctrl+x e` --- ### exit Izađite iz OpenCode. _Aliases_: `/quit`, `/q` ```bash frame="none" /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](#editor-setup). ```bash frame="none" /export ``` **Tastatura:** `ctrl+x x` --- ### help Prikaži dijalog pomoći. ```bash frame="none" /help ``` **Tastatura:** `ctrl+x h` --- ### init Kreirajte ili ažurirajte datoteku `AGENTS.md`. [Saznajte više](/docs/rules). ```bash frame="none" /init ``` **Tastatura:** `ctrl+x i` --- ### models Navedite dostupne modele. ```bash frame="none" /models ``` **Tastatura:** `ctrl+x m` --- ### new Započnite novu sesiju. _Alias_: `/clear` ```bash frame="none" /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 frame="none" /redo ``` **Tastatura:** `ctrl+x r` --- ### sessions Listanje i prebacivanje između sesija. _Aliases_: `/resume`, `/continue` ```bash frame="none" /sessions ``` **Tastatura:** `ctrl+x l` --- ### share Podijelite trenutnu sesiju. [Saznajte više](/docs/share). ```bash frame="none" /share ``` **Tastatura:** `ctrl+x s` --- ### themes Navedite dostupne teme. ```bash frame="none" /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 frame="none" /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 frame="none" /undo ``` **Tastatura:** `ctrl+x u` --- ### unshare Poništi dijeljenje trenutne sesije. [Saznajte više](/docs/share#un-sharing). ```bash frame="none" /unshare ``` --- ## Podešavanje uređivača Obje naredbe `/editor` i `/export` koriste editor specificiran u vašoj varijabli okruženja `EDITOR`. ```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. ```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**. ```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. 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 title="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" } } } ``` 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](/docs/themes). - `keybinds` - Prilagođava prečice na tastaturi. [Saznajte više](/docs/keybinds). - `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