打开网易新闻 查看精彩图片

Claude Code用户有个共同痛点:每次开新会话,AI都像第一次见你。你刚花20分钟解释完项目架构,关掉窗口,再打开——全忘了。一位开发者算了笔账:平均每天重复解释3.2次,一年浪费近200小时。

这个痛点被Keshrath用agent-knowledge解决了。这是一个开源MCP服务器,给AI agent装上永久记忆,还能跨设备同步。代码在GitHub开源3天,星标破千。

为什么"记忆"是AI coding agent的致命短板

为什么"记忆"是AI coding agent的致命短板

Claude Code的会话记录存成JSONL文件,但agent本身读不了。每次新会话都是空白 slate(石板),你得重新介绍项目结构、团队规范、踩过的坑。Keshrath形容这像"跟一个天才同事合作,但他有失忆症"。

更麻烦的是多设备场景。公司电脑配好的环境变量,回家用笔记本又要重讲一遍。有人试过把会话记录复制粘贴给AI,但JSONL文件动辄几万行,超出上下文窗口。

agent-knowledge的核心设计是双系统:一个给结构化知识,一个给原始会话。

Knowledge Base是git同步的markdown仓库,存在~/claude-memory。Agent能读能写,条目按projects、decisions、workflows、people、notes分类。每个文件带YAML frontmatter,每次写入自动提交推送。

打开网易新闻 查看精彩图片

Session Search则是对历史会话的TF-IDF全文检索。JSONL文件不再沉睡,变成可搜索的档案。Agent能查"上次部署报什么错""谁决定用PostgreSQL"。

技术实现:12个工具和一个本地dashboard

技术实现:12个工具和一个本地dashboard

agent-knowledge作为MCP server跑在stdio上,暴露12个工具供AI客户端调用。同时自动启动localhost:3423的web界面,肉眼浏览所有记忆。

知识同步的机制很直接:每次读取先git pull,写入后自动git add/commit/push。两台机器轮着用,知识库保持一致。有人测试过,从公司电脑push到回家pull,延迟不到5秒。

会话检索用TF-IDF打分,索引缓存60秒后按需重建。文件按修改时间缓存,没变动的跳过解析。六个预设过滤条件覆盖常见场景:errors(堆栈、异常)、plans(架构、TODO)、configs(配置、环境变量)、tools(MCP调用、CLI命令)、files(路径、修改)、decisions(权衡、理由)。

Agent可以问精确问题:"这个项目我以前遇到过什么错误?"

Keshrath在GitHub repo里放了个典型用例:调试部署问题时,agent自动查询knowledge base发现"需要设置DATABASE_URL",省去15分钟重复排查。

打开网易新闻 查看精彩图片

开源社区的反应:有人 fork,有人质疑

开源社区的反应:有人 fork,有人质疑

项目上线后,Hacker News和Twitter出现两种声音。支持者认为这是"AI agent基础设施的拼图之一",把记忆层从应用层抽出来,比让每个客户端自己实现更合理。

质疑者指向隐私风险。Git同步意味着记忆内容暴露在remote repo,公司代码的敏感信息可能外泄。Keshrath的回应是:默认用私有repo,且支持本地git server。

另一个争议是TF-IDF的局限性。相比向量检索,关键词匹配对语义相似但用词不同的查询效果差。Keshrath解释这是刻意取舍:TF-IDF可解释、零依赖、对代码和错误日志等结构化文本足够用。

「我试过向量方案,但embedding模型对技术术语的召回率并不稳定,」Keshrath在issue里写道,「TF-IDF至少让我知道为什么搜到这条结果。」

目前agent-knowledge只支持Claude Code的JSONL格式,但MCP协议让它理论上能接任何客户端。已有用户在尝试适配Cursor和Windsurf的日志格式。

项目地址:github.com/keshrath/agent-knowledge。安装只需pip install,配置MCP server后重启Claude Code即可生效。Keshrath在README里埋了个细节:第一次运行时,agent会收到一条系统提示——"你现在有记忆了,建议先浏览knowledge base了解当前项目"。

如果Anthropic官方推出原生记忆功能,这个开源项目会被快速遗忘,还是会成为某种"民间标准"的参考实现?