第 3 章:第一次交互 —— 从对话到代码的飞跃
🎯 学习目标
完成本章后,你将能够:
- ✅ 成功运行第一个
Hello World任务,验证环境连通性。 - ✅ 理解并切换 自动模式 (Auto) 与 手动确认模式 (Ask),掌控执行节奏。
- ✅ 熟练使用核心斜杠命令 (
/) 进行导航、搜索和状态管理。 - ✅ 学会编写清晰的“上下文感知”提示词(Prompt),获得高质量代码。
- ✅ 建立正确的心理模型:将 Claude Code 视为初级工程师而非搜索引擎。
3.1 Claude Code 第一次使用:Hello World 示例
不要只满足于打印文本,我们要让 Hello World 动起来。我们将通过一个微型项目来体验完整的“需求 -> 规划 -> 编码 -> 运行”闭环。
🚀 实战演练:创建一个交互式欢迎程序
步骤 1:启动会话
在项目根目录(确保已完成 claude init)输入:
claude
你会看到欢迎界面,显示当前模型版本和可用令牌数。
步骤 2:发出第一个复杂指令
在提示符后输入以下内容(直接复制粘贴或自然语言描述):
用户指令:
"我想创建一个简单的 Python 脚本welcome.py。
- 它应该询问用户的名字。
- 获取名字后,用 ASCII 艺术字体打印 ‘Hello, [名字]!’。
- 如果用户没有安装
pyfiglet库,脚本应该自动检测并提示安装命令,但不要自动执行安装。- 请先生成代码,然后告诉我如何运行它。"
步骤 3:观察 AI 的思考与行动
Claude Code 不会立即吐出一段代码,它会经历以下过程(取决于你的权限设置):
- 思考 (Thinking):分析需求,决定使用
pyfiglet库,并设计异常处理逻辑。 - 计划 (Plan):
- 检查当前目录结构。
- 编写
welcome.py。 - 创建
requirements.txt。
- 请求许可 (Permission):
- 终端显示:
📝 计划写入文件: welcome.py - 终端显示:
📝 计划写入文件: requirements.txt - 操作:按下
y(Yes) 确认,或n(No) 拒绝,或e(Edit) 修改建议。
- 终端显示:
- 执行 (Execution):文件被写入磁盘。
- 总结 (Summary):AI 告知你文件已创建,并给出运行指令
python welcome.py。
步骤 4:运行与验证
退出 Claude Code (输入 /exit 或 Ctrl+D),在普通终端运行:
pip install -r requirements.txt
python welcome.py
恭喜!你完成了第一次完整的 AI 辅助开发循环。
3.2 Claude Code 交互模式:对话式编程体验
Claude Code 的核心优势在于其多轮对话和上下文记忆能力。理解两种主要交互模式至关重要。
🔄 模式一:手动确认模式 (Ask Mode) —— 推荐默认
在此模式下,Claude Code 在执行任何写文件、运行命令或联网操作前,都会暂停并等待你的确认。
- 优点:安全可控,防止 AI 误删文件或执行危险命令(如
rm -rf)。适合学习阶段和生产环境。 - 交互流程:
Claude: 我打算运行命令 `npm install`。是否继续? [Y/n/e] 用户:y Claude: ✅ 命令执行成功。接下来我将创建 src/index.js...
⚡ 模式二:自动模式 (Auto Mode)
在此模式下,对于低风险操作(如读取文件、运行测试、格式化代码),AI 会自动执行而无需确认。仅在高风险操作(如删除文件、修改系统配置)时暂停。
- 开启方法:在对话中输入
/auto on或在启动时添加--auto标志。 - 适用场景:重复性高、信任度高的任务(如批量重构、运行测试套件)。
- 警告:务必确保你的
.claude-code.json中配置了合理的exclude_patterns,防止 AI 意外修改关键文件。
💡 高级交互技巧:上下文注入
为了让对话更高效,你可以主动提供上下文:
-
引用文件:
“参考
src/utils.py中的日志格式,修改main.py的错误处理部分。”
(Claude Code 会自动读取src/utils.py的内容) -
粘贴错误日志:
“运行
npm test失败了,这是错误日志:[粘贴日志内容]
请分析原因并修复代码。” -
迭代式开发:
“刚才生成的代码不错,但现在需要增加一个功能:支持用户输入多个名字,并用逗号分隔显示。请在此基础上修改。”
(AI 会记住上一轮的代码状态,直接进行增量修改)
3.3 Claude Code 基础用法:常用指令速览
除了自然语言对话,Claude Code 提供了一套强大的 斜杠命令 (/),用于控制会话、查询信息和管理工作流。
🧭 导航与文件操作
| 命令 | 描述 | 示例 |
|---|---|---|
/ls |
列出当前目录文件 | /ls src/ |
/cat |
查看文件内容 | /cat package.json |
/grep |
搜索代码内容 | /grep "TODO" src/ |
/edit |
手动编辑指定文件(不调用 AI) | /edit config.json |
🛠️ 任务与控制
| 命令 | 描述 | 示例 |
|---|---|---|
/plan |
让 AI 重新陈述或更新当前任务计划 | /plan (当任务跑偏时使用) |
/undo |
撤销上一次 AI 执行的操作(文件修改/命令) | /undo (后悔药) |
/clear |
清除当前对话历史,释放上下文窗口 | /clear (开始新话题) |
/exit |
退出 Claude Code 会话 | /exit |
🧠 记忆与技能
| 命令 | 描述 | 示例 |
|---|---|---|
/memory |
查看或管理项目长期记忆 | /memory show |
/skill |
列出或运行自定义技能 | /skill deploy-preview |
/help |
显示所有可用命令的帮助信息 | /help |
🔍 实用组合技
场景 1:快速排查 bug
/grep "Error" logs/ # 先定位错误日志
/cat logs/error.log # 查看详细内容
# 然后直接对 AI 说:"根据上面的日志,修复 src/auth.js 中的登录逻辑"
场景 2:大规模重构前的确认
/plan # 让 AI 详细列出它打算修改哪些文件
# 仔细检查列表,确认无误后,输入 "y" 开始执行
场景 3:清理上下文
当你发现 AI 开始混淆之前的任务,或者 Token 消耗过高时:
/memory save # 先保存当前重要结论到记忆
/clear # 清空对话历史,轻装上阵
# 接着说:"基于我们刚才保存在记忆中的架构决策,现在开始编写数据库模块..."
🧪 动手练习:掌握交互节奏
练习 1:体验“撤销”的力量
- 让 Claude Code 创建一个文件
temp.txt并写入随意内容。 - 确认文件已生成。
- 输入
/undo。 - 检查
temp.txt是否消失或恢复原状。
目的:理解 AI 操作的可逆性,建立安全感。
练习 2:多轮对话迭代
- 要求 AI 生成一个简单的 HTML 按钮。
- 接着说:“把按钮变成红色,并且点击时弹出 alert。”
- 再说:“不对,改成点击后背景色随机变化。”
目的:体验上下文的连续性,学会像指导实习生一样逐步细化需求。
练习 3:使用 /grep 辅助编程
- 在一个包含多个文件的项目中,输入
/grep "console.log" .。 - 观察 AI 如何汇总搜索结果。
- 指令:“把所有找到的
console.log替换为统一的logger.info调用。”
目的:掌握利用工具命令增强 AI 感知能力的技巧。
❓ 新手常见误区 (FAQ)
| 误区 | 正确做法 |
|---|---|
| 把 AI 当搜索引擎 问:“Python 怎么写爬虫?” |
把 AI 当程序员 说:“请在 src/spider.py 中写一个爬取某网站标题的 Python 脚本,使用 requests 库。” |
| 一次性给太多模糊需求 “帮我做一个淘宝。” |
拆解任务 “第一步,先搭建 Express 服务器骨架;第二步,设计用户数据库模型…” |
| 不敢打断 AI | 随时干预 如果发现 AI 方向错了,立即按 Ctrl+C 停止,或用自然语言纠正:“停,这个思路不对,我们应该用…” |
| 忽略权限提示 | 仔细阅读 在按 y 之前,花 2 秒看一眼 AI 打算执行什么命令或修改什么文件。 |
📝 本章小结
- Hello World 只是开始,真正的威力在于多轮迭代和上下文感知。
- 手动确认模式是你的安全带,初期请务必保持开启。
- 斜杠命令 (
/ls,/grep,/undo) 是你手中的遥控器,能让你更精准地控制 AI 的行为。 - 提示词工程的核心是:角色设定 + 清晰目标 + 上下文参考 + 迭代反馈。
🚀 下一步预告:
既然已经学会了如何对话,下一章 第 4 章:开发模式与控制,我们将深入探讨如何利用 Coding Plan 制定宏大的开发路线图,以及如何利用 Checkpoints 在复杂任务中自由穿梭!
更多推荐


所有评论(0)