public-repo-git-gatelisted
Install: claude install-skill WardLu/skills
# Public Repository Git Gate
Treat Git commits, remote pushes, and pull requests as sequential public-content
gates. `.gitignore` is not a security boundary; inspect what Git will actually
commit or has already put under version control.
Keep checks read-only by default. Passing a check does not authorize a commit,
push, PR creation, or remote-branch update. The user must explicitly request
those actions, which must also follow the repository's branch and approval
rules.
## Run the script
Run the script from this skill directory. The three checks are not repeated
full scans: commit checks inspect the index, push checks inspect changes from
the base, and CI independently verifies the final PR head.
```bash
python3 scripts/public_repo_check.py --repo /path/to/repository --staged --require-feature-branch
```
Run the staged check before committing and the change/remote check before
pushing:
```bash
python3 scripts/public_repo_check.py --repo /path/to/repository --staged --require-feature-branch
python3 scripts/public_repo_check.py --repo /path/to/repository --changed-since origin/main --check-remote
```
Use `--all` for a full baseline when introducing the gate, changing its rule
configuration, recovering from an accidental push, or preparing a Release.
Projects can add scoped exceptions and rules with
`--config path/to/public-repo-gate.json`. Keep the default rules conservative;
document each intentionally public special resource in project configuration
instead of disabl