Introduction
The welcome banner is the first thing Hermes shows when you launch a session. It is not decoration. It is a compact dump of the agent's current configuration: which model will answer, which tools it can call, which skills are loaded, and which directory it considers home. Every banner element corresponds to a setting you can change, and reading it tells you whether your environment matches your intent.
Key Concepts
- Model: The provider and model name (e.g.,
anthropic/claude-sonnet-4-20250514). - Terminal backend: How tool commands run (local shell, Docker sandbox, or remote).
- Working directory: The path the agent treats as its current directory for file tools.
- Available tools: The toolsets enabled for this session (filesystem, web, terminal, etc.).
- Installed skills: The reusable agent recipes loaded at startup.
Real World Context
A developer launches Hermes inside a sensitive client repo, expecting the Docker sandbox to be active. The banner says terminal: local. They notice it before typing the first prompt and fix the misconfiguration before the agent runs a single shell command in the wrong context. That two-second glance prevented a real problem.
Deep Dive
A typical banner looks like this:
textHermes Agent 2026.5 Model: anthropic/claude-sonnet-4-20250514 Terminal: docker Cwd: ~/projects/stanza Tools: filesystem, terminal, web, image Skills: investigate, review, ship
Each line is a setting you can change:
- The model line reflects whichever provider/model you most recently selected with
hermes modelor/model. Switching mid-session does not retroactively update the banner, but it does change the status bar. - The terminal line reflects
terminal.backendinconfig.yaml. The most common values arelocal(commands run on your host shell),docker(commands run in a sandboxed container), and remote backends for SSH-attached sessions. - The cwd line is the directory you launched Hermes from. The agent's filesystem tools start here unless explicitly told otherwise.
- The tools line lists the active toolsets. Toolsets are bundles (e.g.,
filesystemcovers read/write/edit). The list is shaped byhermes toolsconfig and any-tflags you passed at launch. - The skills line lists skills auto-loaded into the session, typically from
~/.hermes/skills/and any tap registries.
When you resume a previous session with hermes -c or hermes --resume <id>, the banner reflects the resumed session's settings, not your defaults. That is intentional: a resumed session keeps its original runtime so the conversation stays coherent.
Common Pitfalls
- Skipping the banner after a config change: You set
terminal.backend: dockerlast week, but a colleague'shermes config setreverted it. The banner is your single proof of what is actually loaded right now. - Assuming the banner updates live: It is printed once at launch. After
/modelor/toolschanges, the status bar reflects the new state, not the banner. Re-read the status bar after a/command, not the banner.
Best Practices
- Glance at every banner element on launch: Five fields, one second per field. This single habit catches misconfiguration before you waste a prompt on it.
- Treat the banner as a contract: When the banner does not match what you expected, fix the config before you start working. Drifting environments cost more than the two seconds it takes to confirm.
Summary
- The welcome banner snapshots model, terminal backend, cwd, tools, and skills.
- Each banner element maps to a configuration setting you control.
- The banner is printed once at launch and does not auto-refresh after
/commands. - Reading it on every launch catches drift between intent and environment.
Code Examples
Hermes Agent 2026.5
Model: anthropic/claude-sonnet-4-20250514
Terminal: docker
Cwd: ~/projects/stanza
Tools: filesystem, terminal, web, image
Skills: investigate, review, ship
>