Jak bezpiecznie przenieść się z OpenClaw na Hermesa Agent

Bezpieczne przełączenie wykraczające poza jednostronicowy import

Page content

Migracja asystenta AI to nie to samo co kopiowanie konfiguracji aplikacji. Trudnością jest zachowanie tożsamości, pamięci, zachowania narzędzi, zaplanowanych prac oraz dostępu do komunikacji, tak aby dwie bramki (gateways) nie działały jako ta sama botka.

Hermes Agent zawiera teraz hermes claw migrate, co jest prawdziwym planistą migracji, a nie tylko kosmetycznym poleceniem importu. Może on mapować ponad 30 kategorii z OpenClaw, wykrywać konflikty, tworzyć punkt przywracania Hermes oraz archiwizować niezgodne stany do ręcznego przeglądu. To czyni przeprowadzenie migracji praktycznym, ale nie czyni jej automatyczną.

Staged cutover of state from OpenClaw to Hermes Agent

Poniższe podejście to stopniowe przełączenie (staged cutover): wykonaj kopię zapasową OpenClaw, przeprowadź pełny test sucho (dry-run) migracji, zaimportuj dane bez sekretów, zwaliduj Hermes w terminalu i przenieś dane uwierzytelniające komunikacji dopiero wtedy, gdy nowy agent zachowuje się poprawnie. Nie zaczynaj od --overwrite --migrate-secrets --yes; te flagi są przydatne do automatyzacji po próbie migracji, a nie do odkrywania, od czego faktycznie zależy Twój asystent.

Przewodnik migracji z OpenClaw na Hermes

Faza Polecenie lub działanie Warunek wyjścia
Inwentaryzacja Zarejestruj wersje, przestrzenie robocze, wtyczki, kanały, zadania cron i dostawców Każda zależność inna niż plik ma przypisanego właściciela
Kopia zapasowa openclaw backup create --verify Istnieje zweryfikowane archiwum poza stanem OpenClaw
Podgląd hermes claw migrate --dry-run --preset full Brak niewyjaśnionych konfliktów lub pominętych kluczowych danych
Import Uruchom pełny preset bez sekretów Konfiguracja Hermes, persona, pamięć, umiejętności i wpisy MCP istnieją
Test lokalny Uruchom Hermes w terminalu Model, narzędzia, pamięć, zatwierdzenia i przestrzeń robocza przechodzą testy
Przełączenie kanału Zatrzymaj OpenClaw, przenieś lub ustaw sekrety, uruchom bramkę Hermes Tylko Hermes jest właścicielem każdego tokena bota lub konta
Stabilizacja Pozostaw OpenClaw zatrzymane, ale odzyskiwalne Zaplanowane i przychodzące zadania zachowują się poprawnie
Sprzątanie Zarchiwizuj stary stan OpenClaw dopiero po akceptacji Okno cofnięcia (rollback) jest intencjonalnie zamknięte
flowchart TD A[Inwentaryzacja działającego systemu] --> B[Zweryfikowana kopia zapasowa OpenClaw] B --> C["Test sucho: hermes claw migrate --dry-run --preset full"] C --> D[Import bez sekretów] D --> E["Walidacja w terminalu w nowej sesji"] E --> F["Kontrolowane przełączenie kanału"] F --> G[Stabilizacja przy zatrzymanym OpenClaw] G --> H["Sprzątanie po akceptacji"]

Polecenie jest krótkie, ponieważ decyzje przeniosły się do etapów podglądu i weryfikacji. Traktuj wygenerowany raport migracji jako plan zmian, a nie jako uspokajający output konsoli.

Co hermes claw migrate faktycznie odczytuje

Migrator domyślnie odczytuje ~/.openclaw/. Wykrywa również starsze katalogi ~/.clawdbot/ i ~/.moltbot/, wraz z starszymi nazwami plików konfiguracyjnych, więc starsza instalacja nie musi być przemianowana przed migracją.

OpenClaw używał kilku layoutów przestrzeni roboczych. Hermes sprawdza workspace/, workspace.default/ i workspace-main/, oraz rozpoznaje katalogi per-agent, takie jak workspace-<agentId>. Jeśli używasz niestandardowych korzeni agentów lub wielu profili, zweryfikuj każdą rozpoznaną ścieżkę w podglądzie, zamiast zakładać, że domyślna przestrzeń robocza reprezentuje cały system.

Miejscem docelowym jest zazwyczaj ~/.hermes/. Istniejąca instalacja Hermes nie jest traktowana jako puste naczynie: planista raportuje konflikty i domyślnie odmawia aplikacji zmian, jeśli nie może bezpiecznie zachować obu stron.

Co migruje, a co nie

Przydatna różnica to nie “obsługiwane” versus “nieobsługiwane”. Niektóre stany OpenClaw mapują się bezpośrednio, niektóre muszą zostać przekonwertowane, a niektóre mogą być tylko zarchiwizowane, ponieważ dwa agenci używają różnych modeli wykonania.

Migracja bezpośrednia lub konwertowana

Źródło OpenClaw Miejsce docelowe Hermes Zachowanie migracji
workspace/SOUL.md ~/.hermes/SOUL.md Bezpośrednia kopia persony
workspace/MEMORY.md ~/.hermes/memories/MEMORY.md Zparsowane, scalone i zdeduplikowane
workspace/USER.md ~/.hermes/memories/USER.md Zparsowane, scalone i zdeduplikowane
workspace/memory/*.md Główna pamięć Hermes Pliki dzienne są scalane do wpisów
workspace/AGENTS.md Wybrany katalog projektu Wymaga --workspace-target
Katalogi umiejętności OpenClaw ~/.hermes/skills/openclaw-imports/ Skopiowane z jawną polityką konfliktów
agents.defaults.model Konfiguracja modelu Hermes Formy główne i zapasowe są interpretowane
models.providers.* Konfiguracja dostawcy Hermes Podstawowy URL i typ API są mapowane
mcp.servers.* mcp_servers.* Definicje Stdio i HTTP/SSE są mapowane
Tokeny kanałów i listy dozwolonych .env Hermes Tylko z --migrate-secrets
Polityka resetu sesji session_reset Tryby dzienne i bezczynności są przetłumaczone
Zatwierdzenia wykonywania Zatwierdzenia i lista dozwolonych poleceń Hermes Tryby i wzorce są przekształcane
Ustawienia przeglądarki, TTS, piaskownicy i timeoutów Powiązana konfiguracja Hermes Obsługiwane pola są mapowane

Pamięć nie jest kopiowana jako jeden nieprzejrzysty dokument. Migrator parsuje pliki pamięci i profilu użytkownika OpenClaw, scala je z istniejącymi wpisami Hermes i usuwa duplikaty. Jest to bezpieczniejsze niż zastępowanie ustalonego pliku pamięci Hermes, ale oznacza również, że powinieneś porównać sens i strukturę, a nie tylko rozmiary plików.

Zarchiwizowane do ręcznej rekonstrukcji

Funkcja OpenClaw Dlaczego nie jest bezpośrednio przenoszalna Kierunek Hermes
Zadania Cron Schematy i modele dostarczania są różne Odtwórz za pomocą hermes cron create
Wtyczki API wtyczek są specyficzne dla produktu Zastąp wtyczką Hermes, umiejętnością, serwerem MCP lub wbudowanym narzędziem
Haki i webhooki Kontrakty zdarzeń i uprawnień są różne Odtwórz za pomocą webhooków Hermes lub haków bramki
Zaawansowany backend pamięci Bazy danych i semantyka odzyskiwania są różne Skonfiguruj dostawcę pamięci Hermes osobno
Ustawienia rejestru umiejętności Implementacja rejestru jest inna Skonfiguruj za pomocą hermes skills config
Lista agentów wiele i powiązania Modele routingu i profili są różne Zbuduj ponownie za pomocą profili i konfiguracji bramki Hermes
IDENTITY.md Hermes używa innego podziału tożsamości Scal istotną tożsamość z SOUL.md
HEARTBEAT.md Brak bezpośredniego równoważnika sterowanego plikiem Wyrażaj prace okresowe jako zadania cron
TOOLS.md Hermes dostarcza własne instrukcje narzędzi Przenieś tylko autentyczne zasady przepływu pracy do umiejętności lub pliku kontekstu
BOOTSTRAP.md Semantyka bootstrapu jest inna Użyj plików kontekstu, konfiguracji początkowej lub umiejętności

Te elementy są zapisywane pod ~/.hermes/migration/openclaw/<timestamp>/archive/. Pomyślna migracja z niepustym archiwum nie jest więc zakończona; archiwum to pozostała kolejka pracy.

Krok 1: Inwentaryzacja działającego systemu OpenClaw

Przed zainstalowaniem czegokolwiek, zapisz, które zachowania są faktycznie używane. Same pliki konfiguracyjne mogą nie ujawnić zewnętrznej bazy danych wtyczki, ręcznie nadzorowanej bramki, niestandardowego katalogu agenta, lokalnego procesu modelu lub konta, które jest właścicielem punktu końcowego webhooka.

Zapisz co najmniej:

  • Wersje OpenClaw i Hermes.
  • Aktywny katalog stanu OpenClaw i ścieżka konfiguracji.
  • Wszystkie katalogi agentów i przestrzeni roboczych.
  • Dostawcy modeli, modele zapasowe i punkty końcowe lokalne.
  • Zainstalowane i włączone wtyczki, wraz z ich danymi trwałymi.
  • Umiejętności z przestrzeni roboczej, zarządzanych, osobistych i katalogów projektu.
  • Serwery MCP, zmienne środowiskowe, katalogi robocze i dane uwierzytelniające.
  • Konta Telegram, Discord, Slack, WhatsApp, Signal, Matrix i Mattermost.
  • Zadania Cron, haki, webhooki, zachowanie heartbeat i zewnętrzni nadzorcy.
  • Reguły zatwierdzania, listy dozwolonych poleceń, backend piaskownicy i dostęp do przeglądarki.

Ta inwentaryzacja staje się później listą kontrolną akceptacji. Bez niej zmigrowany asystent może wyglądać na zdrowy, ponieważ odpowiada na wiadomości, podczas gdy cicho pomija tygodniową kopię zapasową, dostawcę pamięci lub restrykcyjną regułę zatwierdzania.

Krok 2: Utworzenie zweryfikowanej kopii zapasowej OpenClaw

OpenClaw 2.0 zawiera polecenie kopii zapasowej, które rozumie jego bieżący stan SQLite, skonfigurowane korzenie agentów, dane uwierzytelniające, wtyczki i przestrzenie robocze. Użyj go zamiast kopiowania aktywnych plików bazy danych i liczenia na to, że ich pliki towarzyszące (WAL) zostały ujęte spójnie.

mkdir -p ~/Backups
openclaw gateway stop
openclaw backup create --output ~/Backups --verify

Przechowuj wynikowe archiwum poza ~/.openclaw/. Opcja --verify natychmiast waliduje archiwum, w tym bezpieczeństwo ścieżek i obsługiwane sprawdzenia integralności SQLite. Bazy danych należące do OpenClaw są przechwytywane przez API kopii zapasowej online SQLite, weryfikowane pod kątem właściciela i skompresowane, a nie kopiowane jako surowe pliki. Jeśli Twoje przestrzenie robocze są duże, możesz użyć --no-include-workspace, ale wtedy skopiuj oddzielnie te repozytoria i pliki niespożytkowe Git; katalogi agentów pozostaną uwzględnione niezależnie od tego.

Pułapka transcriptów sprzed 2.0

OpenClaw 2.0 przeniósł sesje i transkrypcje z plików sessions.json i JSONL do SQLite, domyślnie w ~/.openclaw/agents/<agent>/agent/openclaw-agent.sqlite. Ma to tu znaczenie z jednego nieoczywistego powodu: przenośne archiwum backup create pomija starsze transkrypcje JSONL i logi, nawet gdy nie są już zapisywane.

Więc jeśli Twoja instalacja OpenClaw pochodzi sprzed 2.0 i zależy Ci na historii starych rozmów, samo zweryfikowane archiwum jej nie chroni. Zatrzymaj bramkę i wykonaj migawkę plików systemowych, woluminu lub maszyny wirtualnej przed migracją, albo użyj poleceń migawek per-baza danych OpenClaw dla baz danych, dla których chcesz kompaktową, niezależnie zweryfikowaną kopię:

openclaw backup sqlite create --global --repository ~/Backups/openclaw-sqlite
openclaw backup sqlite create --agent main --repository ~/Backups/openclaw-sqlite
openclaw backup sqlite list --repository ~/Backups/openclaw-sqlite
openclaw backup sqlite verify ~/Backups/openclaw-sqlite/<snapshot-id>

Traktuj te repozytoria migawek z tymi samymi uprawnieniami i polityką retencji co aktywny stan — mogą zawierać profile uwierzytelniania, stan sesji i dane wtyczek. W przypadku ustawienia z ciągłą replikacją zamiast okresowych archiwów, OpenClaw dokumentuje Litestream dla tych samych baz danych; to jest lepszą odpowiedzią niż ręcznie napisane zadania cp, jeśli migracja ma trwać dni.

Utwórz również kopię zapasową Hermes, jeśli Hermes zawiera już przydatny stan:

hermes backup

Migracja zazwyczaj tworzy własne archiwum Hermes przed migracją pod ~/.hermes/backups/. Nie przekazuj --no-backup podczas pierwszego przełączenia; oszczędność kilku sekund nie jest warta usunięcia najprostszej ścieżki cofnięcia.

Krok 3: Instalacja i testowanie pustego Hermes Agent

Zainstaluj Hermes, wybierz model i udowodnij, że podstawowy agent terminalowy działa, zanim zaimportujesz stan OpenClaw. To rozdziela awarie instalacji i dostawców od awarii migracji. Przewodnik Hermes AI Assistant szczegółowo omawia wybór dostawcy i konfigurację bramki; do migracji potrzebujesz tylko działającej linii bazowej terminalowej.

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
source ~/.bashrc
hermes setup
hermes status
hermes doctor

Jeśli już zainstalowałeś Hermes, zaktualizuj go przed poleganiem na bieżącym zachowaniu migracji:

hermes update
hermes --version

Ta kontrola wersji nie jest formalnością. Postawa bezpieczeństwa claw migrate znacznie zmieniła się w trakcie 2026 roku: bieżące buildy odmawiają aplikacji planu z konfliktami, domyślnie zapisują punkt przywracania przed migracją, redagują sekrety w raportach zapisywanych na dysku i wymagają jawnego --migrate-secrets nawet przy --preset full. Starsze buildy nie robiły żadnej z tych rzeczy — co szczególnie istotne, --preset full kiedyś cicho pobierało klucze API, a plan z konfliktami raportował “migrated 0” po tym, jak już potwierdziłeś. Jeśli podążasz za starszą instrukcją, flagi mogą wyglądać identycznie, podczas gdy zachowanie różni się dokładnie w miejscach, które mają znaczenie.

Nie konfiguruj jeszcze tokenów starego bota. Walidacja tylko w terminalu pozwala OpenClaw pozostać aktywnym podczas przygotowywania Hermes i unika dwóch procesów bramki rywalizujących o tę samą tożsamość komunikacyjną.

Krok 4: Wykonaj test sucho przed wyborem flag

Zacznij od pełnego presetu, ponieważ ujawnia największą możliwą powierzchnię mapowania, ale wyklucz sekrety:

hermes claw migrate --dry-run --preset full

Migracja zawsze prezentuje podgląd przed aplikowaniem, nawet bez --dry-run. Jawną flaga jest nadal cenna, ponieważ czyni Twoje intencje niejednoznacznymi i daje czas na sprawdzenie ścieżek źródłowych, miejsc docelowych, konwersji, konfliktów, pominiętych elementów, archiwów i ostrzeżeń o sekretach bez niecierpliwego monitu potwierdzenia. Pełny zestaw flag dla claw migrate i sąsiednich poleceń jest streszczony w ściągawce CLI Agent Hermes.

Użyj niestandardowego źródła, gdy stan OpenClaw nie znajduje się w domyślnej lokalizacji:

hermes claw migrate \
  --dry-run \
  --preset full \
  --source /srv/openclaw-state

Jeśli AGENTS.md powinno dotyczyć konkretnego repozytorium, powiedz o tym jawnie:

hermes claw migrate \
  --dry-run \
  --preset full \
  --workspace-target /srv/projects/my-project

Bez --workspace-target, instrukcje przestrzeni roboczej nie są umieszczane w dowolnym bieżącym katalogu. To jest poprawne zachowanie: plik instrukcji należy do zakresu, a zgadywanie jego zakresu może zmienić każdą sesję Hermes uruchamianą pod błędnym katalogiem.

Preset full czy user-data?

Preset full zawiera zgodną infrastrukturę i ustawienia zachowania. Preset user-data koncentruje się na personie, pamięciach, umiejętnościach i powiązanych danych użytkownika, wykluczając konfigurację infrastruktury.

Użyj user-data, gdy Hermes ma już starannie zbudowaną konfigurację dostawcy, bramki, bezpieczeństwa lub piaskownicy. Użyj full, gdy Hermes jest nowy, a OpenClaw jest autorytatywnym zestawieniem, ale nadal inspektuj każde przekształcone ustawienie zachowania. Żaden preset nie importuje sekretów, chyba że zostanie dodany --migrate-secrets.

Krok 5: Rozwiązywanie konfliktów bez niszczenia pochodzenia

Domyślne zachowanie przy konfliktach jest ostrożne: migracja odmawia aplikacji planu z nierozwiązanymi konfliktami plików, chyba że ustawiono --overwrite. Jest to preferowane w stosunku do pozornie pomyślnego przełączenia, które nadpisuje nowszą personę lub umiejętność Hermes — i preferowane w stosunku do starszego zachowania, gdzie potwierdzenie planu z konfliktami dawało wynik “migrated 0”, który wyglądał jak brak operacji, ale był naprawdę cichym pominięciem.

Konflikty umiejętności są obsługiwane osobno, a domyślnym zachowaniem tam jest skip, które cicho zachowuje istniejącą wersję Hermes i odrzuca przychodzącą. Dla pierwszej migracji zalecam rename:

hermes claw migrate \
  --preset full \
  --workspace-target /srv/projects/my-project \
  --skill-conflict rename

Zaimportowane umiejętności są umieszczane pod ~/.hermes/skills/openclaw-imports/. Przy rename, kolizja nazw powoduje utworzenie importowanego brata zamiast ukrywania którejś wersji. Przeglądaj dwie implementacje, przetestuj wybraną i usuń redundantną kopię później.

Używaj --overwrite dopiero po przeglądnięciu podglądu lub przy odbudowywaniu zbywalnego profilu Hermes. Działa szerzej niż obsługa konfliktów umiejętności i może zastąpić istniejące pliki Hermes. Obecność kopii zapasowej czyni nadpisywanie odzyskiwalnym, a nie pożądanym.

Krok 6: Migracja konfiguracji i danych użytkownika bez sekretów

Zastosuj zweryfikowany plan i zostaw dane uwierzytelniające na etapie przełączenia:

hermes claw migrate \
  --preset full \
  --workspace-target /srv/projects/my-project \
  --skill-conflict rename

Po ukończeniu zapisz wydrukowane liczniki dla pozycji zmigrowanych, pominiętych, konfliktowych i zarchiwizowanych. Otwórz katalog migracji z datą i godziną i przeczytaj jego podsumowanie przed rozpoczęciem nowej sesji Hermes. Bieżące buildy redagują wykryte wartości sekretów w report.json i summary.md, które zapisują, więc te pliki są bezpieczne do trzymania obok Twoich notatek zmian — ale potwierdź to w swojej wersji, a nie zakładaj, ponieważ wcześniejsze buildy zapisywały surowe klucze API do tych samych raportów.

Nowe sesje mają znaczenie. Zaimportowane umiejętności i wpisy pamięci są ładowane przy rozpoczęciu sesji, więc testowanie w sesji poprzedzającej migrację może dać fałszywy wynik “skill not found” lub przestarzałą pamięć.

Krok 7: Walidacja zachowania przed przełączeniem kanału

Uruchom kontrolne po-migracyjne z terminalu:

hermes status
hermes doctor
hermes config show
hermes gateway status

Jeśli odzyskiwanie pamięci wygląda na niekompletne, zbuduj indeks przed wnioskowaniem, że import zawiodł:

hermes memory reindex

Następnie rozpocznij nową rozmowę Hermes i przetestuj obserwowalne zachowania, a nie tylko obecność plików. Poproś o znane preferencje użytkownika z pamięci, wywołaj jedną zaimportowaną umiejętność, wezwij narzędzie MCP, uruchom nieszkodliwe polecenie terminalowe, które powinno być dozwolone, i spróbuj takie, które powinno wymagać zatwierdzenia.

Przydatna macierz akceptacji wygląda tak:

Obszar Test Niepowodzenie zazwyczaj oznacza
Persona Zadaj pytanie, w którym ton i granice są oczywiste SOUL.md nie zostało znalezione, zostało nadpisane lub wymaga scalenia treści tożsamości
Pamięć użytkownika Poproś o znaną stabilną preferencję Wpisy pamięci nie zostały zaimportowane, nieoczekiwanie zdeduplikowane, nie przeindeksowane lub nie załadowane w nowej sesji
Umiejętność Wywołaj charakterystyczny zaimportowany przepływ pracy Kolizja nazw, nieprawidłowe metadane, brakująca zależność lub przestarzała sesja
Dostawca Uruchom normalną i długą odpowiedź Zła mapowanie modelu, brakujące dane uwierzytelniające lub niezgodny typ API
MCP Wywołaj jedno narzędzie tylko do odczytu z każdego serwera Brakujące środowisko, zły cwd, niezgodność transportu lub problem z filtrem narzędzi
Terminal Przetestuj dozwolone i wymagające zatwierdzenia polecenia Tryb zatwierdzania lub mapowanie listy dozwolonych zmieniło politykę
Przeglądarka Otwórz nieszkodliwą stronę testową URL CDP, backend przeglądarki lub dostęp do piaskownicy różni się
Kompresja Uruchom długą zbywalną sesję Model podsumowania lub zachowanie kompaktowe nie został zamapowany zgodnie z zamiarem
Reset sesji Zbadaj konfigurację i przetestuj na zbywalnym profilu Interpretacja dzienna/bezczynności różni się od reguł OpenClaw

Migracja mapuje timeoutSeconds na szacunkową wartość maksymalnej liczby tur, tłumaczy poziomy rozumowania i konwertuje tryby zatwierdzania. To są mapowania semantyczne, a nie skopiowania bajt po bajcie. Sprawdź, czy wynikowe zachowanie odpowiada Twoim intencjom, zwłaszcza dla długich autonomicznych zadań i wykonania poleceń.

Krok 8: Obsługa sekretów jako osobna zmiana bezpieczeństwa

--migrate-secrets może zbierać dozwolone klucze z wartości konfiguracji OpenClaw, ~/.openclaw/.env, obiektów środowiska konfiguracji i profili uwierzytelniania per-agent (~/.openclaw/agents/<agent>/agent/auth-profiles.json). Rozumie zwykłe ciągi znaków, szablony środowiska i obiekty SecretRef oparte na środowisku.

Świadomie nie kopiuje dowolnych nazw sekretów. SecretRef oparte na pliku i poleceniu nie mogą zostać automatycznie rozpoznane, a wartości poza obsługiwana listą dozwolonych pozostają do ręcznej konfiguracji. Traktuj każde ostrzeżenie tutaj jako kontrolę działającą zgodnie z projektowaniem, a nie jako powód, aby wkleić całe środowisko OpenClaw do Hermes.

Dla pierwszej migracji wolę konfigurować dane uwierzytelniające dostawców przez Hermes po imporcie danych. Jeśli używasz automatycznej migracji sekretów, podglądaj ją i uruchamiaj tylko wtedy, gdy jesteś gotów przejąć własność kanałów:

hermes claw migrate \
  --dry-run \
  --preset full \
  --migrate-secrets

Następnie zweryfikuj obecność bez wypisywania wartości:

hermes status
hermes auth status

Zrotuj dane uwierzytelniające, jeśli były narażone w historii powłoki, wklejone do notatek migracji lub przechowywane z słabszymi uprawnieniami niż zamierzono. Migracja zachowuje dostęp; nie dowodzi, że stara praktyka obsługi sekretów była bezpieczna.

Krok 9: Wykonanie kontrolowanego przełączenia komunikacji

Nie ma uczciwego przejścia o zerowym przestojem, gdy dwa procesy miałyby pytać, subskrybować lub odpowiadać jako to samo konto bota. Bezpiecznym wzorcem jest przygotowanie równolegle, zatrzymanie OpenClaw, uruchomienie Hermes, przetestowanie każdej platformy i trzymanie poleceń cofnięcia na gotowości.

Najpierw zatrzymaj bramkę OpenClaw i potwierdź, że jest zatrzymana:

openclaw gateway stop
openclaw gateway status

Teraz przenieś lub ręcznie ustaw sekrety komunikacyjne, skonfiguruj bramkę Hermes i uruchom ją:

hermes gateway setup
hermes gateway install
hermes gateway start
hermes gateway status

Wyślij bezpośrednią wiadomość od dozwolonego użytkownika na każdej platformie. Przetestuj przychodzący tekst, odpowiedź, załącznik (jeśli używany), polecenie ukośne, długotrwałe zadanie, przerwania oraz wychodzącą zaplanowaną lub ręczną wysyłkę. Zielony status usługi dowodzi, że proces działa; nie dowodzi, że listy dozwolonych, routing wątków, dostarczanie i formatowanie przetrwały zmianę.

WhatsApp wymaga ponownego sparowania, ponieważ migracja nie przenosi sesji Baileys jako ponownie używalnego tokena. Uruchom hermes whatsapp i ukończ przepływ QR. Inne kanały mogą ponownie użyć tokenów, ale układy kont i powiązania wielu kont nadal zasługują na jawne testy.

Umiejętności, wtyczki i serwery MCP nie są zamiennymi

Umiejętności OpenClaw z czterech lokalizacji mogą być zaimportowane, ale zaimportowany katalog jest użyteczny tylko wtedy, gdy jego założenia pozostają prawdziwe. Sprawdź nazwy poleceń, ścieżki systemu plików, zmienne środowiskowe, narzędzia specyficzne dla platformy i odniesienia do API tylko OpenClaw. Przewodnik umiejętności OpenClaw wyjaśnia formaty źródłowe; przewodnik autorstwa umiejętności Hermes pokrywa zachowanie docelowe.

Wtyczki OpenClaw nie stają się wtyczkami Hermes. Rekonstruuj funkcjonalność na najwęższej odpowiedniej warstwie:

  • Użyj umiejętności Hermes dla procedury, wyboru narzędzi i ponownie używalnych instrukcji.
  • Użyj serwera MCP dla danych na żywo lub granicy usługi zewnętrznej.
  • Użyj wbudowanego narzędzia Hermes, gdy już dostarcza funkcjonalność.
  • Użyj wtyczki Hermes tylko wtedy, gdy kod musi uczestniczyć w samym runtime agenta.

To jest dobry moment, aby usunąć osad architektoniczny. Wtyczka zainstalowana w celu skompensowania starej ograniczenia OpenClaw może nie mieć powodu, aby przetrwać w Hermes, podczas gdy wtyczka trzymająca trwałą bazę danych potrzebuje świadomego planu eksportu lub zastąpienia.

Definicje MCP migrują się bardziej bezpośrednio, w tym polecenia, argumenty, środowiska, katalogi robocze, URL-e i filtry włącz/wyłącz narzędzi. Nadal testuj każdy serwer oddzielnie: poprawna mapowanie YAML nie zainstaluje brakującego wykonalnika, nie odnowi OAuth ani nie sprawi, że ścieżka ze starego hosta będzie istnieć na nowym.

Pamięć potrzebuje kontroli jakości, a nie kontroli liczby wierszy

Hermes importuje MEMORY.md, USER.md i pliki pamięci dziennej do swojej struktury pamięci. To zachowuje przydatne fakty, ale wtyczki pamięci OpenClaw, bazy danych długiego kontekstu, indeksy osadzeń i polityki odzyskiwania są zarchiwizowane, a nie przetłumaczone na równoważny system poznawczy.

Przeglądaj zaimportowaną pamięć w trzech przejściach:

  1. Tożsamość i stabilne preferencje: zachowaj zwięzłe fakty, które powinny wpływać na wiele sesji.
  2. Wiedza operacyjna: przenieś powtarzalne procedury do umiejętności lub kontekstu projektu zamiast globalnej pamięci.
  3. Zaległości historyczne: zarchiwizuj zakończone incydenty, przestarzałe plany i samoodnoszącą się komentarze agenta, zamiast wstrzykiwać je na zawsze.

Nie importuj każdego transkryptu jako trwałej pamięci. Więcej zapamiętanego tekstu może sprawić, że agent stanie się mniej spójny, ponownie odzyskując przestarzałe ograniczenia i jego własne wcześniejsze domysły. Przewodnik systemu pamięci Hermes wyjaśnia, gdzie będą mieszkać zaimportowane wpisy, a porównanie dostawców pamięci agenta jest lepszym miejscem do wyboru nowego długoterminowego backendu.

Ponowne stworzenie zadań cron, heartbeat, haków i routingu wielu agentów

Zadania Cron są zarchiwizowane, ponieważ zaplanowane wykonanie to nie tylko wyrażenie cron. Zadanie ma też prompt lub polecenie, katalog roboczy, model, timeout, miejsce dostarczenia, uprawnienia, zachowanie ponawiania i oczekiwania dotyczące stanu sesji.

Dla każdego zarchiwizowanego zadania OpenClaw, zapisz te pola i odtwórz je w Hermes:

hermes cron create
hermes cron list

Uruchom każde zadanie raz ręcznie przed włączeniem jego harmonogramu. Zweryfikuj zarówno pracę, jak i ścieżkę dostarczania, zwłaszcza gdy stare zadanie publikowało na czacie Telegram, kanale Slack lub wątku Discord.

Tłumacz HEARTBEAT.md na jawne zaplanowane zadania tylko wtedy, gdy cykliczne wykonanie jest naprawdę wymagane. Niejasne heartbeat, które prosi agenta o sprawdzenie wszystkiego co kilka minut, jest kosztowne i trudne do weryfikacji; oddzielone nazwane zadania z obserwowalnymi wynikami są łatwiejsze w operowaniu.

Definicje wielu agentów i powiązania kanałów również wymagają ręcznego projektowania. Profile Hermes zapewniają izolowany stan i bramki, ale nie są syntaktycznym przepisanem listy agentów OpenClaw. Mapuj każdego agenta według odpowiedzialności, przestrzeni roboczej, danych uwierzytelniających, kanału i granicy bezpieczeństwa, zamiast najpierw odtwarzać nazwy; rozumowanie profilu-pierwszego za tym mapowaniem jest przepracowane w przewodniku produkcyjnej konfiguracji Hermes.

Rozwiązywanie problemów z awariami, które mają znaczenie

“Nie znaleziono katalogu OpenClaw”

Polecenie przeszukuje domyślne katalogi OpenClaw, Clawdbot i Moltbot. Jeśli Twój stan znajduje się gdzie indziej, wskaż katalog zawierający konfigurację OpenClaw i powiązany stan:

hermes claw migrate --dry-run --source /path/to/openclaw

Nie wskazuj --source tylko do przestrzeni roboczej, chyba że to jest naprawdę kompletne źródło. Podgląd powinien pokazać konfigurację, przestrzeń roboczą i rozpoznaną kategorie.

Migracja odmawia z powodu konfliktów

To jest bezpieczne domyślne, a nie zrzut. Zrób kopię zapasową Hermes, zidentyfikuj, która strona jest autorytatywna dla każdego konfliktu, użyj --skill-conflict rename dla umiejętności i zarezerwuj --overwrite dla zweryfikowanego planu.

Jeśli istniejąca konfiguracja Hermes jest cenna, rozważ preset user-data. Importuje zawartość użytkownika należącą do asystenta, nie próbując zastępować ustalonej infrastruktury.

Zaimportowane umiejętności się nie pojawiają

Rozpocznij nową sesję i zbadaj zaimportowany katalog pod ~/.hermes/skills/openclaw-imports/. Użyj /skills w Hermes, aby potwierdzić odkrycie. Jeśli umiejętność istnieje, ale nie może się uruchomić, zbadaj jej zależności i założenia narzędzi, zamiast powtarzać migrację.

Klucze dostawcy nie zostały znalezione

Klucz może być przechowywany w pliku środowiska OpenClaw, obiekcie środowiska konfiguracji, profilu uwierzytelniania, SecretRef opartym na pliku, SecretRef opartym na poleceniu lub nieobsługiwanej nazwie zmiennej. Migrator rozpoznaje obsługiwane formy i ostrzega o reszcie. Dodaj nierozpoznane wartości przez konfigurację lub polecenia uwierzytelniania Hermes, zamiast konwertować bezpieczne odniesienia na jawny tekst, tylko po to, aby zadowolić importer.

Bot działa, ale wiadomości są brakujące lub zduplikowane

Potwierdź, że bramka OpenClaw jest zatrzymana i że tylko jeden profil Hermes jest właścicielem tokena. Następnie zbadaj hermes gateway status i logi bramki, po nich listy dozwolonych kanałów i wybór konta. Zduplikowani konsumenty i nieprawidłowe listy dozwolonych są częstsze niż zepsuty model językowy.

Osobowość jest obecna, ale odzyskiwanie jest słabe

SOUL.md i pamięć to różne warstwy. Potwierdź, że persona skopiowana do ~/.hermes/SOUL.md, wpisy pamięci dotarły do ~/.hermes/memories/, a test używa nowej sesji. Uruchom hermes memory reindex przed głębszą diagnostyką. Jeśli OpenClaw zależał od zewnętrznej wtyczki pamięci, skonfiguruj dostawcę pamięci Hermes, zamiast oczekiwać, że import Markdown odtworzy jej zachowanie odzyskiwania.

Cofnij Hermes

Zatrzymaj bramkę Hermes przed przywróceniem kopii zapasowej Hermes sprzed migracji:

hermes gateway stop
hermes import ~/.hermes/backups/pre-migration-<timestamp>.zip

hermes import nadpisuje pliki w domu Hermes zawartością archiwum, więc zbadaj dokładną nazwę pliku i zrozum, że sesje Hermes po migracji mogą zostać zastąpione. Następnie pozostaw Hermes zatrzymany, uruchom ponownie OpenClaw i zweryfikuj zdrowie jego bramki i kanałów.

Ręczna migracja, gdy polecenie nie może modelować Twojego zestawu

Ręczny fallback jest wolniejszy, ale czasem wyraźniejszy dla silnie dostosowanych instalacji. Zbuduj czysty profil Hermes i migruj według odpowiedzialności:

  1. Skopiuj lub przepisuj zawartość persony do ~/.hermes/SOUL.md.
  2. Skuruj stabilne fakty użytkownika do MEMORY.md i USER.md Hermes, zamiast kopiować całą historię.
  3. Umieść instrukcje projektu w poprawnym na poziomie repozytorium AGENTS.md.
  4. Skopiuj zgodne umiejętności do nazwanego katalogu importu i przetestuj je indywidualnie.
  5. Przetłumacz definicje dostawców i MCP do ~/.hermes/config.yaml bez wypisywania sekretów.
  6. Skonfiguruj dane uwierzytelniające przez uwierzytelnianie Hermes lub zarządzanie sekretami.
  7. Odtwórz zatwierdzenia, piaskowanie, dostęp do przeglądarki, zadania cron, webhooki i kanały.
  8. Zastąp każdą wtyczkę OpenClaw jawną funkcjonalnością Hermes lub wycofaj ją.

Ścieżka ręczna jest szczególnie odpowiednia, gdy źródło zawiera kilku agentów OpenClaw z różnymi przestrzeniami roboczymi, wtyczkami pamięci i powiązaniami kanałów. Automatyczna unia może zachować pliki, jednocześnie wymazując izolację, która czyniła zestaw bezpiecznym.

Nie sprzątaj OpenClaw natychmiast

Po tym, jak Hermes przeszedł testy lokalne i komunikacyjne, utrzymuj OpenClaw zainstalowane, ale zatrzymane przez okres stabilizacji. Zachowaj zweryfikowaną kopię zapasową OpenClaw, archiwum migracji, kopię zapasową Hermes sprzed migracji i kopię listy kontrolnej akceptacji.

Hermes dokumentuje hermes claw cleanup do przemiany pozostałych katalogów OpenClaw na .pre-migration/, oraz hermes claw cleanup --dry-run do podglądu tego, co zostałoby zarchiwizowane. Użyj tego tylko po zatrzymaniu bramki OpenClaw, gdy bieżąca wersja Hermes zawiera zabezpieczenia procesowe i podjąłeś decyzję, że nie cofniesz zmiany. Starsze buildy z 2026 roku miały zgłoszoną ścieżkę sprzątania, która mogła przenosić stan, gdy bramka OpenClaw nadal działała; bieżący kod oznacza zabezpieczenie jako zaimplementowane, ale zweryfikowana kopia zapasowa i zatrzymana usługa źródłowa pozostają rozsądną granicą.

Sprzątanie nie jest wymagane, aby udowodnić, że Hermes działa. Istnieje, aby zmniejszyć przyszłe zamieszanie stanu, więc odwlekanie go w oknie cofnięcia jest dobrą operacją, a nie niechlujnością.

Kiedy pozostać na OpenClaw 2.0

OpenClaw 2.0 nie jest porzuconą bazą. Wersja v2026.8.1 wdrożyła ponad 16 000 prośb o włączenie od ponad 900 contributorów — około połowy całkowitej historii połączeń projektu — i zasadniczo zmieniła onboardowanie, interfejs web Control UI, przechowywanie sesji, kopie zapasowe, kanały, pamięć, wtyczki, automatyzacje, użycie przeglądarki i komputera, bezpieczeństwo i niezawodność usługi. Jeśli te funkcje platformy są centralne dla Twojego wdrożenia, migracja może usunąć więcej działających funkcji, niż uprości.

Pozostaw na OpenClaw, gdy zależy Ci na:

  • Przebudowanym interfejsie Control UI, z dokowanym edytorem plików, panelem Changes opartym na git, panelu przeglądarki i zatwierdzeniach w rozmowie.
  • Presety sesji, wyszukiwaniu transkrypcji, grupach, widokach statusu i działaniach zbiorczych.
  • Wtyczce specyficznej dla produktu bez równoważnika w Hermes.
  • Złożonym routingu wielu użytkowników, mobilnym, urządzenia lub kanału, już działającym w produkcji.
  • Specyficznym dla OpenClaw użyciu przeglądarki, komputera lub administracji Gateway.
  • Bazy danych pamięci lub sesji, która nie może być wyeksportowana z akceptowalną stratą.
  • Kontrolach operacyjnych, których Twoja drużyna już zna i monitoruje.

Przejdź na Hermes, gdy jego prostszy, terminal-pierwszy przepływ pracy, profile, umiejętności nastawione na naukę, model pamięci, zaplanowane zadania, elastyczność dostawcy lub model delegacji lepiej pasują do tego, co faktycznie operujesz. Porównanie OpenClaw i Hermes omawia tę decyzję z bieżącymi liczbami; ta strona dotyczy wykonania przełączenia, gdy decyzja została podjęta.

Końcowa lista kontrolna migracji

  • Zarejestrowano wersję OpenClaw i rozwiązane ścieżki.
  • Zweryfikowaną kopię zapasową OpenClaw przechowywaną poza aktywnym stanem.
  • Migawkę transkryptów JSONL sprzed 2.0 wykonano osobno, jeśli mają znaczenie.
  • Utworzono istniejącą kopię zapasową Hermes.
  • Sprawdź wersję Hermes względem bieżącego zachowania bezpieczeństwa claw migrate.
  • Przeglądnano pełny test sucho.
  • Każdemu konfliktowi przypisano rozwiązanie.
  • Zawartość archiwum dodano do listy ręcznej pracy.
  • Przetestowano personę, pamięć użytkownika i umiejętności w nowej sesji.
  • Przetestowano dostawcę, model zapasowy, MCP, przeglądarkę i terminal.
  • Przetestowano zachowanie zatwierdzania i piaskownicy, w tym odrzucone działanie.
  • Odtworzono lub wycofano zadania cron, wtyczki, haki, backend pamięci i powiązania wielu agentów.
  • Zatrzymano bramkę OpenClaw przed przeniesieniem danych uwierzytelniających kanałów.
  • Przetestowano każdy kanał komunikacyjny z dozwolonego konta.
  • Jeśli używany, ponownie sparowano WhatsApp.
  • Zarejestrowano polecenia cofnięcia i nazwy archiwów.
  • Odwleczono sprzątanie OpenClaw do zakończenia okresu stabilizacji.

Ostateczny werdykt

hermes claw migrate jest wystarczająco dobry, aby uczynić zmianę z OpenClaw na Hermes rutynową, ale tylko jeśli “rutynowa” oznacza zaplanowaną i odwracalną. Jego najsilniejszą funkcją nie jest liczba kopiowanych plików; to jest podgląd, który mówi, które części starego asystenta mają prawdziwy równoważnik w Hermes, a które części nadal wymagają inżynieryjnego osądu.

Używaj pełnego presetu, aby odkryć zakres, trzymaj sekrety poza pierwszym przejściem, zmieniaj nazwy konfliktów umiejętności, testuj z terminalu i przenosząc własność kanałów jako osobne wydarzenie. Co najważniejsze, zachowaj stary system, aż Hermes ukończy prawdziwą zaplanowaną pracę i prawdziwe rozmowy, a nie jedynie zwróci pomyślny status polecenia.

Odniesienia

Subskrybuj

Otrzymuj nowe wpisy o systemach, infrastrukturze i inżynierii AI.