1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

フックの重複送信が修正、プラグインのサブモジュール取得も最適化:2026-10-26 公式ドキュメント更新

1
Posted at

2026-10-26 のドキュメント追加は、フックの SessionStart 挙動の変更点の明文化、プラグインマーケットプレイスにおける Git サブモジュールの取得ルール、Desktop 経由の SSH 接続時における環境変数の扱いの 3 点に集中している。フックとプラグインマーケットプレイスの変更はいずれも v2.1.295 を境にした動作の変化を説明するものである。

SessionStart フックの重複送信がバージョン 2.1.295 で修正された

フックが返す additionalContext や systemMessage は、バックグラウンドプロセスの終了後、次の会話ターンで Claude に届く。しかし v2.1.295 より前は、会話を再開するたびに同じテキストが繰り返し追加されていた。

Before v2.1.295, Claude Code added the same text to the conversation again on every resume.

(出典 [1])

(訳:バージョン 2.1.295 より前は、Claude Code は再開のたびに同じテキストを会話に追加していました。)

現在は重複を抑制する仕組みが導入されており、そのフックが最後に送ったテキストと一致する場合は出力が省略される。ただし、同期型の SessionStart フックがその後に別のテキストを追加していれば省略されない。また、コンパクションや /clear のあとに最初にフックが実行されたタイミングでは、テキストが改めて届く。非同期の SessionStart フックはイベントが発火するたびに毎回実行される点も今回明記された。

PreToolUse フックについては、タイムアウトを超えた Agent SDK コールバックフックがツール呼び出しをブロックすることも追加されている。

プラグインマーケットプレイスのサブモジュール取得ルール

マーケットプレイスをリポジトリとして管理している場合、v2.1.295 以降の Claude Code はプラグインファイルを含む Git サブモジュールだけを取得する。全サブモジュールを無条件に clone するのではなく、必要な範囲に絞る動作である。

Claude Code fetches the submodules inside the plugin's directory and a submodule that contains it.

(出典 [2])

(訳:Claude Code はそのプラグインのディレクトリ内にあるサブモジュールと、そのプラグインを含むサブモジュールを取得します。)

これはプラグインがサブディレクトリに置かれている場合の挙動だ。一方、プラグインをリポジトリのルートに置くと、いずれかのファイルがサブモジュール内のパスを参照した時点でリポジトリ内の全サブモジュールが取得される。ビルド専用の大きなサブモジュールを含む場合は、プラグインをサブディレクトリに移すだけで取得対象から外せる。

必要なサブモジュールを判断するために Claude Code はフックやサーバー設定に書かれたパスを静的に読む。スクリプト実行中に動的に組み立てられたパスは参照できないため、パスは設定ファイルに直接記述する必要がある。

Desktop から SSH 接続した環境での環境変数

Claude Code を Desktop アプリ経由でリモートマシンに SSH 接続して使う場合、Desktop 側で設定した環境変数はリモートの Claude Code セッションに渡されない。また、/etc/profile などログインシェルでのみ読み込まれるファイルに書いた変数も同様に届かない。

Desktop doesn't start Claude Code through a login shell.

(出典 [3])

(訳:Desktop はログインシェルとして Claude Code を起動しません。)

リモート側で変数を確実に渡すには、リモートマシン上の管理設定ファイルの env セクションに変数を記述する方法がドキュメントに案内されている。動作の変更ではなく、トラブルシューティング情報の追加である。

まとめ

この日の更新で実際の運用に影響するのは、主に 2 つのケースだ。フックを使って Claude に動的なコンテキストを渡している場合は、v2.1.295 での重複送信修正の影響を確認する機会になる。マーケットプレイスリポジトリに大きな Git サブモジュールを含む開発者は、プラグインの配置ディレクトリを変えることで取得コストを削減できる可能性がある。SSH 環境変数の件は動作変更を伴わない説明の追加であり、既存の挙動に変化はない。

出典

本稿の引用はすべて一次資料と逐語照合(verify_article 通過)のうえ掲載しています(2026-11-02 検証)。

[1] https://code.claude.com/docs/en/hooks
[2] https://code.claude.com/docs/en/plugin-marketplaces
[3] https://code.claude.com/docs/en/monitoring-usage

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?