claude-updater
Multi-tool update checker for the Claude Code ecosystem.
Installation
# Via uv
uv tool install claude-updater
# Via pipx
pipx install claude-updater
# Via pip
pip install claude-updater
Quick Start
# Check for updates
claude-updater check
# Check and apply updates interactively
claude-updater update
# Initialize config
claude-updater config init
Built-in Adapters
| Adapter | Tool | Update Method |
|---|---|---|
claude_code |
Claude Code | Auto-update (informational) |
claude_mem |
claude-mem plugin | git pull |
beads_cli |
beads CLI | brew upgrade |
beads_plugin |
beads plugin | git pull |
dolt |
dolt | brew upgrade |
Configuration
Config file: ~/.config/claude-updater/config.toml
# Create default config
claude-updater config init
# Show current config
claude-updater config show
Config Options
[general]
cache_ttl = 86400 # 24h cache TTL in seconds
check_on_startup = true
[adapters.claude_code]
enabled = true
[adapters.claude_mem]
enabled = true
plugin_dir = "~/.claude/plugins/marketplaces/thedotmack"
[adapters.beads_cli]
enabled = true
[adapters.beads_plugin]
enabled = true
plugin_dir = "~/.claude/plugins/marketplaces/beads-marketplace"
[adapters.dolt]
enabled = true
CLI Reference
claude-updater check # Check all enabled adapters
claude-updater check --force # Ignore cache
claude-updater check --json # Machine-readable output
claude-updater update # Interactive update
claude-updater update --yes # Auto-approve updates
claude-updater config init # Create default config
claude-updater config show # Show current config
claude-updater list # List available adapters
Writing Custom Adapters
Create a new file in src/claude_updater/adapters/:
from claude_updater.adapters.base import ToolAdapter
class MyToolAdapter(ToolAdapter):
@property
def name(self) -> str:
return "My Tool"
@property
def key(self) -> str:
return "my_tool"
def get_installed_version(self) -> str:
# Return currently installed version
...
def get_latest_version(self) -> str:
# Return latest available version
...
def get_changelog_delta(self, from_ver: str, to_ver: str) -> str:
# Return changelog text between versions
...
def apply_update(self) -> bool:
# Apply the update, return True on success
...
Then register it in adapters/__init__.py:
ADAPTER_REGISTRY["my_tool"] = MyToolAdapter
License
MIT
Metadata
Release files for claude-updater 2026.3.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| claude_updater-2026.3.6.tar.gz | 58.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| claude_updater-2026.3.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 84.3 kB
Release files / claude_updater-2026.3.6.tar.gz
| Download URL | claude_updater-2026.3.6.tar.gz |
|---|---|
| Size | 58.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
88b0353f5ef663d440b191b49fddf43401ba3fd1112fa60b58a22bb63e42cbc5
|
|
BLAKE2b-256 checksum How to use checksums |
89a980f1f4346555aa15206418096b4523b7eb3131d4927baec96cd52d5ea65a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / claude_updater-2026.3.6-py3-none-any.whl
| Download URL | claude_updater-2026.3.6-py3-none-any.whl |
|---|---|
| Size | 26.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c5e55e6da365ce60aae64c9aed3c2dd12392bd8143834ab49df3b67ebaf9eb93
|
|
BLAKE2b-256 checksum How to use checksums |
4adc8a0819b95511f5d06727c6b5b09398d9c1285932265620aca16fcd3e3f6c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|