主 README 聚焦早报 Quick Start,Bot 文档迁至 bot/README.md 并标 experimental。 Co-authored-by: Cursor <cursoragent@cursor.com>
127 lines
3.7 KiB
Markdown
127 lines
3.7 KiB
Markdown
# daily-robots
|
||
|
||
> **Daily Briefing** · **WeCom Push** · **Agent Mode**
|
||
|
||
给 AI 工程小团队推送**每日 curated 情报**:skills.sh 榜单、GitHub AI 趋势、国际/国内 RSS,生成叙事化早报并推到企业微信群。
|
||
|
||
与 TLDR AI / Ben's Bites 不同,这里专注 **Agent Skills 生态** + **可 fork 的自托管流水线**(不是又一个 email newsletter)。
|
||
|
||
**产出示例**:[docs/sample-output/wecom-agent-sample.md](docs/sample-output/wecom-agent-sample.md)(Agent 模式企微版节选)
|
||
|
||
---
|
||
|
||
## Quick Start
|
||
|
||
1. **Clone** 本仓库
|
||
2. **安装依赖**:`pip install -r requirements.txt`
|
||
3. **配置环境**:`copy .env.example .env`
|
||
4. **填写 webhook**:企微群 → 群机器人 → 添加 → 把 `key=` 写入 `.env`
|
||
```env
|
||
WECOM_WEBHOOK_KEY=your-webhook-key
|
||
```
|
||
5. **生成并推送**:`.\run-daily.ps1`
|
||
|
||
生成文件在 `output/`:
|
||
|
||
| 文件 | 说明 |
|
||
|------|------|
|
||
| `YYYY-MM-DD.wecom.md` | 企微推送版(主产物) |
|
||
| `YYYY-MM-DD.md` | 完整归档版 |
|
||
| `YYYY-MM-DD.data.json` | 结构化数据(供 LLM / 调试) |
|
||
|
||
常用变体:
|
||
|
||
```powershell
|
||
.\run-daily.ps1 -SkipPush # 只生成
|
||
python -m daily push output\2026-07-03.wecom.md # 只推送
|
||
```
|
||
|
||
**前置条件**:Python 3.10+、企业微信群机器人 webhook。无需 Bot API 凭证。
|
||
|
||
---
|
||
|
||
## Agent 模式(推荐)
|
||
|
||
默认 `classic` 是分区榜单模板;**推荐 Agent 模式**——导语 + 今日信号 + 精选新闻 + 榜单,全中文叙述。
|
||
|
||
```env
|
||
DAILY_REPORT_MODE=agent
|
||
CURSOR_API_KEY=cursor_...
|
||
CURSOR_MODEL=composer-2.5
|
||
DAILY_CURSOR_CWD=.
|
||
```
|
||
|
||
| 模式 | 环境变量 | 风格 |
|
||
|------|----------|------|
|
||
| `classic` | — | 分区榜单 + 模板 |
|
||
| `editor` | `DAILY_CURSOR_EDITOR=1` | 模板 + LLM 中文化 |
|
||
| **`agent`** | `DAILY_REPORT_MODE=agent` | **叙事化早报(推荐)** |
|
||
|
||
流水线:
|
||
|
||
```
|
||
Python 抓取 → Step1 趋势分析 (.trends.json) → Step2 写企微稿 (.wecom.md) → webhook 分条推送
|
||
```
|
||
|
||
- 规范见 `skills/daily-agent/SKILL.md`
|
||
- LLM 失败自动回退 `classic`,不影响 `run-daily.ps1`
|
||
- 无 `CURSOR_API_KEY` 时请用 `classic`,或配置 `DAILY_LLM_API_KEY`(OpenAI 兼容 API)
|
||
|
||
定时推送:Windows 任务计划程序每日执行 `run-daily.ps1`,或 cron / `schtasks`。
|
||
|
||
---
|
||
|
||
## 自定义 RSS 源
|
||
|
||
国际 RSS 列表:`daily/news/feeds.py`
|
||
国内 RSS 列表:`daily/news/feeds_cn.py`
|
||
|
||
在对应文件的 `FEEDS` 列表中增删 URL 即可。常用开关(见 `.env.example`):
|
||
|
||
```env
|
||
DAILY_AI_NEWS=1
|
||
DAILY_CN_AI_NEWS=1
|
||
DAILY_AI_NEWS_HOURS=72
|
||
DAILY_WECOM_AI_NEWS=10
|
||
DAILY_WECOM_CN_AI_NEWS=8
|
||
```
|
||
|
||
Skills 榜单默认爬 skills.sh 官网(600+ 条);可改为第三方 feed:
|
||
|
||
```env
|
||
# SKILLS_BOARD_SOURCE=feed
|
||
```
|
||
|
||
GitHub 新兴/Topic 榜需 `GITHUB_TOKEN`(见 `.env.example` 注释)。
|
||
|
||
---
|
||
|
||
## Experimental:`bot/` 企微对话机器人
|
||
|
||
同仓库内的 **API 模式智能机器人**(@ 机器人快查 skills、Cursor 任务、Playwright 截图)**不在 v1 开源支持范围内**,需独立 venv 与 `WECOM_BOT_ID` / `SECRET`。
|
||
|
||
详见 **[bot/README.md](bot/README.md)**。
|
||
|
||
---
|
||
|
||
## 项目结构
|
||
|
||
```
|
||
daily-robots/
|
||
├── run-daily.ps1 # 生成 + 推送
|
||
├── daily/ # 早报主包
|
||
├── shared/skills_data.py # skills feed 共用数据层
|
||
├── skills/daily-agent/ # Agent 工作流规范
|
||
├── output/ # 生成产物(gitignore)
|
||
└── bot/ # experimental
|
||
```
|
||
|
||
---
|
||
|
||
## 注意事项
|
||
|
||
- Webhook / API Key **勿提交 Git**,只用 `.env`
|
||
- 企微 markdown 为子集;超长报告**自动分条推送**(默认 4096 bytes/条)
|
||
- 完整配置项见 [`.env.example`](.env.example)
|
||
- 开发测试:`pip install -r requirements-dev.txt` → `pytest`
|