Class: RubynCode::Hooks::BuiltIn::AutoCompactHook
- Inherits:
-
Object
- Object
- RubynCode::Hooks::BuiltIn::AutoCompactHook
- Defined in:
- lib/rubyn_code/hooks/built_in.rb
Overview
Triggers a compaction check after each LLM call to keep the context window within bounds.
Expects the :post_llm_call context to include:
- conversation: the Agent::Conversation instance
- context_manager: a Context::Manager instance (optional)
Instance Method Summary collapse
- #call(conversation: nil, **_kwargs) ⇒ void
-
#initialize(context_manager:) ⇒ AutoCompactHook
constructor
A new instance of AutoCompactHook.
Constructor Details
#initialize(context_manager:) ⇒ AutoCompactHook
Returns a new instance of AutoCompactHook.
86 87 88 |
# File 'lib/rubyn_code/hooks/built_in.rb', line 86 def initialize(context_manager:) @context_manager = context_manager end |
Instance Method Details
#call(conversation: nil, **_kwargs) ⇒ void
This method returns an undefined value.
93 94 95 96 97 98 99 |
# File 'lib/rubyn_code/hooks/built_in.rb', line 93 def call(conversation: nil, **_kwargs) return unless @context_manager && conversation @context_manager.auto_compact(conversation) rescue NoMethodError # auto_compact not yet available on this context manager end |