re-agent is configured via re-agent.yaml, environment variables, and CLI flags.
CLI flags > Environment variables > YAML config > Defaults
| Variable | Maps to |
|---|---|
RE_AGENT_LLM_PROVIDER |
llm.provider |
RE_AGENT_LLM_API_KEY |
llm.api_key |
RE_AGENT_LLM_MODEL |
llm.model |
RE_AGENT_LLM_BASE_URL |
llm.base_url |
RE_AGENT_BACKEND_CLI_PATH |
backend.cli_path |
RE_AGENT_BACKEND_TIMEOUT |
backend.timeout_s |
llm:
provider: "claude" # claude | openai | openai-compat | codex
model: "claude-sonnet-4-5-20250929"
api_key: null
base_url: null
max_tokens: 4096
temperature: 0.0
timeout_s: 1800Notes:
claudeuses the Anthropic SDK and typically readsANTHROPIC_API_KEYopenaiandopenai-compatuse the OpenAI-compatible chat completions provider and typically readOPENAI_API_KEYcodexuses the localcodexCLI and ChatGPT login credentials instead of an API key
The project_profile section makes re-agent work across different RE projects:
project_profile:
hook_patterns:
- 'RH_ScopedInstall\s*\(\s*(\w+)\s*,\s*(0x[0-9A-Fa-f]+)'
stub_markers: ["NOTSA_UNREACHABLE"]
stub_call_prefix: "plugin::Call"
source_root: "./source/game_sa"
source_extensions: [".cpp", ".h", ".hpp"]parity:
enabled: true
call_count_warn_diff: 3
inline_wrapper_autoskip: falseorchestrator:
max_review_rounds: 4
max_functions_per_class: 10
objective_verifier_enabled: true
objective_call_count_tolerance: 3
objective_control_flow_tolerance: 2