.claudeignore: how it works
A .claudeignore file keeps one reviewable list of the paths Claude Code should stay out of: local secrets, build output and vendor folders. Claude Code's documented way to enforce that list is permission rules, so mirror sensitive paths as Read(...) entries under permissions.deny in .claude/settings.json. Claude Code then refuses to read those files, even when asked.
Where the file goes
./.claudeignoreRepo rootYour list of directory and file patterns Claude Code should not read, search or edit..claude/settings.jsonEnforcementDeny rules for the sensitive paths, which Claude Code enforces. Commit it so the team shares them.
What goes in it
.gitignore style.# Claude Code boundaries .env* secrets/ coverage/ *.log
.claude/settings.json.{
"permissions": {
"deny": ["Read(./.env)", "Read(./.env.*)", "Read(./secrets/**)"]
}
}Tips
- Mirror secret paths such as
.env*asRead(...)rules underpermissions.denyin.claude/settings.json, which Claude Code enforces. - Exclude large generated databases (
*.sqlite) and fixtures to keep searches fast. - Use it with
CLAUDE.md: the rules file says how to work, the deny rules say what is off limits.
.claudeignore presets (21)
Each one opens the generator with that file filled in for the stack. Change what you need, then copy or download it.
- Next.js 16 App Router
Frontend
- React 19 & Vite
Frontend
- Python FastAPI & Pydantic v2
Backend
- Supabase & PostgreSQL
Fullstack & DB
- Prisma ORM
Fullstack & DB
- Drizzle ORM
Fullstack & DB
- Go (Golang) & Fiber
Backend
- Rust & Axum
Backend
- Tailwind CSS v4
Frontend
- Vue 3 & Nuxt 4
Frontend
- SvelteKit & Svelte 5
Frontend
- Docker & CI/CD
DevOps & Tooling
- Django 6 & Ninja / DRF
Backend
- Bun & Elysia / Hono
Backend
- React Native & Expo Router
Frontend
- Flutter 3 & Riverpod / Dart
Frontend
- Kubernetes & Helm Charts
DevOps & Tooling
- Terraform & OpenTofu IaC
DevOps & Tooling
- Playwright End-to-End Testing
DevOps & Tooling
- Spring Boot 4 & Java 25
Backend
- .NET 10 & C# 14 Minimal APIs
Backend
Not sure .claudeignore is the file you need? Each AI coding tool reads its own file from its own place.
Which file do I need?Frequently asked questions
Does Claude Code enforce .claudeignore?
Claude Code documents permission rules, not .claudeignore, as the way to block file access. Keep .claudeignore as your list of excluded paths and copy the sensitive ones into permissions.deny in .claude/settings.json, for example Read(./.env) and Read(./secrets/**).
How do I stop Claude Code reading my .env file?
Add deny rules to .claude/settings.json, such as Read(./.env) and Read(./.env.*) under permissions.deny. Claude Code then refuses to read those files.