channel-strategy.md(渠道采集脚本)、report-template.md(报告模板)、severity-rules.md(严重度规则)、config-schema.md(配置结构)。这些文件包含具体的 evaluate 脚本和模板,不读会导致采集和报告质量下降。Scan configured game's public feedback across channels, produce an actionable issue-responsibility report (not just a sentiment dashboard), and push P1 alerts when critical issues are detected.
本 skill 的渠道依赖会在 Step 2 交互流程中自动检测并展示,用户无需提前手动安装。以下仅供参考:
mcporter add playwright每次触发此 skill 都必须走交互流程,不得跳过直接使用上次配置运行。
如果已有 {WORKSPACE}/game-sentiment-data/{slug}/config.json,展示上次配置摘要让用户确认或修改:
> 📋 上次配置({游戏名}):
> - 渠道:{渠道列表}
> - 关键词:{关键词列表}
> - 频率:{频率}
>
> 用这个配置跑?还是要调整?(回"跑"直接开始,或告诉我要改什么)
如果无 config.json(首次),执行完整交互流程:
首次配置时,发送:
> 👋 游戏舆情监控已就绪。我来帮你配置:
> 你要监控哪个游戏? 告诉我游戏名就行,中英文都可以。
用户回复游戏名后,自动推断别名、品类,发送确认:
> 确认:{游戏名}
> 我帮你自动设置了:
> - 别名:{推断的别名}
> - 品类:{推断的品类}
>
> 有需要补充的吗?比如当前版本号、正在进行的活动、重点关注的话题?
> (直接回"没有"我就用默认值继续)
⚠️ 强制执行顺序(不可跳过、不可合并、不可简化):
Action 2a — 检测前置条件(必须在展示渠道前完成,不可跳过):
依次执行以下检测,每项记录结果。如果某项检测工具不存在或文件不存在,直接记为"不可用/未配置",继续下一项:
mcporter call playwright.browser_navigate 传入 url: "https://example.com"。如果 mcporter 命令不存在或报错 → Playwright 不可用{WORKSPACE}/game-sentiment-data/.credentials/accounts.json。文件不存在或无 youtube_api_key 字段 → YouTube 未配置nga 字段。无 → NGA 未配置web_search("test")。失败或 429 → web_search 不可用https://www.xiaohongshu.com/search_result?keyword=test&type=1https://www.zhihu.com/search?type=content&q=testhttps://discord.com/channels/@mehttps://www.taptap.cn,确认页面正常加载。失败则 TapTap 标记为 ❌ 不可用。Action 2b — 根据检测结果生成渠道表格:
用 Action 2a 的真实结果填充下表(✅ 就绪 / ⚠️ 需配置 / ❌ 不可用),然后展示给用户:
> 默认配置如下,你确认或改:
>
> 📡 监控渠道(已自动检测就绪状态):
> | 渠道 | 状态 | 前置条件 | 说明 |
> |------|------|---------|------|
> | 微博 | {检测结果} | Playwright | 免登录,自动扫描微博搜索结果 |
> | TapTap | {检测结果} | Playwright | 免登录,自动抓取游戏评论区 |
> | 贴吧 | {检测结果} | Playwright | 免登录,自动扫描游戏贴吧帖子 |
> | B站 | {检测结果} | Playwright | 免登录,搜索游戏相关视频和评论 |
> | 小红书 | {检测结果} | Playwright / web_search | 搜索笔记+评论。IP 封控检测通过用 Playwright,被封则自动降级 web_search |
> | YouTube | {检测结果} | API key | 搜索游戏视频+评论。申请指南,启用 YouTube Data API v3,免费 10,000 次/天 |
> | Reddit | {检测结果} | web_search | 通过搜索引擎间接获取 |
> | X/Twitter | {检测结果} | web_search | 同上,与 Reddit、媒体共享 web_search 配额 |
> | 游戏媒体 | {检测结果} | web_search | 扫描 17173/游民星空等游戏媒体报道 |
> | NGA | {检测结果} | 账号密码 | 需要 NGA 论坛账号才能访问帖子 |
> | 知乎 | {检测结果} | Playwright / web_search | 搜索游戏相关问答。IP 封控检测通过用 Playwright,被封则自动降级 web_search |
> | Discord | {检测结果} | Playwright / web_search | 搜索游戏社区服务器讨论。IP 封控检测通过用 Playwright,被封则自动降级 web_search |
状态值规则:
✅ 就绪⚠️ 需配置❌ 不可用> _⚠️ 标记的渠道缺少前置条件,会自动跳过。你可以现在就配置:_
> - _YouTube API key → 告诉我 key,我帮你存好_
> - _NGA 账号 → 告诉我用户名和密码,我帮你存好_
> - _Playwright 未安装 → 我现在帮你装(运行 mcporter add playwright)_
> - _配好后我会重新检测并更新状态_
>
> _每个渠道的访问方式也可以调整(回"调整渠道"进入详细设置)。_
>
> 🌍 监控区域:全球(中文+英文)
> _→ 如果你的游戏只在国内运营,可以改成"国内",我会跳过海外渠道节省时间_
>
> ⏰ 扫描频率:每天一次(扫描过去 24 小时的内容)
> _→ 适合日常监控。如果游戏刚更新/出了事故,可以临时切到"每 4 小时"高频模式_
>
> 📋 报告格式:中文 Markdown 文件 + 飞书消息摘要
> _→ Markdown 是完整报告(存档用),飞书摘要是精简版直接推到你的聊天里_
>
> 🚨 紧急告警:发现严重问题(P1)时立即推送,夜间 23:00-08:00 静默
> _→ P1 = 可能上热搜/大规模影响玩家的严重问题,比如服务器宕机、大规模封号争议、重大安全漏洞。发现这类问题我会第一时间通知你,但深夜不打扰(除非你改静默时段)_
>
> 哪里要改?要提供 API key/凭据?还有其他想加的平台?不改就回"好"。
如果用户在 Step 2 提出要调整渠道、提供凭据、或添加新平台,进入此步骤:
访问方式可选表:
> | 渠道 | 默认方式 | 可选方式 |
> |------|---------|---------|
> | 微博 | Playwright(m.weibo.cn API) | web_search 降级 |
> | TapTap | Playwright(评论页) | web_search 降级 |
> | 贴吧 | Playwright(帖子列表) | web_search 降级 |
> | B站 | Playwright(搜索页) | B站 API(需 cookie)、web_search 降级 |
> | YouTube | Data API v3(需 key) | Playwright(无需 key 但不稳定)、web_search 降级 |
> | Reddit | web_search | 官方 API(需 OAuth app)、Playwright(可能被封) |
> | X/Twitter | web_search | 官方 API v2(需 Bearer token)、Playwright(可能被封) |
> | 游戏媒体 | web_search + web_fetch | Playwright |
> | NGA | Playwright + 登录 | web_search 降级 |
> | 小红书 | Playwright(搜索页) | web_search 降级 |
> | 知乎 | web_search(默认,IP 封控) | Playwright(需住宅 IP) |
> | Discord | web_search(默认,IP 封控) | Playwright(需住宅 IP) |
添加新平台:
> 告诉我平台名,我来评估最佳访问方式:
> - 有公开 API 的 → 直接对接(最稳定)
> - 有网页版的 → Playwright 自动化采集
> - 需要登录的 → 提供凭据后 Playwright 登录采集
> - 被封锁的 → web_search 间接搜索(数据不如直连完整)
如果 Playwright 未安装(关键依赖缺失):
> ❌ Playwright 未安装 — 微博/TapTap/贴吧/B站/小红书/知乎/Discord/NGA 都无法直连(知乎/Discord/小红书仍可通过 web_search 降级)
> 安装命令:mcporter add playwright
> 安装后跟我说"好了",我重新检测。
如果用户提供了自定义渠道,将其加入 config.json 的 channels 列表,并在 references/channel-strategy.md 中记录访问策略(首次运行时动态探索最佳方案)。
基于游戏品类自动生成推荐关键词,附带解释让用户理解每类词的作用:
> 🔍 监控关键词(根据{品类}自动推荐):
>
> 风险关键词 — _我会重点搜索包含这些词的玩家讨论,用来发现潜在问题_
> → {外挂, 盗号, 封号, 卡顿 掉帧 闪退, bug 闪退 崩溃}
>
> 排除词 — _包含这些词的内容会被自动过滤,避免广告和无关帖子干扰分析_
> → {陪玩, 代练, 交易, 出售, 收购, 接单, 招人}
>
> 竞品监控 — _填入竞品游戏名,我会在报告中对比玩家是否在讨论"弃坑去玩XX"等流失信号_
> → (空,可选填。例如:PUBG, 无畏契约, CS2)
>
> 你可以:
> 1. 增减风险关键词(比如加"退款""氪金""削弱")
> 2. 增减排除词(比如你的游戏有官方交易系统,可以去掉"交易")
> 3. 填入竞品游戏名
>
> 不改就回"好",或告诉我要加减什么。
关键词推荐逻辑(按品类):
> ✅ 配置完成,保存到 {WORKSPACE}/game-sentiment-data/{slug}/config.json。正在执行首次扫描...
首次扫描完成后,进入 Step 5。
首次报告生成后,询问用户是否需要自动化:
> 首次报告已生成 ✅ 你可以设置自动化(也可以跳过,以后随时手动触发):
>
> ⏰ 定时扫描 — _设置后我会按固定时间自动跑舆情扫描,不用你手动触发_
> → 推荐:每天一次,北京时间 10:00(早上上班看报告)
> → 可选:每 4 小时(版本更新/事故期间的高频模式)
> → 不设置也行,每次你跟我说"跑一下"就手动触发
>
> 📨 报告推送 — _扫描完成后自动把摘要发到你的聊天里,不用你来查_
> → 推荐:精简摘要(只推 P1/P2 问题 + 渠道状态,完整报告存文件)
> → 可选:完整报告直接推送
> → 不设置就只存文件,你需要时问我要
>
> 要设置哪个?都不需要就回"跳过"。
交互设计原则:
Read references/config-schema.md for full config structure and defaults.
用户数据与 skill 代码分离:skill 目录由 clawhub 管理,用户数据放在 workspace 级别,避免更新覆盖。
~/.openclaw/workspace/
├── skills/
│ └── game-sentiment/ # skill 代码(clawhub 管理,可更新)
│ ├── SKILL.md
│ └── references/
│
└── game-sentiment-data/ # 用户数据(独立于 skill,不受更新影响)
├── .credentials/accounts.json # 用户凭据(.gitignore 排除)
└── {game-slug}/
├── config.json # 该游戏最新配置
└── reports/
├── YYYY-MM-DD-HHmm/
│ ├── {game-slug}_YYYY-MM-DD-HHmm.md
│ ├── config.json # 本次运行 config 快照
│ └── data/ # 本次采集原始数据
└── _archive/
{WORKSPACE} = OpenClaw workspace 根目录(通常为 ~/.openclaw/workspace)
命名规范:
YYYY-MM-DD-HHmm(UTC 时间){game-slug}_YYYY-MM-DD-HHmm.md每次执行时:
{WORKSPACE}/game-sentiment-data/{slug}/config.json{WORKSPACE}/game-sentiment-data/{slug}/reports/YYYY-MM-DD-HHmm/data/ 子目录{game-slug}_YYYY-MM-DD-HHmm.md{WORKSPACE}/game-sentiment-data/{game-slug}/config.json。首次执行时此文件不存在,跳过此步,由交互流程(Step 1-4)生成。mcporter. Key tools:playwright.browser_navigate — 导航playwright.browser_evaluate — 执行 JS 提取数据playwright.browser_snapshot — 获取页面结构playwright.browser_click — 点击元素playwright.browser_take_screenshot — 截图(验证码识别)playwright.browser_handle_dialog — 处理弹窗playwright.browser_close — 关闭浏览器{WORKSPACE}/game-sentiment-data/.credentials/accounts.json, use Playwright iframe DOM manipulation + captcha screenshot + AI recognition. See references/channel-strategy.md for detailed steps.⏱ 用户进度反馈
> 🚀 开始扫描 {游戏名} — 启用 {N} 个渠道:{渠道列表}
> 完成后推送报告摘要。
references/channel-strategy.md),fallback 到 innerText.slice(0, 15000)mcporter call playwright.browser_navigate),不能用 web_fetch 替代需要 JS 渲染的页面 For each available channel, following the verified methods in references/channel-strategy.md:
config.json 中 keywords.exclude 列表过滤商业帖(含任一排除词的样本标记为 commercial)。翻页采集:每组关键词至少采集 2-3 页(page=1,2,3),增加样本覆盖面。另外增加一组"游戏名"纯搜关键词(不带风险词),获取更广泛的玩家讨论面playwright.browser_snapshot 拿 accessibility tree → 正则提取帖子标题/作者/回复数;② 精准 evaluate 脚本;③ innerText fallback。优先 snapshot 因贴吧新版 Vue SPA 导致传统 DOM 选择器不稳定。翻页采集:至少采集 2-3 页帖子列表。热帖深入:对回复数最高的 3-5 个帖子,进入帖子详情页抓取前 2 页楼层回复内容web_search + web_fetch for 17173/游民星空/网易等web_search("site:reddit.com ...") 间接获取,按关键词分组搜索web_search("site:x.com ...") 间接获取,按关键词分组搜索{WORKSPACE}/game-sentiment-data/.credentials/accounts.json 读取。评论翻页:使用 pageToken 翻页,每个视频采集 60-100 条评论(默认 20 条 × 3-5 页)https://www.xiaohongshu.com/search_result?keyword={GAME_NAME_ENCODED}&type=1(笔记类型)。免登录可访问搜索结果页,提取笔记标题、点赞数、评论数。深入笔记:对互动量最高的 3-5 条笔记进入详情页抓取正文+评论区前 2 页。⚠️ 已知限制:小红书对云服务器 IP 有风控(错误码 300012 "IP at risk"),Azure/AWS 等 VPS IP 大概率被封。此时自动降级为 web_search("site:xiaohongshu.com {游戏名}")。用户如有住宅 IP 代理可配置为 Playwright 直连web_search("site:zhihu.com {游戏名} {关键词}")。云服务器 IP 被知乎封锁,Playwright 直连不可用。用户如有住宅 IP 代理可切换为 Playwright 直连web_search("site:discord.com {游戏名} {关键词}")。云服务器 IP 被 Discord 封锁,Playwright 直连不可用。用户如有住宅 IP 代理可切换为 Playwright 直连"{game} reddit cheating bug complaint" 而非按关键词拆分多次);② 每次调用间隔 ≥8 秒;③ 优先级:游戏媒体 > Reddit > X(媒体为 L1 证据);④ 遇 429 时等待 30 秒重试一次,仍失败则标记"配额耗尽"跳过剩余;⑤ YouTube 走独立 API 不占 web_search 配额,始终执行references/severity-rules.mdreports/YYYY-MM-DD-HHmm.md. Read references/report-template.md for structure. Must include:[B站] "镜神跌落神坛" — UP主xxx — https://bilibili.com/video/xxx — 2026-04-06 01:30 UTC。web_search 降级渠道无法获取精确 URL 时,标注搜索查询词和结果摘要来源playwright.browser_close to release resourcesdata/state.jsonWhen samples from a single channel exceed context window capacity:
For high-sensitivity labels (secret nerfs, fraud, wrongful bans, fairness violations):
reports/references/config-schema.md — Config structure, defaults, minimal examplereferences/channel-strategy.md — Channel tiers, roles, healthcheck, degradationreferences/severity-rules.md — P1/P2/P3 definitions, credibility, sensitive wording, owner mappingreferences/report-template.md — Report structures for daily, low-sample, and P1 alert共 1 个版本