世界を動かす技術を、日本語で。

GitHub CLIが擬似匿名のテレメトリを収集するようになりました

2026年4月22日原文(cli.github.com)

概要

  • GitHub CLI はユーザー体験向上のために 疑似匿名のテレメトリー を送信
  • 送信内容や理由を 透明性 をもって公開
  • テレメトリー内容の確認方法オプトアウト手順 を明示
  • データ送信先や サードパーティ拡張の注意点 も説明
  • Copilot CLI には本内容は 非適用

GitHub CLIのテレメトリー収集について

  • GitHub CLI は製品改善のために 疑似匿名テレメトリー を収集
  • テレメトリーは 機能利用状況の把握 が目的
    • 新しいサブコマンドの利用頻度や使い方の分析
    • 利用が少ない場合は 設計や発見性の見直し 判断材料
    • 特定フラグの高頻度利用は 体験改善の投資先 判断に利用

テレメトリー内容の確認方法

  • GitHub CLIはオープンソース であり、cli/cliリポジトリで実装を確認可能
  • 実際に送信される内容を確認したい場合、 ロギングモード が利用可能
    • 環境変数:export GH_TELEMETRY=log
    • CLI設定:gh config set telemetry log
  • ロギングモードでは、通常送信される JSONペイロード がstderrに出力
  • 例:GH_TELEMETRY=log gh repo list --archived
    • 出力例にはコマンド、OS、アーキテクチャ、バージョン、デバイスIDなどが含まれる
  • コマンドや環境変数、認証アカウントによって 出力内容が変化

オプトアウト方法

  • テレメトリー送信を停止 するには環境変数またはCLI設定を利用
    • 環境変数:export GH_TELEMETRY=false
      • 0, false, disabled, 空文字などのfalsy値も有効
      • export DO_NOT_TRACK=trueも利用可能
    • CLI設定:gh config set telemetry disabled
  • 環境変数がCLI設定より優先 される仕様

データ送信先とプライバシー

  • テレメトリーイベントは GitHubの内部分析基盤 に送信
  • 詳細は GitHub General Privacy Statement 参照
  • GitHub CLI拡張 (GitHub/サードパーティ製)は 独自のデータ収集 を行う場合あり
    • 拡張ごとのドキュメントで テレメトリー有無や無効化方法 を確認
  • 本ページは GitHub CLI(gh)本体のクライアントサイド収集 に関する説明
    • GitHub CopilotやCopilot CLI には適用されない
    • Copilot CLIの詳細は 公式ドキュメント 参照

Hackerたちの意見

短いPRは最高だね!: https://github.com/cli/cli/pull/13254 > テレメトリーを制御する環境変数を削除したから、デフォルトでオンになるよ。

デフォルトでオンなだけじゃなくて、どうやら無効にすることもできないみたい。強制的にオンにされてる感じだね(企業向けを除いて)。

テレメトリーを集める理由…私たちのチームは、機能が実際にどのように使われているかを把握する必要があるんだ。このデータを使って、作業の優先順位を決めたり、機能が本当にユーザーのニーズに応えているかを評価したりしてる。なんで企業の開発チームは、ユーザーを監視する必要があると思ってるんだろう? 良いエンジニアリングやデザインの実践をすれば十分じゃない? Gitは20年以上も、誰がどの機能やコマンドを使っているかの詳細な分析なしでうまく機能してきた。もしGitがテレメトリーを集めていたら、もっと良くなっていたのかな?それとも、データはただの気を散らすものだったのかな?

良いエンジニアリングやデザインの実践をすれば十分じゃない? それが不十分ってわけじゃないけど、新しい開発者やプロダクト担当者、デザイナーは、まず「ユーザーに聞く」ことで実験しないと、センスのある有用な決定ができないんだよね。以前はユーザーベースに対する直感を育てていたけど、今は皆が毎年転職してるから、そんな時間もないんだろうね。だから、すべての決定が「データドリブン」になって、誰もが超満足ってわけじゃなくて、みんな「まあ、いいんじゃない」って感じになってる。

Gitがテレメトリーを集めていたら、もっと良くなっていたのかな?それとも、データはただの気を散らすものだったのかな? あなたがそれが明らかだと言っているのかもしれないけど、私にはそれが役に立たないとは思えないんだ。

企業の開発チームだけじゃないよ — オープンソースの開発チームもユーザーを監視したがってる。例えば、Homebrewでは、「匿名の分析によって、どのように、どこで、いつ人々がHomebrewを使っているかに基づいて、修正や機能の優先順位を決めることができる。」 [1] [1] https://docs.brew.sh/Analytics

なんで企業の開発チームはユーザーを監視する必要があるんだろう?残念ながら、これは「意思決定者」が技術に詳しくない人たちで、実際にツールを使ってないから、どう使われているか理解できていないからだと思う。だから、開発ツールに責任を持つプロダクトマネージャーは、自分の仕事をこなすためにこういう情報が必要なんだよね。まるで、無知なプロダクトマネージャーがeコマースで、ユーザーの行動を追跡するスクリプトでフロントエンドを過剰に重くしているのと同じように。もちろん、そもそもなんでそんな仕事が存在するのかっていう疑問も残る。エンジニアたちは、VCが技術に詳しくない人が高度な技術製品のデザインや開発をリードするという不幸なパラダイムを押し付ける前は、ユーザーとのインタラクションをうまく設計できていたのに…だから、今こうしてデータを共有しているわけだ。ジョーがAIにスライドを促したり、さまざまな「超重要」な会議の合間にPMの給料を稼ぐためには、どうするんだろうね。

ちょっとしたネットワークコールやプライバシーの低下の影響は、ユーザーには「監視されてる」っていう抽象的な認識を超えて感じられないことがほとんどだよね。でも、製品開発チームにとっては、このテレメトリの影響は重要なんだ。テレメトリがプライバシーよりも価値があるとは言わないけど、実際の利益が抽象的なプライバシーの懸念と釣り合うとき、企業にとっては明確な決断になるんだよね。だから、商業的に開発されたアプリやツールには、これが普遍的に適用されるわけ。

なんで企業の開発チームはユーザーを監視する必要があるんだろう?良いエンジニアリングやデザインの実践を使うだけじゃ足りないの?いいえ、ユーザーは開発者とは違うニーズや考えを持っているからです。時には、良いフィードバックを得るのが難しいこともあるし。みんなが機能Xのコンセプトを好きだと言っても、実際には何らかの理由で使わないこともある。ある機能には声の大きいファンがいるけど、実際の売上や使用にはつながらないこともある。 > Gitがテレメトリを収集していたら、もっと良くなっていたのか、それともデータがただの気を散らすものになっていただけなのか?私はそう思う。なぜなら、Gitは有名なほどひどいUIを持っていて、どんなテレメトリでも最初は人々がかなり手間取っていることをすぐに教えてくれるから。別の世界では、テレメトリ付きのGitが出てきて、誰かが統計を見て「git restore」を最初から追加していたかもしれない。だって「git checkout -- foo.txt」は全く直感的じゃないコマンドだから。

自分のスタートアップを作り始めるまでは、必要ないと思ってたんだ。でも、分析がないと盲目的に進んでいるようなもので、ユーザーが実際に何に関心があるのか、成功するユーザージャーニーをどう最適化するのかがわからない。人々が直接聞かれたときに言うことと、実際にソフトウェアを使うときの違いは、驚くべきものだよ。

良いエンジニアリングとデザインの実践を使うだけでは不十分じゃない? Git... Gitはデザインも使い勝手も最悪だよ。エンジニアがエンジニアのためにインターフェースを設計して、フィードバックループがない良い例だね。皮肉なことに、エンジニアは自分たちの製品が実際にどう使われているかをもっと理解する必要があるってことを証明しちゃったね。彼らの頭の中の製品の使われ方のイメージは大体ひどいから。

匿名のテレメトリーは必ずしもスパイ行為ではないけど、「擬似匿名」というのは自由な言論と「絶対主義」を区別するのと同じくらい守られているとは言えないね。GitHubもここでgitの使用を追跡するわけじゃなくて、インストールする必要のないgh CLIを追跡しているだけだよ。とはいえ、たくさんの企業環境にいた経験から、データが匿名化されているとは思えないし、主な動機が内部のOKRや政治に起因することには驚かないな。

Hacker Newsで議論の続きを見る