拓展阅读

Claude Code 怎样工作

分清指导、记忆、权限、技能和子 Agent 的职责。

推荐阅读 06 / 12本地中文导读

对应资料:How Claude Code Works [S068]

沿着对象与状态理解本章

比较编码产品时,先使用同一条公开的可诊断链:上下文组成、模型提议、宿主执行、结果回填、状态恢复。闭源产品未公开的内部机制保持未知;教学泳道不是对三款产品逐行源码的共同断言。

下方图解的固定输入在“输入与适用条件”中声明。它用于解释本章机制,不与本章其他独立例子的数值暗中接续。

动态图解 · F22

把一个Agent任务拆成真正发生的几轮

同一句用户任务,为什么可能调用模型不止一次?

LLM生成下一步提议,宿主执行获准的动作,把结果再交给LLM。这是外层任务循环;每次模型调用内部还要经历逐Token生成。外层的一轮工具行动不等于内部生成一个Token,两种“循环”不能混用。

调用标识把某次工具请求与其结果连接的ID。
工具结果程序实际执行后返回的内容。
上下文本轮明确交给模型的信息,而非整个电脑状态。

输入与适用条件:构造的只读教学任务:文件config.txt含timeout=30。泳道展示职责边界,不声称调用了真实商业API;数据和动作顺序固定。

1 / 8 · 1. 用户任务:读config.txt中的timeout

第1步,共8步

窄屏可左右滑动图形,或点击“放大图形”。文字解释紧随图后。

把一个Agent任务拆成真正发生的几轮:1. 用户任务:读config.txt中的timeout用户宿主LLM文件工具用户任务:读config.txt中的timeout模型请求:任务+read_file工具定义模型输出:call_id=c1,path=config.txt宿主校验后读取文件工具结果:timeout=30下一轮输入:原任务+调用+结果模型回答:配置的timeout为30宿主显示回答;任务结束

模型尚未看到磁盘文件。先区分用户给的任务与环境真实内容。

未读取

默认静止。用“下一步”看完解释再继续;播放到最后一步自动停止。键盘聚焦播放器后,可用左右键逐步查看、空格播放/暂停。图中颜色辅助区分,含义同时用文字注明。

为什么需要

模型可以借助工具获得新证据,而不把一切都塞入参数。

怎样实现

按请求、校验、执行、结果回填、继续决策组织循环。

可能的代价与误解

忘记回填工具结果会让模型重复请求;把输出文本当执行证明会误报完成。

如何判断是否做对

对照每轮模型输入和工具日志,确认结果与call_id匹配。

用Claude Code理解真实Agent产品

本篇对应How Claude Code Works。官方说明把获取上下文、行动与验证连接成循环,并提供项目指导、工具、上下文管理和子Agent等机制。具体支持与默认行为受版本和配置影响。[S068][S069]

学习产品时不要只记命令,还要知道命令影响哪一层:当前对话、项目指导、工具授权、子Agent上下文还是外部环境。

指令、记忆与权限必须分开

项目指令提供指导,自动记忆保留可复用信息,权限配置限制执行。前两者是信息,后者应由产品和工具机制落实。模型“知道不能改”并不等于系统已经阻止写入。[S070][S074]

对CLAUDE.md与AGENTS.md等文件,当前支持存在条件,不能使用跨版本绝对说法。正确检查包括文件位置、共存关系、实际加载以及是否遵循。

子Agent的收益与损失

独立上下文可以隔离大量调查内容,但主Agent只收到结果时,可能失去关键条件。委派需要目标、范围、已知事实和返回证据,而不是一个标题。[S071]

原创委派示例:“只读调查Windows路径分隔符,不修改代码;返回实际调用位置、已运行测试、证据和未确认事项。”这比“你是Windows专家,全面分析”更容易验收。

Skills与Hooks不是同一种执行方式

Skill组织专业方法和资源,是否被选中与正文是否有效需要分别评价。Hook在生命周期节点执行程序化逻辑,适合确定性检查,但也可能耗时或失败。[S072][S073]

原创例子:路径规范排查放Skill,提交前运行已有静态检查可以交给Hook或CI。不要把所有语义判断硬写进Hook,也不要把必须禁止的操作仅写进Skill。

如何观察质量问题

当结果变差,分别检查模型配置、输入范围、历史清理、工具结果和验证。官方质量复盘说明Harness变化也可能影响产品体验,不能把所有回退归因于模型参数。[S141]

练习:对短新会话与长历史会话运行同一测试任务,保存已读证据、压缩事件和结果。若只有长会话退化,优先调查状态与上下文,而不是立即增加更多提示。

完成本篇后,应能使用产品功能做机制实验,同时明确哪些内部细节没有公开证据。

继续深入:第6章 · 真实编码Agent 或阅读拓展阅读目录6.6的逐项讲义。所有链接均为本地内容。

运行示例 · G06

子Agent只收到摘要,为什么它不知道主Agent的限制

输入与条件。主任务有约束“只读,不修改文件”。父Agent委派“调查配置问题”,子Agent拥有独立上下文。

步骤与对象内部动作中间结果 / 新状态
1父上下文用户原话明确禁止修改限制在父会话可见。
2委派消息只写“调查配置问题”不能假设子会话自动包含整段原历史。
3最小交接追加只读范围、具体问题、仓库版本和证据路径不必复制无关长对话。
4工具限制宿主对子任务只提供只读能力自然语言要求与工具权限共同约束。
5返回整合子Agent提供发现、证据和未解决问题父Agent仍负责用户整体目标。

把过程连起来。独立上下文节省父上下文成本,同时也需要有意识地传递必要约束。

边界与反例。这是独立子Agent模式的风险示例,不断言任何当前产品的默认继承字段;配置必须按公开文档与实际请求核查。

依据与适用范围:[CLAUDE-SUB] [CLAUDE]。示例输入和场景由本书明确设定。

记录保存在本机浏览器。

输入关键词即可检索。

↑ ↓ 选择 Enter 打开Esc 关闭 · 仅本地搜索

阅读设置

阅读设置仅保存在本机浏览器,不上传任何数据。