---
title: "CLI 텔레메트리 끄는 표준 환경변수로 DO_NOT_TRACK을 쓰자는 제안"
published: 2026-05-02T17:40:55.000Z
canonical: https://jeff.news/article/2234
---
# CLI 텔레메트리 끄는 표준 환경변수로 DO_NOT_TRACK을 쓰자는 제안

많은 CLI 도구, SDK, 프레임워크가 기본으로 텔레메트리를 수집하지만 끄는 방법은 제각각이다. 이 글은 사용자가 로컬 소프트웨어에서 추적, 사용량 보고, 크래시 리포팅, 비필수 네트워크 요청을 거부한다는 뜻으로 `DO_NOT_TRACK=1` 환경변수를 표준화하자고 제안한다.

- CLI 도구, SDK, 프레임워크가 텔레메트리를 기본으로 수집하는 경우가 많아졌는데, 문제는 끄는 방법이 전부 제각각이라는 점임.
  - 어떤 도구는 환경변수를 봄.
  - 어떤 도구는 설정 파일을 봄.
  - 어떤 도구는 별도 명령어를 실행해야 하고, 어떤 도구는 문서 어딘가에 opt-out 방법이 숨어 있음.

- `DO_NOT_TRACK` 제안은 이걸 하나의 표준 환경변수로 정리하자는 아이디어임.
  - 사용자가 `DO_NOT_TRACK=1`을 설정하면 “이 소프트웨어에서 추적성 데이터 수집을 원하지 않는다”는 뜻으로 보자는 것.
  - 대상은 광고 추적, 사용량 보고, 익명 여부와 관계없는 텔레메트리, 크래시 리포팅, 기능에 필수적이지 않은 제작자 또는 제3자 요청까지 포함함.
  - 문장으로 줄이면 “그냥 로컬 소프트웨어만 쓰고 싶다”에 가까움.

> [!TIP]
> 이 제안이 널리 받아들여지면 개발자는 셸 설정 한 줄로 여러 CLI 도구의 비필수 추적을 한꺼번에 거부할 수 있게 됨.

- 소프트웨어 제작자에게 요구하는 것도 단순함. 텔레메트리를 수집하거나 비필수 네트워크 요청을 보내는 도구라면 이 변수를 확인하라는 것.
  - `DO_NOT_TRACK`이 `1`이면 모든 추적을 꺼야 함.
  - 기존 opt-out 메커니즘이 있다면 그것과 함께 이 변수를 존중하라고 제안함.
  - 더 나아가 텔레메트리는 기본 수집이 아니라 opt-in으로 바꾸는 것도 고려하라고 함.

- 개발자 커뮤니티에서 이 얘기가 먹히는 이유는, CLI 도구가 “터미널에서 조용히 돌아가는 로컬 프로그램”이라는 기대를 갖고 있기 때문임.
  - 웹 서비스처럼 분석 스크립트가 붙는 것과 달리, 로컬 개발 도구가 실행될 때마다 외부로 뭔가 보내면 거부감이 훨씬 큼.
  - 특히 회사 네트워크, 민감한 프로젝트, 폐쇄망 비슷한 환경에서는 비필수 네트워크 요청 자체가 운영 리스크가 될 수 있음.

- 물론 표준이 되려면 도구 제작자들이 실제로 채택해야 함. 환경변수 이름 하나 만든다고 생태계가 바로 바뀌진 않음.
  - 그래도 `NO_COLOR`처럼 간단한 관례가 개발자 도구 전반에 퍼진 사례가 있음.
  - `DO_NOT_TRACK=1`도 비슷하게 “존중하면 좋은 공통 신호”로 자리 잡을 수 있다는 기대가 깔려 있음.

---
## 기술 맥락

- 이 제안의 핵심 선택은 복잡한 설정 포맷이나 중앙 레지스트리가 아니라 환경변수 하나를 쓰는 거예요. 왜냐하면 CLI 도구와 SDK는 이미 실행 시점에 환경변수를 자연스럽게 읽을 수 있고, 사용자는 셸 설정 파일 한 줄로 여러 도구에 같은 의사를 전달할 수 있거든요.

- 대안은 각 도구별 설정 파일, 명령어 플래그, 계정 설정 같은 방식이에요. 하지만 이 방식은 도구마다 위치와 이름이 달라서 사용자가 계속 문서를 뒤져야 해요. `DO_NOT_TRACK=1`은 완벽한 강제 장치는 아니지만, 최소한 “추적하지 말라”는 신호를 공통 언어로 만드는 장점이 있어요.

- 구현도 어렵지 않아요. 소프트웨어 작성자는 프로그램 시작 시 환경변수를 확인하고, 값이 `1`이면 광고 추적, 사용량 보고, 크래시 리포팅, 비필수 네트워크 요청을 비활성화하면 돼요. 기존 opt-out 설정과 충돌시키지 말고 더 강한 사용자 거부 의사로 처리하는 게 자연스러워요.

- 중요한 건 이게 보안 기능이라기보다 생태계 약속에 가깝다는 점이에요. 악의적인 프로그램을 막지는 못하지만, 정상적인 오픈소스 도구와 개발자 도구가 사용자 프라이버시 의사를 쉽게 존중하게 만드는 낮은 비용의 표준 신호라고 보면 돼요.

## 핵심 포인트

- CLI 도구와 SDK마다 텔레메트리 opt-out 방식이 달라 사용자가 일일이 찾아야 함
- `DO_NOT_TRACK=1` 하나로 광고 추적, 사용량 보고, 텔레메트리, 크래시 리포팅, 비필수 네트워크 요청을 끄자는 제안
- 소프트웨어 제작자는 기존 opt-out 설정과 함께 이 환경변수를 확인하고 존중하자는 내용
- 가능하면 텔레메트리를 기본 수집이 아니라 opt-in 방식으로 바꾸자는 주장도 포함됨

## 인사이트

개발자 입장에서는 꽤 현실적인 불편을 찌르는 제안이다. 도구마다 다른 환경변수와 설정 파일을 외우는 대신, 최소한 ‘나는 로컬 도구가 조용히 네트워크로 뭘 보내는 걸 원치 않는다’는 신호를 한 번에 표현하자는 얘기다.
