Workshop and SDKcraft 0.9.3 release notes¶
6 July 2026¶
These release notes cover new features and changes in Workshop and SDKcraft 0.9.3.
Requirements and compatibility¶
Workshop relies on Snap and LXD:
See the Tutorial for setup instructions.
Refer to the Contribution Guide for development prerequisites.
What’s new in 0.9.3¶
Workshop and SDKcraft 0.9.3 rework the workshop boot process in preparation for
VM support, give every workshop a *.wp hostname, and add productid and
vendorid attributes to the custom-device interface. The release also improves
onboarding when LXD is missing or outdated, adds storage pool monitoring, reports
where sdkcraft whoami stores its token, and ships v1 of the Workshop GitHub
Action.
Workshop¶
Repository: https://github.com/canonical/workshop
Reworked the workshop boot process in preparation for VM support. The machine ID and SSH host keys now persist across refreshes, and Workshop no longer uses SFTP to change the instance filesystem during launch or refresh, which should resolve a recurring LXD bug with busy ZFS volumes.
Gave every running workshop a
*.wphostname in theworkshop infooutput. When the preferred hostname is unavailable, the explanatory note is now simplified tohostname-fallback(theworkshopdlog has more details).Added
productidandvendoridattributes to thecustom-deviceinterface (community contribution).Improved onboarding for users with no LXD or an older LXD installed. Error messages are now actionable, and
workshopdenters a degraded state that recovers without a daemon restart after LXD is installed, refreshed, or restarted.Added storage pool monitoring that proactively moves the daemon into a degraded state and returns an actionable error message, preventing “out of space” failures.
Added and expanded documentation on runtime hooks, plugs, and slots, and updated it to reflect recent changes to the CLI structure, output, and hostnames.
SDKcraft¶
Repository: https://github.com/canonical/sdkcraft
Added
productidandvendoridattributes to thecustom-deviceinterface.sdkcraft whoaminow reports where its token is stored: the keyring, a file, or in memory.
Reference SDKs¶
Repository: https://github.com/canonical/reference-sdks
Published the reference SDKs under the official Canonical account.
Reworked and published the
hermes-agentSDK.Updated the
flutteranddirenvSDKs to support theubuntu@26.04base and added tests.Added optional desktop-interface support for opencode users, enabling clipboard support when the terminal emulator does not provide it.
Workshop GitHub Action¶
Repository: https://github.com/canonical/launch-workshop
Released v1 of the Launch Workshop action to the GitHub Marketplace.
Replaced the
tokenandversioninputs withchannelandrevisioninputs for retrieving the Workshop snap:- uses: canonical/launch-workshop@v1 with: workshop: ${{ matrix.workshop }} cache: | uv:cache - run: workshop run "$WS" unit-tests env: WS: ${{ matrix.workshop }}
Full Changelog: