setup-github
Converge a GitHub repository's settings — merge hygiene, a guardrail ruleset on the default branch, Dependabot and secret scanning.
Skill by feelepxyz
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/feelepxyz-setup-github
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Shell scripts
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/setup-github
What's inside
- Skill name
setup-github- Description
- Converge a GitHub repository's settings — merge hygiene, a guardrail ruleset on the default branch, Dependabot and secret scanning. Use when the user wants branch protection or a ruleset on a repo, asks for GitHub repo housekeeping, or reports that merged branches are not being deleted.
- License
- GPL-3.0
- Instructions
- 81 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (3)
- SKILL.md
- openai.yaml · agents/
- setup-github.sh
SKILL.md (first lines)
# Set up GitHub housekeeping
`setup-github.sh` is the skill. It probes what the repository already has and
converges the items the user picks.
Yours is the one job the script cannot do: getting the user's confirmation.
These settings live on GitHub, not in the repo, so everyone with access sees
them the moment they land — `--apply` therefore refuses to imply a set.
## Run it
bash ~/.agents/skills/setup-github/setup-github.sh
Run through `bash` — skills install without the exec bit. No flags probes and
prints the item table; `--apply` converges; `--help` lists the modes, the flags
and the item ids.
`--repo=owner/name` acts on a repo you are not sitting in. `--force` adds the
ruleset alongside a foreign one that already governs the default branch.
## The main line
1. **Plan.** Run the script with no flags.
2. **Confirm.** Relay the item table verbatim — the user is choosing from it —
then ask one `AskUserQuestion` with three options: _Accept recommended_,
_Customize items_, _Skip GitHub_. To customize, follow up with a multi-select
of the ids, recommended ones first.
3. **Apply.** `--apply --accept`, or `--apply --items=<ids>`.
4. **Verify.** The script re-reads the repo and prints an `achieved[]` table.
Report it; a row that did not reach its target is a failure.
Done when step 4 has actually been run, not merely suggested. Nothing here needs
committing — say so, rather than leaving the user looking for a diff.
**Apply is declarative per item, convergent overall.** It writes only the items
you name and leaves the rest untouched; it never turns a setting off.
## Four facts worth not re-deriving
**Signing is deliberately not required.** The ruleset carries `deletion` and
`non_fast_forward` — nothing else. Adding `required_signatures` would gate agent
commits on a signing key being present, which is the opposite of what this setup
is for. If the repo also has classic protection requiring signatures, the script
says so: classic and rulesets both enforce, and the stricter one wins.
**Rulesets, not classic branch protection.** Classic protection needs a paid plan
on a private repo; rulesets work on every repo this account owns. Classic
protection that already exists is reported in full and **never touched** —
removing it is the user's call, not `--apply`'s.
**`unknown` is not `off`.** Without admin, the API omits `security_and_analysis`
and 404s both Dependabot endpoints, which looks exactly like those features being
disabled. The script reports `unknown` instead of proposing changes it cannot
verify. Relay that distinction rather than flattening it to "off".
**Ownership is the ruleset's name.** Rulesets carry no comment field, so
`default-branch-guardrails` is the only handle this skill has. A ruleset by that
name is treated as ours and converged; any other one reaching the default branch
blocks `--apply` until the user chooses `--force`.
## When it reports an error
Every error carries `cause:` and `help:` — act on the `help:` line. The ones you
will actually hit:
- **no admin permission** — `--plan` still works and reports read-only. Nothing
short of the user getting admin will change that.
- **a foreign ruleset governs the default branch** — a refusal, and a correct
one. Show the user what it is and let them choose `--force`.
- **`gh` not found / not logged in** — `brew install gh`, then `gh auth login`.
`github: skipped — no github remote` is not an error. The repo simply has no
GitHub side to converge; the exit code is 0.
## Boundary
Converging an existing repo's settings is the whole job. Creating the repository,
authoring workflows, changing org-level settings, and removing classic branch
protection happen when the user asks.From feelepxyz/dotfiles, GPL-3.0.
More from feelepxyz/dotfiles
- 0.563score
setup-worktrunk
feelepxyz
Set up, change, or repair a repository's worktrunk hooks so a new worktree opens a herdr workspace with the agent and dev servers already running.
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
setup-git-hooks
feelepxyz
Set up, change, or repair a repository's git hooks with prek.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
commit
feelepxyz
Commit the working tree with a generated Conventional Commits message, then name the next step.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
mission
feelepxyz
Orchestrate projects too large or complex for one reliable agent context.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
pr
feelepxyz
Open a pull request for the current branch, watch its checks, and land it — squash, rebase, run hooks, push, then merge and clear the worktree away.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
tdd
feelepxyz
Implement or change software through a focused test-driven loop.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
add-dotfiles-skill
feelepxyz
Scaffold a new personal skill in this dotfiles repo (skills/custom/) and install it into Claude/Codex/pi via npx skills.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
branch
feelepxyz
Land on a branch worth working on — fetch, cut off the fresh default, carry uncommitted work across, or report the branch already here.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
setup-repo
feelepxyz
Set a repository up across all three areas — git hooks, worktrunk and GitHub housekeeping — in one pass and one commit.
SkillBFreshness: B★ 2Claude Code +9 - 0.554score
shape
feelepxyz
Turn a request into a compact contract — the observable destination, the implementation brief, and the validation contracts that prove it.
SkillBFreshness: B★ 2Claude Code +9 - 0.552score
minto
feelepxyz
Answer in Minto pyramid order — conclusion first, then the arguments that carry it, then the evidence.
SkillBFreshness: B★ 2Claude Code +9 - 0.551score
hunk
feelepxyz
Open the working diff, last commit, or branch range in the Hunk terminal viewer — and with `auto`, review it inline.
SkillBFreshness: B★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 3
- Open issues
- 0
- Last commit (this folder)
- Jul 29, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- GPL-3.0
- Repository
- github.com/feelepxyz/dotfiles
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from feelepxyz
- 0.563score
setup-worktrunk
feelepxyz
Set up, change, or repair a repository's worktrunk hooks so a new worktree opens a herdr workspace with the agent and dev servers already running.
SkillBFreshness: B★ 2Claude Code +9 - 0.563score
setup-git-hooks
feelepxyz
Set up, change, or repair a repository's git hooks with prek.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
commit
feelepxyz
Commit the working tree with a generated Conventional Commits message, then name the next step.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
mission
feelepxyz
Orchestrate projects too large or complex for one reliable agent context.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
pr
feelepxyz
Open a pull request for the current branch, watch its checks, and land it — squash, rebase, run hooks, push, then merge and clear the worktree away.
SkillBFreshness: B★ 2Claude Code +9 - 0.557score
tdd
feelepxyz
Implement or change software through a focused test-driven loop.
SkillBFreshness: B★ 2Claude Code +9
Cite this page
setup-github skill. Agent Mart. https://agentmart.dev/skills/feelepxyz-setup-github (last updated 2026-10-24)