cleankoda logo

Sandbox Konfiguration

cleankoda legt höchsten Wert auf Sicherheit und Nachvollziehbarkeit. Durch das integrierte Sandboxing werden potenziell destruktive Shell-Befehle, Testläufe oder Build-Prozesse nicht unkontrolliert auf Ihrem Host-System ausgeführt, sondern isoliert in einem dedizierten Docker-Container abgekapselt.

Isolations- und Sicherheitsmodell

Wird eine Sandbox aktiviert, gelten strenge Schutzmechanismen:

  • Isolierte Befehlsausführung: Sämtliche Bash-Befehle des Coding-Agents laufen ausschließlich innerhalb des Docker-Containers der Sandbox.

  • Dateisystem-Bindung: Das aktuelle Projektverzeichnis wird in den Container gemountet.

  • Kein Zugriff auf das Host-System: Dateioperationen wie Read, Write und ListDir sind strikt auf das aktuelle Projektverzeichnis begrenzt. Der Agent hat keinerlei Zugriff auf übergeordnete Ordner, Ihr Benutzerverzeichnis oder andere sensible Bereiche Ihres Computers.

Sandbox steuern (/sandbox)

Die Verwaltung erfolgt direkt über das Terminal per Slash-Befehl:

/sandbox

Dieser Befehl öffnet einen Auswahldialog, in dem Sie zwischen den vorkonfigurierten Umgebungen wählen können:

  • Python + uv: Optimiert für moderne Python-Projekte inklusive schnellem Tool- und Dependency-Management via uv.

  • Java + Maven: Ausgelegt für Java-Anwendungen mit Maven-Builds und Standard-JDK-Umgebungen.

  • Node.js: Bereitgestellt für JavaScript- und TypeScript-Entwicklungen mit npm, yarn oder pnpm.

Sandbox deaktivieren

Möchten Sie Befehle direkt auf Ihrem Entwicklungsrechner ausführen lassen, können Sie die Sandbox jederzeit abschalten:

  • Per Direktbefehl:
/sandbox off
  • Oder über den Auswahldialog /sandbox durch Auswahl der Option host.

    Hinweis: Im Host-Modus laufen Befehle direkt in Ihrer lokalen Shell ohne Docker-Isolation.

Persistenz in der config.json

Ihre Auswahl wird automatisch in der globalen Konfigurationsdatei gespeichert:

~/.config/cleankoda/config.json

Beispielhafter Aufbau:

{
  "provider": "anthropic",
  "model": "claude-3-7-sonnet-20250219",
  "sandbox": "python-uv"
}

Beim nächsten Start von cleankoda im Projektverzeichnis wird die gewählte Sandbox automatisch wiederhergestellt und initialisiert.