此技能为 OpenClaw 安装并配置 Tablestore Mem0 插件。Tablestore Mem0使用阿里云表格存储作为向量存储后端。
用户必须拥有: .是一项面向实际任务的技能,主要用于Alibaba Cloud 账户. 证书 — AccessKey ID + Secret( 具有 AliyunOTSFull Access 权限) 或 ECS RAM 角色( 建议于 ECS).;An QQ API 键( 用于 Qw)。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
用户必须具备以下条件:
AliyunOTSFullAccess 权限),或 ECS RAM Role(在 ECS 上推荐使用)cn-hangzhou)📋 RAM 权限说明:所需 API 权限的完整列表,请参见
references/ram-policies.md。
以下所有条件均满足前,本任务视为未完成:
openclaw.json 已正确配置[AGENT] 向用户提问:
为配置 Tablestore Mem0,我需要以下信息:
必填项:
- 阿里云 AccessKey ID
- 阿里云 AccessKey Secret
- 阿里云百炼 API Key
可选项(若您已有 Tablestore 实例):
4. Tablestore endpoint(例如:https://my-instance.cn-hangzhou.ots.aliyuncs.com)
5. Tablestore 实例名称若您不提供 endpoint 和实例名称,我将为您自动创建一个新的 Tablestore 实例。此时,我还需要:
6. Region ID(例如:cn-hangzhou、cn-shanghai)
继续向用户提问:
问题 1 — 认证方式:您希望采用哪种认证方式?
- 选项 A:ECS RAM Role(ECS 上推荐)—— 请提供 角色名称。
- 选项 B:AccessKey —— 请提供 AccessKey ID 和 Secret。
问题 2 — Tablestore 实例:您是否已拥有 Tablestore 实例?
- 是 → 请提供 endpoint 和实例名称。
- 否 → 请提供用于自动配置的 region ID。
⚠️ 高风险操作 — 预检确认:
若用户回答 否,代理必须执行以下操作:
明确确认:
⚠️ 此配置过程将在您的阿里云账号中新建一个 Tablestore 实例。
- 实例类型:VCU(按量付费,通常低于 ¥1/月)
- 地域:按您指定的 region 执行
是否确认?(yes/no)
二次核验:
请前往 Tablestore 控制台(
https://ots.console.aliyun.com/)确认当前账号下无已有实例。
在用户明确确认前,不得继续执行后续步骤。
若用户缺少必要凭证,请引导其访问以下链接:
https://account.alibabacloud.com/register/intl_register.htmhttps://ram.console.aliyun.com/manage/akhttps://dashscope.console.aliyun.com/apiKeyAliyunOTSFullAccess 权限 —— 参考文档插件版本:0.8.2
⚠️ 外部包安装提示:
本技能将从 npm 仓库安装
@tablestore/openclaw-mem0@0.8.2。继续执行即表示您同意安装第三方软件包。
是否同意?(yes/no)
等待用户确认后,执行以下命令:
NPMJS_TIME="$(curl -o /dev/null -sS --connect-timeout 2 --max-time 6 -w '%{time_total}' https://registry.npmjs.org/@tablestore%2fopenclaw-mem0 || echo timeout)"
MIRROR_TIME="$(curl -o /dev/null -sS --connect-timeout 2 --max-time 6 -w '%{time_total}' https://registry.npmmirror.com/@tablestore%2fopenclaw-mem0 || echo timeout)"
if [ "$MIRROR_TIME" != "timeout" ] && { [ "$NPMJS_TIME" = "timeout" ] || awk "BEGIN { exit !($NPMJS_TIME > 2 && $MIRROR_TIME < $NPMJS_TIME) }"; }; then
echo "Using China npm mirror"
NPM_CONFIG_REGISTRY=https://registry.npmmirror.com openclaw plugins install @tablestore/openclaw-mem0@0.8.2
else
openclaw plugins install @tablestore/openclaw-mem0@0.8.2
fi
若出现 extract tar timed out 错误,则回退至手动安装:
cd /tmp && npm pack @tablestore/openclaw-mem0@0.8.2 mkdir -p /tmp/openclaw-mem0-install tar xzf /tmp/tablestore-openclaw-mem0-*.tgz -C /tmp/openclaw-mem0-install --strip-components=1 openclaw plugins install /tmp/openclaw-mem0-install
openclaw --version
>= 2.2.0 → 使用 步骤 3A< 2.2.0 → 使用 步骤 3B(移除 .plugins.allow 行)检测配置文件路径:
OPENCLAW_CONFIG="$(openclaw config file 2>/dev/null | head -1)"
OPENCLAW_CONFIG="${OPENCLAW_CONFIG/#~/$HOME}"
echo "Config file: $OPENCLAW_CONFIG"
⚠️ 凭证安全(强制要求):
始终优先使用环境变量:
export TABLESTORE_ACCESS_KEY_ID="" export TABLESTORE_ACCESS_KEY_SECRET=" " export DASHSCOPE_API_KEY=" "
⚠️ 输入校验(强制要求):
| 输入项 | 校验规则 |
|---|---|
| AccessKey ID | 正则表达式:^LTAI[Nt][A-Za-z0-9]{12,20}$ |
| AccessKey Secret | 仅含字母与数字,长度约 30 位 |
| Region ID | 正则表达式:^cn-[a-z]+(-[0-9]+)?$ 或 ^[a-z]+-[a-z]+-[0-9]+$ |
| Endpoint | 正则表达式:^https://[a-z0-9-]+.[a-z0-9-]+.ots.aliyuncs.com$ |
| 实例名称 | 正则表达式:^[a-z][a-z0-9-]{0,19}$ |
⚠️ Embedder / LLM 提供方必须设为 "openai",且 baseURL 必须为 "https://dashscope.aliyuncs.com/compatible-mode/v1",不可使用 "dashscope"。
| 认证方式 | 是否已有实例 | vectorStore.config 字段 |
|---|---|---|
| AccessKey | 否 | accessKeyId、accessKeySecret、regionId |
| AccessKey | 是 | accessKeyId、accessKeySecret、endpoint、instanceName |
| ECS RAM Role | 否 | roleName、regionId |
| ECS RAM Role | 是 | roleName、endpoint、instanceName |
模板(AccessKey 认证 + 自动创建):
jq '
.plugins.slots.memory = "openclaw-mem0" |
.plugins.entries["openclaw-mem0"] = {
enabled: true,
config: {
mode: "open-source",
oss: {
vectorStore: {
provider: "tablestore",
config: {
accessKeyId: "${TABLESTORE_ACCESS_KEY_ID}",
accessKeySecret: "${TABLESTORE_ACCESS_KEY_SECRET}",
regionId: "cn-hangzhou"
}
},
embedder: {
provider: "openai",
config: {
apiKey: "${DASHSCOPE_API_KEY}",
model: "text-embedding-v3",
baseURL: "https://dashscope.aliyuncs.com/compatible-mode/v1"
}
},
llm: {
provider: "openai",
config: {
apiKey: "${DASHSCOPE_API_KEY}",
model: "qwen-plus",
baseURL: "https://dashscope.aliyuncs.com/compatible-mode/v1"
}
}
}
}
} |
.plugins.allow = ((.plugins.allow // []) + ["openclaw-mem0"] | unique)
' "$OPENCLAW_CONFIG" > /tmp/openclaw-tmp.json && mv /tmp/openclaw-tmp.json "$OPENCLAW_CONFIG"
对于 已有实例:将 regionId 替换为 endpoint 和 instanceName。
对于 ECS RAM Role:将 accessKeyId/accessKeySecret 替换为 roleName。
与步骤 3A 相同,但需移除 .plugins.allow 行。
openclaw gateway restart
等待约 1 分钟,确保网关完成重启。
openclaw mem0 stats
成功标志:插件加载无报错,并显示当前 mode 和 memory 数量。
✅ Tablestore Mem0 已就绪。 您的记忆数据现已由阿里云 Tablestore 持久化存储。 插件将在每次对话开始前自动召回相关记忆,并在每次对话结束后自动提取关键事实。 常用指令:“remember this” / “what do you know about me?” / “forget that” 配置详情:Tablestore 向量存储 + 阿里云百炼 text-embedding-v3 + Qwen-Plus
实例:<自动创建或用户指定> 安全建议:ECS 环境下优先使用 ECS RAM Role;切勿将凭证提交至版本控制系统。
| 参数 | 是否必需 | 默认值 | 说明 |
|---|---|---|---|
accessKeyId |
否* | — | AccessKey ID(或环境变量 TABLESTORE_ACCESS_KEY_ID) |
accessKeySecret |
否* | — | AccessKey Secret(或环境变量 TABLESTORE_ACCESS_KEY_SECRET) |
roleName |
否* | — | ECS RAM 角色名称(或环境变量 TABLESTORE_ROLE_NAME) |
endpoint |
否 | 自动创建 | Tablestore 实例 endpoint |
instanceName |
否 | 自动创建 | Tablestore 实例名称 |
regionId |
否 | cn-hangzhou |
自动配置所用地域 |
tableName |
否 | mem0_vectors |
数据表名称 |
dimension |
否 | 1024 |
向量维度 |
*当 roleName 已设置时,此项非必需。
当未提供 endpoint/instanceName 时,将创建一个 VCU 实例,具体配置如下:
| 现象 | 解决方法 |
|---|---|
| 插件未加载 | 检查 slots.memory = "openclaw-mem0" 和 enabled = true |
AccessKeyId is invalid |
确认 AccessKey 正确且对应账号处于激活状态 |
| 自动配置失败 | 确认 AccessKey 具备 AliyunOTSFullAccess 权限 |
| 嵌入(embedding)报错 | 确认已设置 DASHSCOPE_API_KEY |
| VPC endpoint 不可达 | 插件会自动启用公网访问;请再次确认 AliyunOTSFullAccess 权限已授予 |
extract tar timed out |
使用手动回退方案:npm pack + 系统 tar |
provider 显示为 dashscope |
将 provider 修改为 "openai" 并确保 baseURL 正确 |
请勿设置自动更新。仅在用户明确要求时才执行更新操作。
相关专题
热门下载
相关下载
精品课程
共1课时 | 164人学习
共0课时 | 0人学习
共1课时 | 205人学习
最新文章