v0.12.1
September 6, 2026 CLIv0.12.1 adds commands for validating a local config instance and a local deployment against persisted schemas without creating any resources.
Features
- Add
miru config validateto check a local config instance against a persisted schema without creating any resources - Add
miru deployment validateto check local config files against a release’s schemas without creating a deployment
v0.12.0
August 27, 2026 CLIv0.12.0 adds commands for cloning and staging device configs, validating a schema without creating a release, and showing the authenticated principal. Interactive login now uses the OAuth device authorization flow instead of pasting a dashboard token. The previous login flow is no longer supported, so local login requires v0.12.0 or later.
Breaking changes
The previous paste-token login flow is no longer supported. CLI versions before
v0.12.0 do not support miru login. Upgrade to v0.12.0 or later to log in to the CLI on your development machine.MIRU_API_KEY continue to work with earlier CLI versions.
Features
- Add
miru device cloneto write the config files of a device’s current deployment onto your local machine’s disk - Add
miru device stageto stage a deployment from your local machine’s disk - Add
miru deployment cloneto write the config files of any deployment onto your local machine’s disk - Add
miru schema validateto check a schema against the same server rules asmiru release createwithout creating any resources - Add
miru whoamito show the authenticated principal and workspace - Add the
MIRU_HOMEenvironment variable to override the CLI state directory (defaults to~/.miru)
Improvements
miru versionnow prints aMiru CLIheader plusGoandOS/Archlines- Refuse to create CLI state under a directory the CLI user does not own
v0.11.0
August 12, 2026 CLIv0.11.0 renames the upload rule to the file rule. A file rule still says which files on a device to match, but uploading them and reclaiming their disk space are now two independent, optional halves of one object. See file rules.
Breaking changes
Features
- Add support for the instance slots schema annotation, letting one config schema write config instances to several file paths
Improvements
- Add more context to schema push failure messages
Fixes
- Fix a bug where the CLI would occasionally identify a pushed schema as new when it already existed
v0.10.3
July 26, 2026Features
- Add support for opaque config schemas
- Add support for XML and plain text config instance formats
v0.10.2
July 20, 2026 CLIv0.10.2 adds support for including upload rules in a release, letting you define data uploads alongside your config schemas.
Features
miru release createnow accepts--upload-ruleand--upload-rulesflags to include upload rules (and their upload collections) in a release- Emit API key source notice when
MIRU_API_KEYis set in the environment - Show platform-aware upgrade command when notifying users of a new CLI version
- Publish a SBOM for CLI releases
v0.10.1
May 17, 2026Features
- Config types referenced in schema annotations are now automatically created if they do not yet exist instead of throwing an error
Fixes
- Don’t rewrite
~/.miru/settings.jsonon read-only commands when no defaults need to be applied - Fix the install-docs link printed in the CLI’s update-available notification
v0.10.0
April 12, 2026 CLIv0.10.0 adds support for specifying config instance file paths anywhere on your devices’ file system, not just in the /srv/miru/config_instances/ directory.
Note that file paths which do not live in /srv/miru/config_instances/ require Miru Agent v0.8.0.
Breaking changes
Fixes
- Don’t persist login tokens to disk until they’ve been successfully validated
- Add missing out-of-bounds check in the create schema pipeline
- Prevent double-close panic in async writer
Improvements
- Improve performance of populating setting defaults to disk
- Persist credentials with more restricted file system permissions
v0.9.2
March 5, 2026Fixes
- Display a more descriptive error message when the CLI is not logged in and no API key is provided
v0.9.1
February 4, 2026Fixes
- Error messages are properly flushed to the console, ensuring outputs are always visible in CI
v0.9.0
January 27, 2026v0.9.0 is a major release replacing the schema-push workflow with a single miru release create command that handles releases, schemas, and Git metadata in one step. Also adds API key authentication for CI/CD use.
miru release create
The miru schema push command has been replaced by miru release create, which bundles the entire release process into a single command. CUE packages are now supported, allowing schemas to span multiple files.
API key authentication
The CLI now supports authentication via API keys using theMIRU_API_KEY environment variable, enabling non-interactive use in CI/CD pipelines.
Visit the CI/CD guide for more information on using the CLI in CI/CD pipelines.
Improvements
- Improved error messages to be more descriptive and readable
Retired
- Retired the
miru schema pushcommand
v0.8.0
December 18, 2025v0.8.0 is a cleanup release removing deprecated flags from miru schema push ahead of the v0.9.0 command replacement.
Breaking changes
Schema push command- Removed the
--versionflag - Removed the
--allow-duplicateflag
v0.7.0
December 4, 2025v0.7.0 introduces first-class CUE support and updates the schema push workflow to support multiple schema languages.
CUE support
v0.7.0 is the first CLI release with CUE support. You can now push CUE-based schemas directly and use CUE alongside existing JSON Schema workflows.
Schema push improvements
- Added the
--languageflag tomiru schema pushto specify schema language - Added the
--allow-duplicateflag tomiru schema pushto allow multiple schemas with the same content - Schemas uploaded to Miru are now preserved exactly as defined, including original ordering, spacing, and comments
Other improvements
- Improved readability of error messages
- Users are notified when the CLI version is out of date
Breaking changes
Version flag The--version flag is now required when pushing a schema, and JSON Schema annotations were renamed:
- Removed the ability to update the instance file path for an existing schema
Retired
- Removed the
miru instance to jsonschemacommand

