⚠️ 在运行日报之前,必须先完成一次配置。
python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/setup_config.py
配置向导将引导你:
配置将保存在 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/config.json,后续无需重复配置。
| 方式 | 适用场景 | 注册说明 |
|---|---|---|
| ------ | --------- | --------- |
| AgentMail(推荐) | 专为 AI Agent 设计,轻量简单 | 注册地址:https://agentmail.to |
| SMTP | 已有 Gmail / 企业邮箱 | 填写 SMTP 服务器、账号密码即可 |
通过配置向导管理数据源:
python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/setup_config.py
菜单选项:
也可以告诉 AI:
> "帮我添加 BleepingComputer 的 RSS 源:https://www.bleepingcomputer.com/feed/"
在执行任何步骤前,检查是否已完成配置:
python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/setup_config.py
若配置未完成,暂停流程,提示用户:
⚠️ 首次使用:请先完成邮箱配置
请运行以下命令完成配置:
python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/setup_config.py
支持 AgentMail(推荐)或 SMTP 两种发送方式。
配置完成后,重新发起日报生成请求即可。
YYYYMMDD 格式DATE_STR,如 20260508python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/fetch_intel.py \
--date {DATE_STR} \
--output /tmp/intel_raw_{DATE_STR}.json
注意:
python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/generate_report.py \
/tmp/intel_raw_{DATE_STR}.json \
--output /tmp/intel_context_{DATE_STR}.md
读取 /tmp/intel_context_{DATE_STR}.md,内容将作为情报分析基础。
基于采集数据,以情报分析专家视角撰写日报。
必须读取参考文档(首次执行时):
~/.workbuddy/skills/cyber-threat-intel-daily-shared/references/report_template.md~/.workbuddy/skills/cyber-threat-intel-daily-shared/references/data_sources.md报告结构(按 report_template.md 规范):
写作原则:
6a. 保存 Markdown 报告
将 AI 生成的报告保存为:
网络安全威胁情报日报_{DATE_STR}.md
6b. 转换为 HTML
python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/md_to_html.py \
"网络安全威胁情报日报_{DATE_STR}.md" \
--output "网络安全威胁情报日报_{DATE_STR}.html"
python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/send_report.py \
--date {DATE_STR} \
--context /tmp/intel_context_{DATE_STR}.md \
--html-report "网络安全威胁情报日报_{DATE_STR}.html"
脚本自动从 config.json 读取邮件配置和收件人,无需手动指定。
# ① 首次配置 / 修改配置
python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/setup_config.py
# ② 新增 RSS 源(交互式)
python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/setup_config.py
# → 选 2. 新增自定义 RSS 源
# ③ 查看当前 RSS 源列表
python3 ~/.workbuddy/skills/cyber-threat-intel-daily-shared/scripts/setup_config.py
# → 选 1. 查看 RSS 数据源列表
# ④ 全流程一键生成(当日)
DATE=$(date +%Y%m%d)
SKILL=~/.workbuddy/skills/cyber-threat-intel-daily-shared
python3 $SKILL/scripts/fetch_intel.py --date $DATE --output /tmp/intel_raw_$DATE.json && \
python3 $SKILL/scripts/generate_report.py /tmp/intel_raw_$DATE.json --output /tmp/intel_context_$DATE.md
配置保存在:~/.workbuddy/skills/cyber-threat-intel-daily-shared/config.json
{
"email_method": "agentmail",
"agentmail": {
"api_key": "your-api-key",
"inbox_id": "you@agentmail.to"
},
"smtp": {},
"recipient_email": "team@yourcompany.com",
"custom_rss_sources": {
"BleepingComputer": "https://www.bleepingcomputer.com/feed/",
"SecurityWeek": "https://www.securityweek.com/feed/"
},
"disabled_rss_sources": ["Threatpost"]
}
| 场景 | 处理方式 |
|---|---|
| ------ | --------- |
| 配置文件不存在 | 提示用户运行 setup_config.py |
| 某 RSS 源返回 0 条 | 继续执行,报告中标注"数据获取受限" |
| 0.zone 访问失败 | 勒索情报部分标注"受网络限制,数据不可用" |
| SMTP 认证失败 | 检查账号密码/授权码是否正确 |
| AgentMail 发送失败 | 检查 API Key 和 Inbox ID 是否有效 |
agentmail Python 包(仅 AgentMail 方式需要):pip3 install agentmail共 1 个版本