Wiki · Funkce do hloubky
Profily a více agentů
Druhý agent pro jinou práci není druhý server — stačí mu vlastní profil. Tady je jak na to a kde se profily pletou s právy.
Co profil obsahuje
Profil je jedna složka v ~/.hermes/profiles/název/. Všechno, co agent má,
je v ní pohromadě — proto se dají profily zálohovat, přesouvat i klonovat:
| Co v profilu je | K čemu |
|---|---|
config.yaml | Nastavení: model, nástroje, zázemí terminálu, plánované úlohy |
.env | Klíče a tajné údaje (API klíče, tokeny) |
SOUL.md | Jak agent mluví a chová se |
memories/ | Paměť — co si o vás a o práci píše |
sessions + state.db | Všechny rozhovory a stav agenta |
skills/, cron/, plugins/ | Naučené postupy, pravidelné úlohy, rozšíření |
Složka se počítá za profil jen když v ní leží některý z těchto souborů
(config.yaml, .env, SOUL.md, profile.yaml,
auth.json, state.db). Prázdná složka po logu se ignoruje.
Založení profilu ve třech krocích
Vytvořte profil — vznikne i stejnojmenný příkaz:
❯ hermes profile create coderNastavte mu klíče a model (probíhá v novém profilu, ne v tom stávajícím):
❯ coder setupPište si s ním. Od téhle chvíle má
codervlastní paměť i historii:❯ coder chat
Když chcete nový profil rovnou s nastavením toho současného, přidejte
--clone (vezme nastavení, klíče, SOUL.md, skilly a paměť).
hermes profile create work --clone
Jak s profilem pracovat
| Co chcete | Příkaz |
|---|---|
| Spustit cokoli v jiném profilu | hermes -p coder chat, hermes -p coder doctor |
| Krátký dotaz bez otevírání rozhraní | hermes -p work chat -q "Zkontroluj stav serveru" |
| Vypsat profily | hermes profile list |
| Vysvětlit, co je v profilu | hermes profile show coder |
| Kopírovat profil | hermes profile create work-backup --clone-from coder --clone-all |
| Vyexportovat / přenést na jiný stroj | hermes profile export · hermes profile import |
Profil není pískoviště
Tohle je nejčastější nedorozumění. Profil odděluje stav agenta, ale ne práva:
| Co | Čím se řídí | Co to znamená |
|---|---|---|
| Stav (konfigurace, paměť, rozhovory) | Profil (proměnná HERMES_HOME) | Dva profily si do sebe nevidí |
| Kde příkazy startují | terminal.cwd v config.yaml | Agent může klidně pracovat ve vašem projektu; nastavte mu to napevno |
| Co smí na disku | Systémová práva uživatele (+ pískoviště, pokud ho zapnete) | Profil sám přístup neomezí — o tom je stránka Bezpečnost |
cwd: "." znamená „složka, ze které jsem Hermes spustil“, ne složka profilu.
Ptejte se agenta, ve které složce je — není to spolehlivá zkouška oddělení. Nastavte ji.
Víc agentů na jednom serveru
Na jednom VPS takhle běžně vedle sebe žije několik profilů: jeden pro web, jeden pro hlavního asistenta, jeden pro komunitního bota. Každý má vlastní databázi stavu a vlastní rozhovory.
| Co hlídat | Proč a jak |
|---|---|
| Jeden profil = jeden běžící agent. Nikdy ne dva procesy nad stejným profilem | Oba si píšou paměť a každý si při startu načte, co napsal ten druhý — stav se množí, až není jasné, co jste vůbec nastavili |
| Pro každou platformu správný profil | Když mají dva profily stejný token bota (např. Discord), perou se o připojení a služba se restartuje pořád dokola |
| Jeden gateway na profil (nebo multiplex) | Pro každý profil se dá spustit vlastní gateway; nebo jeden společný s gateway.multiplex_profiles: true |
| Po klonování zkontrolujte paměť | Když profil používá vnější paměť, ověřte, že její nastavení cestovalo — jinak je paměť tiše vypnutá, agent se jen tváří, že si pamatuje |
Když se profil a váš počítač rozcházejí
Profil je oddělený jen pro Hermese. Nástroje, které používá (git, ssh, gh, npm…), berou přihlašovací údaje vašeho systémového účtu, takže dva profily na jednom počítači mají společný GitHub i společný SSH klíč.
| Chcete | Nastavení |
|---|---|
| Aby profily sdílely údaje vašeho účtu (obvyklé a pohodlné) | Výchozí stav — nic nedělat |
| Aby měl profil vlastní přihlášení do CLI nástrojů | terminal.home_mode: profile v config.yaml profilu |
Naše zkušenosti z provozu
| Co jsme řešili | Ponaučení |
|---|---|
| Na jednom VPS se sešly tři profily a jeden bot. Služba gatewaye se pořád restartovala | Příčinou byl konflikt tokenu a nedostavěná součást v profilu, ne chyba botu. Pomohlo rozdělit role do profilů a restartovat služby najednou, ne po jedné |
| Po upgradu se agent tvářil, že si nic nepamatuje | V profilu bylo prázdné nastavení paměti (memory.provider). U vnější paměti vždycky ověřte nastavení, ne jen že soubor existuje |
| Web, hlavní asistent a bot pro komunitu běží jako tři profily | Když jeden upravujete, ostatních se to netýká — a když se něco pokazí, víte, který profil to byl |
| Dva agenti potřebovali různé projekty ve stejné složce | Pomohl terminal.cwd v každém profilu. „Ve které složce jsi?“ jako kontrola nestačí |
Naše tipy
| Tip | Proč |
|---|---|
| Profil na projekt, ne na náladu | Paměť i klíče patří projektu — jinak si agent plete souvislosti |
| Pojmenujte profily krátce a bez diakritiky | Název je zároveň příkaz: coder chat se píše snadno, můj-web chat ne |
| Nové pokusy dělejte v klonu | --clone vám dá kopii, kterou můžete klidně rozbít |
| Pamatujte, že profil není zeď | Práva řešte zvlášť — systémovými účty, kontejnerem nebo schvalováním příkazů |
