HuggingFace Hub이 사용 중인 AI 코딩 에이전트를 몰래 지문 채취하여 텔레메트리로 전송함
huggingface_hub silently fingerprints which AI coding agent you're using and sends it as telemetry
핵심 요약
HuggingFace Hub 라이브러리가 환경 변수를 스캔해 사용자의 AI 코딩 도구를 식별하고 이를 텔레메트리로 전송하는 사실이 밝혀졌습니다.
- 비밀 에이전트 탐지 — HuggingFace Hub가 환경 변수를 스캔해 사용 중인 AI 코딩 도구를 식별함
- 텔레메트리 전송 — 식별된 도구 정보를 API 호출 시 헤더에 포함해 서버로 전송함
- 개인정보 보호 우려 — 로컬 모델 사용자가 도구 사용 이력을 추적당하는 것에 대해 비판이 제기됨
- 차단 방법 — 환경 변수 설정이나 로컬 파일 경로 사용을 통해 네트워크 호출을 방지할 수 있음
TLDR: huggingface_hub에 니가 어떤 AI 코딩 툴(Cursor, Copilot, Claude Code 등)을 쓰는지 추적하는 모듈이 숨겨져 있다. 환경 변수를 26개 에이전트 목록이랑 대조해서 니가 뭘 쓰는지 알아낸 다음, 허깅페이스 API 호출할 때마다 텔레메트리 헤더로 쏴버림. 즉, HF를 건드리는 라이브러리(faster-whisper, transformers 등)를 쓰기만 해도 니 툴체인이 다 털리는 거임. 로컬 ASR 모델 쓰다가 허락도 안 받은 네트워크 연결되는 거 보고 알아냈다. HF_HUB_OFFLINE=1로 막거나 모델 이름 대신 로컬 파일 경로를 써서 차단해라.
난 로컬 AI 프로젝트(TTS, ASR, 비전 등)를 돌리는데, 최근에 모든 아웃바운드 트래픽을 다 막으려고 파이썬 수준에서 네트워크 방화벽을 만들었거든. 근데 점검하다가 예상치 못한 걸 발견함.
발견한 것
huggingface.co로 나가는 허락 안 받은 HTTPS 연결을 추적하다가, HF 캐시 디렉토리에서 듣도 보도 못한 파일을 하나 찾음:
~/.cache/huggingface/.agent_harnesses.json
이게 6KB짜리 JSON 파일인데, 26개 AI 코딩 에이전트 목록이 들어있음. Claude Code, Cowork, Cursor, Copilot, Gemini CLI, Devin, Cline, Goose, Codex 등등. 각 항목마다 해당 에이전트가 실행될 때 설정하는 환경 변수들이 적혀 있더라:
json
{
"standardEnvVars": ["AI_AGENT", "AGENT"],
"harnesses": {
"cursor": {
"prettyLabel": "Cursor",
"envVars": {"CURSOR_TRACE_ID": "*"}
},
"claude-code": {
"prettyLabel": "Claude Code",
"envVars": {"CLAUDECODE": "*", "CLAUDE_CODE": "*"}
},
"github-copilot": {
"prettyLabel": "GitHub Copilot",
"envVars": {"COPILOT_MODEL": "*", "COPILOT_GITHUB_TOKEN": "*"}
}
// ... 23 more agents
}
}
이게 하는 짓
huggingface_hub 라이브러리(웹사이트 말고 파이썬 패키지)에 _detect_agent.py라는 모듈이 있음. 작동 방식은 이래:
-
{HF_ENDPOINT}/api/agent-harnesses에서 에이전트 레지스트리를 가져와서.agent_harnesses.json으로 캐싱함 -
캐시는 24시간마다 갱신됨
-
Hub API를 호출할 때마다
detect_agent()가 니 환경 변수를 싹 훑어서 지금 어떤 AI 코딩 툴이 돌아가는지 확인함 -
감지된 에이전트 이름을 API 요청의 텔레메트리 헤더에 박아서 보냄
-
이게 허깅페이스의 공개 에이전트 사용량 데이터셋으로 들어감
그러니까 니가 Cursor를 쓰는데, 모델을 다운받거나 업데이트 확인하거나 토크나이저를 불러오려고 를 거치는 HF 라이브러리를 호출하면? 허깅페이스는 니가 직접 한 게 아니라 Cursor가 호출했다는 걸 다 알고 있는 거임. Claude Code, Copilot, Devin이나 레지스트리에 있는 나머지 26개 에이전트도 다 똑같음.

