有4种方法精确控制Cline只扫描特定文件夹,按优先级从简单到高级排列:


一、基础:用 .clineignore 排除无关文件夹(最推荐)

这是官方标准方法,语法和.gitignore完全一致,适合快速缩小扫描范围

  1. 创建配置文件
    在项目根目录新建文件,命名为 .clineignore
  2. 添加排除规则(示例):
    # 排除所有不需要的文件夹
    **/node_modules/**
    **/dist/**
    **/build/**
    **/.git/**
    **/vendor/**
    **/logs/**
    
    # 也可以排除特定文件类型
    *.log
    *.tmp
    
  3. 效果:Cline会自动忽略这些路径,只扫描剩下的文件

二、进阶:用 .clinerules 精确指定包含文件夹(最精准)

通过 .clinerules 文件设置只允许访问的路径,实现“白名单”控制

  1. 创建配置文件
    在项目根目录新建文件,命名为 .clinerules
  2. 添加包含规则(示例):
    # 只允许扫描以下文件夹(白名单)
    allowed_paths:
      - src/**           # 所有src下的文件
      - config/**        # 配置文件夹
      - package.json     # 单个关键文件
      - README.md        # 项目说明
    
    # 可选:在允许的路径中再排除某些子文件夹
    excluded_paths:
      - src/test/**      # 排除测试文件夹
      - src/docs/**      # 排除文档文件夹
    
  3. 语法说明
    • 使用glob模式(和.gitignore相同)
    • ** 表示递归匹配所有子目录
    • ! 开头表示取反(谨慎使用)

三、临时:在聊天窗口直接指定(最灵活)

不需要修改配置文件,在Cline对话中用**@folder**命令临时添加特定文件夹

  1. 基本用法
    @folder src/components/**  # 只扫描src/components下的所有文件
    
  2. 组合用法
    @folder src/api/**,src/utils/**  # 同时扫描两个文件夹
    
  3. 效果:这些文件夹会被立即注入Cline上下文,不影响全局配置

四、VS Code设置:全局/工作区级控制

通过VS Code设置界面配置Cline的文件扫描范围

  1. 打开设置
    • Ctrl+,(Windows)或 Cmd+,(Mac)
    • 搜索 Cline: Excluded FilesCline: Included Files
  2. 配置示例
    • 包含路径(只扫描这些):src/**,config/**
    • 排除路径(不扫描这些):**/node_modules/**,**/dist/**
  3. 保存位置
    • 选择“工作区”保存 → 只对当前项目生效
    • 选择“用户”保存 → 对所有项目生效

五、最佳实践组合(推荐)

  1. 先用 .clineignore 排除所有大文件夹(node_modules、dist等)
  2. 再用 .clinerules 精确指定需要扫描的核心目录(src、config等)
  3. 临时需要时,用 @folder 命令添加额外文件/文件夹

六、常见问题解决

  • 设置不生效:重启VS Code窗口(Ctrl+Shift+P → Reload Window)
  • 想恢复默认:删除.clineignore和.clinerules文件,重启插件
  • 项目太大:结合git init(之前推荐的方法)+ 上述配置,效果最佳

更多推荐