嗨!一切都还好吗?我是 Lena。
几周前,我坐在我常去的咖啡店里,想让 Claude Code 记住我上一周解释过的东西。它没记住。我得把整段上下文再打一遍,我还记得自己就那样盯着屏幕发呆想——等等,那些东西都去哪儿了?
那一刻把我带进了一个没想到的兔子洞。因为 Claude Code 里的"local",并不是我以为的那个意思。而我以为我理解了的东西和实际在发生的事情之间的那条缝——是……确实值得写下来的。
在本地运行 Claude Code 到底意味着什么
本地 CLI 执行 vs 云端托管的 session
当你在本地运行 Claude Code 时,CLI 住在你自己机器上——但真正的模型推理仍然发生在 Anthropic 的云上。你的终端在和 API 说话;干重活的不是你的笔记本。
是本地的:你的文件系统、你的项目结构、你的命令历史、Claude 创建的输出文件。不是本地的:模型权重、算力,以及 Claude 在 session 之间"知道"的任何东西。
这个区分很重要,尤其是如果你在搭 agent workflow,并期待某种持久智能会在本地累积起来。它不会——至少不是自动的。
在 Linux、Mac、Windows 上安装 Claude Code
截至 2026 年 3 月,Claude Code 通过 npm 分发,需要 Node.js 18+。各平台上的安装方式一样:
npm install -g @anthropic-ai/claude-code
然后认证:
claude login
在 Linux 上,如果安装后找不到 claude 命令,你可能需要把 npm 的全局 bin 目录加进 PATH。Windows 用户跑 WSL2 的话就把环境当 Linux 看。原生 Windows PowerShell 支持是存在的,但在文件路径处理上有一些边界情况——在假设你的配置"应该没事"之前,值得先看看 Anthropic 的 Claude Code 文档。
本地 Skills 和记忆
CLAUDE.md 和项目级 skill 文件
这一段我读了两遍。
Claude Code 会在每个 session 的开头,从你项目根目录读一个叫 CLAUDE.md 的文件。把它当成一份"交接备忘"——你把指令写在那里,每次你打开这个项目,Claude 都会把它捡起来。
# My Project Context
- This is a Next.js 14 app using TypeScript
- Always use pnpm, not npm
- Component files live in /src/components
- Prefer functional components with explicit return types
这不是记忆。这是"上下文注入"。这个区别很微妙,但它改变了你看待这个工具的方式。Claude 不是在 记得——它是在 读。每一个 session 都是。
你也可以在子目录里放 CLAUDE.md。Claude Code 会根据你当前在项目里工作的位置,加载相关的那一份。如果你 codebase 的不同部分有不同的惯例,这个机制有用。
本地上下文怎么跨 session 累积
我开始留意后发现:上下文不会自己累积。会累积的是 CLAUDE.md 这份文件本身——前提是你每个 session 之后都手动去更新它,把你学到的东西或者走通的 pattern 写进去。
这是手工活。你就是那个记忆层。
有些人会写小脚本,把 session summary 自动 append 到 CLAUDE.md。那是一个合理的 workaround。但开箱状态下,这个文件是静态的,直到你去编辑它。
在今天的 Claude Code 里,"记忆"是什么意思
截至 2026 年初,Claude Code 没有像一些更新的 agent 框架那样的原生持久记忆。没有一个后台进程在悄悄构建你偏好的知识图谱。
存在的是这些:
CLAUDE.md,用来存项目级上下文- 单个 session 里的对话历史
- Claude 创建或修改的文件——它们能持久,是因为它们就是文件
最后这一点其实比听起来更厉害。如果 Claude 生成了一个可复用的 utility function 并保存到你的 repo 里,那个能力现在就进了版本控制。这是以可能最可靠的方式在持久。
本地执行是否让能力持久化变得更容易?
优势——持久化文件、版本控制、本地 skill 库
在本地跑给你在搭持久能力上带来真实的优势——只是不是我一开始以为的那种。
| 什么会持久 | 怎么持久 |
|---|---|
| Claude 写的代码 | 保存到你的文件系统,被 git 跟踪 |
| 项目惯例 | 写在 CLAUDE.md 里 |
| 可复用的 pattern | 作为真实文件保存到你的 repo 里 |
| Workflow 脚本 | Shell 脚本、Makefile 等等,Claude 帮你一起写 |
版本控制是这里的杀手锏。Claude 帮你搭的每一个 pattern 都会变成一个 commit。你的 git 历史就变成一条累积能力的时间线。这是真正的持久化——只是不是自动化的。
局限——仍然是单 agent,仍然没有 agent 间继承
Claude Code 作为一个 agent 跑在一个 session 里。没有任何内建机制,让一个 Claude Code session 把它学到的东西分享给另一个 session——哪怕那另一个 session 是在同一个项目、另一个终端窗口里的。
这是硬边界。你没办法让 Project A 上的 Claude Code 自动通知 Project B 上的 Claude Code。学习不会传播。每个 session 都是从你手动写进 CLAUDE.md 的东西,和项目里已有的文件重新开始。
对团队来说,这造成了一个有意思的挑战。如果一个开发者把你们共享 codebase 的 CLAUDE.md 打磨得很好,其他人就得用同一份文件。协作是人牵线的,不是 agent 牵线的。像 LangGraph 的多 agent 协调 pattern 这些项目在探索跨 agent 协调会长什么样,但 Claude Code 目前还没把它原生实现进去。
本地状态和网络层可复用资产之间的那条缝
这条缝我一直在想。本地状态是你的——它住在你的文件系统、你的 git repo、你的 CLAUDE.md 里。这些都很好。但它不参与任何比这更大的东西。
网络层的可复用资产意味着:Claude 在帮你的过程中学到的东西,能以某种被验证过的形式,成为别的 agent 在做类似问题时可以用的资源。本地 Claude Code 坐在这条缝的一边。那条缝会不会闭上、怎么闭上,是我还在看的东西。
本地 agent 作为能力工程的起点
在发布到网络之前,先在本地搭可复用的 pattern
有一个 framing 对我有帮助:本地 Claude Code 是一个适合 打磨 pattern 的地方——在它们准备好被分享到任何地方之前。
你迭代、你打磨、你把能跑通的版本编码进文件和 CLAUDE.md。当一个 pattern 站得住脚——一个 prompt 模板、一个代码生成 workflow、一种 debug 路径——它就是已经文档化过、可测试的。那是任何未来的"能力分享系统"的原材料。
OpenAI 的 Swarm 项目 做过轻量级多 agent 协调的实验,其中一个 takeaway 是:定义良好的单 agent 行为,是有效协作的前提。本地优先不是局限——它是工作真正发生的地方,在它被规模化之前。
为什么"本地优先"不等于"只有本地"
我早期犯的错误大概是:把"本地"当成一个永久状态,而不是一个起点。
本地执行给你控制、速度,以及和你真实文件系统的整合。那是你做细活的地方——把"一个好的 workflow 到底长什么样"慢慢搞清楚。一旦那件事想通了,怎么分享它——和队友、和别的项目、和别的 agent——就变成了一个独立的、有意思的问题。
Google 发布的 A2A(Agent-to-Agent)协议规范 是把"agent 之间怎么跨系统沟通能力"正式化的其中一次尝试。Claude Code 会不会和这些正在成型的标准整合,是一个值得继续关注的问题。
边界和 trade-off
几件我希望有人在开始前告诉过我的事:
CLAUDE.md 有上下文上限。 如果它太长,它会开始把其他有用的上下文挤出窗口。让它保持聚焦。定期修剪。
本地文件的好坏取决于你的 git 卫生。 如果你没有在持续地 commit Claude 的输出,当你换机器或者重置环境时,那种"持久化"就消失了。
API 还是有 rate limit。 在本地跑不会让你免于使用约束。重度 agentic session——尤其是带文件操作和工具使用的那种——比对话式使用更容易撞到上限。Anthropic 的 rate limit 文档 里有当前 tier 的详情。
Claude Code 的工具使用在每个 session 里是沙盒化的。 文件读写、终端命令在这个 session 内有效。除非结果落到某个文件里,否则什么都不会带到下一轮。
这些边界我也不敢说我完全都摸清了。但这是我现在对它的理解。
FAQ
- 我要怎么在本地安装 Claude Code?
通过 npm 安装:npm install -g @anthropic-ai/claude-code,然后跑 claude login 来认证。需要 Node.js 18 或以上。在 Linux / WSL 上,确认你的 PATH 包含 npm 的全局 bin 目录。
- Claude Code 有持久记忆吗?
没有那种"自动"意义上的持久记忆。每个 session 都是从头开始。持久性来自 CLAUDE.md(由你手工维护)和 Claude 在你项目里创建、并被提交到版本控制的文件。
- CLAUDE.md 是什么,它怎么工作?
它是一个放在你项目根目录(或者可选地放在子目录)的普通 markdown 文件。Claude Code 在每个 session 的开头会读它。你用它来记录项目上下文、惯例和偏好。把它当成一份交接备忘,而不是一个记忆系统。
- Claude Code 的 skills 可以在项目之间迁移吗?
不能自动迁移。你可以手动把你的 CLAUDE.md 和任何可复用文件从一个项目拷贝或者改写到另一个项目,但没有内建的跨项目能力分享。这是当前这种"本地优先"架构有意义的一条边界。
- 对 agent workflow 来说,本地 Claude Code 比云端托管好吗?
看你在优化什么。本地给你直接的文件系统访问、在项目特定上下文上更快的迭代,以及对你文件完整的控制。云端托管(比如 Claude.ai Projects)给你更容易的分享和协作。对本地 codebase 复杂的个人开发 workflow,本地通常赢。对团队 workflow 或者非技术用户,云端的功能可能更重要。
Previous Posts:
Previous Posts:
- 如果你想更好地理解 Claude Code 怎么在底层处理 skills 和上下文:Claude Code Skills Feature Explained
- 如果你在研究怎么跨项目搭建、复用和扩展 skills:Claude Code Skills: Build, Share, Extend Guide
- 如果你在试图理清 skill 文件和真正的 agent 能力之间的差别:Claude Skills: skill.md vs Agent Capability
- 如果你在想怎么把行为串起来、搭更结构化的 agent workflow:Agent Hooks: AI Execution Chains Explained
- 如果你在把 MCP 当作把 Claude Code 扩展到本地局限之外的办法:How MCP Servers Work




