Appearance
SEC504 / CLAUDE-GH-REPO-CREATE-PERMISSION
SEC504 flags shared Claude settings when permissions.allow grants blanket GitHub repository-creation authority.
Why It Matters
gh repo create provisions new remote repositories. In shared committed settings that is a high-agency mutation capability that should usually stay narrower than a default team-wide permission grant.
Trigger Shape
The rule triggers only when all of these are true:
- the file is a detected Claude settings surface
- the path is not fixture-like
permissions.allowcontains the exact tokenBash(gh repo create:*)
Clean Cases
These stay clean:
- read-only repository commands such as
Bash(gh repo view:*) - settings files that do not grant blanket repository creation
- fixture-like examples under test or fixture paths
Example Trigger
json
{
"permissions": {
"allow": ["Bash(gh repo create:*)", "Read(*)"]
}
}Safer Example
json
{
"permissions": {
"allow": ["Bash(gh repo view:*)", "Read(*)"]
}
}How To Fix
Remove shared gh repo create permissions or replace them with narrower reviewed subcommands that keep repository creation under explicit user control.