mirror of
https://gitea.toothfairyai.com/ToothFairyAI/tf_code.git
synced 2026-04-14 04:34:47 +00:00
391 lines
7.6 KiB
Plaintext
391 lines
7.6 KiB
Plaintext
---
|
|
title: TUI
|
|
description: Using the opencode terminal user interface.
|
|
---
|
|
|
|
import { Tabs, TabItem } from "@astrojs/starlight/components"
|
|
|
|
opencode는 LLM과 함께 프로젝트를 위해 대화형 terminal 인터페이스 또는 TUI를 제공합니다.
|
|
|
|
opencode는 현재 디렉토리에 TUI를 시작합니다.
|
|
|
|
```bash
|
|
opencode
|
|
```
|
|
|
|
또는 특정 작업 디렉토리에 대해 시작할 수 있습니다.
|
|
|
|
```bash
|
|
opencode /path/to/project
|
|
```
|
|
|
|
TUI에 있다면 메시지가 표시됩니다.
|
|
|
|
```text
|
|
Give me a quick summary of the codebase.
|
|
```
|
|
|
|
---
|
|
|
|
## 파일 참조
|
|
|
|
`@`를 사용하여 메시지에 파일을 참조 할 수 있습니다. 이것은 현재 작업 디렉토리에서 fuzzy 파일 검색입니다.
|
|
|
|
:::tip
|
|
`@`를 사용하여 메시지의 참조 파일을 사용할 수 있습니다.
|
|
:::
|
|
|
|
```text "@packages/functions/src/api/index.ts"
|
|
How is auth handled in @packages/functions/src/api/index.ts?
|
|
```
|
|
|
|
파일의 내용이 자동으로 대화에 추가됩니다.
|
|
|
|
---
|
|
|
|
## Bash 명령
|
|
|
|
`!`를 사용하여 shell 명령을 실행합니다.
|
|
|
|
```bash frame="none"
|
|
!ls -la
|
|
```
|
|
|
|
명령의 출력은 도구 결과로 대화에 추가됩니다.
|
|
|
|
---
|
|
|
|
## 명령
|
|
|
|
opencode TUI를 사용할 때, `/`를 입력하여 명령 이름을 따라 작업을 신속하게 실행할 수 있습니다. 예를 들면:
|
|
|
|
```bash frame="none"
|
|
/help
|
|
```
|
|
|
|
대부분의 명령은 `ctrl+x`를 `ctrl+x`가 기본 리더 키입니다. [더 알아보기](/docs/keybinds).
|
|
|
|
여기에 모든 가능한 슬래시 명령이 있습니다.
|
|
|
|
---
|
|
|
|
### 연결
|
|
|
|
opencode에 대한 공급자를 추가합니다. 사용 가능한 공급자에서 선택하고 API 키를 추가 할 수 있습니다.
|
|
|
|
```bash frame="none"
|
|
/connect
|
|
```
|
|
|
|
---
|
|
|
|
### 콤팩트
|
|
|
|
현재 세션을 압축합니다. 앨리스 : `/summarize`
|
|
|
|
```bash frame="none"
|
|
/compact
|
|
```
|
|
|
|
** Keybind:** `ctrl+x c`
|
|
|
|
---
|
|
|
|
### 세부사항
|
|
|
|
토글 툴 실행 세부 사항.
|
|
|
|
```bash frame="none"
|
|
/details
|
|
```
|
|
|
|
** Keybind:** `ctrl+x d`
|
|
|
|
---
|
|
|
|
### 편집기
|
|
|
|
메시지를 작성하기 위한 외부 편집기를 엽니다. `EDITOR` 환경에서 설정된 편집기를 사용합니다. [더 알아보기](#editor-setup).
|
|
|
|
```bash frame="none"
|
|
/editor
|
|
```
|
|
|
|
** Keybind:** `ctrl+x e`
|
|
|
|
---
|
|
|
|
### 출구
|
|
|
|
opencode를 종료합니다. Aliases : `/quit`, `/q`
|
|
|
|
```bash frame="none"
|
|
/exit
|
|
```
|
|
|
|
** Keybind:** `ctrl+x q`
|
|
|
|
---
|
|
|
|
### 수출
|
|
|
|
Markdown에 대한 현재 대화를 내보내고 기본 편집기에서 열립니다. `EDITOR` 환경에서 설정된 편집기를 사용합니다. [더 알아보기](#editor-setup).
|
|
|
|
```bash frame="none"
|
|
/export
|
|
```
|
|
|
|
** Keybind:** `ctrl+x x`
|
|
|
|
---
|
|
|
|
### 도움
|
|
|
|
도움말 대화 상자를 표시합니다.
|
|
|
|
```bash frame="none"
|
|
/help
|
|
```
|
|
|
|
** Keybind:** `ctrl+x h`
|
|
|
|
---
|
|
|
|
###### 인
|
|
|
|
`AGENTS.md` 파일을 만들거나 업데이트하십시오. [더 알아보기](/docs/rules).
|
|
|
|
```bash frame="none"
|
|
/init
|
|
```
|
|
|
|
** Keybind:** `ctrl+x i`
|
|
|
|
---
|
|
|
|
## 모델
|
|
|
|
사용 가능한 모델 목록.
|
|
|
|
```bash frame="none"
|
|
/models
|
|
```
|
|
|
|
** Keybind:** `ctrl+x m`
|
|
|
|
---
|
|
|
|
## 새로운
|
|
|
|
새로운 세션을 시작합니다. 앨리스 : `/clear`
|
|
|
|
```bash frame="none"
|
|
/new
|
|
```
|
|
|
|
** Keybind:** `ctrl+x n`
|
|
|
|
---
|
|
|
|
##### 재도
|
|
|
|
이전 undone 메시지 Redo. `/undo`를 사용하는 후에만 유효한.
|
|
|
|
:::tip
|
|
모든 파일 변경도 복원됩니다.
|
|
:::
|
|
|
|
내부적으로 Git을 사용하여 파일 변경을 관리합니다. 그래서 프로젝트 **
|
|
Git 저장소**입니다.
|
|
|
|
```bash frame="none"
|
|
/redo
|
|
```
|
|
|
|
** Keybind:** `ctrl+x r`
|
|
|
|
---
|
|
|
|
## 세션
|
|
|
|
세션 간 목록 및 전환. Aliases : `/resume`, `/continue`
|
|
|
|
```bash frame="none"
|
|
/sessions
|
|
```
|
|
|
|
** Keybind:** `ctrl+x l`
|
|
|
|
---
|
|
|
|
## 공유
|
|
|
|
현재 세션 공유. [더 알아보기](/docs/share).
|
|
|
|
```bash frame="none"
|
|
/share
|
|
```
|
|
|
|
** Keybind:** `ctrl+x s`
|
|
|
|
---
|
|
|
|
## 테마
|
|
|
|
사용할 수 있는 테마 목록.
|
|
|
|
```bash frame="none"
|
|
/theme
|
|
```
|
|
|
|
** Keybind:** `ctrl+x t`
|
|
|
|
---
|
|
|
|
### 생각
|
|
|
|
대화의 사고/거주 블록의 가시성을 토합니다. 사용할 때, 확장 된 생각을 지원하는 모델의 이유 프로세스를 볼 수 있습니다.
|
|
|
|
:::note
|
|
이 명령은 생각 블록이 ** 표시되었는지 여부 만 제어 ** - 모델의 소싱 기능을 활성화하거나 비활성화하지 않습니다. toggle 실제적인 reasoning 기능에, 모형 변종을 통해서 주기 위하여 `ctrl+t`를 이용합니다.
|
|
:::
|
|
|
|
```bash frame="none"
|
|
/thinking
|
|
```
|
|
|
|
---
|
|
|
|
##### 취소
|
|
|
|
대화에서 마지막 메시지. 가장 최근의 사용자 메시지, 모든 후속 응답 및 모든 파일 변경 제거.
|
|
|
|
:::tip
|
|
어떤 파일 변경도 복제됩니다.
|
|
:::
|
|
|
|
내부적으로 Git을 사용하여 파일 변경을 관리합니다. 그래서 프로젝트 **
|
|
Git 저장소**입니다.
|
|
|
|
```bash frame="none"
|
|
/undo
|
|
```
|
|
|
|
** Keybind:** `ctrl+x u`
|
|
|
|
---
|
|
|
|
#### 공유
|
|
|
|
Unshare 현재 세션. [더 알아보기](/docs/share#un-sharing).
|
|
|
|
```bash frame="none"
|
|
/unshare
|
|
```
|
|
|
|
---
|
|
|
|
## 에디터 설정
|
|
|
|
`/editor`와 `/export` 명령 모두는 `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"
|
|
```
|
|
|
|
영원한 만들기 위하여, 당신의 shell 프로파일에 이것을 추가하십시오;
|
|
`~/.bashrc`, `~/.zshrc`, 등.
|
|
|
|
</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
|
|
```
|
|
|
|
영구적으로, use **System Properties** > ** 환경
|
|
변수**.
|
|
|
|
</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"
|
|
```
|
|
|
|
영구적으로 만들려면 PowerShell 프로파일에 추가하십시오.
|
|
|
|
</TabItem>
|
|
</Tabs>
|
|
|
|
인기있는 편집기 옵션은 다음과 같습니다 :
|
|
|
|
- `code` - Visual Studio 코드
|
|
- `cursor` - 커서
|
|
- `windsurf` - 윈드 서핑
|
|
- `nvim` - Neovim 편집기
|
|
- `vim` - Vim 편집기
|
|
- `nano` - 나노 편집기
|
|
- `notepad` - 윈도우 노트패드
|
|
- `subl` - 승화 텍스트
|
|
|
|
:::note
|
|
VS Code와 같은 일부 편집기는 `--wait` 플래그와 함께 시작해야합니다.
|
|
:::
|
|
|
|
일부 편집기는 명령줄 인수가 차단 모드에서 실행되어야 합니다. `--wait` 플래그는 닫힐 때까지 편집기 프로세스 블록을 만듭니다.
|
|
|
|
---
|
|
|
|
## 구성
|
|
|
|
opencode config 파일을 통해 TUI 동작을 사용자 정의할 수 있습니다.
|
|
|
|
```json title="opencode.json"
|
|
{
|
|
"$schema": "https://opencode.ai/config.json",
|
|
"tui": {
|
|
"scroll_speed": 3,
|
|
"scroll_acceleration": {
|
|
"enabled": true
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### 옵션
|
|
|
|
- `scroll_acceleration` - 부드러운 자연 스크롤을위한 macOS 스타일 스크롤 가속 가능. 사용할 때, 스크롤 속도는 빠른 스크롤 제스처로 증가하고 느린 움직임을 위해 정확한 유지. **이 설정은 `scroll_speed`를 통해 우선 순위를 부여하고 활성화 할 때. **
|
|
- `scroll_speed` - 스크롤 명령 (최소 : `1`)을 사용하여 TUI 스크롤을 빠르게 제어합니다. 기본 `3`. ** 참고: `scroll_acceleration.enabled`가 `true`로 설정되면 무시됩니다.**
|
|
|
|
---
|
|
|
|
## 사용자 정의
|
|
|
|
명령 팔레트 (`ctrl+x h` 또는 `/help`)를 사용하여 TUI보기의 다양한 측면을 사용자 정의 할 수 있습니다. 재시작에 따른 설정 persist.
|
|
|
|
---
|
|
|
|
#### 사용자 이름 전시
|
|
|
|
사용자 이름이 채팅 메시지에 나타나는지 여부를 수정합니다. 이것을 통해 접근:
|
|
|
|
- 명령 팔레트 : "username" 또는 "hide 사용자" 검색
|
|
- 자동 설정은 TUI 세션을 통해 기억됩니다.
|