Introduction
Different agent CLIs expose different tool surfaces. In OpenReward, you can expose agent-native tool surfaces server-side, backed by your environment’s sandbox. When a session is created with a toolset, the agent sees the exact tools it expects and every tool call executes against the sandbox.How Toolsets Compose into Sessions
Harness toolsets are session-scoped: they are passed when creating a session and their tools are merged with the environment’s own tools. Theopenreward package includes a registry of built-in harness toolsets that can be referenced by name:
bash, read, etc. with their agent-specific implementations.
Sandbox Requirement
All harness toolsets extend theToolset base class, which requires the environment to have a self.sandbox attribute. When the toolset is instantiated against an environment, it automatically extracts self.sandbox and uses it for all tool executions.
If you’re building an environment that supports harness toolsets, ensure your environment sets up a sandbox:
toolset="claude-code", the ClaudeCodeToolset is instantiated with this environment and gains access to self.sandbox. All its tools (bash, read, write, etc.) execute commands against that sandbox.
Available Harness Toolsets
ClaudeCodeToolset
Name:"claude-code" · Tools: 7
Mirrors the Claude Code CLI’s built-in tool surface. Tool descriptions are sourced from Claude Code’s internal prompts.
CodexToolset
Name:"codex" · Tools: 1
Codex prefers a single shell tool over discrete file tools. All file operations are done through bash.
GeminiCliToolset
Name:"gemini-cli" · Tools: 8
Matches the upstream Gemini CLI tool surface. Uses Gemini-specific tool names like run_shell_command and replace.
OpenClawToolset
Name:"openclaw" · Tools: 6
Exposes the OpenClaw coding tool surface, including background process management and structured patch application.
HermesToolset
Name:"hermes" · Tools: 5
Exposes the Hermes Agent tool surface from Nous Research. Supports both targeted string replacement and V4A multi-file patches.
Tool Comparison
Example: Full Environment with Harness Toolset Support
Here is a complete environment that supports harness toolsets. The environment defines its own task-specific tools (submit_answer), while the harness toolset provides the agent’s coding tools:
Next Steps
Using Toolsets
Learn about document toolsets (PDF, Excel, Word, PowerPoint)
Building Agentic Environments
Create sandbox-based environments from scratch
Harness Quickstart
Run agent harnesses with Firehorse
Sandbox Providers
Choose a sandbox provider for your environments

