class Riffer::Agent::Context

Typed value object wrapping the runtime context Hash held by a Riffer::Agent. Exposes first-class accessors for the framework-managed entries β€” skills and token_usage β€” and preserves [] / dig reads so tools (which receive context: as a keyword) keep working with both built-in and caller-provided keys.

Reserved keys (:skills, :token_usage) cannot be set by the caller at construction; they are owned by Riffer and written through the typed setters. Type invariants are enforced on write β€” skills must be a Riffer::Skills::Context (or nil); token_usage must be a Riffer::Providers::TokenUsage (or nil).

context = Riffer::Agent::Context.new(user_id: 42)
context[:user_id]    # => 42
context.skills       # => nil
context.token_usage  # => nil