Class: Protege::Generators::ResolverGenerator

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Includes:
ExtensionNaming
Defined in:
lib/generators/protege/resolver/resolver_generator.rb

Overview

Scaffolds a Protege resolver — one link in a persona's context-building chain — into the host app's resolvers directory (+config.resolvers_path+, default app/resolvers). A resolver subclasses Protege::Resolver and implements resolve, contributing zero or more +Protege::ModelMessage+s to the prompt the harness sends the model.

Unlike tools, resolvers are NOT auto-discovered: add the class to a persona's chain (+chain.use MyResolver+) for it to run. The Resolver suffix is applied for you.

Examples:

bin/rails g protege:resolver thread_summary

Instance Method Summary collapse

Instance Method Details

#create_resolvervoid

This method returns an undefined value.

Render the resolver scaffold into config.resolvers_path.



28
29
30
31
# File 'lib/generators/protege/resolver/resolver_generator.rb', line 28

def create_resolver
  template 'resolver.rb.tt',
           File.join(Protege.configuration.resolvers_path, "#{extension_file_name('Resolver')}.rb")
end