CommunityCodierung & Entwicklunggithub.com

Externe Speicheranbieter (Apartment38/Agent-Skills)

Installieren, konfigurieren und überprüfen Sie externe Speicheranbieter für Hermes Agent.

Was ist Agent-Skills)?

Diese Skill-Anleitung beschreibt den vollständigen Workflow zur Integration externer Speicheranbieter in den Hermes Agent, wobei besonderer Wert auf Kompatibilität, Isolation und Überprüfbarkeit gelegt wird. Sie behandelt die grundlegenden Prinzipien, darunter die strikte Trennung von Abhängigkeiten außerhalb der verwalteten Hermes-Venv, die korrekte Handhabung von Python-ABI-Grenzen und die ausschließliche Nutzung der Hermes CLI für Konfigurationsänderungen. Der Workflow umfasst sechs Schritte: Prüfung des Ist-Zustands vor Änderungen, Auswahl einer geeigneten Isolationstopologie (pipx oder dedizierte Venv), Installation des Anbieters und der Bridge, Konfiguration ohne Duplikate, Neustart und Überprüfung sowie einen vollständigen End-to-End-Test über den Hermes Agenten-Pfad. Besondere Aufmerksamkeit gilt häufigen Fallstricken wie getrennten pipx-Venvs, die für In-Prozess-Importe unsicher sind, sowie der Unterscheidung zwischen Plugin-Erkennung und -Aktivierung. Die Skill unterstützt alle Hermes-basierten Plattformen und ist als Referenz für Entwickler gedacht, die Speicher-Backends wie Mnemosyne integrieren.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Apartment38/Agent-Skills/tree/HEAD/autonomous-ai-agents/external-memory-providers

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Externe Speicheranbieter

Installieren, konfigurieren und überprüfen Sie externe Speicheranbieter für Hermes Agent. Behandeln Sie „installiert“ und „in Hermes aktiv“ als separate Akzeptanzkriterien.

Grundsätze

  1. Beginnen Sie mit der aktuellen autoritativen Dokumentation. Laden Sie die hermes-agent Skill und rufen Sie sowohl die Installationsseite des Anbieters als auch dessen vollständige Hermes-Integrationsseite ab. Folgen Sie dem dokumentierten empfohlenen Pfad; verwenden Sie ein dokumentiertes Fallback nur, wenn eine echte Kompatibilitätseinschränkung dies erfordert.
  2. Halten Sie Abhängigkeiten außerhalb von Hermes’ verwalteter Venv. Hermes-Updates können diese Venv neu aufbauen. Bevorzugen Sie pipx oder eine dedizierte persistente Venv.
  3. Passen Sie die Python-ABIs an der Bridge-Grenze an. Eine pipx-Umgebung verwendet möglicherweise ein neueres Python als Hermes. Das Hinzufügen ihrer site-packages zu Hermes’ sys.path ist unsicher, wenn native Räder beteiligt sind. Verwenden Sie eine dedizierte Venv, die mit Hermes’ Python erstellt wurde, wenn ein Wrapper Importe innerhalb des Prozesses ausführt.
  4. Verwenden Sie die Hermes-CLI für die Konfiguration. Bearbeiten Sie config.yaml niemals von Hand; wenden Sie Einstellungen mit hermes config set an.
  5. Deaktivieren Sie das Shared-Memory-Toolset nicht. Wenn Sie den Legacy-Dateispeicher ersetzen, deaktivieren Sie nur die für den Anbieter dokumentierten integrierten Datei-/Profil-Flags. Eine pauschale hermes tools disable memory kann auch Anbieter-Tools verstecken.
  6. Beachten Sie das Prompt-Caching. Änderungen an Anbietern/Tools gelten für neu initialisierte Sitzungen. Ändern Sie nicht den System-Prompt oder das Tool-Schema eines laufenden Gesprächs; starten Sie das Gateway neu und stellen Sie klar, dass eine bereits laufende TUI-Sitzung ersetzt werden muss.

Installations-Workflow

1. Prüfen Sie vor Zustandsänderungen

Dokumentieren Sie:

  • hermes --version und Hermes’ Python-Version/-Pfad
  • Paketversionen des Anbieters und Installationsumgebungen
  • Installations-/Statusausgabe des Anbieters
  • hermes plugins list --plain --no-bundled
  • hermes config get memory.provider
  • hermes memory status
  • Gateway-Status

Leiten Sie [all] oder gleichwertige Extras nicht aus der Basispaketversion ab. Importieren oder überprüfen Sie jede von der Dokumentation des Anbieters genannte Fähigkeitsabhängigkeit.

2. Wählen Sie eine Isolationstopologie

  • Verwenden Sie pipx, wenn der Anbieter prozessextern kommuniziert oder Hermes einen sicheren Paket-Einstiegspunkt findet.
  • Verwenden Sie eine dedizierte Venv, die aus Hermes’ Python erstellt wurde, wenn Hermes Anbieter-Code prozessintern importiert und das Paket native Erweiterungen enthält.
  • Behandeln Sie importlib.util.find_spec() niemals als Kompatibilitätsnachweis. Es findet Module, ohne nativen Code zu laden. Führen Sie echte Importe unter dem Interpreter durch, der den Anbieter ausführen wird.

3. Installieren Sie Anbieter und Bridge

Installieren Sie das vollständig angeforderte Feature-Profil und seinen Hermes-Wrapper. Wenn der Wrapper einen Installations-/Statusbefehl mitliefert, verwenden Sie ihn, um die persistente Plugin-Bridge unter $HERMES_HOME/plugins/ zu erstellen und deren Import zu überprüfen.

Aktivieren Sie Benutzer-Plugins explizit, wenn Hermes sie als Opt-in aufführt:

hermes plugins enable <manifest-name>

Die Anbieterauswahl und die allgemeine Plugin-Aktivierung können separate Mechanismen sein. Überprüfen Sie beide.

4. Konfigurieren Sie ohne Duplikate

Setzen Sie den externen Anbieter und, falls von der Anbieterdokumentation angewiesen, deaktivieren Sie den Legacy-Dateispeicher unter Beibehaltung des Memory-Toolsets:

hermes config set memory.provider <provider>
hermes config set memory.memory_enabled false
hermes config set memory.user_profile_enabled false

Verwenden Sie die aktuellen dokumentierten Schlüssel des Anbieters, anstatt davon auszugehen, dass diese universell sind.

5. Neustart und Überprüfung

Starten Sie das Gateway erst neu, nachdem Installation, Aktivierung und Konfiguration abgeschlossen sind. Überprüfen Sie dann:

  • Gateway ist aktiv.
  • Plugin-Bridge/Status zeigt installiert und importierbar an.
  • Allgemeine Plugin-Liste zeigt aktiviert an, wenn Hooks/Tools davon abhängen.
  • hermes memory status zeigt den ausgewählten Anbieter als installiert, verfügbar und aktiv an.
  • Anbieterdiagnosen enthalten keine tatsächlichen Fehler-/Fehlschlagsaufzeichnungen. Fehlinterpretieren Sie keine Zähler, Messungen, übersprungene Prüfungen oder nicht gesetzte optionale Überschreibungen als Fehler.

6. Testen Sie den Hermes-Agent-Pfad

Ein eigenständiger SDK-Smoke-Test ist notwendig, aber nicht ausreichend. Laden Sie den Anbieter über Hermes’ eigenen Memory-Provider-Loader oder starten Sie einen neuen Hermes-Agenten und überprüfen Sie:

  1. Erstellung und Initialisierung des Anbieters;
  2. Der System-Prompt-Block des Anbieters ist aktiv;
  3. Die Tool-Schemas des Anbieters werden bereitgestellt;
  4. Schreiben Sie einen eindeutig getaggten Testspeicher;
  5. Rufen Sie genau diesen Tag ab;
  6. Löschen Sie den Testspeicher;
  7. Bestätigen Sie, dass die Anbieter-DB/der Pfad der beabsichtigte Hermes-Speicher ist.

Verwenden Sie Assertions und lassen Sie den Überprüfungsbefehl fehlschlagen, wenn ein Schritt fehlschlägt. Melden Sie exakte beobachtete Versionen/Status, keine plausiblen Erwartungen.

Häufige Fallstricke

  • Getrennte pipx-Venvs sind nicht „nebenher“ für In-Prozess-Importe. Kern und Wrapper können jeweils allein funktionieren, während Hermes beide nicht sicher importieren kann.
  • Plugin entdeckt bedeutet nicht Plugin aktiviert. Die Anbietererkennung kann erfolgreich sein, während die Hook-/Tool-Registrierung ein Opt-in bleibt.
  • Fehlender CLI-Befehl beweist keinen Anbieterfehler. Hermes kann den Anbieter laden, während ein Installationsprogramm die für argparse-Erkennung verwendete Schwester cli.py ausgelassen hat. Diagnostizieren Sie Anbieter- und CLI-Pfade unabhängig voneinander und reparieren Sie dann nur mit einer getesteten Bridge.
  • Gateway-Neustart rüstet die aktuelle Konversation nicht nach. Neue Gateway- und CLI-Sitzungen verwenden den Anbieter; ein alter TUI-Prozess behält seine eingefrorene Prompt-/Tool-Oberfläche.
  • Ein erfolgreicher Installationsbefehl ist nicht der Abschluss. Erfordern Sie Rücklesekonfiguration, aktiven Anbieterstatus und einen echten Schreib-/Abruf-/Bereinigungszyklus.

Anbieter-Referenzen

  • Mnemosyne + Hermes-Integration, Python-ABI-Handhabung, CLI-Bridge und deterministischer Smoke-Test: references/mnemosyne-hermes.md

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

Verwandte Skills