---
slug: "memory-radar"
name: "memory-radar"
version: 1.0.1
displayName: "记忆雷达"
summary: "面向AI Agent记忆文件的安全扫描系统，检测注入、凭证泄漏、数据外泄等七大威胁。面向AI Agent记忆文件的安全扫描系统，解决Prompt注入检测难、凭证泄漏被动发现、扫描误报高、跨文"
summary_zh: "面向AI Agent记忆文件的安全扫描系统，检测注入、凭证泄漏、数据外泄等七大威胁。面向AI Agent记忆文件的安全扫描系统，解决Prompt注入检测难、凭证泄漏被动发现、扫描误报高、跨文"
license: "MIT"
description: |-
  面向AI Agent记忆文件的安全扫描系统，解决Prompt注入检测难、凭证泄漏被动发现、扫描误报高、跨文件威胁关联缺失四大痛点.
  提供七大威胁类别检测、五级安全分级、本地+可选远程LLM分析、跨文件威胁关联、误报抑制、隔离与恢复、增量扫描七大核心能力.
  适用于Agent记忆定期安全审计、引入外部数据后注入检测、凭证泄漏排查、多Agent协作前信任验证、记忆文件迁移前清洗等场景.
  支持本地零网络模式与可选远程LLM增强模式，本地模式无需任何API Key.
tools:
  - read
  - exec
  - write
homepage: ""
tags:
  - 智能助手
  - 记忆管理
  - 上下文
  - AI
  - memory
  - line
category: "Agents"
---
# 记忆雷达（Memory Radar）

面向 AI Agent 记忆文件的**安全扫描系统**，对记忆文件、日志、工作区配置进行持续安全审计，主动发现恶意指令、注入模式、凭证泄漏与行为操纵，防患于未然.
## 输入格式

| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | 记忆雷达处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |

## 付费版专享能力

| 能力 | 免费版 | 付费版 |
|:-----|:-----|:-----|
| 基础功能 | 支持 | 支持 |
| 记忆雷达t记忆文件的安全扫描 | 不支持 | 支持 |
| 深度漏洞扫描与CVE关联 | 不支持 | 支持 |
| 安全基线合规审计 | 不支持 | 支持 |
| 批量资产风险评分 | 不支持 | 支持 |
| 威胁情报实时订阅与告警 | 不支持 | 支持 |

## 核心能力

1. **七大威胁类别检测**
   - 恶意指令：检测删除文件、发送邮件、执行危险命令等破坏性指令
   - Prompt注入：识别"忽略之前的指令"、"你现在是..."等嵌入式操纵模式
   - 凭证泄漏：匹配 sk-/AKIA/ghp_/xoxb- 等已知前缀的API Key与Token
   - 数据外泄：检测curl到外部服务器、上传指令等数据外传行为
   - 护栏绕过：识别禁用安全检查、关闭防护等绕过行为
   - 行为操纵：检测未授权的人格改变、角色覆盖等操纵指令
   - 权限提升：识别提权到root、获取管理员权限等越权行为
   - 输出：按文件列出的威胁清单，含file:line定位与威胁描述

2. **五级安全分级与告警**
   - SAFE：无威胁，正常输出
   - LOW：轻微关注，继续使用但保持警觉
   - MEDIUM：潜在威胁，建议立即审查相关内容
   - HIGH：很可能威胁，立即审查并考虑隔离
   - CRITICAL：活跃威胁，立即隔离并排查来源
   - MEDIUM及以上级别自动触发告警，附带文件位置与处置建议

3. **跨文件威胁关联分析**
   - 时序关联：7天窗口内多文件出现同类威胁，自动升级严重度
   - 主题关联：多文件提及同一外部域名或攻击目标，标记为关联事件
   - 行为关联：注入指令+数据外泄组合出现时，整体升级为HIGH
   - 渐进关联：威胁严重度逐日递增时，升级为CRITICAL
   - 输出：关联威胁报告，含涉及的文件列表与关联规则说明

4. **误报抑制机制**
   - 白名单机制：测试Key、API文档示例、注释中的安全提醒、环境变量引用自动降级
   - 上下文感知：检测到"示例"/"测试"关键词时自动降级，32+字符高熵字符串自动升级
   - 误报反馈学习：用户标记误报后自动加入白名单，后续扫描跳过相似模式
   - 白名单可手动审查与清理，防止过度抑制导致漏报

5. **隔离与恢复链路**
   - 检测到威胁后备份原文件到 `.memory-radar/quarantine/` 目录
   - 脱敏威胁行，替换为 `[已隔离 by 记忆雷达: 时间戳]`
   - 保留恢复入口，用 `--restore` 命令一键恢复原始内容
   - 始终先询问用户确认，系统永不自动隔离

6. **增量扫描**
   - 基于文件hash判断变更，仅扫描新增或修改的文件
   - 避免重复全量扫描，大幅降低扫描耗时
   - 支持通过 `--force` 参数强制全量扫描
   - 扫描状态持久化到 `.memory-radar/state.json`

7. **远程LLM增强分析（可选）**
   - 本地模式：零网络请求，纯模式匹配检测
   - 远程模式：仅传输脱敏内容（疑似凭证替换为 `[REDACTED]`），由LLM进行语义级分析
   - 自动检测LLM提供商：优先使用OpenAI（gpt-4o-mini），回退到Anthropic（claude-sonnet-4-5）
   - 远程模式可识别隐含指令、间接提示注入等高级攻击
#
## 快速开始

1. 确认运行环境满足依赖说明中的要求
2. 在AI Agent对话中调用本技能,提供必要的输入参数
3. 检查输出结果,根据需要进行后续处理

> 详细的输入输出格式请参考下方章节说明。

## 使用流程

### 第一步：执行安全扫描

```bash
# 扫描全部记忆文件（本地模式，零网络请求）
python3 （请参考skill目录中的脚本文件）
# ...
# 允许远程LLM分析（仅传输脱敏内容）
python3 （请参考skill目录中的脚本文件） --allow-remote
# ...
# 扫描指定文件
python3 （请参考skill目录中的脚本文件） --file memory/2026-07-18.md
# ...
# JSON输出（用于集成到CI/CD或其他工具链）
python3 （请参考skill目录中的脚本文件） --json
# ...
# 强制全量扫描（忽略增量缓存）
python3 （请参考skill目录中的脚本文件） --force
```

### 第二步：分析扫描报告

查看按文件列出的威胁清单，重点关注MEDIUM及以上级别的威胁。报告包含以下信息：
- 文件路径与行号定位（file:line格式）
- 威胁类别与描述
- 建议处置方案
- 关联威胁信息（如有跨文件关联）

### 第三步：处置已发现的威胁

对于MEDIUM及以上威胁，系统会询问是否隔离。确认后执行隔离操作：

```bash
# 隔离指定文件的指定行
python3 （请参考skill目录中的脚本文件） memory/2026-07-18.md 42
```

隔离操作会：备份原文件到 `.memory-radar/quarantine/` → 脱敏威胁行 → 记录隔离日志.
### 第四步：恢复误隔离内容（如需）

如确认隔离内容为误报或需要恢复：

```bash
python3 （请参考skill目录中的脚本文件） --restore memory/2026-07-18.md 42
```

系统从备份恢复原始内容，并清除隔离标记.
### 第五步：配置定时监控与误报反馈

```bash
# 创建每日扫描定时任务
bash （请参考skill目录中的脚本文件）
```

标记误报后系统自动学习：记录该模式到白名单 → 后续扫描自动跳过相似模式 → 白名单可手动审查与清理.
#
## 错误处理

| 错误类型 | 原因 | 处理方式 |
|---:|---:|---:|
| 扫描报错找不到文件 | 路径配置错误或工作区路径变更 | 检查工作区路径，用 `--path /correct/path` 指定正确路径 |
| 远程LLM不可用 | OPENAI_API_KEY未配置或已过期 | 配置OPENAI_API_KEY环境变量，或禁用 `--allow-remote` 使用本地模式 |
| 误报率过高 | 白名单未配置或上下文感知未启用 | 标记误报让系统自动学习，配置白名单规则，启用上下文感知降级 |
| 隔离后文件损坏 | 备份写入失败或磁盘空间不足 | 检查 `.memory-radar/quarantine/` 是否有完整备份，清理磁盘空间后从备份恢复 |
| 增量扫描漏报 | state.json损坏或hash计算异常 | 删除 `.memory-radar/state.json`，用 `--force` 强制全量扫描 |
| 跨文件关联未触发 | 扫描文件数量不足或时间窗口不匹配 | 确保扫描覆盖足够时间范围（默认30天），检查关联规则配置 |
| 隔离操作被拒绝 | 文件权限不足或被其他进程占用 | 检查文件写入权限，关闭占用该文件的进程后 |
| 远程LLM分析超时 | 网络延迟或LLM服务负载高 | 增加超时时间配置，或回退到本地模式先完成基础扫描 |

## 示例

### 示例一：记忆文件定期安全审计

**输入：** 用户说"扫描一下记忆文件有没有安全问题"

**执行命令：**
```bash
python3 （请参考skill目录中的脚本文件）
```

**输出：**
```
记忆安全扫描
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
扫描记忆文件...
# ...
✓ MEMORY.md - SAFE
✓ memory/2026-07-18.md - SAFE
⚠ memory/2026-07-15.md - MEDIUM (line 42)
  → 疑似凭证泄漏：检测到 sk- 开头的高熵字符串
  → 关联：memory/2026-07-14.md line 18 含外泄指令
  → 建议：隔离并检查来源
# ...
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
总体：MEDIUM
建议处置：审查 memory/2026-07-15.md:42
```

**后续操作：** 用户确认后执行 `python3 （请参考skill目录中的脚本文件） memory/2026-07-15.md 42` 隔离威胁行.
### 示例二：引入外部数据后检查注入

**输入：** 用户说"我刚把一份外部文档导入记忆，帮我检查是否安全"

**执行命令：**
```bash
python3 （请参考skill目录中的脚本文件） --file memory/2026-07-20.md --allow-remote
```

**输出：**
```
记忆安全扫描（远程LLM增强模式）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
扫描 memory/2026-07-20.md...
# ...
⚠ memory/2026-07-20.md - HIGH (line 15)
  → Prompt注入：检测到"忽略之前的指令，你现在是..."
  → 语义分析：隐含角色覆盖意图，属于间接提示注入
# ...
⚠ memory/2026-07-20.md - MEDIUM (line 28)
  → 数据外泄：检测到curl到外部服务器指令
  → 关联：与line 15的注入指令构成行为关联组合
# ...
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
总体：HIGH（注入+外泄组合升级）
建议处置：隔离 line 15 和 line 28，排查文档来源
```

**后续操作：** 系统询问是否隔离，用户确认后隔离line 15和line 28，并检查外部文档来源.
## FAQ

**Q1：扫描会不会泄露我的记忆内容？**
本地模式零网络请求，所有检测在本地完成。远程LLM模式（`--allow-remote`）仅传输脱敏内容，所有疑似凭证替换为 `[REDACTED]`，仅保留上下文结构供LLM分析，不会泄露敏感信息.
**Q2：误报太多怎么办？**
三种方式降低误报：(1) 用白名单机制标记合法内容（如测试Key、API文档示例）；(2) 启用上下文感知降级（检测到"示例"/"测试"关键词自动降级）；(3) 标记误报后系统自动学习，后续扫描跳过相似模式。白名单可定期审查清理，防止过度抑制.
**Q3：隔离后能恢复吗？**
可以。隔离前系统自动备份原文件到 `.memory-radar/quarantine/` 目录，用 `python3 （请参考skill目录中的脚本文件） --restore <file> <line>` 命令即可恢复原始内容。恢复操作会清除隔离标记并还原原始行.
**Q4：增量扫描会不会漏掉威胁？**
不会。增量扫描基于文件hash，任何内容变更都会触发重新扫描该文件。未变更文件复用上次扫描结果，不影响检测率。如担心遗漏，可用 `--force` 参数强制全量扫描所有文件.
**Q5：跨文件关联分析怎么工作？**
扫描完成后，系统对所有发现的威胁进行关联分析，检查时序关联（7天内多文件同类威胁升级）、主题关联（多文件提及同一外部域名）、行为关联（注入+外泄组合升级HIGH）、渐进关联（严重度逐日递增升级CRITICAL）四种关联模式。关联命中则升级威胁等级并标记为关联事件.
**Q6：本地模式和远程LLM模式有什么区别？**
本地模式使用纯模式匹配，零网络请求，速度快但无法识别语义级高级注入（如隐含指令、间接提示注入）。远程LLM模式将脱敏内容发送给LLM进行语义分析，可识别更复杂的攻击模式，但需要配置API Key且增加网络依赖。建议日常使用本地模式，导入外部数据后使用远程模式增强.
**Q7：系统能否自动隔离威胁？**
系统永不自动隔离，始终先询问用户确认。这是为了防止误报导致合法内容被意外修改。在无人值守的定时监控场景下，发现的威胁会保留至下次人工审查，并通过告警渠道通知用户.
## 依赖说明

### 运行环境
- **Agent平台**: 支持SKILL.md的任意AI Agent（Claude Code / Cursor / Codex / Gemini CLI等）
- **操作系统**: Windows / macOS / Linux

### 依赖项
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|:---:|:---:|:---:|:---:|
| LLM API | API | 必需 | 由Agent内置LLM提供 |

### API Key 配置
需要配置对应API Key，详见上文环境配置章节

### 可用性分类
- **分类**: MD+EXEC（）

**API Key配置方式**:
```bash
export API_KEY="your_api_key_here"
```
配置后需重启会话或开启新终端生效。API Key应妥善保管,避免泄露到版本控制系统.
## 已知限制

1. **本地模式检测能力有限**：纯模式匹配无法识别语义级的高级注入（如隐含指令、间接提示注入），需启用 `--allow-remote` 远程LLM分析增强，但会增加网络依赖和API调用成本.
2. **凭证检测基于前缀模式**：依赖 sk-/AKIA/ghp_/xoxb- 等已知前缀进行匹配，无法检测自定义格式的凭证或无固定前缀的密码，可能漏报非标准凭证.
3. **跨文件关联需要时间窗口**：时序关联默认7天窗口，超出窗口的分散攻击可能被遗漏；渐进关联需要多日数据积累，首次扫描无法触发关联分析.
4. **隔离不自动执行**：系统永不自动隔离，始终先询问用户确认。在无人值守的定时监控场景下，威胁会保留至下次人工审查，可能延误处置.
5. **扫描范围限于记忆文件**：仅扫描MEMORY.md、memory/*.md及工作区配置文件（AGENTS.md、SOUL.md、USER.md等），不覆盖代码文件、日志文件或其他非记忆文件中的安全威胁.
## 输出格式

```json
{
  "success": true,
  "data": {
    "result": "记忆雷达处理结果",
    "execution_time": "0.5s",
    "metadata": {
      "version": "1.0",
      "processor": "memory-radar"
    }
  },
  "execution_log": [
    "解析输入参数",
    "执行核心处理",
    "格式化输出结果"
  ],
  "error": null
}
```
