Sync all git repos - my-life top repo and spaces/ projects
Synchronize all git repositories: the top-level my-life repo and the spaces/ projects.
/git-sync # Check status of all repos and branches
/git-sync --pull # Pull updates for all branches
/git-sync --push # Push local commits for all branches
/git-sync --clone # Clone missing repos
This skill uses a Python script for reliable validation:
python .claude/skills/git-sync/scripts/sync.py --check # Status report
python .claude/skills/git-sync/scripts/sync.py --pull # Pull behind branches
python .claude/skills/git-sync/scripts/sync.py --push # Push ahead branches
python .claude/skills/git-sync/scripts/sync.py --clone # Clone missing repos
python .claude/skills/git-sync/scripts/sync.py --json # JSON output
python .claude/skills/git-sync/scripts/sync.py --suggest-additions # YAML for untracked repos
Run the script from the my-life repo root directory.
code: path exists in spaces/remote: in index--suggest-additions============================================================
GIT SYNC REPORT
============================================================
## Top-Level Repo (my-life)
my-life (1 branch)
✓ main - Up to date
## Issues
missing-repo
Status: missing
Directory does not exist
Remote: https://github.com/user/repo.git
## Repositories
coordinatr (2 branches)
✓ main - Up to date
↑ feature/001 - 3 commits to push
yourbench (1 branch)
! main - 2 uncommitted files
## Not in Index
? django-tutorial
Path: spaces/django-tutorial
Remote: https://github.com/user/django-tutorial.git
------------------------------------------------------------
SUMMARY
------------------------------------------------------------
Top-level repo: 1 (main: up to date)
Indexed repos: 15 (14 ok, 1 missing)
Remote-only: 6
Not in index: 2
Branches ahead: 1
Branches behind: 0
Branches dirty: 1
Branches diverged:0
Local-only: 0
| Symbol | Meaning | |--------|---------| | ✓ | Up to date | | ↓ | Behind remote (can pull) | | ↑ | Ahead of remote (can push) | | ↕ | Diverged (manual merge needed) | | + | Local only (no remote tracking) | | ? | Not in index | | ! | Dirty (uncommitted changes) | | ✗ | Error (check manually) |
Use --suggest-additions to get YAML:
python .claude/skills/git-sync/scripts/sync.py --suggest-additions
Output:
# Add to CLAUDE.md Projects Index:
- name: django-tutorial
code: spaces/django-tutorial/
remote: https://github.com/user/django-tutorial.git
branch: main
status: active # or: on-hold, archived, experiment
| Error | Resolution | |-------|------------| | Clone fails | Check network, SSH keys, permissions | | Remote mismatch | Update CLAUDE.md or fix remote | | Diverged branches | Manual merge/rebase required | | Missing remote | Repo may be local-only, skip sync |
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer