跳到正文
月明Verse朱志勇 · 独立开发者
← 返回文章库

· 月明Verse · Agent 与产品 · 16 分钟阅读

AI Agent 不该只是一个聊天框:NomiFun 把它做成了真正的“数字伙伴”

拆解 NomiFun 如何把长期记忆、知识、Skill 和独立工作区组织成跨会话延续的数字伙伴,并附上实际产品证据。

真人作者与体现长期记忆、伙伴技能、知识及独立工作区的产品笔记板。

今天大部分 AI Agent,都从聊天框开始,也停在聊天框里。

问题不在聊天框这个界面。聊天框很适合提问:你说一句,它答一句;需求复杂一点,就多聊几轮。

真正的限制是,很多产品仍把一段会话当成主要、甚至唯一的长期信息边界。新开一个会话,刚刚建立的背景就断了;换一个模型,过去形成的偏好和方法也未必还能接上。

聊天框负责交流,会话承载这一次上下文。如果 AI 要长期了解一个人,还需要一个跨会话、跨模型的稳定载体。

最近我一直在看开源项目 NomiFun。它做了会话、知识库、Skill、自动化和本地工作区,其中最有意思的,是它没有把这些功能继续塞进一个越来越大的聊天窗口。

它选择了另一种组织方式:让 AI 先成为一个伙伴,再带着自己的记忆、知识和能力,进入不同的工作会话。

一个住在电脑里的数字伙伴

聊天记录越来越多,AI 却没有真正认识你

很多人都遇到过这种情况。

你已经反复告诉 AI,自己的读者不是程序员,不要堆技术术语;写公众号时先讲真实问题,不要一开头就说“随着人工智能快速发展”;标题也不要动不动就“颠覆”“革命”。

在当前对话里,它记住了。

第二天新建一个窗口,同样的毛病又回来了。

于是你把要求整理成提示词。提示词越来越长,又把历史文章、品牌资料和工作流程放进知识库。后来还要给它接工具、配 Skill、设自动化任务。

单个能力都能解决一个问题,但它们没有共同的归属。

只要会话会结束、模型会更换,长期积累就需要一个不随两者消失的载体。它可以叫账号档案、Agent Profile,也可以叫伙伴。NomiFun 选择的是伙伴。

记忆属于哪个 AI?知识库该挂在哪个会话?哪些 Skill 代表这个助手的做事习惯?换一个模型以后,过去积累的东西还算不算数?

如果这些问题没有答案,所谓“长期陪伴”最终只是聊天记录保留得更久。

这也是很多 AI 产品目前最尴尬的地方:模型越来越聪明,用户却仍然要不断重复介绍自己。

模型在进步。

关系没有积累。

每次换一个会话,都要重新介绍自己

NomiFun 先把“模型”和“伙伴”分开了

我们很容易把一个 AI 等同于它背后的模型。

用 Claude,就是 Claude;换成 GPT,面前似乎又变成了另一个 AI。于是模型一升级,助手也跟着换了一代。

NomiFun 的处理方式不一样。

伙伴有自己的名字、形象、人格、聊天线程和长期配置。模型只是伙伴当前使用的推理能力,可以更换;挂在伙伴身份下的配置与积累,不需要跟着模型一起清零。

这里的“伙伴”,不是在证明软件拥有人的意识或人格。它首先是一个工程上的稳定身份容器:记忆、知识和能力都能挂在这个身份下面。

NomiFun 多伙伴产品界面

这一步非常关键。

当模型不再等于伙伴,很多原本散落的能力才有了稳定的主人。

记忆不再是系统随手保存的一段摘要,而是归属于某个伙伴的长期信息。知识库不再是所有聊天都能翻阅的公共文件柜,而是这个伙伴持续使用的专业资料。Skill 也不只是安装在软件里的功能,而是挂在伙伴身上的一套做事方法。

你甚至可以同时拥有多个伙伴。

一个长期跟着你做内容,知道账号定位、表达习惯和历史选题;另一个熟悉代码项目,记得技术选择和排错方式。它们面对同一个用户,却不会自动共享全部记忆。

有人可能会觉得,共享不是效率更高吗?

但如果所有伙伴拥有同一份记忆、同一批资料、同一套技能,那它们只是几个不同的头像。真正让伙伴彼此不同的,并不只是人设,而是各自参与过什么、保存了什么、掌握了什么。

独立记忆不能证明软件拥有人的身份,却能让多个伙伴不再只是换头像,也为它们长期形成差异提供了条件。

记忆、知识库和 Skill,不能再各管一摊

NomiFun 的伙伴设计里,记忆、知识库和 Skill 分别回答三个问题。

记忆回答:它了解你吗?

知识库回答:它懂这件事吗?

Skill 回答:它会把事情做完吗?

NomiFun 伙伴的 Skill 能力系统

这三者经常被混在一起。

比如“公众号不要写得像说明书”,这是用户偏好,适合进入记忆;品牌定位、产品资料和过去发布的文章,是需要反复检索的系统资料,应该放进知识库;从选题、长文到配图、再到多平台分发,则是一套可以稳定执行的 Skill。

如果全部塞进提示词,内容会越来越长,边界也越来越乱。把所有信息都叫作记忆,同样会出问题。一次性的项目材料、长期有效的个人偏好和可重复执行的方法,本来就不是同一种东西。

NomiFun 没有试图用一种“超级记忆”解决所有问题。

它让伙伴成为上层身份,再让记忆、知识库和 Skill 各自承担不同职责。

这带来的变化,不只是 AI 知道得更多。

更重要的是,系统给三类信息安排了不同的落点:长期偏好进入记忆,体系资料进入知识库,可重复的方法进入 Skill。

记忆、知识与 Skill 归属于同一个伙伴

一个真正好用的伙伴,不能只会把你说过的话存下来。

它还要把与你有关的事实、某个领域的知识,以及完成工作的能力分开管理。

伙伴需要连续性,任务需要隔离

当一个伙伴越来越了解你,另一个问题马上会出现。

如果所有任务都在同一个空间里完成,长期积累很快就会变成长期混乱。

写公众号的素材、客户项目的文件、正在修改的代码、随口聊过的生活安排,全都堆在同一个聊天框里。上下文确实很长,但边界消失了。

很多 AI 产品把希望寄托在更长的上下文上,仿佛模型只要能一次读完更多内容,就能解决所有问题。

可人工作时并不是这样。

一个了解你很多年的同事,不会把你们聊过的所有事情摊在每一张项目桌上。他会带着对你的理解进入新项目,但这个项目仍然有自己的资料、过程和边界。

所以 NomiFun 又做了一层区分:

伙伴负责连续性,工作区负责隔离。

NomiFun 独立会话工作区

每个会话可以拥有自己的工作区。写文章就在文章的房间里处理草稿和配图,改代码就在项目房间里运行文件和测试。伙伴可以参与不同任务,但任务之间不需要共享全部内容。

工作区首先隔离的是文件、产物和执行环境。它解决了任务材料混在一起的问题,但仅凭这一层,还不能说明伙伴进入新任务时会带入哪些长期信息。

真正把“伙伴连续”和“任务隔离”接起来的,是下一步召唤机制。

“召唤伙伴”,不是把所有记忆倒进新会话

NomiFun 里还有一个很有画面感的动作,叫召唤伙伴。

当一项工作比较重,需要单独处理文件、调用工具或长时间执行时,伙伴可以建立一个新的工作会话,再进入这个会话协助完成任务。

如果只是给新会话加一段相同的人设,这个功能没有多大意义。

真正有价值的是,伙伴进入工作会话时,可以带上自己的 Skill,并从长期记忆中挑选和当前任务有关的部分。不是把全部经历打包复制,而是只带这次工作需要的东西。

被带入工作会话的伙伴记忆还是只读的。

做一次项目,不应该随意改写一个伙伴对你的长期理解。任务中产生了什么,哪些内容值得留下,需要经过新的判断,而不是执行过程自动污染记忆。

这套设计背后有一个很朴素的原则:了解一个人,不等于每项任务都需要他的全部信息。

工作区隔离任务材料,召唤机制限制带入的信息。两者放在一起,可以减少无关资料进入工作会话,也降低一次任务反过来改写长期记忆的风险。

伙伴跨工作区保持连续,任务产物彼此隔离

我们可能一直用错了衡量 AI Agent 的单位

今天评价一个 AI,大家习惯看模型排行榜、上下文长度、工具数量和任务成功率。

这些当然重要。

但它们衡量的主要是一次任务能做多好。

个人 AI 还有另一条尺度:相处半年以后,它是否真的比第一天更懂你?换掉背后的模型以后,过去的积累是否还在?进入不同项目时,它能否带上相关经验,同时把不相关的信息留在外面?

如果这些问题没有解决,Agent 再强,也只是一个能力惊人的临时工。

NomiFun 目前仍然是快速迭代中的开源项目。伙伴记忆是否准确、普通用户能不能轻松配置、多伙伴长期使用后会出现哪些新问题,都需要继续验证。

但它提出的产品方向很清楚。

聊天框围绕一次交流组织信息。

数字伙伴围绕一个持续身份组织记忆、知识和能力。这里的“数字伙伴”,指的不是拟人的称呼,而是一组可检查的产品条件:身份能跨会话保留,记忆有独立归属,知识和 Skill 可以持续积累,进入具体任务时又有明确边界。

前者追求这次答得更好。

后者还要回答:下一次见面时,我们是否真的不必从头开始?

AI Agent 的下一步,未必只是拥有更多工具。

它需要一个能够承接长期积累的稳定身份层,也需要一套不会把所有事情混在一起的边界。

聊天会结束。

模型会更换。

任务也会一个接一个地过去。

一个长期服务你的个人 AI,应该能在这些变化之后继续“认得你”:保留已经确认的偏好,找到相关的项目知识,沿用形成的方法,同时不把无关信息带进新任务。

这才是“伙伴”两个字最有价值的地方。

如果你可以长期培养一个数字伙伴,你最希望它记住什么?又有哪些事情,只应该留在某一个工作区里?

—— 月明水清深

Share: