Wasm Shell CLI Command Reference
wash build
↴wash config
↴wash completion
↴wash dev
↴wash doctor
↴wash inspect
↴wash new
↴wash oci
↴wash plugin
↴wash update
↴
wash build
Compile a project to a WebAssembly component artifact—i.e., a WebAssembly (.wasm
) binary that conforms to the WebAssembly Component Model.
Usage: wash build [OPTIONS]
Options:
--artifact-path <ARTIFACT_PATH>
— The expected path to the built Wasm component artifact--config <CONFIG_PATH>
— Path to a configuration file in a location other thanPROJECT_DIR/.wash/config.json
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text or json) [default: text]--skip-fetch
- Skip fetching WIT dependencies, useful for offline builds--verbose
- Enable verbose output-h
,--help
- Print help
wash config
View configuration for wash.
Usage: wash config [OPTIONS] <COMMAND>
Subcommands:
init
- Initialize a new configuration file for washinfo
- Print the current version and local directories used by washshow
- Print the current configuration file for wash
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default: text]--verbose
- Enable verbose output-h
,--help
- Print help
wash config init
Initialize a new configuration file for wash.
Usage: wash config init [OPTIONS]
Options:
--force
- Overwrite existing configuration--global
- Overwrite global configuration instead of project-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash config info
Print the current version and local directories used by wash.
Usage: wash config info [OPTIONS]
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash config show
Print the current configuration file for wash.
Usage: wash config show [OPTIONS]
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash completion
Generate shell completions.
Usage: wash completion [OPTIONS] <SHELL>
<SHELL>
- The shell to generate completions for [possible values:bash
,elvish
,fish
,powershell
,zsh
]
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text or json) [default: text]--verbose
- Enable verbose output-h
,--help
- Print help
wash dev
Start a development server for a Wasm component.
Usage: wash dev [OPTIONS] <PROJECT_DIR>
<PROJECT_DIR>
- The path to the project directory [default:.
]
Options:
--address <ADDRESS>
- The address on which the HTTP server will listen [default:0.0.0.0:8000
]--artifact-path <ARTIFACT_PATH>
— The expected path to the built Wasm component artifact--blobstore-root <BLOBSTORE_ROOT>
- The root directory for the blobstore to use forwasi:blobstore/blobstore
. Defaults to a subfolder in the wash data directory-l
,--log-level <LOG_LEVEL>
— Set the log level (trace, debug, info, warn, error) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text or json) [default:text
]--runtime-config <RUNTIME_CONFIG>
- Configuration values to use forwasi:config/runtime
in the form ofkey=value
pairs--tls-cert <TLS_CERT>
- Path to TLS certificate file (PEM format) for HTTPS support--tls-key <TLS_KEY>
- Path to TLS private key file (PEM format) for HTTPS support--tls-ca <TLS_CA>
- Path to CA certificate bundle (PEM format) for client certificate verification (optional)--verbose
- Enable verbose output-h
,--help
- Print help
wash doctor
Check the health of your wash installation and environment.
Usage: wash doctor [OPTIONS] <PROJECT_PATH>
<PROJECT_PATH>
- The path to the project directory [default:.
]
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash inspect
Inspect a Wasm component's embedded WIT.
Usage: wash inspect [OPTIONS] <COMPONENT_REFERENCE>
<COMPONENT_REFERENCE>
- Inspect a component by its reference, which can be a local file path, project directory, or remote OCI reference. If omitted or pointing to a directory, attempts to build and inspect a component from that directory.
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash new
Create a new project from a template or git repository.
Usage: wash new [OPTIONS] <NAME>
<NAME>
- Project name and local directory to create, defaults to repository/subfolder name.
Options:
--git <GIT>
- Git repository URL to use as template--local <LOCAL>
- Local filesystem path to use as template-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--subfolder <SUBFOLDER>
- Subdirectory within the git repository to use (only valid with--git
)--template-name <TEMPLATE_NAME>
- Named template from configuration file--verbose
- Enable verbose output-h
,--help
- Print help
wash oci
Push or pull Wasm components to or from an OCI registry.
Usage:: wash oci [OPTIONS] <COMMAND>
Subcommands:
pull
- Pull a component artifact from an OCI registry.push
- Push a component artifact to an OCI registry.
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash oci pull
Pull a component artifact from an OCI registry.
Usage: wash oci pull [OPTIONS] <REFERENCE> <COMPONENT_PATH>
<REFERENCE>
- The OCI reference to pull.<COMPONENT_PATH>
- The path to write the pulled component to [default:component.wasm
]
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash oci push
Push a component artifact to an OCI registry.
Usage: wash oci push [OPTIONS] <REFERENCE> <COMPONENT_PATH>
<REFERENCE>
- The OCI reference to push.<COMPONENT_PATH>
- The path to the component to push.
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash plugin
Manage wash plugins.
Usage: wash plugin [OPTIONS] <COMMAND>
Subcommands:
install
- Install a plugin.uninstall
- Uninstall a plugin.list
- List installed plugin.test
- Test a plugin.
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash plugin install
Install a plugin from an OCI reference or file.
Usage: wash plugin install [OPTIONS] <SOURCE>
<SOURCE>
- The source to install from (OCI reference or file path)
Options:
-f
,--force
- Force overwrite if plugin already exists-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash plugin uninstall
Uninstall a plugin.
Usage: wash plugin uninstall [OPTIONS] <NAME>
<NAME>
- The name of the plugin to uninstall.
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash plugin list
List installed plugins.
Usage: wash plugin list [OPTIONS]
Options:
-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash plugin test
Test a plugin.
Usage: wash plugin test [OPTIONS] <PLUGIN> <ARG>...
<PLUGIN>
- Path to the component or component project to test<ARG>...
- The arguments to pass to the plugin command
Options:
--hook <TYPE>
- The hook types to test-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--verbose
- Enable verbose output-h
,--help
- Print help
wash update
Update wash to the latest version.
Usage: wash update [OPTIONS]
Options:
-d
,--dry-run
- Check for updates without applying them-f
,--force
- Force update even if already on the latest version--git <GIT>
- Point at a different repository for updates [default:wasmcloud/wash
]-l
,--log-level <LOG_LEVEL>
— Set the log level (trace
,debug
,info
,warn
,error
) [default:info
]--major
- Allow major version updates (breaking changes)--minor
- Allow minor version updates (new features, no breaking changes)--patch
- Allow only patch updates (bug fixes only)-o
,--output <OUTPUT_FORMAT>
— Specify output format (text
orjson
) [default:text
]--token <TOKEN>
- GitHub token for private repository access. Can also be set viaGITHUB_TOKEN
,GH_TOKEN
, orGITHUB_ACCESS_TOKEN
environment variables [env:WASH_GITHUB_TOKEN=
].--verbose
- Enable verbose output-h
,--help
- Print help