OpenDev: 여러 LLM 모델을 사용하여 병렬 에이전트를 실행하고 관리하는 AI 코딩 에이전트 프로젝트

OpenDev 소개

최근 소프트웨어 개발 생태계에서는 대규모 언어 모델(LLM)을 활용하여 코드를 작성하고 문제를 해결하는 AI 코딩 에이전트의 도입이 급격히 늘어나고 있습니다. 하지만 대부분의 기존 도구들은 단일 LLM에 모든 작업을 의존하는 모놀리식(Monolithic) 구조를 띄고 있어, 작업의 성격(추론, 요약, 실행 등)에 따라 비용이나 처리 속도, 성능을 최적화하기 어렵다는 구조적인 한계가 있었습니다. 이러한 맥락에서 새롭게 등장한 OpenDev는 단일 모델의 한계를 극복하고자 컴파운드 AI 시스템(Compound AI System) 아키텍처를 전면적으로 채택한 오픈소스 터미널 네이티브 코딩 에이전트입니다.

OpenDev는 단순히 사용자의 지시에 따라 코드를 생성하는 수동적인 도구가 아닙니다. 자율적으로 계획을 수립하고 실행하며 반복적인 수정 작업까지 수행할 수 있는 사전 주도적(Proactive) 능력을 갖추고 있습니다. 예를 들어, 대규모 리팩토링 작업을 지시한 뒤 자리를 비워도 OpenDev가 스스로 작업을 완료하고 즉시 코드 리뷰가 가능한 Pull Request(PR) 상태로 만들어 줍니다.

특히, OpenDev 프로젝트는 초기 파이썬(Python) 버전에서 러스트(Rust)로 완전히 재작성되어 약 3.7MB라는 놀랍도록 가벼운 릴리즈 바이너리 크기를 달성했습니다. 이를 통해 터미널 환경에서 즉각적인 실행 속도와 최소한의 메모리 점유율을 보장합니다. 터미널 환경에 익숙한 파워 유저를 위한 강력한 TUI(Terminal UI)는 물론, 시각적인 모니터링과 원격 제어를 위한 Web UI까지 동시에 제공하여 언제 어디서든 끊김 없는 개발 워크플로우를 경험할 수 있도록 돕습니다.

또한, OpenDev는 기존에 널리 알려진 다양한 코딩 에이전트 도구들과 비교할 때 명확한 아키텍처적 차이점과 철학을 가집니다.

Claude Code, Codex CLI, Gemini CLI 등과의 비교하면, 이들 도구는 매우 강력하지만 특정 제공업체(Provider)의 생태계와 단일 모델에 종속되는 폐쇄적인 락인(Lock-in) 효과가 발생합니다. 반면 OpenDev는 완전한 오픈소스로 제공되며, 실행, 추론, 검증 등 각각의 워크플로우마다 사용자가 원하는 서로 다른 제공업체의 모델을 독립적으로 조합할 수 있는 절대적인 유연성을 제공합니다.

그 외에도 최근 화제가 되었던 OpenCode와의 비교해보면, OpenCode 역시 TUI와 Web UI, 그리고 LSP 지원 등 훌륭한 기능을 갖춘 오픈소스 에이전트입니다. 하지만 OpenDev는 워크플로우별 세밀한 모델 바인딩, 동시 다발적인 멀티 에이전트 세션 처리, 그리고 컴파운드 AI 오케스트레이션과 같은 고도화된 모듈형 아키텍처를 채택하고 있어 비용과 성능 최적화 측면에서 더 유리합니다.

OpenDev 아키텍처 및 상세 기능

컴파운드 AI 아키텍처와 5대 모듈형 워크플로우

OpenDev 아키텍처의 가장 큰 핵심은 주어진 작업을 여러 특화된 하위 에이전트(Sub-agents)들의 동시 세션으로 분리하여 처리한다는 점입니다. 각 에이전트는 다음의 5가지 모듈화된 워크플로우 슬롯(Slot)을 실행하며, 사용자는 각 슬롯에 특정 LLM을 자유롭게 할당할 수 있습니다.

  • Normal (실행): 실제 코딩 작업과 도구 호출(Tool calls)을 전담하는 기본 실행 모델입니다.

  • Thinking (추론): 복잡한 논리적 추론과 계획 수립을 담당합니다. (설정되지 않은 경우 Normal 모델로 폴백(Fallback) 됩니다.)

  • Compact (요약): 대화 기록이나 컨텍스트가 길어졌을 때 이를 압축하고 요약하는 역할을 수행합니다.

  • Critique (자기 검열): 에이전트의 논리 전개 과정과 결과물을 스스로 검증하고 비판합니다. (필요시 Thinking 모델로 폴백 됩니다.)

  • VLM (비전): 시각적 정보나 이미지 기반의 처리를 담당합니다.

예를 들어, 실제 코드 작성(Normal)에는 성능이 검증된 Claude Opus를, 복잡한 로직을 해결하기 위한 추론(Thinking)에는 GPT-o3를, 단순한 컨텍스트 압축(Compact)에는 빠르고 가벼운 Qwen 모델을 엮어 하나의 거대한 협력 시스템을 구성할 수 있습니다.

9개 이상의 광범위한 멀티 프로바이더 지원

OpenDev는 개발자가 선호하는 최신 AI 모델 환경을 대부분 수용합니다. 현재 OpenAI, Anthropic, Fireworks, Google, Groq, Mistral, DeepInfra, OpenRouter, Azure OpenAI까지 총 9개의 주요 LLM 제공업체를 공식 지원합니다. 설정 파일(~/.opendev/settings.json)을 직접 구성하여 다음과 같이 역할을 분담시킬 수 있습니다.

{
  "model_provider": "anthropic",
  "model": "claude-sonnet-4-20250514",
  "model_thinking_provider": "openai",
  "model_thinking": "o3"
}

더 상세한 설정 관련 내용은 GitHub 저장소의 관련 문서를 참고해주세요.

터미널 TUI 및 Web UI 지원

키보드 기반의 빠른 제어를 선호하는 사용자를 위해 고성능 TUI를 제공하며, 시각적인 관리가 필요한 상황을 위해 React와 Vite 기반의 Web UI(web-ui/ 폴더 내 제공)도 통합되어 있습니다. 특히 Web UI는 원격 세션(Remote sessions)을 지원하므로, 스마트폰으로 간략히 작업을 지시한 뒤 백그라운드에서 OpenDev가 처리하도록 놔두는 유연한 활용이 가능합니다.

MCP (Model Context Protocol) 통합

최근 AI 기술 생태계의 핵심 표준으로 자리 잡고 있는 Model Context Protocol(MCP)을 지원하여, 외부 도구와 데이터 소스들을 AI 에이전트와 동적으로 연결할 수 있습니다. 이를 통해 파일 시스템 접근이나 데이터베이스 질의 등 에이전트의 권한과 도구를 무한하게 확장할 수 있습니다.

# MCP 서버 목록 확인
opendev mcp list

# 새로운 MCP 서버(예: sqlite) 추가 및 활성화
opendev mcp add myserver uvx mcp-server-sqlite
opendev mcp enable myserver

OpenDev 설치 및 빠른 시작 가이드

OpenDev는 Rust로 작성되어 소스 코드를 통해 가볍고 빠르게 빌드 및 설치할 수 있습니다.

먼저, 다음과 같은 과정을 통해 간편하게 설치할 수 있습니다:

# 저장소 복제(clone)
git clone https://github.com/opendev-to/opendev.git
cd opendev

# 빌드 및 실행 파일 복사
cargo build --release -p opendev-cli
cp target/release/opendev ~/.local/bin/

설치 후에는 OpenDev 실행 전 원하는 제공업체의 API 키를 환경 변수로 내보내야 합니다. (예: OPENAI_API_KEY, ANTHROPIC_API_KEY 등)

# 초기 대화형 마법사 실행 (제공업체, 모델, 워크플로우 설정)
opendev config setup

# 대화형 TUI 인터페이스 시작
opendev

# 브라우저 기반 Web UI 시작
opendev run ui

# 비대화형 단일 프롬프트 실행
opendev -p "이 코드베이스의 전체 구조를 설명해줘"

# 중단된 최근 세션 이어서 진행하기
opendev --continue

:github: OpenDev 프로젝트 GitHub 저장소




이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:south_korea:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)

:wrapped_gift: 아래:down_right_arrow:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck:

1개의 좋아요

windows는 현재 바로 설치가 안 되는 거 같네요 없느 kill /libc library로 인해 수정이 필요하네요