Screens verified by
walkthroughs/test_recipes.py.The bundled five
dabs recipes --print dumps the bundled YAML in full — the best starting point
for writing your own.
Write your own
Project recipes live in./dabs.yaml; personal ones in
~/.dabs/recipes.yaml. Resolution is bundled → global → project, later
winning. This is a complete recipe:
Running one — three shapes
command argv. Against command: [sh], dabs recipe sh -c 'echo hi' runs
sh -c 'echo hi' — but dabs recipe -- echo hi runs sh echo hi, which asks
sh to open a file named echo. Read the confirmation carefully: it always
shows the exact final command.
The confirmation
Handing a box an arbitrary command always asks first, showing the recipe, its mounts, and the exact command:dabs: recipe "sh": aborted.
A typo never becomes a command
A first token that is neither-- nor a known recipe is an error, not a
command:
The default: key
A registry’s default: names the recipe that dabs build, dabs recipe
(no name), and dabs recipe -- <cmd> resolve to.