
nah v1.4.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, die es als Katastrophen beweisen kann, und genehmigt niemals etwas: alles andere geht an die normalen Berechtigungen deiner Laufzeitumgebung.
nah ist nur eine einzige Rust-Binärdatei: 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 aktiviert, die acht Katastrophenklassen abdecken: Ausführungs-Hijacks, Secret-Diebstahl, Dateisystem-Zerstörung, Git-Katastrophen, Infrastruktur-, Speicher- und Backup-Abbau, Netzwerkzugriff auf Lookalike-Hosts, Paketregistry-Operationen und Host-Strom- und Dienst-Stopp-Aktionen.
| Wächter | Blockiert |
|---|---|
exec-remote | Ausführung einer Nutzlast, die sichtbar aus dem Netzwerk bezogen wurde. |
exec-decoded | Ausführung, die aus einer sichtbaren Decodierungsstufe erreicht wurde. |
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 | Lesen von .env-Dateien und sensiblen Basisnamen, einschließlich Inhalten aus der Git-Historie, sowie direkte Ausgabe katalogisierter Credential-Umgebungsvariablen. |
secrets-credentials | Lesen oder Schreiben von Pfaden zu privaten Schlüsseln und Credential-Speichern, einschließlich Inhaltslesevorgängen aus der Git-Historie; Löschen oder Verschieben privater Schlüssel; Metadaten- oder Wertlesevorgänge des macOS-Schlüsselbunds. |
secrets-exfil | Ein sichtbarer Fluss von einer sensiblen Quelle zu einer Netzwerkstufe. |
secrets-store-delete | Verbleibende geprüfte Secret-Store-Löschung mit wiederherstellbarer oder kontextabhängiger Semantik. Standardmäßig deaktiviert. |
secrets-store-destroy | Nachgewiesene dauerhafte Secret-Store-Zerstörung: Vault-Version-/Metadaten-/Engine-Entfernung, AWS-Force- und SSM-Löschung, Google-Gesamt-Secret-Löschung, Azure-Purge, Doppler-Projekt-/Konfigurationslöschung und 1Password-Tresor-Löschung. |
secrets-store-read | Geprüfte Wertlesevorgänge über gängige Secret-Manager-CLIs. |
fs-system-tree | Löschung, nachgewiesene Root-Eintrag-Verschiebung, 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 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-Berechtigung gewähren. Standardmäßig deaktiviert. |
fs-project-root | Konkrete projektbezogene rekursive Löschung, bekannte rekursive Berechtigungsänderungen oder Überschreiben jeder Datei, wobei das exakte Projekt-Root oder dessen exakte *-, .*- oder {*,.*}-Root-weite Muster ausgewählt wird. find -delete ohne expliziten Startpfad hat kein modelliertes Ziel. |
fs-raw-device | Sichtbare Schreibvorgänge auf und Ganzgeräte-Zerstörung von Rohspeichergeräten sowie der sysrq-Trigger. |
fs-volume-destroy | Definite Zerstörung logischer Volumes, Storage-Pools und Live-ZFS-Datasets. |
fs-forkbomb | Strukturell erkannte Shell-Fork-Bomb-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 Benutzer-Shell-Profilpfaden. Standardmäßig deaktiviert. |
fs-startup-management | Geprüfte persistente systemctl-, launchctl- und crontab-Verwaltungsbefehle. Standardmäßig deaktiviert. |
fs-startup-persistence | Änderungen an geprüften Dienst-, Zeitplan-, Login-, Autostart- und Loader-Startpfaden. |
git-clean-force | Ein effektives 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-Historien-Umschreibungen, einschließlich Rebases, Filtering, Recovery-Ablauf, aggressiver oder prunender Garbage Collection und geleaster Force-Pushes, einschließlich expliziter statischer Refspecs, die auf main oder master abzielen. Standardmäßig deaktiviert. |
git-rewrite-force | Historien-Umschreibung, die explizit Sicherheits- oder Backup-Prüfungen umgeht. |
git-metadata | Destruktive Schreibvorgänge oder Löschung, die dauerhafte Git-Historien-Metadaten auswählen. |
git-path-discard | Definite Überschreibungen benannter Pfade durch Checkout, Restore und gleichpfadiges git show. Standardmäßig deaktiviert. |
git-protected-push | Pushes, deren explizite statische Refspec auf main oder master abzielt. Bare Pushes bleiben außerhalb dieses Wächters. Standardmäßig deaktiviert. |
git-recovery-destroy | Leeren der vollständigen Stash-Sammlung oder sofortige repository-weite Zerstörung der Git-Recovery-Historie. |
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 GitHub- und GitLab-Gesamtrepository-Löschung über deren CLIs und REST-Routen. |
git-remote-resource-delete | Statisch adressierte GitHub- und GitLab-Hosted-Resource-Löschung über geprüfte CLI-Befehle und REST-Routen. Standardmäßig deaktiviert. |
git-worktree-discard | Projektweiter Checkout oder Restore, nachgewiesene erzwungene Branch-Änderungen und erzwungene Worktree-Entfernung oder Submodul-Deinitialisierung. |
db-destroy | Droppen, Truncaten, Flushen, 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 Laufzeitstatus zurücksetzen. |
infra-container-volume-delete | Breite Bereinigung ungenutzter Volumes über geprüfte Docker- und Podman-Prune-Befehle sowie Compose-down -v/rm -v-Volume-Entfernung. Standardmäßig deaktiviert. |
infra-iac-destroy | Vollständig sichtbare Terraform-, OpenTofu- und Pulumi-Gesamt-Stack-Zerstörung sowie geprüfte Löschung bereitgestellter Cloud- und Hosted-Platform-Ressourcen über aws-, gcloud-, az-, Railway-, Modal-, Kamal-, Wrangler-, Fastly-, Supabase- und Managed-Database-CLIs. Standardmäßig deaktiviert. |