Wiki · Funkce do hloubky
Kontrolní body a návrat zpět
Než agent sáhne na soubor, může si udělat snímek. Ukážeme, jak se vracet zpět, jak nepřijít o vlastní úpravy a proč to není záloha.
Nejdřív je zapněte
Bez zapnutí se žádné snímky nedělají — ať se stane cokoli, není se kam vrátit. Máte dvě možnosti:
Kdy si agent snímek udělá
| Před čím | Příklady |
|---|---|
| Nástroje pro soubory | Zápis souboru, úprava souboru |
| Ničivé příkazy v terminálu | Smazání (rm, rmdir), přesun a kopírování (mv, cp), úprava na místě (sed -i), zkrácení (truncate, dd, shred), přesměrování výstupu do souboru (>), změny v gitu (reset, clean, checkout) |
Na jednu složku vznikne nejvýš jeden snímek za jedno kolo — aby se úložiště nezaplnilo desítkami kopií během dlouhé práce.
Jak se vracíte zpět
| Co napíšete | Co to udělá |
|---|---|
/rollback | Vypíše seznam snímků i s přehledem změn |
/rollback 3 | Vrátí stav k třetímu snímku; vaše ruční úpravy zůstanou a zároveň se zruší poslední kolo rozhovoru |
/rollback 3 --all | Vrátí úplně všechno — i vaše ruční úpravy |
/rollback diff 3 | Ukáže, co se od třetího snímku změnilo (ještě nic nemění) |
/rollback 3 poznamky.md | Vrátí jen jeden soubor ze snímku |
Seznam vypadá nějak takhle — u každé položky poznáte, co ji vyvolalo:
Když je potřeba se do úložiště podívat mimo rozhovor:
| Příkaz | K čemu |
|---|---|
hermes checkpoints status | Kolik místa snímky zabírají a u kterých projektů |
hermes checkpoints prune | Ruční úklid — smaže stará a osiřelá data a vynutí strop velikosti |
hermes checkpoints clear | Smaže celé úložiště (zeptá se předem) |
Vaše vlastní úpravy se nechají
Když po agentovi sáhnete do souboru sami a pak se vrátíte k nějakému snímku, Hermes soubor, který jste mezitím upravili, nepřepíše — vypíše ho zvlášť:
Přepíše se jen to, co mezitím zapsal agent. Když vrátit opravdu všechno, přidejte --all.
Co snímky nezachrání
| Situace | Co se stane |
|---|---|
| Agent běží v kontejneru (Docker a podobně) | Cesty patří kontejneru, ne vašemu počítači — snímky se nedělají a obnova se odmítne. Ověřeno i na terminálu, v chatu, v TUI i v aplikaci |
| Vnořený git repozitář uvnitř složky | Uloží se jen odkaz, ne jeho soubory. Úplná obnova se odmítne (neslíbí něco, co nemá). Záchrana: snímek pořídit přímo ve složce toho vnořeného repozitáře |
| Složka s více než 50 tisíci soubory | Přeskočí se |
| Kořen systému nebo domovská složka | Přeskočí se (moc široké) |
Na počítači není git | Kontrolní body se tiše vypnou |
| Soubor větší než 10 MB | Přeskočí se |
Kde snímky bydlí
Úklid běží sám na pozadí (snímky projektů, kterých jste se dlouho nedotkli, se mažou; údržba se
spouští nejvýš jednou za několik hodin a nikdy neblokuje start). Ručně se dá vyvolat příkazem
hermes checkpoints prune.
Pasti z našeho provozu
| Co se stalo | Co s tím |
|---|---|
| Kontrolní body byly vypnuté a nebylo se kam vrátit | Nejčastější past — výchozí stav je vypnuto. Zapněte je dřív, než začnete pracovat, ne až když je zle |
| Považovali jsme snímky za zálohu | Nejsou. Snímky se týkají jen souborů, které měnil agent, a mají stropy (20 na projekt, 500 MB). Skutečná záloha je jinde |
--all přepsal naši ruční úpravu | Vrácení zpět bez --all vaše úpravy chrání — používejte ho jen vědomě |
| V kontejneru obnova nešla | Očekávané chování: cesty patří kontejneru. V kontejnerovém režimu se spolehněte na git nebo na zálohu mimo kontejner |
| Snímek vznikl, ale obnova se odmítla | Nejspíš obsahoval vnořený repozitář. Obnovte zvlášť ostatní soubory (/rollback 1 poznamky.md) nebo mějte snímky z vnořeného repozitáře |
| Úložiště snímků rostlo do stovek megabajtů | Stropy se dají snížit (max_snapshots, max_total_size_mb) a stav zjistíte přes hermes checkpoints status |
Naše tipy
| Tip | Proč |
|---|---|
Před obnovou si dejte /rollback diff | Uvidíte, co přesně zmizí, a vyberete správný snímek |
| Na projekty, které mají vlastní historii, používejte git | Kontrolní body jsou pojistka pro práci agenta, ne náhrada gitu |
| Zapněte si je hlavně tam, kde agent sahá na soubory | V projektech, kde jen čte, jsou zbytečné |
| Když pracujete na důležité věci, dělejte i kopii mimo projekt | Snímky chrání před omylem agenta, ne před smazaným diskem |
