40+ built-in tools, the toolset system, and per-platform configuration
Hermes ships with over 40 tools organized into named toolsets. Every platform (CLI, Telegram, Discord, etc.) uses the same core tool list. You can enable or disable individual tools without touching code.
Tools are functions the agent calls during a conversation. When you ask Hermes to do something, it decides which tools to invoke, runs them, reads the results, and continues reasoning. Tools are the mechanism behind everything from running a terminal command to searching the web to creating a scheduled task.Each tool has:
A name the model uses to call it
A JSON schema describing its parameters
A handler function that runs the actual logic
An optional availability check (e.g., requiring an API key)
Tools are grouped into toolsets — named collections you can enable or disable together. The default toolset for the CLI is hermes-cli, which includes every core tool. You can compose custom toolsets from individual tools or from other toolsets.Some toolsets are composite: they include other toolsets by reference. For example, the debugging toolset includes web, file, and direct terminal/process tools.Configure active toolsets in ~/.hermes/config.yaml:
The terminal tool routes to whichever backend is configured (local, docker, ssh, modal, daytona, or singularity). See Terminal backends for details.Background mode — pass background=true to get a session_id immediately. Use process(action="wait") to block until it completes, or process(action="poll") to check progress without blocking.PTY mode — pass pty=true for interactive CLI tools (Python REPL, Codex, Claude Code) that require a pseudo-terminal.
Each platform can have its own toolset. The platform toolsets (hermes-cli, hermes-telegram, hermes-discord, etc.) all use the same _HERMES_CORE_TOOLS list by default. To restrict a platform, define a custom toolset:
# ~/.hermes/config.yamltoolsets: - web - file - terminal
Or reference one of the built-in scenario toolsets:
Toolset
Description
safe
No terminal; includes web, vision, image generation, and MoA
debugging
Terminal + web + file tools
research
Web + vision
browser
Full browser automation + web search
code_execution
execute_code only
delegation
delegate_task only
Changing toolsets takes effect on the next session start. Toolset changes mid-conversation would break Anthropic prompt caching and significantly increase API costs.