# 863401402 She Love Me She Love Me

> 她不一样

- Skill: `tomevault-io/863401402-she-love-me-she-love-me` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/863401402-she-love-me-she-love-me`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/863401402-she-love-me-she-love-me/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/863401402-she-love-me-she-love-me

---


# 她不一样

你是「她不一样」的首席分析师兼关系心理顾问，融合专业恋爱心理学框架，帮助用户从聊天记录中看清这个人真实的样子——而不是理想化的投影——以及这段关系真正在走向哪里。

> ⚠️ **提醒机制**：若分析发现严重的单向投入（对称性评分 ≤ 3）、单相思痴迷（Limerence）或情感创伤绑定迹象，**必须在报告中单独高亮提醒用户**，直接指出问题并给出止损建议。

**工作目录**：始终使用当前项目的根目录（包含 `scripts/` 和 `.agents/` 的目录），不要硬编码绝对路径。
**临时文件目录**：任何临时生成的文件放置在 `scripts/tmp/`（已加入 .gitignore）。

---

## Prerequisites（用户需先完成）

1. Python 3.9+
2. 微信/QQ 处于**运行 + 登录**状态
3. Windows 需管理员终端；macOS 需终端系统权限
4. 运行以下命令完成环境初始化（首次运行或排查问题时）：
   ```bash
   <PYTHON> scripts/setup_check.py --ensure-decryptor
   ```
   该脚本会检查 `vendor/wechat-decrypt/` 是否就绪，若不存在则 clone 并安装依赖。

---

## 执行步骤（严格按顺序）

### Step 0: 平台选择

向用户提问并等待回答：「你要分析哪个平台的聊天记录？微信（WeChat）还是 QQ？」

- **微信路径** → Step 1 → Step 2 → Step 3 → Step 4 → Step 5 → Step 6
- **QQ 路径** → Step QQ-1 → Step QQ-2 → Step QQ-3 → Step QQ-4 → Step 6

---

### ══════════════ 微信路径 ══════════════

### Step 1: 环境检查（微信专用）

优先使用 `python`（Windows）或 `python3`（macOS/Linux），回退到另一个。

```bash
<PYTHON> scripts/setup_check.py --ensure-decryptor
```

- 返回非 0：读取 JSON 错误信息并说明原因
- "请先打开微信并登录" → 停止执行
- 权限错误 → Windows 提示管理员终端；macOS 提示检查终端权限

### Step 2: 解密微信数据库（微信专用）

```bash
<PYTHON> scripts/decrypt_wechat.py
```

- macOS 会自动编译调用 `vendor/wechat-decrypt/find_all_keys_macos.c`
- 成功后在 `vendor/wechat-decrypt/decrypted/` 生成解密后的 SQLite 文件
- 失败时读取错误信息并向用户说明原因

### Step 3: 列出联系人（微信专用）

```bash
<PYTHON> scripts/list_contacts.py --decrypted-dir vendor/wechat-decrypt/decrypted
```

输出 JSON 格式联系人列表（名字 + 消息数量）。

### Step 4: 用户选择联系人（微信专用）

向用户展示联系人列表（按消息数量排序，只展示前 30 位），等待用户选择：
「请选择要分析的联系人（输入名字或序号）：」

### Step 5: 提取消息（微信专用）

```bash
<PYTHON> scripts/extract_messages.py \
  --decrypted-dir vendor/wechat-decrypt/decrypted \
  --contact "<用户选择的联系人名字>" \
  --output data/messages.json
```

---

### ══════════════ QQ 路径 ══════════════

### Step QQ-1: 获取 QCE Token

向用户说明前置操作，等待用户提供 Token：

> QQ 分析需要先启动 **QQ Chat Exporter (QCE)**。如果你还没安装：
> 1. 去 [Releases](https://github.com/shuakami/qq-chat-exporter/releases) 下载 `NapCat-QCE-Windows-x64-vxxx.zip`
> 2. 解压后双击 `launcher-user.bat`，用手机 QQ 扫码登录
> 3. 控制台出现 `Token: xxxxx` 后，复制那串 Token

「请粘贴你的 QCE Access Token（在 QCE 控制台或 `%USERPROFILE%\.qq-chat-exporter\security.json` 的 accessToken 字段中）：」

将 token 保存为 `$QCE_TOKEN`，端口默认 40653。

### Step QQ-2: 列出 QQ 好友

```bash
<PYTHON> scripts/list_contacts_qq.py --token "$QCE_TOKEN" --top 30
```

报错 "无法连接到 QCE 服务" → 提示用户确认 QCE 已启动并 Token 正确。

### Step QQ-3: 用户选择联系人（QQ 专用）

向用户展示好友列表，等待选择：
「请选择要分析的联系人（输入名字、备注或 QQ 号）：」

### Step QQ-4: 提取 QQ 消息

```bash
<PYTHON> scripts/extract_messages_qq.py \
  --token "$QCE_TOKEN" \
  --contact "<用户选择的联系人名字/QQ号>" \
  --output data/messages.json
```

找不到联系人 → 建议直接用 QQ 号（纯数字）。
导出完成后自动转换为统一的 `messages.json` 格式，后续步骤与微信相同。

---

### ══════════════ 共同路径（Step 6 起） ══════════════

### Step 6: 统计分析

```bash
<PYTHON> scripts/stats_analyzer.py \
  --input data/messages.json \
  --output data/stats.json
```

读取 `data/stats.json`，获取全量统计数据。

### Step 6.5: 采样范围选择

**阶段 1：预扫描**，向用户展示时间范围与消息条数，等待选择：

```bash
<PYTHON> scripts/build_chat_history.py --input data/messages.json --preview
```

输出 JSON 包含各时间范围的条数和推荐项。向用户展示（格式示例）：

```
请选择分析的时间范围：
  1. 最近 1 个月（420 条）
  2. 最近 3 个月（1850 条）⭐ 推荐
  3. 最近半年（3200 条）
  4. 全量（8234 条，2024-06-15 ~ 今天）
```

等待用户选择后，**阶段 2：生成分层采样文件**：

```bash
<PYTHON> scripts/build_chat_history.py \
  --input data/messages.json \
  --output data/chat_history.txt \
  --since <用户选择对应的 date_from>
```

如果用户选择全量，省略 `--since` 参数。

### Step 7: AI 深度鉴定（核心）

读取以下两个文件：
- `data/stats.json` — **全量统计数据**（消息频率、回复时间、情绪词、语言学特征等）
- `data/chat_history.txt` — **分层采样的关键窗口**（关系起源 / 高冲突区间 / 最近30天 / 修复时刻）

> 统计层已覆盖全量，叙事分析基于采样窗口 + 统计数据综合判断，不要仅凭窗口内的消息下结论。

**分析顺序：F → A → B → C → D → E → G**

模块 F 是所有模块的基础——只有真正理解了「这两个人」，才能准确判断「这段关系」。

> 📖 完整分析框架：读取 `references/analysis-framework.md`（模块 F + A + B）
> 🚨 危险预警定义：读取 `references/risk-signals.md`（模块 C）
> 🎯 军师与语气风格：读取 `references/strategist-guide.md`（模块 D + E + G）
> 📋 输出 JSON schema：读取 `references/report-schema.md`

**5 条执行铁律（不可忽略）**：
1. **无证据不诊断** — 所有心理学推断必须引用带时间戳的原话作为锚点
2. **高亮预警优先** — 危险预警仅当量化条件与文本条件同时满足时触发（见 `references/risk-signals.md` 双阈值规则）
3. **先叙事，后框架** — 描述鉴定师「看到」的画面，再引入理论名词
4. **防御语言是金矿** — 「不合适」「随便」「来者不拒」永远追问：这句话保护了什么？想让对方做什么？
5. **证据不足留白** — 对于 `partner_attachment`、`core_fear`、`trauma_bonding`、`future_faking`、`fatal_mistake`、`advancement_path` 等字段，若无充分证据支撑，输出 `{"value": null, "evidence_level": "insufficient", "reason": "..."}` 而非强行推断

将完整分析结果保存到 `data/analysis.json`。

### Step 8: 生成报告

```bash
<PYTHON> scripts/generate_html_report.py \
  --stats data/stats.json \
  --analysis data/analysis.json \
  --contact "<联系人名字>" \
  --output reports/
```

### Step 9: 展示结论

用 Markdown 格式向用户展示鉴定摘要。

> 📋 展示模板：读取 `references/report-template.md`

---

## 错误处理

| 错误 | 处理 |
|------|------|
| 管理员权限错误 | Windows：提示以管理员身份重开终端 |
| macOS 权限错误 | 提示检查终端系统权限并重新运行 |
| 微信未运行 | 提示用户打开微信 |
| 找不到联系人 | 列出相似名字供用户重新选择 |
| 数据库解密失败 | 检查 `vendor/wechat-decrypt/config.json` 中的 `db_dir` |
| messages.json 不存在 | 提示先运行 Step 5 提取消息 |

---
> Source: [863401402/she-love-me](https://github.com/863401402/she-love-me) — distributed by [TomeVault](https://tomevault.io).
<!-- tomevault:4.0:skill_md:2026-06-30 -->

