Comprehensive guide to WebAssembly component development covering WASI fundamentals, component composition patterns, language interoperability, runtime compatibility, and troubleshooting.
SKILL.md
WebAssembly Component Development
This skill provides comprehensive expertise in developing WebAssembly components, including WASI fundamentals, composition patterns, runtime compatibility, and troubleshooting.
Key Defaults
Build: Use wash build when the project has .wash/config.yaml. Use wash build --skip-fetch for plugins (since wasmcloud:wash interface isn't published). Otherwise cargo build --target wasm32-wasip2 --release.
Target:wasm32-wasip2 (Rust 1.82+ tier-2 target). WASI 0.2 (wasip2) is the current standard.
Async: Pick one β tokio 1.50+ with RUSTFLAGS="--cfg tokio_unstable", or wstd (lighter, Wasm-native). Do not mix.
Strings: Always UTF-8 on wasip2. Avoid as_encoded_bytes().
Documentation links, development/component-design/runtime-compat best practices, CI/CD examples, common architecture patterns (microservices, plugin, data pipeline)