Class: AgentHarness::Providers::Codex
- Inherits:
-
Base
- Object
- Base
- AgentHarness::Providers::Codex
show all
- Defined in:
- lib/agent_harness/providers/codex.rb
Overview
OpenAI Codex CLI provider
Provides integration with the OpenAI Codex CLI tool.
Instance Attribute Summary
Attributes inherited from Base
#config, #executor, #logger
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Base
#configure, #initialize, #send_message
Methods included from Adapter
#dangerous_mode_flags, #error_patterns, #fetch_mcp_servers, #health_status, included, #send_message, #supports_dangerous_mode?, #supports_mcp?, #validate_config
Class Method Details
.binary_name ⇒ Object
14
15
16
|
# File 'lib/agent_harness/providers/codex.rb', line 14
def binary_name
"codex"
end
|
.discover_models ⇒ Object
43
44
45
46
47
48
49
|
# File 'lib/agent_harness/providers/codex.rb', line 43
def discover_models
return [] unless available?
[
{name: "codex", family: "codex", tier: "standard", provider: "codex"}
]
end
|
.firewall_requirements ⇒ Object
23
24
25
26
27
28
29
30
31
|
# File 'lib/agent_harness/providers/codex.rb', line 23
def firewall_requirements
{
domains: [
"api.openai.com",
"openai.com"
],
ip_ranges: []
}
end
|
.instruction_file_paths ⇒ Object
33
34
35
36
37
38
39
40
41
|
# File 'lib/agent_harness/providers/codex.rb', line 33
def instruction_file_paths
[
{
path: "AGENTS.md",
description: "OpenAI Codex agent instructions",
symlink: false
}
]
end
|
.provider_name ⇒ Object
10
11
12
|
# File 'lib/agent_harness/providers/codex.rb', line 10
def provider_name
:codex
end
|
Instance Method Details
#capabilities ⇒ Object
60
61
62
63
64
65
66
67
68
69
70
|
# File 'lib/agent_harness/providers/codex.rb', line 60
def capabilities
{
streaming: false,
file_upload: false,
vision: false,
tool_use: true,
json_mode: false,
mcp: false,
dangerous_mode: false
}
end
|
#display_name ⇒ Object
56
57
58
|
# File 'lib/agent_harness/providers/codex.rb', line 56
def display_name
"OpenAI Codex CLI"
end
|
#name ⇒ Object
52
53
54
|
# File 'lib/agent_harness/providers/codex.rb', line 52
def name
"codex"
end
|
#session_flags(session_id) ⇒ Object
76
77
78
79
|
# File 'lib/agent_harness/providers/codex.rb', line 76
def session_flags(session_id)
return [] unless session_id && !session_id.empty?
["--session", session_id]
end
|
#supports_sessions? ⇒ Boolean
72
73
74
|
# File 'lib/agent_harness/providers/codex.rb', line 72
def supports_sessions?
true
end
|