Weekly AI-context hygiene research

AI coding tools can read everything in your repo

Offsend Radar scanned 487 open-source projects this week. 1851 sensitive files — Log Files, certificates, and .env files — were committed to 127 of them, in plain sight for any AI assistant with repository access.

Fleet snapshot

Anonymous counts across all complete scans this week. No repository names are shown.

487 repositories were scanned for AI-context hygiene.

1851 AI-context risk signals matched 21 sensitive path categories.

1% of scanned repos use a dedicated AI exclude file (2 types in use).

How to read this report

These are not confirmed leaks.

Radar uses path-level checks to detect files and folders that may become visible to AI coding tools if they are not covered by AI-specific ignore rules.

A risk signal is a file committed to the repository whose path matches a sensitive category (for example .env or *.pem). Counts are file matches at the path level — Radar never opens the files.

  • No file contents were read.
  • No secrets were collected.
  • No repository names are published without opt-in.
  • Repositories are a manually curated cohort, not a random sample — read these as directional signals, not population-level statistics.

Scanned

487
repos in this week's stats

AI-context risk signals

1851
sensitive path matches

Repos with risk signals

26%
127 of 487 repos

AI exclude-file coverage

1%
repos with a dedicated AI exclude file
Scan details
Targeted
500
Scanned
487
Scan complete
487
Skipped
0
Errors
13
Repos with risk signals
127
Generated
Nov 9, 2026, 8:14 PM UTC
Tool version
0.21.0–0.21.0
Ruleset
e634955c141dcfc6

AI-context risk signal categories

Aggregated path pattern counts — not tied to any named repository.

  • Key material (.pem, .key)Required21 repos · 84 matches
  • Environment files (.env)Required46 repos · 71 matches
  • Key FilesRequired8 repos · 12 matches
  • Secrets YamlRequired2 repos · 2 matches
  • Keepass DatabasesRequired1 repo · 1 match
  • Secrets JsonRequired1 repo · 1 match
  • npm credentials (.npmrc)Recommended31 repos · 53 matches
  • Android KeystoreRecommended14 repos · 18 matches
  • Pkcs12 P12Recommended5 repos · 18 matches
  • Auth JsonRecommended3 repos · 15 matches
  • Yarn ConfigRecommended10 repos · 13 matches
  • Firebase Client ConfigRecommended5 repos · 5 matches
  • Android Local PropertiesRecommended2 repos · 3 matches
  • Apple ProvisioningRecommended1 repo · 2 matches
  • Docker configRecommended1 repo · 2 matches
  • Pgp KeysRecommended2 repos · 2 matches
  • Log FilesInfo28 repos · 1491 matches
  • Data ExportsInfo2 repos · 40 matches
  • Backup FilesInfo8 repos · 12 matches
  • Local DatabasesInfo4 repos · 5 matches
  • Db DumpsInfo1 repo · 1 match

Trend

AI exclude files

1% of repos use a dedicated AI exclude file

These actually keep matching files out of AI context — and they are still rare.

Show 9 more exclude file types (2 in use overall)

AI context files

34% of repos ship an AI context file

Files like AGENTS.md and CLAUDE.md give AI tools project instructions — theyadd context, they do not exclude anything. They are not a substitute for an exclude file.

Fix the top risks

Patterns covering this week's most widespread categories (Environment files (.env), npm credentials (.npmrc), Certificates and PEM keys (.pem), Android keystores (.jks, .keystore)). Add them to a dedicated AI exclude file (for example .cursorignore or.claudeignore) — and to .gitignore so the files are never committed.

AI exclude rules
.env
.env.*
!.env.example
.npmrc
*.pem
*.key
certs/
*.jks
*.keystore
keystore.properties

Per-category guidance lives in the risk pattern guides.

Compared with previous report

MetricRadar #20Radar #21
Repositories scanned489487
AI exclude-file coverage1%1%
Repos with risk signals26%26%
AI-context risk signals (absolute)17721851
Risk signals per scanned repo3.63.8
Top categoryLog FilesLog Files

Named participants

Per-repository reports for maintainers who opted in. Fleet counts above stay anonymous; each card below is that repo's own scan.

No named listings this week. Maintainers can opt in via radar registry.

View all-time participants →

Check your own project

127 of 487 repos this week exposed sensitive paths to AI tools. Check yours in seconds:

Run the same local check with Offsend CLI:

brew install --cask offsend/tap/offsend-cli
offsend show
offsend prepare --dry-run

Everything runs locally. No file contents are uploaded.