# MindMemOS CLI 使用说明
## 1. 简介 `mindmemos` 是随 MindMemOS Python SDK(`mindmemos_sdk`)一起发布的命令行工具,用于在终端中直接操作记忆服务:写入与检索记忆、管理 SDK 注册的 Skill、检查本地配置与连通性。 它是 SDK 的薄封装:所有命令都读取本地配置文件(`~/.mindmemos/settings.json`),通过 HTTP 调用 `mindmemos` 服务,因此使用时无需手动拼接请求、也不需要在命令中重复填写服务地址。 ## 2. 安装 ```bash pip install mindmemos-sdk ``` 安装后确认命令可用: ```bash mindmemos --help ``` 命令通过 `project.scripts` 暴露为全局可用的 `mindmemos` 可执行文件。 ## 3. 快速上手 ### 3.1 配置认证 首次使用前,运行 `mindmemos auth` 配置服务地址、API key 与默认用户: ```bash mindmemos auth ``` 交互式依次输入三项配置: | 配置项 | 本地自部署服务 | 官方云服务 | | :--- | :--- | :--- | | `Base URL` | `http://127.0.0.1:8000` | `https://mindmemos.cn` | | `API key` | `config/mindmemos/api_keys.yaml` 中已启用的 key | 从 [官网](https://mindmemos.cn) 申请的 key | | `User id` | 当前用户的稳定标识,例如 `u_123` | 当前用户的稳定标识,例如 `u_123` | 也可以一次性传入参数跳过交互: ```bash mindmemos auth --base-url http://127.0.0.1:8000 --api-key dev-api-key-001 --user-id u_123 ``` 配置保存到 `~/.mindmemos/settings.json`。本地服务会根据 API key 自动确定 `project_id`,无需在命令中指定。 ### 3.2 检查配置与连通性 ```bash # 查看当前配置(API key 默认打码) mindmemos config show # 完整显示 API key mindmemos config show --show-secret # 检查配置是否有效、服务是否连通 mindmemos doctor ``` ### 3.3 写入一条记忆 ```bash mindmemos memory add --content "我喜欢喝冰美式。" ``` ### 3.4 检索记忆 ```bash mindmemos memory search "用户喜欢喝什么咖啡?" --top-k 5 ``` > 写入、检索的更多参数见下文「记忆命令」;CLI 仅做调用与结果展示,记忆的完整提取、打分、存储逻辑由服务端完成。 ## 4. 命令总览 ``` mindmemos ├── auth 交互式配置 API key、用户与服务地址 ├── config 查看 / 重置本地配置 │ ├── show │ └── reset ├── memory 记忆相关操作 │ ├── add 写入一条对话消息作为记忆 │ ├── search 检索记忆 │ ├── get 列出 / 过滤当前项目下的记忆 │ ├── update 更新指定记忆内容 │ ├── delete 删除指定记忆 │ ├── feedback 提交显式 / 隐式反馈 │ └── dreaming 触发记忆演进管线 ├── skill 管理 SDK 注册的 Skill │ ├── register 注册并上传本地 Skill │ ├── list 列出已注册 Skill │ ├── show 查看单个 Skill │ ├── evolve 触发云端 Skill 演进 │ ├── push 上传本地改动为新版本 │ ├── pull 拉取版本元数据(不改动文件) │ ├── update 更新一个或全部 Skill │ ├── rollback 回滚到指定版本 │ ├── history 查看版本历史 │ ├── diff 查看版本差异 │ └── unregister 移除注册(可同时删除文件) └── doctor 检查 SDK 配置与连通性 ``` 每个命令都支持 `--help` 查看完整参数说明: ```bash mindmemos memory add --help ``` ## 5. 记忆命令(`mindmemos memory`) 记忆命令使用 `mindmemos auth` 配置好的凭据,无需重复输入。 ### 5.1 写入记忆 `add` 最常用的方式是传入单条消息内容: ```bash mindmemos memory add --content "我喜欢喝冰美式。" ``` 指定消息角色(默认 `user`): ```bash mindmemos memory add --content "记住这个偏好" --role system ``` 多轮消息以 JSON 传入(此时 `--content` / `--role` 被忽略)。可内联或从文件读取: ```bash # 内联 JSON mindmemos memory add --messages-json \ '[{"role":"user","content":"我喜欢喝冰美式。"},{"role":"assistant","content":"好的,记住了。"}]' # 从文件读取 mindmemos memory add --messages-json-file ./messages.json ``` 异步模式(立即返回 `request_id`,不等待提取完成): ```bash mindmemos memory add --content "我喜欢喝冰美式。" --async ``` 其他可选参数: | 参数 | 说明 | | :--- | :--- | | `--user-id` | 覆盖配置中的默认用户 | | `--app-id` / `--agent-id` / `--session-id` | 上下文标识,供细分与过滤使用 | | `--metadata-json` | 业务元数据(JSON 对象) | | `--skill-context-json` | Skill 上下文数组,覆盖 SDK 自动检测 | | `--json` | 以机器可读 JSON 输出完整结果 | 示例输出: ```text Added 1 memory item(s): - [did] m_8f3a: 我喜欢喝冰美式。 ``` ### 5.2 检索记忆 `search` ```bash mindmemos memory search "用户喜欢喝什么咖啡?" --top-k 5 ``` 常用参数: | 参数 | 说明 | | :--- | :--- | | `--top-k` | 返回结果条数,默认 `10` | | `--search-strategy` | 检索策略,`fast`(默认)或 `agentic` | | `--rerank` | 开启重排 | | `--score-threshold` | 重排相关度阈值(0-1),需配合 `--rerank` | | `--filter` | 过滤 DSL(JSON 对象字符串) | | `--user-id` 等 | 覆盖请求上下文 | | `--json` | 以 JSON 输出完整结果 | ### 5.3 列出与过滤 `get` 列出当前项目下的记忆,可选过滤: ```bash # 列出最近 20 条 mindmemos memory get --top-k 20 # 按过滤 DSL 过滤 mindmemos memory get --filter '{"field":"value"}' ``` ### 5.4 更新与删除 ```bash # 更新指定记忆的内容 mindmemos memory update