Class: AIA::Session

Inherits:
Object
  • Object
show all
Defined in:
lib/aia/session.rb

Instance Method Summary collapse

Constructor Details

#initialize(prompt_handler) ⇒ Session

Returns a new instance of Session.



23
24
25
26
27
28
# File 'lib/aia/session.rb', line 23

def initialize(prompt_handler)
  @prompt_handler = prompt_handler

  initialize_components
  setup_output_file
end

Instance Method Details

#startObject

Starts the session, processing all prompts in the pipeline and then optionally starting an interactive chat session.



32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/aia/session.rb', line 32

def start
  # Handle special chat-only cases first
  if should_start_chat_immediately?
    AIA::Utility.robot
    @chat_loop.start
    return
  end

  # Process all prompts in the pipeline
  @prompt_pipeline.process_all

  # Start chat mode after all prompts are processed
  if AIA.chat?
    AIA::Utility.robot
    @ui_presenter.display_separator
    @chat_loop.start(skip_context_files: true)
  end
end