mcpbeat

Github Repo Management

hezaohezao/github-repo-management

Clone, create, fork repos; manage remotes, releases.

1k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
117
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/HezaoHezao/poirot --skill github-repo-management

The instruction itself

11 sections, as written by the author

GitHub Repository Management

Create, clone, fork, configure, and manage GitHub repositories.

Prerequisites

  • Authenticated with GitHub (see github-auth skill)

1. Clone

# HTTPS
git clone https://github.com/owner/repo.git

# SSH
git clone [email protected]:owner/repo.git

# With gh (auto-forks if you don't have push access)
gh repo clone owner/repo

# Clone + set up remote for fork
gh repo clone owner/repo -- --origin upstream
git remote add origin https://github.com/$GH_USER/repo.git

2. Create New Repository

# With gh (creates on GitHub + clones locally)
gh repo create my-project --public --clone --description "My project"

# Private
gh repo create my-project --private --clone

# With git + curl
mkdir my-project && cd my-project && git init
curl -s -X POST \
  -H "Authorization: token $GITHUB_TOKEN" \
  https://api.github.com/user/repos \
  -d '{"name":"my-project","private":true,"description":"My project"}'
git remote add origin https://github.com/$GH_USER/my-project.git
git push -u origin main

3. Fork

# With gh (forks + clones + sets up remotes)
gh repo fork owner/repo --clone

# With curl
curl -s -X POST \
  -H "Authorization: token $GITHUB_TOKEN" \
  https://api.github.com/repos/owner/repo/forks

# Manual fork setup
git remote add upstream https://github.com/owner/repo.git
git remote set-url origin https://github.com/$GH_USER/repo.git

4. Manage Remotes

# List remotes
git remote -v

# Add remote
git remote add upstream https://github.com/owner/repo.git

# Change remote URL
git remote set-url origin [email protected]:owner/repo.git

# Remove remote
git remote remove upstream

# Sync fork with upstream
git fetch upstream
git checkout main
git merge upstream/main
git push origin main

5. Releases

# Create release with gh
gh release create v1.0.0 --title "v1.0.0" --notes "First stable release"

# Create release with assets
gh release create v1.0.0 ./dist/app.tar.gz ./dist/app.zip --title "v1.0.0"

# List releases
gh release list

# View release
gh release view v1.0.0

# Download release assets
gh release download v1.0.0 --pattern "*.tar.gz"

# With curl
curl -s -X POST \
  -H "Authorization: token $GITHUB_TOKEN" \
  https://api.github.com/repos/$OWNER/$REPO/releases \
  -d '{"tag_name":"v1.0.0","name":"v1.0.0","body":"First stable release"}'

6. Repository Settings

# With gh
gh repo edit --description "New description"
gh repo edit --enable-issues=false
gh repo edit --default-branch main

# With curl
curl -s -X PATCH \
  -H "Authorization: token $GITHUB_TOKEN" \
  https://api.github.com/repos/$OWNER/$REPO \
  -d '{"description":"New description","default_branch":"main"}'

7. Secrets (for GitHub Actions)

# With gh
gh secret set MY_SECRET --body "secret_value"
gh secret set MY_SECRET < secret_file.txt
gh secret list
gh secret delete MY_SECRET

# With curl (requires public key encryption)
# See https://docs.github.com/en/rest/actions/secrets

8. Delete Repository

# With gh (requires --yes for confirmation)
gh repo delete owner/repo --yes

# With curl
curl -s -X DELETE \
  -H "Authorization: token $GITHUB_TOKEN" \
  https://api.github.com/repos/$OWNER/$REPO

Pitfalls

  • Fork visibility: forks inherit the parent's visibility. Can't make a

private fork of a public repo (without enterprise).

  • Release tags: tags must exist before creating a release. `gh release

create` auto-creates the tag if it doesn't exist.

  • Secret encryption: API secrets require RSA encryption with the repo's

public key. Use gh secret set instead of raw curl.

  • Delete permissions: deleting a repo requires admin access + cannot be

undone.

  • Rate limits: creating many repos rapidly may hit secondary rate limits.

Add delays.

How to use it

Copy the folder

Take hezaohezao/github-repo-management from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

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.