Przejdź do głównej zawartości

TUI

Korzystanie z interfejsu użytkownika terminala aicippy-code.

aicippy-code zapewnia interaktywny interfejs terminala lub TUI do pracy nad projektami za pomocą LLM.

Uruchomienie aicippy-code uruchamia TUI dla bieżącego katalogu.

Okno terminala
aicippy-code

Możesz też uruchomić go dla określonego katalogu roboczego.

Okno terminala
aicippy-code /path/to/project

Gdy znajdziesz się w TUI, możesz wyświetlić monit za pomocą komunikatu.

Give me a quick summary of the codebase.

Referencje plików

Możesz odwoływać się do plików w swoich wiadomościach, używając @. Spowoduje to rozmyte wyszukiwanie plików w bieżącym katalogu roboczym.

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

Zawartość pliku jest automatycznie dodawana do rozmowy.


Polecenia Bash

Rozpocznij wiadomość od !, aby uruchomić polecenie shell.

!ls -la

Dane wyjściowe polecenia są dodawane do konwersacji jako wynik narzędzia.


Komendy

Korzystając z TUI aicippy-code, możesz wpisać /, po którym następuje nazwa polecenia, aby szybko wykonać działania. Na przykład:

/help

Większość poleceń ma również skrót klawiszowy wykorzystujący ctrl+x jako klucz wiodący, gdzie ctrl+x jest domyślnym klawiszem wiodącym. Dowiedz się więcej.

Oto wszystkie dostępne slash commands:


connect

Dodaj dostawcę do aicippy-code. Umożliwia wybór dostępnych dostawców i dodanie ich kluczy API.

/connect

compact

Kompaktuj bieżącą sesję. Alias: /summarize

/compact

Keybind: ctrl+x c


details

Przełącz szczegóły wykonywania narzędzi.

/details

Keybind: ctrl+x d


editor

Otwórz zewnętrzny edytor do tworzenia wiadomości. Używa edytora ustawionego w zmiennej środowiskowej EDITOR. Dowiedz się więcej.

/editor

Keybind: ctrl+x e


exit

Zamknij aicippy-code. Aliasy: /quit, /q

/exit

Keybind: ctrl+x q


export

Wyeksportuj bieżącą rozmowę do Markdown i otwórz ją w domyślnym edytorze. Używa edytora ustawionego w zmiennej środowiskowej EDITOR. Dowiedz się więcej.

/export

Keybind: ctrl+x x


help

Pokaż okno pomocy.

/help

Keybind: ctrl+x h


init

Utwórz lub zaktualizuj plik AGENTS.md. Dowiedz się więcej.

/init

Keybind: ctrl+x i


models

Lista dostępnych modeli.

/models

Keybind: ctrl+x m


new

Rozpocznij nową sesję. Alias: /clear

/new

Keybind: ctrl+x n


redo

Ponów cofniętą wcześniej wiadomość. Dostępne tylko po użyciu /undo.

Wewnętrznie używa Git do zarządzania zmianami plików. Więc Twój projekt ** musi be a Git repository**.

/redo

Keybind: ctrl+x r


sessions

Wyświetl listę i przełączaj się między sesjami. Aliasy: /resume, /continue

/sessions

Keybind: ctrl+x l


share

Udostępnij bieżącą sesję. Dowiedz się więcej.

/share

Keybind: ctrl+x s


themes

Lista dostępnych motywów.

/theme

Keybind: ctrl+x t


thinking

Przełącz widoczność bloków myślenia/rozumowania w rozmowie. Po włączeniu tej opcji można zobaczyć proces wnioskowania modelu w przypadku modeli obsługujących myślenie rozszerzone.

/thinking

undo

Cofnij ostatnią wiadomość w rozmowie. Usuwa najnowszą wiadomość użytkownika, wszystkie kolejne odpowiedzi i wszelkie zmiany w plikach.

Wewnętrznie używa Git do zarządzania zmianami plików. Więc Twój projekt ** musi be a Git repository**.

/undo

Keybind: ctrl+x u


unshare

Anuluj udostępnianie bieżącej sesji. Dowiedz się więcej.

/unshare

Konfiguracja edytora

Zarówno polecenia /editor, jak i /export korzystają z edytora określonego w zmiennej środowiskowej EDITOR.

Okno terminala
# 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"

Aby było to trwałe, dodaj to do swojego profilu shell; ~/.bashrc, ~/.zshrc, etc.

Popularne opcje edytora:

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

Niektórzy edytory potrzebują argumentów wiersza poleceń, aby działać w trybie blokowania. Flaga --wait blokuje proces edytora aż do jego zamknięcia.


Skonfiguruj

Możesz dostosować zachowanie TUI za pomocą pliku tui.json (lub tui.jsonc).

tui.json
{
"$schema": "./schema/tui.json",
"theme": "aicippyCode",
"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": "aicippy-code.default",
"sounds": {
"error": "./sounds/error.mp3"
}
}
}

Jest to oddzielny plik od aicippy-code.json, który konfiguruje zachowanie serwera/runtime.

keybinds jest łączone z wbudowanymi wartościami domyślnymi, więc wystarczy skonfigurować tylko te skróty, które chcesz zmienić.

Opcje

  • theme - Ustawia motyw interfejsu. Dowiedz się więcej.
  • keybinds - Dostosowuje skróty klawiszowe. Dowiedz się więcej.
  • leader_timeout - Określa, jak długo AicippY czeka po naciśnięciu leader key. Domyślnie 2000.
  • scroll_acceleration.enabled — Włącz przyspieszenie przewijania w stylu macOS, aby zapewnić płynne, naturalne przewijanie. Po włączeniu prędkość przewijania wzrasta wraz z szybkimi gestami przewijania i pozostaje precyzyjna w przypadku wolniejszych ruchów. To ustawienie ma pierwszeństwo przed scroll_speed i zastępuje je, gdy jest włączone.
  • scroll_speed - Kontroluje szybkość przewijania TUI podczas korzystania z poleceń przewijania (minimum: 0.001, obsługuje wartości dziesiętne). Wartość domyślna to 3. Uwaga: jest to ignorowane, jeśli scroll_acceleration.enabled jest ustawione na true.
  • diff_style - Steruje renderowaniem różnic. "auto" dostosowuje się do szerokości terminala, "stacked" zawsze pokazuje układ jednokolumnowy.
  • mouse - Włącza lub wyłącza przechwytywanie myszy w TUI (domyślnie true). Po wyłączeniu zachowane zostaje natywne zachowanie terminala przy zaznaczaniu i przewijaniu myszą.
  • attention - Konfiguruje powiadomienia pulpitu i dźwięki TUI. Domyślnie wyłączone.

Użyj AICIPPY_CODE_TUI_CONFIG, aby załadować niestandardową ścieżkę konfiguracji TUI.

Attention

Attention pozwala TUI powiadomić Cię, gdy AicippY czeka na odpowiedź, wymaga zatwierdzenia uprawnienia, zgłasza błąd sesji albo informuje o zakończeniu sesji. Włącz tę funkcję za pomocą attention.enabled; wbudowane zdarzenia odtwarzają dźwięk, gdy wystąpią. Powiadomienia pulpitu są wysyłane tylko wtedy, gdy okno terminala nie jest aktywne, i nie są używane dla zdarzeń subagent.

  • enabled - Włącza wszystkie powiadomienia i dźwięki Attention. Domyślnie false.
  • notifications - Gdy Attention jest włączone, pozwala TUI wysyłać powiadomienia pulpitu przez terminal. Domyślnie true.
  • sound - Gdy Attention jest włączone, pozwala odtwarzać dźwięki powiadomień. Domyślnie true.
  • volume - Domyślna głośność dźwięków powiadomień od 0 do 1. Domyślnie 0.4.
  • sound_pack - ID sound pack do użycia. Domyślnie aicippy-code.default.
  • sounds - Ustawia niestandardowe pliki dźwiękowe dla default, question, permission, error, done lub subagent_done. Ścieżki mogą być bezwzględne, być URL-ami file:// albo być względne względem tui.json.

Personalizacja

Za pomocą palety poleceń (ctrl+x h lub /help) można dostosować różne aspekty widoku TUI. Te ustawienia są zachowywane po ponownym uruchomieniu.


Wyświetlanie nazwy użytkownika

Włącz lub wyłącz wyświetlanie Twojej nazwy użytkownika w wiadomościach na czacie. Dostęp do tego poprzez:

  • Paleta poleceń: Wyszukaj „nazwę użytkownika” lub „ukryj nazwę użytkownika”
  • Ustawienie zostanie zapamiętane automatycznie i będzie pamiętane podczas sesji TUI