| name | update-self |
| description | Pull updates from the upstream template repo. Use when upstream has new skills, script fixes, or config improvements you want to incorporate. For pushing local improvements back upstream, use the `submit-upstream-changes` skill instead. |
Pulling updates from the upstream template
This repo was created from a template repo. The two share git history and stay connected via a git remote. The template URL and branch are defined in parent.toml:
url = "https://github.com/imbue-ai/forever-claude-template.git"
branch = "main"
What this means
The template contains shared infrastructure: skills, scripts, CLAUDE.md scaffolding, Dockerfile, supervisord.conf, etc. When the template is updated, you can pull those changes in here.
Setup
Ensure the upstream remote exists:
git remote get-url upstream 2>/dev/null || git remote add upstream "$(python3 -c "
import tomllib
with open('parent.toml', 'rb') as f:
print(tomllib.load(f)['url'])
")"
Pulling updates
Always pull with --no-ff and the recognizable commit subject below, so the merge that brings in template (built-in) code is identifiable in git log afterwards. Tools that classify code as built-in vs. user-created (e.g. the assist skill) rely on this update-self: subject convention to find which commits came from upstream:
BRANCH=$(python3 -c "
import tomllib
with open('parent.toml', 'rb') as f:
print(tomllib.load(f)['branch'])
")
git pull --no-ff --no-edit upstream -m