Skip to content

原文(日本語に翻訳)

プラグインがデフォルト設定のために settings.json を同梱できるようになりました。

原文(英語)

Plugins can ship settings.json for default configuration

概要

Claude Codeのプラグインに settings.json ファイルを含めることで、プラグインのインストール時にデフォルト設定を自動的に提供できるようになりました。これにより、プラグイン開発者はユーザーが手動で設定を行う必要なく、最適なデフォルト値をあらかじめ定義でき、プラグインのセットアップ体験が向上します。

基本的な使い方

プラグインのディレクトリ構造に settings.json を追加します。

my-plugin/
├── .claude/
│   ├── agents/
│   │   └── my-agent.md
│   ├── skills/
│   │   └── my-skill.md
│   └── settings.json   ← 追加
json
// .claude/settings.json の例
{
  "defaultModel": "claude-sonnet-4-6",
  "permissions": {
    "allow": ["Bash(npm:*)", "Read(**/*.ts)"]
  }
}

実践例

ユースケース1: 開発ツールプラグインのデフォルト設定

TypeScript開発向けのプラグインにデフォルト設定を含める場合。

json
// typescript-dev-plugin/.claude/settings.json
{
  "permissions": {
    "allow": [
      "Bash(npm:*)",
      "Bash(npx:*)",
      "Bash(tsc:*)",
      "Read(**/*.ts)",
      "Read(**/*.tsx)",
      "Write(**/*.ts)",
      "Write(**/*.tsx)"
    ]
  },
  "env": {
    "NODE_ENV": "development"
  }
}
bash
# プラグインをインストール
claude plugin install ./typescript-dev-plugin

# インストール後、自動的に上記のデフォルト設定が適用される
# ユーザーは追加設定なしで TypeScript 開発を開始できる

ユースケース2: セキュリティ設定の強制

企業向けプラグインでセキュリティポリシーを事前設定する場合。

json
// enterprise-security-plugin/.claude/settings.json
{
  "permissions": {
    "deny": [
      "Bash(curl:*)",
      "Bash(wget:*)",
      "WebFetch(*)"
    ]
  },
  "autoApprove": false
}
bash
# エンタープライズプラグインをインストール
claude plugin install ./enterprise-security-plugin

# セキュリティ制約が自動的に適用される
# ネットワーク接続系のコマンドが制限される

ユースケース3: MCPサーバー設定の自動化

MCPサーバーを含むプラグインの設定を自動化する場合。

json
// mcp-database-plugin/.claude/settings.json
{
  "mcpServers": {
    "database-server": {
      "command": "node",
      "args": ["./mcp-server/index.js"],
      "env": {
        "DB_TYPE": "postgresql"
      }
    }
  }
}
bash
# MCPサーバーを含むプラグインをインストール
claude plugin install ./mcp-database-plugin

# MCPサーバーの設定が自動的に追加される
# 手動でMCPサーバーを設定する必要がない

注意点

  • プラグインの settings.json はデフォルト設定として機能します。ユーザーが手動で変更した設定は上書きされません。
  • 設定の優先順位: ユーザー設定 > プロジェクト設定 > プラグインのデフォルト設定
  • plugin enable および plugin disable コマンドはv2.1.49から --scope を省略した場合に自動的にスコープを検出します。
  • プラグインの settings.json に機密情報(APIキーなど)を含めないでください。
  • 設定ファイルの形式はClaude Codeの標準的な settings.json 形式に従ってください。

関連情報