Scan Report
8 /100
smart-agent-memory
跨平台 Agent 长期记忆系统 — 分层上下文供给 + Skill经验记忆 + 温度模型 + 自动归档
纯 Node.js 原生实现的 Agent 记忆系统,无外部依赖,代码逻辑清晰,无任何恶意行为。发现一处轻微不一致:内存 CLI 引用了不存在的 lib/cn-optimize.js 模块,导致中文优化命令在当前版本不可用,但不影响核心功能。
Safe to install
无需隔离。唯一缺陷是缺少 lib/cn-optimize.js 导致 diagnose/optimize-tags/compress 命令报错,建议补全该模块或在 memory-cli.js 中做 try-catch 保护。
Findings 2 items
| Severity | Finding | Location |
|---|---|---|
| Low | lib/cn-optimize.js 模块缺失 Doc Mismatch | scripts/memory-cli.js:18 |
| Low | scripts/extract.js 文件缺失 Doc Mismatch | scripts/memory-cli.js:26 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | WRITE | WRITE | ✓ Aligned | SKILL.md: permissions[read/write]: ~/.openclaw/workspace/memory |
| Shell | NONE | NONE | — | 仅使用 child_process.execFileSync('qmd', ...) 且为可选工具,非 shell 管道 |
| Network | NONE | NONE | — | 无任何网络请求代码 |
| Environment | NONE | NONE | — | 仅使用 MEMORY_DIR 环境变量,未访问敏感凭证 |
File Tree
10 files · 115.1 KB · 3210 lines JavaScript 7f · 2357L
Markdown 2f · 836L
JSON 1f · 17L
├─
▾
lib
│ ├─
cn-optimize.js
JavaScript
│ ├─
extract.js
JavaScript
│ ├─
search.js
JavaScript
│ ├─
sqlite-store.js
JavaScript
│ ├─
store.js
JavaScript
│ └─
temperature.js
JavaScript
├─
▾
scripts
│ └─
memory-cli.js
JavaScript
├─
_meta.json
JSON
├─
README.md
Markdown
└─
SKILL.md
Markdown
Dependencies 1 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
node:sqlite | 内置(Node.js>=22.5) | Node.js 内置 | No | 纯内置模块,无第三方依赖 |
Security Positives
✓ 声称零外部依赖属实,只使用 Node.js 内置模块(fs, path, os, child_process, node:sqlite)
✓ 无网络请求,无凭证访问,无数据外泄
✓ 无 shell 注入风险:smartSearch 使用 execFileSync 传数组参数,CLI 参数解析用安全数组方式
✓ 文件写入严格限定在 ~/.openclaw/workspace/memory/ 目录
✓ extractSkill 写入 SKILL.md 的位置(~/.openclaw/skills/<name>/)是合法的 OpenClaw 技能目录
✓ qmd 工具调用有 10 秒超时和 try-catch 降级,不可用水无感知
✓ 没有 eval、atob、base64 解码等混淆手段
✓ 没有访问 ~/.ssh、~/.aws、.env 等敏感路径
✓ README.md 完整性极高,详细说明各命令行为和架构