Docs/Reference/File Exclusion Patterns

File Exclusion Patterns

Central reference for file exclusion patterns across Cadence analysis

File Exclusion Patterns Reference

This document serves as the single source of truth for file exclusion patterns used in Cadence analysis. These patterns prevent analysis of files that don't require scanning and improve performance.

Default Excluded Files

PatternTypePurposeReason
node_modules/**DirectoryJavaScript/TypeScript dependenciesGenerated code, not user-written
dist/**DirectoryCompiled/bundled outputGenerated code
build/**DirectoryBuild artifactsGenerated code
.git/**DirectoryGit metadataNot source code
.envFileEnvironment variablesSecrets and sensitive data
.env.*FilesEnvironment presetsSecrets and sensitive data
*.lockFilesDependency lock filesGenerated, verbose
package-lock.jsonFilenpm lock fileGenerated, unreviewed code
yarn.lockFileYarn lock fileGenerated, unreviewed code
pnpm-lock.yamlFilepnpm lock fileGenerated, unreviewed code
.gitDirectoryGit directoryMetadata, not source code
.hgDirectoryMercurial directoryMetadata, not source code
.svnDirectorySubversion directoryMetadata, not source code
__pycache__/DirectoryPython cacheGenerated
*.egg-info/DirectoryPython metadataGenerated
.pytest_cache/Directorypytest cacheGenerated
venv/DirectoryPython virtual environmentDependencies
.venv/DirectoryPython virtual environmentDependencies
vendor/DirectoryPHP dependenciesGenerated code
.cache/**DirectoryCache directoriesTemporary data
.tmp/**DirectoryTemporary filesTemporary data

Why These Files Are Excluded

🔒 Security

  • .env and .env.* files contain API keys and secrets
  • These should never be analyzed or exposed in reports

📦 Generated Code

  • Lock files (package-lock.json, yarn.lock, etc.) are auto-generated
  • Build output (dist/, build/) is compiled from source
  • Dependencies (node_modules/, vendor/, venv/) are installed packages
  • Not written by developers, so AI analysis is meaningless

📊 Noise Reduction

  • Dependency files are extremely verbose
  • Lock files can contain thousands of lines
  • Analyzing them drastically reduces performance
  • They don't contribute signal to AI detection

🗂️ Metadata

  • .git/, .hg/, .svn/ contain version control metadata
  • Not user-written source code
  • Can bloat analysis with binary data

Viewing Excluded Files in Analysis

To see which files are being excluded in your current analysis:

Bash
# View exclusion patterns from config
cadence analyze /repo --config cadence.yaml --verbose

# Check config file directly
cat .cadence.yaml | grep -A 10 "exclude_files"

Customizing Exclusions

In Configuration File

YAML
exclude_files:
  # Custom exclusions (in addition to defaults)
  - "*.log"           # Exclude log files
  - "temp/**"         # Exclude temp directories
  - "docs/generated/**"  # Exclude auto-generated docs
  
  # Replace defaults entirely (less common)
  # override_exclude: true

Via Environment Variable

Bash
# Comma-separated patterns
export CADENCE_EXCLUDE_FILES="*.log,temp/**,docs/generated/**"
cadence analyze /repo

Via Command Line

Bash
cadence analyze /repo --exclude-files "*.log,temp/**,docs/generated/**"

Common Exclusion Scenarios

Frontend-Heavy Repository

YAML
exclude_files:
  - "node_modules/**"
  - "dist/**"
  - "build/**"
  - ".next/**"        # Next.js
  - "*.lock"          # All lock files
  - ".env*"           # Environment files
  - "public/**"       # Static assets

Python Project

YAML
exclude_files:
  - "__pycache__/**"
  - "*.egg-info/**"
  - ".pytest_cache/**"
  - "venv/**"
  - ".venv/**"
  - "*.pyc"
  - ".env*"

Monorepo

YAML
exclude_files:
  - "node_modules/**"
  - "dist/**"
  - "build/**"
  - "tmp/**"
  - ".cache/**"
  - "**/*.lock"
  - ".git/**"
  - ".env*"

Performance Impact

Here's a rough performance guide:

ScenarioImpactTime Impact
With node_modules (not excluded)High noise10-20x slower
Without node_modulesBaselineNormal
Only source code excludedLow noiseFastest
Including all build artifactsVery high noise50x+ slower

Recommendation: Always exclude default patterns for optimal performance.

See Also