
nah v1.2.0
eine Schutzvorrichtung, die katastrophale Agentenaktionen blockiert
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. |