cli.mdx 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602
  1. ---
  2. title: CLI
  3. description: OpenCode CLI options and commands.
  4. ---
  5. import { Tabs, TabItem } from "@astrojs/starlight/components"
  6. 기본적으로 OpenCode CLI는 어떤 인수 없이 실행할 때 [TUI](/docs/tui)를 시작합니다.
  7. ```bash
  8. opencode
  9. ```
  10. 그러나이 페이지에서 문서로 명령을받습니다. OpenCode programmatically와 상호 작용할 수 있습니다.
  11. ```bash
  12. opencode run "Explain how closures work in JavaScript"
  13. ```
  14. ---
  15. ### 튜이
  16. OpenCode 터미널 사용자 인터페이스를 시작합니다.
  17. ```bash
  18. opencode [project]
  19. ```
  20. #### 플래그
  21. | 플래그 | 짧은 이름 | 설명 |
  22. | ------------ | --------- | ----------------------------------------------------------------- |
  23. | `--continue` | `-c` | 마지막 세션 계속하기 |
  24. | `--session` | `-s` | 계속할 세션 ID |
  25. | `--fork` | | 계속 시 세션 포크하기 (`--continue` 또는 `--session`과 함께 사용) |
  26. | `--prompt` | | 사용할 프롬프트 |
  27. | `--model` | `-m` | `provider/model` 형식의 모델 |
  28. | `--agent` | | 사용할 에이전트 |
  29. | `--port` | | 수신 대기할 포트 |
  30. | `--hostname` | | 수신 대기할 호스트명 |
  31. ---
  32. ## 명령
  33. OpenCode CLI에는 다음과 같은 명령이 있습니다.
  34. ---
  35. ## 대리인
  36. OpenCode에 대한 에이전트 관리.
  37. ```bash
  38. opencode agent [command]
  39. ```
  40. ---
  41. ### 첨부
  42. `serve` 또는 `web` 명령을 통해 이미 실행되는 OpenCode 백엔드 서버에 터미널을 첨부합니다.
  43. ```bash
  44. opencode attach [url]
  45. ```
  46. 리모트 OpenCode 백엔드를 사용하여 TUI를 사용할 수 있습니다. 예를 들면:
  47. ```bash
  48. # Start the backend server for web/mobile access
  49. opencode web --port 4096 --hostname 0.0.0.0
  50. # In another terminal, attach the TUI to the running backend
  51. opencode attach http://10.20.30.40:4096
  52. ```
  53. #### 플래그
  54. | 간선 | 간선 | Description |
  55. | ----------- | ---- | ---------------------------- |
  56. | `--dir` | | TUI를 시작하는 작업 디렉토리 |
  57. | `--session` | `-s` | 세션 ID |
  58. ---
  59. #### 생성
  60. 사용자 정의 구성으로 새로운 에이전트를 만듭니다.
  61. ```bash
  62. opencode agent create
  63. ```
  64. 이 명령은 사용자 정의 시스템 프롬프트 및 도구 구성으로 새로운 에이전트를 만들기 위해 안내합니다.
  65. ---
  66. #### 리스트
  67. 모든 사용 가능한 에이전트 목록.
  68. ```bash
  69. opencode agent list
  70. ```
  71. ---
  72. ##
  73. credentials 및 로그인을 관리하는 명령.
  74. ```bash
  75. opencode auth [command]
  76. ```
  77. ---
  78. #### 로그인
  79. OpenCode는 [Models.dev](https://models.dev)의 공급자 목록에 의해 구동되므로 `opencode auth login`를 사용하여 사용하려는 모든 공급자의 API 키를 구성할 수 있습니다. 이것은 `~/.local/share/opencode/auth.json`에서 저장됩니다.
  80. ```bash
  81. opencode auth login
  82. ```
  83. OpenCode가 시작하면 credentials 파일에서 공급자를로드합니다. 그리고 프로젝트에 있는 환경 또는 `.env` 파일에서 정의된 키가 있다면.
  84. ---
  85. #### 리스트
  86. credentials 파일에 저장 한 모든 인증 된 제공 업체를 나열합니다.
  87. ```bash
  88. opencode auth list
  89. ```
  90. 또는 짧은 버전.
  91. ```bash
  92. opencode auth ls
  93. ```
  94. ---
  95. ### 로그아웃
  96. credentials 파일에서 삭제하여 공급자에서 로그.
  97. ```bash
  98. opencode auth logout
  99. ```
  100. ---
  101. #### github에
  102. 저장소 자동화를 위한 GitHub 에이전트 관리.
  103. ```bash
  104. opencode github [command]
  105. ```
  106. ---
  107. ### 설치
  108. 저장소에 GitHub 에이전트를 설치합니다.
  109. ```bash
  110. opencode github install
  111. ```
  112. 필요한 GitHub Actions 워크플로우를 설정하고 구성 프로세스를 통해 안내합니다. [더 알아보기](/docs/github).
  113. ---
  114. #### 실행
  115. GitHub 에이전트를 실행합니다. 이것은 일반적으로 GitHub Actions에서 사용됩니다.
  116. ```bash
  117. opencode github run
  118. ```
  119. ##### 플래그
  120. | 플래그 | 설명 |
  121. | --------- | ----------------------- |
  122. | `--event` | GitHub 모의 이벤트 |
  123. | `--token` | GitHub 개인 액세스 토큰 |
  124. ---
  125. #### mcp를
  126. Model Context Protocol 서버 관리
  127. ```bash
  128. opencode mcp [command]
  129. ```
  130. ---
  131. #### 추가
  132. MCP 서버를 구성에 추가합니다.
  133. ```bash
  134. opencode mcp add
  135. ```
  136. 이 명령은 로컬 또는 원격 MCP 서버를 추가하여 안내합니다.
  137. ---
  138. #### 리스트
  139. 모든 구성 MCP 서버와 연결 상태를 나열합니다.
  140. ```bash
  141. opencode mcp list
  142. ```
  143. 또는 짧은 버전을 사용합니다.
  144. ```bash
  145. opencode mcp ls
  146. ```
  147. ---
  148. ###### 오
  149. OAuth-enabled MCP 서버 인증
  150. ```bash
  151. opencode mcp auth [name]
  152. ```
  153. 서버 이름을 제공하지 않으면 OAuth-capable 서버에서 선택할 수 있습니다.
  154. OAuth-capable 서버와 인증 상태를 나열할 수 있습니다.
  155. ```bash
  156. opencode mcp auth list
  157. ```
  158. 또는 짧은 버전을 사용합니다.
  159. ```bash
  160. opencode mcp auth ls
  161. ```
  162. ---
  163. ### 로그아웃
  164. MCP 서버의 OAuth 자격 제거.
  165. ```bash
  166. opencode mcp logout [name]
  167. ```
  168. ---
  169. ### 디버그
  170. MCP 서버의 OAuth 연결 문제.
  171. ```bash
  172. opencode mcp debug <name>
  173. ```
  174. ---
  175. ## 모델
  176. 구성 공급자에서 모든 가능한 모델을 나열합니다.
  177. ```bash
  178. opencode models [provider]
  179. ```
  180. 이 명령은 `provider/model` 형식으로 구성된 제공 업체에서 사용할 수있는 모든 모델을 표시합니다.
  181. 이것은 [your config](/docs/config/)에서 사용하는 정확한 모델 이름을 파악하는 데 유용합니다.
  182. 선택적으로 공급자 ID를 필터 모델로 전달할 수 있습니다.
  183. ```bash
  184. opencode models anthropic
  185. ```
  186. #### 플래그
  187. | 플래그 | 설명 |
  188. | ----------- | ----------------------------------------------------------- |
  189. | `--refresh` | 모델 캐시를 모델에서 새로 고침 |
  190. | `--verbose` | 더 많은 verbose 모델 출력 사용(비용과 같은 메타데이터 포함) |
  191. `--refresh` 플래그를 사용하여 캐시 모델 목록을 업데이트합니다. 이것은 새로운 모델이 공급자에 추가되었을 때 유용합니다. OpenCode에서 그들을보고 싶습니다.
  192. ```bash
  193. opencode models --refresh
  194. ```
  195. ---
  196. ### 실행
  197. 직접 프롬프트를 통과하여 비동기 모드에서 opencode를 실행합니다.
  198. ```bash
  199. opencode run [message..]
  200. ```
  201. 이것은 스크립트, 자동화 또는 전체 TUI를 실행하지 않고 빠른 응답을 원할 때 유용합니다. 예를 들어.
  202. ```bash "opencode run"
  203. opencode run Explain the use of context in Go
  204. ```
  205. `opencode serve` 인스턴스를 실행하여 MCP 서버 콜드 부팅 시간을 각 실행할 수 있습니다.
  206. ```bash
  207. # Start a headless server in one terminal
  208. opencode serve
  209. # In another terminal, run commands that attach to it
  210. opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
  211. ```
  212. #### 플래그
  213. | 플래그 | 짧은 이름 | 설명 |
  214. | ------------ | --------- | ----------------------------------------------------- |
  215. | `--command` | | 실행 중인 명령 사용(미지정 시 args의 메시지 사용) |
  216. | `--continue` | `-c` | 마지막 세션 |
  217. | `--session` | `-s` | 세션 ID |
  218. | `--share` | | 세션 공유 |
  219. | `--model` | `-m` | `-m`의 형태로 사용 가능 |
  220. | `--agent` | | 에이전트 |
  221. | `--file` | `-f` | 메시지 첨부 파일 |
  222. | `--format` | | 출력 형식: formatted 또는 json(raw JSON 이벤트) |
  223. | `--title` | | 세션의 제목(제공되지 않은 경우 truncated prompt 사용) |
  224. | `--attach` | | 운영 개시 서버(예: http://localhost:4096) |
  225. | `--port` | | 현지 서버 포트 |
  226. ---
  227. ## 서비스
  228. API 액세스를 위한 headless OpenCode 서버를 시작합니다. 완전한 HTTP 인터페이스를 위해 [server docs](/docs/server)를 체크하십시오.
  229. ```bash
  230. opencode serve
  231. ```
  232. TUI 인터페이스없이 API 액세스를 제공하는 HTTP 서버를 시작합니다. `OPENCODE_SERVER_PASSWORD`를 설정하여 HTTP 기본 auth (`opencode`에 기본적으로 이름을 지정합니다).
  233. #### 플래그
  234. | 플래그 | 설명 |
  235. | ------------ | ---------------------------------- |
  236. | `--port` | 즐거운 항구 |
  237. | `--hostname` | 듣고 싶은 이름 |
  238. | `--mdns` | 엔터블 mDNS 검색 |
  239. | `--cors` | CORS를 허용하는 추가 브라우저 기원 |
  240. ---
  241. ### 세션
  242. OpenCode 세션 관리.
  243. ```bash
  244. opencode session [command]
  245. ```
  246. ---
  247. #### 리스트
  248. 모든 OpenCode 세션 목록.
  249. ```bash
  250. opencode session list
  251. ```
  252. ##### 플래그
  253. | 플래그 | 짧은 이름 | 설명 |
  254. | ------------- | --------- | -------------------------- |
  255. | `--max-count` | `-n` | 최근 세션에 제한 |
  256. | `--format` | | 출력 형식: table 또는 json |
  257. ---
  258. ### 통계
  259. OpenCode 세션에 대한 토큰 사용 및 비용 통계를 표시합니다.
  260. ```bash
  261. opencode stats
  262. ```
  263. #### 플래그
  264. | 플래그 | 설명 |
  265. | ----------- | ------------------------------------------------------------------- |
  266. | `--days` | 지난 N일간의 통계를 보여 주세요(모든 시간) |
  267. | `--tools` | 쇼의 도구 수 |
  268. | `--models` | 모델 사용 내역(기본적으로 숨겨져 있음) 상단 N을 표시할 수 있는 번호 |
  269. | `--project` | 프로젝트별 필터링(모든 프로젝트, 빈 문자열: 현재 프로젝트) |
  270. ---
  271. ### 수출
  272. JSON으로 세션 데이터를 내보내기.
  273. ```bash
  274. opencode export [sessionID]
  275. ```
  276. 세션 ID를 제공하지 않는 경우 사용 가능한 세션에서 선택할 수 있습니다.
  277. ---
  278. ### 가져오기
  279. JSON 파일 또는 OpenCode 공유 URL에서 세션 데이터를 가져옵니다.
  280. ```bash
  281. opencode import <file>
  282. ```
  283. 로컬 파일 또는 OpenCode 공유 URL에서 가져올 수 있습니다.
  284. ```bash
  285. opencode import session.json
  286. opencode import https://opncd.ai/s/abc123
  287. ```
  288. ---
  289. #### 웹
  290. 웹 인터페이스로 headless OpenCode 서버를 시작합니다.
  291. ```bash
  292. opencode web
  293. ```
  294. HTTP 서버를 시작하고 웹 인터페이스를 통해 OpenCode에 액세스하는 웹 브라우저를 엽니 다. `OPENCODE_SERVER_PASSWORD`를 설정하여 HTTP 기본 auth (`opencode`에 기본적으로 이름을 지정합니다).
  295. #### 플래그
  296. | 플래그 | 설명 |
  297. | ------------ | ---------------------------------- |
  298. | `--port` | 즐거운 항구 |
  299. | `--hostname` | 듣고 싶은 이름 |
  300. | `--mdns` | 엔터블 mDNS 검색 |
  301. | `--cors` | CORS를 허용하는 추가 브라우저 기원 |
  302. ---
  303. #### 아프
  304. ACP(Agent Client Protocol) 서버를 시작합니다.
  305. ```bash
  306. opencode acp
  307. ```
  308. 이 명령은 nd-JSON을 사용하여 stdin/stdout을 통해 통신하는 ACP 서버를 시작합니다.
  309. #### 플래그
  310. | 플래그 | 설명 |
  311. | ------------ | -------------- |
  312. | `--cwd` | 작업 디렉토리 |
  313. | `--port` | 즐거운 항구 |
  314. | `--hostname` | 듣고 싶은 이름 |
  315. ---
  316. ## 제거
  317. OpenCode 제거하고 관련 파일을 제거합니다.
  318. ```bash
  319. opencode uninstall
  320. ```
  321. #### 플래그
  322. | 간선 | 간선 | Description |
  323. | --------------- | ---- | -------------------------- |
  324. | `--keep-config` | `-c` | 구성 파일 유지 |
  325. | `--keep-data` | `-d` | 세션 데이터 및 스냅샷 유지 |
  326. | `--dry-run` | | 제거하지 않고 제거하는 것 |
  327. | `--force` | `-f` | 확인 프롬프트 |
  328. ---
  329. ### 업그레이드
  330. 업데이트 opencode 최신 버전 또는 특정 버전.
  331. ```bash
  332. opencode upgrade [target]
  333. ```
  334. 최신 버전으로 업그레이드하십시오.
  335. ```bash
  336. opencode upgrade
  337. ```
  338. 특정 버전으로 업그레이드하십시오.
  339. ```bash
  340. opencode upgrade v0.1.48
  341. ```
  342. #### 플래그
  343. | 간선 | 간선 | Description |
  344. | ---------- | ---- | -------------------------------------------- |
  345. | `--method` | `-m` | 사용중인 설치 방법; 컬, npm, pnpm, bun, brew |
  346. ---
  347. ## 글로벌 플래그
  348. opencode CLI는 다음의 글로벌 플래그를 사용합니다.
  349. | 플래그 | 짧은 이름 | 설명 |
  350. | -------------- | --------- | ----------------------------------- |
  351. | `--help` | `-h` | 디스플레이 도움말 |
  352. | `--version` | `-v` | 인쇄판 번호 |
  353. | `--print-logs` | | 스터디로 로그인 |
  354. | `--log-level` | | 로그 레벨(DEBUG, INFO, WARN, ERROR) |
  355. ---
  356. ## 환경 변수
  357. OpenCode는 환경 변수를 사용하여 구성할 수 있습니다.
  358. | 변하기 쉬운 | 유형 | 묘사 |
  359. | ------------------------------------- | ------- | ----------------------------------------- |
  360. | `OPENCODE_AUTO_SHARE` | 불린 | 자동 공유 세션 |
  361. | `OPENCODE_GIT_BASH_PATH` | string | Windows에서 실행되는 Git Bash 경로 |
  362. | `OPENCODE_CONFIG` | string | 설정파일 경로 |
  363. | `OPENCODE_CONFIG_DIR` | string | 구성 디렉토리 경로 |
  364. | `OPENCODE_CONFIG_CONTENT` | 문자열 | 인라인 json 구성 내용 |
  365. | `OPENCODE_DISABLE_AUTOUPDATE` | 불린 | 자동 업데이트 체크 아웃 |
  366. | `OPENCODE_DISABLE_PRUNE` | boolean | 오래된 자료의 무능 |
  367. | `OPENCODE_DISABLE_TERMINAL_TITLE` | 불린 | 자동 단말 제목 업데이트 |
  368. | `OPENCODE_PERMISSION` | 문자열 | 인라인 json 권한 설정 |
  369. | `OPENCODE_DISABLE_DEFAULT_PLUGINS` | 불린 | 기본 플러그인 비활성화 |
  370. | `OPENCODE_DISABLE_LSP_DOWNLOAD` | 불린 | 자동 LSP 서버 다운로드 |
  371. | `OPENCODE_ENABLE_EXPERIMENTAL_MODELS` | 불린 | 실험 모델 |
  372. | `OPENCODE_DISABLE_AUTOCOMPACT` | boolean | 자동 컨텍스트 컴팩트 |
  373. | `OPENCODE_DISABLE_CLAUDE_CODE` | boolean | `.claude`(prompt + Skill)의 읽을 수 있음 |
  374. | `OPENCODE_DISABLE_CLAUDE_CODE_PROMPT` | 불린 | `~/.claude/CLAUDE.md`를 읽을 수 있습니다 |
  375. | `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS` | 불린 | `.claude/skills` 적재 가능 |
  376. | `OPENCODE_DISABLE_MODELS_FETCH` | boolean | 리모트 소스에서 모델에 익숙하지 않은 모델 |
  377. | `OPENCODE_FAKE_VCS` | string | 시험용 VCS 제공업체 |
  378. | `OPENCODE_DISABLE_FILETIME_CHECK` | boolean | 최적화를 위한 파일 시간 검사 |
  379. | `OPENCODE_CLIENT` | string | 클라이언트 식별자(`cli`와 동일) |
  380. | `OPENCODE_ENABLE_EXA` | 불린 | 엑다 웹 검색 도구 |
  381. | `OPENCODE_SERVER_PASSWORD` | string | `serve`/`web`에 대한 기본 요점 |
  382. | `OPENCODE_SERVER_USERNAME` | string | 기본 사용자 이름(기본 `opencode`) |
  383. | `OPENCODE_MODELS_URL` | string | 모델 구성의 맞춤 URL |
  384. ---
  385. ### 실험
  386. 이 환경변수는 변화하거나 제거될 수 있는 실험적인 특징을 가능하게 합니다.
  387. | 변하기 쉬운 | 유형 | 묘사 |
  388. | ----------------------------------------------- | ------- | ------------------------------ |
  389. | `OPENCODE_EXPERIMENTAL` | 불린 | 모든 실험적인 특징 |
  390. | `OPENCODE_EXPERIMENTAL_ICON_DISCOVERY` | boolean | 아이콘 검색 |
  391. | `OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT` | 불린 | TUI의 선택 해제 |
  392. | `OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | 번호 | ms에서 bash 명령의 기본 시간 |
  393. | `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | 번호 | LLM 응답을 위한 최대 출력 토큰 |
  394. | `OPENCODE_EXPERIMENTAL_FILEWATCHER` | boolean | 전체 디디터용 파일워커 |
  395. | `OPENCODE_EXPERIMENTAL_OXFMT` | 불린 | 엔블 oxfmt 형식 |
  396. | `OPENCODE_EXPERIMENTAL_LSP_TOOL` | 불린 | 실험적인 LSP 도구 |
  397. | `OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER` | boolean | 사용 가능한 파일워커 |
  398. | `OPENCODE_EXPERIMENTAL_EXA` | boolean | 실험용 Exa 기능 |
  399. | `OPENCODE_EXPERIMENTAL_LSP_TY` | 불린 | 실험적인 LSP형 검사 |
  400. | `OPENCODE_EXPERIMENTAL_MARKDOWN` | boolean | 실험용 마운팅 기능 |
  401. | `OPENCODE_EXPERIMENTAL_PLAN_MODE` | 불린 | 플랜 모드 |