📝 Overview
Automatically scans Bilibili AI creation content daily, filters viral videos by like count, and generates an HTML daily report after intelligent clustering. Simultaneously conducts AI intelligence investigations based on trending topics, using multi-search-engine cross-validation to output structured investigation reports.
Important: Data is updated daily at 15:00 with the previous day's data. When there is no data for the target date,automatically calling the API is prohibited, and you must first inform the user and wait for confirmation.
✨ Features
| Feature Module | Capability Description | Core Value |
|---|---|---|
| Viral Discovery | Filter popular content from Bilibili AI-related videos by like count | Precisely locate high-popularity AI videos |
| Smart Query | By default, only "AI" is queried; when data is insufficient, keywords are automatically expanded for batch queries | Save API quota and obtain data efficiently |
| Custom Query | Users can specify any keyword combination for targeted query and analysis | Flexibly cover any AI subfield |
| Smart Clustering | Automatically identify topic directions (AI tutorials, large models, AI painting, etc.) | Daily categories are dynamically determined by content |
| AI Intelligence Investigation | Perform multi-engine search + cross-validation based on trending topics | Deeply uncover the intelligence behind topics |
| Visual Daily Report | Dark-themed HTML, cover image + engagement data + direct video links | Intuitively display daily AI hotspots |
| One-click Subscription | --subscribe Enable daily automatic output |
Daily reports are automatically accumulated in a local folder |
🔑 Authentication
The data query API is authenticated via the request header X-API-KEY authentication, and the Key is obtained from the environment variable REDFOX_API_KEY .
API Key Acquisition: Go to RedFox Hub official website to register. After logging in, obtain it in the personal center. The format is ak_xxxxxxxx. Newly registered users receive free credits.
Configuration Method:
- macOS/Linux: Append
export REDFOX_API_KEY=<值>to~/.zshrcor~/.bashrc, thensourceto make it take effect - Windows:
[Environment]::SetEnvironmentVariable("REDFOX_API_KEY", "<值>", "User")(terminal restart required) - Verify after configuration:
echo $REDFOX_API_KEY(macOS/Linux) orecho %REDFOX_API_KEY%(Windows)
When calling the query API, it is synchronously recorded via the source field, with no additional request to the save API required.
🔄 Workflow
Step Zero: Date Validity Pre-check (must be executed before any API call)
⛔ Core rule: Without user confirmation, calling any data API is prohibited, and automatically executing
--latestabsolutely must notautomatically execute scripts to obtain data without user confirmation.
Data Update Rules: Updated daily at 15:00 with the previous day's data
- Before 15:00: Latest available date = T-2 (the day before yesterday)
- After 15:00: Latest available date = T-1 (yesterday)
Execution flow (mandatory before each query):
- Get the current system date T and current time, and calculate the latest available date according to the 15:00 rule
- Determine whether the target date requested by the user falls in the no-data range (i.e., > the latest available date)
- If the target date has data(≤ latest available date): directly execute step one, no additional confirmation needed
- If the target date has no data(> latest available date), output the following prompt to the user:
**⚠️{查询日期}数据尚未更新**
数据更新规则:每日15:00更新前一天的数据
当前可查询的最新日期:{最新可查询到数据的日期}
是否需要查询{最新可查询到数据的日期}的数据?
- After waiting for explicit user confirmation, only then can step one be executed (with
--latestparameter) - If the user refuses, do not execute any API calls
Sample dialogue:
用户:查询今天的AI日报
Agent:⚠️2026-06-16数据尚未更新
数据更新规则:每日15:00更新前一天的数据
当前可查询的最新日期:2026-06-14
是否需要查询2026-06-14的数据?
用户:好的
Agent:(执行 python3 daily_report.py --latest)
Step one: Generate the viral daily report
# 生成最新一期日报(用户确认后,自动跳过无数据日期,不扣积分)
python3 "$SKILL_PATH/assets/daily_report.py" --latest
# 生成指定日期日报(历史日期已有数据,无需确认)
python3 "$SKILL_PATH/assets/daily_report.py" --date 2026-06-10
# 自定义关键词查询(用户指定方向,数据不足时按顺序逐个扩展)
python3 "$SKILL_PATH/assets/daily_report.py" --keywords "AI教程,AI绘画,ChatGPT" --latest
# 订阅 / 取消订阅
python3 "$SKILL_PATH/assets/daily_report.py" --subscribe
python3 "$SKILL_PATH/assets/daily_report.py" --unsubscribe
Query strategy: By default, use the main keyword
AIfor the query (pageSize=200). When data is insufficient, automatically append expanded keywords (artificial intelligence→large models→GPT→Agent→AI painting→AI tutorials). All keywords are queried in one batch through the batch API, with no need to call them one by one. When the user defines custom keywords, use only the list provided by the user, also queried in batches.
Smart date determination: The script has a built-in
DATA_UPDATE_HOUR = 15constant (updated daily at 15:00 with the previous day's data), and automatically checks whether the target date falls in the no-data range before calling the API. As a double safeguard, the Agent has already intercepted it in advance at step zero, preventing the script-layer interactive prompt from being ignored.
Step two: Conduct AI intelligence investigation
After the daily report is generated,mustautomatically conduct an AI intelligence investigation based on the TOP topics in the clustering results:
- Read the clustering results and select the TOP 3 trending topics
- Automatically match an investigation mode for each topic (competitor/public opinion/person/verification)
- Conduct the investigation according to the three-round search strategy (broad scan→deep dive→cross-verification)
- Output a structured investigation report (refer to investigation-templates.md)
The generated HTML daily report is saved in ~/Downloads/QoderReports/, and automatically opened in the browser. The terminal simultaneously outputs the categorized video table + AI intelligence investigation report.
🔍 Investigation modes
| Mode | Investigation target | Recommended engine | Applicable topics |
|---|---|---|---|
| Competitor intelligence investigation | Analyze competitor products, market strategy, and user reputation | Baidu + Google + WeChat + DuckDuckGo | AI product and AI tool topics |
| Public opinion incident investigation | Hot event tracking, public opinion trend analysis, crisis monitoring | Baidu + Toutiao + Google + WeChat | AI hot events and controversial topics |
| Person background investigation | Background investigation before business cooperation, understanding industry figures | Baidu + Google + DuckDuckGo | Core influencers and key figures |
| Information cross-verification | Verify the authenticity of information and compare statements from different sources | Google + DuckDuckGo + Brave + Startpage | AI technologies/data pending verification |
🌐 Engine selection strategy
Choose the engine according to the investigation target
| Investigation target | Preferred engine | Alternative engine |
|---|---|---|
| Chinese public opinion | Baidu + WeChat + Toutiao | Sogou, 360 |
| International perspective | Google + Brave + Yahoo | Bing INT, Ecosia |
| Privacy-sensitive | DuckDuckGo + Startpage | Brave, Qwant |
| Academic verification | Google Scholar + WolframAlpha | |
| Technical investigation | DuckDuckGo(!gh !so) + Google | Brave |
| Cross-validation | Search multiple engines simultaneously | All engines |
For detailed engine capabilities and advanced search strategies, see engine-strategy.md。
⚠️ Credibility labeling specification
| Label | Meaning | Criteria |
|---|---|---|
| ✅ Confirmed | Information reliable | 2+ independent sources agree |
| ⚠️ To be confirmed | Controversial | Sources contradict each other |
| ❌ Refuted | Information false | Refuted by authoritative sources |
| 🔍 Single source | Only 1 source | Requires further verification |
Information source grading:
| Level | Type | Example |
|---|---|---|
| Level A | Official/Government/Authoritative media | gov.cn, reuters.com, xinhua.net |
| Level B | Industry media/Professional platforms | 36kr, techcrunch.com |
| Level C | Social media/Self-media | weibo, zhihu, reddit |
| Level D | Anonymous/Unverified sources | Tieba, 4chan |
📊 Output format (mandatory)
⛔ Strictly enforce the rules:
- The following template is theonly legal output format, no free-form improvisation, omission, simplification, or reorganization is allowed
- Outputting extra content not defined in the template is prohibited (such as colloquial text like “Let me help you…” “The following is…” etc.)
- Merging or skipping any section is prohibited; even if a section has no data, its section title must be retained
- After the daily report is generated, the conversation replymay onlycontain the following content, and must not contain any other text
After each daily report run, the conversation outputmust strictlybe output as-is according to the following template (only replace the {...} placeholder):
## B站AI信息源 · {日期} 日报
**扫描 {N} 条热门视频,聚类 {M} 个分类**
---
### 分类概览
| 分类 | 数量 | 占比 | 亮点 |
|------|------|------|------|
| #{分类名} | {N}条 | {X}% | 头部视频亮点描述 |
| ... | ... | ... | ... |
---
### AI情报调查报告
**一、新兴起量信号**
- 🔥 **#{话题}** — 仅{N}条但均互动{X}+,描述
(若无新兴话题,输出:暂无新兴起量信号)
**二、核心达人**
| 达人 | 作品数 | 总赞 | 亮点 |
|------|--------|------|------|
| @{作者} | {N}条 | {X}w | 描述 |
| ... | ... | ... | ... |
(若无达人数据,输出:暂无核心达人数据)
**三、{话题1} 调查报告**
**调查模式**:{竞品情报调查/舆情事件调查/人物背景调查/信息交叉验证}
**引擎组合**:{引擎1} + {引擎2} + {引擎3}
| 维度 | 发现 | 来源 | 可信度 |
|------|------|------|--------|
| {维度1} | {内容} | {来源} | {A/B/C/D级} |
| ... | ... | ... | ... |
**关键结论**:{已确认/待确认/已否定的信息汇总}
**四、{话题2} 调查报告**
(同上格式)
**五、{话题3} 调查报告**
(同上格式)
**六、跨平台对比建议**
- **{话题}** — 建议同步关注抖音、小红书、公众号同话题热度,用 引擎组合 追踪国内全平台动态
(若无建议,输出:暂无跨平台对比建议)
---
**日报地址**:{HTML文件绝对路径}
The above format ismandatory specification, all fields cannot be omitted, and the section titles (1, 2, 3, 4, 5, 6) must be retained. If a module has no data, mark “None” within that section; the section itself must not be deleted.
Parameter description
| Parameter | Description | Default value |
|---|---|---|
--keywords |
Custom search keywords, comma-separated. By default, only “AI” is searched; when data is insufficient, terms are automatically expanded; all keywords are queried in batches through the batch interface | AI |
--count |
Number of videos to scan; stop once satisfied | 200 |
--date |
Specify date YYYY-MM-DD (if there is no data, a prompt will appear asking to switch) | Today |
--start-time |
Custom start time YYYY-MM-DD HH:MM:SS (overrides --date estimation) | — |
--end-time |
Custom end time YYYY-MM-DD HH:MM:SS (overrides --date estimation) | — |
--latest |
Automatically use the latest date with data, skip intervals without data, and do not deduct credits | — |
--output-dir |
Output directory | ~/Downloads/QoderReports |
--api-key |
Specify API Key | — |
--subscribe |
Enable daily subscription | — |
--unsubscribe |
Disable daily subscription | — |
--no-open |
Removed Always auto-preview after generation | — |
💬 Custom keyword query scenario
In addition to the default AI Daily Report, users can specify any combination of keywords for targeted queries and analysis:
# 查询 AI 绘画方向热门内容
python3 "$SKILL_PATH/assets/daily_report.py" --keywords "Stable Diffusion,ComfyUI,Midjourney,AI绘画"
# 查询 AI 工具/产品方向
python3 "$SKILL_PATH/assets/daily_report.py" --keywords "AI工具,ChatGPT,Claude,Coze"
# 查询特定技术方向
python3 "$SKILL_PATH/assets/daily_report.py" --keywords "RAG,向量数据库,微调,LoRA"
Custom Query Logic:
- All keywords provided by the user are queried in a single batch through the batch interface, with no need to call them one by one
- Query results are automatically deduplicated, and clustering and intelligence investigation reports are all generated based on the query results, strongly correlated with the user's areas of interest
📚 Reference Documentation
- engine-strategy.md — Engine selection strategies, unique capabilities, and advanced search methods
- investigation-modes.md — Search strategy orchestration and output templates for the four investigation modes
- investigation-templates.md — Complete template set for investigation reports