原文(日本語に翻訳)
プラグインのエラー処理を改善しました。依存関係エラーで競合、無効、過度に複雑なバージョン要件を区別するようになりました。プラグイン更新後の古いバージョン解決を修正しました。プラグインのインストールが中断された場合の復旧もできるようになりました。
原文(英語)
Improved plugin error handling: dependency errors now distinguish conflicting, invalid, and overly complex version requirements; fixed stale resolved versions after plugin update; plugin install now recovers from interrupted prior installs.
概要
Claude Code v2.1.111では、プラグインシステムのエラー処理が大幅に改善されました。依存関係エラーのメッセージが詳細化され、競合・無効・複雑なバージョン要件を明確に区別できるようになりました。また、プラグイン更新後に古いバージョン情報が残る問題と、インストールが中断された場合の復旧機能も改善されました。
基本的な使い方
プラグインのインストール
/plugins install <plugin-name>プラグインの更新
/plugins update <plugin-name>
# または全プラグインを更新
/plugins updateプラグイン一覧と状態確認
/plugins list実践例
依存関係エラーの詳細なメッセージ確認
# プラグインAがプラグインBの特定バージョンを要求する場合
# バージョン競合エラー(変更後の詳細メッセージ):
# Error: 依存関係の競合が発生しました
# plugin-a が plugin-b >= 2.0.0 を要求
# plugin-c が plugin-b <= 1.5.0 を要求
# 現在インストール済み: plugin-b 1.8.0
# 解決策: plugin-aまたはplugin-cのバージョンを変更してください
# 無効なバージョン要件エラー:
# Error: 無効なバージョン要件です
# plugin-a が plugin-b "latest-stable" を要求(セマンティックバージョニングではない)
# 複雑すぎるバージョン要件エラー:
# Error: バージョン要件が複雑すぎます
# plugin-a が plugin-b ">= 1.0.0, < 2.0.0, != 1.5.x, || >= 3.0.0" を要求プラグイン更新後のバージョン解決修正
# 変更前(バグ):
/plugins install plugin-a # v1.0.0がインストールされる
/plugins update plugin-a # v2.0.0に更新
/plugins list
# → plugin-a v1.0.0と表示される(古い情報が残っていた)
# 変更後(修正済み):
/plugins update plugin-a # v2.0.0に更新
/plugins list
# → plugin-a v2.0.0と正しく表示される中断されたインストールからの復旧
# 変更前(問題):
# インストール中にCtrl+Cで中断すると、以降のインストールが失敗することがあった
# Error: 破損した部分的なインストールが検出されました
# 変更後(修正済み):
# 中断されたインストールを検出して自動復旧
/plugins install plugin-name
# → "以前のインストールが中断されています。クリーンアップして再試行します..."
# → インストールが正常に完了する依存関係の競合を解決するワークフロー
# 依存関係の競合が発生した場合の対処フロー
/plugins install problematic-plugin
# Error: 依存関係の競合: plugin-b のバージョン要件が競合しています
# - plugin-a: >= 2.0.0
# - plugin-c: <= 1.9.9
# 競合を解決するために古いプラグインを更新
/plugins update plugin-a # または plugin-c
# 再度インストールを試みる
/plugins install problematic-plugin注意点
- 依存関係エラーの3種類の区別:
- 競合 (conflicting): 2つ以上のプラグインが同じ依存パッケージの互換性のないバージョンを要求する場合
- 無効 (invalid): バージョン文字列がセマンティックバージョニングの形式に従っていない場合
- 複雑すぎる (overly complex): バージョン要件の式が解析不可能なほど複雑な場合
- プラグインのインストールが中断された場合(ネットワーク切断、Ctrl+C等)、次回のインストール試行時に自動的に残骸がクリーンアップされます
plugin_errorsフィールドがstream-json出力のinitイベントに追加されたため(v2.1.111の別の修正)、自動化スクリプトでプラグインエラーを検出できます