Skip to content

Rule Reference

SEC439lintai-ai-securitygovernancehardeningstablemarkdownwarn

AI markdown: `Bash(git clean:*)` tool grant

AI-native markdown frontmatter grants `Bash(git clean:*)` authority

Public lane
governance
Category
hardening
Provider
lintai-ai-security
Scope
per-file
Surface
markdown
Tier
stable
Severity
warn
Confidence
high
Detection
structural
Remediation
message only
How to read this lane

Shared authority and workflow policy review.

How to read this category

Least-privilege, provenance, or operational hygiene signal.

Activation Model

Preset Activation

These presets explain where this rule appears in the product experience.

Lifecycle

Stable Lifecycle Contract

State

stable

Graduation rationale

Checks AI-native frontmatter for wildcard git clean grants in shared allowed-tools policy.

Deterministic signal basis

MarkdownSignals exact frontmatter token detection for `Bash(git clean:*)` inside allowed-tools or allowed_tools.

Malicious corpus
skill-git-clean-allowed-tools
Benign corpus
skill-git-clean-allowed-tools-specific-safe
structured evidence required remediation reviewed
Canonical note

Structural stable rule intended as a high-precision check with deterministic evidence.

Nearby Signals

Related Rules

SEC439 / MD-GIT-CLEAN-ALLOWED-TOOLS

SEC439 flags AI-native markdown frontmatter when allowed-tools grants the exact token Bash(git clean:*).

Why It Matters

Blanket git clean authority lets an agent remove untracked files and directories as part of a default shared policy. In AI-native instruction frontmatter, that creates destructive cleanup power that is wider than most reviewed workflows need.

Trigger Shape

The rule triggers only when all of these are true:

  • the file is an AI-native markdown instruction surface with parsed frontmatter
  • the path is not fixture-like
  • allowed-tools or allowed_tools contains the exact token Bash(git clean:*)

Clean Cases

These stay clean:

  • more specific reviewed commands such as Bash(git clean -fd)
  • frontmatter that does not grant git clean
  • fixture-like examples under test or fixture paths

Example Trigger

md
---
allowed-tools:
  - Bash(git clean:*)
  - Read
---

Safer Example

md
---
allowed-tools:
  - Bash(git clean -fd)
  - Read
---

How To Fix

Replace Bash(git clean:*) with a narrower reviewed command pattern, or remove broad git cleanup authority from shared frontmatter entirely.