$npx -y skills add tebjan/vvvv-skills --skill vvvv-startupCovers launching vvvv gamma from the command line or programmatically -- normal startup, opening specific .vl patches, command-line arguments, package repositories, and key filesystem paths (install directory, user data, sketches, exports, packages). Use when starting vvvv, confi
| 1 | # Launching vvvv gamma |
| 2 | |
| 3 | ## Filesystem Paths |
| 4 | |
| 5 | | Location | Path | |
| 6 | |----------|------| |
| 7 | | Install directory | `C:\Program Files\vvvv\vvvv_gamma_X.Y-win-x64\` | |
| 8 | | User data (AppData) | `%LOCALAPPDATA%\vvvv\gamma\` | |
| 9 | | Documents root | `%USERPROFILE%\Documents\vvvv\gamma\` | |
| 10 | | Sketches | `%USERPROFILE%\Documents\vvvv\gamma\Sketches` | |
| 11 | | Exports | `%USERPROFILE%\Documents\vvvv\gamma\Exports` | |
| 12 | | User packages | `%LOCALAPPDATA%\vvvv\gamma\nugets` | |
| 13 | | Log file (when enabled) | `%USERPROFILE%\Documents\vvvv\gamma\vvvv.log` | |
| 14 | |
| 15 | Preview builds use `gamma-preview` instead of `gamma` in the above paths. |
| 16 | |
| 17 | ## Normal Launch |
| 18 | |
| 19 | ```shell |
| 20 | # Launch vvvv (opens with default empty patch) |
| 21 | "C:\Program Files\vvvv\vvvv_gamma_7.0-win-x64\vvvv.exe" |
| 22 | |
| 23 | # Open a specific patch |
| 24 | vvvv.exe MyProject.vl |
| 25 | |
| 26 | # Open multiple files |
| 27 | vvvv.exe --open "FileA.vl;FileB.vl" |
| 28 | ``` |
| 29 | |
| 30 | ## Package Repositories and Editable Packages |
| 31 | |
| 32 | These two arguments work together and are the most important for development: |
| 33 | |
| 34 | - **`--package-repositories`** tells vvvv where to look for packages. Provide the **parent folder** of each package (the folder containing the package directory, not the package directory itself). |
| 35 | - **`--editable-packages`** tells vvvv which packages from those repositories to load from source instead of pre-compiled cache (read-only). Glob patterns are supported. |
| 36 | |
| 37 | You must use both together when working on a package from source: |
| 38 | |
| 39 | ```shell |
| 40 | # Given this folder structure: |
| 41 | # D:\Projects\ |
| 42 | # VL.MyLib\ <-- the package |
| 43 | # VL.MyLib.vl |
| 44 | # VL.MyOtherLib\ <-- another package |
| 45 | # VL.MyOtherLib.vl |
| 46 | |
| 47 | # The parent folder "D:\Projects" is the package repository |
| 48 | vvvv.exe --package-repositories "D:\Projects" --editable-packages "VL.MyLib*" --debug |
| 49 | |
| 50 | # Multiple repositories (semi-colon separated) |
| 51 | vvvv.exe --package-repositories "D:\Projects;D:\SharedLibs" --editable-packages "VL.MyLib*;VL.SharedUtils" --debug |
| 52 | |
| 53 | # Open a specific help patch for testing |
| 54 | vvvv.exe --package-repositories "D:\Projects" --editable-packages "VL.MyLib*" -o "D:\Projects\VL.MyLib\help\HowTo Use Feature.vl" --debug |
| 55 | ``` |
| 56 | |
| 57 | Without `--package-repositories`, vvvv won't find your local package sources, and `--editable-packages` will have no effect. |
| 58 | |
| 59 | ## Common Argument Combinations |
| 60 | |
| 61 | ```shell |
| 62 | # Development: debug symbols + allow multiple instances |
| 63 | vvvv.exe MyProject.vl --debug --allowmultiple |
| 64 | |
| 65 | # Troubleshooting: skip cache, enable logging |
| 66 | vvvv.exe MyProject.vl --nocache --log |
| 67 | |
| 68 | # Minimal startup: no extensions, no backend (fast launch for patch editing) |
| 69 | vvvv.exe --noextensions --disable-backend |
| 70 | |
| 71 | # Paused on startup (runtime won't start until you press play) |
| 72 | vvvv.exe MyProject.vl --stoppedonstartup |
| 73 | |
| 74 | # Skip splash screen |
| 75 | vvvv.exe --no-splash |
| 76 | ``` |
| 77 | |
| 78 | For the complete argument reference, see [cli-reference.md](cli-reference.md). |
| 79 | |
| 80 | ## Detecting vvvv Installations |
| 81 | |
| 82 | To find vvvv programmatically: |
| 83 | |
| 84 | 1. **Windows Registry**: Enumerate `HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall` for subkeys starting with `vvvv_gamma_`. Read the `InstallLocation` value. |
| 85 | 2. **Default path**: Scan `C:\Program Files\vvvv\` for directories matching `vvvv_gamma_*`. |
| 86 | 3. **Version parsing**: Extract version from directory name format `vvvv_gamma_MAJOR.MINOR[-PREVIEW-HASH-PLATFORM]`. |
| 87 | 4. **Filtering**: Exclude `-beta`, `-alpha`, `-rc`, `-test`, `-dev`, etc. variants if not explicitly requested. |
| 88 | 5. **Selection**: Sort by major DESC, minor DESC, preview number DESC. Pick the latest and ask the user if that or another one should be used. |
| 89 | |
| 90 | The executable is at `<install-dir>\vvvv.exe`. |