Updating¶
Check your version¶
claude-doctor prints the same version on its first line, and
claude-profiles --version prints just the number.
The version string carries the git description too, so 1.2.0 (v1.2.0-3-gabc1234)
means three commits past the tag, and a -dirty suffix means you have
uncommitted local changes.
Update¶
It checks GitHub for a newer release, runs git pull --ff-only in your
~/.claude-tools checkout, and shows what changed:
installed: 1.1.0 (v1.1.0)
available: 1.2.0 https://github.com/Nandeep2750/claude-profiles/releases/tag/v1.2.0
git pull --ff-only
a1b2c3d -> e4f5g6h
feat: claude-update
docs: updating page
the shell layer changed - run 'exec $SHELL -l' or open a new terminal
That last line matters. Changes under bin/ take effect immediately, because
the shell functions launch the Python core fresh on every call. Changes under
shell/ - new commands, completions, the cd hook - need already-open shells
reloaded. claude-update tells you which kind you just got, so you only restart
when it is actually necessary.
Safety¶
--ff-only- the update refuses to merge or rebase. If your checkout has diverged it stops rather than creating a merge commit.- Local changes block it. If you have edited anything, it lists what and stops. Commit or stash first.
- Account data is never touched. Updating only pulls
~/.claude-tools. Your profiles, credentials and conversations live in~/.claude-profilesand are not part of the repo.
If you did not install with git¶
only works on a git checkout. If you copied the folder across by hand,
claude-update will say so - re-copy it, or convert to a checkout:
rm -rf ~/.claude-tools
git clone https://github.com/Nandeep2750/claude-profiles.git ~/.claude-tools
sh ~/.claude-tools/install.sh
Reinstalling is safe and idempotent: it will not duplicate the source line in
your rc file, and it does not touch account data.
Pinning a version¶
claude-update will then report a newer release available but refuse to pull,
because a detached checkout is not fast-forwardable. Return with
git checkout main.