Claude 生态读取关系图谱

Chat、Cowork、Project、Claude Code 之间的记忆、指令与读取边界。全部结论经实机验证,与官方文档冲突处以实测为准并标注。项目名与文件内容已做脱敏处理。

2026-08 整理 · 实测环境:Windows 桌面端 + Web + 浏览器扩展

01一个核心区分:注入面 vs 可达面

整份文档最重要的一条。把这两件事混为一谈,会产生错误的"隔离感"。

① 注入面 —— 开局自动进上下文 Instruction 层层叠加 账户级「Instructions for Claude」 Chat + Cowork 设置 › General,字段说明写明覆盖两者 Cowork 全局指令 仅 Cowork 只存在于桌面应用,Web 端设置里没有这一栏 ★ Project 指令 该项目的 Chat + Cowork 唯一横跨两种会话的可靠通道 Memory 格格隔离 Chat 全局记忆 仅项目外聊天 Chat 项目记忆 每个项目一份 Cowork 项目记忆 每个项目一份 Cowork 非项目 无记忆 四格互不注入,也没有优先级 Chat 的历史搜索同样受这条边界限制 Project 边界 — 只拦得住"自动注入" 主动调工具 → 直接穿过 拦不住 ② 可达面 —— 主动查就能拿到 任意一个 Cowork 会话 包括不属于任何 project 的 ▸ 全部 Cowork 会话逐字稿 — session_info 返回扁平列表,压根不带 project 字段 ▸ 全部定时任务与 Artifacts — 都堆在同一个目录下,无项目分区 ▸ 本地文件夹 · 浏览器可打开任意 chat 页面读内容 · Cowork project 还能主动链接 chat project
Project 隔离的是"自动想起",不是"能不能查到"。记忆不会跨项目注入——这条成立。但只要主动调工具,跨项目的内容全都拿得到。

这个区分有实际后果:如果你原本指望把敏感内容放进单独的 project 就能与其他会话隔离开,那是不成立的。目前真正做到不留痕的只有 Chat 侧的隐身对话(不写入历史、不进记忆),Cowork 这边没有对等机制。

02三条互不相通的上下文栈

Claude Code 不是第三种模式,是完全另一套状态系统——共用的只有账号、额度和硬盘。

Chat 云端 · 逐轮对话 开局读的 Instruction 账户级 Instructions for Claude 设置 › General ★ Project 指令 项目级角色与口径设定 开局读的 Memory 全局记忆(项目外聊天) 项目记忆(项目内) 历史对话搜索(受项目边界) 状态全在云端 读不到本地文件 Cowork 云端跑 · 可伸手到本机 开局读的 Instruction 账户级 Instructions for Claude 与 Chat 同一份 Cowork 全局指令 桌面应用独有 ★ Project 指令(同一份) Folder 指令(绑文件夹时) 开局读的 Memory 项目记忆(仅项目内会话) 非项目会话 = 无记忆 状态在云端 · 经桌面 app 够到本机 Claude Code 纯本地 · 按工作目录组织 开局读的 Instruction ~/.claude/CLAUDE.md(用户级) CLAUDE.md(工作目录) CLAUDE.local.md · settings.json ✕ 不支持 Project 官方称计划支持 · 也不读上面两栏任何指令 开局读的 Memory Auto memory(Claude 自己写) ~/.claude/projects/<repo>/memory/ 会话历史 .jsonl 按工作目录分组存放 状态 100% 在本机硬盘上 没写 CLAUDE.md 就等于每次白纸开局 仅经浏览器 你的硬盘 — 三者唯一真正共用的东西 Cowork 能读 ~/.claude/(已实测) · Claude Code 能读 Cowork 的产出 · 两边都能读你的项目文件夹 三种分组维度互不可译:Chat 按项目分 · Cowork 按会话分(扁平) · Claude Code 按工作目录分
这三者之间ChatCoworkClaude Code
账户级 Instructions for Claude读读不读
Project(指令 + 知识库 + 记忆)支持支持不支持
云端记忆有仅项目内没有
CLAUDE.md / auto memory无关无关这是它的全部
技能与插件(SKILL.md 格式)部分通用通用
MCP 连接器共用账号配置共用账号配置本地各配各的
用量额度同一份同一份同一份
换台电脑还在吗在在不在

想让 Claude Code 的上下文跟着你走,只有一个办法:把 CLAUDE.md 放进被 Git 或云盘同步的目录。它在 Claude Code 里扮演的角色,正好等于 Project 指令在 Chat / Cowork 里的角色。

03Instruction 与 Memory 的关系

一个是每次开局必读的合同,一个是可能被想起的笔记。

Instruction 你写的规则 必然注入 确定性 本次会话上下文 Claude 实际看到的东西 判断相关才取 非确定性 Memory Claude 自动写的事实 记忆本质上是 instruction 的弱版本 —— 内容相似,但不保证生效
InstructionMemory
谁来写你手写(Folder 指令 Claude 可自更新)Claude 边聊边自动写
回答什么该怎么做 —— 口径、格式、禁忌你是谁、发生过什么 —— 角色、偏好、项目进展
是否保证生效是,每次开局注入否,Claude 觉得相关才调
跨 Chat / CoworkProject 指令通完全不通
跨 Claude Code不通,它只读 CLAUDE.md不通
你怎么改直接编辑对应层级的指令框Settings › Memory 里查看 / 编辑 / 删除
凡是"必须每次都生效"的东西,写进指令,不要指望记忆。

04Project 的真实作用

同一个 Project 里,Chat 会话和 Cowork 会话共享的是指令与知识库,不是记忆。

Project 项目共享层 知识库 · 指令 · 项目记忆 读 读 Chat 会话 对话式,逐轮往返 Cowork 会话 代理式,多步执行 → 写回项目记忆 ✕ 不改动项目内容 想留存要自己加进项目 ⚠ 项目记忆是否在两种会话间完全打通,官方文档未明说 混用时的硬规则 ① 绑了本地文件夹的 Project,   Cowork 会话只能在桌面端跑 ② Cowork 产出不自动进项目,   下次 Chat 会话看不到 四端都能进同一个 Project Claude Code 完全不支持 Project 跨 Project 的记忆不互通, 但逐字稿层面全部可读(见 01)
记忆不通,为什么还要放同一个 Project?图的就是共享层:Project 指令 + 知识库,两种会话都读得到,而且是确定性读到。Project 让你把"希望 Claude 每次都知道的东西",从不可靠的记忆里搬进可靠的指令和知识库里。

05实例:多项目下的可达范围

上半层隔离成立,下半层隔离不成立——同一批项目,两种结论。(项目名已脱敏)

6 个 Project — 记忆互不注入(隔离成立) 项目 A Chat 会话 ×0 Cowork 会话 ×1 绑定本地文件夹 独立记忆 项目 B Chat 会话 ×4 Cowork 会话 ×2 纯云端 Files 独立记忆 项目 C Chat 会话 ×4 Cowork 会话 ×0 纯云端 Files 独立记忆 项目 D Chat 会话 ×5 Cowork 会话 ×3 纯云端 · Memory 已积累 独立记忆 项目 E Chat 会话 ×2 Cowork 会话 ×3 绑定本地文件夹 独立记忆 示例项目 系统自带 未使用 Project 边界 拦得住记忆,拦不住工具 任意一个不属于 Project 的 Cowork 会话 无记忆、无项目指令、无知识库 · 却读得到上面全部六格的内容 实测结果 在一个不属于任何 project 的 Cowork 会话里,一次 session_info 调用返回了全部 22 个 Cowork 会话,逐字稿全文可读。 其中 9 个分属上述五个项目,13 个不属于任何项目 —— 返回时混在同一个列表里,没有任何分组标记。 最刺眼的一条:上面的"项目归属"是按会话标题推断的 —— 工具返回的数据里根本没有 project 字段 从工具的视角看,这六个项目在 Cowork 层面从来就不存在,只有一个扁平的会话池

这件事的实际后果:如果你把不同性质的内容(比如健康记录和财务分析)分到不同 project,指望它们互相看不见——在记忆层面确实互不串门,但任何一个 Cowork 会话,包括随手开的"帮我整理下载文件夹",都能把两边逐字稿一起读出来。

06项目文件夹:指定 vs 未指定

两种路由对应两种完全不同的知识来源与能力边界。

未指定文件夹(纯云端) 路由 /cowork/project/… 云端 Files 知识的唯一来源 有容量上限,界面上有进度条 单向同步 本地只读缓存镜像 AppData\…\.project-cache\<项目ID>\docs\ Web / 手机可正常打开 ✓ Claude 不会写回项目内容 外部 agent 看不到(只有那份缓存) 指定了本地文件夹 路由 /space/… 磁盘上的真实文件夹 受磁盘限制,没有容量条 双向读写 Cowork 会话 直接改文件 产出落在同一个文件夹里 Web 打开是空白页 ✕ 仅桌面可用 Claude 直接读写原文件 外部 agent 也能读到同一份
未指定(纯云端)指定了文件夹
路由/cowork/project/…/space/…
Web 与手机正常打开空白页,桌面独占
知识来源上传的 Files(有容量条)磁盘文件夹(无上限)
Claude 写回不写回,产出要手动加进项目直接改文件,产出自动落盘
版本管理重传一份新的走原有流程(Git、云盘同步…)
外部 agent读不到读得到,就是普通文件夹
没有所谓的"项目默认目录"。桌面端 用户目录\Claude\ 全量扫过,只有 Scheduled\(定时任务)和 Artifacts\(live artifacts),没有任何项目文件夹。那是 Claude 放自己产物的地方。项目只有两种状态:绑一个你选的路径,或者根本没有本地文件夹。

另一个发现:上传到云端项目的文件会在本地留一份只读镜像,路径形如 AppData\…\.project-cache\<项目ID>\docs\,原始 .docx 被转成 .md。所以 Cowork 读云端知识库不是实时调 API,是读这份镜像——这也解释了"读得到但改不了"。

一句话选型:指定文件夹换来的是"文件流",不指定换来的是"跨端"。有真实文件要反复迭代 → 指定;纯对话推演、随时随地要能开 → 不指定。

07终端:云端跟人走,本地跟机器走

真正的分界不是操作系统,而是"这台机器现在通不通"。

云端层 记忆 · Instruction · Project 知识 · 全部会话与 Cowork 产出 跟随账号 — Windows / Mac / Web / 手机 读到的完全是同一份,没有任何差别 装了桌面 app 的主力机 其他终端 Mac · Web · 手机 · 另一台电脑 本机直读 要主力机的桌面 app 在线 关机 / app 关闭 → 读不到 本机层 已连接的文件夹 · ~/.claude/(Claude Code 全部状态) 用户目录\Claude\ 定时任务 · Artifacts Mac 与 Windows 能力完全对等 · 本地会话下 Mac 走 Apple Virtualization.framework,Win 走 Hyper-V
能力桌面 Mac桌面 WinWeb手机
启动 · 接管 · 回顾任务●●●●
跨端接管同一会话●●●●
Projects●●●●
连接器 · 技能 · 插件●●●●
定时任务(云端跑)●●●●
Chat 记忆与历史搜索●●●●
本地文件读写●●◐◐
浏览器操作 · 电脑操作●●◐◐
Live artifacts●●○○
本地 MCP · 含本地 server 的插件●●○○
Claude Code 的上下文只在装了它、且有 ~/.claude/ 的那台机器上

● 原生支持  ◐ 经桌面 app 代理,那台电脑的 app 必须在线  ○ 不支持

08外部 agent 的边界

Codex、Cursor 等:唯一实际交集是你电脑上的本地文件夹。

没有任何通道 Anthropic 云端 Chat 对话记录 + 全局记忆 Project 知识库 · 指令 · 项目记忆 Cowork 云会话与产出文件 临时沙箱(会话结束即销毁) 经桌面 app app 关了就断 你的电脑 已连接的文件夹 就是普通文件 唯一交集点 Cowork 写下的文件 外部 agent 都能读 可读可写 外部 agent Codex Cursor Copilot … 只有本地 文件系统权限 另一个间接交汇:双方都连了同一个 MCP / 连接器(如 Notion、Slack)——那是同一个外部数据源,不是互相读对方

想做 Claude + 外部 agent 协作,交接点只能是磁盘上的文件。反过来 Cowork 也能读外部 agent 的工作目录——实测在 Codex 的默认输出目录下看到了完整的会话产出。

09实测记录与更正日志

本文档的结论来自实机验证,与早期推断冲突的地方一并记录。

实测证据

  • 实测跨项目读取成立。在一个不属于任何 project 的 Cowork 会话里,一次调用读到了 22 个 Cowork 会话的完整逐字稿,横跨五个不同项目。session_info 返回扁平列表,不含 project 字段。
  • 实测Cowork 能读 Chat,但走浏览器。session_info 返回 0 条 chat;通过浏览器扩展以已登录身份打开 claude.ai/chat/…,可读任意对话全文。权限来源是登录态,不是 Claude 内部数据通道——扩展没连时这扇门就是关的。
  • 实测账户级指令覆盖 Cowork。Settings › General 的「Instructions for Claude」字段说明原文写着 "across chats and Cowork"。Web 端设置里没有 Cowork 栏(搜索返回 No matching settings),Cowork 全局指令只存在于桌面应用。
  • 实测无项目默认目录。用户目录下的 Claude\ 只有 Scheduled\ 与 Artifacts\,无任何项目文件夹。
  • 实测云端项目文件有本地镜像。.project-cache\<项目ID>\docs\ 下存着 .docx 转换后的 .md。
  • 实测Claude Code 状态完全本地。~/.claude/ 下是会话历史与凭据,按工作目录分组;没有 CLAUDE.md 就等于每次白纸开局。
  • 实测folder-bound 项目桌面独占。/space/… 路由在浏览器里渲染为空白页。
  • 实测Claude 无法操作自己的应用窗口。computer-use 明确拒绝授予对 Claude 自身界面的控制权——否则它就能改自己的权限与设置。

更正日志

  • 更正"项目之间互不可读"是错的。早期图把"记忆隔离"画成了"读取隔离"。正确表述:Project 隔离的是自动注入,不是可达性。
  • 更正"Chat Project 与 Cowork Project 是两个独立对象"已过时。较新文档明确:从同一个 Project 既能开 chat 也能开 Cowork 会话,共用同一份项目知识。早期那张"一次性导入 / 链接"的单向箭头图是过渡期产物。
  • 更正"Profile 指令可能不覆盖 Cowork"推断错误。该字段说明原文即写明覆盖 Chat 和 Cowork。

仍未确认

  • 同一个 Project 内,Chat 记忆与 Cowork 记忆是否完全打通——官方文档未明说。
  • Cowork 项目数据是否已完成从本地存储到云端同步的迁移(两篇官方文档口径不一致,以桌面版实际表现为准)。