返回 Skill 列表
extension
分类: 开发与工程无需 API Key

wash

精通wasmCloud Shell (wash) CLI工具,用于构建、运行和管理WebAssembly组件和wasmCloud应用程序。在处理wasmCloud、WebAssembly组件、WIT(WebAssembly接口类型)定义或wash命令时使用此技能。

person作者: jakexiaohubgithub

wash - wasmCloud Shell

This skill provides expertise in using the wasmCloud Shell (wash) CLI tool for developing and managing WebAssembly components and wasmCloud applications.

Prerequisites

  • wash version 2.0.0 or later
  • Verify version with: wash --version

Important Notes

Do not use cargo component commands (like cargo component build) when working with wasmCloud projects. Always use wash commands instead:

  • Use wash build or wash dev for building components
  • For plugins, build with wash build --skip-fetch (since wasmcloud:wash interface isn't published)

Core Commands

wash dev

Use wash dev for local development and build loop. This command:

  • Automatically rebuilds your component on file changes
  • Provides a fast iteration cycle during development
  • Watches for changes and recompiles as needed

Example:

wash dev

wash wit update

Use wash wit update when there are mismatched WIT (WebAssembly Interface Types) definitions. This command:

  • Updates WIT dependencies to resolve conflicts
  • Synchronizes WIT definitions across your project
  • Fixes version mismatches in component interfaces

Example:

wash wit update

Common Workflows

Starting a New Project using the HTTP Hello World template

  1. wash new https://github.com/wasmCloud/wasmCloud.git --name http-hello-world --subfolder templates/http-hello-world
  2. cd my-project
  3. Run wash build to build the code
  4. Make changes to your code

Expected Component Structure

A modern wash new Rust HTTP component can follow this structure:

|
|-- .wash/
|   -- config.yaml
|-- manifests/
|   -- workloaddeployment.yaml
|-- src/
|   -- lib.rs
|-- wit/
|   -- world.wit
|-- Cargo.toml
|-- Cargo.lock
|-- wkg.lock
|-- README.md

Fixing WIT Definition Conflicts

If you encounter errors about mismatched WIT definitions:

  1. Run wash wit update to synchronize definitions
  2. Review the updated WIT files
  3. Continue with wash build

Additional Resources

  • wash is the primary CLI tool for the wasmCloud ecosystem
  • It handles component building, testing, and deployment
  • Supports both local development and production workflows