Prerequisites
- An OpenReward account and API key
- An API key for your model provider (Anthropic, OpenAI, Google, or OpenRouter)
- Python 3.10+
Installation
Your First Evaluation
Set your API keys:./results.
Available Agents
Firehorse ships five agent harnesses, each with a different architecture:
Subprocess + MCP agents (claude-code, codex, gemini) launch the respective CLI as a child process and proxy environment tools via MCP. The agent’s built-in filesystem tools are disabled and replaced with sandbox-backed equivalents.
API-direct agents (resum, react) call LLM APIs directly and execute tool calls via the OpenReward session. No local CLI is required.
Key Options
Model Identifiers
Models are specified with a provider prefix:Effort Levels
The--effort flag controls reasoning depth and maps to each provider’s native mechanism:
Understanding the Output
Firehorse produces three types of output per trial:- Result JSON — final metrics: total reward, tool call count, token usage, API cost, duration
- Trajectory JSONL — full event log capturing reasoning steps, tool calls, and tool results
- Aggregate summary — statistics across all trials
Examples
Evaluate with OpenRouter
High-effort Claude Code evaluation
Codex on a custom environment
Next Steps
Harness Toolsets
Configure agent-native tool surfaces for your environments
Your First Evaluation
Build a custom evaluation environment
Building Agentic Environments
Create sandbox-based environments for agent tasks
Using Toolsets
Compose reusable tool collections into environments

