@ 引用是将文件内容直接注入当前对话的操作。输入 @ 加文件路径,Claude 读取该文件的完整内容并加入上下文,等效于你手动粘贴了整个文件,但保留了文件名、路径等元信息。
一、最简上手
确保你已在项目目录下启动 Claude Code。
二、更多引用方式
多文件引用
一条消息中用空格分隔多个 @ 引用:
Claude 同时读取两个文件,对比源码和测试后给出分析。
目录引用
路径指向目录时,Claude 获取该目录的文件列表(文件名和基本信息),但不会读取每个文件的内容:
需要分析具体文件时,再单独引用目标文件。
MCP 资源引用
@server:resource 格式可以引用 MCP 服务器提供的外部资源:
前提是对应的 MCP 服务器已配置并连接。
三、参数与配置
路径解析规则
Tab 补全行为
- 输入
@后按 Tab,列出当前目录的文件和子目录 - 选中子目录后再按 Tab,继续展开下一层,逐级深入
- 默认遵守
.gitignore规则,被忽略的文件不出现在补全列表中
.gitignore 过滤
默认情况下,@ 补全列表排除 .gitignore 中的文件。如需引用被忽略的文件(如 node_modules/ 下的某个包),在 settings.json 中设置:
四、实际场景应用
场景一:跨文件重构
将路由定义和中间件一起递给 Claude,要求统一错误处理模式:
Claude 同时看到两个文件,理解现有的错误处理中间件接口后,修改路由代码使其调用统一的处理函数。
场景二:参照规范生成代码
引用规范文档,让 Claude 按约定生成新代码: