ライフスタイル

Claude Codeにmodsが登場:TypeScriptで動作とインターフェースを書き換え、pluginに入れて使う

Anthropicは2026年10月1日にClaude Codeのmodsを発表しました。pluginに入れ、Claude Codeのプロセス内で実行されるTypeScriptまたはJavaScriptの関数で、プロンプトの書き換え、ツール呼び出しの制御、新しいインターフェースの描画ができます。AnthropicはCLIとdesktop appで使えるとしており、modsにサンドボックスはなく、ドキュメントにはv2.1.287以上が必要と書かれています(2026年10月確認)。

読了目安 14 分

オリジナルのイラスト:左のブロックがイベントを表し、中央のmodを表すカード(両側に接点が一つずつ)を通って、右のターミナルウィンドウに会話のテキストとmodが加えたペインが表示される。下の二枚の点線のカードは順に読み込まれる他のmod。商標やインターフェースのスクリーンショットは含まない。
画像:Mokaair (© Mokaair)

Anthropicは2026年10月1日に、mods(Claude Codeの動作とインターフェースを書き換える小さなプログラム)を発表しました。TypeScriptまたはJavaScriptで書く関数で、pluginに入れ、Claude Codeのプロセス内で実行されます。AnthropicはCLIとdesktop appの両方で使えると説明しています。

この記事の情報は2026年10月4日に確認したもので、根拠はAnthropicのブログと3ページのドキュメントです。当サイトはmodを一つもインストール・実行しておらず、以下の機能や制限はすべてAnthropicの説明です。

modsとは:pluginに入れ、Claude Codeのプロセス内で動く関数

AnthropicによるとClaude Codeは何かを行うたびにイベントを発行し、modはそのイベントにフックされ、イベントの前、後、またはイベントの代わりに実行される関数です。ドキュメントによると、小さなmodは.claude-plugin/plugin.json、hooks/hooks.json、hooks/register.jsの3ファイルでできており、hooks.jsonのmodulesフィールドがコードファイルを指していて、これがあることでmodになります。

ドキュメントによると、Claude Codeは二つのものをどちらもhooksと呼びます。設定ファイルに書くシェルコマンド、HTTPリクエスト、プロンプトを、以下では「設定ファイルのHook」と呼び、Claude Codeの内部で実行されるハンドラ関数を「modのイベント関数」と呼びます。

読み込み時にClaude Codeはregister(on)を呼び出し、onでイベント関数を登録します。各関数は$(mods API)、e(イベントのデータ)、next(他のmodsとClaude Code本来の動作に処理を渡す関数)を受け取ります。ドキュメントは処理の仕方を三つ挙げています。観察、書き換え、引き継ぎ(自分で処理し、本来の動作は実行されない)です。

できること:プロンプトの書き換え、ツール呼び出しの制御、インターフェースの描画、コマンドの追加

Anthropicが挙げる機能は次のとおりです。プロンプトがモデルに届く前の書き換え、ツール呼び出しのブロック・書き換え・再試行、権限リクエストの承認や拒否、Claudeが読む前にツール出力から機密情報を伏せること、インターフェースの一部の変更や置き換え、ボタンや入力欄の追加。ドキュメントによると、ペインやプロンプト上方のバンドを描画でき、Claudeのターンを経ない/commandを追加できます。

複数のmodsが同じイベントにフックされた場合は読み込み順に実行され、最初に読み込まれたmodがイベントを最初に見て、結果を最後に見ます。組み込みの/diffは現在modになっており、/pluginでオフにするか、自分のバージョンに置き換えられます。ドキュメントによると、無効にしても/diffは残り、組み込み版が応答します。Anthropicは、設定ファイルのHookにはイベントの書き換え、新しいインターフェースの描画、機能の置き換えができず、modsにはできると説明しています。一方ドキュメントには、設定ファイルのHookはこれまでどおり実行され、非推奨になったものは一つもないと書かれています。下の表の四つのうち、インターフェースを描画できるのはmodだけです。

mod、設定ファイルのHook、skill、MCP serverの比較。Claude Codeドキュメントのmods概要ページにある比較表を短くしたもので、確認日は2026年10月4日です。
種類内容変更できるもの書くもの
modplugin内の関数で、Claude Codeが自身のプロセス内で呼び出すツール呼び出し、プロンプト、コマンド、ターン、インターフェースの描画内容JavaScriptまたはTypeScript
設定ファイルのHookClaude Codeがライフサイクルイベントで実行するシェルコマンド、HTTPリクエスト、またはプロンプトツール呼び出しやプロンプトを通すかどうか、引数と結果、Claudeに追加するコンテキストスクリプト1本と、settings.jsonの設定1件
skillClaudeが読む、指示を書いたSKILL.mdファイルClaudeが知っていること、することMarkdown
MCP serverClaudeにツールを提供する外部のプロセスまたはサービスClaudeが使えるツール任意の言語で書いたサーバー

使いどころ:チームの管理とサンプルmod

ブログは、チームがmodsで自作できる例を三つ挙げています。会話の横のペインにCI/CDの状況を表示する、コマンドがproduction設定に触れる前に確認を求める、最初に読み込まれるmodが他のすべてのmodの呼び出しをすべて記録する、というものです。

ドキュメントの三つのサンプルmodはclaude-code-playgroundリポジトリにあり、現状のまま共有され、サポートは提供されません。token-weatherはプロンプト上方にcontext windowの予報を描き、blast-radiusはrm -rfやforce pushのような危険なコマンドを止めて何が変わるかを表示し、replay-theaterは/replayコマンドを追加して、Claudeが直前のターンで行ったファイル編集を順に再生します。

組み込みのmodsは/pluginのInstalledタブのBuilt-inの下に一覧されます。たとえば/diffを引き継ぐcc-plugin-diffや、最後の節で触れるcc-plugin-sec-defaultです。cc-plugin-you-should-knowはデフォルトで無効で、ドキュメントによると「if available for your org」の場合にだけ一覧に表示されます。

四つの枠の図解:イベント(ツール呼び出し、プロンプト、画面)、関数(観察、書き換え、引き継ぎ)、インターフェース(ペイン、ボタン、コマンド)、管理(sec-defaultが先に読み込まれる)
Claude Codeのmodsは、ツール呼び出し、プロンプト、画面などのイベントを受け取り、関数で観察、書き換え、引き継ぎを行い、ペイン、ボタン、コマンドを追加できます。マネージド設定のあるマシンやTeam/Enterpriseプランでログインしたときは、組み込みのsec-defaultが先に読み込まれます。AnthropicのブログとClaude Codeドキュメントをもとに整理したもので、確認日は2026年10月4日です。 · 画像:Mokaair (© Mokaair)

使い始めるには:バージョン、インストール、Claudeに書かせるか自分で書く

ドキュメントによると、modsにはClaude Code v2.1.287以上が必要で、デフォルトでオンです。claude --versionで確認します。ブログは、Claude directoryから、またはCLIで/pluginを実行して、modsを含むpluginをインストールできると説明しており、ドキュメントに書かれた形式は/plugin install 名前@marketplaceです。

自分で書く場合、Node.jsもbuild stepも不要です。claude --plugin-dirでディレクトリを指定すると1セッションだけ読み込まれ、ファイルを変更するとホットリロードされます。Claudeに書かせる場合、ドキュメントによると、Claudeは組み込みのplugin-authoring skillに従って~/.claude/dev-mods/のセッション用フォルダにmodを書き、承認するまで読み込まれず、cleanupPeriodDaysを過ぎると削除されます。

他の人のmodをインストールする前に、pluginのファイルを入手してclaude plugin validateを実行すると、modを実行せずに、そのmodが扱うイベントと呼び出すメソッドを一覧できます。

ドキュメントによると、modのインターフェースが描画されるのはターミナルとDesktop appのCodeタブです(Codeタブでは、ターミナル専用の要素は描画できません)。DesktopのWSLセッションではpluginsが使えず、イベント関数も動きません。VS Code拡張機能のチャットパネル、claude -p、Agent SDK、クラウドセッション(クラウドに届くpluginに限る)では、動くだけで描画はされません。Remote Controlを使うときは、イベント関数は手元のマシン上のセッションで動き、手元のマシンのターミナルに描画されます。

セキュリティと企業向けの管理:サンドボックスはなく、管理者にできること

ドキュメントによると、modsにはサンドボックスがなく、ユーザーの権限で実行されます。環境変数や設定ファイル(中のAPIキーを含む)を読み、ユーザーが尋ねられる前にツール呼び出しを承認し、ユーザーのプランやAPIキーでモデルを呼び出せますが、権限プロンプトそのものは変更できません。サンドボックス化をオンにしても隔離されるのはClaudeが実行するBashコマンドだけで、modが起動したプログラムはサンドボックスの外で動きます。

組み込みのsec-defaultは、マシンにマネージド設定があるとき、またはTeam・Enterpriseプランでログインしたときに読み込まれます。APIキーやAmazon Bedrock、Google Cloud、Microsoft Foundryで認証する人の場合は、マネージド設定のあるマシンでだけ読み込まれます。止めるのは、ユーザーのmodが管理者の管理下にあるもの(たとえば管理者が管理する設定ファイルのHookが受け取る内容や判断、システムプロンプト)を変更することと、denyルールで拒否されたツール呼び出しを承認することだけで、それ以外はすべて許可されます。denyルールは、mod自身の$.fsや$.processの呼び出しには効きません。

管理者向けのスイッチは次のとおりです。allowManagedModsOnlyは、ユーザーが持ち込むmodsを止めます。disableSideloadFlagsは、--plugin-dir、--plugin-url、およびClaudeがセッション中に書いたmodsを拒否します。prependPluginsとappendPluginsは組織のmodの順序を決め、prependPluginsを設定するときはsec-default@builtinを並べないと組み込みのguardが残りません。マネージド設定のdisableAllHooksは、組織のmodsと、管理される設定ファイルのHookまで止めます。

個人は、/pluginのInstalledタブで個別のmodを無効にでき、--safe-modeで1セッション分のインストール済みmodsを止められ(他のカスタマイズも止まります)、~/.claude/settings.jsonにdisableAllHooksを設定することもできます(設定ファイルのHookとカスタムstatus lineも止まり、組織が管理するものは通常どおり動きます)。後の二つは組み込みmodsを止めません。

よくある質問

modsを使うにはどのバージョンが必要ですか?

ドキュメントによると、modsにはClaude Code v2.1.287以上が必要で、デフォルトでオンです。claude --versionで確認できます。

modを書くのにNode.jsやbuild stepは必要ですか?

ドキュメントによると不要です。自分でmodを書くのに、Node.jsもbuild stepも必要ありません。

modsは設定ファイルのHookに取って代わりますか?

いいえ。Anthropicが述べているのは、設定ファイルのHookにはできないことがmodsにはできるということです。ドキュメントによると、設定ファイルのHookはこれまでどおり実行され、非推奨になったものは一つもありません。

modsはどうすればオフにできますか?

個別のmodは/pluginのInstalledタブで無効にします。1セッションだけなら--safe-modeで起動します(他のカスタマイズも止まります)。または~/.claude/settings.jsonでdisableAllHooksをtrueに設定します。この場合、設定ファイルのHookとカスタムstatus lineも一緒に止まり、組織が管理するものは通常どおり動きます。--safe-modeもdisableAllHooksも組み込みmodsは止めません。

個人向けプランでもmodsは使えますか?

ブログに書かれているのは、modsはClaude Code CLIとdesktop appで使えるということだけです。ここで引用したブログと3ページのドキュメントには、確認日の2026年10月4日時点で、プランごとに使えるかどうかは書かれていません。

VS Code拡張機能やクラウドセッションでmodsは使えますか?

ドキュメントによると、modのイベント関数はVS Code拡張機能のチャットパネルで動き、クラウドセッションではクラウドに届くpluginについて動きますが、どちらもペインやバンドは描画されません。

最新の旅の情報・ガイド

出典

ライフスタイル