Updating Genesis
Genesis receives updates through its git repository. Updates bring new stack profiles, improved templates, additional agents, bug fixes, and documentation improvements.
Using the /update Skill
The recommended way to update Genesis is through the /update skill during a Claude session:
cd ~/claude/genesis
claude
Then invoke:
/update
The skill performs these steps:
- Checks for local changes: warns you if there are uncommitted modifications that might conflict
- Fetches updates: pulls the latest changes from the remote repository
- Shows what changed: lists incoming commits with highlights for notable additions
- Asks for confirmation: you review the changes before applying
- Applies the update: runs
git pull origin main - Reports results: summarises what was updated
Manual Update
If you prefer to update manually:
cd ~/claude/genesis
git fetch origin main
git log HEAD..origin/main --oneline
git pull origin main
This gives you the same control: fetch first, review the incoming changes, then pull.
What Gets Preserved
The following files are gitignored and never overwritten by updates:
| File | Contains |
|---|---|
personalisation.md |
Your locale, output style, role, experience level, project defaults |
environment.md |
Your platform, shell, package manager, paths |
.claude/settings.local.json |
Local Claude Code permission overrides |
These files are yours. Genesis updates will never touch them.
What Gets Updated
| Component | Location |
|---|---|
| Master instructions | CLAUDE.md |
| Agents | .claude/agents/*.md |
| Skills | .claude/skills/*/SKILL.md |
| Templates | .claude/skills/genesis/templates/*.tmpl |
| References | .claude/skills/genesis/references/*.md |
| Example configs | personalisation.md.example, environment.md.example |
| Documentation | docs/, README.md, CONTRIBUTING.md |
| Settings | .claude/settings.json |
Checking for New Configuration Options
After updating, the .example files may contain new configuration options that were not present in your personal files. To check:
- Compare your
personalisation.mdwithpersonalisation.md.example - Compare your
environment.mdwithenvironment.md.example - Add any new fields you want to your personal files
You can do this manually or ask Claude to compare them for you during a session.
Previously Generated Projects
Updates to Genesis do not affect previously generated projects. Each generated project is independent; it has its own CLAUDE.md, agents, skills, and settings that were written at generation time.
If you want a generated project to benefit from newer templates or agents, you have two options:
- Regenerate: create a new project with the same name (after removing the old directory)
- Manual update: copy specific improvements from Genesis’s updated templates into the existing project
Rollback
If an update causes problems, you can revert to the previous state:
cd ~/claude/genesis
git log --oneline -5 # find the commit before the update
git reset --hard <commit> # revert to that commit
Your personalisation.md and environment.md are unaffected by rollback since they are not tracked by git.
If you are unsure which commit to revert to, look for the commit just before the most recent git pull:
git reflog
This shows the full history of HEAD movements, including the pull operation.
Update Frequency
There is no required update schedule. Update when you want new features or improvements. Genesis works perfectly well on any version; updates are purely additive.
To check whether updates are available without applying them:
cd ~/claude/genesis
git fetch origin main
git rev-list HEAD..origin/main --count
A count of 0 means you are up to date. Any other number indicates available updates.