MiMo Code란: Xiaomi가 내놓은 오픈소스 터미널 코딩 에이전트
Xiaomi가 2026년 6월 10일 MiMo Code v0.1.0을 MIT 라이선스로 공개했다. 계정 생성 없이 MiMo-V2.5 모델을 한시적으로 무료 사용할 수 있어, 오픈소스 코딩 에이전트를 직접 써보고 싶었던 개발자에게 진입 장벽이 거의 없다.
MiMo Code는 IDE 플러그인이 아닌 터미널 기반 자율 코딩 에이전트다. 사용자가 작업 목표를 자연어로 주면 에이전트가 파일 탐색·수정·셸 명령 실행을 자체 루프로 처리한다. Claude Code와 구조적으로 가장 유사하고, GitHub Copilot이나 Cursor의 인라인 자동완성과는 사용 방식이 다르다.
Xiaomi 자체 발표 기준 SWE-Bench Pro 62%, Terminal Bench 2 73%를 기록했다. 동일 베이스 모델 조건에서 Claude Code를 약 5%p 앞선 수치다. 다만 이는 Xiaomi 내부 측정 결과로, 독립된 제3자 재현이 아직 제한적이라는 점을 감안해야 한다.
모델은 MiMo-V2.5-Pro 기준 1M 토큰 컨텍스트 윈도우를 지원한다. 수십만 줄 규모의 모노레포에서 파일 간 의존성을 추적하며 작업할 수 있는 실용적인 규모다.
설치 방법: GitHub 클론부터 API 연결까지
사전 준비물: Python 3.10 이상, Git, 터미널 환경. python --version으로 먼저 확인한다. uv를 쓰는 환경이라면 더 빠르게 의존성을 설치할 수 있다.
저장소를 클론하고 의존성을 설치한다.
git clone https://github.com/XiaomiMiMo/MiMo-Code
cd MiMo-Code
# uv 환경
uv sync
# pip 환경
pip install -e .
설치 후 mimo --version으로 진입점을 확인한다. v0.1.0 초기 릴리스라 CLI 플래그 이름이 바뀔 수 있으므로, mimo --help를 한 번 확인하는 게 좋다.
무료 모드(한시적): 계정 없이 기본 MiMo-V2.5 모델을 사용할 수 있다. 별도 API 키 없이 mimo 명령만으로 실행된다. 무료 기간이 끝나면 자체 API 키가 필요하다.
MiMo-V2.5-Pro API 키 연결: OpenRouter를 통해 연결하는 방법이 현재 가장 안정적이다. 프로젝트 루트의 .env 파일(또는 config.yaml)에 다음을 추가한다. 정확한 키 이름은 README.md를 참조한다.
OPENROUTER_API_KEY=sk-or-...
MIMO_MODEL=xiaomi/mimo-v2.5-pro
VS Code 터미널 통합: VS Code 내장 터미널에서 mimo 명령을 그대로 실행하면 된다. 별도 익스텐션은 없고 터미널 에이전트로만 동작하므로, Ctrl+`` “로 터미널을 열고 프로젝트 루트에서 실행한다.
핵심 기능과 작동 방식 이해하기
MiMo Code의 에이전트 루프는 계획(Plan) → 도구 호출(Edit/Run) → 검증 사이클을 반복한다. 사용자가 “이 함수에서 발생하는 IndexError를 수정하고 테스트를 통과시켜줘”라고 입력하면, 에이전트가 관련 파일을 탐색하고 수정한 뒤 pytest를 직접 실행해 결과를 확인한다.
지원 도구 목록은 파일 읽기·쓰기, 셸 명령 실행(bash, python, npm 등), 디렉터리 탐색이 기본이다. 웹 검색 연동은 v0.1.0 기준 공식 문서에 명시되어 있지 않으므로, 현재 README를 직접 확인하는 게 정확하다.
1M 컨텍스트의 실용적인 활용 패턴은 파일 목록을 먼저 에이전트에 넘기는 것이다. find . -name "*.py" | head -50으로 추출한 파일 목록을 프롬프트 앞에 붙이면 에이전트가 불필요한 탐색 없이 바로 핵심 파일로 진입한다. 컨텍스트가 크다고 마구 넣으면 오히려 중요한 정보가 희석된다.
멀티파일 리팩터링 시 프롬프트 구조는 이렇게 잡는다.
대상 파일: src/auth/session.py, src/middleware/auth.py
작업: JWT 만료 처리 로직을 session.py에서 별도 validator 클래스로 분리
조건: 기존 테스트 suite 통과, 타입 힌트 유지
목표, 대상 범위, 제약 조건을 분리해서 주는 게 “코드 좀 정리해줘”보다 훨씬 결과가 일관적이다.
GitHub Copilot·Cursor·Claude Code와 벤치마크·비용 비교
| 도구 | SWE-Bench Pro | 비용 | 동작 방식 |
|---|---|---|---|
| MiMo Code | 62% (자체 발표) | 무료(한시적) / $0.435/1M 입력 | 터미널 에이전트 |
| Claude Code | ~57% (추정, 동일 조건) | API 종량제 | 터미널 에이전트 |
| Cursor Pro | 공개 비교 없음 | $20/월 정액 | IDE (VS Code fork) |
| GitHub Copilot | 공개 비교 없음 | $10/월 | IDE 플러그인 |
벤치마크 수치는 MiMo Code와 Claude Code 간 직접 비교(Xiaomi 발표)만 존재한다. Copilot·Cursor와의 SWE-Bench 직접 비교 데이터는 현재 없다.
비용 측면에서 MiMo Code는 구조가 다르다. OpenRouter 기준 MiMo-V2.5-Pro는 입력 $0.435/1M 토큰, 출력 $0.87/1M 토큰이다. 하루 작업에 약 500K 토큰을 사용한다면 월 비용은 $6~13 수준으로 Cursor Pro보다 저렴할 수 있다. 다만 에이전트 루프는 한 작업당 토큰을 예상보다 많이 소비하므로 실제 사용량 모니터링이 필요하다.
IDE 플러그인 vs. 터미널 에이전트 차이는 작업 유형으로 정리된다.
- 인라인 자동완성, 코드 설명, 빠른 수정 → Copilot, Cursor
- 멀티파일 리팩터링, 버그 재현
수정테스트 원사이클, CI 자동화 → MiMo Code, Claude Code
오픈소스 자가 호스팅의 실질적 차이: MIT 라이선스로 코드를 전부 볼 수 있고, 사내 코드가 외부 SaaS 서버를 거치지 않는다. 금융·의료·보안 도메인처럼 코드 유출 리스크가 높은 환경에서 의미 있는 차이다. Copilot이나 Cursor는 코드 스니펫이 Microsoft·Cursor 서버를 통과한다.
어떤 도구를 고르느냐는 주 작업 유형으로 결정된다. 평소 IDE 안에서 빠른 자동완성 위주라면 Copilot, 에이전트 기반 자율 작업이 주라면 MiMo Code나 Claude Code, 두 가지를 한 환경에서 쓰고 싶다면 Cursor가 낫다.
실전 활용 팁: 효율을 높이는 프롬프트·워크플로 패턴
버그 수정을 원샷으로 넘길 때 쓰는 프롬프트 템플릿이다.
재현 명령: pytest tests/test_auth.py::test_session_expire -x
예상 동작: 만료된 JWT → 401 응답
실제 동작: 200 응답 반환
수정 범위: src/auth/ 이하만, 테스트 코드 변경 금지
재현 명령을 구체적으로 주면 에이전트가 실제로 실행하고 결과를 확인한다. “버그 고쳐줘”만 주면 에이전트가 파일 탐색에 토큰을 소진하고 틀린 수정을 제안할 가능성이 높다.
토큰 소비를 줄이는 핵심은 컨텍스트 범위 지정이다. 에이전트를 실행하기 전 find src/auth -name "*.py"로 관련 파일만 추출해 프롬프트에 명시한다. 전체 저장소를 탐색하게 두면 불필요한 파일을 수십 개 읽고 토큰이 급증한다.
CI/CD 연동은 mimo를 GitHub Actions 스텝으로 넣는 방식이 직관적이다.
- name: MiMo Code review
run: mimo "PR 변경 파일에서 잠재적 버그와 누락된 에러 처리를 리포트해줘"
env:
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
PR 머지 전 자동 리뷰 루프로 쓰면 리뷰어 부담을 줄일 수 있다.
알아두어야 할 한계와 주의사항
v0.1.0 초기 릴리스다. CLI 플래그, 설정 파일 형식, 도구 인터페이스가 예고 없이 바뀔 수 있다. 프로덕션 자동화 파이프라인에 바로 넣기보다는 개발 환경에서 먼저 테스트하는 게 안전하다.
무료 사용 기간이 정해져 있다. 종료 시점 이후에는 자체 API 키가 필요하고, 비용 구조도 변동될 수 있다. 장기 운영 계획을 세울 때 무료 기간에만 의존하지 않도록 API 키 연결 방식을 미리 익혀두는 게 좋다.
기존 MiMo-V2-Pro/Omni 모델은 2026-06-01부터 V2.5로 자동 라우팅되며, 2026-06-30에 완전 지원 종료 예정이다. 기존 MiMo API를 이미 쓰고 있다면 이 일정에 맞춰 마이그레이션을 확인해야 한다.
벤치마크 수치(SWE-Bench Pro 62%, Terminal Bench 2 73%)는 Xiaomi 자체 발표다. 독립된 연구기관의 재현 결과가 아직 나오지 않았으므로, 이 수치를 절대 기준으로 도구를 선택하기보다는 자신의 실제 코드베이스에서 직접 테스트해보는 게 더 신뢰성 있는 판단 근거가 된다.
자주 묻는 질문
Q. MiMo Code를 쓰려면 Xiaomi 계정이 필요한가?
현재 무료 모드에서는 계정 없이 사용할 수 있다. MIT 라이선스 오픈소스이므로 저장소를 클론해 설치하는 것 자체에 계정이 필요하지 않다. OpenRouter를 통해 API를 연결하는 경우에는 OpenRouter 계정과 API 키가 필요하다.
Q. Claude Code와 실제로 어떤 차이가 있나?
둘 다 터미널 기반 자율 코딩 에이전트라 작동 방식은 유사하다. 가장 큰 실질적 차이는 오픈소스 여부와 비용 구조다. MiMo Code는 코드 전체를 볼 수 있고 자가 호스팅이 가능하며 현재 무료(한시적)다. Claude Code는 Anthropic의 클라우드 서비스로 API 사용량에 따라 비용이 발생한다. 벤치마크 성능 차이는 Xiaomi 발표 기준 약 5%p지만 독립 검증은 아직 제한적이다.
Q. VS Code 익스텐션 없이 터미널만으로 써야 하나?
현재 v0.1.0은 터미널 에이전트로만 동작한다. IDE 인라인 자동완성 같은 기능은 없다. VS Code에서 쓰려면 내장 터미널을 열고 mimo 명령을 실행하는 방식이 전부다. 향후 익스텐션이 나올 가능성은 있지만 현재는 없다.
Q. 사내 코드를 MiMo Code에 넣어도 안전한가?
오픈소스라 로컬에서만 실행하고 외부 서버를 전혀 거치지 않는 구성이 가능하다. 단, OpenRouter나 Xiaomi API를 통해 모델을 호출하는 경우 코드 스니펫이 해당 서버를 통과한다. 완전한 오프라인 환경에서 쓰려면 모델 가중치를 로컬에 직접 올리는 방식이 필요한데, MiMo-V2.5 모델 가중치 공개 여부는 현재 GitHub 저장소에서 확인해야 한다.
단계별 실행 가이드
1단계. 사전 환경 확인
터미널에서 python --version으로 Python 3.10 이상인지 확인한다. Git이 설치되어 있어야 한다. uv가 있다면 uv --version으로 확인, 없으면 pip를 쓴다.
2단계. 저장소 클론 및 의존성 설치
git clone https://github.com/XiaomiMiMo/MiMo-Code
cd MiMo-Code
uv sync # uv 환경
# 또는
pip install -e .
설치 완료 후 mimo --help를 실행해 명령어 목록이 출력되는지 확인한다.
3단계. 첫 실행 — 무료 모드
프로젝트 디렉터리로 이동한 뒤 간단한 작업을 시켜본다.
cd /path/to/your/project
mimo "README.md 파일을 읽고 프로젝트 구조를 한 문단으로 요약해줘"
에이전트가 파일을 읽고 응답을 돌려주면 기본 설치가 정상이다.
4단계. API 키 연결 (무료 기간 이후 대비)
OpenRouter에서 API 키를 발급받고, 프로젝트 루트 또는 홈 디렉터리에 설정 파일을 만든다. 정확한 파일명과 환경 변수명은 최신 README.md를 참조한다.
OPENROUTER_API_KEY=sk-or-...
MIMO_MODEL=xiaomi/mimo-v2.5-pro
설정 후 다시 mimo 명령을 실행해 API 키가 정상적으로 로드되는지 확인한다.
5단계. 실전 작업 투입
첫 실전 작업으로는 버그 수정 작업이 적합하다. 재현 가능한 테스트 실패가 있는 경우, 재현 명령과 기대 동작, 수정 범위를 명시해서 넘긴다. 에이전트가 파일을 수정하고 테스트를 직접 실행하는 과정을 관찰하면 도구의 동작 방식을 빠르게 파악할 수 있다.