Class: AnalyticalBrain::Tools::ActivateSkill
Overview
Activates a domain knowledge skill on the main session. The skill’s content is injected into the main agent’s system prompt, making the knowledge available for the current and future responses.
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Tools::Base
schema, truncation_threshold
Constructor Details
#initialize(main_session:) ⇒ ActivateSkill
Returns a new instance of ActivateSkill.
24
25
26
|
# File 'lib/analytical_brain/tools/activate_skill.rb', line 24
def initialize(main_session:, **)
@main_session = main_session
end
|
Class Method Details
.description ⇒ Object
11
|
# File 'lib/analytical_brain/tools/activate_skill.rb', line 11
def self.description = "Give the agent domain knowledge relevant to the current conversation."
|
13
14
15
16
17
18
19
20
21
|
# File 'lib/analytical_brain/tools/activate_skill.rb', line 13
def self.input_schema
{
type: "object",
properties: {
skill_name: {type: "string"}
},
required: %w[skill_name]
}
end
|
9
|
# File 'lib/analytical_brain/tools/activate_skill.rb', line 9
def self.tool_name = "activate_skill"
|
Instance Method Details
#execute(input) ⇒ String, Hash
31
32
33
34
35
36
37
38
39
|
# File 'lib/analytical_brain/tools/activate_skill.rb', line 31
def execute(input)
skill_name = input["skill_name"].to_s.strip
return {error: "Skill name cannot be blank"} if skill_name.empty?
skill = @main_session.activate_skill(skill_name)
format_confirmation(skill)
rescue Skills::InvalidDefinitionError => error
{error: error.message}
end
|