diff --git a/CHANGELOG.md b/CHANGELOG.md
index c8b589af..71dbd1e5 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,13 @@
+## [0.40.0](https://github.com/archgate/cli/compare/v0.39.0...v0.40.0) (2026-05-28)
+
+### Features
+
+* multi-ecosystem shim distribution and CI test coverage ([#356](https://github.com/archgate/cli/issues/356)) ([3bd562e](https://github.com/archgate/cli/commit/3bd562e94444ad3b2dde29d39249162fe15f7f06))
+
+### Bug Fixes
+
+* **ci:** detect workflow changes that affect shim tests ([#360](https://github.com/archgate/cli/issues/360)) ([372baf2](https://github.com/archgate/cli/commit/372baf2635ad1bcdd5b864700408c8664f87c3d4))
+
## [0.39.0](https://github.com/archgate/cli/compare/v0.38.0...v0.39.0) (2026-05-25)
### Features
diff --git a/docs/astro.config.mjs b/docs/astro.config.mjs
index ed7bb9d0..34a09b67 100644
--- a/docs/astro.config.mjs
+++ b/docs/astro.config.mjs
@@ -182,7 +182,7 @@ export default defineConfig({
applicationCategory: "DeveloperApplication",
applicationSubCategory: "Code Governance",
operatingSystem: "macOS, Linux, Windows",
- softwareVersion: "0.39.0",
+ softwareVersion: "0.40.0",
license: "https://github.com/archgate/cli/blob/main/LICENSE",
offers: { "@type": "Offer", price: "0", priceCurrency: "USD" },
url: "https://cli.archgate.dev",
diff --git a/docs/public/version.json b/docs/public/version.json
index 7a9252d3..c984101c 100644
--- a/docs/public/version.json
+++ b/docs/public/version.json
@@ -1 +1 @@
-{ "version": "v0.39.0" }
+{ "version": "v0.40.0" }
diff --git a/package.json b/package.json
index 8ad72a99..e7240449 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "archgate",
- "version": "0.39.0",
+ "version": "0.40.0",
"description": "Enforce Architecture Decision Records as executable rules — for both humans and AI agents",
"keywords": [
"adr",
diff --git a/shims/go/internal/shim/shim.go b/shims/go/internal/shim/shim.go
index 8ca46a91..57515a90 100644
--- a/shims/go/internal/shim/shim.go
+++ b/shims/go/internal/shim/shim.go
@@ -16,7 +16,7 @@ import (
)
// Version is the archgate CLI version this shim downloads.
-const Version = "0.39.0"
+const Version = "0.40.0"
const (
releaseBaseURL = "https://github.com/archgate/cli/releases/download"
diff --git a/shims/maven/pom.xml b/shims/maven/pom.xml
index 8d38d490..547ba82d 100644
--- a/shims/maven/pom.xml
+++ b/shims/maven/pom.xml
@@ -6,7 +6,7 @@
dev.archgate
archgate-cli
- 0.39.0
+ 0.40.0
jar
archgate-cli
diff --git a/shims/nuget/Archgate.Tool/Archgate.Tool.csproj b/shims/nuget/Archgate.Tool/Archgate.Tool.csproj
index 80bfee31..a06ad4f6 100644
--- a/shims/nuget/Archgate.Tool/Archgate.Tool.csproj
+++ b/shims/nuget/Archgate.Tool/Archgate.Tool.csproj
@@ -6,7 +6,7 @@
true
archgate
archgate
- 0.39.0
+ 0.40.0
Enforce Architecture Decision Records as executable rules -- for both humans and AI agents
Archgate
Apache-2.0
diff --git a/shims/pypi/archgate/_version.py b/shims/pypi/archgate/_version.py
index e72781a7..da7ed90a 100644
--- a/shims/pypi/archgate/_version.py
+++ b/shims/pypi/archgate/_version.py
@@ -1 +1 @@
-__version__ = "0.39.0"
+__version__ = "0.40.0"
diff --git a/shims/pypi/pyproject.toml b/shims/pypi/pyproject.toml
index d5289f75..32c44d38 100644
--- a/shims/pypi/pyproject.toml
+++ b/shims/pypi/pyproject.toml
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
[project]
name = "archgate"
-version = "0.39.0"
+version = "0.40.0"
description = "Enforce Architecture Decision Records as executable rules — for both humans and AI agents"
readme = "README.md"
requires-python = ">=3.8"
diff --git a/shims/rubygem/lib/archgate/version.rb b/shims/rubygem/lib/archgate/version.rb
index 0aa9dcff..25886b19 100644
--- a/shims/rubygem/lib/archgate/version.rb
+++ b/shims/rubygem/lib/archgate/version.rb
@@ -1,5 +1,5 @@
# frozen_string_literal: true
module Archgate
- VERSION = "0.39.0"
+ VERSION = "0.40.0"
end