IDE中AI辅助编程时,如果不做限制,AI 扫描冗余文件不仅浪费 Token(甚至可能导致上下文溢出),还可能干扰它对核心逻辑的理解。

Claude Code 默认读取行为

Claude Code 不会主动扫描并读取所有文件,而是按需读取——即当你提问或执行任务时,它会根据上下文决定读取哪些文件。但以下情况会触发文件读取:

  • 你直接问"帮我看这个文件"
  • 你要求分析项目结构
  • 执行代码补全、重构等任务时搜索相关代码

对于 .venv/__pycache__/build/dist/.git/ 这些目录:

  • .git/ — Claude Code 内部会用 git 命令访问版本信息,但不会直接读取目录内容
  • .venv/__pycache__/ — 默认不会主动读取,但没有 .claudeignore 时,如果你让它搜索整个项目,可能会遍历进去
  • build/dist/ — 同上,建议明确排除

.claudeignore 的作用与语法

.claudeignore 放在项目根目录,语法与 .gitignore 完全相同,Claude Code 会跳过这些文件/目录的读取与搜索

建议你把当前的 .claudeignore 完善为:



# Python 环境与缓存
.venv/
__pycache__/
*.pyc
*.pyo
.mypy_cache/
.pytest_cache/

# 构建产物
build/
dist/
*.egg-info/

# 版本控制
.git/

# 日志
log/
*.log

# 数据库文件
*.db
*.sqlite3

# 图片/媒体
*.png
*.jpg
*.jpeg
*.gif
*.ico

# 临时测试文件
test*.py
*_test.py

# 其他不需要的文件(按你项目实际情况)
# frontend/          # 前端目录
# data/              # 数据目录

总结

机制 说明
.claudeignore 主要控制手段,语法同 .gitignore
.gitignore Claude Code 也会尊重其中的规则(部分场景)
默认行为 不主动扫描,按任务需要读取
.venv 等 建议显式加入 .claudeignore 保险起见
Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐