Hermes profiles: separate personal and work agents
MarkdownHow to create personal and work profiles in Hermes Agent without cloning, configure each separately, and check their paths. Profile boundaries: memory, sessions, files, and accounts.
Read full article
Key takeaway
For personal and work tasks, create two Hermes profiles without cloning options. Each will have its own settings, memory, conversation history, and skills. Start the profile you need explicitly with hermes -p personal chat or hermes -p work chat. This separates Hermes data, but does not prevent the agent from accessing other folders on the computer.
This guide assumes that Hermes is already installed and that you are working through the terminal. If the hermes command does not run yet, start with installing and initially configuring Hermes Agent. The names personal and work below are illustrative examples, not anyone's actual working settings.
You can find additional instructions in the Ailoot documentation.
What is stored in a separate Hermes Agent profile?
A profile is a separate folder containing Hermes settings and data. It holds config.yaml, the .env key file, SOUL.md instructions, memory, sessions, skills, and scheduled tasks. An agent is a running assistant that uses this data.
Suppose you need one set of preferences for personal activities and another for work tasks. Separate profiles let you store them separately. If only the question changes, while settings and memory should remain shared, there is no need to create a profile for every conversation.
Use different profiles for two agents working independently. The official documentation warns that two agent processes using the same profile folder can accumulate shared memory and pick up each other's entries when sessions start.
What a profile separates and what it does not protect
| Item | What happens |
|---|---|
| Hermes settings, built-in memory, and sessions | Stored in the corresponding profile's folder |
| Skills and scheduled tasks | Each profile has its own set |
| Files on the computer | On the standard local executor, accessible with the same OS user's permissions |
| Accounts in external programs | When run normally on the computer, programs use the user's home folder and the settings stored there by default |
| External memory | Depends on the connected service's settings; different profiles alone do not prove that its data is separated |
| OAuth model logins | Do not assume that they are independent merely because the profile names differ: Hermes can read a shared login from the root auth.json |
OAuth means signing in through a provider account. The documentation separately explains shared logins for Anthropic, OpenAI Codex, and xAI: a full clone does not copy single-use refresh tokens as separate, independent credentials. If a profile needs its own OAuth login, configure it separately.
The working folder is not a protection boundary either. The terminal.cwd parameter sets where commands start, but does not prevent access to other directories. An instruction in SOUL.md such as “do not enter the personal folder” guides the model's behaviour rather than enforcing an access restriction. If the task is specifically to protect files, separating profiles alone is not enough.
Profiles help keep context separate by task.
Check existing names before creating profiles
Open the terminal and run:
hermes profile list
hermes profile
The first command lists profiles; the second shows the current profile, its path, model, and messenger connection status. If personal or work already exists, first check what that profile is:
hermes -p personal profile
hermes -p work profile
Do not delete an existing profile to free up a name for the example. Choose other available names and use them in every command that follows. This guide assumes that both names are available.
You will need access to the selected model provider to configure each profile. Creating a folder does not confirm that the model is connected. Do not copy keys into a conversation or ask the agent to display the contents of .env for verification.
Create two profiles without cloning
Run the commands one after the other:
hermes profile create personal
hermes profile create work
Without additional options, Hermes creates fresh profiles with a built-in set of skills, so their folders will not be empty. Keys, the model, and messenger connections are configured in the next step.
Do not add --clone to speed up this guide. That option copies not just settings from the current profile, but also instructions, skills, and the memory files memories/MEMORY.md and memories/USER.md. Cloning is unsuitable for separating personal and work context with a clean start.
When cloning, also check the settings of external memory services. For example, the documentation warns that a cloned external memory configuration in local_embedded mode continues to use the original process and memory bank until the copy has its own profile and bank_id configured. Creating a new name does not automatically fix that shared configuration.
Check that the profiles were created:
hermes profile list
hermes -p personal profile
hermes -p work profile
Both names should appear in the list, and their details should show different paths. In a standard installation, these are ~/.hermes/profiles/personal/ and ~/.hermes/profiles/work/. The ~ symbol represents the user's home folder. With a non-standard HERMES_HOME, use the actual path reported by the command rather than this example.
Configure the model separately and explicitly start the profile you need
Configure the personal profile first, then the work profile:
hermes -p personal setup
hermes -p work setup
Go through the setup wizard for each. Model and provider settings are stored in the corresponding profile's config.yaml, and keys in its .env. This does not guarantee that all logins are independent: OAuth logins and accounts in external programs can remain shared, as noted in the table above.
After setup, open the personal chat:
hermes -p personal chat
Start the work chat with a different command:
hermes -p work chat
At startup, check the Profile: personal or Profile: work line; the command prompt also shows the profile name. Do not run two independently working agents with the same -p.
Hermes creates a short command for a profile, such as personal chat. Here we use the full form with -p so the choice is visible in the command itself. You do not need to change the default profile every time you start a chat.
The hermes profile use work command has a different effect: subsequent plain hermes calls start selecting work. If you have already used it and want to restore the standard profile, run:
hermes profile use default
How to check the result without personal data
First check the state using Hermes itself, rather than asking the model “are you definitely the work agent?”.
| Check | Expected result | If it does not match |
|---|---|---|
hermes profile list | The two required names are present | Check the result of the creation command; do not move on to adding memory |
hermes -p personal profile and hermes -p work profile | Different folders are shown | Stop and determine which profile is selected and where its data is stored |
Start with -p personal | The startup message specifies personal | Double-check the startup command |
Start with -p work | The startup message specifies work | Do not continue a work conversation in the wrong profile |
| Inspect folders at the reported paths | Settings and data are in the corresponding directories | Do not publish keys or personal memory contents during diagnostics |
Then you can run an illustrative behaviour check: in a new personal conversation, ask for a list of things to take on a walk, and in a work conversation, ask for a document review plan. Do not use real data. Different answers alone do not prove isolation; this check only establishes that both chats start and respond. Cross-check the result against the selected profile and its folder.
If you need different work procedures after setup, add them to the appropriate profile. The order for installing and creating skills is explained in the Hermes Agent skills guide.
Mistakes that cause context to become shared again
The profile was created using --clone. Old built-in memory may have been copied into it. Do not delete it blindly: first check how the profile was created and the files in the relevant profile. To repeat this guide with a clean start, use a new available name without cloning options.
Starting plain hermes and forgetting the default profile. Check hermes profile and use an explicit -p personal or -p work in startup commands.
Different profiles use the same external memory. Check the service's own settings. Its data does not have to be separated in the same way as local Hermes files; the example above illustrates exactly this issue.
Two profiles use the same messenger bot. Configure different bot tokens for independent connections. A token identifies the platform's bot, while a profile name identifies Hermes data; changing one does not create the other. The connection is explained in detail in the Telegram guide for Hermes Agent.
Expecting a profile to prevent reading other folders. On the local executor, access rights remain those of the OS user. Neither the name work, a separate SOUL.md, nor a working folder replaces filesystem restrictions.
Start with two new profiles without cloning, and explicitly select the profile at startup. Connect work data after checking the names and paths, and check external memory, bots, and accounts separately. For the next step in working with AI, see the Ailoot documentation.
Official documentation
Hermes Agent profiles: creation, switching, and separation boundaries. This guide was checked on 24 September 2026 against this pinned version of the official document.
For further work with models, you can go to Ailoot.
More details
Questions about Hermes profiles: separate personal and work agents
Can I clone a profile to create a clean work context?
Not for the clean separation described here: cloning can copy instructions, skills and built-in memory, and external memory or OAuth may remain shared. Create profiles without cloning and check their reported paths and external connections.
Does a separate work profile prevent reading my personal files?
No. A profile separates Hermes settings and history; it does not change the OS user’s filesystem permissions. Check the selected -p profile at startup, and use real filesystem restrictions when file protection is required.