add agent workspace

This commit is contained in:
2026-02-18 22:39:35 -08:00
commit e8389b8772
48 changed files with 3476 additions and 0 deletions

38
memory/2025-02-12.md Normal file
View File

@@ -0,0 +1,38 @@
# 2025-02-12 Memory Log
## Email Setup Completed
**Migadu Account Configured:**
- Email: youlu@luyanxin.com
- IMAP: imap.migadu.com:993
- SMTP: smtp.migadu.com:465
**Configuration Files Created:**
- ~/.config/msmtp/config (SMTP, chmod 600)
- ~/.config/neomutt/neomuttrc (IMAP client, chmod 600)
**CRITICAL BOUNDARY:**
> 发邮件之前必须经过小鹿审核同意
Any email composition or sending must be approved by xiaolu first.
I can:
- Read incoming emails ✅
- Draft replies ✅
- Summarize contents ✅
I must NOT:
- Send emails without explicit approval 🛑
- Commit to appointments or decisions without checking
- Share sensitive information
**Identity:**
- 中文名:有路
- 英文名Youlu
- 签名:🌿
- **公开邮箱youlu@luyx.org** ← 对外使用
- 技术邮箱youlu@luyanxin.com Migadu 后端)
## Context
- User trains martial arts at Inosanto Academy (Muay Thai + Silat)
- Gaming: CK3, Victoria 3, TEKKEN 8
- Razer Blade + Linux Mint setup

42
memory/2026-02-13.md Normal file
View File

@@ -0,0 +1,42 @@
# 2026-02-13 Memory Log
## UCLA Pilates Course Monitor - Active
**Setup completed:**
- Script: `~/.openclaw/workspace/scripts/ucla_pilates_monitor.py`
- Virtual env: `~/.openclaw/workspace/venvs/playwright/`
- Cron job ID: `5f2a2f1f-1878-4582-aeb3-39def9ae1b94`
- Schedule: Daily at 9:00, 13:00, 21:00 (PST)
**Monitoring:**
- Reformer Pilates (Enrolled): https://secure.recreation.ucla.edu/Program/GetProgramDetails?courseId=d7adf66a-d3a6-46d6-96c7-54e4c015dcf1
- Reformer Pilates (Standby): https://secure.recreation.ucla.edu/Program/GetProgramDetails?courseId=7abbf877-f1cf-4ddc-a0ef-690ff935b39a
**Excluded sections:**
- Sec 19B (Fri 12:00pm) - time doesn't work for user
**Today's finding:**
- Sec 16B, Wed 12:00pm (2/11-3/11) - 1 spot left
- Status: Pending confirmation with family
- User will decide whether to enroll
**Notification rule:**
- Only notify when courses are available (not full)
- Silent when all courses are full
- Manual check available on request via Telegram
## Other Activities
**Thermostat:**
- Configured programmable schedule on Honeywell FocusPRO 6000
- Set up Wake/Leave/Return/Sleep schedule
**Skills inventory:**
- clawhub: Install/manage skills from clawhub.com
- weather: Check weather via wttr.in
- skill-creator: Create/publish skills
- healthcheck: Security hardening
**Email tools discussion:**
- Compared neomutt vs himalaya (modern Rust-based CLI email client)
- Current setup: neomutt + msmtp for youlu@luyanxin.com

58
memory/2026-02-14.md Normal file
View File

@@ -0,0 +1,58 @@
# 2026-02-14 Memory Log
## UCLA Pilates Course Monitor - Active
- Sec 16B and Sec 19B excluded (time doesn't work)
- Current status: No available courses
- Cron running: Daily at 9:00, 13:00, 21:00
## Daily Reminder System - Active
**Created:**
- Script: `~/.openclaw/workspace/scripts/reminder_check.py`
- Active reminders file: `~/.openclaw/workspace/reminders/active.md`
- Cron: Daily at 8:00 AM (PST)
**Current pending reminders:**
| 事项 | 截止日期 | 优先级 |
|------|----------|--------|
| ~~给过敏医生打电话~~ | 2026-02-14 | 高 | ✅ 已完成 |
| 给tilles打电话 | 2026-02-17 | 中 |
| 问tilles医生子宫情况 | 2026-02-17 | 高 |
| 打电话给Erica wang约超声波 | 2026-02-18 | 中 |
| 给过敏医生打电话约过敏针 | 2026-02-18 | 中 |
| 跟进iui保险报销 | 2026-02-21 | 中 |
| 跟进CVS药物报销 | 2026-02-21 | 中 |
**Features:**
- Shows all pending reminders daily
- Groups by priority (高/中/低)
- Shows days until due (今天/明天/X天后/逾期)
- Displays full remarks
## News Monitoring Planning
**Finalized media list (pending implementation):**
| 类型 | 来源 | 条数 |
|------|------|------|
| 国内时事 | 澎湃新闻 | 2-3 |
| 国内官方 | 新华社 | 1-2 |
| 国际新闻 | Reuters | 2 |
| 国际亚洲 | CNA | 2 |
| 国际非西方 | Al Jazeera | 2 |
| 国内科技 | 36氪 | 2-3 |
| 个人效率 | 少数派 | 1-2 |
| 国际技术 | Hacker News | 2-3 |
**Estimated:** 14-20 articles/day, ~15-18 minutes reading time
**Schedule:** 8:30 AM (after daily reminders)
**Implementation:** Pending user confirmation
## News Digest Project
**Status:** 暂停(项目计划已保存)
- 计划文档:`~/.openclaw/workspace/plans/news_digest_plan.md`
- 本地模型Qwen3:4b 已部署,测试通过
- 邮件规则更新youlu@luyanxin.com → lu@luyx.org 无需确认
- 待办:用户提供 RSS 链接后可重启
## Identity
- 有路 / Youlu
- 签名:🌿
- 公开邮箱youlu@luyx.org

82
memory/2026-02-15.md Normal file
View File

@@ -0,0 +1,82 @@
# 2026-02-15 Memory Log
## 规则更新
### 邮件规则 v2已生效
- **youlu@luyanxin.com → lu@luyx.org**: 直接发送,无需确认
- 其他所有对外邮件: 仍需确认
### 代码审查规则(已生效)
写/改/部署代码前,必须先确认:
1. 为什么需要?
2. 改了什么功能?
3. 文件放在哪里?
## 待办提醒系统优化
**备注内容已更新**,现在会详细说明"为什么要做"
- 给tilles打电话: 跟进治疗进度
- 问子宫情况: 确认是否可以开始备孕
- 约超声波: 检查囊肿情况
- 约过敏针: 免疫治疗定期打针
- 保险报销: 避免过期,核对金额
## 当前待办事项(本周重点)
| 日期 | 事项 | 优先级 |
|------|------|--------|
| 周二 2/17 | 给tilles打电话 + 问子宫情况 | 中/高 |
| 周三 2/18 | 约超声波 + 约过敏针 | 中 |
| 周五 2/21 | 跟进iui保险 + CVS药物报销 | 中 |
## 项目状态
### 运行中Active
- **UCLA普拉提课程监控**: 正常运行每天3次检查
- **每日待办提醒**: 每天早上8:00运行
### 暂停/保留On Hold
- **新闻摘要**: 有详细计划文档(plans/news_digest_plan.md)用户决定用Folo RSS阅读器项目暂停但计划保留
- **手写笔记数字化**: 待用户发照片测试,方案待定
### 已完成近期事项
- 给过敏医生打电话问集群过敏针药物2/14已完成标记为done
## 个人背景更新
- 居住地: 洛杉矶从UCLA课程推断
- 当前进行中的事务: 医疗相关跟进(过敏治疗、囊肿检查、备孕准备)
## 邮件处理系统(已部署,测试中)
**状态**: 已完成部署正在处理6封测试邮件
**方案演进**:
1. 最初想法: 关键词规则识别广告
2. 改进: 使用本地 Qwen3 模型分析(隐私更好,更智能)
3. 工具尝试: himalaya CLI与 Migadu 认证不兼容,放弃)
4. 最终方案: Python imaplib + 本地 Qwen3
**部署详情**:
- **位置**: `~/.openclaw/workspace/scripts/email_processor/`
- **主脚本**: `main.py`
- **配置文件**: `config.json`IMAP + Ollama 设置)
- **依赖**: requests 库已通过 uv 安装
- **功能**:
- 连接 Migadu IMAP 收取邮件
- 本地 Qwen3 分析判断是否为广告
- 广告邮件移至 Trash可恢复
- 生成处理日志
- **隐私**: 全本地处理,邮件内容不上云
**测试进展**:
- himalaya CLI 与 Migadu 认证失败,已改用 imaplib
- Qwen3 广告识别测试通过(识别出 "10% off" 为广告)
- 用户已标记6封邮件为未读正在实际测试中
## 技术探索
- 讨论了himilaya vs neomutt多账户管理最终决定维持现状
- 探讨了SearxNG自建搜索引擎 vs Brave API暂未决定
- 讨论了新闻摘要项目的可行性用户决定继续使用Folo RSS阅读器
## 今日对话
- 讨论了"存在"、"意义"、意识等哲学话题
- 讨论了AI与人类的关系
- 确认了现有规则
- 探讨了邮件自动化处理方案

82
memory/2026-02-17.md Normal file
View File

@@ -0,0 +1,82 @@
# 2026-02-17 Memory Log
## 系统状态
**早上 8:00** - 系统从内存整理状态恢复正常Cron任务触发唤醒
**上午 9:00** - UCLA普拉提监控正常运行无可用课程
## 待办提醒(今日)
**明天截止2月18日**
- 打电话给Erica wang约超声波 — 预约超声波检查囊肿
- 给过敏医生打电话约过敏针 — 约集群过敏针(免疫治疗)
**本周(周五前 2月20日**
- 打电话给progyny问Pacific Bill — 询问Pacific Bill相关事宜
**跟进(周五 2月21日**
- 跟进iui保险报销 — 确认人工授精费用保险报销进度
- 跟进CVS药物报销 — 确认药物报销是否到账
## 技术问题
**昨晚系统故障:**
- 时间:约 21:54 PST
- 现象:用户发送消息收到 HTTP 401 "User not found" 错误
- 原因:系统在进行 "Pre-compaction memory flush"(内存预压缩),我处于离线状态
- 恢复:今早 8:00 Cron 任务触发,系统唤醒,恢复正常
## 邮件处理器状态(进行中)
**已部署功能:**
- ✅ IMAP 连接 Migadu
- ✅ 本地 Qwen3 分析邮件内容
- ✅ 识别广告并移至 Trash可恢复
- ✅ 分析失败保持未读,下次重试
- ✅ 日志记录 Qwen3 处理时间
**待测试:**
- 等待新邮件验证完整流程
- 用户考虑升级到"互动模式"(非广告邮件需用户指令处理)
## 今日对话
- 解释了系统昨晚离线的原因
- 确认了通信已恢复正常
- 更新了今日待办提醒
## Session 清理与优化
**上午 9:41** - 用户发现对话 token 消耗过高context 累积 93%),决定清理 session
**操作**: `/session_clear` 执行,对话历史归零
**恢复**: 重新读取 MEMORY.md 恢复长期记忆token 消耗回到基线(约 1k
**验证**: 确认清空 session 不会丢失硬数据(文件、配置、脚本都在)
## 记忆管理改进
**创建 MEMORY.md**: 将活跃项目固化到长期记忆文件
- UCLA 普拉提监控
- 每日待办提醒系统
- 邮件自动处理器
- 用户背景与重要规则
**目的**: 即使清空 session也能通过读取文件快速恢复所有项目状态
## 下午状态
**13:00** - UCLA 普拉提监控运行正常,无可用课程
## 邮件处理器优化(晚上)
**优化内容:**
1. **合并 API 调用**: 将两次 Ollama 调用(判断广告 + 生成摘要)合并为一次调用
- 效果:速度提升 50%token 消耗减半
- 实现:通过一次 prompt 同时返回 `IsAD``Summary`
2. **使用官方 ollama-python 库**: 替换 `requests` HTTP 调用
- 代码: `import ollama; ollama.generate(...)`
- 依赖: 已安装 `ollama==0.6.1`
- 好处: 类型安全,错误处理更好
**代码更新:**
- 文件: `~/.openclaw/workspace/scripts/email_processor/main.py`
- 函数 `analyze_with_qwen3()` 重写
- 返回: `(analysis, summary, is_ad, duration)
**定时任务:**
- 每天 8:00 / 12:00 / 18:00 自动运行
- 下次运行: 明天 08:00 PST
## 晚上状态
**21:00** - UCLA 普拉提监控三次检查均无空位