<!-- title: Claude Code交互模式与命令语法入门 -->

# Claude Code 交互模式与命令语法入门：从"只会打字"到"会开车"

## 概述

本教程面向**已经完成安装、能跑起来 Claude Code，但只会输入自然语言就回车**的零基础用户。安装教程遍地都是，但"装好之后怎么高效驾驶"才是新手最容易卡住、也最能拉开差距的环节。学完本篇，你将掌握三类驾驶动作——**键盘快捷键、四类输入前缀（`/` `@` `!` `#`）、斜杠命令体系**，理解权限模式如何用 `Shift+Tab` 一键切换，并能用一个"本地笔记库整理"实战把所有动作串起来。适用人群：第一次用命令行 AI 助手的学生、非程序员创作者、刚入职想用 Claude Code 提效但摸不清门道的新人。

## 前置条件

- 已安装 Claude Code（`claude --version` 能输出版本号，2026 年主流为 2.1.x，默认模型 Opus 4.8）
- 已完成登录（`claude` 启动后能看到输入框，而非反复要求 `/login`）
- 一个可以随意折腾的练习目录（本文用 `~/notes-lab`）
- 终端支持至少 80×24 的显示；若要用 `Shift+Enter` 换行，先执行一次 `/terminal-setup`

> 不必精通命令行。本篇所有操作都在 Claude Code 的输入框里完成，你几乎不需要直接敲 shell。

---

## 一、先建立心智模型：三层驾驶界面

很多新手把 Claude Code 当成一个"网页聊天框搬到终端"，于是只会一件事：打字、回车。这会让你错过 80% 的能力。Claude Code 实际上是一个**三层叠加**的交互系统：

```mermaid
flowchart TB
    A[你在终端里看到的输入框] --> B{第一层:输入前缀}
    B -->|直接打字| C[自然语言对话]
    B -->|/ 开头| D[斜杠命令<br/>系统级动作]
    B -->|@ 开头| E[文件/目录引用]
    B -->|! 开头| F[Bash 模式<br/>直接执行shell]
    B -->|# 开头| G[记忆模式<br/>写入CLAUDE.md]
    C --> H{第二层:键盘快捷键}
    D --> H
    H -->|Enter/Shift+Enter| I[提交/换行]
    H -->|Esc/Esc Esc| J[打断/回溯]
    H -->|Shift+Tab| K[权限模式循环]
    H -->|Up| L[历史回溯]
    I --> M{第三层:权限模式}
    K --> M
    M -->|Normal 普通模式| N[每次操作都问]
    M -->|Auto-Accept 自动接受| O[免确认改文件]
    M -->|Plan 计划模式| P[只读思考先出方案]
```

记住这张图，后面所有动作都能对号入座。下面逐层拆解。

---

## 二、第一层：四类输入前缀——决定 Claude 如何理解你这一行

输入框里的**第一个字符**就是"指令开关"。打自然语言和打 `/`、`@`、`!`、`#`，Claude 的处理路径完全不同。

### 2.1 斜杠命令 `/`：对系统说话，不是对模型说话

以 `/` 开头的是**斜杠命令（slash commands）**，它们由 Claude Code 客户端本身处理，**不会消耗你的对话 token**（绝大多数情况下）。这是新手最该先背熟的一类。

最常用的 12 个（按使用频率排序）：

| 命令 | 作用 | 一句话场景 |
|---|---|---|
| `/help` | 列出所有命令 | 忘了有什么命令时 |
| `/clear` | 清空当前对话历史 | 换任务、想重新开始 |
| `/compact` | 压缩上下文 | 对话太长、想省 token 继续 |
| `/model` | 切换模型 | 想换 Opus / Sonnet / Haiku |
| `/init` | 生成 `CLAUDE.md` | 进入新项目第一次做的事 |
| `/cost` | 看本次会话花了多少 | 心疼钱的时候 |
| `/review` | 让 Claude 审查代码 | 提交前的最后一道关 |
| `/config` | 打开配置 | 改主题、改默认权限 |
| `/memory` | 编辑记忆文件 | 调整"长期人设" |
| `/vim` | 切换 Vim 键位 | Vim 老用户的肌肉记忆 |
| `/terminal-setup` | 配置终端集成 | 想用 `Shift+Enter` 换行 |
| `/resume` | 恢复历史会话 | 接着昨天的活干 |

**操作示范**：在输入框敲 `/mod`，你会看到自动补全弹出 `/model`，按 Tab 或 Enter 选中，接着弹出模型列表，用方向键选 Sonnet 4.6，回车。

**常见问题**：
- *敲了 `/` 没反应？* 多数是输入法还开着中文。斜杠命令**必须是半角 `/`**，全角 `／` 不认。切换到英文输入再试。
- *`/clear` 和 `/compact` 有啥区别？* `/clear` 是"失忆"，把对话清零；`/compact` 是"浓缩"，把长对话压缩成摘要再继续。任务切换用 clear，同一个长任务想省钱用 compact。

### 2.2 文件引用 `@`：把文件"塞进"对话

输入 `@` 会弹出当前目录的文件补全。被 `@` 的文件内容会作为上下文送给模型，相当于"先把这份文件读一下，再回答我"。

**操作示范**：
```
帮我看看 @src/auth.py 里的登录逻辑有没有安全问题，对照 @docs/security-spec.md
```

`@` 后面不仅能跟文件，还能跟**目录**（`@src/` 会把整个目录树结构送进去，但不会全读内容，而是让 Claude 自己决定读哪些）。

**常见问题**：
- *`@` 大文件会不会爆 token？* 会。`@` 一个 5 万行的日志文件会瞬间吃掉大量上下文。大文件建议先让 Claude 用 `!` 模式做 `grep`/`head` 预处理，而不是整文件 `@`。
- *补全菜单出不来的文件？* 被 `.gitignore` 或 `.claudeignore` 屏蔽了，或者超出了读取权限。

### 2.3 Bash 模式 `!`：在对话里直接跑 shell

以 `!` 开头的行会**直接交给系统 shell 执行**，输出挂在对话里，Claude 能看到结果。这让你不必退出 Claude Code 去开另一个终端窗口。

**操作示范**：
```
!git status
!ls -la ~/notes-lab
!cat package.json | head -20
```

每条 `!` 命令执行后，结果会显示，Claude 据此继续推理。

**常见问题**：
- *`!` 命令会不会被拦？* 会按权限模式走。Normal 模式下，**写操作**（`rm`、`git push` 等）仍会弹确认；只读命令（`ls`、`cat`、`git status`）通常放行。
- *复杂命令管道报错？* `!` 模式对引号转义较敏感，含特殊字符的长命令建议写成脚本文件再用 `!bash run.sh` 调用。

### 2.4 记忆模式 `#`：一句话写入长期记忆

以 `#` 开头的内容，Claude 会**直接追加到项目的 `CLAUDE.md`**（或对应层级的记忆文件），相当于"以后永远记住这条"。这是比手动编辑记忆文件更轻量的方式。

**操作示范**：
```
# 本项目用 pytest，不要用 unittest
# 部署前必须跑 npm run typecheck
```

敲完回车，Claude 会确认"已写入记忆"，之后每次启动都会自动加载这些规则。

**常见问题**：
- *`#` 写错了怎么改？* 用 `/memory` 命令打开记忆文件直接编辑，或删掉对应行。
- *`#` 和 `!echo ... >> file` 区别？* `#` 是语义化记忆，Claude 会智能归类到合适的记忆文件层级；`!echo` 是笨办法，且容易写错位置。

---

## 三、第二层：键盘快捷键——手不离键盘的效率核心

这是新手最容易忽视、老手最依赖的一层。下面只列**真正改变工作流**的快捷键，不堆砌冷门项。

| 快捷键 | 作用 | 新手价值 |
|---|---|---|
| `Enter` | 提交当前输入 | 基础 |
| `Shift+Enter` | 输入内换行（需 `/terminal-setup`） | 写多行 prompt 必备 |
| `Esc` | 打断 Claude 当前响应 | 它跑偏了就立刻停，别等 |
| `Esc` `Esc`（连按两次） | 回溯并编辑你上一条消息 | 改 prompt 比重新打快十倍 |
| `Ctrl+C` | 取消当前输入行 / 中断 | 和 Esc 配合用 |
| `Ctrl+D` | 退出 Claude Code | 干完活关掉 |
| `↑` 方向键 | 调出上一条历史输入 | 反复调试同一句 prompt |
| `Shift+Tab` | 循环切换权限模式 | **本文最关键的一个键** |
| `Ctrl+R` | 切换详细/精简输出 | 想看完整思考过程时 |

### 3.1 `Shift+Tab`：权限模式三态循环（重点）

Normal（普通）→ Auto-Accept（自动接受）→ Plan（计划）→ 回到 Normal。输入框底部会显示当前模式名。

- **Normal**：默认。每次 Claude 要改文件、跑命令，都会先问你"允许吗？"。新手最安全的选择。
- **Auto-Accept**：自动接受编辑。Claude 改文件不再逐个确认。**适合你信任任务、想批量推进时**，但要盯紧终端。
- **Plan**：只读模式。Claude **不许动任何文件**，只许读和思考，先给你一份方案。**适合需求模糊、想先看 Claude 怎么理解任务时**。

**实战心法**：拿到一个新任务，先 `Shift+Tab` 切到 Plan，让 Claude 出方案；确认方案对了，再切回 Normal 或 Auto-Accept 让它执行。这能避免"它理解错了还一股脑改了十个文件"的灾难。

**常见问题**：
- *`Shift+Enter` 没反应，光标直接提交了？* 没跑 `/terminal-setup`。跑一次，按提示重启终端即可。
- *`Esc Esc` 没反应？* 要在 Claude **空闲**时（没在生成）连按两次，间隔别太长。
- *打断后 Claude 说了一半，会扣我 token 吗？* 已消耗的算消耗，但**立刻打断**能省下后续生成，比让它说完划算得多。

---

## 四、第三层：权限模式与一次性命令模式（CLI 标志）

交互模式之外，Claude Code 还能在**命令行参数**层面预置行为，这对"启动那一刻就定好规矩"很有用。

### 4.1 常用启动标志

```bash
claude                         # 进入交互模式
claude -c                      # 继续上一次对话（--continue）
claude -r                      # 选择恢复某个历史会话（--resume）
claude -p "修复 bug"            # 一次性模式，跑完就退出（--print）
claude --model sonnet          # 指定模型启动
claude --permission-mode plan  # 直接以 Plan 模式启动
```

`-p`（print 模式）是脚本化的入口：它跑完即退出，适合接进 shell 管道或 cron 任务。本篇聚焦交互模式，`-p` 仅作了解，后续"无头模式"教程会深讲。

**常见问题**：
- *`claude -c` 报"没有可继续的会话"？* 上次是用 `/clear` 清掉的，或当前目录没有历史。`-c` 是续最近的，`-r` 是让你从列表里挑。
- *`-p` 模式下能用 `@` 和 `/` 吗？* `@` 可以，部分 `/` 命令在 `-p` 下无意义（如 `/clear`）。

---

## 五、实战案例：用纯交互动作整理"乱糟糟的笔记库"

下面这个例子**不需要写一行代码**，只用本篇教的四类前缀 + 快捷键，就能完成一个真实的整理任务。跟着做一遍，所有动作就内化了。

### 场景设定

假设你有个目录 `~/notes-lab`，里面散落着几十个 `.md` 笔记，文件名混乱、有些没标题、有些是重复内容。目标：让 Claude 帮你统一规范、剔除重复、生成一份索引。

### 步骤 1：进入目录并以 Plan 模式启动

```bash
cd ~/notes-lab
claude --permission-mode plan
```

> 用 Plan 启动，确保第一轮 Claude 只看不动，先给你方案。

### 步骤 2：让 Claude 摸清家底

在输入框输入：
```
先帮我了解这个笔记库的结构和现状，列出文件数量、大致主题、明显的问题。只读，不要改任何东西。
```

Claude 会调用只读工具（`ls`、读文件头）调研，输出一份现状报告。**因为它在 Plan 模式，你不用担心它乱动文件。**

### 步骤 3：用 `@` 精准指向问题文件

看完报告，你发现 `meeting-2025.md` 和 `会议记录.md` 可能重复。输入：
```
对比 @meeting-2025.md 和 @会议记录.md，判断是不是重复内容，重复度多少。
```

Claude 会读这两个文件并给出比对结论。`@` 让它"精准看"，省得它全库扫描浪费 token。

### 步骤 4：用 `!` 跑一次只读统计

```
!find . -name "*.md" | wc -l
```

输出 `42`，你心里有数了。这是你**主动**用 shell 补充信息，而不是被动等 Claude。

### 步骤 5：确认方案后切换权限模式

`Shift+Tab` 从 Plan 切回 **Normal**（逐项确认）或 **Auto-Accept**（批量执行）。然后下达执行指令：
```
按你的方案执行：给所有笔记加规范的 YAML 标题、合并两份重复文件、生成 INDEX.md 索引。
```

在 Normal 模式下，每个文件改动前都会问你 y/n，你可以逐一把关；觉得信任了，`Esc` 打断，`Shift+Tab` 切 Auto-Accept，再让它继续。

### 步骤 6：用 `#` 沉淀规则

整理完，你想让 Claude 以后都按这套规范处理：
```
# 笔记库统一规范：所有 .md 顶部必须有 YAML front-matter（title/date/tags）；重复内容合并到创建日期较早的文件；每月维护一次 INDEX.md
```

回车，规则写入 `CLAUDE.md`。以后你在任何笔记任务里，Claude 都自动遵守。

### 步骤 7：收尾

```
/cost      # 看这次花了多少
/clear     # 清空，准备下一个任务
```

### 整体工作流

```text
flowchart LR
    A[cd 项目目录] --> B[claude --permission-mode plan]
    B --> C[Plan模式:让Claude只读调研]
    C --> D{方案可行?}
    D -- 否 --> C
    D -- 是 --> E[Shift+Tab 切到Normal/Auto]
    E --> F[执行:逐项确认或批量改]
    F --> G[用 # 沉淀规则到记忆]
    G --> H[/cost 看花费]
    H --> I[/clear 收尾]
```

**常见问题**：
- *Auto-Accept 模式它改坏了怎么办？* 立刻 `Esc` 打断。Claude Code 改文件前会保留原始内容快照，可以要求它"撤销刚才所有改动"。
- *整理到一半 token 不够了？* `/compact` 压缩上下文继续，比 `/clear`（会丢失进度）更划算。

---

## 六、新手高频踩坑清单

把这几条贴在显示器边，能省你大量时间：

1. **中文输入法没关就敲 `/`** → 全角斜杠不认命令。养成"敲命令前切英文"的习惯。
2. **从不用 `Esc` 打断** → Claude 跑偏了还让它跑完，白烧 token。该停就停。
3. **上来就 Auto-Accept** → 新手在陌生项目里用 Auto-Accept 等于盲改。先用 Normal 跑几天，建立信任。
4. **从不 `Shift+Tab` 进 Plan** → 需求没想清楚就让它写代码，必然返工。Plan 模式是"先想后做"的结构性保障。
5. **`@` 巨型文件** → 一次塞 5 万行日志，上下文瞬间爆炸。大文件先 `!grep`/`!head` 预处理。
6. **不知道 `Esc Esc` 回溯编辑** → prompt 打错了重新打一遍。双击 Esc 改最后一句就行。
7. **忽略 `/cost`** → 用了一个小时不知道花了多少。定期看一眼，培养成本意识。
8. **所有规则都靠每次手打** → 重复指令（"用 pytest""别加注释"）写成 `#` 记忆，一劳永逸。

---

## 七、进阶预告：本篇之后的路

掌握交互语法后，自然的进阶方向：
- **自定义斜杠命令**：把常用指令封装成 `/my-command`，团队共享。
- **子 Agent 与 Hooks**：让 Claude 在特定动作前后自动执行检查。
- **`-p` 无头模式**：把 Claude Code 接进 CI、脚本、定时任务。
- **MCP 工具集成**：让 Claude 连接数据库、浏览器、内部 API。

这些都建立在你**先把交互模式开熟练**的基础上。如果连 `Shift+Tab` 都不知道，直接上 Hooks 只会一团乱。

---

## 延伸阅读

- **Claude Code 官方交互模式文档**：`https://code.claude.com/docs/en/interactive-mode` — 权威快捷键与输入模式参考。
- **官方 CLI 标志文档**：`https://code.claude.com/docs/en/cli-reference` — 所有 `claude` 启动参数。
- **`/help` 本身**：在你机器上敲 `/help` 看到的命令列表，永远是和你当前版本最匹配的。
- **Vim 模式专题**：`https://hamy.xyz/blog/2026-03_vim-mode-claude-code` — Vim 用户的深度配置指南。

---

## 训练营适用性评估

| 维度 | 评估 |
|---|---|
| **适合的训练营类型** | AI 编程零基础营、企业新人提效营、非程序员创作者营、转码入门营 |
| **不适合** | 纯算法/数据结构营、资深工程师进阶营（内容偏基础） |
| **建议教学时长** | 1.5–2 小时（含动手实战 45 分钟） |
| **前置课程** | 一节"Claude Code 安装与登录"即可（可由讲师提前录制） |
| **课后作业建议** | 学员用本篇工作流整理自己的笔记/代码片段库，提交前后对比截图 |
| **考核点** | 能否演示 Plan→Normal 切换、能否用 `@`+`!`+`#` 完成一个真实小任务 |

---

## 参考来源

1. [Interactive mode — Claude Code Docs](https://code.claude.com/docs/en/interactive-mode) — 官方键盘快捷键、输入模式与交互特性的权威参考。
2. [Claude Code Cheat Sheet — SkillsPlayground (2026)](https://skillsplayground.com/guides/claude-code-cheat-sheet/) — 速查表，覆盖斜杠命令、CLI 标志、权限模式、Hook 事件。
3. [Claude Code Interactive Mode: Complete Reference (2026) — Pilot Shell](https://pilot-shell.com/blog/interactive-mode) — 深度博客，详解 Vim 模式、Bash 模式、后台任务等进阶交互。
4. [Claude Code Cheat Sheet (2.1.x, Opus 4.8) — ComputingForGeeks](https://computingforgeeks.com/claude-code-cheat-sheet/) — 版本对齐的命令与标志速查。
5. [How to use Vim in Claude Code — HAMY](https://hamy.xyz/blog/2026-03_vim-mode-claude-code) — `/vim` 模态编辑配置专题。

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
