Corral - Kill every process your agent starts

Show HN: Corral – Kill every command your agent starts

Corral ist ein Linux-Tool, das einen Befehl mit Zeitlimit ausführt und garantiert, dass nach dem Ende des Befehls kein von ihm gestarteter Prozess mehr läuft. Es kontrolliert den gesamten Prozessbaum – entweder über cgroup v2 (enforced mode) oder als Child Subreaper (fallback mode). Typische Runner scheitern bei Daemons, die sich abspalten, bei Hintergrundprozessen, die stdout offen halten, oder bei Prozessen, die SIGTERM ignorieren. Corral löst diese Probleme, indem es den Lauf beendet, sobald der Befehl endet, nicht wenn die Pipes schließen. Es bietet Optionen für Zeit-, Speicher- und Ausgabelimits sowie JSON-Audit-Logs. Ideal für AI-Coding-Agents und CI-Jobs, die fremde Shell-Befehle ausführen.

Corral steuert den gesamten Prozessbaum, nicht nur das direkte Kindprozess. Im enforced mode läuft der Befehl in einer eigenen cgroup v2-Gruppe, und ein einziger Schreibvorgang auf cgroup.kill stoppt jeden Prozess in der Gruppe.
  1. Retr0id

    Ein trivialer Bypass, den ich mir vorstellen kann, ist, einen neuen Prozess über `ssh localhost foo` zu starten – der neue Prozess forkt von sshd, nicht vom Client. Das ist einfach genug, dass ein LLM von selbst darauf kommen könnte, wenn es das Gefühl hat, dass du ihm im Weg stehst.

    Es ist eine breite Klasse von Bypasses, die auf so ziemlich jede Situation anwendbar ist, in der "ein lang laufender Daemon angewiesen werden kann, ein neues Kind zu spawnen".

  2. pmoriarty

    Warum nicht der timeout[1]-Befehl?

    [1] - https://www.man7.org/linux/man-pages/man1/timeout.1.html

  3. ethanj8011

    slop core

Mehr von diesem Tag

2026-09-30