Measuring Go Landlock Adoption 2026
If you maintain a software library, it is easy now to crawl code repositories for your users in Open Source and get statistics on who is using it.
šš» Read the full statistics with interactive breakdowns and visualizations š”
Landlock users in Go, by library
These are Landlock-using programs in Go, broken down by the library that they are using to access it:
First of all, I had a hunch that I saw more vibe-coded sandboxing projects in 2026, but had not expected it to be that pronounced. o_O
Some insights:
A. Most programs use go-landlock, which is the official Landlock library for Go that I maintain. š©µ
B. A growing number of programs (34) are using raw system calls. Based on spot checks, it seems that these are mostly vibe-coded, and I suspect that their authors may be unaware.
Not using Go-Landlock yet?
- Onboard with the onboarding instructions. (Agents are good at following these instructions.)
- If the official Go-Landlock library does not fit your purposes, please reach out, here on in the bugtracker, so we can find out what is missing.
A known valid problem with Go-Landlock is that it’s not possible to start a landlocked subprocess without also landlocking the parent. This is a limitation in Go which we are addressing (but it will require the upcoming Go 1.28 and only be fixed in early 2027).
C. The rest is the long tail:
- A relatively constant number of Hashicorp-adjacent programs use their own library for it.
- Some individual projects have other reasons, usually because they are implemented in a mix of programming languages and use the official Rust Landlock library (e.g., Nono and Sandlock).
Landlock feature sets in use
We also have great statistics now about the Landlock ABI level (sandboxing feature set) at which users are using the Go-Landlock library:
(When reading these graphs, it must be taken into account that new ABI versions were not introduced at an even pace, but it’s anyway a good indicator where there is opportunity for improvement.)
In an ideal world, everyone would always upgrade to use the highest available Landlock ABI version, but it’s of course clear that this is not always possible.
How to use more Landlock features
To upgrade your dependency on Go-Landlock, use a prompt like this (or equivalent):
Upgrade the dependency on go-landlock and use the upgrading instructions that ship with the library.The upgrading instructions aim to orient agents and humans alike.
The agent should then attempt to use Landlock at a higher ABI level (with stronger constraints on the sandboxed program). It will read the documented constraints and documented common pitfalls and will try to assist you in ensuring that the Landlock policy stays compatible with your application logic.