repo-standardizer
Makes your agent organize a GitHub repository. It sets up labels, templates, and other tools to improve the project.
What it does
This AI agent helps organize and improve the appearance of GitHub repositories. It adds or updates configuration and documentation files, such as issue forms, PR templates, labels, and CI workflows, without changing the code itself.
When to use it
- ✓When creating a new repository and needing initial setup.
- ✓When an existing repository looks messy or incomplete.
- ✓To standardize the look and rules across multiple repositories.
Example of what to ask your AI
“Organize this GitHub repository, adding templates, labels, and CI workflows.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
It checks your repository's current state, identifies what's missing or outdated, and applies standard configurations. It does this safely, without modifying your project's actual code.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add github/awesome-copilot --skill repo-standardizerOr download just the file:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/repo-standardizer/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
GitHub Repo Standardizer
Detect a repository's current state, then polish its surface: issue forms, PR template, label taxonomy, CI, CODEOWNERS, rulesets, docs. Works on repo metadata and config files only — code logic is never touched. Idempotent — safe to re-run; fills gaps and reconciles drift without duplicating or clobbering.
When to use
- User says "standardize / tidy up / professionalize this repo"
- A new repo was just created and needs templates, labels, CI, and rules from day one
- A repo looks bare: no templates, no labels, no CI, no branch protection
Preflight (mandatory, in order)
Requires:
ghCLI (authenticated),git,jq,python3— verify they exist before starting (which gh git jq python3).
1. Authenticate — check gh login first
gh auth status 2>/dev/null || echo "NOT_LOGGED_IN"
- Logged in → continue; print
gh api user -q .loginso the user knows which account will act. - Not logged in → STOP. Tell the user (do not guess):
- Run
gh auth login(web/device flow), or - Export a token:
export GH_TOKEN=ghp_xxx— needsrepo,workflow(for CI files) and, for org repos,admin:org(oradmin:repo_hook/ org membership admin) scopes.
- Never paste tokens into chat, logs, or files. If the user pastes a token in chat, advise them to revoke it and re-issue.
- If
gh auth loginis impossible in this environment (headless), suggestgh auth login --with-tokenreading from a file the user created.
- Run
Verify the acting account can write to the target:
# user repos: no extra check needed beyond token scopes
# org repos: must be a member/admin of the org
gh api "orgs/ORG/memberships/$(gh api user -q .login)" -q .role 2>/dev/null || echo "NO_ORG_ACCESS"
admin/member→ OK.404→ stop and ask the user to add the account to the org first.
2. Detect repository type
gh repo view OWNER/REPO --json name,owner,visibility,defaultBranchRef,isArchived,isFork \
-q '{name:.name, ownerType:.owner.type, visibility:.visibility, defaultBranch:.defaultBranchRef.name, archived:.isArchived, fork:.isFork}'
| Field | Meaning | Consequence |
|---|---|---|
ownerType |
User = personal, Organization = org |
Org repos can also use org-level rulesets; both support repo-level rulesets |
visibility |
PUBLIC / PRIVATE / INTERNAL |
Private: skip public-facing docs pressure, keep CI secrets minimal; public: README badges + CONTRIBUTING/SECURITY matter |
archived / fork |
Read-only / fork | Skip write modules; report why |
If the repo was not explicitly named by the user, confirm before touching an org or private repository.
3. Audit current state
gh label list --repo OWNER/REPO --limit 200
gh api repos/OWNER/REPO/contents/.github -q '.[].path' 2>/dev/null || echo "no .github dir"
gh api repos/OWNER/REPO/contents/.github/workflows -q '.[].name' 2>/dev/null || echo "no workflows"
gh api repos/OWNER/REPO/rulesets -q '.[] | {name:.name, enforcement:.enforcement}' 2>/dev/null || echo "no rulesets"
gh api repos/OWNER/REPO/branches -q '.[].name' 2>/dev/null
for f in README.md CONTRIBUTING.md SECURITY.md LICENSE .gitignore; do
gh api "repos/OWNER/REPO/contents/$f" -q .name 2>/dev/null || echo "missing: $f"
done
4. Detect test framework (for CI module)
Check for these signals (first match wins):
gh api repos/OWNER/REPO/contents/package.json -q .name 2>/dev/null # node → templates/ci-node.yml
gh api repos/OWNER/REPO/contents/pyproject.toml -q .name 2>/dev/null # python → templates/ci-python.yml
gh api repos/OWNER/REPO/contents/go.mod -q .name 2>/dev/null # go → templates/ci-go.yml
gh api repos/OWNER/REPO/contents/Cargo.toml -q .name 2>/dev/null # rust → templates/ci-rust.yml
No signal → propose the generic CI (or ask the user whether CI is wanted at all).
5. Ask about language (before planning)
- Ask the user which language
CONTRIBUTING.mdand the PR template should be written in (default: English, or the project's primary language for local projects). Translate the templates accordingly when generating — never assume a language. - (README languages are asked separately in Module F.)
6. Ask about automation (decides the Governance labels)
Ask the user whether the repo has any automation bots or AI writers running on it — e.g. dependabot, a Stale bot, ClawSweeper, or an AI coding agent that auto-files PRs / auto-fixes issues.
…
FAQ
What does 'idempotent' mean?
It means you can run the agent multiple times, and it will always produce the same final result without causing issues or duplicating information.
Does it change my project's code?
No, it only modifies repository configuration and documentation files, like labels, templates, and CI workflows. Your project's code remains untouched.
Do I need to install anything?
Yes, you'll need to have a few tools installed on your computer, such as `gh` (the GitHub command-line tool), `git`, `jq`, and `python3`, and be logged into your GitHub account.
Details
Original description by the author
Polish any GitHub repository's surface — labels (emoji rating tiers, P0–P3 priority, impact severity), issue forms, PR template, CI workflows, CODEOWNERS, rulesets, docs. Repo meta & config only — no code logic touched. Use when creating a new repo or polishing an existing one.
repo: github/awesome-copilot
Popularity
- GitHub stars
- 40k
- Ranking position
- #5342
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
acquire-codebase-knowledge
Helps your agent understand and document an existing code project. It's useful for onboarding new people or getting an overview of the architecture.
github/awesome-copilot
acreadiness-assess
Enables your agent to assess a project's readiness for AI and generate a report. It's useful for understanding how well a project is prepared to use AI tools.
github/awesome-copilot
acreadiness-generate-instructions
Helps your agent create instructions for AI tools based on an assessment. It's useful for improving how AI interacts with code and closing identified gaps.
github/awesome-copilot
acreadiness-policy
Enables your agent to help define or apply policies for AI project assessment. It's useful for standardizing how projects are evaluated and ensuring compliance.
github/awesome-copilot
Similar skills
benchmark-optimization-loop
Has your agent improve something's speed in a measured way. It tests multiple versions and chooses the fastest one that still works correctly.
affaan-m/ECC
change-impact
Helps your agent analyze the impact of code changes before making them. It compares the planned vs. actual results afterward, covering paths, data, tests, and documentation. Useful for risky or system-wide changes.
affaan-m/ECC
click-path-audit
Lets your agent trace all user buttons and interactions to find bugs. It finds issues where functions seem to work alone but fail together. Useful when bugs persist even after debugging.
affaan-m/ECC