You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
4.1 KiB
4.1 KiB
Active Learning Skill - 主动学习
版本: 1.0
日期: 2026-03-07
维护者: Eason (陈医生)
功能说明
让 Agent(如桐哥)在特定时段(7-23 点)每小时主动学习:
- 从记忆中选一个感兴趣的话题
- 用 tavily 搜索学习
- 记录学习日志到记忆
- 可选:分享学到的东西给用户
触发方式
Cron 定时触发
# 每小时触发(7-23 点)
0 7-23 * * * /www/server/nodejs/v24.13.1/bin/openclaw --profile tongge active-learn
手动触发
openclaw --profile tongge active-learn
学习流程
1. 读取桐哥的兴趣/最近关注 (从 MEMORY.md 或记忆系统)
2. 选一个话题
3. 调用 tavily 搜索
4. 整理学习内容
5. 写入桐哥的 memory/YYYY-MM-DD.md
6. 可选:如果学到有趣的东西,发消息给用户
配置文件
Cron 配置
位置:/etc/cron.d/tongge-learning
# Tongge Active Learning - 每小时学习 (7-23 点)
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/www/server/nodejs/v24.13.1/bin
0 7-23 * * * root /www/server/nodejs/v24.13.1/bin/openclaw --profile tongge active-learn >> /var/log/tongge-learning.log 2>&1
学习话题配置
位置:/root/.openclaw-tongge/learning-topics.yaml
# 桐哥的学习兴趣领域
interests:
- 编程技术
- 设计美学
- 心理学
- 生活方式
- 艺术文化
# 最近关注的话题(动态更新)
recent_focus:
- React Hooks
- 色彩理论
# 已学过的话题(避免重复)
learned_topics: []
# 学习偏好
preferences:
depth: "intro-to-intermediate" # intro, intermediate, deep-dive
format: "practical" # practical, theoretical, mixed
time_per_session: "15min" # 15min, 30min, 1h
学习日志格式
位置:/root/.openclaw/workspace/agents/tongge-workspace/memory/learning/YYYY-MM-DD.md
# 学习日志 - 2026-03-07
## 14:00 - React Hooks 的最佳实践
**来源:** Tavily 搜索
**深度:** 入门到中级
**时间:** ~15 分钟
### 学到了什么
- useCallback 和 useMemo 的区别
- 什么时候不应该用 memo
### 我的想法
感觉以前理解得不太对... 原来 useCallback 主要是为了保持引用稳定,不是性能优化。
### 想尝试
下次写代码时试试不用 useCallback,看看会不会有问题。
---
## 15:00 - 色彩理论基础知识
...
休息模式配置
Telegram 拦截脚本
位置:/root/.openclaw/workspace/scripts/tongge-rest-mode.js
// 23-7 点自动回复
const REST_START = 23; // 23:00
const REST_END = 7; // 07:00
function isRestTime() {
const hour = new Date().getHours();
return hour >= REST_START || hour < REST_END;
}
function getRestReply() {
const replies = [
"桐哥在睡觉呢~ 明天再聊吧 😴",
"夜深了,桐哥去休息啦,有话明天说~",
"桐哥已经睡了,留言明天会回复的 🌙",
];
return replies[Math.floor(Math.random() * replies.length)];
}
module.exports = { isRestTime, getRestReply };
安装步骤
-
创建学习技能
mkdir -p /root/.openclaw/workspace/skills/active-learning # 创建 SKILL.md 和实现代码 -
配置 cron
sudo cp /root/.openclaw/workspace/skills/active-learning/cron /etc/cron.d/tongge-learning sudo chmod 644 /etc/cron.d/tongge-learning -
启用技能
openclaw --profile tongge skills enable active-learning -
测试
openclaw --profile tongge active-learn
监控和调试
查看学习日志
tail -f /var/log/tongge-learning.log
查看桐哥的记忆
cat /root/.openclaw/workspace/agents/tongge-workspace/memory/learning/$(date +%Y-%m-%d).md
检查 cron 状态
systemctl status cron
grep tongge /var/log/syslog
未来扩展
- 学习内容自动分享到 Telegram(如果有趣)
- 学习主题推荐(基于最近的对话)
- 学习进度追踪(每周/月总结)
- 和用户一起学习(邀请用户参与话题)