diff --git a/third_party/astrolabe/.cz.toml b/third_party/astrolabe/.cz.toml
index 45dfa71..62990fc 100644
--- a/third_party/astrolabe/.cz.toml
+++ b/third_party/astrolabe/.cz.toml
@@ -1,6 +1,6 @@
[tool.commitizen]
name = "cz_conventional_commits"
-version = "0.9.0"
+version = "0.10.0"
tag_format = "astrolabe-v$version"
version_scheme = "semver"
update_changelog_on_bump = true
diff --git a/third_party/astrolabe/CHANGELOG.md b/third_party/astrolabe/CHANGELOG.md
index 04dabc8..9addda4 100644
--- a/third_party/astrolabe/CHANGELOG.md
+++ b/third_party/astrolabe/CHANGELOG.md
@@ -25,6 +25,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Requires external MCP server deployment
- See documentation for setup: https://github.com/cbcoutinho/nextcloud-mcp-server
+## astrolabe-v0.10.0 (2026-01-28)
+
+### Feat
+
+- **astrolabe**: add background token refresh job
+
+### Fix
+
+- **astrolabe**: add pagination and psalm fixes for token refresh
+- **astrolabe**: add locking to prevent token refresh race condition
+- **astrolabe**: add issued_at to on-demand token refresh
+
## astrolabe-v0.9.0 (2026-01-26)
### Feat
diff --git a/third_party/astrolabe/appinfo/info.xml b/third_party/astrolabe/appinfo/info.xml
index 31209a6..7abc439 100644
--- a/third_party/astrolabe/appinfo/info.xml
+++ b/third_party/astrolabe/appinfo/info.xml
@@ -29,7 +29,7 @@ Astrolabe connects to a semantic search service that understands the meaning of
See [documentation](https://github.com/cbcoutinho/nextcloud-mcp-server) for configuration details.
]]>
- 0.9.0
+ 0.10.0
agpl
Chris Coutinho
Astrolabe
diff --git a/third_party/astrolabe/package.json b/third_party/astrolabe/package.json
index 6c6d13a..3eaab2b 100644
--- a/third_party/astrolabe/package.json
+++ b/third_party/astrolabe/package.json
@@ -1,6 +1,6 @@
{
"name": "astrolabe",
- "version": "0.9.0",
+ "version": "0.10.0",
"license": "AGPL-3.0-or-later",
"engines": {
"node": "^22.0.0",