Branch, Handoff, and Resume Hermes Sessions
A Hermes session stores conversation history, model configuration, source platform, title, and a snapshot of the system prompt. Long-running work benefits from explicit names and lineage: operators can resume the correct thread, explore an alternative without destroying the original, and move between CLI and messaging surfaces with a clear return path.
Official documentation: https://hermes-agent.nousresearch.com/docs/user-guide/sessions
Name work before it becomes ambiguous
Use /title to give important sessions a stable, descriptive name. Resume the newest matching lineage with /resume <name> or start Hermes with --resume. --continue resumes the most recent compatible session and is useful only when “most recent” is truly unambiguous.
Use /branch or /fork when an alternative approach should inherit current context but remain independently reversible. The branch should state what differs: a new architecture, riskier experiment, or client-facing rewrite. Avoid branching routine next steps because excessive lineages make retrieval harder.
Handoff checklist
- Give the session a unique outcome-based title.
- Record the current artifact path or external state before branching.
- Branch only when alternatives need independent histories.
- Use the supported cross-platform handoff flow instead of copying raw transcripts.
- Confirm the destination surface shows the expected title and recent context.
- Keep platform permissions and tool authority in mind after handoff.
- Return with
/resume <title>and choose the newest intended lineage. - Archive or rename abandoned experiments.
Context is not external state
Resuming restores conversation context, not a frozen world. Files may have changed, deployments may have advanced, and credentials may have expired. On resume, re-check the live repository, process, or service before continuing. A session’s system-prompt snapshot can also differ from current global configuration.
Common pitfalls
- Using
--continuein an environment with many recent test sessions. - Giving several sessions the same vague title.
- Assuming a branch clones uncommitted external state.
- Moving to a messaging surface without checking its toolset and authorization.
- Treating the oldest lineage as the latest because titles look similar.
- Deleting a session before exporting evidence needed for an audit.
Verification steps
- Title a neutral test session and send two messages.
- Branch it and make one clearly different decision.
- Resume the original by title and confirm the branch decision is absent.
- Resume the branch and confirm its independent history.
- Test one cross-platform handoff if the gateway is configured.
- Re-check the filesystem or service state before performing a resumed action.
