文档
日本語ドキュメント
設定

設定

OpenCodeは、カスタマイズのためにJSON設定システムを使用しています。設定スキーマは opencode.ai/config.json で定義されており、エディターの検証とオートコンプリートのサポートが有効になります。

フォーマットサポート

OpenCodeはJSONJSONC(コメント付きJSON)の両方の形式を受け入れます。

{
  "$schema": "https://opencode.ai/config.json",
  "theme": "opencode",
  "model": "anthropic/claude-sonnet-4-5",
  "autoupdate": true
}

設定の場所と優先順位

設定は置き換えではなくマージされます。読み込み順序(後のソースが競合を上書き):

  1. リモート設定.well-known/opencode からの組織のデフォルト
  2. グローバル設定~/.config/opencode/opencode.json のユーザー設定
  3. カスタム設定OPENCODE_CONFIG 環境変数
  4. プロジェクト設定 – プロジェクトルートの opencode.json
  5. .opencode ディレクトリ – エージェント、コマンド、プラグイン
  6. インライン設定OPENCODE_CONFIG_CONTENT 環境変数

グローバル設定

ユーザー全体の設定を ~/.config/opencode/opencode.json に配置:

{
  "theme": "catppuccin",
  "model": "anthropic/claude-sonnet-4-5"
}

プロジェクト設定

プロジェクト固有の設定には、プロジェクトルートに opencode.json を追加します。

カスタムパス

export OPENCODE_CONFIG=/path/to/config.json
opencode run "Hello world"

設定スキーマ

TUI設定

{
  "tui": {
    "scroll_speed": 3,
    "scroll_acceleration": {
      "enabled": true
    },
    "diff_style": "auto"
  }
}

サーバー設定

{
  "server": {
    "port": 4096,
    "hostname": "0.0.0.0",
    "mdns": true,
    "cors": ["http://localhost:5173"]
  }
}

ツール設定

{
  "tools": {
    "write": false,
    "bash": false
  }
}

モデルとプロバイダー

{
  "provider": {},
  "model": "anthropic/claude-sonnet-4-5",
  "small_model": "anthropic/claude-haiku-4-5"
}

エージェント

{
  "agent": {
    "code-reviewer": {
      "description": "Reviews code for best practices",
      "model": "anthropic/claude-sonnet-4-5",
      "prompt": "You are a code reviewer...",
      "tools": {
        "write": false,
        "edit": false
      }
    }
  }
}

カスタムコマンド

{
  "command": {
    "test": {
      "template": "Run full test suite with coverage report.",
      "description": "Run tests with coverage",
      "agent": "build"
    }
  }
}

権限

{
  "permission": {
    "edit": "ask",
    "bash": "ask"
  }
}

コンテキスト圧縮

{
  "compaction": {
    "auto": true,
    "prune": true
  }
}

MCPサーバー

{
  "mcp": {}
}

プラグイン

{
  "plugin": ["opencode-helicone-session", "@my-org/custom-plugin"]
}

変数置換

環境変数

{
  "model": "{env:OPENCODE_MODEL}",
  "provider": {
    "anthropic": {
      "options": {
        "apiKey": "{env:ANTHROPIC_API_KEY}"
      }
    }
  }
}

ファイル内容

{
  "provider": {
    "openai": {
      "options": {
        "apiKey": "{file:~/.secrets/openai-key}"
      }
    }
  }
}