Pack the reachable YAML tree (and linked script files) into a ZIP.
```bash
jan use /path/to/dotfiles/jan
jan bundle -o ~/scripts-jan.zip
jan bundle --dry-run
```
- ---
Validates that every transitive `include:` target canonicalizes beneath the preferred directory. **Fails** if the tree contains remote includes — vendor YAML locally first.
Install with `scripts/jan-install.sh` (does **not** run `jan use`). Full workflow: [Portable trees](../PORTABLE_SCRIPTS.md).