OpenCode – 오픈소스 AI 코딩 에이전트
OpenCode – The open source AI coding agent
TL;DR Highlight
터미널·IDE·데스크탑 앱에서 75개 이상의 LLM 프로바이더를 연결해 쓸 수 있는 오픈소스 AI 코딩 에이전트로, GitHub Copilot·ChatGPT Plus 기존 구독도 그대로 활용 가능하다.
Who Should Read
AI 코딩 툴을 탐색 중인 개발자, 특히 Claude Code나 Aider 같은 기존 도구에 불만이 있거나 여러 LLM 프로바이더를 유연하게 전환하며 쓰고 싶은 백엔드·풀스택 개발자.
Core Mechanics
- OpenCode는 터미널(TUI), 데스크탑 앱(macOS·Windows·Linux 베타), IDE 익스텐션 세 가지 형태로 쓸 수 있는 오픈소스 AI 코딩 에이전트다. GitHub 스타 126K, 기여자 800명, 월 사용자 500만 명 규모로 이미 상당히 성숙한 프로젝트다.
- 75개 이상의 LLM 프로바이더를 지원하며, Claude·GPT·Gemini 같은 상용 모델뿐 아니라 llama.cpp 같은 로컬 모델도 연결할 수 있다. GitHub Copilot이나 ChatGPT Plus/Pro 계정이 있으면 별도 API 키 없이 로그인만으로 바로 사용 가능하다.
- LSP(Language Server Protocol, 코드 자동완성·에러 분석 등을 에디터에 제공하는 표준 프로토콜) 통합이 내장되어 있어 LLM이 현재 프로젝트에 맞는 언어 서버를 자동으로 불러온다. 덕분에 에이전트가 코드 컨텍스트를 더 정확하게 파악할 수 있다.
- 멀티 세션 기능으로 같은 프로젝트에서 여러 에이전트를 병렬로 실행할 수 있고, 서브에이전트마다 다른 모델을 할당하는 것도 가능하다. 예를 들어 태스크 플래너에는 GPT-4.1, 리뷰어에는 다른 모델을 쓰는 식의 워크플로우가 실제로 활용되고 있다.
- `opencode serve` 명령어로 서버 모드로 띄우면 원격에서 접속할 수 있고, 공식 WebUI를 통해 여러 OpenCode 백엔드(VPS 등)를 한 화면에서 관리할 수 있다. TailScale과 조합하면 모바일에서도 에이전트를 원격 조작할 수 있다.
- 코드나 컨텍스트 데이터를 서버에 저장하지 않는 프라이버시 우선 설계를 표방한다. 보안에 민감한 환경에서도 사용할 수 있도록 설계됐다고 밝히고 있다.
- 유료 플랜인 'Zen'을 통해 코딩 에이전트 용도로 벤치마크·검증된 모델 셋을 제공한다. 월 $10짜리 Go 플랜과 조합해 비용 효율적으로 사용한다는 실사용 후기가 있다.
- curl 한 줄(`curl -fsSL https://opencode.ai/install | bash`)로 설치 가능하며, npm·bun·brew·paru 등 다양한 패키지 매니저도 지원한다.
Evidence
- 한 사용자가 '$10 Go 플랜 + 스펙 기반 워크플로우' 조합으로 2개월간 Claude를 완전히 대체했다고 공유했다. GPT-4.1을 태스크 플래너와 리뷰어 서브에이전트에 활용하고, GLM·Kimi 같은 덜 알려진 모델의 무료 티어도 생산성 측면에서 놀라운 수준이었다며 '프론티어 랩의 해자가 빠르게 좁혀지고 있다'는 의견을 남겼다.
- llama.cpp 로컬 모델, Claude, Gemini를 몇 달째 주력 하네스(harness, 여러 AI 도구를 묶어주는 실행 환경)로 쓰고 있다는 사용자가 LSP 통합이 특히 훌륭하다고 평가했다. 이 사용자는 OpenCode 위에 IPC 플러그인 방식의 자기수정 훅 시스템까지 직접 구현했다(opencode-evolve 프로젝트).
- 원격 코딩 용도로 강점이 있다는 의견이 있었다. `opencode serve`로 서버를 띄우고 WebUI에서 여러 VPS 백엔드를 동시 제어하거나 TailScale로 모바일 접속하는 워크플로우가 소개됐다. 다만 버그 사례도 함께 공유됐는데, 노트북 시계가 150ms 앞서 있어서 모바일에서 Sonnet/Opus가 작동하지 않는 ID 생성 버그, 세션 복원 랜덤 실패, 장시간 세션에서 에이전트가 멈추는 현상 등이 보고됐다.
- Aider를 대체해 사용 중이라는 사용자가 있었고, 구독 한도 소진 시 로컬에서 Qwen 3.5를 폴백(fallback)으로 쓰고 있다는 경험도 공유됐다. 로컬 모델은 느려서 구독 모델이 더 편하긴 하지만, 모델 전환 자체는 잘 작동한다고 평가했다.
- 스트리밍 HTTP 클라이언트를 비활성화하는 옵션이 없어 일부 인퍼런스 프로바이더를 연결할 수 없다는 불만이 있었다. 관련 PR이 올라왔지만 '커뮤니티 기준 미준수'를 이유로 닫혔다는 비판도 나왔다. 또한 Ubuntu 24.04 Wayland 환경에서 TUI가 아예 열리지 않는다는 호환성 문제도 보고됐다.
How to Apply
- Claude Code나 Aider를 쓰고 있는데 비용이나 모델 lock-in이 부담스럽다면, curl 한 줄로 OpenCode를 설치한 뒤 기존 GitHub Copilot이나 ChatGPT Plus 계정으로 로그인해 바로 전환할 수 있다. 추가 API 비용 없이 기존 구독을 그대로 활용할 수 있다.
- 태스크 플래너·코더·리뷰어를 별도 에이전트로 분리하고 싶다면 멀티 세션 + 서브에이전트 기능을 활용할 수 있다. 비용이 낮은 모델(GLM, Kimi 무료 티어 등)을 단순 작업에 배치하고, 고성능 모델은 리뷰 단계에만 투입하는 방식으로 비용을 최적화할 수 있다.
- 원격 서버나 여러 VPS에서 에이전트를 운영하는 경우 `opencode serve`로 서버 모드를 띄우고 WebUI를 통해 여러 백엔드를 중앙에서 관리할 수 있다. TailScale과 조합하면 사무실 밖에서도 모바일로 에이전트를 제어하는 원격 코딩 환경을 구성할 수 있다.
- 코딩 외에도 FastAPI 서버와 연동해 범용 에이전트 백엔드로 활용하려는 경우, OpenCode의 skills 기능과 `opencode serve`를 조합하면 에이전트가 외부 API를 도구로 호출하는 구조를 만들 수 있다. Minimax 같은 저렴한 모델과 조합하면 비용 대비 높은 지능을 활용할 수 있다.
Code Example
snippet
# 설치 (bash)
curl -fsSL https://opencode.ai/install | bash
# 또는 npm
npm install -g opencode-ai
# 또는 brew (macOS)
brew install opencode
# 서버 모드로 실행 (원격 접속용)
opencode serve
# 기본 실행 (터미널 TUI)
opencodeTerminology
LSPLanguage Server Protocol의 약자. 코드 자동완성, 에러 표시, 정의로 이동 같은 기능을 에디터와 언어 분석 서버가 표준 방식으로 주고받을 수 있게 해주는 프로토콜이다. VS Code가 이 방식을 대중화했다.
TUITerminal User Interface의 약자. 터미널 화면 안에서 마우스 클릭이나 키보드로 조작할 수 있는 그래픽처럼 보이는 인터페이스다. GUI 앱 없이 SSH 환경에서도 쓸 수 있다는 장점이 있다.
harnessAI 코딩 맥락에서 '하네스'는 LLM을 감싸서 프롬프트 관리, 도구 호출, 세션 관리 등을 처리해주는 실행 프레임워크를 뜻한다. 말 그대로 모델을 '묶어서 제어하는 장치'다.
subagent메인 에이전트가 특정 하위 작업을 위임하는 별도의 에이전트 인스턴스. 예를 들어 태스크를 기획하는 에이전트, 코드를 작성하는 에이전트, 코드를 리뷰하는 에이전트를 각각 분리해서 병렬로 실행할 수 있다.
IPCInter-Process Communication의 약자. 서로 다른 프로세스끼리 데이터를 주고받는 방식이다. OpenCode 플러그인에서는 이를 통해 외부 훅 시스템을 연결하는 데 사용됐다.
Wayland리눅스에서 X11을 대체하는 차세대 디스플레이 서버 프로토콜. 최신 Ubuntu를 포함한 여러 배포판이 기본으로 채택하고 있지만, 일부 TUI 앱에서 호환성 문제가 발생하는 경우가 있다.