AI 코딩, 이제 하네스 경쟁 시대! OpenCode와 OMO로 생산성 UP

by DD
2개월 전
조회수 46

LLM(Large Language Model) 모델 경쟁이 심화되면서, 에이전트 하네스(Agent Harness)의 중요성이 부각됨에 따라, OpenCode와 OMO(Oh-my-opencode) 등장

OpenCode는 터미널, 데스크톱 앱, IDE 확장을 지원하는 오픈소스 AI 코딩 에이전트로, LSP(Language Server Protocol) 지원, 멀티 세션, 플러그인 시스템을 제공

OMO는 OpenCode 위에 구축된 오케스트레이션 레이어로, 다수의 전문 에이전트와 스킬을 묶어 복잡한 작업의 자동화 및 효율성을 향상

OMO는 `ultrawork`, `search`, `analyze` 와 같은 모드를 통해 다양한 작업 환경에 최적화된 기능을 제공하며, 사용자의 작업 효율을 극대화

저자는 OpenCode와 OMO를 활용한 실제 개발 사례를 공유하며, AI 기반 코딩 도구의 활용 전략 제시

에이전트 하네스(Agent Harness)의 등장 배경

본문에서 언급된 바와 같이, LLM(Large Language Model) 모델의 성능 경쟁이 정점에 달하면서, 실제 개발 생산성을 높이는 데에는 에이전트 하네스(Agent Harness)의 역할이 중요해지고 있다. 모델의 성능 향상보다는, 복잡한 작업의 안정적인 완주 능력, 도구 및 컨텍스트 관리, 검증 루프 운영 능력이 핵심 경쟁력으로 부상했다. 에이전트 하네스는 AI 모델을 감싸고, 장기적이고 복잡한 작업을 안정적으로 수행하도록 관리하는 운영 인프라에 해당한다. 이는 LLM의 스케일링 법칙(Scaling Laws) 한계와 SLM(Small Language Model)의 등장과도 관련이 깊다.

OpenCode의 기술적 특징과 작동 원리

OpenCode는 LSP(Language Server Protocol) 기반의 코드 이해, 멀티 세션, 플러그인 지원, 결과 공유 기능을 제공하는 AI 코딩 에이전트 런타임이다. 특히, LSP를 통해 코드베이스와 상호작용하며 진단 정보를 활용하고, 여러 언어에 대한 내장/자동 설치 LSP를 제공한다. OpenCode는 단순히 파일 내용을 모델에 전달하는 수준을 넘어, 정적 분석 계층의 피드백까지 모델 루프에 통합하는 구조를 갖는다. OpenCode는 Build, Plan, General, Explore 와 같은 내장 에이전트를 제공하며, 플러그인 시스템을 통해 기능을 확장한다. 플러그인은 JavaScript/TypeScript 모듈 형태로 훅을 제공하며, 로컬 또는 npm 패키지 방식으로 로드된다.

OMO(Oh-my-opencode)의 핵심 기능과 모드

OMO는 OpenCode 위에 구축된 오케스트레이션 레이어로, 다수의 전문 에이전트, 스킬, 커맨드, 훅을 묶어 제공한다. OMO는 Planner-Sisyphus, Librarian, Explore, Oracle과 같은 전문 에이전트를 제공하며, Sisyphus를 기본 오케스트레이터로 사용한다. OMO는 `ultrawork`, `search`, `analyze` 와 같은 모드를 제공하여, 작업 성격에 따라 최적화된 기능을 사용할 수 있도록 한다. 특히, `ultrawork` 모드는 병렬 에이전트 실행, 백그라운드 작업, 적극적 탐색을 통해 최대 성능을 발휘하며, 대규모 리팩토링, 복잡한 마이그레이션에 적합하다. `search` 모드는 빠른 코드베이스 탐색에, `analyze` 모드는 심층 분석에 특화되어 있다.

OpenCode와 OMO를 활용한 개발 프로세스

저자는 OpenCode와 OMO를 활용한 개발 프로세스를 상세히 설명하며, AI 기반 코딩 도구의 활용 전략을 제시한다. 프로젝트 세팅부터 AI 마크다운(AGENTS.md, SYSTEM_DESIGN.md 등)을 활용하여 개발 환경을 구축하고, 불확실한 요구사항이나 큰 작업에 대해 Prometheus(Plan Builder)를 사용하여 plan을 생성한다. OMO의 `ultrawork` 모드를 통해 병렬 실행을 유도하고, 레거시 코드 파악에는 `search` 모드를 활용한다. 디버깅 및 근본 원인 분석에는 `investigate` 모드를 사용하며, 설계 및 논리 검토는 @oracle을 활용한다. 저자는 AI를 위한 마크다운을 프로젝트 현 상태에 맞춰 업데이트하고, 코드 스타일 및 테스트 설정을 엄격하게 관리하는 것을 강조한다.

OpenCode와 OMO의 장점 및 한계

OpenCode와 OMO는 AI 기반 코딩 도구로서, 개발 생산성 향상에 기여할 수 있는 다양한 장점을 제공한다. 특히, LSP 지원, 플러그인 시스템, 다양한 모드를 통해 개발 환경을 유연하게 구성하고, 복잡한 작업을 효율적으로 처리할 수 있다. 하지만, OMO의 `ultrawork` 모드와 같이, 과도한 자동화는 통제 가능성을 저해할 수 있으며, AI 모델의 성능에 따라 결과의 품질이 달라질 수 있다는 점을 고려해야 한다. 또한, OpenCode와 OMO의 사용은 러닝 커브(Learning Curve)를 필요로 하며, 기존 개발 프로세스와의 통합에 추가적인 노력이 필요할 수 있다.

LLM - 모델 경쟁이 끝나고, “하네스 경쟁”의 시작?!, opencode 와 oh-my-opencode

댓글 0

첫 번째 댓글을 남겨보세요!