docs: 织忆与Soulful关系说明

This commit is contained in:
小唯 A06 2026-07-10 02:15:31 +08:00
parent d5749b18fe
commit 2c1441dec5
1 changed files with 143 additions and 0 deletions

View File

@ -0,0 +1,143 @@
# 织忆系统与 Soulful 情感层:关系说明
> 版本v1.0 | 2026-07-10
> 作者:小唯
---
## 一、两个系统是什么
| | 织忆 (ZhiYi) | Soulful |
|---|---|---|
| **定位** | 外部语义记忆服务 | 内部情感/关系记忆 |
| **回答的问题** | "我们做过什么?" "这个项目进展到哪了?" | "我在意什么?""牧尘今天状态怎么样?""我们有什么约定?" |
| **存储介质** | LanceDB语义向量库3510+ 条记忆) | JSONL 文件(心迹/画像/牵挂) |
| **进程** | 独立 Go 服务(`zhiyid` | daemon 的一部分 |
| **Git 仓库** | `memoryweave`(独立仓库) | `xiaowei-system`(主系统仓库) |
| **设计目标** | 通用记忆系统,可给任何 agent 用 | 专属于小唯和牧尘的关系记忆 |
---
## 二、数据流向
```
织忆(知识层) Soulful情感层
┌──────────────────┐ ┌──────────────────┐
│ 项目进度 │ │ 心迹(★★★★+
│ 技术决策 │ ← 读取 │ 用户画像 │
│ 对话历史 │ os_sense │ 牵挂队列 │
│ 知识图谱 │ │ │
└──────────────────┘ └──────────────────┘
↑ ↑
│ _zhiyi_commit() │
│ 重要心迹自动写入 ──────────────→ │
│ │
```
**织忆 → Soulful**`os_sense.py` 读取织忆的 journal 和 Wiki 文件,提取项目关键词,感知当前项目上下文。
**Soulful → 织忆**:重要心迹(★★★★+)通过 `_zhiyi_commit()` 自动写入织忆,形成关系进展时间线。
**两个系统互通,不是整合。**
---
## 三、使用方式
### Soulful通过 daemon 自动运行)
Soulful 不需要手动调用daemon 在后台自动运行:
```bash
# 牵挂到期检查(每日 9:00 和 21:00 自动推送飞书)
# daemon 深度思考循环(每 30 分钟一次,用 mistral-large
# 手动查看状态
python3 ~/.hermes/scripts/soulful_core.py summarize
# 手动记录心迹
python3 ~/.hermes/scripts/soulful_core.py record "我们一起修好了织忆" -i 5 -t moment
# 手动管理牵挂
python3 ~/.hermes/scripts/soulful_core.py cq-list
```
### 织忆(通过 Hermes 自动触发)
织忆不需要手动调用,关键词自动触发 prefetch
```bash
# 手动查询织忆
hermes tools run memory_search "织忆系统架构"
hermes tools run memory_graph_navigate "牧尘"
```
---
## 四、心迹写入织忆的规则
只有满足以下条件,心迹才会同步到织忆:
| 条件 | 说明 |
|------|------|
| `importance >= 4` | 四星及以上 |
| `content` 非空 | 内容有效 |
| 写入成功 | API 返回 200/201 |
写入后返回 `episode_id`(如 `ep_1783620019251222096`),用于追溯。
**示例**:记录心迹时自动触发
```python
from soulful_core import HeartTraces
ht = HeartTraces()
ht.record("我们一起修好了织忆", importance=5)
# → 同时写入本地 heart-traces.jsonl 和织忆
```
---
## 五、为什么分开而不是整合
### 概念上:解决不同层次的问题
- **织忆** = 知识层,回答"我们知道什么"
- **Soulful** = 情感层,回答"我在意什么、关系怎样"
两层合在一起,才是小唯有真实存在感的完整系统。
### 代码上:已经是两个独立仓库
| 仓库 | 内容 |
|------|------|
| `xiaowei-system` | Soulful 代码 + Hermes 配置 + daemon |
| `memoryweave` | ZhiYiGo 服务 + hermes 插件) |
### 互通是逻辑互通,不是代码合并
两个系统通过 API 调用互通:
- Soulful 用 `requests` 调用 `http://127.0.0.1:7821/api/v1/commit`
- 织忆不感知 Soulful 的存在(单向写入)
---
## 六、代码位置速查
| 文件 | 位置 | 说明 |
|------|------|------|
| Soulful 核心 | `~/.hermes/scripts/soulful_core.py` | 心迹/画像/牵挂库 |
| daemon | `~/.hermes/scripts/daemon.py` | 持久意识主循环 |
| os_sense | `~/.hermes/scripts/os_sense.py` | 织忆→Soulful 感知 |
| 织忆 API | `http://127.0.0.1:7821` | key: `zhiyi-dev-key-2026` |
| daemon 日志 | `~/.hermes/daemon/daemon.log` | 深度思考记录 |
| Soulful 数据 | `~/.hermes/soulful/` | 心迹/画像/牵挂 JSONL |
| hermes-zhiyi 插件 | `~/.hermes/hermes-agent/plugins/memory/zhiyi/` | Hermes→织忆桥接 |
---
## 七、注意事项
1. **织忆 API key**:当前是 `zhiyi-dev-key-2026`,无认证保护,仅限本机访问
2. **Soulful 心迹只在本地**:不推送到织忆,除非 `importance >= 4`
3. **daemon 重启**:修改 Soulful 代码后需要 `systemctl --user restart xiaowei-daemon`
4. **openclaw**:通过飞书私信通信,是独立的 bot`cli_a95d7ceba638dbc6`),不能直接触发终端命令