
nah v0.11.0
Sie sollten Ihre Agenten in einer Sandbox ausführen. Dies ist für den Fall, dass Sie es nicht tun.
teure Fehler enden hier
ein Wächter, der katastrophale Agentenaktionen blockiert
nahguard.ai • was es blockiert • wie es sich vergleicht • wie es entscheidet • installieren • erweitern • Bedrohungsmodell
claude code · codex · cursor · pi · + 11 weitere
nah ist ein Wächter, der im Hook-Pfad deines Coding-Agenten sitzt und Tool-Aufrufe liest, bevor sie ausgeführt werden. Es blockiert die Aufrufe, deren Katastrophe es beweisen kann, und genehmigt niemals etwas: alles andere geht an die normalen Berechtigungen deiner Laufzeitumgebung.
nah ist nur eine einzige Rust-Binary: ein Urteil ist deterministisch und benötigt kein LLM. Erweiterungen sind einfach Programme. Verweise deinen Agenten auf nahs Dokumentation und bitte ihn, einen benutzerdefinierten nah-Wächter zu bauen.
Es erkennt eine Katastrophe, wenn es sie sieht.
48 Wächter, 30 standardmäßig aktiv, die acht Katastrophenklassen abdecken: Ausführungs-Hijacks, Diebstahl von Geheimnissen, Zerstörung des Dateisystems, Git-Katastrophen, Abbau von Infrastruktur, Speicher und Backups, Netzwerkzugriff auf Lookalike-Hosts, Operationen auf Paket-Registries und Aktionen zum Herunterfahren und Stoppen von Diensten des Hosts.
| Guard | Blockiert |
|---|---|
exec-remote | Ausführung einer Payload, die sichtbar aus dem Netzwerk bezogen wurde. |
exec-decoded | Ausführung, die von einer sichtbaren Decode-Stufe aus erreicht wird. |
exec-obfuscated | Kodierte, musterselektierte oder unaufgelöste Ausführung sowie versteckte Zeichen in Befehlen. |
exec-network-shell | Shells, die an eine Netzwerkverbindung angehängt sind, einschließlich netcat, socat und Shell-Umleitung. |
secrets-env | Lesezugriffe auf .env-Dateien und sensible Basisnamen, einschließlich Inhalten aus der Git-Historie, sowie direkte Ausgabe katalogisierter Umgebungsvariablen mit Anmeldedaten. |
secrets-credentials | Lese- oder Schreibzugriffe auf Pfade von Private Keys und Credential Stores, einschließlich Inhaltslesevorgängen aus der Git-Historie; Löschen oder Verschieben von Private Keys; Metadaten- oder Wertlesevorgänge des macOS-Schlüsselbunds. |
secrets-exfil | Ein sichtbarer Datenfluss von einer sensiblen Quelle zu einer Netzwerkstufe. |
secrets-store-delete | Verbleibendes geprüftes Löschen von Secret Stores mit wiederherstellbarer oder kontextabhängiger Semantik. Standardmäßig deaktiviert. |
secrets-store-destroy | Nachgewiesene dauerhafte Zerstörung von Secret Stores: Entfernen von Vault-Versionen/Metadaten/Engines, AWS-Force- und SSM-Löschung, vollständige Google-Secret-Löschung, Azure-Purge, Löschung von Doppler-Projekten/Konfigurationen und Löschung von 1Password-Tresoren. |
secrets-store-read | Geprüfte Wertlesevorgänge über gängige Secret-Manager-CLIs. |
fs-system-tree | Löschung, nachgewiesene Verschiebung von Root-Einträgen, rekursive Berechtigungsänderungen oder Überschreiben jeder Datei, wobei das Dateisystem-Root oder ein Systembaum ausgewählt wird. |
fs-home | Löschung, rekursive Berechtigungsänderungen oder Überschreiben jeder Datei, wobei das Home-Root oder ein persönlicher Ordner wie ~/Documents ausgewählt wird. |
fs-outside-workspace-delete | Rekursive Löschung außerhalb des aktiven Projekts, außer unter geprüften temporären Roots. Standardmäßig deaktiviert. |
fs-permission-weaken | chmod-Modi, die nachweislich World-Write- oder setuid/setgid-Berechtigungen vergeben. Standardmäßig deaktiviert. |
fs-project-root | Konkrete projektbezogene rekursive Löschung, bekannte rekursive Berechtigungsänderungen, die den Eigentümer aussperren können, oder Überschreiben jeder Datei, wobei das exakte Projekt-Root oder dessen exakte *-, .*- oder {*,.*}-Muster für das gesamte Root ausgewählt wird. find -delete ohne expliziten Startpfad hat kein modelliertes Ziel. |
fs-raw-device | Sichtbare Schreibzugriffe auf und vollständige Gerätezerstörung von Rohspeichergeräten sowie der sysrq-Trigger. |
fs-volume-destroy | Endgültige Zerstörung von logischen Volumes, Storage Pools und Live-ZFS-Datasets. |
fs-forkbomb | Strukturell erkannte Shell-Fork-Bomben-Muster. |
fs-auth-identity | Änderung oder Löschung geprüfter Host-Authentifizierungs-, Identitäts- und Privilegienrichtlinien-Dateien, einschließlich rekursiver Löschung ihrer übergeordneten Verzeichnisse. |
fs-shell-profile | Änderungen an geprüften Shell-Profilpfaden von Benutzern. Standardmäßig deaktiviert. |
fs-startup-management | Geprüfte persistente systemctl-, launchctl- und crontab-Verwaltungsbefehle. Standardmäßig deaktiviert. |
fs-startup-persistence | Änderungen an geprüften Startpfaden für Dienste, Zeitpläne, Anmeldung, Autostart und Loader. |
git-clean-force | Ein wirksames erzwungenes Git-Clean, das das Projekt-Root auswählt. |
git-force-push | Git-Force-Pushes ohne Lease-Schutz und geleaste Force-Pushes, die explizit auf main oder master abzielen. |
git-hard-reset | Git-Hard-Resets. |
git-history-rewrite | Ausgewählte nicht erzwungene Git-Historienumschreibungen, einschließlich Rebase, Filtering, Ablauf der Wiederherstellung, aggressives oder prunendes Garbage Collection und geleaste Force-Pushes, einschließlich expliziter statischer Refspecs, die auf main oder master abzielen. Standardmäßig deaktiviert. |
git-rewrite-force | Historienumschreibung, die explizit Sicherheits- oder Backup-Prüfungen umgeht. |
git-metadata | Destruktive Schreibzugriffe oder Löschung, die dauerhafte Git-Historienmetadaten auswählen. |
git-path-discard | Endgültiges Verwerfen benannter Pfade durch Checkout, Restore und Überschreiben per git show auf demselben Pfad. Standardmäßig deaktiviert. |
git-protected-push | Pushes, deren explizite statische Refspec auf main oder master abzielt. Bare Pushes bleiben außerhalb dieses Guards. Standardmäßig deaktiviert. |
git-recovery-destroy | Leeren der gesamten Stash-Sammlung oder sofortige repositoryweite Zerstörung der Git-Wiederherstellungsverlaufs. |
git-ref-delete | Geprüfte lokale und entfernte Ref-, Stash-Eintrag-, Worktree- und Submodul-Worktree-Löschung. Standardmäßig deaktiviert. |
git-remote-repo-delete | Exakte Löschung ganzer Repositories bei GitHub, GitLab und Azure DevOps über deren CLIs und REST-Routen. |
git-remote-resource-delete | Statisch gezielte Löschung gehosteter Ressourcen bei GitHub, GitLab und Azure DevOps über geprüfte CLI-Befehle und REST-Routen. Standardmäßig deaktiviert. |
git-worktree-discard | Projektweites Auschecken oder Wiederherstellen, nachgewiesene erzwungene Branch-Änderungen sowie erzwungenes Entfernen von Worktrees oder Deinitialisierung von Submodulen. |
db-destroy | Löschen, Truncaten, Leeren, Zurücksetzen oder Überschreiben von Live-Datenbankdaten sowie Löschen verwalteter Datenbanken. Standardmäßig deaktiviert. |
infra-container-reset | Podman-Befehle, die den vollständigen lokalen oder ausgewählten Laufzeitzustand zurücksetzen. |
infra-container-volume-delete | Breite Bereinigung ungenutzter Volumes über geprüfte Docker- und Podman-Pruning-Befehle sowie Volume-Entfernung durch Compose down -v/rm -v. Standardmäßig deaktiviert. |