Agent 通用语言

  1. 上下文注入
  2. Shell 执行

结构化交互

  1. 清晰表达意图、更高效地提供上下文,并授权 AI Agent 采取行动
  2. 一个设计精良的 Agent,其目标是降低用户的认知负荷,并不要求用户成为提示词大师
    • 提供一套简洁而强大交互模型,能够轻松地表达复杂的工程意图
  3. Claude Code 的核心交互模型,是建立在两个极其简单却异常强大的符号之上:@!

深刻的人机协作哲学 - 所有高级 Coding Agent 对话的通用语言

符号 语义
@ 代表上下文 - Context - 精确的、可追溯的、结构化的指令
! 代表行动 - Action - 无缝融入到对话流

image-20260106174658053

@

用法 描述
引用单个文件 最精准的上下文 - 代码解释 + 生成单元测试
引用整个目录 开启上帝视角
  1. 让 Claude Code 看到引入一个目录时,并不会把所有文件的内容都无脑塞进上下文,而是非常智能
  2. 默认情况下,@ 指令是 Git 感知
    • 自动查找并读取项目根目录下的 .gitignore 文件
    • Claude Code 在遍历目录时,自动忽略所有匹配 .gitignore 规则的文件和目录
    • 避免将 node_modules/vendor/、编译产物、.git/上下文噪音喂给 LLM
  3. @ 指令是 AI Agent 的输入管道
    • 以一种结构化的方式,将真实世界的、多维度的信息转化LLM 可以理解的上下文

打通 LLM 的思考本地环境执行之间的壁垒,并通过精巧的设计,保证了操作的绝对安全

在对话中执行单行命令

在与 LLM 的对话流中,随时执行任何你想执行的 Shell 命令,而无需退出 Claude Code

1
!<your shell command>

image-20260113153133106

将命令输出作为上下文

  1. ! 命令的输出,会自动作为下一轮对话的上下文,极其强大
  2. Claude Code 会阅读上一条由 ! 命令的输出

让 AI 提议并执行命令

! 指令的 AI 原生用法

  1. 不再是自己执行命令,让 AI 来决定何时需要执行命令,以及执行什么命令
  2. 当 AI 认为需要通过执行 Shell 命令获取信息或者完成任务时,它会使用一个特殊的 Tool Call 来向你提议
    • 提议-审批的机制,是保障 ! 指令安全的核心
    • AI 永远不会在你不知情的情况下,擅自执行任何 rm -rf / 这样的危险命令
  3. Claude Code 的 SOLO 模式 - claude --dangerously-skip-permissions
    • 在新开启的 Claude Code 会话中将默认忽略掉任何需要人工授权的环节

没有沉浸式 Shell 模式

  1. Claude Code 不提供:输入! 后进入可以连续输入命令子 Shell
  2. 最佳实践:逐行使用 ! 前缀来执行
    • AI 能清晰看到每个独立的命令以及其对应的输出
    • 从而能够更精准地理解用户完整的操作序列,并对每一步的结果做出响应

人机协作哲学

image-20260113171856521

缺陷

@ 指令提供只能提供一次性的上下文,更持久化的记忆,需要依赖 CLAUDE.mdagents.md