ck update
Update the ClaudeKit CLI package itself to the latest version using your package manager.
Quick Start
# Check for updates
ck update --check
# Update to latest version
ck update
# Update to specific version
ck update --release 3.11.0
# Update to beta version
ck update --beta
# Non-interactive update
ck update --yes
Note: This command updates the ClaudeKit CLI tool itself, NOT your ClaudeKit project. To update your project, use ck init.
What It Does
The ck update command:
- Detects your package manager (npm, bun, pnpm, yarn)
- Fetches latest version from npm registry
- Compares current version with target version
- Prompts for confirmation (unless
--yes) - Executes package manager update command
- Verifies installation
Syntax
ck update [OPTIONS]
Options
| Flag | Description | Default |
|---|---|---|
--check | Only check for updates, don’t install | false |
--release <version> | Update to specific version | Latest stable |
--beta | Update to latest beta version | false |
--yes / -y | Skip confirmation prompt | false |
--registry <url> | Custom npm registry URL | https://registry.npmjs.org |
--verbose | Enable verbose logging | false |
Examples
Check for Updates
See if a newer version is available without installing:
ck update --check
Example output:
[>] ClaudeKit CLI - Update
Current CLI version: 3.10.1
Latest version: 3.11.0
[^] upgrade: 3.10.1 -> 3.11.0
Update Check
Update available: 3.10.1 -> 3.11.0
Run 'ck update' to install
Check complete
Update to Latest
Update to the newest stable version:
ck update
Example output:
[>] ClaudeKit CLI - Update
Current CLI version: 3.10.1
Using npm v10.2.4
Latest version: 3.11.0
[^] upgrade: 3.10.1 -> 3.11.0
Update CLI from 3.10.1 to 3.11.0? (y/n) y
Updating CLI...
✓ Update completed
✓ Installed version: 3.11.0
[+] Successfully updated ClaudeKit CLI to 3.11.0
Update to Specific Version
Downgrade or install a specific version:
ck update --release 3.9.0
Useful for:
- Rolling back to a known stable version
- Testing specific version behavior
- Matching team’s CLI version
Update to Beta
Get the latest prerelease version:
ck update --beta
Example output:
Current CLI version: 3.10.1
Latest beta version: 3.11.0-beta.2
[^] upgrade: 3.10.1 -> 3.11.0-beta.2
Update CLI from 3.10.1 to 3.11.0-beta.2? (y/n)
If no beta version exists, falls back to latest stable.
Non-Interactive Update
Skip confirmation prompt (useful for scripts):
ck update --yes
Or short form:
ck update -y
Combine Flags
Update to latest beta without confirmation:
ck update --beta --yes
Package Manager Detection
The CLI automatically detects which package manager you used for installation:
Detected Managers
- npm - Default Node.js package manager
- bun - Fast all-in-one JavaScript runtime
- pnpm - Fast, disk space efficient
- yarn - Alternative to npm
Detection Order
- Checks for global installation path patterns
- Verifies package manager is installed
- Falls back to npm if detection fails
Update Commands Used
The CLI uses the appropriate command for your package manager:
| Manager | Update Command |
|---|---|
| npm | npm update -g claudekit-cli |
| bun | bun update -g claudekit-cli |
| pnpm | pnpm update -g claudekit-cli |
| yarn | yarn global upgrade claudekit-cli |
Update Notifications
The CLI automatically checks for updates when you run:
ck --version
Example with update available:
CLI Version: 3.10.1
Local Kit Version: 1.16.0 (ClaudeKit Engineer)
⚠ Update available: 3.10.1 -> 3.11.0
Run 'ck update' to install
Notification Caching
Update checks are cached for 7 days to minimize API calls.
Cache location:
- macOS/Linux:
~/.claudekit/cache/version-check.json - Windows:
%USERPROFILE%\.claudekit\cache\version-check.json
Disable Notifications
Set environment variable to disable update notifications:
# Temporary (current session)
NO_UPDATE_NOTIFIER=1 ck --version
# Permanent (add to ~/.bashrc or ~/.zshrc)
export NO_UPDATE_NOTIFIER=1
Windows (PowerShell):
[System.Environment]::SetEnvironmentVariable("NO_UPDATE_NOTIFIER", "1", [System.EnvironmentVariableTarget]::User)
Common Patterns
Regular Update Routine
Keep CLI up to date:
# Weekly check
ck update --check
# If update available, install it
ck update
Team Version Sync
Ensure team uses same CLI version:
# In team docs, specify version
ck update --release 3.10.1
Beta Testing
Test upcoming features:
# Install beta
ck update --beta
# Try new features
ck new --help
# Roll back to stable if issues
ck update --release 3.10.1
Automated Updates
Add to cron job or scheduled task:
# Auto-update weekly (add to crontab)
0 9 * * 1 ck update --yes
Windows Task Scheduler:
schtasks /create /tn "ClaudeKit Update" /tr "ck update --yes" /sc weekly /d MON /st 09:00
Troubleshooting
”Permission denied” Error
Symptoms:
EACCES: permission denied
Cause: Insufficient permissions for global package directory.
Solutions:
Option 1: Use sudo (Linux/macOS)
sudo ck update
Or manually:
sudo npm update -g claudekit-cli
Option 2: Fix npm Permissions (Recommended)
Follow npm’s guide to fix permissions.
Option 3: Use a Node Version Manager
- nvm (Linux/macOS): nvm installation
- nvm-windows (Windows): nvm-windows
”Version X does not exist”
Symptoms:
Version 3.99.0 does not exist on npm registry
Cause: Specified version not published or typo.
Solutions:
# Check available versions
npm view claudekit-cli versions
# Or use CLI versions command (won't work for CLI itself, but shows pattern)
# Then install correct version
ck update --release 3.11.0
“Already on the latest version”
Symptoms:
[+] Already on the latest version (3.11.0)
Meaning: You’re up to date. No action needed.
To force reinstall:
npm uninstall -g claudekit-cli
npm install -g claudekit-cli
Update Fails Silently
Symptoms: No error, but version doesn’t change.
Cause: Package manager cache issue.
Solutions:
# Clear npm cache
npm cache clean --force
# Retry update
ck update
# Or reinstall
npm uninstall -g claudekit-cli
npm install -g claudekit-cli@latest
“Please restart your terminal”
Symptoms: Update succeeds but ck --version shows old version.
Cause: Shell hasn’t reloaded PATH.
Solutions:
Option 1: Restart terminal (easiest)
Option 2: Reload shell config
source ~/.bashrc # or ~/.zshrc
Option 3: Use full path
$(npm config get prefix)/bin/ck --version
Platform-Specific Notes
Windows
- Use PowerShell or Windows Terminal
- May require administrator privileges
- Antivirus may interfere with update
macOS
- Homebrew users: If installed via Homebrew, use
brew upgrade - System Integrity Protection may require sudo
Linux
- Package manager varies by distro
- WSL fully supported
- May need sudo for global installs
Version Verification
After updating, verify the new version:
ck --version
Expected output:
CLI Version: 3.11.0
If old version still shows, restart terminal or reload shell config.
Rollback
To rollback to a previous version:
# Install specific older version
ck update --release 3.10.0
# Verify
ck --version
Next Steps
After updating the CLI:
- Update your projects to latest kit versions:
cd my-project
ck init
- Check for breaking changes in release notes
- Test commands to ensure compatibility
- Run health check:
ck doctor
Related Commands
ck --version- Check current versionck init- Update ClaudeKit project (not CLI)ck doctor- Diagnose CLI issuesck versions- List kit versions (not CLI versions)- Installation - Initial setup