Skip to main content
Hermes Agent is an open-source, model-agnostic agent with terminal and file tools, persistent memory, resumable sessions, and reusable skills it can create and improve. E2B provides a pre-built hermes template with the Hermes CLI and bundled skills already installed.

CLI

Create a sandbox with the E2B CLI.
Once inside the sandbox, configure a provider or start Hermes if your credentials are already available.

Run headless

Use chat -q for a single non-interactive turn and -Q to keep stdout suitable for scripts. --yolo lets Hermes use terminal, file, browser, memory, and skill tools without waiting for approval. The sandbox isolates those tools from your host machine, but sandboxes can reach the open internet by default — restrict outbound traffic with network rules when the agent processes untrusted input or handles secrets. Hermes supports multiple model providers. The examples below use OpenRouter; pass a different provider key and select it with --provider and --model if needed.
Auto-approved tool calls can modify the sandbox filesystem and make outbound requests, but cannot access your host files or credentials unless you explicitly copy or pass them into the sandbox. Use outbound network rules to limit access by CIDR or hostname. Hostname rules apply to HTTP(S) traffic only; use CIDR rules for other protocols.

Teach Hermes a reusable skill

Hermes can turn a successful procedure into a skill and reuse it in a fresh session. Keep both turns in one E2B sandbox so ~/.hermes, the workspace, and the created skill remain available.
Hermes stores user-created skills under ~/.hermes/skills/ and curated memory under ~/.hermes/memories/. Both remain available for the lifetime of the sandbox. If you pause and resume the same sandbox, its filesystem state is preserved; killing the sandbox removes it.

Resume a session

Hermes saves conversation sessions inside the sandbox. Use -c to continue the most recent session, or --resume <session> to select one by ID or title.

How it works

Hermes itself runs inside E2B. Its local terminal and file tools therefore operate on the E2B filesystem and processes, while E2B owns sandbox lifecycle, isolation, resource limits, and network policy. No separate Hermes terminal-backend integration is required for this setup.