class Riffer::Skills::Adapter
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.
Attributes
The activation tool class for this adapter.
Public Class Methods
Source
# File lib/riffer/skills/adapter.rb, line 14 def initialize(skill_activate_tool:) @skill_activate_tool = skill_activate_tool end
Public Instance Methods
Source
# File lib/riffer/skills/adapter.rb, line 35 def catalog_instructions "When a user's request matches a skill description below, call the `#{skill_activate_tool.name}` tool with the skill name. After activation, follow the skill's instructions. " \ "If a skill's instructions already appear in your context (inside <skill_content> tags), follow them instead of activating the skill again." end
The behavioral instructions rendered alongside the catalog.
Source
# File lib/riffer/skills/adapter.rb, line 28 def render_activation(skill, body) %(<skill_content name="#{skill.name}">\n#{body}\n</skill_content>) end
Renders an activated skill body wrapped in identifying tags.
Source
# File lib/riffer/skills/adapter.rb, line 21 def render_catalog(skills) raise NotImplementedError, "#{self.class} must implement #render_catalog" end
Renders a skill catalog section for the system prompt.