Module: RubyLLM::Skills
- Defined in:
- lib/ruby_llm/skills/error.rb,
lib/ruby_llm/skills/skill.rb,
lib/ruby_llm/skills/loader.rb,
lib/ruby_llm/skills/parser.rb,
lib/ruby_llm/skills/railtie.rb,
lib/ruby_llm/skills/version.rb,
lib/ruby_llm/skills/validator.rb,
lib/ruby_llm/skills/skill_tool.rb,
lib/ruby_llm/skills/chat_extensions.rb,
lib/ruby_llm/skills/database_loader.rb,
lib/ruby_llm/skills/agent_extensions.rb,
lib/ruby_llm/skills/composite_loader.rb,
lib/ruby_llm/skills/filesystem_loader.rb,
lib/ruby_llm/skills.rb
Defined Under Namespace
Modules: ActiveRecordExtensions, AgentExtensions, ChatExtensions Classes: CompositeLoader, DatabaseLoader, Error, FilesystemLoader, FilteredLoader, InvalidSkillError, LoadError, Loader, NotFoundError, ParseError, Parser, Railtie, Skill, SkillTool, Validator
Constant Summary collapse
- VERSION =
"0.3.0"
Class Attribute Summary collapse
-
.default_path ⇒ Object
Returns the value of attribute default_path.
Class Method Summary collapse
-
.compose(*loaders) ⇒ CompositeLoader
Create a composite loader from multiple sources.
-
.from_database(records) ⇒ DatabaseLoader
Load skills from database records.
-
.from_directory(path = default_path) ⇒ FilesystemLoader
Load skills from a filesystem directory.
-
.load(path) ⇒ Skill
Load a single skill from a directory.
Class Attribute Details
.default_path ⇒ Object
Returns the value of attribute default_path.
70 71 72 |
# File 'lib/ruby_llm/skills.rb', line 70 def default_path @default_path end |
Class Method Details
.compose(*loaders) ⇒ CompositeLoader
Create a composite loader from multiple sources.
117 118 119 120 |
# File 'lib/ruby_llm/skills.rb', line 117 def compose(*loaders) require_relative "skills/composite_loader" CompositeLoader.new(loaders) end |
.from_database(records) ⇒ DatabaseLoader
Load skills from database records.
103 104 105 106 |
# File 'lib/ruby_llm/skills.rb', line 103 def from_database(records) require_relative "skills/database_loader" DatabaseLoader.new(records) end |
.from_directory(path = default_path) ⇒ FilesystemLoader
Load skills from a filesystem directory.
78 79 80 |
# File 'lib/ruby_llm/skills.rb', line 78 def from_directory(path = default_path) FilesystemLoader.new(path) end |
.load(path) ⇒ Skill
Load a single skill from a directory.
89 90 91 92 93 94 95 |
# File 'lib/ruby_llm/skills.rb', line 89 def load(path) skill_md = File.join(path, "SKILL.md") raise LoadError, "SKILL.md not found in #{path}" unless File.exist?(skill_md) = Parser.parse_file(skill_md) Skill.new(path: path, metadata: ) end |