Class: Riffer::Config
- Inherits:
-
Object
- Object
- Riffer::Config
- Defined in:
- lib/riffer/config.rb
Overview
Configuration for the Riffer framework.
Defined Under Namespace
Classes: AmazonBedrock, Anthropic, AzureOpenAI, Evals, Gemini, Mcp, Metrics, OpenAI, OpenRouter, Pricing, Skills, Tracing
Constant Summary collapse
- VALID_MESSAGE_ID_STRATEGIES =
%i[none uuid uuidv7].freeze
Instance Attribute Summary collapse
-
#amazon_bedrock ⇒ Object
readonly
Amazon Bedrock configuration.
-
#anthropic ⇒ Object
readonly
Anthropic configuration.
-
#azure_openai ⇒ Object
readonly
Azure OpenAI configuration.
-
#evals ⇒ Object
readonly
Evals configuration.
-
#experimental_history_healing ⇒ Object
Experimental: when
true, riffer maintains thetool_use↔tool_resultinvariant itself — stripping orphaned exchanges and filling interrupted ones. -
#gemini ⇒ Object
readonly
Google Gemini configuration.
-
#mcp ⇒ Object
readonly
MCP configuration.
-
#message_id_strategy ⇒ Object
Strategy for auto-generating message ids:
:none(default),:uuid, or:uuidv7. -
#metrics ⇒ Object
readonly
Metrics-related global configuration.
-
#openai ⇒ Object
readonly
OpenAI configuration.
-
#openrouter ⇒ Object
readonly
OpenRouter configuration.
-
#pricing ⇒ Object
readonly
Consumer-configured per-model token pricing.
-
#skills ⇒ Object
readonly
Skills-related global configuration.
-
#tool_runtime ⇒ Object
Global tool runtime configuration (experimental); defaults to
Riffer::Tools::Runtime::Inline.new. -
#tracing ⇒ Object
readonly
Tracing-related global configuration.
Instance Method Summary collapse
-
#initialize ⇒ Config
constructor
– : () -> void.
Constructor Details
#initialize ⇒ Config
– : () -> void
348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 |
# File 'lib/riffer/config.rb', line 348 def initialize @amazon_bedrock = AmazonBedrock.new @anthropic = Anthropic.new @azure_openai = AzureOpenAI.new @gemini = Gemini.new @openai = OpenAI.new @openrouter = OpenRouter.new @evals = Evals.new @mcp = Mcp.new(credentials: nil, discovery_runner: Riffer::Runner::Sequential.new) @tool_runtime = Riffer::Tools::Runtime::Inline.new @skills = Skills.new @tracing = Tracing.new @metrics = Metrics.new @pricing = Pricing.new @message_id_strategy = :none @experimental_history_healing = false end |
Instance Attribute Details
#amazon_bedrock ⇒ Object (readonly)
Amazon Bedrock configuration.
264 265 266 |
# File 'lib/riffer/config.rb', line 264 def amazon_bedrock @amazon_bedrock end |
#anthropic ⇒ Object (readonly)
Anthropic configuration.
267 268 269 |
# File 'lib/riffer/config.rb', line 267 def anthropic @anthropic end |
#azure_openai ⇒ Object (readonly)
Azure OpenAI configuration.
270 271 272 |
# File 'lib/riffer/config.rb', line 270 def azure_openai @azure_openai end |
#evals ⇒ Object (readonly)
Evals configuration.
282 283 284 |
# File 'lib/riffer/config.rb', line 282 def evals @evals end |
#experimental_history_healing ⇒ Object
Experimental: when true, riffer maintains the tool_use ↔ tool_result invariant itself — stripping orphaned exchanges and filling interrupted ones. Defaults to false; the surface may change without notice.
335 336 337 |
# File 'lib/riffer/config.rb', line 335 def experimental_history_healing @experimental_history_healing end |
#gemini ⇒ Object (readonly)
Google Gemini configuration.
273 274 275 |
# File 'lib/riffer/config.rb', line 273 def gemini @gemini end |
#mcp ⇒ Object (readonly)
MCP configuration. credentials is an optional Proc returning per-run tools/call headers (or nil to deny); discovery_runner runs tool discovery.
287 288 289 |
# File 'lib/riffer/config.rb', line 287 def mcp @mcp end |
#message_id_strategy ⇒ Object
Strategy for auto-generating message ids: :none (default), :uuid, or :uuidv7. When not :none, messages get an id at construction, and seeded messages passed to Riffer::Agent#generate must carry their own.
318 319 320 |
# File 'lib/riffer/config.rb', line 318 def @message_id_strategy end |
#metrics ⇒ Object (readonly)
Metrics-related global configuration.
310 311 312 |
# File 'lib/riffer/config.rb', line 310 def metrics @metrics end |
#openai ⇒ Object (readonly)
OpenAI configuration.
276 277 278 |
# File 'lib/riffer/config.rb', line 276 def openai @openai end |
#openrouter ⇒ Object (readonly)
OpenRouter configuration.
279 280 281 |
# File 'lib/riffer/config.rb', line 279 def openrouter @openrouter end |
#pricing ⇒ Object (readonly)
Consumer-configured per-model token pricing.
313 314 315 |
# File 'lib/riffer/config.rb', line 313 def pricing @pricing end |
#skills ⇒ Object (readonly)
Skills-related global configuration.
304 305 306 |
# File 'lib/riffer/config.rb', line 304 def skills @skills end |
#tool_runtime ⇒ Object
Global tool runtime configuration (experimental); defaults to Riffer::Tools::Runtime::Inline.new.
291 292 293 |
# File 'lib/riffer/config.rb', line 291 def tool_runtime @tool_runtime end |
#tracing ⇒ Object (readonly)
Tracing-related global configuration.
307 308 309 |
# File 'lib/riffer/config.rb', line 307 def tracing @tracing end |