sh, a recipe dabs ships with: a shell in a clean box
with your current directory live-mounted at /work. Run everything from your
project directory.
Screens below are verified by
tests/test_quickstart.py. Generated names
(like sh-a3f9c21d) are blanked to ________ — yours will differ. The
:done line is the test harness’s end marker, kept for fidelity.1. Boot a box
--detach boots a fresh box and leaves it up without running the recipe’s
command. Note the id it prints — that is your handle for everything else.
2. Reach in with exec
dabs exec <box> '<shell line>' runs a shell command inside the box. Your
project is at /work, mounted live:
sh uses a live mount, the box’s write is now on your disk:
3. See what dabs owns
live means the box is running right now.
4. Reap it
dabs rm never tears a box down silently. Without -y it previews what it
would take and asks — on a terminal, as an interactive dialog:
dabs: rm sh-________: kept). Pass -y to
consent up front — the form agents and scripts use: