ZCode, GLM 코딩 에이전트가 Git 히스토리를 몰래 업로드한다
ZCode, the GLM coding agent, silently uploads your Git history
TL;DR Highlight
ZCode를 로그인 상태로 쓰면 전체 .git 히스토리가 암호화돼 클라우드로 올라간다
Who Should Read
사내 저장소를 AI 코딩 에이전트·데스크톱 앱에 연결해 쓰면서 코드 유출 위험이 걱정되는 개발자
Core Mechanics
- 로그인하면 워크스페이스 통째로 올라간다
- 원문에 따르면 ZCode는 .git 히스토리, LFS 캐시, reflog, 앱 설정을 묶어 암호화한 뒤 Aliyun OSS로 올린다.
- 연구자가 잡은 사례는 345MB 워크스페이스(파일 42,411개)에서 만든 313MB 암호화 아카이브다.
- 페이로드의 86.6%가 .git이다
- .git/lfs 196.1MB(56.8%), .git/objects 102.2MB(29.6%), 소스·문서 46.2MB(13.4%)다.
- git 객체에는 이후 커밋에서 지운 API 키, 미공개 브랜치명, 내부 호스트명이 남아 있다.
- 키는 Z.ai 서버만 갖고 있다
- 대칭키로 암호화하고 그 키를 서버가 내려준 RSA-OAEP 공개키로 감싼다.
- 개인키는 Z.ai 클라우드에만 있어서 연구자가 로컬 개인키로 풀어 봤지만 실패했고, 사용자도 클라이언트도 복호화할 수 없다.
- 설정 토글을 꺼도 업로드는 계속된다
- "Optimize Experience"는 모델 학습 동의 여부만 제어한다.
- "Repo Snapshot Indexing"은 서버 인덱싱만 제어하고 로컬 패키징·업로드는 계속된다.
- 에이전트 도구가 아니라 호스트 사이드카다
- 캡처된 도구 31개 중 스냅샷·업로드·텔레메트리 도구는 없고, 시작할 때 조건 없이 사이드카가 뜬다.
Community Reactions
- 스냅샷 기능은 서버 쪽 해석 논란이 있다
- 원문 요약 글을 LLM이 풀어쓴 것이라는 댓글 맥락이 달렸다.
- 댓글 한 명은 기사가 git log와 git 저장소를 구분하지 못한다고 지적했다는 의견이다.
- 비교 주장도 나왔다
- 한 댓글은 Claude도 매일 git history(git log)를 Anthropic 서버로 올린다고 주장했다는 의견이다.
- 근거나 확인된 내용은 댓글에 없다.
- 냉소적 반응도 있었다
- 다들 호들갑이라며 자기들도 자사 제품을 안 쓴다는 농담조 댓글이 달렸다.
How to Apply
- checkpoints 디렉터리를 잠가 업로드 막기
- 오늘 ZCode를 쓰고 있다면 ~/.zcode/v2/checkpoints를 지우고 다시 만든 뒤 chattr +i(Linux) 또는 chflags uchg(macOS)를 건다.
- 대신 체크포인트 롤백 UI는 동작하지 않는다.
- 에이전트 도구 도입 체크리스트에 두 질문 추가하기
- 로그인 상태에서 런타임이 무엇을 전송하는지 확인한다.
- 저장되는 데이터를 누가 복호화할 수 있는지 확인한다.
- 민감 저장소에서는 폐쇄형 하니스 쓰지 않기
- 키·내부 호스트가 히스토리에 남아 있는 저장소는 소스가 공개된 에이전트로 옮긴다.
- 이미 노출됐을 수 있는 키는 로테이션 목록에 올린다.
Try It
# 셸에 붙여넣기 (Linux). macOS는 마지막 줄을 chflags uchg ~/.zcode/v2/checkpoints 로 바꾼다
rm -rf ~/.zcode/v2/checkpoints
mkdir -p ~/.zcode/v2/checkpoints
sudo chattr +i ~/.zcode/v2/checkpoints
# 되돌리기: sudo chattr -i ~/.zcode/v2/checkpoints (macOS: chflags nouchg)Terminology
관련 논문
같은 시뮬레이션, 다른 근거: 도구 출력을 파일로 넘기면 LLM 에이전트 정확도가 어디서 깎이나
긴 툴 출력을 파일로 넘기자 GPT-5.1은 정확도 11.3%p 하락, 정식 출력 지정하니 회복
가짜 뉴스가 진짜 폭락을: LLM 트레이딩 에이전트 대상 정보 주입 공격
가짜 헤드라인 한 줄로 LLM 트레이딩 에이전트 62%를 조종했다(프롬프트 주입은 14%)
Harness Engineering 101: LLM은 뇌, harness는 몸
에이전트는 JSON 배열을 관리하는 루프이고, 16개 챕터로 직접 만들어 본다
Harness²: 에이전트 harness를 스스로 고쳐 쓰는 재귀 최적화 프레임워크
모델은 고정하고 harness를 재귀로 고쳤더니 벤치마크 점수가 최대 11.8%p 올랐다
해고된 Savannah 경찰관, ICE 요원 남편에게 Flock 계정 공유
경찰관이 Flock 계정을 남편(ICE 요원)에게 공유했고, 감사에서 983건 검색이 드러나 해고됐다
tmux와 Claude Code: 세션, send-keys, 그리고 한계선
tmux로 Claude Code 여러 개를 돌리면 편하지만 에이전트 4개쯤에서 한계가 온다
Hybrid Reasoning Agents: 잠재 공간에서 생각하고 텍스트로 행동하는 LLM 에이전트
잠재 공간 추론과 텍스트 도구 호출을 섞었더니 성능 10.4%↑, 토큰 최대 54.7%↓