update-github-skills is an Agent Skill for Codex, Claude Code, and similar agent runtimes. It inventories, checks, and safely updates locally installed skills that came from GitHub repositories, copied repo subdirectories, zip downloads, or one-line installers.
中文文档: README.md
- Inventories local skill directories.
- Detects skills installed as direct Git repositories.
- Uses a
skill-sources.jsonmanifest for copied, zip, or curl-installed skills. - Performs dry-run update checks before writing anything.
- Backs up local skill folders before confirmed updates.
- Supports Codex, Claude Code, and generic
.agentsskill directories.
- You have many third-party GitHub skills and want to check upstream updates.
- Some skills were installed with
cp -Rand no longer have.gitmetadata. - You want to review changed files before updating local skills.
- You want a backup-first update path for beginner-friendly recovery.
This repository is a regular Agent Skill, not an MCP server. It will not appear in MCP panels and should not be verified with /mcp list. The repository also includes .codex-plugin/plugin.json so Codex plugin marketplaces can recognize and install it as a skill package.
Recommended GitHub topics:
codex-skillclaude-code-skillagent-skillskills-updatergithub-skills
Only add mcp-server if a real MCP server is added later.
- Python 3.9+ for the updater script.
- Git for checking and updating Git/GitHub-backed skills.
- GitHub network access for one-line installation and upstream checks.
curltarbashor a POSIX-compatible shell
If macOS reports a permissions issue on first install, grant your terminal access to your user directory or use local project installation.
- Windows PowerShell 5+ or PowerShell 7+
- Git for Windows
- Python 3 available as
pythonorpy
If PowerShell blocks scripts, use a process-scoped bypass:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypasscurl -fsSL https://raw.githubusercontent.com/wentAInx/update-github-skills/main/install.sh | bashInstall for Claude Code:
curl -fsSL https://raw.githubusercontent.com/wentAInx/update-github-skills/main/install.sh | bash -s -- --agent claudeInstall only in the current project:
curl -fsSL https://raw.githubusercontent.com/wentAInx/update-github-skills/main/install.sh | bash -s -- --scope localUse a fork or another branch:
curl -fsSL https://raw.githubusercontent.com/wentAInx/update-github-skills/main/install.sh | bash -s -- --repo wentAInx/update-github-skills --ref mainpowershell -NoProfile -ExecutionPolicy Bypass -Command "iwr -UseBasicParsing https://raw.githubusercontent.com/wentAInx/update-github-skills/main/install.ps1 | iex"Install for Claude Code:
iwr -UseBasicParsing https://raw.githubusercontent.com/wentAInx/update-github-skills/main/install.ps1 -OutFile install.ps1
powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1 -Agent claudeInstall only in the current project:
powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1 -Scope localgit clone https://github.com/wentAInx/update-github-skills.git
cd update-github-skills
bash install.sh --agent codexManual copy to Codex:
mkdir -p ~/.codex/skills
cp -R skills/update-github-skills ~/.codex/skills/update-github-skillsManual copy to Claude Code:
mkdir -p ~/.claude/skills
cp -R skills/update-github-skills ~/.claude/skills/update-github-skillsProject-local install:
mkdir -p ./.codex/skills
cp -R skills/update-github-skills ./.codex/skills/update-github-skillsgit clone https://github.com/wentAInx/update-github-skills.git
cd update-github-skills
powershell -ExecutionPolicy Bypass -File .\install.ps1 -Agent codexManual copy to Codex:
New-Item -ItemType Directory -Force "$env:USERPROFILE\.codex\skills" | Out-Null
Copy-Item -Recurse -Force .\skills\update-github-skills "$env:USERPROFILE\.codex\skills\update-github-skills"Windows cmd:
mkdir "%USERPROFILE%\.codex\skills"
xcopy /E /I /Y skills\update-github-skills "%USERPROFILE%\.codex\skills\update-github-skills"Add the personal marketplace:
/plugin marketplace add wentAInx/update-github-skills
Install the latest version:
/plugin install update-github-skills@latest
Install a fixed version:
/plugin install update-github-skills@0.1.0
This is a skill package, not an MCP plugin. Verify it in the skills/plugin list, not with /mcp list.
| Mode | Directory | Best for |
|---|---|---|
| Global | ~/.codex/skills/, ~/.claude/skills/, %USERPROFILE%\.codex\skills\ |
Use in every project |
| Local | ./.codex/skills/ or ./.claude/skills/ |
Use only in the current repository |
After installation, try one of these prompts in Codex or Claude Code:
$update-github-skills inventory my local skills and identify their sources
$update-github-skills check ~/.codex/skills for GitHub skill updates, but do not update yet
$update-github-skills dry-run copied skills using ~/.codex/skill-sources.json
You can also run the script directly:
python3 ~/.codex/skills/update-github-skills/scripts/github_skill_updater.py inventory --json
python3 ~/.codex/skills/update-github-skills/scripts/github_skill_updater.py check --manifest ~/.codex/skill-sources.json --jsonCopied, zip-downloaded, or curl-installed skills usually do not contain .git. Create ~/.codex/skill-sources.json:
{
"skills": {
"some-skill": {
"repo": "https://github.com/owner/repo.git",
"ref": "main",
"subdir": "skills/some-skill"
}
}
}Then run:
python3 ~/.codex/skills/update-github-skills/scripts/github_skill_updater.py check --manifest ~/.codex/skill-sources.json --jsonOn macOS/Linux, ensure the script is executable:
chmod +x install.shOr install locally inside the current project:
bash install.sh --scope localUse a temporary process-scoped bypass:
powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1Check the commands:
python3 --version
git --versionOn Windows:
py --version
git --versionCheck GitHub access or install from a local clone:
git clone https://github.com/wentAInx/update-github-skills.git
cd update-github-skills
bash install.shThe skill has no .git metadata and no manifest entry. Add repo/ref/subdir to ~/.codex/skill-sources.json.
That is expected. This project is not an MCP server. Look for it in the agent's skills or plugin list.
A directly cloned Git skill has local uncommitted changes. Back up or commit those changes before updating.
Run the one-line command again. Existing installations are moved to a timestamped .backup path.
cd update-github-skills
git pull --ff-only
bash install.sh --agent codexWindows:
git pull --ff-only
powershell -ExecutionPolicy Bypass -File .\install.ps1 -Agent codex/plugin install update-github-skills@latest