본문으로 건너뛰기

© 2026 Molayo

GitHub요약2026. 05. 20. 13:34

amrit110/oli

요약

oli는 Claude Code의 오픈 소스 대안으로, 코딩 지원을 위한 강력한 에이전트 능력을 갖춘 도구입니다. Rust 백엔드와 React/Ink 프론트엔드를 결합한 하이브리드 아키텍처를 통해 클라우드 API(Claude 3.7 Sonnet, GPT-4o, Gemini)와 Ollama를 통한 로컬 LLM을 모두 지원합니다.

핵심 포인트

  • Claude Code를 대체할 수 있는 오픈 소스 에이전트 도구
  • Rust 백엔드와 React/Ink 기반의 인터랙티브한 터미널 UI 제공
  • 클라우드 모델 및 Ollama를 통한 로컬 LLM(Qwen, Llama 등) 지원
  • 파일 검색, 코드 편집, 쉘 명령 실행 등 강력한 에이전트 기능 수행
  • Claude 3.7 Sonnet에 최적화된 시스템 프롬프트 및 JSON 스키마 지원

oli는 코딩 지원을 위한 강력한 에이전트 (Agentic) 능력을 갖춘 Claude Code의 오픈 소스 대안입니다. 주요 기능:

  • 현대적인 하이브리드 아키텍처:

  • 성능과 핵심 기능을 위한 Rust 백엔드

  • 아름답고 인터랙티브한 터미널 UI를 위한 React/Ink 프론트엔드

  • 클라우드 API (Anthropic Claude Sonnet 3.7, OpenAI GPT4o 및 Google Gemini)와 로컬 LLM (Ollama를 통해) 모두 지원

  • 파일 검색, 편집 및 명령 실행을 포함한 강력한 에이전트 (Agentic) 능력

  • 모든 모델 제공업체 (Anthropic, OpenAI, Google 및 Ollama)에 대한 도구 사용 (Tool use) 지원

# 저장소 클론 (Clone)
git clone https://github.com/amrit110/oli
cd oli
...

개발 환경은 uv를 사용하여 설정할 수 있습니다. 따라서 uv가 설치되어 있는지 확인한 후 다음을 실행하십시오:

uv sync --dev
source .venv/bin/activate

pre-commit run --all-files

API 기반 기능을 위해 환경 변수를 설정하십시오:

# 프로젝트 루트에 .env 파일 생성
echo "ANTHROPIC_API_KEY=your_key_here" > .env
# 또는
...

Claude 3.7 Sonnet은 가장 신뢰할 수 있고 고급화된 에이전트 (Agent) 능력을 제공합니다:

  • Anthropic에서 API 키를 받으십시오
  • ANTHROPIC_API_KEY 환경 변수를 설정하십시오
  • UI에서 "Claude 3.7 Sonnet" 모델을 선택하십시오

이 구현에는 다음이 포함됩니다:

  • Claude 3.7에 최적화된 시스템 프롬프트 (System prompts)
  • 구조화된 응답을 위한 JSON 스키마 (JSON schema) 출력 포맷팅
  • 개선된 에러 핸들링 (Error handling) 및 재시도 메커니즘

oli는 Ollama를 통해 로컬 모델을 지원합니다:

  • 아직 설치하지 않았다면 Ollama를 설치하십시오

  • Ollama 서버를 시작하십시오:
    ollama serve

  • 사용하려는 모델을 가져오십시오 (도구 사용 (Tool use) 능력이 있는 모델을 권장합니다):
    # 호환 가능한 모델 예시 ollama pull qwen2.5-coder:14b ollama pull qwen2.5-coder:3b ollama pull llama3:8b

  • oli를 시작하고 모델 선택 메뉴에서 Ollama 모델을 선택하십시오

참고: 도구 사용 (Tool use) 및 에이전트 (Agent) 능력의 최상의 결과를 위해, 함수 호출 (Function calling)을 지원하는 Qwen 2.5 Coder와 같은 모델을 사용하십시오.

  • 애플리케이션 시작:

./run.sh

모델 선택:

  • 완전한 에이전트 기능 (Agent capabilities)을 위한 클라우드 모델 (Claude 3 Sonnet, GPT-4o, Gemini 2.5)

  • Ollama를 통한 로컬 모델 (Qwen, Llama 등)

채팅 인터페이스에서 코딩 쿼리 (Coding query)를 수행하십시오:

  • 파일 검색 요청
  • 코드 수정 요청
  • 쉘 명령 (Shell commands) 실행
  • 코드 설명 요청

애플리케이션은 하이브리드 아키텍처 (Hybrid architecture)를 사용합니다:

┌───────────────┐ ┌───────────────┐
│ React + Ink UI│◄───────┤ Rust Backend │
│               │  JSON   │ │
...

Rust Backend: 에이전트 기능, 도구 실행 (Tool execution) 및 API 호출을 처리합니다.
React/Ink Frontend: 부드러운 애니메이션과 함께 현대적이고 대화형인 터미널 인터페이스를 제공합니다.

시도해 볼 수 있는 몇 가지 쿼리 예시입니다:

  • "코드베이스를 설명하고 시작하는 방법을 알려줘"
  • "프로젝트의 모든 파일 목록을 보여줘"
  • "Cargo.toml 파일의 내용을 요약해줘"
  • "'anyhow' 크레이트 (Crate)를 임포트하는 모든 파일을 보여줘"

이 프로젝트는 Apache 2.0 라이선스 (Apache 2.0 License) 하에 라이선스가 부여됩니다 - 자세한 내용은 LICENSE 파일을 참조하십시오.

  • 이 프로젝트는 Claude Code 및 유사한 AI 어시스턴트 (AI assistants)에서 영감을 받았습니다.
  • 최적의 에이전트 기능을 위해 Anthropic의 Claude 3.7 Sonnet 모델을 사용합니다.
  • 성능과 신뢰성을 위해 Rust로 구축된 백엔드 (Backend).
  • 현대적인 터미널 UI 경험을 위해 React와 Ink로 구축된 프론트엔드 (Frontend).
  • 훌륭한 라이브러리와 도구를 제공해 준 Rust 및 React 커뮤니티에 특별한 감사를 전합니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub AI Coding Assistants의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0