Appearance
SEC474 / MD-GH-PR-PERMISSION
SEC474 flags AI-native markdown frontmatter when allowed-tools or allowed_tools grants the exact token Bash(gh pr:*).
Why It Matters
gh pr:* bundles broad pull-request operations behind one shared permission token. Granting it directly in shared instruction frontmatter makes remote PR authority part of the default workflow instead of a narrower reviewed action.
This rule intentionally lives in the opt-in governance preset rather than the main preview lane. A shared skill may legitimately document a PR workflow, but repo-wide gh pr authority still deserves explicit review instead of reading like a headline vulnerability finding.
Trigger Shape
The rule triggers only when all of these are true:
- the file is a detected AI-native markdown instruction surface
- the path is not fixture-like
allowed-toolsorallowed_toolscontains the exact tokenBash(gh pr:*)
Clean Cases
These stay clean:
- more specific command examples such as
Bash(gh pr diff:*) - unrelated GitHub CLI permissions like
Bash(gh repo view) - fixture-like examples under test or fixture paths
Example Trigger
yaml
---
allowed-tools: Bash(gh pr:*), Read
---Safer Example
yaml
---
allowed-tools: Bash(gh pr diff:*), Read
---How To Fix
Review whether shared Bash(gh pr:*) access is really needed, or replace it with a narrower workflow-specific permission that does not grant blanket pull-request authority by default.