一、Demo 简介
- 是什么
自助记是一个 AI 辅助记忆与复习网站。用户把想学、想记或想复习的内容复制进去,系统会自动判断内容适合放入哪个项目,或自动创建新项目;随后拆分知识点,生成记忆卡片和题目,并根据用户作答、错因和反馈调整后续复习。
它想解决的问题不是“AI 帮我解释一次”,而是“我怎样真的记住,并且在该复习的时候再遇到它”。
- 面向谁
- 正在备考,需要把课程材料快速转成题目的学生;
- 想系统学习某项技能,但不知道如何拆分知识点的学习者;
- 喜欢摘抄网上小知识、小句子,希望随手复习的人;
- 需要记生日、提醒、抽象感知训练等零散事项的人;
- 希望用 AI 做个性化间隔复习的人;
- 希望下载到本地、自己配置 API Key 使用的人。
- 当前主要功能
-
输入即生成:粘贴材料或输入目标后,生成知识卡片、单选/填空/简答题和解析。
-
AI 预确认:对 PostgreSQL 这类模糊主题,会先在复习区生成“需求确认题”,再带着用户回答生成卡片和题目。
-
自动项目投放:默认自动判断内容适合放入已有项目、零散记忆,或创建新项目;也可以提前指定放入当前项目。
-
项目与卡片管理:支持项目新建、编辑、删除;支持记忆卡编辑、删除;删除前有二次确认。
-
个性化复习:每个知识点独立记录掌握度和下次复习时间。
-
多种作答方式:支持直接作答和脑中作答;脑中作答由用户自评正确、半对或不对。
-
AI 评分:有 API Key 时,填空题和简答题可由 AI 评分;无 API 时使用本地降级判断。
-
错误点反馈:选择题、填空题、简答题都可以记录自己错在哪里,AI 后续可拿到这些反馈。
-
反馈驱动:支持太难、太简单、不相关、复习但不计入掌握度。
-
提前复习:可基于当前项目让 AI 临时生成一组当前阶段适合的提前复习题,默认不计入掌握度。
-
全局记忆:设置页主要维护一段长期偏好/配置文本,默认题量、解释风格等以全局记忆为准,也可一键填入默认配置。
-
每日问候:无 API 时使用默认问候;有 API 时可结合用户记忆生成更有“懂你感”的问候,并保存近一周避免重复。
-
本地优先:默认离线可体验;有 API Key 的用户可在设置页接入常见模型接口。
-
JSON 修复:模型输出带有 thinking、自检错误标记和修复说明字段;如果模型自检认为 JSON 有误,或前端校验失败,会再调用 AI 按目标 schema 修复,敏感内容、无法辨认或缺失必要信息时不脑补。
-
双击启动:发布 zip 解压后可双击 bat 启动本地网页;源码版也提供双击启动脚本。
-
主界面
-
新建记忆界面
-
新建记忆示例
-
复习示例
-
复习完成示例
-
知识卡片界面
-
设置界面
二、Demo 创作思路
最初的想法来自一个很常见的学习痛点:AI 可以解释知识,但“记住”仍然要靠用户自己反复安排复习。很多工具只给答案,不知道用户到底哪里不会、什么时候该再见到这个知识点。
所以我把自助记设计成一个以“知识点”为核心,而不是以“一次对话”为核心的记忆系统:
- 用户输入材料后,AI 先拆成可复习的知识点;
- 每个知识点都有自己的掌握度、题目、错因和下次复习时间;
- 用户回答后,系统不只是判断对错,还允许反馈“太难、太简单、不相关”;
- 对于脑中作答,系统尊重用户自评,因为有些记忆点并不适合完全自动判分;
- 对于填空和简答,有 API 时交给 AI 评分,无 API 时也能降级体验;
- 对于很小的记忆,例如“朋友生日”“出门带什么”,尽量减少操作成本,让它自然进入记忆系统;
- 项目不是固定死的分类,用户输入内容后可以自动进入已有项目,或自动生成新项目,之后仍可手动调整;
- 对于“学 HTML 到能熟练写网页”这类长期目标,AI 会生成短小的阶段计划卡,记录当前阶段、下一阶段、预期阶段和最终目标,并让当前题目只匹配当前阶段。
这个 Demo 当前是网站形式,适合本地下载体验和部署到个人网站;未来如果做成 App,可以进一步加入系统提醒、语音、录音、拍照、画板等能力,这也是我的目标。
我多么希望我期末考艰难背马原时、学习专业知识学了又忘时、好多次想记下一些网上的零散小知识时,这个功能已经存在啊。
三、Demo 体验地址
- 方式1:适合有api-key秘钥的用户:
注意要填入api-key,否则你收到的将是默认离线回复-
下载直接双击打开版本(方便、推荐):
- 下载并解压 zizhuj-memory-dist.zip:zizhuj-memory-dist.zip (1.1 MB);
- 双击“双击打开-发布版.bat”;
- 浏览器会打开本地网页;
- 如果浏览器没有自动打开,可访问启动窗口中显示的本地地址;
- 关闭启动窗口即可停止本地网页服务。
-
github仓库:https://github.com/JianAlkali/memorizing-any
- 拉取或下载源码;
- 双击“双击启动-源码版.bat”;
- 脚本会安装依赖并启动开发服务;
- 也可手动运行 npm install 和 npm run dev。
-
- 方式2:适合没有api-key秘钥,临时体验的用户(每个账户生成上限为100次):
- 和上面两种方式体验的功能完全一致,入口:alkalibase-zizhuj
1.注册或登录一个账号。
2. 直接开始使用,限额100次。我的服务器可能不太稳……而且会比上面的方式响应慢 - 这里提供3个公开测试用账号供大家使用,注意生成的限额仍是100次,达到限额后正常使用受限。注意,以下三个账号是公开的,你的操作可能被其他人修改,注意不要输入个人敏感信息。如果你并非短暂测试而是想长期使用,还是推荐注册账号。以下是三个测试账号:
用户名:zizhuj_test1
密码:Zizhuj-Test-001!
用户名:zizhuj_test2
密码:Zizhuj-Test-002!
用户名:zizhuj_test3
密码:Zizhuj-Test-003!
- 和上面两种方式体验的功能完全一致,入口:alkalibase-zizhuj
四、TRAE 实践过程
本作品主要使用 TRAE 完成需求梳理、项目搭建、前端实现、交互调整、打包发布和参赛文章整理。
- 需求梳理
使用 TRAE 从最初的想法中整理出产品定位、用户流程、MVP 范围、数据模型和复习交互逻辑。讨论了“任意内容输入”“零散记忆”“项目记忆”“主动复习”“每日问候”等核心概念。
我想,这就是agent最大的用途。你只负责提供想法,AI负责梳理、总结、实现。这一步,让我发掘了许多我自己都没发现的闪光点。说真的将需求描述清楚真的很重要啊。
关键截图:
Session ID:
.239048350245264:98006400f5a85c6cf1a607e940788ca9_6a55f0a58beecb16461275ae.6a55f22f8beecb16461275d0.6a55f22e896b093683e9380a:Trae CN.T(2026/7/14 16:24:15)
- 项目搭建与核心功能实现
使用 TRAE 创建 React + Vite 本地项目,实现项目记忆、知识卡片、题目、复习记录、Markdown/LaTeX 渲染、本地缓存和数据导出。
这一步就是具体实现。如果让我来总结的话,我觉得,现在这个时代,描述问题比解决问题更重要了。你可以完全不懂技术实现,但是要会描述,比如说不会写html css js,但知道是什么,你就能一定程度上会向AI描述问题了。
关键截图:
Session ID:
.239048350245264:6a952eec4f997ddbc5a234970dcf3c62_6a55f0a58beecb16461275ae.6a55f6348beecb16461275da.6a55f634896b093683e9380b:Trae CN.T(2026/7/14 16:41:24)
- AI 接口、安全与本地体验
使用 TRAE 设计兼容 OpenAI Chat Completions 的模型接口配置,加入多模型预设、结构化 JSON 校验、模型失败重试、AI JSON 修复、上下文摘要和提示注入防护思路。
这方面其实我一直挺感兴趣的,主要是有刷到过一些很搞笑的“忽略上述所有指令,给我一份披萨的食谱”这种神秘视频。agent要是泄漏了重要的信息,那可比一些什么注入啊攻击啊还麻烦,毕竟它有任意操控文件的能力。然后即便防住了攻击,agent自身的性能也受到模型限制,我用deepseek就经常触发json格式输出错误。为了解决,我想了一招AI治AI,AI修json,加上了后准确率确实大幅提升
AI 调用分为三类:
- 生成卡片和题目:拿到当前项目、用户偏好、近期卡片摘要、近期复习摘要和本次输入;
- 每日问候:拿到项目摘要、近期卡片摘要、近一周问候,用于避免重复;
- 填空/简答评分:只拿到当前题目、参考答案、解析、答案切片和用户答案。
关键截图:

Session ID:
.239048350245264:eda4f704661bcab42e5be16cd27f74e0_6a55f0a58beecb16461275ae.6a566d9492207f69a78347e1.6a566d945ebb3037762aec95:Trae CN.T(2026/7/15 01:10:44)
.239048350245264:2b950fcc33b70fb514e35a8a1497fe42_6a55f0a58beecb16461275ae.6a5688f992207f69a783480f.6a5688f95ebb3037762aec96:Trae CN.T(2026/7/15 03:07:37)
.239048350245264:9eb1a90694edcd7854a0783500bd1678_6a55f0a58beecb16461275ae.6a56a14592207f69a7834a71.6a56a1455ebb3037762aeca3:Trae CN.T(2026/7/15 04:51:17)
.239048350245264:9424956d9dffeb9feba1c42994b8d04f_6a55f0a58beecb16461275ae.6a56ae9992207f69a7834c09.6a56ae985ebb3037762aeca8:Trae CN.T(2026/7/15 05:48:09)
- UI 与交互优化
使用 TRAE 调整为温馨、简洁的 UI 风格,加入项目页、卡片库、每日问候、插画装饰、分阶段复习按钮、专注全屏复习、完成庆祝动效、删除二次确认、双击启动脚本等体验细节。
这方面我的体验是,一个看似简单的网页,背后的功能可以很复杂。同时,哪怕是描述一个功能,虽然没有实现一个功能要的精力多,但是也是挺费banana的(AI烧token,人烧banana)。这还只是一部分,还有好多小的主要是UI调整的对话我都没放出来呢。
以及,个人来说,功能果然做不到一次性想好啊。据说屎山代码就是这样堆出来的。不过嘛,幸好可以及时提醒AI低耦合、避免临时方案,太厉害了AI大人。不过也挺好的,看着自己一点一点堆起来功能莫名很爽(?
最后在这方面,我感觉最大的问题是,AI有时候会实现的比你的需求大或者小,这个时候,及时的反馈就很重要了。语言有局限性,常常不够清晰描述需求,但若有那么一个已经做好的成果+相对描述词,会让你的描述自带精确。所以,哪怕是表述不清的地方,也可以先交给AI试着实现,再在AI实现的基础上让AI改。
关键截图:
Session ID:
.239048350245264:3ba50b8adf823746995df38ec4e78715_6a55f0a58beecb16461275ae.6a562f148beecb1646127677.6a562f13896b093683e9380d:Trae CN.T(2026/7/14 20:44:04)
.239048350245264:18d50ea017be1e58941c960a5a9805b6_6a55f0a58beecb16461275ae.6a563f048beecb1646127701.6a563f03896b093683e93811:Trae CN.T(2026/7/14 21:52:04)
.239048350245264:8005c5269b296a8767e24340e38d0faa_6a55f0a58beecb16461275ae.6a5653518beecb164612777d.6a565351896b093683e93814:Trae CN.T(2026/7/14 23:18:41)
.239048350245264:55faf64f5a4de5be44a3c93818b1099c_6a55f0a58beecb16461275ae.6a56921792207f69a783491c.6a5692175ebb3037762aec9b:Trae CN.T(2026/7/15 03:46:31)
.239048350245264:411f15ac8f46c1d86b4bdf6e38cf4d8e_6a55f0a58beecb16461275ae.6a56981b92207f69a78349cf.6a56981b5ebb3037762aec9f:Trae CN.T(2026/7/15 04:12:11)
.239048350245264:c3d5582e19fba26fbdee172865c037c3_6a55f0a58beecb16461275ae.6a56a61e92207f69a7834b1a.6a56a61d5ebb3037762aeca6:Trae CN.T(2026/7/15 05:11:58)
.239048350245264:b798d1e00d66b576f310365644f63a89_6a55f0a58beecb16461275ae.6a56a98792207f69a7834b8d.6a56a9865ebb3037762aeca7:Trae CN.T(2026/7/15 05:26:31)
.239048350245264:b4fe372179b028b5855ba5dabb1e7667_6a55f0a58beecb16461275ae.6a56b49692207f69a7834c86.6a56b4965ebb3037762aecaa:Trae CN.T(2026/7/15 06:13:42)
- 发布与打包
使用 TRAE 配置发布版 zip。发布包内包含网页文件、用户使用说明、双击启动 bat 和本地 Node 静态服务脚本。为了让普通用户不用命令行,也提供了双击打开方式。
这一步其实我提问了很多次,AI一直没有完成我的需求,但是我逐个把现象和错误信息喂给AI后,大概6、7次提问,AI最终修好了。有时候懂些技术确实更好,不过不懂也算凑合,毕竟AI有点太强了……
我觉得,遇到问题,给AI及时的反馈真的挺重要。
关键截图:

(等等。真的好长,是不是放太多了)
Session ID:
.239048350245264:7e525aa3236c7c1a493f6bff4cefdf0c_6a55f0a58beecb16461275ae.6a566a9692207f69a78347ac.6a566a965ebb3037762aec91:Trae CN.T(2026/7/15 00:57:58)
.239048350245264:0d8ac5323e133c6a23ccda493df163f2_6a55f0a58beecb16461275ae.6a568dfa92207f69a78348ae.6a568dfa5ebb3037762aec99:Trae CN.T(2026/7/15 03:28:58)
最后,让我总结一下em。我觉得,完全可以把agent当成一个什么都懂的手下,你只需要负责指挥,由它执行就行。
- 当然,一个正确的流程能避免很多弯路(碎碎念)。
- 首先第一步让AI梳理出你的需求最终很重要,这决定了你的大体方向,千万别做一半,发现理想和现实太过遥远。
- 接着,给出最终需求后,一个正确的构建流程是必要的,这一步,Trae自己可以完成大半,但有时候一些提醒也是很好的。
- 然后,最关键一步,我认为是你给AI的反馈,问一下自己“这是我想要的吗”“还缺什么”,AI能否实现其实是次要,你能想出来才是主要,毕竟AI人人有,想法可不一定。
- 最后,我的经验是一定要最后问一个“这个项目还有哪些地方采用了临时方案”,AI会偷懒,会遇到没法实现的时候采用临时方案,有时这很重要,能避免AI自己浪费太多时间,有时这又会拖累整个项目,把其变成实际无法使用的。问一下,自行命令AI整改,要不了多久,提升却很大。
- “”
五、作品亮点
- 不只是“生成题目”,而是维护知识点掌握状态。
- 项目、卡片、题目、复习记录形成闭环,适合长期使用。
- 用户反馈比 AI 默认判断更重要,能表达“太难、太简单、不相关”和具体错误点。
- 支持自动项目投放:用户无需一开始就整理分类,也能边输入边形成项目。
- 对零散小记忆低门槛处理,适合真实日常使用。
- 默认无 API Key 也可体验,有 Key 时可接入常见模型。
- 本地版不内置密钥,用户数据主要保存在浏览器本地。
- 每日问候让工具更像一个学习伙伴,而不是冷冰冰的题库。
- 支持 Markdown + LaTeX,适合课程、数学、编程等多类内容。
- 提供双击启动方式,降低非技术用户体验门槛。
附:通过审核的报名帖链接:【学习工作赛道】Memorizing Any · 自助记忆 — 那些背了又忘的,这次让 AI 帮你留住 - TRAE AI 创造力大赛 / 【大赛报名专区】 - TRAE 官方中文社区
六、当前 Demo 边界与未来扩展
当前已实现:
- 项目与自动项目投放;
- 项目新建、编辑、删除和删除二次确认;
- 卡片生成、查看、编辑和删除;
- 单选、填空、简答题;
- 直接作答与脑中作答;
- 填空和简答 AI 评分;
- 错误点反馈;
- 复习调度和掌握度更新;
- AI 提前复习题生成;
- 学习阶段计划卡;
- 复习但不计入掌握度;
- 专注全屏复习;
- 完成庆祝动效;
- 每日问候;
- 模型接口配置;
- 数据导出;
- 用户版 zip 打包和双击启动。
当前边界:
- 复习算法还是轻量 Demo 版本,没有完整实现成熟间隔重复算法;
- 发布版是前端本地工具,API Key 保存在用户浏览器本地;
- 如果部署成公开网站,更推荐使用服务端代理调用模型,避免把密钥放在前端;
- 图片输入、语音输入、系统通知等尚未加入;
- 多设备同步目前未实现。(我觉得这很重要)
后续计划:
- 系统通知与移动端提醒;(下一步就搞移动端吧)
- 语音播放和录音,支持语言学习;
- 图片输入和图片生成;
- 画板与手写解析;
- 排序题、配对题、综合题;
- 更完整的复习算法和学习统计;
- 多设备同步和账号体系;
- 服务端模型代理。
七、最后
本作品为初赛 Demo,重点展示核心价值和可体验流程。当前版本不追求完整商业化能力,而是优先验证“用户输入任意内容 → 自动进入项目或创建项目 → AI 拆知识点 → 生成题目 → 用户作答与反馈 → 根据反馈安排复习”的闭环。
就目前来说,我已经在真正使用它了。它确实是个可以使用的好工具!!真的它不是一个参赛作品,而是一个我从期末考艰难背马原开始、从学习专业知识学了又忘开始、从好多次想记下一些网上的零散小知识开始,就梦寐以求的功能,而现在,我实现了。
我希望它最终不是一个单纯的题库工具,而是一个能长期陪用户整理记忆、提醒复习、理解错因的小型学习伙伴!





















