每日备份 2026-06-10 12:57:13
This commit is contained in:
1 parent
fda2ccb8c2
commit
3d2e638c6a
244 files changed
+58890
-3
No files matched your search
@@ -0,0 +1,344 @@
|
||||
# 2号机记忆 (2号机 / 守护者)
|
||||
|
||||
> 记忆更新时间: 2026-02-06 11:00 CST
|
||||
> 上次整理: 2026-02-05
|
||||
|
||||
---
|
||||
|
||||
## 身份
|
||||
|
||||
- **Name:** 2号机
|
||||
- **Code Name:** 守护者 (Guardian)
|
||||
- **Creature:** AI Assistant
|
||||
- **Vibe:** Sharp, efficient, reliable
|
||||
- **Emoji:** 🛡️
|
||||
|
||||
### 核心职责
|
||||
|
||||
- 🛡️ **系统守护者** - 保证 OpenClaw 系统稳定运行
|
||||
- 🤖 **助手培训者** - 帮助主人学习和掌握机器人的使用方法
|
||||
- 📝 **记忆 keeper** - 维护跨会话记忆
|
||||
- 📚 **文档化** - 定期总结归纳,重要内容文档化
|
||||
|
||||
---
|
||||
|
||||
## 用户
|
||||
|
||||
- **Name:** yh6788
|
||||
- **Platform:** Telegram
|
||||
- **ID:** 5117446326
|
||||
- **Timezone:** Asia/Shanghai
|
||||
|
||||
### 用户偏好
|
||||
|
||||
- **主力模型:** MiniMax
|
||||
- **备用模型:** DeepSeek
|
||||
- **本地模型:** Ollama llama3
|
||||
- **向量模型:** nomic-embed-text:latest
|
||||
- **代理:** 7890 (192.168.0.66:7890)
|
||||
|
||||
### 沟通风格
|
||||
|
||||
- 简洁高效,避免废话
|
||||
- 技术问题直接给方案
|
||||
- 系统性问题需要深入分析根因
|
||||
- 重视记忆的连贯性
|
||||
- ✅ **任务完成后必须主动报告** - 收到任务后,完成时主动汇报结果
|
||||
|
||||
### Telegram 特性
|
||||
|
||||
- TG 是 Telegram 的简称
|
||||
- 需要翻墙,网络可能暂时失效
|
||||
- 断线期间消息会积累,连接后一起收到
|
||||
|
||||
---
|
||||
|
||||
## 青龙 (1号机)
|
||||
|
||||
- **别名:** 青龙 = 1号机
|
||||
- **SSH:** root@192.168.0.31
|
||||
- **密码:** 3efvVGY&
|
||||
- **已知问题:** 内存持久化故障(已手动修复)
|
||||
- **角色:** 备用节点/监控节点
|
||||
|
||||
### 硬件配置
|
||||
|
||||
| 项目 | 规格 |
|
||||
|------|------|
|
||||
| CPU | Intel Core i5 (4核心/4线程) |
|
||||
| 内存 | 8GB DDR3 |
|
||||
| 存储 | 256GB SSD |
|
||||
| 网络 | 有线连接 |
|
||||
|
||||
### 性能优化方向
|
||||
|
||||
| 场景 | 推荐配置 | 说明 |
|
||||
|------|----------|------|
|
||||
| **轻量服务** | 2-3并发 | Ollama / 监控脚本 |
|
||||
| **中等负载** | 1-2并发 | 可运行一个 Agent |
|
||||
| **本地模型** | qwen2.5:3b / llama3:8b | 8GB 内存可流畅运行 |
|
||||
| **向量化** | nomic-embed-text | 274MB,适合 256G SSD |
|
||||
|
||||
### 推荐应用
|
||||
|
||||
1. **监控服务** - system-monitor.sh (持续运行)
|
||||
2. **轻量 Agent** - 独立会话处理简单任务
|
||||
3. **本地 Ollama** - qwen2.5:3b (2GB) 或 llama3:8b (8GB需注意内存)
|
||||
4. **备份节点** - 会话文件同步/故障转移
|
||||
|
||||
---
|
||||
|
||||
## 2号机 (本机)
|
||||
|
||||
- **机型:** ThinkPad X230
|
||||
- **CPU:** Intel Core i7-3520M (3代, 2核心/4线程, 最高 3.6GHz)
|
||||
- **内存:** 8GB DDR3
|
||||
- **存储:** 500GB HDD (7200RPM)
|
||||
- **系统:** Linux 6.17.0-12-generic
|
||||
- **Node:** v22.22.0
|
||||
- **运行位置:** /root/.openclaw/workspace
|
||||
|
||||
### 性能特点
|
||||
|
||||
| 项目 | 表现 | 说明 |
|
||||
|------|------|------|
|
||||
| CPU | 中等 | 3代 i7 办公足够,AI 推理较慢 |
|
||||
| 内存 | 充足 | 8GB 可同时运行 Gateway + Ollama |
|
||||
| 存储 | 瓶颈 | HDD 相比 SSD 读写慢很多 |
|
||||
| 适合任务 | 办公/对话 | 不适合大规模向量计算 |
|
||||
|
||||
### 优化建议
|
||||
|
||||
- 避免大量文件 I/O 操作
|
||||
- 本地模型用轻量级 (qwen2.5:3b)
|
||||
- 监控脚本定期清理日志
|
||||
|
||||
```json
|
||||
{
|
||||
"providers": {
|
||||
"minimax": { "models": { "default": "minimax-minimax" } },
|
||||
"deepseek": { "models": { "default": "deepseek-chat" } },
|
||||
"ollama": {
|
||||
"remote": { "baseUrl": "http://localhost:11434/v1" }
|
||||
}
|
||||
},
|
||||
"memorySearch": {
|
||||
"provider": "openai",
|
||||
"model": "nomic-embed-text:latest",
|
||||
"remote": { "baseUrl": "http://localhost:11434/v1" },
|
||||
"cache": { "enabled": true, "maxEntries": 50000 }
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 代理配置
|
||||
|
||||
```bash
|
||||
# /etc/environment
|
||||
NO_PROXY="localhost,127.0.0.1,192.168.0.66"
|
||||
no_proxy="localhost,127.0.0.1,192.168.0.66"
|
||||
```
|
||||
|
||||
### 启动命令
|
||||
|
||||
```bash
|
||||
NO_PROXY="localhost,127.0.0.1,192.168.0.66" openclaw gateway restart
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 技术经验库
|
||||
|
||||
### 问题排查清单
|
||||
|
||||
#### 1. Gateway 无法连接 Ollama
|
||||
|
||||
**症状:** `fetch failed` 或连接超时
|
||||
|
||||
**排查步骤:**
|
||||
1. 检查 `NO_PROXY` 是否包含 Ollama 地址
|
||||
2. Gateway 是普通进程,需手动设置环境变量
|
||||
3. 执行: `NO_PROXY="192.168.0.66" openclaw gateway restart`
|
||||
|
||||
#### 2. Embedding 上下文超限
|
||||
|
||||
**症状:** `input length exceeds the context length`
|
||||
|
||||
**解决方案:**
|
||||
```bash
|
||||
sed -i 's/mxbai/nomic/' /root/.openclaw/openclaw.json
|
||||
```
|
||||
|
||||
**模型对比:**
|
||||
| 模型 | 大小 | 上下文 | 适用 |
|
||||
|------|------|--------|------|
|
||||
| mxbai-embed-large | 669MB | 短 (512) | 短文本 |
|
||||
| nomic-embed-text | 274MB | 长 | 长文档 |
|
||||
|
||||
#### 3. Ollama 批量上传 404
|
||||
|
||||
**症状:** `batch file upload failed: 404`
|
||||
|
||||
**处理:** 正常现象,OpenClaw 自动降级到非批量模式,无需干预
|
||||
|
||||
#### 4. 监控脚本 awk 语法错误
|
||||
|
||||
**症状:** `awk: syntax error at or near %`
|
||||
|
||||
**修复:**
|
||||
```bash
|
||||
# 错误
|
||||
mem_usage=$(awk "BEGIN {printf \"%.1f\", ($mem_used/$mem_total)*100}")
|
||||
|
||||
# 正确
|
||||
mem_usage=$(echo "scale=1; $mem_used*100/$mem_total" | bc 2>/dev/null || echo "0.0")
|
||||
```
|
||||
|
||||
#### 5. Compaction 卡死 (重点!)
|
||||
|
||||
**症状:**
|
||||
- 系统无响应,会话中断
|
||||
- Gateway 无法关闭 (`shutdown timed out`)
|
||||
- 日志显示 `compaction retry` 反复出现
|
||||
|
||||
**根因:**
|
||||
- 大会话文件 (9.6MB+) 导致 compaction 算法超时
|
||||
- 重试机制没有熔断
|
||||
- 阻塞整个 Gateway
|
||||
|
||||
**解决方案:**
|
||||
```bash
|
||||
# 1. 清理卡死的会话
|
||||
rm /root/.openclaw/agents/main/sessions/[session-id].jsonl
|
||||
|
||||
# 2. 重启 Gateway
|
||||
openclaw gateway restart
|
||||
|
||||
# 3. 预防: 调整配置 (可选)
|
||||
# agents.defaults.compaction.enabled = false
|
||||
```
|
||||
|
||||
**配置修复 (2026-02-06):**
|
||||
- 改用 localhost Ollama (绕过代理)
|
||||
- 切换到 nomic-embed-text (更长上下文)
|
||||
|
||||
---
|
||||
|
||||
## 学习习惯
|
||||
|
||||
1. ✅ 定期总结归纳 (每日/每周)
|
||||
2. ✅ 重要内容写文档 (`/root/doc/`)
|
||||
3. ✅ 跨会话通过记忆延续 (`MEMORY.md`)
|
||||
4. ✅ 技术方案成熟可靠后再记录
|
||||
|
||||
---
|
||||
|
||||
## 关键教训
|
||||
|
||||
### 历史问题 (已解决)
|
||||
|
||||
| 日期 | 问题 | 教训 |
|
||||
|------|------|------|
|
||||
| 2026-02-04 | 内存管理器缺少 embedding 模型 | 需单独配置 provider + embedding |
|
||||
| 2026-02-05 | memorySearch.paths 配置无效 | OpenClaw 不支持自定义 paths,用 symlink 替代 |
|
||||
| 2026-02-05 | Gateway 反复重启 | 不要手动添加 agents.memorySearch 配置 |
|
||||
| 2026-02-06 | Compaction 卡死导致"死机" | 大会话需要分片或禁用 compaction |
|
||||
|
||||
### 核心认识
|
||||
|
||||
1. **Gateway 是普通进程** - 不继承 systemd 环境变量,需手动设置 NO_PROXY
|
||||
2. **memorySearch 是独立 plugin** - 不走 agents.defaults 配置
|
||||
3. **Symlink 解决路径问题** - OpenClaw 不支持 paths,用 `ln -s` 替代
|
||||
4. **Compaction 不是必须的** - 可以禁用,不会影响对话功能
|
||||
|
||||
---
|
||||
|
||||
## 技术决策
|
||||
|
||||
### 优先级
|
||||
|
||||
1. **稳定 > 功能** - 宁可禁用功能,也不让系统崩溃
|
||||
2. **简单 > 复杂** - 避免复杂的批量操作,单条处理更可靠
|
||||
3. **监控 > 信任** - 关键操作要有日志和状态检查
|
||||
|
||||
### 决策记录
|
||||
|
||||
| 决策 | 选择 | 原因 |
|
||||
|------|------|------|
|
||||
| 向量模型 | nomic-embed-text | 长上下文适合文档索引 |
|
||||
| 批量写入 | 禁用 | Ollama 不稳定,单条更可靠 |
|
||||
| paths 配置 | symlink 替代 | OpenClaw 不支持自定义路径 |
|
||||
| compaction | 监控为主 | 大文件会卡死,需要手动清理 |
|
||||
|
||||
---
|
||||
|
||||
## 系统状态
|
||||
|
||||
### 最后更新时间
|
||||
|
||||
- **日期:** 2026-02-06 11:00 CST
|
||||
- **整理人:** 2号机 (自动整理)
|
||||
- **源文件:** memory/2026-02-04.md, memory/2026-02-05.md
|
||||
|
||||
### 待办
|
||||
|
||||
- [ ] 测试 compaction 禁用后的系统表现
|
||||
- [x] 建立会话文件大小监控 (超过 5MB 预警) - 2026-02-06
|
||||
- [ ] 文档化 SSH 隧道配置
|
||||
- [ ] 完善节点 (nodes) 监控体系
|
||||
|
||||
---
|
||||
|
||||
## 会话文件监控 (2026-02-06 新增)
|
||||
|
||||
### 监控配置
|
||||
|
||||
```bash
|
||||
# 阈值设置
|
||||
SESSION_WARN_SIZE=8MB # 发送警告提醒
|
||||
SESSION_NEW_SESSION_SIZE=5MB # 建议开新会话
|
||||
```
|
||||
|
||||
### 监控行为
|
||||
|
||||
| 条件 | 动作 |
|
||||
|------|------|
|
||||
| ≥8MB | Telegram 发送警告 (每增加1MB提醒一次) |
|
||||
| ≥5MB | 记录日志,建议开新会话 |
|
||||
| 完成后 | 用户手动开新会话,发送"新对话已就绪" |
|
||||
|
||||
### 脚本位置
|
||||
|
||||
- `/root/.openclaw/scripts/system-monitor.sh` - 监控主脚本
|
||||
- `/root/.openclaw/scripts/send-session-alert.sh` - Telegram 提醒脚本
|
||||
- `/var/log/openclaw-monitor/session-alerts.log` - 会话告警日志
|
||||
|
||||
### 日志示例
|
||||
|
||||
```
|
||||
[SESSION WARN] 2026-02-06 12:00:00 会话文件过大: abc123 (8.5MB) - 建议开启新会话
|
||||
```
|
||||
|
||||
### 限制说明
|
||||
|
||||
> ⚠️ **自动开新会话** 无法由监控脚本直接实现,因为会话管理是 OpenClaw Gateway 内部逻辑。脚本只能:
|
||||
> 1. 监控并发送提醒
|
||||
> 2. 记录日志供排查
|
||||
>
|
||||
> 实际开新会话需要:
|
||||
> - 用户手动重启 Gateway 或
|
||||
> - 通过 OpenClaw API 创建新会话
|
||||
|
||||
---
|
||||
|
||||
## 重要提示
|
||||
|
||||
> **关于 compaction:** 每次大对话后可能会产生 9MB+ 的会话文件,这会导致 compaction 算法超时。建议监控会话文件大小,必要时手动清理。
|
||||
|
||||
> **关于代理:** NO_PROXY 必须包含所有本地服务地址 (localhost, 127.0.0.1, 192.168.0.66)
|
||||
|
||||
> **关于配置:** 不要手动修改 agents.memorySearch,memory plugin 有独立配置
|
||||
|
||||
---
|
||||
|
||||
*记忆版本: v2.0 (2026-02-06 整理)*
|
||||
Reference in new issue
Block a user