Class: OllamaAgent::Skills::Registry

Inherits:
Object
  • Object
show all
Defined in:
lib/ollama_agent/skills/registry.rb

Overview

Registry of named skill classes. Skills self-register at load time so the CLI can resolve them by id (e.g. :architecture_refactor).

Defined Under Namespace

Classes: UnknownSkill

Instance Method Summary collapse

Constructor Details

#initializeRegistry

Returns a new instance of Registry.



12
13
14
# File 'lib/ollama_agent/skills/registry.rb', line 12

def initialize
  @skills = {}
end

Instance Method Details

#eachObject



30
31
32
# File 'lib/ollama_agent/skills/registry.rb', line 30

def each(&)
  @skills.each(&)
end

#fetch(name) ⇒ Object



20
21
22
23
24
# File 'lib/ollama_agent/skills/registry.rb', line 20

def fetch(name)
  @skills.fetch(name.to_sym) do
    raise UnknownSkill, "unknown skill: #{name.inspect}. Known: #{names.join(", ")}"
  end
end

#namesObject



26
27
28
# File 'lib/ollama_agent/skills/registry.rb', line 26

def names
  @skills.keys.sort
end

#register(name, klass) ⇒ Object



16
17
18
# File 'lib/ollama_agent/skills/registry.rb', line 16

def register(name, klass)
  @skills[name.to_sym] = klass
end