Class: ClaudeAgentSDK::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/claude_agent_sdk/configuration.rb

Overview

Configuration class for setting default options

Use this to set default options that will be merged with every request. This is especially useful in Rails applications where you want to configure defaults once during initialization.

Examples:

In a Rails initializer (config/initializers/claude_agent_sdk.rb)

ClaudeAgentSDK.configure do |config|
  config.default_options = {
    env: {
      'ANTHROPIC_API_KEY' => ENV['ANTHROPIC_API_KEY'],
      'CUSTOM_VAR' => 'value'
    },
    permission_mode: 'bypassPermissions',
    model: 'sonnet'
  }
end

Then use ClaudeAgentSDK without repeating options

# env and other defaults will be automatically applied
ClaudeAgentSDK.query(prompt: "Hello!")

# You can still override defaults when needed
ClaudeAgentSDK.query(
  prompt: "Hello!",
  options: ClaudeAgentOptions.new(model: 'opus')  # overrides default
)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



34
35
36
# File 'lib/claude_agent_sdk/configuration.rb', line 34

def initialize
  @default_options = {}
end

Instance Attribute Details

#default_optionsObject

Returns the value of attribute default_options.



32
33
34
# File 'lib/claude_agent_sdk/configuration.rb', line 32

def default_options
  @default_options
end