Agent skill

Repo Sync

by davidondrej in davidondrej/skills

Manage automatic Git syncing on macOS with repo-sync. An agent skill from davidondrej/skills.

MITAuto-check: warningsDevelopment

Install Repo Sync

The automated check flagged lines worth reading first. See the safety section below.

skills CLI
$ npx skills add davidondrej/skills --skill repo-sync -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install davidondrej/skills repo-sync --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/davidondrej/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ops-and-setup/repo-sync .claude/skills/repo-sync && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
repo-sync
GitHub stars
4.1k
Token cost
~1.3k tokens
SKILL.md length
641 words
Files
3 (incl. references)
Skills in repo
51
Repo updated
First seen
Licence
MIT

At a glance

Manage automatic Git syncing on macOS with repo-sync. An agent skill from davidondrej/skills.

  • Explicitly invokes /repo-sync
  • SKILL.md covers What it does, Check first, Start syncing and Stop syncing one repo, plus 3 more sections
  • Calls brew

What it does

Repo Sync is an agent skill from davidondrej/skills. Manage automatic Git syncing on macOS with repo-sync. Use only when the user explicitly invokes /repo-sync.

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `agents/openai.yaml` and `references/operations.md`).

It sits in Development. It works with Git and macOS. The repository describes itself as: access to david ondrej's personal agent skills. The licence is MIT.

When your agent uses it

  • Explicitly invokes /repo-sync

Example prompts

  • “/repo-sync”

What it can do on your machine

Read from SKILL.md and the folder at commit 7874889. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • brew

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Repo Sync loads about 1.3k tokens when it runs, and up to ~3.5k if it reads all its reference files. Until then it costs about 29 tokens; SKILL.md has 641 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~29
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: warnings

The automated check found patterns that need a careful read before installing.

  • WarningMentions a credentials file (SSH keys, cloud or package-manager tokens)SKILL.md:96
    ames such as `.env`, private keys, and `.npmrc`, but does not scan contents; ordinary filenames can hide secrets. Normal

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from davidondrej/skills at commit 7874889, republished under its MIT licence (© davidondrej). 641 words, ~1,349 tokens.

Download SKILL.mdSave it as .claude/skills/repo-sync/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
repo-sync
description
Manage automatic Git syncing on macOS with repo-sync. Use only when the user explicitly invokes /repo-sync.
disable-model-invocation
true

repo-sync

What it does

Sync shared Git repos for team documents, notes, skills, and context on macOS. Complex software projects and pull request workflows are outside scope.

By default, after 60 seconds without local edits, repo-sync commits eligible non-ignored changes (including staged edits, renames, and deletions), rebases, and pushes. It checks remote changes every 60 seconds and starts at login without an AI agent.

Only the remote's default branch syncs (origin/HEAD, falling back to main). Feature branches and detached HEAD are skipped; branches are never switched.

Check first

sh
command -v repo-sync
repo-sync help

Installed help is the command contract. Older binaries may lack skill, remove, status, or version; run repo-sync version when listed. Installing the skill does not install or upgrade the binary.

Default config: ~/Library/Application Support/repo-sync/config.json. Check ProgramArguments in ~/Library/LaunchAgents/com.vectal-labs.repo-sync.plist for a custom path and use the selected config throughout. Flags precede positional arguments.

Read references/operations.md for custom settings, unsupported commands, legacy removal, upgrades, or failed checks.

Start syncing

A request to sync a named repo authorizes automatic commits and pushes. Mention that staged changes are included; do not ask again when already authorized.

For a fresh installation:

sh
brew install --cask vectal-labs/tap/repo-sync
repo-sync setup
repo-sync status

Homebrew must already be available; it installs Git and GitHub CLI. Setup checks identity/access and service health, and preserves existing registrations. Select only requested repos.

For an existing local clone:

sh
repo-sync add "/absolute/path/to/notes"
repo-sync status

add defaults to the current repo, which needs an origin remote. When asked to clone a remote repo, check the destination, clone, then add it. Do not overwrite folders, create remote repos, or change remotes without authorization.

For a custom config:

sh
repo-sync add --config "/absolute/path/to/config.json" "/absolute/path/to/notes"
repo-sync status --config "/absolute/path/to/config.json"

add may save registration despite restart failure. Check fresh status; if setup is needed, use the same config. Report registration separately from active syncing when readiness fails.

Stop syncing one repo

When installed help lists remove:

sh
repo-sync remove "/absolute/path/to/notes"
repo-sync status
sh
repo-sync remove --config "/absolute/path/to/config.json" "/absolute/path/to/notes"
repo-sync status --config "/absolute/path/to/config.json"

remove defaults to the current repo. For missing or moved folders, use the old configured absolute path.

Removal unregisters the repo and restarts the matching service. Files, history, local work, and pushed data remain; teammates' syncing is unaffected. In-progress Git operations may finish during shutdown.

Verify registration is absent and the service applied the change. Removing the last repo leaves an empty running service. With no background service, only config changes; manually started repo-sync run processes still need restarting.

Without remove, follow Legacy removal in the reference. Do not uninstall or delete the clone instead.

Show full SKILL.md (255 more words)Show less

Install or maintain this skill

When help lists skill, use repo-sync skill install, then repo-sync skill status. The binary bundles the skill and references; no checkout or download is needed. Setup also offers installation. Start a new agent session afterward.

Homebrew upgrades refresh unchanged managed copies. After Go upgrades, rerun setup or repo-sync skill refresh. repo-sync skill uninstall removes unchanged managed copies, preserving customized folders, the program, and syncing service. See Agent skill installation in the reference for destinations and conflicts.

Uninstall everything

Run repo-sync uninstall only on request. After confirmation, it removes the service, settings, logs, cache, program, and unchanged managed skills. Customized skills, repositories, Git history, and shared Git credentials remain. --keep-binary retains the program; --yes skips the prompt when already authorized.

Safety and verification

  • Filename protection blocks names such as .env, private keys, and .npmrc, but does not scan contents; ordinary filenames can hide secrets. Normal syncing can unstage blocked files.
  • Use repo-sync allow only when publishing that file is explicitly authorized.
  • Conflicts preserve local commits, abort repo-sync's own rebase, and retry. No automatic conflict resolution or force-push; one failing repo does not block others.
  • Do not reset history, switch branches, delete lock files, or override secret protection just to clear an error.
  • There is no pause, resume, or sync now command. Check help before using any command.
  • Check exit codes and fresh status; a running service can still have repo failures. Do not create verification commits or push test files without authorization.
  • Briefly report the repo, action, verification, and remaining failures.

© davidondrej, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in skills/ops-and-setup/repo-sync of davidondrej/skills.

  • SKILL.md
  • agents/openai.yaml
  • references/operations.md

Open the folder on GitHubat commit 7874889

Compare with similar skills

Repo Sync next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Repo Sync compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Repo Sync this skilldavidondrej/skills4.1k—~1.3kAutomated safety check: WarnMIT
Build Px4 macOSPX4/PX4-Autopilot13k—~1.1kAutomated safety check: PassBSD-3-Clause
Pulse Releasequnqin24/Pulse521—~1.3kAutomated safety check: PassApache-2.0
Git Worktree Setupk8zdev/k8z155—~930Automated safety check: PassNone
Tk Impact Analysistonkeeper/tonkeeper-web444—~3.7kAutomated safety check: PassApache-2.0
Mori Agent Bridgevaayne/mori303—~1.7kAutomated safety check: PassMIT

Similar skills

  • Build Px4 macOS

    PX4/PX4-Autopilot

    Build PX4 board firmware on macOS in the px4-dev Docker container, including git worktrees, and stage commit-labeled artifacts without flashing hardware.

    13k GitHub stars~1.1k tokensUpdated today
    DevelopmentAuto-check passed
  • Pulse Release

    qunqin24/Pulse

    Release a new Pulse version end to end — checks, bilingual CHANGELOG entry, VERSION, tag, the release workflow, syncing main, and the issue replies that go with it.

    521 GitHub stars~1.3k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Automate git worktree creation and copy private files (not tracked in git) to new workdirs.

    155 GitHub stars~930 tokensUpdated 3 mo ago
    DevelopmentAuto-check passed
  • Tk Impact Analysis

    tonkeeper/tonkeeper-web

    Analyze QA regression impact for Tonkeeper Web by comparing the current branch with the relevant release tag, reviewing sources/Web/regress.txt, and recommending test blocks, missing coverage, extra…

    444 GitHub stars~3.7k tokensUpdated 8 days ago
    DevelopmentAuto-check passed
  • Use Mori CLI to enable agent-to-agent communication and coordination across Mori-managed panes.

    303 GitHub stars~1.7k tokensUpdated 2 mo ago
    DevelopmentAuto-check passed
  • Gridbash Panes

    jasonsuhari/gridbash

    Coordinate with sibling agent panes from inside a GridBash grid — list panes and their roles, read what a pane is currently doing, prompt one pane or every other pane, and rename pane titles so the…

    134 GitHub stars~1.5k tokensUpdated yesterday
    DevelopmentAuto-check passed

More from davidondrej/skills

All 51 skills in this repo
  • Nagent

    davidondrej/skills

    Launch a new bb worker thread with the right project, model, worktree, and task brief.

    4.1k GitHub stars~1.7k tokensUpdated 2 days ago
    Auto-check: notes
  • Browser Harness

    davidondrej/skills

    Direct browser control via CDP. An agent skill from davidondrej/skills.

    4.1k GitHub starsUsed in 2 repos~3k tokens
    Auto-check passed
  • Persistent Localhost

    davidondrej/skills

    Manage persistent dev servers, APIs, and other local processes on a port using macOS LaunchAgents.

    4.1k GitHub stars~618 tokensUpdated 2 days ago
    Auto-check passed
  • Reset Cursor Acp

    davidondrej/skills

    Reset a stuck Cursor ACP thread in <chat-system and reload its configuration.

    4.1k GitHub stars~728 tokensUpdated 2 days ago
    Auto-check passed
  • Anti Sleep

    davidondrej/skills

    Keep a Mac awake for a set duration or while a process runs.

    4.1k GitHub stars~640 tokensUpdated 2 days ago
    Auto-check: warnings
  • Bb CLI

    davidondrej/skills

    Use this when controlling bb. An agent skill from davidondrej/skills.

    4.1k GitHub stars~823 tokensUpdated 2 days ago
    Auto-check passed

Works with

Categories

Questions about Repo Sync

What does Repo Sync do?

Manage automatic Git syncing on macOS with repo-sync. An agent skill from davidondrej/skills. Repo Sync is an agent skill from davidondrej/skills. Manage automatic Git syncing on macOS with repo-sync.

When should I use Repo Sync?

Repo Sync fits situations like: explicitly invokes /repo-sync.

How do I install Repo Sync in Claude Code?

Run `npx skills add davidondrej/skills --skill repo-sync -a claude-code`. Or copy the skill folder (skills/ops-and-setup/repo-sync in davidondrej/skills) into .claude/skills/repo-sync in your project. Claude Code loads it when a task matches its description.

How do I install Repo Sync in Codex?

Run `npx skills add davidondrej/skills --skill repo-sync -a codex`. Or copy the skill folder (skills/ops-and-setup/repo-sync in davidondrej/skills) into .agents/skills/repo-sync in your project. Codex loads it when a task matches its description.

Can I use Repo Sync in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add davidondrej/skills --skill repo-sync -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/repo-sync, .gemini/skills/repo-sync, .github/skills/repo-sync and .opencode/skills/repo-sync in your project.

What does Repo Sync need to run?

Going by SKILL.md and its folder, Repo Sync needs the command-line tools its instructions call (brew).

Does Repo Sync access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Repo Sync safe to install?

Our automated static check of SKILL.md flagged 1 warning(s): mentions a credentials file (ssh keys, cloud or package-manager tokens). Read the flagged lines before installing; the check is not a guarantee either way.

What licence does Repo Sync use?

Repo Sync is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Repo Sync use?

About 1.3k tokens (SKILL.md is roughly 5.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.1k tokens, read only when the agent opens those files.

What are the alternatives to Repo Sync?

Skills that share tags, products or a category with Repo Sync: Build Px4 macOS (PX4/PX4-Autopilot, 13k stars), Pulse Release (qunqin24/Pulse, 521 stars), Git Worktree Setup (k8zdev/k8z, 155 stars) and Tk Impact Analysis (tonkeeper/tonkeeper-web, 444 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Repo Sync?

davidondrej (a GitHub user) maintains it in davidondrej/skills, which has 4,112 GitHub stars. The repository holds 51 skills in this directory. The repository was last updated on October 8, 2026.

Source: davidondrej/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.