Claude CodeのfeedbackSurveyRateでアンケートを減らす・止める
「How is Claude doing this session?」の表示率を決める設定キーfeedbackSurveyRateの値、未設定時の率、環境変数との優先順位をまとめます。
feedbackSurveyRateはアンケートの表示確率を決める設定キー
Claude Codeを使っていると、作業の合間に「How is Claude doing this session?」と評価を尋ねるプロンプトが出ることがあります。これがセッション品質アンケートです。表示の頻度を決めるのが設定キーfeedbackSurveyRateで、値は0から1までの数値です。
feedbackSurveyRateは、セッションがアンケートの対象になったときに実際に表示する確率を指定します。0にすると表示されません。0.05なら対象セッションの5%で出ます。
{
"feedbackSurveyRate": 0
}このキーはsettings.jsonのユーザー設定でもプロジェクト設定でも書けます(適用範囲は「Any file」)。VS Code拡張のアンケートにも同じ率が使われます。
止めたいだけなら環境変数CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1という手もあります。どちらを選ぶかは、後述の優先順位を押さえると決めやすくなります。
未設定のときの表示率は接続先で変わる
feedbackSurveyRateを書かなければ、率はClaude Code側が決めます。
| 接続先 | 未設定時に使われる率 |
|---|---|
| Claude API(Anthropic直結) | 未設定時に使われる率Anthropicが遠隔で設定する率 |
| Amazon Bedrock | 未設定時に使われる率組み込みの0.005 |
| Google Cloud Agent Platform(Vertex) | 未設定時に使われる率組み込みの0.005 |
| Microsoft Foundry | 未設定時に使われる率組み込みの0.005 |
BedrockとVertex、Foundryは遠隔設定を受け取らないため、固定の0.5%が使われます。平均すると、対象セッション200回に1回の計算です。Anthropic直結の側は、遠隔で率が変わるので固定の数字を前提にできません。「最近よく出る」と感じたら、率を自分で固定してしまうのが手っ取り早い対処です。
意外に見落とされるのは、アンケートがクラウド経由の利用でも止まらない点です。Bedrock・Vertex・Foundry・Claude Platform on AWSでは、エラー報告やテレメトリ、/feedbackは既定でオフになります。ところがセッション品質アンケートとWebFetchのドメイン安全確認は例外で、プロバイダーに関係なく動きます。「クラウド経由だからテレメトリ系は全部止まっている」と考えていると、アンケートだけ出続けます。
アンケートを左右する4つの設定と優先順位
止める・減らす手段は3つあります。加えて、評価だけを自社のコレクターに流す逆方向のスイッチが1つあり、合わせて4つです。
アンケートを制御する4つの手段
feedbackSurveyRate
設定ファイルに書く確率。
0で表示なし、0.05のように下げれば頻度だけ減らせます。CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY
アンケート専用の停止スイッチです。
テレメトリ系の一括オフ
DISABLE_TELEMETRY・DO_NOT_TRACK・CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICの3つが対象です。CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL
通信を絞りつつ、評価だけ自社のOpenTelemetryコレクターに流したい組織向けの逆方向のスイッチです。
衝突したときの結果は次のとおりです。
| 設定の組み合わせ | アンケート |
|---|---|
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1(率は何でも) | アンケート出ない |
DISABLE_TELEMETRY・DO_NOT_TRACK・CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICのいずれか | アンケート出ない |
上のいずれかとCLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL=1 | アンケート自社のOTELコレクターにだけ記録される。Anthropicには送られない |
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1とCLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL=1 | アンケート出ない(DISABLE側が優先) |
feedbackSurveyRate: 0 | アンケート出ない |
feedbackSurveyRate: 0.05 | アンケート対象セッションの5%で出る |
| 何も設定しない | アンケート遠隔設定の率、またはBedrock・Vertex・Foundryでは0.005 |
要点は、環境変数のCLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1が率より強いことです。率を0.5にしていても、環境変数が1のセッションでは出ません。公式の記述では「そのセッション1回に限った上書き」(per-session override)とされています。常に止めたいなら設定キーを0に、一時的に静かにしたいときは環境変数、と分けると意図が読みやすくなります。
テレメトリ系の変数でアンケートも止まる点には注意が要ります。DISABLE_TELEMETRYを入れた時点で、アンケートの表示率を気にする必要はなくなります。裏を返すと、アンケートだけ止めたいのにテレメトリ全体を切る必要はありません。DISABLE_TELEMETRYの範囲はDISABLE_TELEMETRYとは、DO_NOT_TRACKとの関係はDO_NOT_TRACKとはにあります。
設定ファイルに書くか、環境変数にするか
アンケートだけを恒久的に止めたい個人利用なら、ユーザー設定の~/.claude/settings.jsonにfeedbackSurveyRate: 0を書くのが簡単です。
{
"feedbackSurveyRate": 0
}環境変数で止めたい場合、settings.jsonのenvキーに書けば、シェルの設定ファイルを触らずに済みます。公式は「環境変数はすべてsettings.jsonに書ける」としています。
{
"env": {
"CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY": "1"
}
}シェルで一時的に止めるなら、起動前に変数を付けます。
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1 claudeどちらを選ぶかは、止めたい範囲で決まります。
- 自分のマシンのすべてのセッションで止める: ユーザー設定に
feedbackSurveyRate: 0 - 特定のリポジトリだけ静かにする: プロジェクト設定に同じキー(チームのメンバー全員にも効く)
- 今日の1セッションだけ止める: シェルで
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1を付けて起動する - 完全に消すのではなく、頻度だけ下げる:
0.01のような小さい値
プロジェクト設定にコミットすると、チーム全員のアンケートがまとめて止まります。評価を送るかどうかは本来個人の判断なので、リポジトリに入れる前にチームで合意しておくと揉めません。
率を0にしても、消えない通知がある
feedbackSurveyRateが止めるのは、セッション品質アンケートだけです。見た目が似ていても、別の機能は止まりません。
/feedbackコマンド: 自分で実行するフィードバック送信。止めるにはDISABLE_FEEDBACK_COMMAND=1- Claudeが起草するフィードバック:
feedbackDraftsで制御します。手順はfeedbackDraftsを無効化してフィードバック下書きを止めるにあります - WebFetchのドメイン安全確認:
skipWebFetchPreflightが別に用意されています
アンケートの表示と、フィードバックの下書き表示は、名前が近くて混同されがちです。「How is Claude doing this session?」と評価を求めるのが前者で、Claudeが不具合を見つけて下書きカードを出すのが後者です。画面に出ているものがどちらかを見分けてから、対応する設定を選びます。
答えると何が送られるのか
評価プロンプトに答える、あるいは「Dismiss」を選ぶと、記録されるのは評価だけです。会話の内容や入出力といったセッションのデータは、この評価の段階では収集されません。サムズアップ・ダウンのフィードバックや/feedbackのレポートとは違い、単純な満足度の指標という扱いです。
評価のあとに、別のフォローアップが出ることがあります。「Can Anthropic look at your session transcript to help us improve Claude Code?」という質問です。選択肢は3つです。
| 選択肢 | 起きること |
|---|---|
| Yes | 起きること会話のトランスクリプト、サブエージェントのトランスクリプト、ディスク上の生のセッションログをAnthropicへアップロード。既知のAPIキーやトークンの形式は伏せ字にされるが、ソースコードやファイルの中身はそのまま送られる。保存期間は最長6か月 |
| No | 起きること何も送らずに断る |
| Don't ask again | 起きること断り、以後このフォローアップを出さない |
Yesを選ばない限り、何もアップロードされません。ここで職場に関わる注意が1つあります。Yesの対象にはソースコードやファイルの中身が含まれ、秘密情報の自動マスキングはAPIキー類の既知パターンだけです。社内コードを扱う環境では、アンケートに反射的に答えてしまう事故を避けるために、表示そのものを止める運用が分かりやすい選択肢です。
なお、Bedrock・Vertex・Foundryと、サインイン済みのClaude apps gatewayセッションでは、Yesを選んでもアップロードされません。同じ内容が~/.claude/feedback-bundles/にローカルのアーカイブとして書き出されるだけで、そのファイルを自分で転送しない限りマシンの外には出ません。
フォローアップが出ない条件もあります。ゼロデータ保持(zero data retention)の組織、組織のポリシーでプロダクトフィードバックが無効な場合、CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICが設定されている場合です。回答はデータ学習の設定に影響せず、AIモデルの学習には使えないとされています。
組織で一律に止める運用
管理者が全員の画面を静かにしたいなら、feedbackSurveyRateは管理者設定(managed settings)にも書けます。適用範囲が「Any file」だからです。
{
"feedbackSurveyRate": 0
}通信の制限と組み合わせるなら、判断は2通りに分かれます。
- 通信を絞る方針の組織:
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICを設定すれば、アンケートもフォローアップも自動で止まります - 通信は絞るが評価は集めたい組織: 上記に加えて
CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL=1を設定します。評価はOpenTelemetryのイベントとして自社コレクターにだけ出ます。トランスクリプト共有のフォローアップなど、Anthropic宛てのフィードバック通信は止まったままです
後者のとき、CLAUDE_CODE_DISABLE_FEEDBACK_SURVEYと組織のプロダクトフィードバック方針は、OTEL側のスイッチより優先されます。OTELで集める設計にしたのに評価が届かないときは、この2つが効いていないかを疑う順番になります。
設定したのにアンケートが出るときの切り分け
feedbackSurveyRate: 0を書いたのに表示されたときの確認順です。
- JSONの文法を確認する。末尾のカンマや引用符の抜けで、設定ファイル全体が読めていない場合があります
- 書いた場所を確認する。このキーは「Any file」なので、ユーザー・プロジェクト・ローカルのどれでも有効ですが、別のファイルに別の値が書かれていないか見ます
- 管理者設定に別の値が入っていないか見る
- 出ているのがアンケートかを見分ける。フィードバック下書きのカードや
/feedbackは、このキーでは止まりません - 確実に止めたい検証では、
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1を付けて起動し直す。環境変数は率より優先されるので、切り分けの基準になります
環境変数を付けて止まれば、原因は設定ファイル側にあります。付けても出るなら、それはアンケートではない表示です。
迷ったときの選び方
アンケートを煩わしく感じる個人は、feedbackSurveyRateを0にすれば足ります。評価は集めたいが頻度は下げたい場合は、0.01前後の小さい値で様子を見られます。ソースコードを扱う環境でトランスクリプト共有を避けたい場合は、率を絞るより止めるほうが判断の手間が減ります。
フィードバック系の仕組み全体は、コマンドの使い方も含めてClaude Codeのバグ報告とフィードバック送信(/bug /feedback)にまとまっています。アンケートはその中でも、Anthropicが出す側の機能にあたります。