Sandbox
Die PRX-Sandbox bietet Prozess- und Dateisystem-Isolation fur die Werkzeugausfuhrung. Wenn ein Agent ein Werkzeug aufruft, das externe Befehle ausfuhrt, stellt die Sandbox sicher, dass der Befehl in einer eingeschrankten Umgebung lauft.
Sandbox-Backends
PRX unterstutzt mehrere Sandbox-Backends:
| Backend | Plattform | Isolationsgrad | Overhead |
|---|---|---|---|
| Docker | Linux, macOS | Vollstandiger Container | Hoch |
| Bubblewrap | Linux | Namespace + Seccomp | Niedrig |
| Firejail | Linux | Namespace + Seccomp | Niedrig |
| Landlock | Linux (5.13+) | Kernel-LSM | Minimal |
| None | Alle | Keine Isolation | Keine |
Konfiguration
toml
[security.sandbox]
backend = "bubblewrap"
[security.sandbox.docker]
image = "prx-sandbox:latest"
network = "none"
memory_limit = "256m"
cpu_limit = "1.0"
[security.sandbox.bubblewrap]
allow_network = false
writable_paths = ["/tmp"]
readonly_paths = ["/usr", "/lib"]Funktionsweise
- Agent fordert einen Werkzeugaufruf an (z.B. Shell-Befehlsausfuhrung)
- Richtlinien-Engine pruft, ob der Aufruf erlaubt ist
- Sandbox umschliesst die Ausfuhrung mit dem konfigurierten Backend
- Das Werkzeug lauft mit eingeschranktem Dateisystem- und Netzwerkzugriff
- Ergebnisse werden erfasst und an den Agenten zuruckgegeben