agentleFS
nainishshafinainishshafi/developer-productivity-skills/.github/skills/sync-github-forks/SKILL.md

sync-github-forks

Skill1 starsChanged 4 days agoMITView on GitHub

Use when the user asks to "sync github forks", "sync forks", "pull all my forks", or wants to clone and pull all their GitHub forked repositories automatically across Windows, Linux, or macOS.

  • Reads credentials

The file

We split this skill into the rules it gives an agent

2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Run gh auth status — confirm you are logged in.

    line 59
  2. Distinctive:

    Run the appropriate bundled script for your OS (see Usage above).

    line 60

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Sync GitHub Forks

Sync all GitHub forks for the authenticated user by cloning missing repositories and pulling existing ones via the gh CLI.

IMPORTANT: Both cross-platform scripts are already bundled with this skill. Do NOT create new script files. Detect the OS and run the bundled script:

  • Windows (PowerShell) → .github/skills/sync-github-forks/scripts/sync-forks.ps1
  • Linux / macOS (Bash) → .github/skills/sync-github-forks/scripts/sync-forks.sh

Prerequisites

  • gh CLI installed and authenticated (gh auth login)
  • git on PATH
  • Linux / macOS only: jq on PATH (Windows PowerShell uses built-in ConvertFrom-Json)
  • SSH key configured with GitHub (for clone/pull via SSH)

Usage

Windows (PowerShell):

# Optional: override clone location (default: ~\git-repos)
$env:BASE_DIR = "$env:USERPROFILE\code"

pwsh .github/skills/sync-github-forks/scripts/sync-forks.ps1

Linux / macOS (Bash):

# Optional: override clone location (default: ~/git-repos)
export BASE_DIR=~/code

bash .github/skills/sync-github-forks/scripts/sync-forks.sh

What the Script Does

  1. Checks required CLI tools (gh and git, plus jq on Linux/macOS).
  2. Derives your GitHub username automatically via gh api user.
  3. Paginates GET /user/repos?type=forks&per_page=100&page=N via gh api until all forks are fetched.
  4. For each fork:
    • Local directory exists → git pull origin <current-branch> (fast-forward).
    • Local directory missing → git clone <ssh_url> $BASE_DIR/<name>.
  5. Prints a final summary: Done — cloned N, pulled N, failed N.

Key Decisions

  • gh CLI handles authentication — no GITHUB_TOKEN environment variable required.
  • Username is derived at runtime from gh api user — no hardcoded configuration.
  • SSH clone URLs are used so no token is embedded in the remote URL.
  • Pagination ensures all forks are fetched beyond the 100-repo API limit.

Verification

  1. Run gh auth status — confirm you are logged in.
  2. Run the appropriate bundled script for your OS (see Usage above).
  3. Confirm repositories are cloned or updated in BASE_DIR.

Additional Resources

  • references/sync-github-forks-reference.md — Pagination mechanics, SSH vs HTTPS troubleshooting, and cron/Task Scheduler automation.
  • scripts/sync-forks.ps1 — Windows PowerShell implementation.
  • scripts/sync-forks.sh — Linux / macOS Bash implementation.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.