Corral - Kill every command your agent starts
Show HN: Corral – Kill every command your agent starts
Corral — утилита для Linux, которая запускает команду с лимитом времени и гарантирует, что после её завершения не останется ни одного живого процесса. Она решает проблемы, с которыми сталкиваются AI-агенты и CI: демоны, переживающие сигналы, зависшие пайпы и процессы, игнорирующие SIGTERM. Corral контролирует всё дерево процессов через cgroup v2 или как subreaper, проверяя остановку перед выходом. Установка проста: бинарник для x86-64 или сборка из исходников. Использование: corral --wall 30s -- ./build.sh. Если не удаётся доказать остановку, возвращается код 120.
Corral контролирует всё дерево процессов, а не только своего прямого потомка. Когда corral возвращает управление, ни один процесс, запущенный командой, не остаётся живым.
- Retr0id
Тривиальный обход, который я могу представить, — это запуск нового процесса через `ssh localhost foo` — новый процесс форкается от sshd, а не от клиента. Это достаточно просто, чтобы LLM могла додуматься до этого сама, если почувствует, что вы встаёте у неё на пути.
Это широкий класс обходов, применимый практически к любой ситуации вида «долго работающему демону можно дать команду породить нового потомка».
- pmoriarty
Почему не команда timeout[1]?
[1] - https://www.man7.org/linux/man-pages/man1/timeout.1.html
- ethanj8011
slop core