Hi everyone, I built a lightweight Linux executio...
# general
h
Hi everyone, I built a lightweight Linux execution guard for AI coding agents. It wraps the command execution path, allows expected developer tools, blocks disguised or off-policy executables, and produces an audit trail that humans can review. Repo: https://github.com/blazingRadar/agent-exec-guard-lab Live demo available on request This is a small slice of a broader lab I've been running. If anyone finds it interesting, I can clean up more of it to share. It would be cool if someone finds it useful, or wants to poke holes in it. Cheers, happy Friday from Pacific Time, Nick
l
Interesting, thanks for sharing!
h
Thanks @high-monkey-31405! Would this work with https://github.com/rtk-ai/rtk?
I get they're trying to solve two different problems (rtk compresses the tool output), but it can also be used to prevent unauthorised agent execution patterns.
h
Thanks for sharing this. I am new to the space and hadn't seen rtk yet. I need to spend some time digging into it. From a quick look, I think we are at different layers. userspace wrapper vs seccomp/landlock supervisor that blocks execve. e.g. an agent with shell access in a shared prod env. rtk has 40k stars... I am going to enjoy reading up on this. Thanks a ton.
@helpful-table-11847 I think the statement above still holds, but would love any additional thoughts or holes poked in it. The guard is seccomp/Landlock with OpenHands plumbed in. I'm moving my pipelines over to OpenHands now to get to know the platform properly. The demo blocks the renamed-binary case (rm copied to ./python3) which is what got me into this layer. Would love to know what anyone thinks. I hope you all had a great weekend.
h
@high-monkey-31405 I think that static regexp blocks one a great first-pass way of dealing with commands you don't want to run! I would also think about: 1. Auto-classification (similar to Claude Code where a discretionary 'LLM-as-a-judge' decision is made per call based on operational rules) 2. Custom MCP tooling so agents have all the tools they need; that way you only expose the tools an agent can use (particularly useful where you're using an auto classifier) 3. Sandboxing (
SANDBOX_VOLUMES
) in OpenHands itself; any commands are self-contained within the sandbox. I haven't attempted to implement any of them yet with OpenHands (I've moved to durable temporal workflows that run CC), but OpenHands could be my harness as in the above topology too (https://docs.temporal.io/self-hosted-guide/deployment).
h
Thanks, Russ. This is all great information. I need to spend some time reading through everything to better understand it all. I hope you have a great rest of the week!