Back to Commands
Configurationhermes config

hermes config Command — Complete Reference & Examples

Complete reference for hermes config: show, edit, get, set, unset, check path locations, validate, and migrate ~/.hermes/config.yaml.

July 27, 2026

Overview

hermes config manages the main configuration file at ~/.hermes/config.yaml. This file controls every behavioral aspect of Hermes Agent — models, providers, tools, terminal backends, compression, approvals, and more.

hermes config <show|edit|get|set|unset|path|env-path|check|migrate>

Important: API keys and other secrets are stored in ~/.hermes/.env, not in config.yaml.

Subcommands

show — Show current configuration

hermes config show

Prints the resolved ~/.hermes/config.yaml.

edit — Open config file in editor

hermes config edit

Opens ~/.hermes/config.yaml in your $EDITOR.

get — Print a resolved configuration value

hermes config get model
hermes config get terminal.backend
hermes config get approvals.mode --json
Flag Description
key (positional) Configuration key, using dot notation for nested values.
--json Print the value as JSON.

set — Set a configuration value

hermes config set terminal.backend docker
hermes config set model claude-sonnet-4-20250514
hermes config set approvals.deny "rm -rf *,curl *" --force
Flag Description
key (positional) Configuration key, e.g. model or terminal.backend.
value (positional) Value to set.
--force Skip the unknown-key notice (the value is still saved).

unset — Remove a configuration value

hermes config unset display.interface

Removes the specified key from config.yaml.

path — Print config file path

hermes config path

Outputs the full path to ~/.hermes/config.yaml.

env-path — Print .env file path

hermes config env-path

Outputs the full path to the secrets .env file.

check — Check for missing/outdated config

hermes config check

Validates the config and reports missing or outdated options.

migrate — Update config with new options

hermes config migrate

Rewrites the config to add new default options and update deprecated keys.

Common Scenarios

Read the default model

hermes config get model

Change the terminal backend

hermes config set terminal.backend docker

Remove a setting

hermes config unset display.interface

Validate after manual edits

hermes config edit
hermes config check

Update config for a new Hermes version

hermes config migrate

Find where config and secrets live

hermes config path
hermes config env-path

Tips

  • Use dot notation for nested keys: terminal.backend, approvals.mode, auxiliary.approval.model.
  • hermes config set writes immediately and is idempotent.
  • hermes config check catches typos and schema drift after manual edits.
  • hermes config migrate is safe to run before upgrading; review the diff if your config is under version control.
  • For CI/headless setups, prefer hermes config set over the interactive editor.

Explore All Commands

Browse the full command reference with search and category filters.

Back to Commands