Class: Riffer::Skills::Adapter

Inherits:
Object
  • Object
show all
Defined in:
lib/riffer/skills/adapter.rb

Overview

Interface for skill adapters — provider-specific rendering of the available-skills section in the system prompt. Subclass and override render_catalog; the activation tool is exposed via #skill_activate_tool for the rendered output.

Direct Known Subclasses

MarkdownAdapter, XmlAdapter

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(skill_activate_tool:) ⇒ Adapter

– : (skill_activate_tool: singleton(Riffer::Tool)) -> void



14
15
16
# File 'lib/riffer/skills/adapter.rb', line 14

def initialize(skill_activate_tool:)
  @skill_activate_tool = skill_activate_tool
end

Instance Attribute Details

#skill_activate_toolObject (readonly)

The activation tool class for this adapter.



10
11
12
# File 'lib/riffer/skills/adapter.rb', line 10

def skill_activate_tool
  @skill_activate_tool
end

Instance Method Details

#render_catalog(skills) ⇒ Object

Renders a skill catalog section for the system prompt. – : (Array) -> String

Raises:

  • (NotImplementedError)


21
22
23
# File 'lib/riffer/skills/adapter.rb', line 21

def render_catalog(skills)
  raise NotImplementedError, "#{self.class} must implement #render_catalog"
end