Claude Media
Claude Code Artifactの自動返信を止める2つの環境変数

Claude Code Artifactの自動返信を止める2つの環境変数

Artifactのコメントを読ませない設定と、返信だけ止める設定は別物です。2つの環境変数の違いと前提条件をまとめます。

このTipsでできること

Claude CodeでArtifactを公開すると、Claude Codeはそのページへのコメントを見張り、コメントが届くと自分で読んで返信します。この挙動を止める環境変数は2つあり、どちらを設定するかで止まる範囲が変わります。設定を選ぶ前に、それぞれが何を止めて何を止めないのかを正確に押さえておくと迷いません。

CLAUDE_CODE_ARTIFACT_COMMENTSを0にすると、Claudeはコメントを読むこと自体をやめます。CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACTを0にすると、読むことは続けつつ自分から返信するのだけをやめます。コメント機能は残しつつ「気づいたら返信されていた」を防ぎたい場合は後者を選びます。

やり方

シェルで一時的に無効化するには、claudeを起動する前に環境変数をexportします。

export CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT=0
claude

毎回のセッションで固定したいときは、settings.jsonのenvキーに書きます。ユーザー全体に効かせるなら~/.claude/settings.json、プロジェクト内の全員に効かせるなら.claude/settings.jsonです。自分のマシンだけ・このプロジェクトだけに絞りたいときは.claude/settings.local.jsonを使います(Claude Codeが保存した場合は自動でgitignore対象になり、手で作った場合は自分でgitignoreに追加します)。

{
  "env": {
    "CLAUDE_CODE_ARTIFACT_COMMENTS": "0",
    "CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT": "0"
  }
}

設定ファイルを保存すると、実行中のセッションにもその値が反映されます。ターミナルを起動し直したりclaudeを再起動したりする必要はありません。ただしOpenTelemetryのように起動時に一度だけ環境変数を読む機能は、次にclaudeを起動するまで古い値のまま動きます。

両方を0にすれば、コメントの読み取りと自動返信の両方が止まります。片方だけ0にする場合は、読み取りは続けたいのか、読み取りごと止めたいのかで選びます。

変数止まる範囲必要バージョン
CLAUDE_CODE_ARTIFACT_COMMENTS止まる範囲コメントの読み取りと返信の両方必要バージョンv2.1.221以降
CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT止まる範囲自分から返信する動作のみ(読み取りは継続)必要バージョンv2.1.228以降

CLAUDE_CODE_ARTIFACT_COMMENTSにはCLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICがArtifacts自体をオフにしている場合は効果がないという前提条件が付きます。この変数が立っているセッションではArtifactsそのものが使えないため、コメント関連の設定を触る必要がありません。

自動返信の仕組みを理解してから止める

CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACTが有効な状態(既定)では、セッションがArtifactを公開したあと、そのセッションが動き続けている間はコメントを監視し続けます。編集権限を持つ人がコメントでSend to Claudeを使うか@claudeと書くと、コメントはそのセッションにすぐ届きます。

届いたコメントへの対応は、そのときの権限モードで変わります。

  • 承認なしで投稿できるモードでは、Claudeはスレッドを読んで返信し、変更を求められていればArtifactも編集します。返信だけならターミナルにAuto-replied to comment thread on Artifact: <name>、コメントを反映してArtifactを編集した場合はAuto-edited Artifact: <name> in response to a comment threadと表示されます
  • 承認が必要なモードでは、Comments are waiting on Artifact: <name>と表示され、読む許可と投稿する許可を別々に求められます
  • plan mode中は同じ表示のまま待機し、plan modeを抜けて読み書きを指示するまで反応しません

Claudeが返信・解決できるのは、編集権限を持つ人がSend to Claudeか@claudeでアクティブ化したスレッドだけです。アクティブ化されていない他のスレッド(同僚が感想だけを書いたコメントなど)は、CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACTの設定に関係なく、誰かがページ上で手動で解決するまで開いたまま残ります。

1時間に60件のスレッドに反応すると、ClaudeはそのArtifactへの自動返信を一時停止します。この上限も止める・止めないの判断材料になります(意図せず反応しなくなったときの原因調査に使えます)。

コメントを配信する側のサービスが一時的に落ちたり応答しなくなったりした場合、Claude Codeはしばらく再接続を試み続け、それでも復旧しなければそのセッションが監視していた各Artifactの監視を打ち切ります。自動返信が急に止まったとき、環境変数を疑う前にこの経路も候補に入れておくと原因調査が早くなります。

なぜ自動返信を止めたくなるか

自動返信の返信は、コメントを見た人に「Claude(あなたを通じて)」と表示されます。つまり公開Artifactのコメント欄に、あなたが書いていない文章があなたの名前とセットで残ります。承認なしで投稿できる権限モードのまま長時間セッションを走らせていると、社内の別チームからの質問や、修正依頼と紛らわしいコメントにもClaudeが即座に反応します。

レビュー前に人の目を必ず通したいチームはCLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT=0で自動返信だけを止め、コメント自体を人が確認してから明示的に対応を頼む運用に寄せられます。この運用では、コメントを読ませたいタイミングでArtifactのURLを渡して依頼するだけで済みます。

Read the comments on https://claude.ai/code/artifact/<id> and make the changes the commenters ask for.

自動返信を止めていても、この形でURLを渡して頼めばClaudeはコメントを読み、指示どおりに対応します。このときClaudeはスレッドを1件ずつ列挙し、編集権限を持つ人がClaudeへ送ったコメントには印を付けて示すので、どのコメントに対応が必要かを見分けられます。「自動で反応させない」と「頼んだときだけ反応させる」を両立できるのは、読み取り自体を止めるCLAUDE_CODE_ARTIFACT_COMMENTS=0ではなくCLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT=0を選んだときだけです。Artifactのコメント機能そのものを使わない、あるいは共有範囲を広げたくない場合はCLAUDE_CODE_ARTIFACT_COMMENTS=0で読み取りごと止めます。

補足・応用

自動返信を止める手段は環境変数以外にも複数あります。

  • アイドル状態のプロンプトでCtrl+Cを1回押すと、そのセッションが監視している全Artifactへの返信が一時停止し、次のメッセージを送るまで再開しません
  • /tasksでそのArtifactの監視タスクを個別に止められます。再度公開しても返信は再開せず、セッションを再開したあとも止まったままです
  • Ctrl+X Ctrl+Kを3秒以内に2回押すと、実行中のバックグラウンドサブエージェントを止めるのと同じ操作で、セッション内の全Artifactへの返信もそのセッションが終わるまで止まります

コメント機能自体が使えるのはTeamまたはEnterpriseプランで、組織内で共有したArtifactに限ります。公開リンクで共有したArtifactにはコメント欄自体が表示されず、ページにはComments aren't available while this Artifact is shared publicly.と表示されます(既存のコメントスレッドがある状態で公開リンクに切り替えるには、先にスレッドを削除する必要があります)。

インストール直後や、コメント機能を追加したバージョンへのアップグレード直後の最初のセッションでは、機能フラグの取得が済んでいないためCLAUDE_CODE_ARTIFACT_COMMENTSを設定していなくてもコメントを読めないことがあります。これは無効化の設定とは無関係の一時的な制約で、次のセッションから解消します。

さらにDISABLE_GROWTHBOOK・DISABLE_TELEMETRY・DO_NOT_TRACKのいずれかで機能フラグの取得自体を止めている場合も、コメントの読み取り・返信は動きません。この3変数はテレメトリ全般に関わる設定なので、Artifactのコメントだけを狙って無効化したいときはCLAUDE_CODE_ARTIFACT_COMMENTS系の2変数を使う方が影響範囲が狭く済みます。

設定ファイルが複数ある環境では、どのファイルの値が実際に効くかも確認しておきます。シェルでexportした値よりsettings.jsonのenvブロックの値が優先され、env同士では管理設定(managed settings)がユーザー設定・プロジェクト設定より優先されます。プロジェクトの.claude/settings.jsonに書けば全員に、~/.claude/settings.jsonに書けば自分だけに適用されるので、チーム全体でコメントの自動返信を止めたいならプロジェクト側に、自分のセッションだけ止めたいならユーザー側に書きます。設定ファイルのenvブロックは値を上書きできても、変数を「未設定」の状態には戻せません。誰かのシェルプロファイルがexportした値を無かったことにしたい場合は、空文字列("")を指定します。

コメントだけでなくArtifacts自体を使わせたくない場合は、コメント用の2変数とは別の設定を使います。どの方法も、コメントの読み取り・自動返信の2変数より上位の設定です。

設定場所方法
/config方法Artifactsの行を切り替える(ユーザー設定に"enableArtifact": falseを書き込む)
設定ファイル方法"enableArtifact": falseを直接記述(非推奨の"disableArtifact": trueも同じ効果)
環境変数方法CLAUDE_CODE_DISABLE_ARTIFACT=1を設定
権限ルール方法permissions.denyにArtifactを追加

--settingsで渡したファイル・CLAUDE_CODE_DISABLE_ARTIFACT・管理設定(managed settings)のいずれかでオフにした場合は、どの設定ファイルでも再度オンに戻せません(v2.1.242以降。それより前は、優先順位の低いファイルが"enableArtifact": falseでも、優先順位の高いファイルで"enableArtifact": trueにすればオンに戻せました)。/configにはコメントの読み取りや自動返信だけを切り替える項目はなく、この2つは環境変数かsettings.jsonのenvブロックでしか設定できないので、/configの画面をいくら探しても見つからない点に注意します。

なおdomain:部分のないWebFetchのdeny・askルールを追加してもArtifactsは止まりません。Artifactの読み取りに効かせたい場合はWebFetch(domain:claude.ai)のように対象を明示したルールが必要です。Artifactの共有範囲や組織側の管理方針はClaude Code Artifactsの組織管理にまとまっています。

Artifactの共有ページがどう更新されるかはClaude Code Artifactsの共有ページが同じURLで自動更新される仕組みで扱っています。

よくある質問

バージョンが足りないとどうなるか

CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACTが導入されたv2.1.228より前のバージョンでは、この変数を設定しても効果がありません。自動返信を止めたいのに効かない場合は、まずclaude --versionでバージョンを確認し、必要なら最新版へアップグレードします。

まとめ

Artifactのコメントへの反応を止めたいときは、読み取りごと止めるか自動返信だけ止めるかをまず決めます。読み取りごと止めるならCLAUDE_CODE_ARTIFACT_COMMENTS=0(v2.1.221以降)、返信だけ止めるならCLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT=0(v2.1.228以降)です。どちらもCLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICでArtifacts自体がオフのときは意味を持たないので、まずArtifactsが使える状態かを確認してから設定します。設定後に効いているか不安なときは、実際にコメントを1件送ってみて反応の有無を見るのが最も確実な確認方法です。

この記事を共有:XはてブLinkedIn