⌨️ Valet commands
This page describes the commands available in Valet.
Documentation generated for the version 0.37.1138 (2026-05-12).
▶️ valet bash bootstrap
Synopsis
Bootstrap your bash session.
This command is intended to be used in your bash configuration file (e.g. ~/.bashrc) to set up your bash session with Valet features. Below is a minimalist example of your ~/.bashrc file:
#!/usr/bin/env bash
# this is a good place to set VALET_* environment variables to configure valet features.
eval "$(valet bash bootstrap)"By bootstrapping your bash session with Valet, you get access to many features described in the chapters below.
1. PATH management
You can now manage your PATH declaratively.
Valet will use the files under the ~/.config/.paths.d directory (by default) to compute your PATH variable.
Each file under ~/.config/.paths.d can contain multiple paths, one per line, and they will be added to your
PATH variable in the same order as they appear in the file.
The following rules are applied when parsing the files:
- A line starting with # is a comment.
- A path may use ~ which will be replaced by the user home directory.
- A path that does not match an existing directory will be skipped.
- A line starting with ^ is a path to add before the original path.
- Any other line is a path to add after the original path.
The files in the ~/.config/.paths.d directory are processed in alphabetical order, allowing you to control the order of the paths in your PATH variable.
The following rules are applied when listing the files to consider in the ~/.config/.paths.d directory:
- If the path file is hidden (starts with a dot), it is skipped.
- If the path file is a markdown file, it is skipped.
- If the path file contains -linux and the current os is not linux, it is skipped.
- If the path file contains -windows and the current os is not windows, it is skipped.
- If the path file contains -darwin and the current os is not macos, it is skipped.
The original path is stored in ORIGINAL_PATH, allowing you to restore it if needed.
Examples of path definition files are available here: https://github.com/jcaillon/valet/tree/dotfiles-example
2. Bashrc management
You can now split your bash configuration into multiple files under the ~/.config/.bash.d directory (by default).
This allows you to organize your bash configuration and easily enable/disable parts of it by adding/removing files in this directory.
The files in the ~/.config/.bash.d directory are sourced in alphabetical order.
The following rules are applied when listing the files to source in the ~/.config/.bash.d directory:
- If the file is hidden (starts with a dot), it is skipped.
- If the file does not have a .sh or .bash extension, it is skipped.
- If the file contains -linux and the current os is not linux, it is skipped.
- If the file contains -windows and the current os is not windows, it is skipped.
- If the file contains -darwin and the current os is not macos, it is skipped.
Additionally, a script containing -bash-init in its name will be sourced before the PATH variable is computed, allowing you to set environment variables that can be used in the path definition files.
All valet functions can be used in these scripts.
Examples of bash scripts are available here: https://github.com/jcaillon/valet/tree/dotfiles-example
3. Bash hooks for prompt and command execution
You can now define functions to be executed before the prompt is drawn and before a command is executed.
This works exactly like the precmd and preexec hooks in zsh, with the difference that due to bash limitations, the preexec functions are executed in a subshell and thus cannot modify the environment.
See: https://zsh.sourceforge.io/Doc/Release/Functions.html#Hook-Functions.
precmd_functions: array of functions to be executed before the prompt is drawn Functions can expect the following variables to be set:- GLOBAL_LAST_COMMAND_STATUS: the status of the last command executed
- GLOBAL_LAST_PIPE_STATUS: the status of the last pipeline executed
- GLOBAL_LAST_ELAPSED_MICROSECONDS: the elapsed time for the command in microseconds (will be 0 if no command was executed since the last prompt)
- GLOBAL_JOB_COUNT: the number of background jobs They can also call the function bashHooks::getCurrentCommand to get the last command executed.
preexec_functions: array of functions to be executed before the command is executed Functions are invoked with the command to execute as the first argument $1. /!\ they are executed in a subshell, so they cannot modify the environment! this can be fixed in bash 5.3 with the ${ exec} variable expansion (see implementation of the hooks).
4. Use Valet functions in your shell
You can now use valet functions directly in your shell, as if you were in a command script.
E.g.: log::info "Cool logs!".
5. Integration with bash tools
Valet also sets up integration with some popular bash tools:
- Starship: a better, fully featured prompt https://starship.rs/.
- Atuin: a better shell history manager https://atuin.sh/.
6. Incoming features
TODO: FEATURES TO IMPLEMENT:
- add builtin “z” to jump to frequently used directories
- auto source .env and .envrc files in the current directory
- Provide a good and fast default prompt if atuin is not installed
Usage
valet bash bootstrap [options]Options
--bash-scripts-directory <directory>Path to the directory containing bash scripts to source during bootstrap. This option can be set by exporting the variable VALET_BASH_SCRIPTS_DIRECTORY=’
'. --path-definition-directory <directory>Path to the directory containing path definition files to compute the PATH variable.
This option can be set by exporting the variable VALET_PATH_DEFINITION_DIRECTORY=’
'. -h, --helpDisplay the help for this command.
Examples
eval "$(valet bash bootstrap)"Source valet functions in your bash script or bash prompt. You can then can then use valet function as if you were in a command script.
▶️ valet bash links
Synopsis
This command allows you to create symbolic links declaratively, based on simple definitions written in text files.
By default, it will look for link definition files in the directory ~/.config/.links.d.
Each file under ~/.config/.links.d can contain multiple link definitions, one per line.
A valid line should have one of the following formats:
<soft_link_path> :-> <source_path>Or to create a hard link:
<hard_link_path> :h-> <source_path>The following rules are applied when parsing the files:
- A line starting with # is a comment.
- A path may use ~ which will be replaced by the user home directory.
- A path may contain variables in bash format
${VAR}or${VAR:-default}, which will be replaced by their value.
The following rules are applied when listing the files to consider in the ~/.config/.links.d directory:
- If the path file is hidden (starts with a dot), it is skipped.
- If the path file contains -linux and the current os is not linux, it is skipped.
- If the path file contains -windows and the current os is not windows, it is skipped.
- If the path file contains -darwin and the current os is not macos, it is skipped.
Examples of link definition files are available here: https://github.com/jcaillon/valet/tree/dotfiles-example
Usage
valet bash links [options]Options
--forceReplace existing targets without confirmation when creating the links (dangerous). This option can be set by exporting the variable VALET_FORCE=‘true’.
--links-definition-directory <directory>Path to the directory containing link definition files to create symbolic links. This option can be set by exporting the variable VALET_LINKS_DEFINITION_DIRECTORY=’
'. --dotfiles <directory>Path to the your dotfiles directory. All links referring to the “./” directory will be resolved relative to this directory. Will default to the current working directory.
This option can be set by exporting the variable VALET_DOTFILES=’
'. -h, --helpDisplay the help for this command.
Examples
valet bash linksCreate symbolic links as defined in the links definition directory.
▶️ valet extensions create
Synopsis
Create a new Valet extension.
Usage
valet extensions create [options] [--] <name>Options
-h, --helpDisplay the help for this command.
Arguments
nameThe name of the extension to create.
Examples
valet extensions createCreate a new Valet extension.
▶️ valet extensions init
Synopsis
Initialize/setup the current directory as a Valet extension.
This command will:
- Ask the user if they want to register the current directory as an extension by linking it in the valet extensions directory (if it’s not already the case).
- Link lib-valet and lib-valet.md in the current directory.
- If vscode is installed, copy the recommended settings and extensions for valet development in a .vscode directory in the current directory.
Usage
valet extensions init [options]Options
-h, --helpDisplay the help for this command.
Examples
valet extensions initInitialize the current directory as a Valet extension.
▶️ valet extensions install
Synopsis
Download and install an extension in the user extensions directory using GIT.
This command will download the given extension (GIT repository) and install it in the valet extensions directory.
For downloaded extensions, if a extension.setup.sh script is present in the repository root directory,
it will be executed. This gives the extension the opportunity to setup itself.
Once an extension is installed, you can use the valet extensions update command to update it.
Usage
valet extensions install [options] [--] <git-repo>Options
-n, --name <extension-name>The name to give to this extension. If a name is not provided, the name of the repository will be used. This option can be set by exporting the variable VALET_NAME=’
'. -v, --version <version>The version (git reference) to checkout for the repository to download. Usually a tag or a branch name. This option can be set by exporting the variable VALET_VERSION=’
'. --skip-setupSkip the execution of the
extension.setup.shscript even if it exists. This option can be set by exporting the variable VALET_SKIP_SETUP=‘true’.--unattendedSet to true to install without interactive confirmation. This option can be set by exporting the variable VALET_UNATTENDED=‘true’.
-h, --helpDisplay the help for this command.
Arguments
git-repoThe GIT repository of the extension to install.
For example
https://github.com/jcaillon/valet-devops-toolbox.git.If the repository is private, you can pass the URL with the username and password like this:
https://username:password@my.gitlab.private/group/project.git.
Examples
valet extensions install https://github.com/jcaillon/valet-devops-toolbox.gitDownload the latest version of the valet-devops-toolbox application and install it for Valet.
valet extensions install https://github.com/jcaillon/valet-devops-toolbox.git --name extension-1 --version main --skip-setupDownload the main reference of the jcaillon/valet-devops-toolbox repository and install it as extension-1 for Valet. Skip the execution of the
extension.setup.shscript.
▶️ valet extensions list
Synopsis
List all Valet extensions, their versions and if the setup script has been executed.
Usage
valet extensions list [options]Options
-h, --helpDisplay the help for this command.
Examples
valet extensions listList all Valet extensions.
▶️ valet extensions update
Synopsis
Update Valet extensions.
Usage
valet extensions update [options]Options
-n, --name <extension-name>The name of the extension to update. If not provided, defaults to updating all extensions. This option can be set by exporting the variable VALET_NAME=’
'. --skip-setupSkip the execution of the
extension.setup.shscripts even when they exist. This option can be set by exporting the variable VALET_SKIP_SETUP=‘true’.--unattendedSet to true to install without interactive confirmation. This option can be set by exporting the variable VALET_UNATTENDED=‘true’.
-h, --helpDisplay the help for this command.
Examples
valet extensions updateUpdate all Valet extensions.
▶️ valet self build
Synopsis
Index all the command and libraries present in the valet extensions directory and installation directory.
This command can be used to re-build the menu / help / options / arguments in case you have modified, added or removed a Valet command definition.
Please check https://jcaillon.github.io/valet/docs/new-commands/ or check the examples in showcase.d directory to learn how to create and modified your commands.
This scripts:
- Makes a list of all the eligible files in which we could find command definitions.
- For each file in this list, extract the command definitions.
- Build your commands file (in your valet extensions directory) from these definitions.
- Makes a list of all
libraries.ddirectories found in the user directory.
You can call this script directly in case calling valet self build is broken:
→ commands.d/self-build.sh
Usage
valet self build [options]Options
-d, --extensions-directory <path>Specify your valet extensions directory, in which to look for your extension commands. Defaults to the valet extensions directory. This option can be set by exporting the variable VALET_EXTENSIONS_DIRECTORY=’
'. --extra-extension-directories <path>Comma separated list of additional valet extension directories, in which to look for commands and libraries. This option can be set by exporting the variable VALET_EXTRA_EXTENSION_DIRECTORIES=’
'. -o, --output <path>Specify the directory path in which to write the command definition variable files.
This defaults to your user data folder
~/.local/share/valet. This option can be set by exporting the variable VALET_OUTPUT=’'. -O, --no-outputDo not write the command definition variables to a file.
This will just create the variables. This option can be set by exporting the variable VALET_NO_OUTPUT=‘true’.
-s, --silentBuild silently without any info logs. This option can be set by exporting the variable VALET_SILENT=‘true’.
-h, --helpDisplay the help for this command.
Examples
valet self buildBuild the valet user commands.
valet self build -d ~/my-valet-directory --silentBuild the valet user commands from the directory ~/my-valet-directory and with minimal log output.
▶️ valet self config
Synopsis
Open the configuration file of Valet with your default editor.
This allows you to set advanced options for Valet.
If the configuration file does not exist, it will be created. Each configuration variable will be commented out with a description of its purpose.
Usage
valet self config [options]Options
--no-editCreate the configuration file if it does not exist but do not open it. This option can be set by exporting the variable VALET_NO_EDIT=‘true’.
--overrideOverride of the configuration file even if it already exists. Unless the option –export-current-values is used, the existing values will be reset. This option can be set by exporting the variable VALET_OVERRIDE=‘true’.
--export-current-valuesWhen writing the configuration file, export the current values of the variables. This option can be set by exporting the variable VALET_EXPORT_CURRENT_VALUES=‘true’.
-h, --helpDisplay the help for this command.
Examples
valet self configOpen the configuration file of Valet with your default editor.
valet self config --no-edit --override --export-current-valuesCreate (or recreate) the configuration file of Valet reusing the possible current values of the variables.
▶️ valet self document
Synopsis
Generate the documentation and code snippets for all the library functions of Valet.
It will parse all the library files and generate:
- A markdown file with the documentation.
- A bash file with the prototype of each function.
- A vscode snippet file for each function.
Usage
valet self document [options]Options
-o, --output <directory path>The directory in which the documentation will be generated. Defaults to the valet extensions directory. This option can be set by exporting the variable VALET_OUTPUT=’
'. -C, --core-onlyGenerate the documentation for the core functions only. Will not generate for libraries present in the valet extensions directory. This option can be set by exporting the variable VALET_CORE_ONLY=‘true’.
-h, --helpDisplay the help for this command.
Examples
valet self documentGenerate the documentation for all the library functions of Valet and output to the default directory.
▶️ valet self release
Synopsis
Release a new version of valet.
It will:
- write the current version in the self-install script,
- commit the file,
- update the documentation,
- commit the changes,
- creates a git tag and pushes it to the remote repository,
- bump the version of valet,
- commit the new version.
Usage
valet self release [options]Options
-t, --github-release-token <token>The token necessary to create the release on GitHub and upload artifacts. This option can be set by exporting the variable VALET_GITHUB_RELEASE_TOKEN=’
'. -b, --bump-level <semver>The semver level to bump the version.
Can be either: major or minor. Defaults to minor. This option can be set by exporting the variable VALET_BUMP_LEVEL=’
'. --dry-runDo not perform the release, just show what would be done.
This option can be set by exporting the variable VALET_DRY_RUN=‘true’.
-h, --helpDisplay the help for this command.
▶️ valet self setup
Synopsis
The command run after the installation of Valet to setup the tool.
This command will do the following (with user approval for each step):
- Copy the showcase to the user extensions directory.
- Create a shim/proxy script in
~/.local/binor~/binthat points to the valet script. - Add the Valet directory to the user PATH by editing the shell startup files.
- Add the Valet directory to the windows PATH if on windows.
- Adjust the Valet configuration according to the user environment.
- If the current user is root and the option is given, make Valet available for all users. (set read permissions for all users on Valet files and directories and create a shim in /usr/local/bin).
- Let the user know what to do next.
Usage
valet self setup [options]Options
--unattendedDo not enter interactive mode for the setup (skip all actions except those explicitly specified). This option can be set by exporting the variable VALET_UNATTENDED=‘true’.
--copy-showcaseCopy the showcase to the user extensions directory. This option can be set by exporting the variable VALET_COPY_SHOWCASE=‘true’.
--create-shimCreate a shim/proxy script in
~/.local/binor~/bin(if one of them is in your PATH) that points to the valet script. This option can be set by exporting the variable VALET_CREATE_SHIM=‘true’.--add-to-pathAdd the Valet directory to the user PATH by editing the shell startup files. This option can be set by exporting the variable VALET_ADD_TO_PATH=‘true’.
--setup-for-windowsAdd the Valet directory to the windows PATH if on windows and set the VALET_WIN_BASH and VALET_WIN_INSTALLATION_DIRECTORY windows environment variables. This option can be set by exporting the variable VALET_SETUP_FOR_WINDOWS=‘true’.
--global-installationIf the current user is root and the option is given, make Valet available for all users (set read permissions for all users on Valet files and directories and create a shim in /usr/local/bin).
This option can be set by exporting the variable VALET_GLOBAL_INSTALLATION=‘true’.
-h, --helpDisplay the help for this command.
▶️ valet self source
Synopsis
If you want to use Valet functions directly in bash, you can use this command like this:
eval "$(valet self source)"This will source valet to be able to use its functions as if you were in a command script.
You can optionally export all the functions if needed.
Usage
valet self source [options]Options
-a, --source-all-functionsWill immediately source all the libraries functions. This option can be set by exporting the variable VALET_SOURCE_ALL_FUNCTIONS=‘true’.
-E, --no-exitOverride the core::fail and core::exit functions to not exit the script. This option can be set by exporting the variable VALET_NO_EXIT=‘true’.
-p, --prompt-modeSource valet functions with modifications to be used in a shell prompt. This will disable all traps and override the core::fail and core::exit functions to not exit the shell. This option can be set by exporting the variable VALET_PROMPT_MODE=‘true’.
-h, --helpDisplay the help for this command.
Examples
eval "$(valet self source)"Source valet functions in your bash session. You can then can then use valet function as if you were in a command script. Perfect for CI/CD pipelines.
eval "$(valet self source --prompt-mode)"The preferred mode to source valet functions in your shell prompt.
▶️ valet self test
Synopsis
Test your valet custom commands using approval tests approach.
Usage
valet self test [options]Options
-d, --extensions-directory <path>The path to your valet extensions directory.
Each sub directory named .tests.d in an extension will be considered as a test directory containing a test.sh file. This option can be set by exporting the variable VALET_EXTENSIONS_DIRECTORY=’
'. -a, --auto-approveThe received test result files will automatically be approved. This option can be set by exporting the variable VALET_AUTO_APPROVE=‘true’.
-r, --replay-failed-testsReplay the failed tests from the previous run (or run all tests if none failed). This option can be set by exporting the variable VALET_REPLAY_FAILED_TESTS=‘true’.
-c, --core-onlyOnly test the valet core functions. Skips the tests for user commands.
This option is intended to be used by people modifying valet itself. This option can be set by exporting the variable VALET_CORE_ONLY=‘true’.
-i, --include <pattern>A regex pattern to include only the test suites (path) that match the pattern.
The name of the test suite is given by the name of the directory containing the .sh test files.
Example: –include ‘(1|commands)’ This option can be set by exporting the variable VALET_INCLUDE=’
'. -e, --exclude <pattern>A regex pattern to exclude all the test suites (path) that match the pattern.
The name of the test suite is given by the name of the directory containing the .sh test files.
Example: –exclude ‘(1|commands)’ This option can be set by exporting the variable VALET_EXCLUDE=’
'. -p, --parallel-test-suites <number>The number of test suites to run in parallel. This option can be set by exporting the variable VALET_PARALLEL_TEST_SUITES=’
'. -h, --helpDisplay the help for this command.
Examples
valet self testRun all the tests found in the valet extensions directory.
valet self test -aRun all the tests found in the valet extensions directory and automatically approve the results.
valet self test -i '(my-thing|my-stuff)'Run only the test suites that match the regex pattern (my-thing|my-stuff).
▶️ valet self uninstall
Synopsis
Generate a bash script that can be used to uninstall Valet. Without any option, this script will print instructions instead.
Usage:
eval "$(valet self uninstall --script)"Usage
valet self uninstall [options]Options
-s, --scriptGenerate a bash script that can be evaluated in bash to uninstall Valet.
This option can be set by exporting the variable VALET_SCRIPT=‘true’.
-h, --helpDisplay the help for this command.
▶️ valet self update
Synopsis
Update valet using the latest release on GitHub.
Usage
valet self update [options]Options
--unattendedSet to true to update without interactive confirmation. This option can be set by exporting the variable VALET_UNATTENDED=‘true’.
-h, --helpDisplay the help for this command.
Examples
valet self updateUpdate Valet to the latest version.
valet self update --unattendedUpdate Valet to the latest version without interactive confirmation.
▶️ valet help
Synopsis
Show the help of this program or of the help of a specific command.
You can show the help with or without colors and set the maximum columns for the help text.
Usage
valet help [options] [--] [commands...]Options
-c, --columns <number>Set the maximum columns for the help text This option can be set by exporting the variable VALET_COLUMNS=’
'. -h, --helpDisplay the help for this command.
Arguments
commands?...The name of the command to show the help for. If not provided, show the help for the program.
Examples
valet help cmdShows the help for the command cmd
valet help cmd subCmdShows the help for the sub command subCmd of the command cmd
valet help --no-colors --columns 50Shows the help for the program without any color and with a maximum of 50 columns
▶️ valet
Synopsis
Valet helps you browse, understand and execute your custom bash commands.
Online documentation is available at https://jcaillon.github.io/valet/.
You can call valet without any commands to start an interactive session.
Configuration through environment variables
Core features variables can be defined in the valet user config file. Run valet self config to open the configuration file with your default editor (the file will get created if it does not yet exist).
Command options can also be set through environment variables. Check the command help for more information.
Create your own commands
You can create your own commands and have them available in valet.
A command is part of an extension, which is a collection of commands.
To get started, run the command valet self create-extension.
Usage
valet [options] [--] [commands...]Options
--profilerTurn on profiling (with debug mode) before running the required command. It will output to
~/.local/state/valet/logsby default. This is useful to debug your command and understand what takes a long time to execute. The profiler log will be cleanup to only keep lines relevant for your command script. You can disable this behavior by setting the environment variable VALET_CONFIG_KEEP_ALL_PROFILER_LINES to true. This option can be set by exporting the variable VALET_PROFILER=‘true’.--log-level, --log <level>Set the log level (defaults to info). Possible values are: trace, debug, success, info, success, warning, error. This option can be set by exporting the variable VALET_LOG_LEVEL=’
'. -v, --verboseOutput verbose information. This is the equivalent of setting the log level to debug. This option can be set by exporting the variable VALET_VERBOSE=‘true’.
--disable-progress-barsDisable all progress bars for commands that use them. This option can be set by exporting the variable VALET_DISABLE_PROGRESS_BARS=‘true’.
--interactiveEnter interactive mode for commands even if arguments are not required or provided. This option can be set by exporting the variable VALET_INTERACTIVE=‘true’.
--sourceReturns in the path of a script file to source in order to use valet library functions in your scripts. Usage:
source "$(valet --source)".--versionDisplay the current version of valet.
-h, --helpDisplay the help for this command.
Arguments
commands?...The command or sub commands to execute. See the commands section for more information.
Commands
append-checksum-transformer(Kustomize plugin) A Kustomize transformer that appends a manifest checksum to the name of a resource.
argocd-pluginGenerate the yaml from the given kustomize directory.
auto-mergeAutomatically merge given branches to target branches.
aws-cleanup-resourcesCleanup AWS resources.
aws-find-secretFind a secret from AWS Secrets Manager.
aws-loginLog in to AWS and EKS for the specified profile.
aws-logoutLog out of AWS.
aws-switchAllows to switch on/off aws resources.
bash bootstrapReturns a string that can be evaluated to bootstrap your bash session.
bash linksCreate symbolic links as defined in the links definition directory.
chart-inflator(Kustomize plugin) Inflates helm chart(s) from the given Kustomize generator specifications.
clean-upClean up the system.
extension2Do nothing.
extension3Do nothing.
extensions createCreate a new Valet extension.
extensions initInitialize/setup the current directory as a Valet extension.
extensions installDownload and install an extension in the user extensions directory using GIT.
extensions listList all Valet extensions.
extensions updateUpdate Valet extensions.
fix-videos-nameRename videos files in a directory.
generateGenerate the yaml from the given kustomize directory.
gitops-generate-manifestsGenerate the k8s manifests as seen by ArgoCD for a GitOps repository.
gitops-test-repositoryTest the validity of the gitops repository.
helpShow the help of this program or of a specific command.
hibernatorAllows to either hibernate or awake a given tenant.
k8s-argocdInteract with ArgoCD.
k8s-bootstrapBootstrap a k8s cluster by applying Kustomize configuration step by step.
k8s-delete-bad-pdbsRemove problematic PodDisruptionBudgets that would prevent nodes from being drained.
k8s-delete-resourcesDelete k8s resources.
k8s-find-issuesFind issues in the k8s cluster and report them.
k8s-switchAllows to switch on/off k8s resources.
k8s-uninstall-deployment-chartsUninstall helm charts for the given deployments.
k8s-wait-for-podsWait for the k8s pods/jobs to be ready/complete.
k8s-wait-for-resourcesWait for k8s resources to be created.
mustache-generator(Kustomize plugin) Generate k8s resource list from a combination of mustaches templates and scopes.
notify-teamSends a notification to the team.
self add-commandAdd a new command to the current extension.
self add-libraryAdd a new library to the current extension.
self buildIndex all the commands and libraries present in the valet extensions directory and installation directory.
self configOpen the configuration file of Valet with your default editor.
self documentGenerate the documentation and code snippets for all the library functions of Valet.
self extendExtends Valet by creating or downloading a new extension in the user directory.
self releaseRelease a new version of valet.
self setupThe command run after the installation of Valet to setup the tool.
self sourceReturns a string that can be evaluated to source Valet functions in bash.
self testTest your valet custom commands.
self uninstallA command to uninstall Valet.
self updateUpdate valet to the latest release.
send-repo-statusSend a report of the current repository status.
showcase command1A showcase command that uses arguments and options.
showcase interactiveA showcase command that demonstrates how to interact with the user.
terraformInit, validate, destroy, plan or apply a terraform configuration.
wait-podsDEPRECATED! Wait for the k8s pods to be ready.
wait-resourcesDEPRECATED! Wait for the k8s resources to be created.
yaml-query-transformer(Kustomize plugin) A Kustomize transformer that runs the resources list through a yq query.
Examples
valet --helpDisplays this help text.
valet -v a-command and-sub-commandActive verbose mode and run the command a-command with the sub command and-sub-command.
Documentation generated for the version 0.37.1138 (2026-05-12).