别再让你的书签吃灰了,SuperMemory 才是个人知识管理的最优解
在信息爆炸的时代,我们每天都会浏览大量的文章、文档、视频,但真正能被记住和有效利用的知识却少得可怜。你是否也有过这样的经历:明明之前收藏过一篇文章,现在想找却怎么也想不起来在哪里;读过的书、做过的笔记,时间一久就石沉大海,再也翻不出来。
今天要介绍的这个开源项目——SuperMemory,可能正是你在寻找的解决方案。它利用 AI 的力量,让你的个人知识库变得真正“活”起来,不仅能存储,更能理解、关联和检索。
为什么值得关注
SuperMemory 的核心理念是将你消费的所有信息——网页、推文、PDF、视频笔记——全部汇聚到一个统一的空间,然后通过 AI 的语义理解能力,让你能够用自然语言的方式随时检索这些内容。
想象一下,你不再需要记住“我之前在哪篇文章里看到过这个东西”,而是直接问:“我之前关于 AI 编程的所有笔记有哪些?”SuperMemory 会理解你的意图,从你的整个知识库中找出最相关的内容。
这个项目的开发者是 Tony Dinh,他本身是一位独立开发者,做过多个受欢迎的产品。SuperMemory 受到 Dan Silva 的 Memory 项目启发,专注于为个人用户提供一个轻量但强大的“第二大脑”解决方案。
值得关注的几个关键点:
开源且可自托管:所有的数据都存储在你自己的服务器上,完全掌控你的隐私和数据安全。你不需要依赖任何第三方云服务。
现代化的技术栈:项目采用了 Next.js、Tailwind CSS、PostgreSQL 等主流技术,对于想学习或贡献代码的开发者来说非常友好。
模块化设计:Supabase 负责认证、数据库和存储,DuckDB 用于处理分析查询,这种架构让系统既稳定又高效。
AI 驱动的搜索:不仅仅是关键词匹配,而是真正理解你的问题意图和内容的语义,实现精准的知识检索。
环境搭建
在开始之前,我们需要准备开发环境。SuperMemory 支持 Docker 部署和本地开发两种方式,这里先介绍本地开发环境的搭建。
系统要求
确保你的机器上已经安装了以下软件:
Node.js 18.17 或更高版本(推荐使用 18.x 或 20.x)
pnpm 包管理器(SuperMemory 使用 pnpm 作为首选包管理器)
Docker Desktop(用于运行 PostgreSQL 和其他容器化服务)
Git(用于克隆代码仓库)
克隆代码仓库
打开终端,执行以下命令克隆项目代码:
git clone https://github.com/supermemoryai/supermemory.git
cd supermemory
克隆完成后,你会看到项目的基本结构:
supermemory/
├── apps/
│ ├── web/ # 主前端应用
│ └── docs/ # 文档站点
├── packages/
│ ├── database/ # 数据库相关
│ ├── api/ # API 层
│ └── ...
├── docker-compose.yml # Docker 配置
└── ...
安装依赖
使用 pnpm 安装项目依赖:
pnpm install
这个过程可能需要几分钟,取决于你的网络速度。如果在国内遇到网络问题,可以考虑配置国内镜像源。
配置环境变量
SuperMemory 使用环境变量来配置各种服务。复制示例环境变量文件:
cp apps/web/.env.example apps/web/.env
然后编辑 .env 文件,填写必要的配置:
# Supabase 配置(用于认证、数据库和存储)
NEXT_PUBLIC_SUPABASE_URL=你的Supabase项目URL
NEXT_PUBLIC_SUPABASE_ANON_KEY=你的Supabase匿名密钥
SUPABASE_SERVICE_ROLE_KEY=你的Supabase服务角色密钥
# AI 服务配置
OPENAI_API_KEY=你的OpenAI API密钥
TAVILY_API_KEY=你的Tavily API密钥(用于网页抓取)
# 应用基础配置
NEXT_PUBLIC_APP_URL=http://localhost:3000
关于 Supabase 的配置,你需要:
- 访问 supabase.com 创建一个新项目
- 在项目设置中找到 API 相关配置
- 运行数据库迁移脚本(后面会详细说明)
数据库初始化
SuperMemory 使用 Drizzle ORM 来管理数据库 schema。首先需要运行数据库迁移:
cd apps/web
pnpm db:generate
pnpm db:push
db:generate 命令会根据 schema 定义生成迁移文件,db:push 则会将 schema 推送到你的数据库。
启动开发服务器
一切配置就绪后,启动开发服务器:
cd apps/web
pnpm dev
打开浏览器访问 http://localhost:3000,你应该能看到 SuperMemory 的界面了。
使用 Docker 部署
如果你更倾向于使用 Docker,项目也提供了完整的 Docker Compose 配置:
docker-compose up -d
这样可以一键启动所有必需的服务,包括 PostgreSQL 数据库、缓存服务等。
核心功能详解
SuperMemory 提供了几个核心功能模块,每个模块都经过精心设计,共同构成了一个完整的个人知识管理解决方案。
Spaces(空间)
Spaces 是组织知识的基本单位。你可以把它想象成不同主题的笔记本或文件夹。例如,你可以创建“AI 学习”、“工作项目”、“读书笔记”等不同的 Space。
每个 Space 都有独立的配置:
- 记忆级别(Memory Level):控制 AI 总结和提取信息的详细程度
- 背景信息:你可以为 Space 添加额外的上下文,帮助 AI 更好地理解该领域的内容
- 嵌入模型:选择用于生成向量嵌入的 AI 模型
Spaces 的设计理念是让你能够针对不同领域定制不同的知识处理方式。比如在“技术文档”空间,你可能需要更详细的总结;而在“新闻资讯”空间,则可能只需要简短的摘要。
Crawl(抓取)
SuperMemory 提供了强大的网页抓取功能。你可以通过多种方式添加内容:
浏览器扩展:安装 Chrome 或 Firefox 扩展,一键保存当前页面
书签导入:导入浏览器书签批量抓取
URL 直接添加:粘贴任意网页 URL
Twitter/X 线程抓取:专门针对 Twitter 线程的优化抓取
抓取过程不仅仅是简单地下载 HTML。SuperMemory 会:
- 使用 Tavily API 获取页面的“干净”内容(去除广告、导航栏等噪音)
- 提取正文内容并结构化
- 生成 AI 摘要和关键信息
- 创建向量嵌入以便后续语义搜索
Memories(记忆)
每一条被抓取的内容都会生成对应的 Memory。Memory 是经过 AI 处理后的知识单元,它包含了:
- 原始内容的链接和基本信息
- AI 生成的摘要
- 提取的关键信息点
- 原始内容的完整文本
- 自动分类的标签
SuperMemory 的一个亮点是它的自动关联能力。系统会自动分析新的 Memory 与现有知识库中其他内容的关联性,并展示“你之前看过的相关内容”。
Search(搜索)
搜索功能是 SuperMemory 的核心卖点。与传统的关键词搜索不同,它支持自然语言查询:
错误示例(传统搜索):
# "AI programming tools 2024"
正确示例(SuperMemory 语义搜索):
# "我之前看过的关于 AI 编程辅助工具的文章有哪些?"
# "和 cursor 类似的 AI 代码编辑器"
# "关于 prompt engineering 的实用技巧"
系统会理解你的问题意图,从你的整个知识库中找出最相关的内容,并按相关性排序展示。
Chat(对话)
每个 Space 都有一个内置的聊天功能。这个聊天机器人可以:
基于该 Space 内的所有内容回答问题
引用具体的 Memory 作为参考
根据你的知识库生成总结和建议
这是一个非常有用的功能,比如你可以问:“帮我总结一下我在 AI 编程方面看过的所有内容”,系统会综合分析你的知识库,给出全面的回答。
实战教程:构建你的个人知识管理系统
现在让我们通过一个完整的实战案例,学习如何使用 SuperMemory 构建你的个人知识管理系统。
场景设定
假设你是一个对 AI 感兴趣的开发者,你想用 SuperMemory 管理你学习 AI 相关的所有资料。我们会创建一个“AI 学习”空间,然后逐步添加内容、配置功能、进行搜索和对话。
第一步:创建和配置 Space
安装并登录后,首先创建一个新的 Space:
- 点击左侧边栏的“+”按钮
- 输入 Space 名称:“AI 学习”
- 添加描述:“关于人工智能、机器学习和 AI 工具的学习资料集合”
- 选择背景信息(Background Info)
背景信息是非常重要的配置。点击编辑,添加以下内容:
这是一个专注于 AI 学习的知识库。主人是一名有经验的软件开发者,
对 AI 编程工具、机器学习基础、大语言模型应用等领域感兴趣。
重点关注实用性强的内容,包括:AI 代码编辑器(如 Cursor、Copilot)、
提示工程技巧、AI 应用开发案例、机器学习实战项目等。
这个背景信息会帮助 AI 更好地理解和处理你的内容,使总结和回答更加贴合你的需求。
第二步:安装浏览器扩展
SuperMemory 提供了浏览器扩展,可以方便地保存网页内容。
- 访问 Chrome Web Store,搜索”SuperMemory”
- 点击安装扩展
- 登录你的 SuperMemory 账户
- 配置默认保存的 Space(设置为“AI 学习”)
安装完成后,当你浏览任何网页时,点击扩展图标即可一键保存到你的知识库。
第三步:批量导入书签
如果你之前积累了大量书签,SuperMemory 支持批量导入:
- 从浏览器导出书签(通常是 HTML 文件)
- 在 SuperMemory 中点击“导入书签”
- 选择导出的 HTML 文件
- 确认导入范围(可以过滤只导入特定文件夹的书签)
系统会自动开始抓取每个书签的内容。这个过程可能需要一些时间,取决于书签的数量。
第四步:手动添加特定内容
除了浏览器扩展和书签导入,你还可以直接添加特定的内容:
通过 URL 添加:
# 打开 SuperMemory,点击“添加内容”
# 选择“URL”选项
# 输入目标网页 URL,例如:https://docs.cursor.com
# 选择目标 Space(“AI 学习”)
# 点击“保存并抓取”
系统会自动获取页面内容,生成摘要和嵌入向量。
添加 Twitter 线程:
# 输入 Twitter 线程的 URL
# SuperMemory 会识别并抓取整个线程的内容
# 自动生成线程内容的摘要
第五步:使用语义搜索
内容积累到一定量后,试试语义搜索的威力:
打开搜索功能,输入自然语言查询:
# "关于用 AI 提高编程效率的方法"
你会发现,搜索结果不仅仅是包含这些关键词的页面,而是语义上相关的所有内容。系统会理解你的意图,返回真正有价值的结果。
尝试更复杂的查询:
# "我收藏的关于 prompt engineering 的文章里,有没有提到过 few-shot learning?"
SuperMemory 会跨多个 Memory 进行分析,汇总相关信息给你。
第六步:利用 Chat 功能
每个 Space 的 Chat 功能可以成为你的学习助手。以“AI 学习”空间为例:
打开 Space 的聊天面板,尝试以下对话:
用户提问:
# "帮我分析一下我在 AI 编程工具方面都看了些什么?"
AI 回答会基于你的知识库,分析你保存的相关内容,给出结构化的总结。
追问:
# "能给我推荐几个最值得深入学习的吗?"
AI 会根据你的收藏内容和使用情况,给出个性化的推荐。
综合应用:
# "基于我收藏的这些资料,帮我制定一个 AI 编程学习的周计划"
系统会综合分析你的知识库,结合资料内容,生成一个贴合实际的学习计划。
第七步:整理和回顾
SuperMemory 还提供了回顾功能,帮助你定期重温保存的内容:
- 在设置中开启“每日回顾”
- 系统每天会推送几条你保存过的内容
- 标记你已经熟悉的知识
- 系统会根据遗忘曲线智能安排复习时间
这是一个基于间隔重复原理的功能,借鉴了 Anki 等记忆工具的理念。
常见应用场景
SuperMemory 的用途非常广泛,以下是几个典型的应用场景:
技术学习资料管理
作为开发者,我们经常需要学习新技术、新框架。SuperMemory 可以帮助你:
- 收集官方文档、教程、博客文章
- 系统化管理不同技术栈的资料
- 快速检索以前看过的某个概念的解释
- 追踪某个技术的最新动态
比如你可以创建“React 生态”、“Python 数据科学”等多个 Space,每个 Space 专注于一个技术领域。
论文和学术研究
对于研究人员和学生:
- 保存论文 PDF 的摘要和笔记
- 追踪某个研究方向的最新进展
- 建立文献之间的关联关系
- 快速找到需要引用的资料
SuperMemory 的语义搜索特别适合学术场景,你可以通过概念而不是关键词来搜索论文。
产品经理的需求收集
产品经理每天要处理大量的信息:
- 用户反馈和需求文档
- 竞品分析报告
- 行业研究报告
- 会议记录和决策文档
使用 SuperMemory 可以快速建立产品知识库,在需要时迅速检索相关信息。
写作者的资料库
内容创作者可以利用 SuperMemory:
- 收集素材和灵感
- 管理参考资料
- 建立写作主题的知识网络
- 追踪热点话题的相关报道
语义搜索让你可以通过描述性的问题找到素材,比如:“找一下我之前收藏的关于环保科技创新的例子”。
个人成长和自我提升
任何人想要系统化个人成长:
- 读书笔记和读后感
- 课程学习笔记
- 目标和计划文档
- 反思和总结
SuperMemory 就像一个永远不会忘记的私人助理,记录你的每一步成长轨迹。
实战技巧与最佳实践
经过一段时间的使用,我总结了一些实用技巧,可以帮助你更好地发挥 SuperMemory 的威力。
关于背景信息的填写
背景信息是 SuperMemory 理解你的关键。写得好的背景信息可以显著提升 AI 的理解准确度。
好的背景信息示例:
我是一名有 5 年经验的全栈工程师,主要使用 React、Node.js 和 Python。
最近对 AI 应用开发特别感兴趣,想深入学习 LLM 的 Prompt Engineering、
RAG 架构和 AI Agent 开发。我偏好实践性强的内容,不太关注纯理论。
学习目标是在 3 个月内能够独立开发 AI 辅助的应用。
不好的背景信息示例:
对 AI 感兴趣,想学习新技术。
背景信息应该具体、明确,包含你的专业背景、兴趣方向、学习目标等信息。
关于内容添加的节奏
不要一次性添加太多内容。SuperMemory 的价值在于长期积累和持续回顾。建议:
- 每天固定时间添加几条有价值的资料
- 优先添加与你当前学习目标相关的内容
- 添加时简要记录为什么保存这条内容
- 定期回顾和整理保存的内容
关于搜索技巧
虽然 SuperMemory 支持自然语言搜索,但掌握一些技巧可以提高搜索效率:
- 使用具体的问题而不是模糊的关键词
- 好:“我之前收藏的关于 Next.js SSR 优化的文章”
-
一般:“Next.js SSR”
-
利用时间限定词
- “最近一个月收藏的”
-
“关于 React 18 的”
-
组合多个概念
- “同时提到 TypeScript 和 GraphQL 的”
- “关于性能优化和用户体验的”
关于 Space 的组织
不要创建太多 Space,保持合理的分类:
- 一个大主题一个 Space
- 相关的子主题可以用标签区分
- 定期合并或拆分 Space
比如“技术学习”作为一个大 Space,可能比按编程语言创建多个小 Space 更好,因为知识往往是跨领域的。
关于数据备份
SuperMemory 支持数据导出,定期备份是个好习惯:
- 在设置中导出你的所有 Memorie
- 保存到云存储或外部硬盘
- 重要内容可以导出为 Markdown 或 PDF 格式
虽然 SuperMemory 本身数据安全,但养成备份习惯总是好的。
关于浏览器扩展的高效使用
浏览器扩展可以设置快捷键来快速保存:
- 在扩展设置中配置快捷键
- 使用“Ctrl+Shift+S”(或自定义的快捷键)快速保存当前页面
- 可以在保存时快速添加标签和备注
这样可以在浏览网页时无缝地将有价值的内容加入知识库。
关于 AI 总结的利用
SuperMemory 生成的 AI 摘要是一个宝贵的资源:
- 定期浏览你保存内容的摘要
- 检查摘要是否准确,必要时手动编辑
- 利用摘要快速回忆内容要点
- 在搜索时优先查看相关 Memory 的摘要
关于隐私和安全
SuperMemory 支持完整的自托管,如果你对数据隐私有较高要求:
- 使用 Docker 在本地部署
- 配置 HTTPS 和安全认证
- 定期更新版本以获得安全补丁
- 查看官方安全建议
高级配置与自定义
对于有一定技术能力的用户,SuperMemory 提供了一些高级配置选项。
更换 AI 模型
SuperMemory 默认使用 OpenAI 的模型,但你可以通过配置使用其他模型:
# 在 .env 文件中配置
AI_MODEL=claude-3-sonnet-20240229
AI_API_KEY=你的Claude API密钥
支持的模型包括 Claude 系列、Azure OpenAI 等。
自定义抓取规则
对于某些特殊网站,你可以配置自定义的抓取规则:
// packages/crawler/src/rules/custom.ts
export const customRules = [
{
match: /docs\.example\.com/,
extract: {
title: 'h1.article-title',
content: 'article.main-content',
author: '.author-name',
date: '.publish-date'
}
}
];
这样可以提高特定网站的内容提取质量。
集成到工作流
SuperMemory 支持通过 API 与其他工具集成:
// 使用 Supabase 客户端
import { createClient } from '@supabase/supabase-js'
const supabase = createClient(
process.env.NEXT_PUBLIC_SUPABASE_URL,
process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY
)
// 编程方式添加 Memory
async function addMemory(url, spaceId) {
const { data, error } = await supabase
.from('memories')
.insert({
url: url,
space_id: spaceId,
status: 'pending'
})
return { data, error }
}
这让你可以将 SuperMemory 集成到自动化工作流中。
与相关项目的比较
在个人知识管理和 AI 辅助记忆领域,还有其他一些值得关注的项目:
Notion AI:Notion 自带的 AI 功能,优点是集成了文档管理,缺点是数据不在你自己的控制中。
Obsidian + Local REST API:Obsidian 是一个强大的本地笔记工具,配合插件可以实现类似功能。SuperMemory 的优势在于开箱即用的 AI 功能和更强大的语义搜索。
Logseq:另一个优秀的本地笔记工具,支持块引用的关系图谱。如果你更偏好本地存储,Logseq 是不错的选择。
Readwise/Reader:专门用于“阅读后回忆”的工具,与 SuperMemory 的定位有些相似,但更专注于阅读材料的回顾。
SuperMemory 的独特价值在于:开源可自托管 + AI 驱动的语义搜索 + 现代化的用户体验。它不是简单地存储内容,而是真正帮你建立知识之间的联系。
未来发展与社区
SuperMemory 是一个活跃的开源项目,持续有新的功能和优化更新。
贡献代码
如果你对项目感兴趣,想要贡献代码:
- 查看项目的 GitHub Issues,找到标有”good first issue”的入门任务
- 阅读项目的 CONTRIBUTING.md 了解开发规范
- Fork 项目,创建功能分支
- 提交 Pull Request
项目的代码结构清晰,技术栈主流,非常适合作为学习现代 Web 开发的参考。
参与社区
- 加入 Discord 服务器,与其他用户和开发者交流
- 关注 Twitter 获取最新动态
- 在 GitHub 上 Star 项目表示支持
总结
SuperMemory 代表了一种新的个人知识管理思路:不只是存储,而是理解;不只是分类,而是关联;不只是搜索,而是对话。
在这个信息过载的时代,拥有一个真正智能的“第二大脑”变得越来越重要。SuperMemory 通过开源的方式,让每个人都能拥有这样的能力,而不需要依赖昂贵的商业服务。
它的优势总结:
开源可自托管,数据完全属于你自己
AI 驱动的语义搜索,让知识真正可以被“想起”
现代化的用户体验,上手即用
活跃的开源社区,持续迭代改进
灵活的配置选项,满足个性化需求
如果你正在寻找一个能够真正帮助管理知识、提升效率的工具,SuperMemory 绝对值得一试。从今天开始,开始构建你的个人 AI 知识库吧。
相关资源链接
GitHub 仓库:https://github.com/supermemoryai/supermemory
官方文档:https://docs.supermemory.ai
Discord 社区:加入社区与其他用户交流
SuperMemory 网页版:https://supermemory.ai
相关 AI 项目推荐:
LangChain:构建 LLM 应用的主流框架
LangFlow:LangChain 的可视化界面
Dify:开源的 LLM 应用开发平台
AnythingLLM:另一个 AI 知识库解决方案
Mem GPT:赋予 AI 长期记忆的系统
开始你的 AI 知识管理之旅,让每一份收藏都有价值。
评论区