Skip to main content

Toolsets Reference

Toolsets group related tool names. Pass a list through the existing enabled_toolsets and disabled_toolsets constructor arguments; runtime availability checks still apply after resolution.

agent = AIAgent(
...,
enabled_toolsets=["file", "terminal", "skills"],
)

Static toolsets

ToolsetContents
webweb_search, web_extract
searchweb_search
x_searchx_search
visionvision_analyze
videovideo_analyze
image_genimage_generate
video_genvideo_generate, xai_video_edit, xai_video_extend
bflSix FLUX 3 submit, poll, and prompting-guide tools
computer_usecomputer_use
terminalterminal, process
fileread_file, write_file, patch, search_files
skillsskills_list, skill_view, skill_manage
browserBrowser operations plus web_search
ttstext_to_speech
homeassistantFour Home Assistant entity/state/service tools
todotodo
memorymemory
session_searchsession_search
clarifyclarify
delegationdelegate_task
context_engineTools supplied by the selected context-engine plugin

Composite toolsets

ToolsetBehavior
debuggingTerminal/process plus the web and file toolsets
safeWeb, vision, and image generation without terminal access
codingCoding-oriented files, terminal, web, skills, browser, planning, memory, clarification, and delegation
hermes-cliHistorical upstream name for the full retained library tool list; no CLI application is included

The safe name means “without terminal access”; it is not a complete security sandbox. It includes external web calls and image generation.

Dynamic toolsets

Built-in discovery also registers code_execution with execute_code. It is not authored in the static TOOLSETS mapping, but it resolves through the same registry-backed public helpers after tool discovery.

MCP

A configured server named github contributes mcp-github. The raw server name is also recognized as an alias. Contents follow live discovery and the server's include/exclude filters.

Plugins

Retained plugins can register tools into an existing or plugin-defined toolset. Toolset resolution merges registry contributions without mutating the static TOOLSETS table.

Resolution rules

  • Included toolsets are expanded recursively according to their definitions.
  • Disabled tools/toolsets are filtered after expansion.
  • Registry aliases resolve MCP and plugin names.
  • Availability checks can remove tools whose backend or credential is absent.
  • all or * expands registered toolsets, but it does not bypass an availability or safety check.

Use get_toolset(), resolve_toolset(), and get_all_toolsets() from toolsets.py when a host needs to inspect the resolved configuration.

See Tools Reference.