Agents need a toolchain on demand, deterministic output, and nothing left behind. vroot is a single script that does exactly that — no daemon waiting for you, no build queue, no stdin to negotiate.
| Resource | What it is |
|---|---|
/llms.txt | compact index and quick start for language models |
/llms-full.txt | everything in one plain-text file — no HTML, no JavaScript |
/flags.json | all 42 environments as JSON: flag, aliases, base, description |
/AGENTS.md | short pointer served verbatim at the site root |
| docs/AGENTS.md | the canonical contract: rules, JSON shapes, parallelism, forks |
# build (or reuse) an env image and get its path
$ vroot build -python --json
{"env":"/home/u/.local/share/vroot/envs/python-84d0423ed3.sqfs","cached":false}
# run one command; vroot forwards its exit status
$ vroot -python -- python3 -c 'import sys; sys.exit(42)'
$ echo $?
42
# checkpoint a named sandbox into one portable file, then fork it
$ vroot -python work
root@work:~# pip install requests
root@work:~# exit
$ vroot save work out.vroot
$ vroot out.vroot -- python3 -c 'import requests; print(requests.__version__)'
err … line with exit 1.| Command | Output |
|---|---|
vroot build FLAGS --json | {"env":"…","cached":bool} |
vroot ls --json | [{"name","env","image","bytes","age_minutes"}] |
vroot envs --json | {"images":[{"file","bytes"}],"bases":[{"name","bytes"}]} |
vroot info NAME --json | {"name","env","image","created","bytes","changed_files","path"} |
<flags>-<10-hex>.sqfs. The same recipe set always
resolves to the same path, so it can be cached by name.$VROOT_HOME.save produces one immutable
file; copy it and boot each copy as an independent sandbox.-v; -offline removes the network too.vroot build … --json and parse stdout as JSON.-- CMD for one-shot work and trust the exit status.save for checkpoints; boot the file to fork.vroot doctor once per host before blaming the build.-v.Full text: llms-full.txt · source: github.com/gairxx/vroot.