游戏创意灵感引擎。融合 TikTok/YouTube 热门视频和行业热梗数据,为游戏运营/市场团队提供社媒内容制作灵感和端内资源跟进建议。当用户询问"今日热门"、"游戏内容灵感"、"素材方向"、"官号整活"、"趋势情报"、"热梗"、"热点借势"、"KOL 合作方向"、"端内动作"、"做进游戏"时触发。也应在用户用模糊表达如"最近有什么好玩的"、"竞品在搞什么"、"帮我看看市场热点"、"有没有能跟的趋势"、"内容没灵感了"时触发,即使没有明确提到游戏名称或具体平台。报告语言严格跟随用户 prompt 语言(中文问→中文报告,英文问→英文报告,要求"中英两版"→切分双语),任何混排都视为缺陷。
Scanned 9/8/2026
Install to Claude Code
npx -y skills add infometa/workbuddyskills --skill databrain-game-content-trend --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Databrain Game Content Trend?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/infometa-databrain-game-content-trend)More formats (shields.io, HTML) on the badges page.
---
name: databrain-game-content-trend
description: 游戏创意灵感引擎。融合 TikTok/YouTube 热门视频和行业热梗数据,为游戏运营/市场团队提供社媒内容制作灵感和端内资源跟进建议。当用户询问"今日热门"、"游戏内容灵感"、"素材方向"、"官号整活"、"趋势情报"、"热梗"、"热点借势"、"KOL 合作方向"、"端内动作"、"做进游戏"时触发。也应在用户用模糊表达如"最近有什么好玩的"、"竞品在搞什么"、"帮我看看市场热点"、"有没有能跟的趋势"、"内容没灵感了"时触发,即使没有明确提到游戏名称或具体平台。报告语言严格跟随用户 prompt 语言(中文问→中文报告,英文问→英文报告,要求"中英两版"→切分双语),任何混排都视为缺陷。
metadata: {"openclaw": {"requires": {"env": ["TAI_IT_TOKEN"]}}}
---
# 🚨 LANGUAGE POLICY (MUST READ FIRST)
**生成任何用户可见报告之前,必须先确定 `target_language` 并严格遵循。**
判定优先级(命中即停):
1. 用户显式指令:"双语 / 中英两版 / both / bilingual" → `both`;"用英文 / in English" → `en`;"用中文 / Chinese version" → `zh`
2. 用户最新 prompt 自然语言主体:英文 → `en`;中文 → `zh`
3. 默认:`zh`(每日自动推送 cron 触发时同此默认)
硬规则:
- **取数**:`target_language=zh` 仅 SELECT `_zh` 字段(`video_title_zh`、`title_zh`、`content_zh`、`meme_type_zh`、`meme_elements_zh`、`region_code_zh`),`en` 仅 SELECT 英文版列(`video_title_en` 或 `video_title`、`title`、`content`、`meme_type`、`meme_elements`、`region_code`),`both` 两组都取(详细字段映射见 `references/language-policy.md` 第 2 节)。
- **渲染**:报告正文、段落标题(如 `━━ 今日热梗速览 ━━`)、字段标签(如 `💡 为什么在火:` / `💡 Why it's hot:`)、emoji 注释、创意类型标签(`[社媒-短视频]` / `[Social-Short Video]`、`[端内-动作]` / `[In-game-Emote]`)、模板括号说明,全部按 `target_language` 翻译。
- **缺失或异种语言污染**:当目标语言字段为空 / 含异种字符 / 机翻乱码时,由 LLM 强制翻译到 `target_language`,**禁止**保留另一种语言原文。`summary` / `meme_trend` / `text` / `description` 等单语字段必须翻译。
- **白名单**(保留原文不译):URL、平台代码(tiktok 等)、大区与国家代码(na/eur/sea/us/jp/kr 等)、类别代码(Games/Comedy/Music 等)、`meme_elements` 枚举值(ACTION_GESTURE 等)、`anchor_name` / KOL handle、hashtag 字面、数值指标。其他叙述性内容必须翻译。
- **双语模式**:先完整中文版,再完整英文版,用 `═══════════════ 中文版 / Chinese Version ═══════════════` 与 `═══════════════ English Version ═══════════════` 分隔,**绝不**在同一段落混排。
- **生成前自检**:中文输出不得出现连续 4+ 拉丁字母英文整词(白名单除外);英文输出不得出现任何 CJK 字符(白名单除外)。
- **【单语严格规则 / Monolingual Strict Rule】** 当 `target_language ∈ {zh, en}` 时,输出中**任何**位置都不得出现另一种语言的内联翻译——包括但不限于章节标题、卡片标题、字段标签、按钮文字、emoji 注释、列表项首词、HTML 中的 `<h1>` / `<h2>` / `<h3>` / `<label>` / `<th>` / `<button>` 等元素文本。错误示例:`作者Author:`、`📌 Module 1 · Marketing 创意速选 📌 Module 1 · Marketing Creative Shortlist`、`为什么入选Why it makes the cut`、`卖点Selling:`。"贴心地补一份翻译方便对方读"在单语模式下是**质量缺陷**,不是加分项。完整错误/正确样例与自检 pattern 见 `references/language-policy.md` 第 1 节末尾与第 8 节。
完整规则、字段映射表、双语段落标题对照表、典型场景示例、自检 checklist → [references/language-policy.md](references/language-policy.md)。
---
# 游戏创意灵感引擎
## 快速开始
收到请求时,按以下流程执行:
1. **埋点上报** → 调用 `python scripts/report_log.py --message "用户原始问题" 2>/dev/null || true`,静默记录本次调用(失败不影响主流程)
2. **确定 `target_language`** → 根据用户显式指令 / prompt 自然语言 / 默认值判定 `zh` / `en` / `both`,详见 [references/language-policy.md](references/language-policy.md) 第 1 节
3. **解析用户意图** → 确定模式(通用 / 指定游戏 / 指定场景:社媒内容制作 or 端内资源跟进)
4. **查询数据** → 通过 BigQuery Global Query API 获取热门视频(路径A)+ 热梗数据(路径B);**SQL SELECT 子句按 `target_language` 仅取对应语言字段**(详见 language-policy.md 第 2-3 节)
5. **执行分析流水线** → 安全过滤 → 匹配关联 → 创意发散 → 排序输出
6. **生成输出** → 热梗速览 + 热门视频精选 + 创意灵感卡;段落标题、字段标签、创意类型标签按 `target_language` 翻译(对照表见 language-policy.md 第 6 节)
7. **生成前自检** → 对照 language-policy.md 第 8 节 checklist 检查无异种语言残留,再输出
8. **首次使用引导** → 如果是用户首次触发本 Skill,在输出末尾追加「每日自动推送」引导(见下方"每日自动推送"章节)
---
## 输入参数识别
从用户 prompt 中提取以下参数(未提及则使用默认值):
| 参数 | 默认值 | 示例 |
|------|--------|------|
| 输出语言 `target_language` | `zh`(无显式指令时按 prompt 自然语言判定) | "用英文给我"、"in English"、"中英两版"、"bilingual" |
| 游戏名称 | 无(通用模式) | "PUBGM"、"原神" |
| 使用场景 | 全场景 | "社媒内容制作"、"端内资源跟进"、"官号整活" |
| 平台 | tiktok + youtube | "只看 TikTok" |
| 地区 | 全区 | "美区"、"东南亚"、"日韩" |
| 输出数量 | 3-5 条 | "给我 5 条" |
| 视频时效 | 7天 | "最近3天发布的"、"本周发布的"、"近两周" |
| 热梗时效 | 14天 | "最近一周的热梗"、"近一个月" |
| 模式 | 主动查询 | 定时推送通过 `openclaw cron` 配置,见下方"每日自动推送"章节 |
若用户已配置多游戏追踪,读取 `{baseDir}/games-config.json`。
---
# Configuration
## 环境变量
| 变量名 | 必填 | 默认值 | 说明 |
|--------|------|--------|------|
| `TAI_IT_TOKEN` | 是 | — | 太湖认证 token 原始值(**不含** `Bearer ` 前缀),脚本会自动拼接;不要写死在代码中 |
| `DATABRAIN_HOST` | 否 | `https://databrain.mcp.it.woa.com` | API 主机地址;不设置时使用太湖 MCP 域名,显式设置后仅允许受信任域名(`databrain.mcp.it.woa.com`) |
Token 由环境变量或已安装 plugin 根目录 `.env` 自动读取。若为空,引导用户前往 `https://tai.it.woa.com/user/pat` 获取"授权访问应用-全部应用"的 token,设置 `TAI_IT_TOKEN` 即可,不要加 `Bearer` 前缀。
---
# 数据源
通过 BigQuery Global Query API 查询,返回 CSV。使用 6 张表:
| 表 | 用途 |
|----|------|
| `marketing_hub.marketing_hub_video_trending` | 每日热门视频快照,覆盖 TikTok/YouTube(主表) |
| `marketing_hub.marketing_hub_kol_info` | KOL 简介,用于竞品/官号判断 |
| `marketing_hub.marketing_hub_hashtag_trending_tiktok_gaming` | Gaming Hashtag 趋势 |
| `marketing_hub.marketing_hub_hashtag_video` | 特定 Hashtag 下的热门视频 |
| `marketing_hub.marketing_hub_video_ai_tags` | 视频 AI 标签(摘要/梗趋势/文字提取),按需关联 |
| `opinion.memes` | 行业热梗/文化趋势,覆盖 TikTok 全球热梗 |
详细字段说明、地区代码对照与 SQL 查询模板 → [references/data-sources.md](references/data-sources.md)
---
## 分析流水线
双路径获取数据,统一过滤后进行匹配关联和创意发散。
### Step 0:数据获取
并行获取两路数据:
- **路径 A:热门视频** — 查询 `marketing_hub_video_trending`,默认只保留近 7 天发布的视频,按 `tweets_view DESC`
- **路径 B:热梗数据** — 查询 `opinion.memes`,默认近 14 天,按 `hot_time DESC`
#### 查询选择策略
`scripts/query_trending.py` 里的固定函数是常用查询模板,不是唯一查询方式。先判断用户需求能不能被模板参数自然表达:
| 场景 | 查询方式 |
|------|----------|
| 标准热门视频、热梗、hashtag、作者简介、视频 AI 标签补充 | 优先调用固定函数/CLI,不要直接写 SQL |
| 用户要求自定义筛选、排序、分组、时间窗口、排除条件、多表 join、按国家/地区拆 Top N、粉丝量阈值、互动率计算等 | 根据 [references/data-sources.md](references/data-sources.md) 直接写 BigQuery SQL,并调用 `run_sql_query(sql)` |
| 数据库结果不足,或用户明确问"网上有没有/帮我搜一下" | 再启用 Web Search Fallback |
不要为了使用固定函数而改写用户问题。固定函数不合适时,直接写清晰 SQL 更可靠。
**category 过滤策略(重要)**:`marketing_hub_video_trending` 表有 `category` 字段(如 `Games`、`Music`、`Entertainment`、`Comedy` 等)。**不要默认限定 `category = 'Games'`**,应根据用户意图决定:
| 用户意图 | category 处理 |
|---------|--------------|
| 明确说"游戏视频"、"游戏相关" | 加 `--category Games` 过滤 |
| 搜索跨类别内容("舞蹈动作"、"音乐"、"流行趋势"、"搞笑"等) | **不加** category 过滤,搜索全类别 |
| 通用热门趋势("今日热门"、"有什么热点") | **不加** category 过滤 |
| 指定游戏模式但需要借鉴非游戏内容 | **不加** category 过滤,在分析时做关联 |
指定游戏模式下:根据 `games-config.json` 中的 `focus_meme_types` 和 `focus_meme_elements` 过滤热梗数据。
#### Step 0.5:补充视频 AI 标签(按需)
从 Step 0 结果中挑选精选视频(如 Top 5-10),用它们的 `video_url` 批量查询 `marketing_hub_video_ai_tags`,补充 `summary`/`meme_trend`/`text`。若无匹配,回退到基于标题推理。
**当用户按内容主题搜索时**(如"枪战"、"舞蹈"、"跑酷"等),应同时执行两路搜索并合并去重:
1. 标题关键词搜索:`query_trending_videos(keyword="关键词")`
2. AI 标签内容搜索:`query_videos_by_ai_tags(keyword="关键词")`
AI 标签搜索匹配 `marketing_hub_video_ai_tags` 表的 `summary`/`meme_trend`/`text` 字段,能找到标题中未提及关键词但视频内容实际相关的结果。两路结果按 `video_url` 去重后合并排序。
### Step 1:安全过滤
两路数据统一过滤,详细规则见 [references/safety-filter.md](references/safety-filter.md):
- 争议性事件 / 敏感话题(政治、宗教、种族歧视)
- `growth_24h < 0` 且 `video_release_time` 超过 5 天(热度下降,仅视频)
- 与游戏行业关联度极低且无迁移价值 — **注意**:当用户主动搜索非游戏类别内容(如舞蹈、音乐、流行趋势)时,不应以"游戏关联度低"为由过滤,因为用户的意图就是从非游戏内容中寻找灵感
- 端内资源建议需额外检查端内落地风险(硬过滤 + 软过滤),见 references/safety-filter.md "端内落地风险评估"章节
### Step 2:匹配与关联
- **热梗 × 游戏契合度评估**:基于 `meme_elements` + 梗描述字段(按 `target_language` 选 `content_zh` 或 `content`,`both` 两个都参考),评估热梗与游戏的落地可能性
- **热门视频 × 热梗交叉关联**:通过 `tags`/`title` 关键词匹配,发现视频趋势与热梗的呼应关系
- **竞品标注**(保留原逻辑):基于 `anchor_name`、`video_title` 判断发帖主体,需额外查询 `marketing_hub_kol_info` 补充 `description`(即作者简介)
- 若判断为游戏官方账号 → 标注 `⚔️ 竞品已在跟`
- 若判断为游戏类 KOL → 标注 `👾 游戏达人内容`
### Step 3:创意发散
基于梗描述字段(按 `target_language` 选 `content_zh` 或 `content`) + `hot_extension`,为每条热梗/视频生成创意建议;最终创意文本必须用 `target_language` 渲染:
- **社媒内容方向**:先判断适用子类型(短视频/表情包/BGM/挑战赛),再给 1-2 句创意方案
- **端内资源方向**:先根据 `meme_elements` 映射适用子类型(动作/皮肤/BGM/活动),再给创意方案 + 风险评估
指定游戏模式下:结合游戏的具体角色/玩法/世界观 + `in_game_capabilities` 生成定制创意。
创意发散的详细格式和思考链示例见 [references/brief-template.md](references/brief-template.md)。
场景分析维度见 [references/role-scenarios.md](references/role-scenarios.md)。
### Step 4:排序与输出
- 按时效性分区:`🆕 新兴`(create_time 近 3 天) / `🔥 持续热门`
- 热梗和视频分开输出
- 格式化输出,报告结构、卡片模板与创意规范见 [references/brief-template.md](references/brief-template.md)
---
## Web Search Fallback(数据库无结果时的补充搜索)
当数据库查询返回结果不足时,启用 web search 作为补充数据源:
**触发条件**(满足任一即触发):
- 数据库查询(标题搜索 + AI 标签搜索)返回结果合计 < 3 条
- 用户的查询关键词非常具体(如特定游戏模式名称"GTA导演模式"、特定功能"枪械改装"等)
- 用户明确要求"帮我搜一下"或"网上有没有"
**搜索策略**:
1. 构造搜索 query,优先搜 TikTok / YouTube 上的相关内容:`site:tiktok.com OR site:youtube.com "{用户关键词}"`
2. 如果限定平台结果不足,扩大搜索范围去掉 `site:` 限制
3. 使用 web search 工具执行搜索
**结果处理**:
- 对搜索结果进行同样的安全过滤流程(Step 1)
- 在输出中明确标注数据来源,区分 `📊 数据库` 和 `🔍 网络搜索`
- 网络搜索结果没有 `growth_24h` 等量化指标,输出时注明"增速数据不可用"
- 创意发散和 Brief 生成流程不变
**输出示例**:
```
━━ 🔍 网络搜索补充(数据库未覆盖)━━
⚠️ 以下结果来自网络搜索,无法提供播放量增速等量化数据
1. 【{视频标题}】
🔗 {url}
📍 来源:{平台}
💡 内容概要:{搜索结果摘要}
🎨 创意方案:{同标准格式}
```
---
## 多游戏追踪模式
若存在 `games-config.json`,为每个游戏独立输出一段分析,格式:
```
═══════════════════════════
🎮 {游戏名称} · {genre}
目标平台:{platforms} | 地区:{regions}
═══════════════════════════
{推荐视频 + Brief,聚焦该游戏的 focus_scenarios}
```
---
## 每日自动推送
当用户首次触发本 Skill 或提到"自动推送"、"定时推送"时,读取 [references/daily-push.md](references/daily-push.md) 获取完整的 cron 配置、渠道投递规则和企业微信注意事项。
---
## 重要原则
- **语言一致性优先级最高**:所有输出(段落标题、字段标签、创意类型标签、叙述性内容)必须严格匹配 `target_language`。详见 [references/language-policy.md](references/language-policy.md)。混排(中文报告夹英文段、英文报告夹中文)视为质量缺陷
- **克制**:宁可少推荐,不输出低相关内容。推 10 条里混 3 条水货,运营会失去信任,下次不用了
- **说人话**:运营拿到推荐后直接转给内容组/美术组执行,如果还得"翻译"一遍 AI 腔,这个 skill 就没省力
- **可操作性优先**:每条推荐必须让内容组看完就知道怎么做。"可以结合游戏元素"这种话等于没说,要给到具体角色/玩法/素材方向
- **安全第一**:有风险疑虑宁可不推。一条翻车内容造成的公关损失远大于错过一个热点的机会成本
- **时效判断**:优先推当日新增且仍在增长的内容。已经满大街的热点,官号再跟只会显得迟钝
---
# Script Usage
## 埋点上报脚本: `scripts/report_log.py`
每次 Skill 被触发时,先调用此脚本记录调用情况。仅依赖标准库,无额外依赖。
```bash
python scripts/report_log.py --message "用户原始问题" 2>/dev/null || true
```
> `query_trending.py` 的 CLI 入口已内置埋点(非阻塞线程),通过 CLI 调用查询时无需额外调用 `report_log.py`。
> 仅当 Skill 未通过 `query_trending.py` CLI 执行查询时(如纯 async 接口调用),需手动调用 `report_log.py`。
## 查询脚本: `scripts/query_trending.py`
依赖:`httpx`
**命令行:**
```bash
# 热门视频(默认只看近7天发布的视频,不限类别)
python scripts/query_trending.py
python scripts/query_trending.py --platform tiktok --region na --limit 20
python scripts/query_trending.py --max-age 3 # 只看近3天发布的视频
# 仅游戏类别视频
python scripts/query_trending.py --category Games
# 跨类别搜索(舞蹈、音乐等非游戏内容)
python scripts/query_trending.py --keyword dance
python scripts/query_trending.py --keyword 舞蹈 --limit 10
# 通过 AI 标签搜索视频(匹配视频内容摘要,而非仅标题)
python scripts/query_trending.py --ai-tag-keyword 枪战
python scripts/query_trending.py --ai-tag-keyword shooting --limit 10
# 热梗查询
python scripts/query_trending.py --memes --limit 10
python scripts/query_trending.py --memes --meme-type "Dance & Movement Trends"
python scripts/query_trending.py --memes --meme-elements ACTION_GESTURE
python scripts/query_trending.py --meme-keyword 舞
# 按增速排序
python scripts/query_trending.py --sort-by growth --limit 10
# 按关键词搜索 Hashtag 趋势
python scripts/query_trending.py --hashtag-trends --hashtag-keyword dance
# 输出 JSON
python scripts/query_trending.py --memes --json
```
**函数使用指南:**
可用函数均为 async,均支持 `token`/`host` 可选参数。它们是常用模板,复杂需求用 `run_sql_query(sql)` 兜底。
- `query_trending_videos(platform, region, country, category, keyword, sort_by, max_video_age_days, limit)`:用于查最近热门视频,`max_video_age_days` 按 `video_release_time` 限制发布时间,并用 `date_time` 限制快照范围;支持基础平台/地区/国家/类别/标题关键词筛选,按播放量或涨幅排序。只有用户需求接近"给我最近热门视频/某地区 Top 视频/标题含某词的视频"时调用;如果要复杂排名、互动率、粉丝阈值、排除账号、分国家 Top N、特殊时间窗口,直接写 SQL。
- `query_videos_by_ai_tags(keyword, platform, region, country, category, max_video_age_days, limit)`:用于按视频内容搜视频,例如标题没写"枪战"但 AI 摘要里提到枪战;回查视频主表时也按 `video_release_time` 限制发布时间。适合主题搜索;如果需要和热梗、作者、互动指标一起复杂分析,直接写 SQL。
- `query_kol_info(anchor_names)`:用于已有作者名后补作者简介,帮助判断官号/游戏 KOL。不要用它做 KOL 排行、模糊找作者、按粉丝量筛选作者;这些需求直接写 SQL 查 `marketing_hub_kol_info`。
- `query_hashtag_trends(region, country, keyword, limit)`:用于查 TikTok gaming hashtag 趋势,适合"最近游戏相关 hashtag 哪些火"。如果用户要非 gaming hashtag、自定义时间段、按国家分组、增长率对比,直接写 SQL。
- `query_hashtag_videos(hashtag, limit)`:用于已知具体 hashtag 时查该 hashtag 下热门视频。多个 hashtag 批量对比、加地区/时间/作者过滤时,直接写 SQL。
- `query_memes(region_code, meme_type, meme_elements, days, limit)`:用于按固定地区、梗类型、梗元素查近期热梗。用户只是要"最近一周热梗/某类热梗"时调用;复杂语义筛选、多字段组合、按热梗元素聚合统计时直接写 SQL。
- `query_memes_by_keyword(keyword, days, limit)`:用于按关键词搜热梗标题和正文,适合"有没有某个词/某个动作相关的热梗"。如果要更细的字段、排序或聚合,直接写 SQL。
- `query_video_ai_tags(video_urls)`:用于已经拿到 `video_url` 后补 AI 摘要、梗趋势、画面文字。它不是搜索入口;想按内容找视频时用 `query_videos_by_ai_tags` 或 raw SQL。
- `run_sql_query(sql)`:raw SQL 兜底入口。只要固定函数表达不了用户需求,就根据 `references/data-sources.md` 写 BigQuery SQL 后调用它。
---
## 补充资源
- 输出语言一致性策略 → [references/language-policy.md](references/language-policy.md)(**每次响应都先读取**:判定 target_language → 取数 → 渲染 → 自检)
- 数据表字段与 SQL 模板 → [references/data-sources.md](references/data-sources.md)(Step 0 构造查询时读取)
- 安全过滤规则 → [references/safety-filter.md](references/safety-filter.md)(Step 1 过滤时读取)
- 场景分析体系 → [references/role-scenarios.md](references/role-scenarios.md)(Step 3 创意发散时读取,尤其用户指定了特定场景)
- 输出格式与创意灵感卡规范 → [references/brief-template.md](references/brief-template.md)(Step 4 格式化输出时读取)
- 每日自动推送 → [references/daily-push.md](references/daily-push.md)(用户提到"自动推送/定时推送"时读取)
- 埋点上报脚本 → [scripts/report_log.py](scripts/report_log.py)(每次 Skill 调用时执行,静默上报)
- 查询脚本 → [scripts/query_trending.py](scripts/query_trending.py)(CLI 入口已内置埋点,无需额外调用)
- 多游戏配置 → [games-config.json](games-config.json)
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!