🚀 快速安装
复制以下命令并运行,立即安装此 Skill:
npx skills add https://skills.sh/sundial-org/awesome-openclaw-skills/topic-monitor
💡 提示:需要 Node.js 和 NPM
话题监控器
监控重要信息。一旦发生,即刻获知。
话题监控器通过持续监控您关心的话题,并在真正重要时智能提醒,将您的助手从被动响应转变为主动告知。
核心能力
- 话题配置 – 使用自定义参数定义您关注的主题
- 定时监控 – 按可配置的时间间隔自动搜索
- AI 重要性评分 – 智能过滤:即时提醒 vs 周报汇总 vs 忽略
- 上下文摘要 – 不只是链接——提供包含上下文的有意义的摘要
- 每周汇总 – 将低优先级的发现编译成可读报告
- 记忆集成 – 参考您过去的对话和兴趣点
首次运行
首次使用话题监控器时,请运行交互式设置向导:
python3 scripts/setup.py
该向导将引导您完成:
- 话题 – 您想要监控什么主题?
- 搜索查询 – 如何为每个话题进行搜索
- 关键词 – 哪些术语表示相关性
- 频率 – 多久检查一次(每小时/每天/每周)
- 重要性阈值 – 何时发送提醒(低/中/高)
- 每周汇总 – 将非紧急发现编译成摘要
向导会创建包含您偏好的 config.json 文件。您可以稍后随时编辑它,或使用 manage_topics.py 添加/移除话题。
示例会话:
🔍 话题监控器 - 设置向导
您想监控哪些话题?
> AI 模型发布
> 安全漏洞
>
--- 话题 1/2: AI 模型发布 ---
'AI 模型发布' 的搜索查询 [AI 模型发布 新闻 更新]: 新 AI 模型 发布 公告
'AI 模型发布' 中要关注的关键词?
> GPT, Claude, Llama, 发布
--- 话题 2/2: 安全漏洞 ---
'安全漏洞' 的搜索查询 [安全漏洞 新闻 更新]: CVE 关键 漏洞 补丁
'安全漏洞' 中要关注的关键词?
> CVE, 漏洞, 关键, 补丁
我应该多久检查一次更新?
1. 每小时
2. 每天 *
3. 每周
✅ 设置完成!
快速开始
如果您已经了解流程,以下是手动操作方法:
# 从模板初始化配置
cp config.example.json config.json
# 添加一个话题
python3 scripts/manage_topics.py add "产品更新" \
--keywords "发布,更新,补丁" \
--frequency daily \
--importance medium
# 测试监控(试运行)
python3 scripts/monitor.py --dry-run
# 设置 cron 以实现自动监控
python3 scripts/setup_cron.py
话题配置
每个话题包含:
- name – 显示名称(例如:”AI 模型发布”)
- query – 搜索查询(例如:”新 AI 模型 发布 公告”)
- keywords – 相关性过滤器([“GPT”, “Claude”, “Llama”, “发布”])
- frequency –
hourly(每小时)、daily(每天)、weekly(每周) - importance_threshold –
high(立即提醒)、medium(重要则提醒)、low(仅汇总) - channels – 发送提醒的渠道([“telegram”, “discord”])
- context – 您关心的原因(用于 AI 上下文摘要)
示例 config.json
{
"topics": [
{
"id": "ai-models",
"name": "AI 模型发布",
"query": "新 AI 模型 发布 GPT Claude Llama",
"keywords": ["GPT", "Claude", "Llama", "发布", "公告"],
"frequency": "daily",
"importance_threshold": "high",
"channels": ["telegram"],
"context": "为工作跟进 AI 发展",
"alert_on": ["model_release", "major_update"]
},
{
"id": "tech-news",
"name": "科技行业新闻",
"query": "科技 初创公司 融资 收购",
"keywords": ["初创公司", "融资", "A轮", "收购"],
"frequency": "daily",
"importance_threshold": "medium",
"channels": ["telegram"],
"context": "关注科技趋势",
"alert_on": ["major_funding", "acquisition"]
},
{
"id": "security-alerts",
"name": "安全漏洞",
"query": "CVE 关键 漏洞 安全 补丁",
"keywords": ["CVE", "漏洞", "安全", "补丁", "关键"],
"frequency": "hourly",
"importance_threshold": "high",
"channels": ["telegram", "email"],
"context": "DevOps 安全监控",
"alert_on": ["critical_cve", "zero_day"]
}
],
"settings": {
"digest_day": "sunday",
"digest_time": "18:00",
"max_alerts_per_day": 5,
"deduplication_window_hours": 72,
"learning_enabled": true
}
}
脚本
manage_topics.py
管理研究话题:
# 添加话题
python3 scripts/manage_topics.py add "话题名称" \
--query "搜索查询" \
--keywords "词1,词2" \
--frequency daily \
--importance medium \
--channels telegram
# 列出话题
python3 scripts/manage_topics.py list
# 编辑话题
python3 scripts/manage_topics.py edit eth-price --frequency hourly
# 移除话题
python3 scripts/manage_topics.py remove eth-price
# 测试话题(预览结果而不保存)
python3 scripts/manage_topics.py test eth-price
monitor.py
主要监控脚本(通过 cron 运行):
# 正常运行(提醒 + 保存状态)
python3 scripts/monitor.py
# 试运行(无提醒,显示将发生什么)
python3 scripts/monitor.py --dry-run
# 强制检查特定话题
python3 scripts/monitor.py --topic eth-price
# 详细日志
python3 scripts/monitor.py --verbose
工作原理:
- 读取需要检查的话题(基于频率)
- 使用 web-search-plus 或内置的 web_search 进行搜索
- 使用 AI 重要性评分器对每个结果评分
- 高重要性 → 即时提醒
- 中重要性 → 保存到周报
- 低重要性 → 忽略
- 更新状态以防止重复提醒
digest.py
生成每周汇总:
# 生成当前周的汇总
python3 scripts/digest.py
# 生成并发送
python3 scripts/digest.py --send
# 预览而不发送
python3 scripts/digest.py --preview
输出格式:
# 每周研究摘要 - [日期范围]
## 🔥 重点发现
- **AI 模型**:Claude 4.5 发布,推理能力提升
- **安全**:流行框架中发现关键 CVE 已修复
## 📊 按话题分类
### AI 模型发布
- [本周 3 条发现]
### 安全漏洞
- [本周 1 条发现]
## 💡 建议
根据您的兴趣,您可能想要监控:
- "Kubernetes 安全"(本周提及 3 次)
setup_cron.py
配置自动监控:
# 交互式设置
python3 scripts/setup_cron.py
# 使用默认值自动设置
python3 scripts/setup_cron.py --auto
# 移除 cron 任务
python3 scripts/setup_cron.py --remove
创建 cron 条目:
# 话题监控器 - 每小时话题
0 * * * * cd /path/to/skills/topic-monitor && python3 scripts/monitor.py --frequency hourly
# 话题监控器 - 每天话题
0 9 * * * cd /path/to/skills/topic-monitor && python3 scripts/monitor.py --frequency daily
# 话题监控器 - 每周汇总
0 18 * * 0 cd /path/to/skills/topic-monitor && python3 scripts/digest.py --send
AI 重要性评分
评分器使用多种信号来决定提醒优先级:
评分信号
高优先级(即时提醒):
- 重大突发新闻(通过新鲜度 + 关键词密度检测)
- 价格变动 >10%(针对金融话题)
- 与您的确切关键词匹配的产品发布
- 您使用的工具中的安全漏洞
- 对您提出过的具体问题的直接回答
中优先级(值得汇总):
- 相关但不紧急的新闻
- 跟踪产品的次要更新
- 您关注话题的有趣进展
- 教程/指南发布
- 高参与度的社区讨论
低优先级(忽略):
- 重复新闻(已提醒过)
- 间接相关的内容
- 低质量来源
- 过时信息
- 垃圾/促销内容
学习模式
当启用时(learning_enabled: true),系统会:
- 跟踪您与哪些提醒进行互动
- 根据您的行为调整评分权重
- 建议话题改进
- 自动调整重要性阈值
学习数据存储在 .learning_data.json 中(隐私安全,绝不共享)。
记忆集成
话题监控器连接到您的对话历史:
示例提醒:
🔔 Dirac Live 更新
3.8 版本发布,包含您上周询问的房间校正改进。
上下文: 您提到在您的工作室中低音响应存在问题。本次更新包括新的低频优化。
[链接] | [完整详情]
工作原理:
- 读取 references/memory_hints.md(创建此文件)
- 扫描最近的对话日志(如果可用)
- 将发现与过去的上下文匹配
- 生成个性化摘要
memory_hints.md(可选)
帮助 AI 建立关联:
# 话题监控器的记忆提示
## AI 模型
- 使用 Claude 辅助编码
- 对推理改进感兴趣
- 比较不同模型以适应不同用例
## 安全
- 运行生产级 Kubernetes 集群
- 需要快速修补关键 CVE
- 对零日披露感兴趣
## 科技新闻
- 关注初创公司生态系统
- 对开发者工具领域感兴趣
- 追踪潜在收购目标
提醒渠道
Telegram
需要 OpenClaw 消息工具:
{
"channels": ["telegram"],
"telegram_config": {
"chat_id": "@your_username",
"silent": false,
"effects": {
"high_importance": "🔥",
"medium_importance": "📌"
}
}
}
Discord
基于 Webhook:
{
"channels": ["discord"],
"discord_config": {
"webhook_url": "https://discord.com/api/webhooks/...",
"username": "研究机器人",
"avatar_url": "https://..."
}
}
邮件
SMTP 或 API:
{
"channels": ["email"],
"email_config": {
"to": "you@example.com",
"from": "research@yourdomain.com",
"smtp_server": "smtp.gmail.com",
"smtp_port": 587
}
}
高级功能
提醒条件
微调提醒时机:
{
"alert_on": [
"price_change_10pct",
"keyword_exact_match",
"source_tier_1",
"high_engagement"
],
"ignore_sources": [
"spam-site.com",
"clickbait-news.io"
],
"boost_sources": [
"github.com",
"arxiv.org",
"official-site.com"
]
}
正则表达式模式
匹配特定模式:
{
"patterns": [
"版本 \\d+\\.\\d+\\.\\d+",
"\\$\\d{1,3}(,\\d{3})*",
"CVE-\\d{4}-\\d+"
]
}
速率限制
防止提醒疲劳:
{
"settings": {
"max_alerts_per_day": 5,
"max_alerts_per_topic_per_day": 2,
"quiet_hours": {
"start": "22:00",
"end": "08:00"
}
}
}
状态管理
.research_state.json
跟踪:
- 每个话题的最后检查时间
- 已提醒的 URL(去重)
- 重要性评分历史
- 学习数据(如果启用)
示例:
{
"topics": {
"eth-price": {
"last_check": "2026-01-28T22:00:00Z",
"last_alert": "2026-01-28T15:30:00Z",
"alerted_urls": [
"https://example.com/eth-news-1"
],
"findings_count": 3,
"alerts_today": 1
}
},
"deduplication": {
"url_hash_map": {
"abc123": "2026-01-28T15:30:00Z"
}
}
}
.findings/ 目录
存储值得汇总的发现:
.findings/
├── 2026-01-22_eth-price.json
├── 2026-01-24_fm26-patches.json
└── 2026-01-27_ai-breakthroughs.json
最佳实践
- 保守开始 – 初始设置
importance_threshold: medium,根据提醒质量调整 - 使用上下文字段 – 帮助 AI 生成更好的摘要
- 优化关键词 – 添加否定关键词以过滤噪音:
"keywords": ["AI", "-clickbait", "-spam"] - 启用学习 – 根据您的行为随时间改进
- 每周查看汇总 – 不要忽略汇总——它能发现模式
- 结合个人分析技能 – 根据您的聊天模式获取话题推荐
与其他技能集成
web-search-plus
自动使用智能路由:
- 产品/价格话题 → Serper
- 研究话题 → Tavily
- 公司/初创公司发现 → Exa
personal-analytics
根据对话模式建议话题:
“您本月问了 12 次 Rust。需要我监控 ‘Rust 语言更新’ 吗?”
隐私与安全
- 所有数据本地化 – 除搜索 API 外无外部服务
- 状态文件已加入 gitignore – 可在版本控制工作空间中安全使用
- 记忆提示可选 – 您控制共享的上下文
- 学习数据保留本地 – 绝不发送到 API
故障排除
未收到提醒:
- 检查 cron 是否在运行:
crontab -l - 验证渠道配置(Telegram 聊天 ID、Discord webhook)
- 使用
--dry-run --verbose运行查看评分
提醒太多:
- 提高
importance_threshold - 添加速率限制
- 优化关键词(添加否定过滤器)
- 启用学习模式
错过重要新闻:
- 降低
importance_threshold - 增加检查频率
- 扩大关键词范围
- 检查
.research_state.json的去重问题
汇总未生成:
- 验证
.findings/目录存在且有内容 - 检查汇总的 cron 调度
- 手动运行:
python3 scripts/digest.py --preview
示例工作流
跟踪产品发布
python3 scripts/manage_topics.py add "iPhone 17 发布" \
--query "iPhone 17 公告 发布 日期" \
--keywords "iPhone 17,Apple 活动,9月" \
--frequency daily \
--importance high \
--channels telegram \
--context "计划从 iPhone 13 升级"
监控竞争对手
python3 scripts/manage_topics.py add "竞争对手分析" \
--query "CompetitorCo 产品 发布 融资" \
--keywords "CompetitorCo,产品,发布,系列,融资" \
--frequency weekly \
--importance medium \
--channels discord,email
研究主题
python3 scripts/manage_topics.py add "量子计算论文" \
--query "量子计算 arxiv" \
--keywords "量子,量子比特,arxiv" \
--frequency weekly \
--importance low \
--channels email
致谢
为 ClawHub 构建。使用 web-search-plus 技能实现智能搜索路由。
📄 原始文档
完整文档(英文):
https://skills.sh/sundial-org/awesome-openclaw-skills/topic-monitor
💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。

评论(0)