Update Notifications
Get notified automatically when updates are available - no manual checking required.
How it Works
At session start (new session or after /clear), Claude Code Setup automatically:
- Checks base repo - Compares your installed version with the latest on GitHub
- Checks custom repo - If you have a custom modules repo, checks for new commits
This runs via Claude Code’s hook system at session start.
Output Examples
When an update is available:
Update available: v28 -> v29 (run /claude-code-setup)When custom modules have updates:
Custom modules update available (run /claude-code-setup)When everything is up to date: no output.
Configuration
The hook is configured in ~/.claude/settings.json:
{
"hooks": {
"SessionStart": [{
"matcher": "startup|clear",
"hooks": [{
"type": "command",
"command": "~/.claude/hooks/check-update.sh"
}]
}]
}
}Matchers
| Matcher | When it Runs |
|---|---|
startup | New session started |
clear | After /clear command |
resume | Session resumed |
compact | After context compaction |
The update notification uses startup|clear to check once per session without being too frequent.
Hook Script
The update check script is located at ~/.claude/hooks/check-update.sh.
Requirements
jq- JSON parsing (installed automatically)curl- HTTP requests for version checkgit- For custom repo checks (optional)
Behavior
- Exits quietly on network errors or missing dependencies
- Takes ~100-200ms (curl with 2s timeout)
- Only fetches a single VERSION file from GitHub raw - no API calls, no tracking
Disabling Update Notifications
To disable the update notification:
- Edit
~/.claude/settings.json - Remove or comment out the
hookssection
Or remove just the check-update hook while keeping other hooks:
{
"hooks": {
"SessionStart": []
}
}