샤오미 MiMo Code CLI, 기본 켜진 텔레메트리 논란…공개 저장소엔 없는 구현이 바이너리에
중국 개발자 커뮤니티 v2ex에 샤오미의 코딩 에이전트 도구 'MiMo Code' CLI를 둘러싼 분석 글이 올라왔다. 작성자는 MiMo 요금제 자체는 사용할 만하지만 CLI는 쓰지 말라고 권고한다. 문제로 지목된 것은 공식 배포 패키지 v0.1.14(mimocode-windows-x64)에 기본 활성화 상태로 들어간 분석·수집 기능이다.
작성자에 따르면 환경변수 MIMOCODE_ENABLE_ANALYSIS는 기본으로 켜져 있다. Git 저장소 안에서 모델을 호출하는 세션을 한 차례 돌리면 https://tracking.miui.com/track/v4/o 로 trajectory가 전송된다. 이때 함께 나가는 항목은 설치 UUID, 세션 ID, 사용 모델, 시스템·CPU·메모리 정보, 타임존이다. 원격 저장소 주소(origin)가 없는 경우에는 주소 필드가 local:<설치 UUID>:<저장소 절대 경로> 형태로 채워져 로컬 경로가 외부로 나갈 수 있다. 다만 원격 URL에 포함된 토큰은 남지 않는다고 한다.
같은 세션에서 system prompt, 대화 내용, 최종 답변, 코드 diff를 zstd로 묶는 경로도 확인됐다. 포맷 이름은 mimocode.trajectory.v2이며, 압축과 청크 분할, 재시도 로직까지 연결돼 있지만 현재 POST되는 JSON에는 이 압축 데이터 필드가 빠져 있다고 작성자는 설명한다. 코드베이스 수집 함수 collectCodebase는 Git 추적 파일과 .gitignore에 걸리지 않은 미추적 파일을 최대 2000개, 합계 5MB 한도로 읽어 압축하도록 구현돼 있다. 다만 바이너리 안에서 이 이름은 한 번만 등장하고 호출되는 곳이 없어, 현재로서는 이 경로로 소스가 빠져나가지는 않는다는 것이 작성자의 관찰이다.
핵심 쟁점은 공개 소스와 배포본의 차이다. 공개 저장소 XiaomiMiMo/MiMo-Code의 main 브랜치에는 이 구현들이 없다. 공식 설치 패키지는 빌드 시점에 외부 디렉터리 mimoapi/packages/opencode/src/ext 에서 해당 코드를 끼워 넣는 방식이며, 접합부는 packages/opencode/script/build.ts 다. 이 스크립트는 빌드 머신에 해당 경로가 존재하면 바이너리에 복사한다. 즉 공개 소스를 직접 빌드한 결과물과 공식 배포본은 내용이 다를 수 있다.
실무에서는 MIMOCODE_ENABLE_ANALYSIS=false 또는 0으로 위 수집을 끌 수 있다. 반면 MIMOCODE_PURE 값으로는 꺼지지 않는다. 공개 소스에서 직접 컴파일한 빌드에는 이 코드가 포함되지 않는다고 작성자는 덧붙인다. 사내 저장소에서 이 CLI를 쓰는 경우 로컬 절대 경로나 저장소 식별 정보가 전송될 수 있으므로, 검증이 필요하면 일회용 저장소를 만들어 테스트하는 편이 안전하다.
작성자는 이 분석이 실기 패킷 캡처가 아닌 정적 분석에 기반한다는 점을 명시했다. 또한 동적으로 재현할 경우 해당 저장소의 Git 신원이 실제로 tracking.miui.com으로 전송된다고 경고한다. 전송 항목과 시점에 대한 최종 확인은 사용자 환경에서 직접 검증해야 한다.
관련 글
- Zhipu, AI 코딩 도구 ZCode 전면 오픈소스화…남은 세 가지 질문Zhipu의 AI 코딩 도구 ZCode가 로컬 워크스페이스 스냅샷을 만들어 .git 히스토리와 reflog까지 암호화해 알리바바 클라우드 OSS로 업로드하는 경로가 있다는 사실이 개발자 ferstar의 리버스 엔지니어링으로 드러났다. Zhipu는 Repo Wiki 기능을 제거하고 v3.14.0에서 업로드 경로를 차단한 뒤 ZCode 전체를 Apache 2.0으로 공개했지만, 사고 이전 Git 히스토리 미공개와 제3자 검증 범위 등 세 가지 질문이 남아 있다.
- GLM 코딩 에이전트 ZCode, 사용자 Git 전체 이력을 동의 없이 암호화해 업로드Z.ai의 GLM 코딩 에이전트 ZCode가 워크스페이스 전체와 .git 이력을 동의 없이 암호화해 알리윤 OSS로 전송한다는 리버스 엔지니어링 분석이 공개됐다. 복호화 키는 Z.ai 서버만 보유해 사용자나 클라이언트조차 내용을 확인할 수 없다.
- ZCode 오픈소스 기반 AI 코딩 워크벤치 'NextCode', 원격 제어·텔레메트리 컴파일 단계에서 차단오픈소스 ZCode를 개조한 AI 코딩 워크벤치 NextCode가 공개됐다. 공식 자동 업데이트를 끄고 원격 제어와 텔레메트리를 컴파일 단계에서 제거했으며, LAN·스마트폰 연동을 지원한다.