误解(本节最重要的一条)
「工作内容太多,记忆会膨胀。建几个专家,把它们拆开就好了。」
真相
专家隔离的是「角色」,不是「记忆」。 而且正好相反——建 N 个专家 = N 份同样的画像副本,反而多几份。
打开某个专家的记忆文件,内容是:
# User Memory Profile
> Last updated: 2026-09-21T06:00:20+08:00
> Version: 78
## Memory Block
**工作背景** 用户是……
**个人背景** ……
**当前关注** ……三段结论
那专家真正承载领域知识的是什么
是包内的人设文件(角色 / 能力 / 工作流 / 输出规范)和随包的技能、参考资料——那是文件,不是记忆。
想隔离的 | 该放哪 |
|---|---|
角色人设、工作流、输出规范 | 专家包内的人设文件 |
领域知识、参考资料 | 随包的参考资料 / 独立技能 |
具体做法(可复用流程) | 技能 |
要被检索的规范原文 / 台账 | 资料库 |
跨领域都要遵守的红线 | 用户级记忆 |
事实 | 证据 |
|---|---|
专家包真实目录在「市场插件」区,不在「自定义专家」区 | 自定义目录里只是一条几十字节的注册残留 |
专家包结构 = 配置 + 人设文件 + 头像 | 头像往往占体积大头 |
一次只能启用一个专家或专家团 | 官方说明明文 |
团队型 = 一个包内多角色 + 主理人 + 标准流程 | 团队规范文档 |
团队型铁律 | 主理人亲自建团队、成员产出不得代写、跨成员信息必须经主理人中转 |
运行时组队无需预建专家 | 临时组队,任务结束即散,不产生新记忆文件 |
删专家后市场注册表自动清空 | 移走包目录后注册数组自动变空 |
一条已更正的误判(值得记住的过程)
曾记录某个专家是「空壳」——其实是完整包(含五大核心能力、输出纪律要求)。
当时只看了「自定义专家」目录下的残留,没找到它在市场插件区的真身。
⇒ 与第 4 篇那条教训同源:判断「有没有 / 空不空」之前,搜索路径必须穷尽。
路 | 隔离什么 | 记忆影响 | 代价 |
|---|---|---|---|
A · 多个 Agent 型专家 | 角色人设 / 工作流 / 输出规范 | ❌ 每个专家多一份画像副本 | 一次只能启用一个;日常混着做要来回切 |
B · Team 型专家团 | 多角色标准流程 + 真并行 | ❌ 同上 | 预置重(建包 + 头像 + 校验注册);小问题也走编排会变重 |
C · 运行时组队 | 任务级上下文(子代理各自独立) | ✅ 不产生新记忆 | 零预置;会话结束即散,不留资产 |
D · 技能 + 多工作区 | 知识按需加载,用时才读 | ✅ 不进记忆 | 无角色人格约束 |
定案:以 C + D 为主,专家只在「强输出纪律」时建
依据:实际工作是零散穿插的(一个下午可能既改数据又写代码又推进度),而专家机制要求「一次启用一个」——与真实节奏冲突。
而且真正吃掉记忆的不是「谁在做」,而是「知识写进了记忆文件」。
官方专家中心缓存文件里实测:专家总数约 447 个,其中 Agent 型约 393 个、Team 型约 54 个。
每个条目的核心三字段是包名 + 角色名 + 人设文件路径;另有包装字段(显示名 / 头像 / 职业 / 快捷提示词 / 默认开场语 / 标签)。
expertType : agent
agentName : <角色名>
agents : ["./agents/<角色名>.md"] ← 人设本体
skills : [若干技能] ← 能力
displayName / profession / avatar / quickPrompts ← 包装一句话
Agent 型专家 = 1 份人设提示词 + N 个技能 + 一层商品包装。
概念 | 本质 | 与 agent 的关系 |
|---|---|---|
Agent | 执行实体:一份系统提示词驱动的对话体 | — |
专家(Agent 型) | 插件包:1 个人设 + N 个技能 + 包装元数据 | ≈ agent + 包装,不等同 |
专家团(Team 型) | 一个包内 N 个 agent(1 主 + N 员)+ 固定分工流程 | 多个 agent 的预制组合 |
主智能体 | 身份文件定义的人格,全局必载 | 是 agent 人格,不是专家 |
子代理 | 运行时临时派生,无头像、不进市场、结束即散 | 是 agent,不是专家 |
反向也要说清
agent ≠ 专家。 专家是「能在专家中心里被选中、有头像有名字、可安装可分发」的那部分 agent;会话里临时拉起的、以及主智能体本身,都是 agent 但不是专家。
某团队型专家的成员数组:一个 lead(首席角色)+ 若干 member(各领域专家),每人一份独立的人设文件。
⇒ 一个 team 包 = N 份独立人设 + 一套分工约定,成员各是各的 agent。
实测:会话记录与专家历史记录对比后确认——专家的绑定粒度是「会话」,不是「工作空间目录」。会话天然挂在某个工作目录下,所以效果上约等于「每个工作空间各自选」,但严格说是「每个会话各自选」。
# | 推论 |
|---|---|
1 | 同一工作空间开多个会话 → 可挂不同专家,互不干扰 |
2 | 换会话不自动继承,靠历史记录一键重选;该记录是「召唤过的历史」,不是「当前生效」 |
3 | 一个会话一次只能启用一个专家或专家团 |
4 | 专家不随工作空间走,也不进同步:包在运行时缓存目录,换设备要重新下载 |
一句话
别人替你写好的「人设 + 工作流 + 技能」预制件,打包成插件供一键装载。不是额外的系统能力。
外壳提供的 | 实质 |
|---|---|
可发现 / 可装载 / 版本更新 | 市场里一眼看到、一键装、作者推送更新 |
一键组合(人设 + N 技能 + 脚本打包) | 省掉「每次重新组装」的动作——这是唯一实打实的好处 |
分发给别人 | 团队共用同一人设 |
外壳唯一不可替代的一点
技能是「触发才加载」,人设是「一直在」。 把「依据先行、注条款号」写进技能,只在触发那个技能时生效;写进人设,整个会话都生效。
⇒ 但这一点已被项目级记忆替代:进项目必载、全程生效,同样能承载「这个空间里始终要遵守的纪律」,还不占画像副本。
判断
只靠工作空间区分,保证不了质量。但「工作空间 + 技能 + 已收敛的记忆」三层叠加,能保证到相当高的程度——前提是质量必须变成硬约束,而不是临场发挥。
它管不了的 | 该谁管 |
|---|---|
跨空间的共性做法 | 用户级技能(跨空间通用) |
同一空间内的多角色切换 | 技能触发 |
输出质量的稳定性 | checklist,不靠「我记得上次怎么做」 |
一句话判据
质量保证程度 ≈ 技能覆盖率。与套不套外壳无关。
已写进技能的领域:约束是硬的,每次必执行 → 能保证。 没写进技能的领域:只能临场发挥,工作一多就会飘 → 不能保证。
实测的一个典型缺口
盘点发现:某几个「产出交付物」的技能里,关于交付规矩的关键词命中数为 0——也就是说导出到哪、什么格式、要不要生成预览文件、出图前要不要先征得同意,每次都得口头说一遍。
修法不是在这几个技能里各贴一份,而是新建一个小技能「交付检查清单」,一处定义、多处调用——在各处复制会变成「改一处漏三处」的配置漂移。
粒度 | 机制 | 说明 |
|---|---|---|
知识边界 | 工作空间 + 项目级记忆(进项目必载) | ✅ 已有,零成本,这是主力 |
角色边界 | 会话 → 选专家 | 可用;但别指望它隔离记忆 |
任务边界 | 运行时临时组队 | 按需使用 |
生效范围要精确
工作空间解决的是「横向」问题:多类型任务互不串味。 它不解决「纵向」问题:同一件事第 20 次做,还做得一样好。
后者归技能,不归专家也不归外壳。所以准确说法不是「工作空间已经足够」,而是:
工作空间(横向隔离)+ 用户级技能(纵向复用)+ 会话纪律(不串味)= 当前够用。少任何一层都有洞。
# | 触发 | 该做什么 | 不该做什么 |
|---|---|---|---|
1 | 同一件事出现在 ≥3 个工作空间 | 抽成用户级技能 | 建专家 / 建 agent |
2 | 需要把能力交给别人用或发布 | 才考虑外壳 + 专家包 | 现在就学 |
3 | 单个任务内部要多路并行侦察 | 临时组队,用完即散 | 预建专家团 |
一句话记住
隔离靠目录,复用靠技能,质量靠 checklist。专家和外壳只在「给别人用」那一刻才值钱。
机制 | 同步什么 | 谁触发 | 是否可控 |
|---|---|---|---|
① 自建版本库 | 身份文件、用户级记忆、技能、工具脚本、项目记忆镜像 | 手动 | ✅ 完全可控,可查可回滚 |
② 项目记忆镜像 | 各工作空间的 MEMORY.md | 由同步脚本每次自动刷新 | ✅ 脚本内 |
③ 平台内置同步 | 平台自己的会话 / 工作区映射 | 自动 | ❌ 黑盒 |
判断原则:换设备还要不要、体积大不大、是不是本机独有。
内容 | 理由 | |
|---|---|---|
✅ 同步 | 身份四件套 | 换设备必须还在 |
技能目录 | 可复用能力 | |
工具脚本 | 含环境踩坑清单 | |
项目记忆镜像 | 只搬 MEMORY.md | |
❌ 不同步 | 运行时大文件(数百 MB) | 体积 |
数据库 / 会话 / 日志 | 本地性强 | |
连接器状态 | 每台设备不同 | |
凭据密钥 | 永不同步 | |
设备标识 | 本机独有 | |
日期日志镜像 | 只搬 MEMORY.md,日志不搬 |
教训一:通配路径的层级
写忽略规则时,必须用前导斜杠限定根目录。写成不带斜杠的形式会匹配任意层级,把项目记忆镜像一起忽略掉。
实测中还踩过一个变体:规则里有拼写错误,导致它从未生效——这才是「本该被忽略的文件被纳入了版本库」的根本原因。
教训二:规则只对「此后新增」生效(本机踩过三次)
已进入版本库的旧文件不受新规则影响。 定规则时必须同时做一次全库存量清理 + 用「列出被跟踪文件」的命令核对,否则规则只对一半数据成立。
实测的第三次表现:约定「镜像只搬 MEMORY.md」,但某个项目的历史日志因为是老 tracked 文件,新规则管不着,53.8 KB 一直在同步。
为什么体检没发现:镜像一致性校验只比对 MEMORY.md,日志根本不在比对范围内。 ⇒ 只有「列出被跟踪文件」这一步能检出这类问题。
连起来看
连接器凭据是绑定本机的、加密存本地、且不进同步仓库。
⇒ 换设备后,连接器必须重新授权。 你在办公电脑绑过的服务,到家庭电脑上不会自己出现。
而连接器状态同时又是「可重新绑定」的——不进仓库是安全考虑(凭据不外流),代价是换设备要重来一次。
盲区:新建的目录可能不在同步范围内
实测发现:自建的 MCP 服务器目录、新建的技能目录都还是「未跟踪」状态,相关配置文件的改动也未提交。
⇒ 换台设备,配置文件同步过去之后指向的服务器代码不存在,连接器直接失效。
修法:把这些目录纳入版本库(凭据与密钥文件继续排除)。
教训:新建的东西不会自动进入同步范围。 每次新建目录 / 技能 / 脚本后,都要确认它有没有被跟踪。
项 | 现状 |
|---|---|
资料库有 web 端 | 手机可打开 |
看板类内容 | 走库内打开(未发布)——数据没暴露公网,这是对的 |
移动端本机模式 | 可用:手机当遥控器、电脑干活,本地技能与脚本都可用 |
移动端写入 | 建议不做内容生产,只做「查看 + 勾选」 |
为什么建议移动端只做「查看 + 勾选」
与 L4 那条判据一致:资料库是被访问层,不是生产层。
另外还有一个实际原因:移动端写入容易和 PC 端冲突(同一份数据两处改,容易出现覆盖)。
通路 | 做法 | 约束 |
|---|---|---|
A · 资料库页面 / 表 | 定时任务把结果写进一张表或覆盖一个页面节点 | App 内打开;注意发布 = 公网 |
B · 自建 web + 隧道 | 生成页面推到自己的服务器,经隧道暴露 | 依赖服务器常开;自有域名可控性强 |
C · 邮件推送 | 跑完把结果当邮件发到手机 | 主动推送,不用记得打开;易淹没在收件箱 |
本节可带走的判据
文中所有「实测」「xx KB」「xx 个」这类数量,均来自某一台真实机器的快照,请当作方法示范而非通用阈值;真正通用的是判据与因果关系。
原创声明
本文系「当月光落下」原创,首发于腾讯云开发者社区。内容来自作者在实际使用中的逐条实测整理, 所有结论均有本机实机验证或真实接口调用支撑;文中出现的数量均为特定环境下的实测快照, 仅作方法示范,不作为通用阈值。
如需转载,请注明作者「当月光落下」及首发出处,未经许可不得用于商业用途。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。