QuickRecall — 快忆 | Zero-Dependency Memory Engine
常用记忆优先出现,而非关键词匹配。
What users recall most appears first — not just keyword matches.
中文
为什么选择 QuickRecall?
更快找到用户真正需要的记忆。
大多数 AI 记忆系统只做语义匹配:查"天气怎么样" → 返回所有关于天气的结果。
QuickRecall 不只做语义匹配。它还会追踪哪些记忆被频繁访问,自动将热点记忆排在前面。用户常用的信息,下次问的时候第一个出现。
普通记忆系统:准确匹配,但冷的冷的,热的热的,混在一起。
QuickRecall:热门优先,冷门在后,永远给你最可能需要的。
核心特点
| 特点 | 说明 |
|---|---|
| 热点优先召回 | 高频访问的记忆提升权重,常用信息优先出现 |
| 混合评分引擎 | 语义匹配 × 50% + 时间衰减 × 30% + 热度 × 20% |
| 零外部依赖 | 安装即用,不需要配置任何数据库、向量引擎、云服务 |
| 中文原生支持 | TF-IDF 分词、70+ 组同义词扩展、标签系统 |
| 安全无插件 | 纯 Node.js,不需要浏览器插件或第三方扩展 |
| 自动维护 | 超过 1000 条自动淘汰,内置压缩机制 |
快速开始
npm install && node index.js
# 写一条记忆
curl -X POST http://localhost:3000/api/v1/memories \
-H "Content-Type: application/json" \
-d '{"content":"用户偏好深色主题","importance":1.5,"metadata":{"tags":["preference"]}}'
# 检索
curl -X POST http://localhost:3000/api/v1/memories/query \
-H "Content-Type: application/json" \
-d '{"query":"用户喜欢什么","k":3}'
十步 API
| 方法 | 端点 | 功能 |
|---|---|---|
| GET | /api/v1/health | 健康检查 |
| GET | /api/v1/status | 服务状态 |
| POST | /api/v1/memories | 写入记忆 |
| GET | /api/v1/memories | 列出所有记忆 |
| GET | /api/v1/memories/:id | 按 ID 获取 |
| DELETE | /api/v1/memories/:id | 删除记忆 |
| POST | /api/v1/memories/query | 语义检索 |
| GET | /api/v1/memories/tags | 列出所有标签 |
| GET | /api/v1/memories/by-tag/:tag | 按标签获取 |
| GET | /api/v1/license | 许可证信息 |
许可证
MIT
English
Why QuickRecall?
Find the memory your user actually needs — faster.
Most memory systems only do semantic matching. Search for "weather" and you get all weather-related results in a flat list.
QuickRecall goes further. It tracks access frequency with a Hotness mechanism, automatically prioritizing frequently recalled memories. The next time a user asks about something, the most relevant result is also the one that's been most useful.
Other systems: matches keywords, but no sense of what matters.
QuickRecall: prioritizes hot spots, delivers what's most likely needed.
Core Features
| Feature | Description |
|---|---|
| Hotness-Prioritized Recall | Frequently accessed memories get boosted scores |
| Hybrid Scoring Engine | 50% semantic + 30% recency + 20% hotness |
| Zero External Dependencies | No databases, vector stores, or cloud services needed |
| Chinese & English Support | TF-IDF with 70+ Chinese synonym groups |
| No Plugins Required | Pure Node.js, no browser extensions needed |
| Auto Maintenance | Prune beyond 1000 memories, built-in compaction |
Quick Start
npm install && node index.js
# Write a memory
curl -X POST http://localhost:3000/api/v1/memories \
-H "Content-Type: application/json" \
-d '{"content":"User prefers dark theme","importance":1.5,"metadata":{"tags":["preference"]}}'
# Query
curl -X POST http://localhost:3000/api/v1/memories/query \
-H "Content-Type: application/json" \
-d '{"query":"user preferences","k":3}'
API Endpoints
| Method | Path | Description |
|---|---|---|
| GET | /api/v1/health | Health check |
| GET | /api/v1/status | Server status |
| POST | /api/v1/memories | Write memory |
| GET | /api/v1/memories | List all memories |
| GET | /api/v1/memories/:id | Get by ID |
| DELETE | /api/v1/memories/:id | Delete memory |
| POST | /api/v1/memories/query | Semantic query |
| GET | /api/v1/memories/tags | List all tags |
| GET | /api/v1/memories/by-tag/:tag | Get by tag |
| GET | /api/v1/license | License info |
Directory Structure
QuickRecall/
├── SKILL.md # This file
├── scripts/
│ ├── setup.sh # Install & start
│ ├── start.sh # Restart service
│ ├── test-client.py # Python test client
│ └── test-client.js # Node.js test client
├── references/
│ ├── API_SPEC.md # API specification
│ └── USE_GUIDE.md # Usage guide & examples
├── assets/
│ ├── icon.svg # Skill icon
│ └── icon-128.png # Skill icon 128px
└── server/
├── package.json # Dependencies (express only)
├── .env.example # Environment variables
└── src/
├── index.js # Express API server
└── memory.js # v1.0 memory engine core
License
MIT