İçeriğe geç

TUI

OpenCode terminal kullanıcı arayüzünü kullanma.

OpenCode, projelerinizde LLM ile çalışmak için etkileşimli bir terminal arayüzü (TUI) sunar.

OpenCode’u çalıştırdığınızda mevcut dizin için TUI başlar.

Terminal window
opencode

İsterseniz belirli bir çalışma dizini için de başlatabilirsiniz.

Terminal window
opencode /path/to/project

TUI içine girdiğinizde, bir mesajla istem gönderebilirsiniz.

Give me a quick summary of the codebase.

Dosya referansları

Mesajlarınızda @ kullanarak dosyalara referans verebilirsiniz. Bu, mevcut çalışma dizininde bulanık dosya araması yapar.

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

Dosya içeriği otomatik olarak konuşmaya eklenir.


Bash komutları

Bir mesajı ! ile başlatarak shell komutu çalıştırın.

!ls -la

Komut çıktısı bir araç sonucu olarak konuşmaya eklenir.


Komutlar

OpenCode TUI kullanırken / ve ardından komut adını yazarak hızlı eylemler çalıştırabilirsiniz. Örneğin:

/help

Komutların çoğu, lider tuşu ctrl+x olan bir kısayola da sahiptir. Daha fazla bilgi.

İşte mevcut slash komutlarının tümü:


connect

OpenCode’a bir sağlayıcı ekler. Mevcut sağlayıcıları seçip API anahtarları eklemenizi sağlar.

/connect

compact

Mevcut oturumu sıkıştırır. Takma ad: /summarize

/compact

Kısayol: ctrl+x c


details

Araç çalıştırma detaylarını göster/gizle yapar.

/details

Kısayol: ctrl+x d


editor

Mesaj yazmak için harici editör açar. EDITOR ortam değişkeninde ayarlı editörü kullanır. Daha fazla bilgi.

/editor

Kısayol: ctrl+x e


exit

OpenCode’dan çıkar. Takma adlar: /quit, /q

/exit

Kısayol: ctrl+x q


export

Mevcut konuşmayı Markdown olarak dışa aktarır ve varsayılan editörünüzde açar. EDITOR ortam değişkeninde ayarlı editörü kullanır. Daha fazla bilgi.

/export

Kısayol: ctrl+x x


help

Yardım penceresini gösterir.

/help

Kısayol: ctrl+x h


init

AGENTS.md dosyasını oluşturur veya günceller. Daha fazla bilgi.

/init

Kısayol: ctrl+x i


models

Kullanılabilir modelleri listeler.

/models

Kısayol: ctrl+x m


new

Yeni bir oturum başlatır. Takma ad: /clear

/new

Kısayol: ctrl+x n


redo

Geri alınan bir mesajı tekrar uygular. Yalnızca /undo kullanıldıktan sonra kullanılabilir.

Dahili olarak bu işlem dosya değişikliklerini yönetmek için Git kullanır. Bu nedenle projenizin bir Git deposu olması gerekir.

/redo

Kısayol: ctrl+x r


sessions

Oturumları listeler ve aralarında geçiş yapar. Takma adlar: /resume, /continue

/sessions

Kısayol: ctrl+x l


share

Mevcut oturumu paylaşır. Daha fazla bilgi.

/share

Kısayol: ctrl+x s


themes

Kullanılabilir temaları listeler.

/themes

Kısayol: ctrl+x t


thinking

Konuşmadaki thinking/reasoning bloklarının görünürlüğünü değiştirir. Etkin olduğunda, genişletilmiş düşünmeyi destekleyen modellerin akıl yürütme sürecini görebilirsiniz.

/thinking

undo

Konuşmadaki son mesajı geri alır. En son kullanıcı mesajını, sonraki tüm yanıtları ve dosya değişikliklerini kaldırır.

Dahili olarak bu işlem dosya değişikliklerini yönetmek için Git kullanır. Bu nedenle projenizin bir Git deposu olması gerekir.

/undo

Kısayol: ctrl+x u


unshare

Mevcut oturumun paylaşımını kaldırır. Daha fazla bilgi.

/unshare

Editör kurulumu

Hem /editor hem de /export komutları, EDITOR ortam değişkeninde belirtilen editörü kullanır.

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"

Kalıcı yapmak için bunu kabuk profilinize ekleyin; ~/.bashrc, ~/.zshrc vb.

Popüler editör seçenekleri şunları içerir:

  • code - Visual Studio Code
  • cursor - Cursor
  • windsurf - Windsurf
  • nvim - Neovim editörü
  • vim - Vim editörü
  • nano - Nano editörü
  • notepad - Windows Notepad
  • subl - Sublime Text

Bazı editörler bloklama modunda çalışmak için komut satırı argümanlarına ihtiyaç duyar. --wait bayrağı, editör süreci kapanana kadar işlemin bloklanmasını sağlar.


Yapılandırma

TUI davranışını tui.json (veya tui.jsonc) aracılığıyla özelleştirebilirsiniz.

tui.json
{
"$schema": "https://opencode.ai/tui.json",
"theme": "opencode",
"keybinds": {
"leader": "ctrl+x"
},
"scroll_speed": 3,
"scroll_acceleration": {
"enabled": true
},
"diff_style": "auto"
}

Bu, sunucu/çalışma zamanı davranışını yapılandıran opencode.json dosyasından ayrıdır.

Seçenekler

  • theme - UI temanızı ayarlar. Daha fazla bilgi.
  • keybinds - Klavye kısayollarını özelleştirir. Daha fazla bilgi.
  • scroll_acceleration.enabled - Pürüzsüz, doğal kaydırma için macOS tarzı kaydırma ivmesini etkinleştirin. Etkinleştirildiğinde, kaydırma hızı hızlı kaydırma hareketleriyle artar ve daha yavaş hareketler için hassas kalır. Bu ayar scroll_speed ayarından önceliklidir ve etkinleştirildiğinde onu geçersiz kılar.
  • scroll_speed - Kaydırma komutlarını kullanırken TUI’nin ne kadar hızlı kaydırılacağını kontrol eder (minimum: 0.001, ondalık değerleri destekler). Varsayılan değer 3’tür. Not: scroll_acceleration.enabled true olarak ayarlanmışsa bu yok sayılır.
  • diff_style - Fark (diff) oluşturmayı kontrol eder. "auto" terminal genişliğine uyum sağlar, "stacked" her zaman tek sütunlu bir düzen gösterir.

Özel bir TUI yapılandırma yolu yüklemek için OPENCODE_TUI_CONFIG kullanın.


Özelleştirme

Komut paletini (ctrl+x h veya /help) kullanarak TUI görünümünün çeşitli yönlerini özelleştirebilirsiniz. Bu ayarlar yeniden başlatmalar arasında korunur.


Kullanıcı adı görünümü

Sohbet mesajlarında kullanıcı adınızın görünüp görünmeyeceğini değiştirin. Buna şuradan erişin:

  • Komut paleti: “username” veya “hide username” araması yapın
  • Ayar otomatik olarak kalıcı hale gelir ve TUI oturumları arasında hatırlanır