Class: ClaudeSwarm::OpenAI::Responses
- Inherits:
-
Object
- Object
- ClaudeSwarm::OpenAI::Responses
- Defined in:
- lib/claude_swarm/openai/responses.rb
Constant Summary collapse
- MAX_TURNS_WITH_TOOLS =
virtually infinite
100_000
Instance Method Summary collapse
- #execute(prompt, options = {}) ⇒ Object
-
#initialize(openai_client:, mcp_client:, available_tools:, executor:, instance_name:, model:, temperature: nil, reasoning_effort: nil, zdr: false) ⇒ Responses
constructor
A new instance of Responses.
- #reset_session ⇒ Object
Constructor Details
#initialize(openai_client:, mcp_client:, available_tools:, executor:, instance_name:, model:, temperature: nil, reasoning_effort: nil, zdr: false) ⇒ Responses
Returns a new instance of Responses.
8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/claude_swarm/openai/responses.rb', line 8 def initialize(openai_client:, mcp_client:, available_tools:, executor:, instance_name:, model:, temperature: nil, reasoning_effort: nil, zdr: false) @openai_client = openai_client @mcp_client = mcp_client @available_tools = available_tools @executor = executor @instance_name = instance_name @model = model @temperature = temperature @reasoning_effort = reasoning_effort @zdr = zdr @system_prompt = nil end |
Instance Method Details
#execute(prompt, options = {}) ⇒ Object
21 22 23 24 25 26 27 28 29 30 |
# File 'lib/claude_swarm/openai/responses.rb', line 21 def execute(prompt, = {}) # Store system prompt for first call @system_prompt = [:system_prompt] if [:system_prompt] # Start with initial prompt initial_input = prompt # Process with recursive tool handling - start with empty conversation process_responses_api(initial_input, [], nil) end |
#reset_session ⇒ Object
32 33 34 |
# File 'lib/claude_swarm/openai/responses.rb', line 32 def reset_session @system_prompt = nil end |