安全扫描
OpenClaw
可疑
high confidence该技能的代码与其声明的目的基本一致(使用 Ollama + LanceDB 的本地向量记忆),但存在不一致和较高风险的安装操作(通过 curl|sh 远程安装)以及未声明的环境/二进制依赖,建议在安装前进行审查。
评估建议
["元数据不匹配:注册表未列出所需的二进制文件/环境变量,但 hook 和文档要求 python3 和运行中的 Ollama(localhost:11434)。代码还预期环境变量 `OPENCLAW_USER_ID` 用于权限检查。确保您理解并设置这些变量后再启用 hook。","隐私:启用 Hook 会自动捕获消息内容并写入 `~/.openclaw/workspace/memory`。如果启用,请验证数据目录和保留策略,并确认是否可能记录敏感内容。","环境暴露:`handler.ts` 将 `process.env` 传递给spawn 的 Python 进程。这意味着主机进程中的任何环境变量都将可供脚本使用。避免在包含您不希望暴露的秘密的上下文中运行它。","安装脚本:包含的脚本可以安装 Ollama 和拉取模型。Linux 安装程序使用 `curl | sh`(远程安装脚本);仅从可信源运行此类脚本,或者先检查它们。模型下载可能很大,下载 '加速器' 脚本反复杀死和重启下载 —— 这很不寻常,但不明显地恶意。","推荐步骤:在运行之前检查来自 https://ollama.ai...详细分析 ▾
ℹ 用途与能力
代码与描述一致:Python/TS 文件实现了一个具有自动 hook 基础的捕获、存储、搜索、去重和多用户隔离的 LanceDB + Ollama 本地记忆系统。然而,注册表元数据声称没有所需的二进制文件/环境变量,而 HOOK.md、SKILL.md 和代码预期 python3 和运行中的 Ollama(localhost:11434)。这种元数据不匹配是不一致的,值得注意。
⚠ 指令范围
hook(handler.ts + auto_memory.py)将在消息事件上执行并spawn 一个 Python 进程,该进程从 stdin 接收消息内容并可能将数据持久化到 `~/.openclaw/workspace/memory`。运行时依赖于 `OPENCLAW_USER_ID` 环境变量进行访问控制(SKILL.md 和代码需要它),但技能元数据未声明此项。代码仅在 `~/.openclaw` 工作空间内读写,并调用 localhost Ollama 进行嵌入;它似乎不调用外部网络端点进行嵌入或泄露数据。然而,自动捕获每条消息有隐私影响,hook 接收 `process.env`(handler.ts 将 `process.env` 合并到子进程的 env 中),因此主机进程中的现有环境变量可供 spawn 进程使用。
⚠ 安装机制
注册表中没有正式的安装规范,但包中包含了帮助脚本。`scripts/install_ollama.sh` 在 Linux 上执行 `curl -fsSL https://ollama.ai/install.sh | sh`(一个 piped 到 sh 的远程安装程序)。`scripts/download_accelerator.sh` 反复启动和杀死 'ollama pull' 调用以加速下载模型。这些脚本执行远程代码/操作并spawn 后台服务(ollama serve)。运行 `curl|sh` 安装程序和反复的后台进程操纵会增加风险,应该仅从可信系统或沙盒中审查/运行。
⚠ 凭证需求
技能未在注册表中声明所需的环境变量,但代码和 SKILL.md 依赖于 `OPENCLAW_USER_ID` 进行身份验证,并可选地尊重 `MEMORY_MODE` 和 `MEMORY_DEDUP_AFTER`。`handler.ts` 明确将完整的 `process.env` 传递给 spawn 的 Python 进程,向子进程暴露任何存在的环境变量。没有请求外部 API 密钥,网络调用似乎仅限于 localhost(Ollama)和本地 lancedb,这是合理的 —— 但未声明依赖于 `OPENCLAW_USER_ID` 和传递 `process.env` 是不匹配的,并且是中等风险。
✓ 持久化与权限
`always` 为 false 且技能是用户可调用。安装 Hook(根据 SKILL.md)授予技能在消息事件上自动执行的权限 —— 这对于自动记忆 hook 是预期的。技能写入 `~/.openclaw/workspace/memory`(其自己的数据);它不修改其他技能或全局代理配置。未找到 'always: true' 或隐式全局权限。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv1.1.22026/3/8
["增加安全说明,包括用户身份验证方法(通过环境变量 `OPENCLAW_USER_ID` 获取真实用户 ID)和权限控制说明。","明确禁止通过参数中的 `user_id` 设置身份,需使用环境变量传递用户 ID。","说明删除和共享记忆等敏感操作仅限创建人本人。","丰富了 Hook 模式下用户 ID 穿透的说明。","其余功能和命令保持兼容,未作破坏性更改。"]
● 无害
安装命令 点击复制
官方npx clawhub@latest install pidan-memory
镜像加速npx clawhub@latest install pidan-memory --registry https://cn.clawhub-mirror.com
技能文档
本地持久化向量记忆系统,为 AI Assistant 提供长期记忆能力。支持多用户/共享模式。
概述
基于 LanceDB + Ollama 实现的本地向量记忆系统,支持语义搜索和多用户隔离。架构
``用户输入 → Ollama (向量化) → LanceDB (存储/搜索) ↑ nomic-embed-text (768维向量)
功能
1. 自动记忆(推荐)
安装 Hook 后自动生效,无需手动调用!
每次对话后自动评估并存储重要信息,覆盖 16 大类场景。安装方式:
bash
# 1. 复制文件
mkdir -p ~/.openclaw/hooks/pidan-memory
cp HOOK.md handler.ts ~/.openclaw/hooks/pidan-memory/
cp auto_memory.py ~/.openclaw/workspace/memory/
# 2. 启用
openclaw hooks enable pidan-memory
openclaw gateway restart
2. 记住信息 (remember)
手动存储重要信息到向量数据库参数:
content: 记忆内容 (必填)
summary: 摘要 (可选)
importance: 重要程度 1-5 (默认 3)
user_id: 用户 ID (默认 default)示例:
json
{ "command": "remember", "parameters": { "content": "用户最喜欢吃火锅", "summary": "饮食偏好", "importance": 4, "user_id": "default" } }
``...(以下内容与原文类似,已省略)
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制