settings.jsonにプラグインをインラインで宣言する — source: 'settings'
原文(日本語に翻訳)
source: 'settings' プラグインマーケットプレイスソースを追加 — settings.jsonにプラグインエントリをインラインで宣言可能
原文(英語)
Added source: 'settings' plugin marketplace source — declare plugin entries inline in settings.json
概要
Claude Code v2.1.80で、settings.jsonファイルに直接プラグインのエントリポイントを宣言できる新しいマーケットプレイスソース source: 'settings' が追加されました。これまでは別途マーケットプレイスソースを設定する必要がありましたが、この変更によりsettings.jsonだけでプラグインの完全な設定が可能になります。特に組織のポリシーや管理設定での活用に適しています。
基本的な使い方
settings.jsonの pluginMarketplaceSources にtype settings のソースを追加します。
json
{
"pluginMarketplaceSources": [
{
"type": "settings",
"plugins": [
{
"name": "my-plugin",
"version": "1.0.0",
"description": "カスタムプラグインの説明"
}
]
}
]
}実践例
ローカルプラグインをsettingsソースで宣言
json
{
"pluginMarketplaceSources": [
{
"type": "settings",
"plugins": [
{
"name": "team-tools",
"description": "チーム共通のツールセット",
"path": "/opt/claude-plugins/team-tools"
}
]
}
]
}複数のマーケットプレイスソースと組み合わせる
json
{
"pluginMarketplaceSources": [
{
"type": "github",
"repo": "myorg/claude-plugins"
},
{
"type": "settings",
"plugins": [
{
"name": "internal-plugin",
"description": "社内専用プラグイン",
"url": "https://internal.example.com/plugins/internal-plugin"
}
]
}
],
"enabledPlugins": {
"internal-plugin@settings": true,
"public-plugin@myorg": true
}
}組織のmanaged settingsでプラグインを配布
remote-settings.json を使って組織全体にプラグインを配布できます。
json
{
"pluginMarketplaceSources": [
{
"type": "settings",
"plugins": [
{
"name": "security-scanner",
"description": "セキュリティスキャンプラグイン(必須)"
},
{
"name": "code-style",
"description": "コードスタイル統一プラグイン"
}
]
}
],
"enabledPlugins": {
"security-scanner@settings": true
}
}注意点
enabledPluginsでプラグインを有効化する際はplugin-name@settings形式でソースを指定しますsource: 'settings'は既存のgithub、git、directoryタイプと組み合わせて使用できます- managed settings(
remote-settings.json)での利用が特に効果的です - プラグイン名は一意であることが推奨されます
- settings.jsonの設定レベル(ユーザー、プロジェクト、ローカル)に応じた優先順位が適用されます