Sync the current branch in one pass — commit the working tree as one commit per logical change (in the host repo's commit format, or the super-board writing standard), gate Supabase schema changes, merge-pull, resolve conflicts hunk by hunk, then push without force. Use when the user runs /git-sync or says "git-sync", "sync", "commit and push", "pull and push", or "sync my branch".
npx skills add https://github.com/EricTechPro/super-board --skill git-sync
Commit what is in the working tree, pull, push, report. One step per line.
Stop and tell the user when a step says stop. NEVER force push, rebase shared history, or
skip a hook (--no-verify).
git status, git branch --show-current and git rev-parse --abbrev-ref @{upstream}.git fetch and git rev-list --left-right --count HEAD...@{upstream} for ahead/behind.(.git/MERGE_HEAD, .git/rebase-merge, .git/rebase-apply, .git/CHERRY_PICK_HEAD).
git diff, git diff --staged, untracked files) and group it into logicalchanges. One change, one commit.
git add -- <path>…). NEVER git add -A, git add .or git commit -a.
.env* (except .env.example), keys (*.pem, *.key, id_rsa*),credential or token files, or a diff line that holds a key. Stop and warn, naming the file.
you can't explain from this conversation): leave it unstaged and list it in the report.
supabase/.--no-verify.
Commit format. The host wins.
AGENTS.md, CLAUDE.md or CONTRIBUTING.md defines a commit format: follow it(for example #N: type: description).
(.claude/skills/super-board/references/writing-standard.md): emoji, [type], scope,
subject, 1–4 bullets, Closes #N when the commit finishes a ticket.
Runs only when a commit group touches supabase/ (migrations, schema, functions).
supabase skill is installed: follow its "Making and Committing Schema Changes" sectionand skip the rest of this list.
supabase migration new <name>names it (supabase/migrations/<timestamp>_<name>.sql). A schema edit with no migration is
a stop.
supabase migration list --local.supabase db advisors (or the Supabase MCP get_advisors) when available.git pull --no-rebase. Merge, never rebase.resolving-merge-conflicts skill when it is installed.-X ours, -X theirs, git checkout --ours/--theirs on a whole file, or deletea side to make the conflict go away.
host's AGENTS.md, CLAUDE.md or package.json documents them.
git commit --no-edit.git push.git push -u origin <branch>.--force or --force-with-lease.main, master, production, or therepo's default from gh repo view --json defaultBranchRef): push only after the user says
yes in this conversation. Otherwise offer a branch and a PR instead.
Keep it short:
Committed <sha> <subject>
<sha> <subject>
Pulled <N> commits (<conflicts resolved: N files | no conflicts>)
Pushed <N> commits to <remote>/<branch>
Left out <path> — <why>
Supabase <advisors clean | N warnings | skipped: why>
Drop the lines that do not apply.
Take erictechpro/git-sync from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.