/Claude Code 做什么,代码在哪里运行登录后记录进度

Claude Code 做什么,代码在哪里运行

建议用时:25 分钟(含练习)

学习目标

能够说明 Claude Code 如何搜索项目、修改文件、运行命令、验证结果并管理 Session。

本节产出

一张 Claude Code Agent 循环图

核心知识:关注工具结果,而不是拟人化描述

Claude Code 是 Anthropic 提供的 Agentic coding 工具。理解它最有用的方式,是观察它如何获取项目上下文、调用工具、修改文件并验证结果。模型负责基于当前信息提出下一步,外围系统提供可调用工具、权限边界和执行环境。说“Claude 读了文件”时,应当对应实际读取记录,而不是它在回答里提到了一个文件名。

它可以通过不同界面和环境工作,具体能力取决于当前配置。

本地运行

本地运行时,文件操作和命令通常作用在所选择的本机目录。

云端或远程模式

使用云端或远程模式时,需要确认代码执行位置与可用资源。

不要把所有模式都称为“在我的电脑上运行”,也不要从界面位于浏览器就推断命令一定在云端执行。

模型推理位置与工具执行位置仍然是不同问题。即使工具在本地读写文件,选中的上下文也可能发送给模型服务。要核对组织政策、产品数据说明和任务权限,只提供完成任务所需材料。课程不会要求把整个私人目录交给 Agent,也不会把一句“不要泄露”当成实际访问控制。

Claude Code 先取得上下文,模型选择工具,执行环境检查权限后产生结果,再用结果决定验证或继续

图中每一次工具结果都可能改变后续计划。读到测试文件后,Agent 可能发现原先理解的输入边界不对;运行测试失败后,它应分析具体失败,而不是仅修改断言让绿色标记出现。循环的价值来自证据反馈,不是动作次数多。

第一次进入仓库,应该先知道什么

先确认工作目录、Git 状态和项目说明,再查找与当前任务有关的入口、实现与测试。项目中的 CLAUDE.md 可以提供约定,但其加载范围和优先级需要按当前工具文档理解。指令文件是上下文,不等于操作系统权限;其中写“不得访问其他目录”,仍需要实际权限与审阅配合。

项目现有改动也应先识别。一个文件已经被使用者修改,Agent 不应为了得到干净状态而直接恢复它。合适做法是缩小修改范围,必要时使用独立工作区,并在交付中指出自己改动了哪部分。未知文件不是可以随便删除的临时垃圾。

案例:修复一个空输入错误

虚构函数 displayName(value) 应当把空字符串显示为“未填写”,但当前页面显示空白。任务说明给出期望行为,并要求保留非空字符串的现有显示方式。一个可观察工作流是:搜索函数与调用位置,阅读现有测试,确认问题能复现,补充覆盖空输入的测试,修改实现,再运行相关检查。

如果 Agent 发现 null、空字符串和只有空格的字符串在项目中有不同含义,应先核对需求和已有规则,不能凭个人偏好统一处理。比如“只有空格是否算空”是业务边界,不是看到 trim() 就自动应该加入的功能。

交付应包含实际修改的文件、行为变化与测试结果。如果测试环境缺依赖,不能写“测试通过”,也不能把没有运行解释成“理论上应该通过”。可以记录静态检查与未运行原因,继续解决可处理的环境问题。

三个容易混淆的“完成”

状态证明了什么还需要什么
模型给出修复建议有候选方案检查与实施
文件已经修改变更已落盘测试与差异审阅
相关测试通过覆盖范围内行为符合断言确认未超范围、交付记录完整

这张表并不要求每个小任务都执行庞大测试矩阵,而是要求检查与变化相称。修改文档中的错字,与改变认证逻辑,需要的验证强度明显不同。

动手练习

  1. 为虚构空输入问题写一份任务说明,包含输入边界、允许修改范围和验收例子。
  2. 列出 Agent 在编辑前必须读取的三类信息,并说明每类信息帮助避免什么错误。
  3. 用一次真实获准的小任务或静态模拟,记录读取、修改、验证三阶段证据。不执行生产操作,也不要求模型输出隐含推理过程。

参考答案与推演

完成检查

  • 能说明模型决策与外部工具执行的分工。
  • 确认本次执行环境、目录与数据边界。
  • 保护已有改动,修复范围不自行扩大。
  • 测试和交付声明均有实际证据支撑。

参考与来源

Claude Code 做什么,代码在哪里运行

3 道题 · 及格分 60 分

开始测验