关于Claude Code我的疑惑
清明节前ClaudeCode源码泄漏了,好多人已经解析源码的妙处了。但是我总觉得自己看过,不如自己研究过的资料内化的好。所以过完清明,一有时间就来学习”先进思想”了。我得先表态:我是产品经理,扒源码打开看原理不应该是产品经理的技能,还是需求分析、讲故事的能力最重要。我只是想把“故事”从骨架到细节都理解清楚,所以拆开看细节。
我使用claude的感受主要有:
-
它不是纯聊天,是真的能做很多事。感觉它很“聪明”,我命令它执行的时候,很少很少出错。我很好奇它是如何规划的,如何决定用什么工具的?怎么保证工具的输出效果?(大部分工具,规划完做着做着就把任务忘了…)
-
究竟怎么记住我们沟通的信息的?我觉得它从来没有忘记过。
-
怎么确定一个topic的?怎么能理解到一个话题已经结束了?因为用其他AI的时候经常出现不合时宜的重启话题或者继续话题。
PS:没想到我都没为Claude充过值,还能吃上细糠看到充值都买不到的原理。
Query Loop流程
简单理解:Query Loop是拆解问题后不断的循环,直到问题解决为止,负责循环、调用LLM、执行工具。Coordinator就是一套”管理者”的大脑配置+专用工具,它让一个LLM从”自己干活”变成”指挥别人干活”。
给我的感受:
- 由一个coordinator指挥多个agent自己干活、回收结果的形式现在已经挺普遍了,不是什么新鲜事情了,不这么做才是有点奇怪;
- 但是我之前没见过Loop直到问题解决的形式,这个思想还是挺新颖的;
- PS:里面prompt写得好棒,我觉得有必要再把这个项目中的所有prompt捞出来学一下。写得任务清楚、边界清晰、没有废话,毕竟产品经理是prompt engineer,这个得好好学。
上下文和记忆管理
有两个概念:session和topic,一个session可以包含很多topics。Session是用户与AI交互的全局上下文容器,Topic是Session内的子上下文(对应用户单次连续意图,如 “查机票→问退改政策→选座位” 为一个 Topic)。这俩都有状态:Init、active、suspended、destroyed/completed,基本就是一个非常简单的状态机。
分了三层记忆:
管理记忆的流程图如下,主要cover内容:如何压缩记忆、如何使用/召回记忆、如何失效记忆。
「如何使用/召回记忆」
-
第一优先级(短期记忆):当前激活 Topic 的工具级临时缓存(最新工具调用结果、命令执行状态)、原始交互上下文(未压缩的最新对话)
-
第二优先级(中期记忆):当前 Topic 的压缩摘要(早期对话精简内容)
-
第三优先级(长期记忆):会话级全局配置 + 历史 Topic 元信息(跨话题通用信息)
「如何压缩记忆」
- 短期记忆更新:实时追加核心信息仅存「用户输入 + AI 响应 + 工具命令 / 关键输出 / 执行状态」,不存全量日志,保持轻量化;
- 中期记忆更新:压缩触发时更新短期记忆超Token阈值 → 自动生成摘要,替换短期记忆的早期内容;
- 长期记忆更新:话题 / 会话状态变更时更新仅同步Topic状态、会话配置、核心摘要,不同步原始冗余对话。
「如何失效记忆」
-
短期记忆失效:工具调用完成/超时 → 工具级缓存立即清理;Topic切换/挂起 → 原始对话停止更新,等待压缩
- 中期记忆失效:仅在Session 彻底销毁时失效;会话活跃期间永久保留,保障长对话不遗忘;
-
长期记忆失效:会话手动删除/超期归档 → 仅保留用户/项目核心偏好,原始会话记录清理,仅留存统计摘要。
给我的感受:
)。
工具管理
给我的感受:提前定义的工具都是非常必要、一定会用上的,而且支持添加其他工具,可拓展性比较好。把工具提前打包好的思想肯定是非常有必要的,不过不同的项目可能借鉴的工具范围也不同,还是要从场景出发去思考。
权限管理
定义了6种全局的权限模式,根据不同的权限模式走不同的流程。默认使用的是default模式,可以通过命令行来调整模式。
又在此基础上定义了规则,支持:alwaysAllow/alwaysDeny/alwaysAsk。
操作危险操作时流程为:
给我的感受:管的可真细致、灵活啊。
把这些内容都看完之后,不禁猜测团队究竟多少人、能赚多少钱、怎么讲故事吸引到融资的、团队是怎么管理的才能看起来代码挺和谐。希望有朝一日可以翻翻看他们的财报找答案吧!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/253601.html