---
title: CLI
description: OpenCode CLI options and commands.
---

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

기본적으로 OpenCode CLI는 어떤 인수 없이 실행할 때 [TUI](/docs/tui)를 시작합니다.

```bash
opencode
```

그러나이 페이지에서 문서로 명령을받습니다. OpenCode programmatically와 상호 작용할 수 있습니다.

```bash
opencode run "Explain how closures work in JavaScript"
```

---

### 튜이

OpenCode 터미널 사용자 인터페이스를 시작합니다.

```bash
opencode [project]
```

#### 플래그

| 간선 | 간선 | Description |
| ------------ | ----- | ------------------------------------------ |
| `--continue` | `-c` | 마지막 세션 |
| `--session` | `-s` | 세션 ID|
| `--prompt` | | | 사용 허가 |
| `--model` | `-m` | `-m`의 형태로 사용 가능 |
| `--agent` | | 에이전트 |
| `--port` |||꾸라 안내|
| `--hostname` | | 들러 주세요 |

---

## 명령

OpenCode CLI에는 다음과 같은 명령이 있습니다.

---

## 대리인

OpenCode에 대한 에이전트 관리.

```bash
opencode agent [command]
```

---

### 첨부

`serve` 또는 `web` 명령을 통해 이미 실행되는 OpenCode 백엔드 서버에 터미널을 첨부합니다.

```bash
opencode attach [url]
```

리모트 OpenCode 백엔드를 사용하여 TUI를 사용할 수 있습니다. 예를 들면:

```bash
# Start the backend server for web/mobile access
opencode web --port 4096 --hostname 0.0.0.0

# In another terminal, attach the TUI to the running backend
opencode attach http://10.20.30.40:4096
```

#### 플래그

| 간선 | 간선 | Description |
| ----------- | ----- | --------------------------------- |
| `--dir` | | TUI를 시작하는 작업 디렉토리 |
| `--session` | `-s` | 세션 ID|

---

#### 생성

사용자 정의 구성으로 새로운 에이전트를 만듭니다.

```bash
opencode agent create
```

이 명령은 사용자 정의 시스템 프롬프트 및 도구 구성으로 새로운 에이전트를 만들기 위해 안내합니다.

---

#### 리스트

모든 사용 가능한 에이전트 목록.

```bash
opencode agent list
```

---

## # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

credentials 및 로그인을 관리하는 명령.

```bash
opencode auth [command]
```

---

#### 로그인

OpenCode는 [Models.dev](https://models.dev)의 공급자 목록에 의해 구동되므로 `opencode auth login`를 사용하여 사용하려는 모든 공급자의 API 키를 구성할 수 있습니다. 이것은 `~/.local/share/opencode/auth.json`에서 저장됩니다.

```bash
opencode auth login
```

OpenCode가 시작하면 credentials 파일에서 공급자를로드합니다. 그리고 프로젝트에 있는 환경 또는 `.env` 파일에서 정의된 키가 있다면.

---

#### 리스트

credentials 파일에 저장 한 모든 인증 된 제공 업체를 나열합니다.

```bash
opencode auth list
```

또는 짧은 버전.

```bash
opencode auth ls
```

---

### 로그아웃

credentials 파일에서 삭제하여 공급자에서 로그.

```bash
opencode auth logout
```

---

# # # # github에

저장소 자동화를 위한 GitHub 에이전트 관리.

```bash
opencode github [command]
```

---

### 설치

저장소에 GitHub 에이전트를 설치합니다.

```bash
opencode github install
```

필요한 GitHub Actions 워크플로우를 설정하고 구성 프로세스를 통해 안내합니다. [더 알아보기](/docs/github).

---

#### 실행

GitHub 에이전트를 실행합니다. 이것은 일반적으로 GitHub Actions에서 사용됩니다.

```bash
opencode github run
```

##### 플래그

| 플래그 | 설명 |
| --------- | -------------------------------------- |
| `--event` | GitHub 모의 이벤트 |
| `--token` | GitHub 개인 액세스 토큰 |

---

# # # # mcp를

Model Context Protocol 서버 관리

```bash
opencode mcp [command]
```

---

#### 추가

MCP 서버를 구성에 추가합니다.

```bash
opencode mcp add
```

이 명령은 로컬 또는 원격 MCP 서버를 추가하여 안내합니다.

---

#### 리스트

모든 구성 MCP 서버와 연결 상태를 나열합니다.

```bash
opencode mcp list
```

또는 짧은 버전을 사용합니다.

```bash
opencode mcp ls
```

---

# # # # # # # 오

OAuth-enabled MCP 서버 인증

```bash
opencode mcp auth [name]
```

서버 이름을 제공하지 않으면 OAuth-capable 서버에서 선택할 수 있습니다.

OAuth-capable 서버와 인증 상태를 나열할 수 있습니다.

```bash
opencode mcp auth list
```

또는 짧은 버전을 사용합니다.

```bash
opencode mcp auth ls
```

---

### 로그아웃

MCP 서버의 OAuth 자격 제거.

```bash
opencode mcp logout [name]
```

---

### 디버그

MCP 서버의 OAuth 연결 문제.

```bash
opencode mcp debug <name>
```

---

## 모델

구성 공급자에서 모든 가능한 모델을 나열합니다.

```bash
opencode models [provider]
```

이 명령은 `provider/model` 형식으로 구성된 제공 업체에서 사용할 수있는 모든 모델을 표시합니다.

이것은 [your config](/docs/config/)에서 사용하는 정확한 모델 이름을 파악하는 데 유용합니다.

선택적으로 공급자 ID를 필터 모델로 전달할 수 있습니다.

```bash
opencode models anthropic
```

#### 플래그

| 플래그 | 설명 |
| ----------- | ------------------------------------------------------------ |
| `--refresh` | 모델 캐시를 모델에서 새로 고침 |
| `--verbose` | 더 많은 verbose 모델 출력 사용(비용과 같은 메타데이터 포함) |

`--refresh` 플래그를 사용하여 캐시 모델 목록을 업데이트합니다. 이것은 새로운 모델이 공급자에 추가되었을 때 유용합니다. OpenCode에서 그들을보고 싶습니다.

```bash
opencode models --refresh
```

---

### 실행

직접 프롬프트를 통과하여 비동기 모드에서 opencode를 실행합니다.

```bash
opencode run [message..]
```

이것은 스크립트, 자동화 또는 전체 TUI를 실행하지 않고 빠른 응답을 원할 때 유용합니다. 예를 들어.

```bash "opencode run"
opencode run Explain the use of context in Go
```

`opencode serve` 인스턴스를 실행하여 MCP 서버 콜드 부팅 시간을 각 실행할 수 있습니다.

```bash
# Start a headless server in one terminal
opencode serve

# In another terminal, run commands that attach to it
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
```

#### 플래그

| 간선 | 간선 | Description |
| ------------ | ----- | ------------------------------------------------------------------ |
| `--command` | 실행중인 명령, args의 메시지 사용 |
| `--continue` | `-c` | 마지막 세션 |
| `--session` | `-s` | 세션 ID|
| `--share` | 세션 공유 |
| `--model` | `-m` | `-m`의 형태로 사용 가능 |
| `--agent` | | 에이전트 |
| `--file` | `-f` | 메시지 첨부 파일|
| `--format` | 체재: 기본(formatted) 또는 json(raw JSON 이벤트) |
| `--title` | | 세션의 제목(제공되지 않은 경우 truncated prompt 사용) |
| `--attach` | | 운영 개시 서버(예: http://localhost:4096) |
| `--port` | | 현지 서버 포트|

---

## 서비스

API 액세스를 위한 headless OpenCode 서버를 시작합니다. 완전한 HTTP 인터페이스를 위해 [server docs](/docs/server)를 체크하십시오.

```bash
opencode serve
```

TUI 인터페이스없이 API 액세스를 제공하는 HTTP 서버를 시작합니다. `OPENCODE_SERVER_PASSWORD`를 설정하여 HTTP 기본 auth (`opencode`에 기본적으로 이름을 지정합니다).

#### 플래그

| 플래그 | 설명 |
| ------------ | ------------------------------------------ |
| `--port` | 즐거운 항구 |
| `--hostname` | 듣고 싶은 이름 |
| `--mdns` | 엔터블 mDNS 검색 |
| `--cors` | CORS를 허용하는 추가 브라우저 기원 |

---

### 세션

OpenCode 세션 관리.

```bash
opencode session [command]
```

---

#### 리스트

모든 OpenCode 세션 목록.

```bash
opencode session list
```

##### 플래그

| 간선 | 간선 | Description |
| ------------- | ----- | ------------------------------------ |
| `--max-count` | `-n` | 최근 세션에 제한 |
| `--format` | 산출 체재: 테이블 또는 json (테이블) |

---

### 통계

OpenCode 세션에 대한 토큰 사용 및 비용 통계를 표시합니다.

```bash
opencode stats
```

#### 플래그

| 플래그 | 설명 |
| ----------- | --------------------------------------------------------------------------- |
| `--days` | 지난 N일간의 통계를 보여 주세요(모든 시간) |
| `--tools` | 쇼의 도구 수 |
| `--models` | 모델 사용 내역(기본적으로 숨겨져 있음) 상단 N을 표시할 수 있는 번호|
| `--project` | 프로젝트별 필터링(모든 프로젝트, 빈 문자열: 현재 프로젝트) |

---

### 수출

JSON으로 세션 데이터를 내보내기.

```bash
opencode export [sessionID]
```

세션 ID를 제공하지 않는 경우 사용 가능한 세션에서 선택할 수 있습니다.

---

### 가져오기

JSON 파일 또는 OpenCode 공유 URL에서 세션 데이터를 가져옵니다.

```bash
opencode import <file>
```

로컬 파일 또는 OpenCode 공유 URL에서 가져올 수 있습니다.

```bash
opencode import session.json
opencode import https://opncd.ai/s/abc123
```

---

# # # # 웹

웹 인터페이스로 headless OpenCode 서버를 시작합니다.

```bash
opencode web
```

HTTP 서버를 시작하고 웹 인터페이스를 통해 OpenCode에 액세스하는 웹 브라우저를 엽니 다. `OPENCODE_SERVER_PASSWORD`를 설정하여 HTTP 기본 auth (`opencode`에 기본적으로 이름을 지정합니다).

#### 플래그

| 플래그 | 설명 |
| ------------ | ------------------------------------------ |
| `--port` | 즐거운 항구 |
| `--hostname` | 듣고 싶은 이름 |
| `--mdns` | 엔터블 mDNS 검색 |
| `--cors` | CORS를 허용하는 추가 브라우저 기원 |

---

# # # # 아프

ACP(Agent Client Protocol) 서버를 시작합니다.

```bash
opencode acp
```

이 명령은 nd-JSON을 사용하여 stdin/stdout을 통해 통신하는 ACP 서버를 시작합니다.

#### 플래그

| 플래그 | 설명 |
| ------------ | --------------------- |
| `--cwd` | 작업 디렉토리 |
| `--port` | 즐거운 항구 |
| `--hostname` | 듣고 싶은 이름 |

---

## 제거

OpenCode 제거하고 관련 파일을 제거합니다.

```bash
opencode uninstall
```

#### 플래그

| 간선 | 간선 | Description |
| --------------- | ----- | ------------------------------------------- |
| `--keep-config` | `-c` | 구성 파일 유지 |
| `--keep-data` | `-d` | 세션 데이터 및 스냅샷 유지 |
| `--dry-run` | | 제거하지 않고 제거하는 것
| `--force` | `-f`|확인 프롬프트|

---

### 업그레이드

업데이트 opencode 최신 버전 또는 특정 버전.

```bash
opencode upgrade [target]
```

최신 버전으로 업그레이드하십시오.

```bash
opencode upgrade
```

특정 버전으로 업그레이드하십시오.

```bash
opencode upgrade v0.1.48
```

#### 플래그

| 간선 | 간선 | Description |
| ---------- | ----- | ----------------------------------------------------------------- |
| `--method` | `-m` | 사용중인 설치 방법; 컬, npm, pnpm, bun, brew |

---

## 글로벌 플래그

opencode CLI는 다음의 글로벌 플래그를 사용합니다.

| 간선 | 간선 | Description |
| -------------- | ----- | ------------------------------------ |
| `--help` | `-h` | 디스플레이 도움말 |
| `--version` | `-v` | 인쇄판 번호 |
| `--print-logs` | | 스터디로 로그인 |
| `--log-level` | 로그 레벨(DEBUG, INFO, WARN, ERROR) |

---

## 환경 변수

OpenCode는 환경 변수를 사용하여 구성할 수 있습니다.

| 변하기 쉬운 | 유형 | 묘사 |
| ------------------------------------- | ------- | ------------------------------------------------- |
| `OPENCODE_AUTO_SHARE` | 불린 | 자동 공유 세션 |
| `OPENCODE_GIT_BASH_PATH` | string | Windows에서 실행되는 Git Bash 경로 |
| `OPENCODE_CONFIG` | string | 설정파일 경로 |
| `OPENCODE_CONFIG_DIR` | string | 구성 디렉토리 경로 |
| `OPENCODE_CONFIG_CONTENT` | 문자열 | 인라인 json 구성 내용 |
| `OPENCODE_DISABLE_AUTOUPDATE` | 불린 | 자동 업데이트 체크 아웃 |
| `OPENCODE_DISABLE_PRUNE` | boolean | 오래된 자료의 무능 |
| `OPENCODE_DISABLE_TERMINAL_TITLE` | 불린 | 자동 단말 제목 업데이트 |
| `OPENCODE_PERMISSION` | 문자열 | 인라인 json 권한 설정 |
| `OPENCODE_DISABLE_DEFAULT_PLUGINS` | 불린 | 기본 플러그인 비활성화 |
| `OPENCODE_DISABLE_LSP_DOWNLOAD` | 불린 | 자동 LSP 서버 다운로드 |
| `OPENCODE_ENABLE_EXPERIMENTAL_MODELS` | 불린 | 실험 모델|
| `OPENCODE_DISABLE_AUTOCOMPACT` | boolean | 자동 컨텍스트 컴팩트 |
| `OPENCODE_DISABLE_CLAUDE_CODE` | boolean | `.claude`(prompt + Skill)의 읽을 수 있음 |
| `OPENCODE_DISABLE_CLAUDE_CODE_PROMPT` | 불린 | `~/.claude/CLAUDE.md`를 읽을 수 있습니다 |
| `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS` | 불린 | `.claude/skills` 적재 가능 |
| `OPENCODE_DISABLE_MODELS_FETCH` | boolean | 리모트 소스에서 모델에 익숙하지 않은 모델 |
| `OPENCODE_FAKE_VCS` | string | 시험용 VCS 제공업체 |
| `OPENCODE_DISABLE_FILETIME_CHECK` | boolean | 최적화를 위한 파일 시간 검사 |
| `OPENCODE_CLIENT` | string | 클라이언트 식별자(`cli`와 동일) |
| `OPENCODE_ENABLE_EXA` | 불린 | 엑다 웹 검색 도구 |
| `OPENCODE_SERVER_PASSWORD` | string | `serve`/`web`에 대한 기본 요점 |
| `OPENCODE_SERVER_USERNAME` | string | 기본 사용자 이름(기본 `opencode`) |
| `OPENCODE_MODELS_URL` | string | 모델 구성의 맞춤 URL |

---

### 실험

이 환경변수는 변화하거나 제거될 수 있는 실험적인 특징을 가능하게 합니다.

| 변하기 쉬운 | 유형 | 묘사 |
| ----------------------------------------------- | ------- | --------------------------------------- |
| `OPENCODE_EXPERIMENTAL` | 불린 | 모든 실험적인 특징 |
| `OPENCODE_EXPERIMENTAL_ICON_DISCOVERY` | boolean | 아이콘 검색 |
| `OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT` | 불린 | TUI의 선택 해제
| `OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | 번호 | ms에서 bash 명령의 기본 시간 |
| `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | 번호 | LLM 응답을 위한 최대 출력 토큰 |
| `OPENCODE_EXPERIMENTAL_FILEWATCHER` | boolean | 전체 디디터용 파일워커 |
| `OPENCODE_EXPERIMENTAL_OXFMT` | 불린 | 엔블 oxfmt 형식 |
| `OPENCODE_EXPERIMENTAL_LSP_TOOL` | 불린 | 실험적인 LSP 도구 |
| `OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER` | boolean | 사용 가능한 파일워커 |
| `OPENCODE_EXPERIMENTAL_EXA` | boolean | 실험용 Exa 기능 |
| `OPENCODE_EXPERIMENTAL_LSP_TY` | 불린 | 실험적인 LSP형 검사 |
| `OPENCODE_EXPERIMENTAL_MARKDOWN` | boolean | 실험용 마운팅 기능 |
| `OPENCODE_EXPERIMENTAL_PLAN_MODE` | 불린 | 플랜 모드 |
