Der häufigste Grund, warum Hermes Agent lokale Dateien in Docker nicht lesen kann, ist nicht, dass das Modell nicht funktioniert, sondern dass das Hostverzeichnis nicht richtig in den Container eingebunden ist oder dass die Datei-/Terminalfunktion im aktuellen Werkzeugset des Hermes Agents nicht aktiviert ist. Container sehen natürlich nicht alle Dateien des Host-Rechners, es sei denn, man weist das Verzeichnis explizit darauf zu.
Lassen Sie uns zuerst drei Dinge überprüfen
- Docker-Mount: Stelle sicher, dass es eine Mapping wie
-v /host/path:/workspacein Compose oderdocker rungibt. - Weg im Container: Der Hermes-Agent greift auf die
/workspacezu, nicht auf die/Users/you/projectdes Wirts. - Werkzeugaktiviert: Überprüfen Sie die
hermes tools- oder Plattform-Tool-Konfiguration, um sicherzustellen, dass Datei- oder Terminal-bezogene Funktionen nicht deaktiviert sind.
Warum kann es lokal gelesen werden, aber Docker nicht?
Local Backend ist ein Befehl auf deinem Host, der Dateien natürlich lesen kann, für die der aktuelle Benutzer Berechtigungen hat; Das Docker-Backend wird in einer containerisolierten Umgebung ausgeführt, und nur die Dateien und Mount-Verzeichnisse im Image sind sichtbar. Das Sicherheitsdesign von Hermes Agent fördert diese Isolation von Natur aus, allerdings auf Kosten der expliziten Beschreibung, welche Verzeichnisse sichtbar sind.
Empfohlene Befehle zur Fehlerbehebung
Zuerst lassen Sie den Hermes-Agenten pwd, ls -la /workspace und whoami im Container durchführen, um den Pfad und die Berechtigungen zu bestätigen. Wenn das Verzeichnis existiert, aber nicht geschrieben werden kann, überprüfen Sie die Host-Berechtigungen, SELinux/AppArmor und Docker Desktop File Sharing-Einstellungen. Wenn das Verzeichnis überhaupt nicht existiert, bedeutet das, dass das Mount nicht im Container ist.
Hänge nicht das gesamte Home- oder Root-Verzeichnis darin, um Ärger zu sparen. Es ist besser, nur das aktuelle Projektverzeichnis aufzuhängen und das Nur-Lese-Mounting zu verwenden, um Daten zu verarbeiten, die nicht geschrieben werden müssen.
Offizielle Open-Source-Adresse: https://github.com/NousResearch/hermes-agent; Offizieller Dokumenteneintrag: https://hermes-agent.nousresearch.com/.