Class: RailsAiContext::Tools::Onboard

Inherits:
BaseTool
  • Object
show all
Defined in:
lib/rails_ai_context/tools/onboard.rb

Constant Summary

Constants inherited from BaseTool

BaseTool::DEFAULT_SESSION, BaseTool::MAX_SESSIONS, BaseTool::MAX_SESSION_ID_LENGTH, BaseTool::SESSION_CONTEXT, BaseTool::SHARED_CACHE

Class Method Summary collapse

Methods inherited from BaseTool

abstract!, abstract?, api_only_app?, api_only_note, cache_key, cached_context, config, current_session, #dedupe_put_patch_routes, detail_param?, error_response, evict_oldest_sessions, extract_method_source_from_file, extract_method_source_from_string, find_closest_match, fuzzy_find_key, guide_row, inherited, introspection_warnings_note, invalid_detail_note, normalize_detail, not_found_response, paginate, rails_app, rails_env_name, registered_tools, reset_all_caches!, reset_cache!, session_from, session_params, session_queries, session_record, session_reset!, static_tier_banner, static_tier_refusal, text_response, touch_session, unavailable_note, with_session, with_session_for

Methods included from SectionFetch

#fetch_section, usable?

Class Method Details

.call(detail: "standard", server_context: nil) ⇒ Object



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/rails_ai_context/tools/onboard.rb', line 31

def self.call(detail: "standard", server_context: nil)
  ctx = cached_context

  body = case detail
  when "quick"
    compose_quick(ctx)
  when "full"
    compose_full(ctx)
  else
    compose_standard(ctx)
  end
  text_response(body, suffix: introspection_warnings_note(ctx))
rescue => e
  text_response("Onboard error: #{e.message}")
end