Overview
An AI daily news run collects sources, summarizes stories, and delivers them to your team via Feishu. The pipeline has four stages: collect, summarize, format, and deliver.
Step 1: Install Required Skills
Install the skills needed for research, audio, and image generation:
openclaw skills install @clawhub/tavily
openclaw skills install @clawhub/listen-hub
openclaw skills install @clawhub/nano-banana-pro
- Tavily: Web search for news sources and trending topics
- ListenHub: Text-to-speech for audio briefings
- Nano Banana Pro: Image generation for daily cover images
Verify installation:
openclaw skills list
Step 2: Define News Sources
Create a config file that defines your news sources and topics:
# news-sources.yaml
sources:
- name: tech
feeds:
- https://news.ycombinator.com/rss
- https://feeds.arstechnica.com/arstechnica/index
- name: ai
feeds:
- https://openai.com/blog/rss.xml
- https://www.anthropic.com/news/rss
Adjust URLs to match your domain (AI, finance, legal, etc.). Keep the list small at first (3–5 sources) to avoid overload.
Step 3: Configure Output Format
The daily run can produce multiple outputs:
| Output | Format | Skill / Method |
|---|---|---|
| Summary doc | Feishu Doc | OpenClaw Feishu app + doc API |
| Data table | Feishu Sheet | Sheet API with rows per story |
| Audio briefing | MP3 | ListenHub TTS |
| Cover image | PNG | Nano Banana Pro |
Define a prompt template that produces structured output:
Today's AI News Digest for {date}
---
Top 5 stories:
1. [Title] - [2-sentence summary] - [Source URL]
2. ...
---
Audio script (2 min): [Condensed version for TTS]
---
Cover image prompt: "Modern abstract illustration of AI and news, professional, minimal"
Step 4: Set Up Feishu Bot Delivery
- Create a Feishu group for the daily digest
- Add the OpenClaw Feishu bot to the group
- Grant the bot permission to create docs and sheets in a shared drive
- Configure the run to post the doc link and optionally the audio file to the group
Use the Feishu channel config:
channels:
feishu:
app_id: <your-app-id>
app_secret: <your-secret>
default_group_id: <digest-group-id>
output_drive: <drive-id-for-docs>
Step 5: Schedule with Cron
Run the pipeline daily at 7:00 AM (adjust timezone as needed):
# Crontab entry (Linux/macOS)
0 7 * * * /usr/local/bin/openclaw run --config /path/to/daily-news.yaml --prompt "Generate daily news digest"
Or use a systemd timer, GitHub Actions (on: schedule: cron: '0 7 * * *'), or your cloud scheduler. Ensure OPENCLAW_API_KEY and other env vars are available to the cron environment.
Step 6: Test the Pipeline
Before relying on cron, run manually:
openclaw run --config daily-news.yaml --prompt "Generate today's AI news digest (test run)"
Check that:
- Tavily returns results
- Summaries are written to a Feishu doc
- The sheet is populated
- Audio is generated (if enabled)
- The cover image is created
Common Issues
- Empty results: Verify Tavily API key and source URLs
- Feishu permission denied: Ensure the bot has
doc:doc,doc:sheet, andim:messagescopes - Cron fails silently: Log output to a file:
0 7 * * * openclaw run ... >> /var/log/openclaw-news.log 2>&1 - Too many tokens: Limit to 5–10 stories per digest to stay within limits
For more skill ideas, see Best Skills for Beginners.