deep-analysis
对初筛通过的比赛进行深度分析:sporttery-sniper 脚本抓取上下文(基本面+赔率变化)→ 10 步分析(基本面→伤停→泊松→欧指→亚盘→大小球→合理性→关键点/疑点/矛盾→风险→综合评估+推荐)→ 写入记忆。**分析依据仅限公司数据**:胜平负非亚洲联赛威廉、365 必抓(欧洲两家交叉认证,德国为威廉+365+Interwetten 三家),亚洲联赛以澳彩+皇冠+365+易胜博+马会五家交叉认证;亚盘/大小球以澳彩、皇冠、365、易胜博四家(亚洲联赛加马会共五家)交叉认证。平博不参与分析依据。自开盘不参与分析依据。在用户说「深度分析」「分析这场比赛」「详细看看」或赛前流程中初筛之后使用。
DeepseekModel
キュレーション済みスキル
品質 良好 · 48
v1.0.0
取得
https://deepseekmodel.com/api/download.php?id=philipbo-openclaw-pansuan-skills-deep-analysis-skill-md&format=skill
ダウンロード .skill
標準形式。system_prompt と model_config を収録し、任意の Agent で利用可能
.skill ファイルの system_prompt フィールドの実際の内容。
name deep-analysis description 对初筛通过的比赛进行深度分析:sporttery-sniper 脚本抓取上下文(基本面+赔率变化)→ 10 步分析(基本面→伤停→泊松→欧指→亚盘→大小球→合理性→关键点/疑点/矛盾→风险→综合评估+推荐)→ 写入记忆。**分析依据仅限公司数据**:胜平负非亚洲联赛威廉、365 必抓(欧洲两家交叉认证,德国为威廉+365+Interwetten 三家),亚洲联赛以澳彩+皇冠+365+易胜博+马会五家交叉认证;亚盘/大小球以澳彩、皇冠、365、易胜博四家(亚洲联赛加马会共五家)交叉认证。平博不参与分析依据。自开盘不参与分析依据。在用户说「深度分析」「分析这场比赛」「详细看看」或赛前流程中初筛之后使用。 metadata {"openclaw":{"emoji":"📊"}} 深度分析(deep-analysis) 对 match-screening 筛选出的每场比赛,按「sporttery-sniper 脚本抓取上下文 + 10 步分析」流程进行深度分析,给出综合倾向、信心度和比分概率排序。 数据抓取方式(强制) 默认使用仓库内 scripts/sporttery-sniper 抓取比赛上下文。 数据抓取只使用该脚本;脚本失败时本场直接标记为「数据抓取失败」。 抓取命令: cd scripts/sporttery-sniper npm run analyze -- {matchId或分析页URL} --history-window all --format openclaw-json 脚本输出必须是 JSON,且 kind 必须为 openclaw.analysis 。若 JSON 无法解析、 kind 不匹配,或缺少 match/detail/markets/context ,本场标记为「数据抓取失败」,不得编造数据。 payload.context 是给 agent 阅读和分析的完整 Markdown 上下文; payload.match/detail/markets 是结构化原始数据,供写 memory、推荐和复盘使用。 sporttery-sniper 已过滤滚球和开赛后赔率;分析时仍须复核开球时间,避免对已开赛比赛做赛前分析。 输入 支持以下 四种 输入方式: 方式 1:来自初筛流程(默认) 来自 match-screening 的初筛通过场次列表(含比赛 ID 和详情链接)。 方式 2:龙王指定比赛 ID 龙王直接提供比赛 ID,例如:「分析 2950979」「帮我看看 2950979 和 2784768」 → 跳过初筛,直接用比赛 ID 拼接分析页 URL: https://zq.titan007.com/analysis/{matchId}cn.htm 方式 3:龙王提供分析页 URL 龙王直接粘贴 URL,例如:「分析这场 https://zq.titan007.com/analysis/2950979cn.htm」 → 从 URL 中提取比赛 ID(正则: analysis/(\d+)cn ),跳过初筛直接分析。 方式 4:龙王指定竞彩编号 龙王用竞彩编号指定比赛,例如:「分析 010」「看看 002 和 005」「帮我分析 001、003、010」 → 从当日 memory 的赛程数据中查找编号对应的比赛 ID,如果能找到,然后按正常流程分析;如果找不到,则告知龙王「编号 {X} 在今日赛程中未找到」,列出当日可用编号供参考,结束该场。 编号解析流程 : 读取 memory/{今天日期}.md 中 最后一个以 ## 赛程抓取 开头的 section 的赛程列表 按编号匹配(支持带前导零如 010 ,也支持不带前导零如 10 ) 找到对应的比赛 ID → 正常进入分析 如果当日赛程尚未抓取 (memory 中无赛程数据)→ 先执行 match-scraper 抓取赛程,再从结果中查找编号 如果编号不存在 → 不得进入步骤 1 ;仅告知龙王「编号 {X} 在今日赛程中未找到」,列出当日可用编号供参考,结束该场 若同一编号在赛程中对应多场比赛 (数据异常)→ 取第一场 matchId 继续分析,并在推送中标注「编号 {X} 在赛程中重复,已按第一场处理」;若需分析其他场请用比赛 ID 指定 输入约定(供 agent 判断) :编号解析与赛程读取可由主会话在 spawn 前完成,此时本技能收到的 task 为 matchId ,直接进入步骤 1。若主会话传入的是 竞彩编号 (如「分析 010」),则本技能按上列 1~6 从当日 memory 最后一个 ## 赛程抓取 查赛程并解析编号→matchId 后再进入步骤 1。根据 task 内容判断是 matchId 还是编号,避免重复解析或误用。 方式 2、3、4 的处理规则 : 不需要经过初筛,直接进入深度分析 可以是任何比赛(不限联赛层级、不限时间) 可以同时指定多场比赛(逗号或空格分隔) 分析完成后同样进入 recommendation 流程(精选、串关建议等),与初筛流程的后续步骤完全一致 此场已在当日 memory 有分析记录时 :在步骤 2 中处理。同一场开球前多次分析为正常用法, 默认不询问、直接执行全流程 (刷新赔率)。仅当距上次分析 ≤10 分钟 时,为避免误触才通过 messaging 询问:(1. 看之前的分析报告 2. 重新分析)。若龙王本轮已说「重新分析」「刷新」则 不询问 ,直接全流程。详见步骤 2 第 4 点。 执行流程 对每场比赛按以下 实际执行顺序 进行(避免先抓取再询问): 方式 4 且 task 为竞彩编号时 :须先按「编号解析流程」从当日 memory 最后一个 ## 赛程抓取 解析编号→matchId(及赛程条中的开球时间若有),再执行下列顺序;若编号不存在则不得进入步骤 1,直接结束该场。 先执行步骤 2 (历史记忆召回 + 「当日已分析过且 ≤10 分钟」检查)。若步骤 2 判定需询问龙王且龙王选「看之前的分析报告」→ 跳过步骤 1、1.5、3,直接基于当日 memory 该场摘要推送并 announce;若选「重新分析」/「刷新」或本轮已说重新分析/刷新 → 不询问,继续。 再依次执行 :步骤 1(运行 sporttery-sniper 获取上下文)→ 步骤 1.5(校验脚本赔率与数据完整性)→ 步骤 3(10 步分析)→ 输出 1(综合评估)→ 输出 2(写入记忆或返回摘要)。 以下按步骤编号书写, 步骤 2 的正文在步骤 1.5 之后 ,但执行时步骤 2 必须在步骤 1 之前做。 步骤 1:运行 sporttery-sniper 获取上下文数据 ⚠️ 数据更新原则:只要是“重新分析/刷新”,每次均当首次处理。 基本面数据 (排名、战绩、伤停、交锋、赛程等)与 赔率数据 (欧指、亚盘、大小球变化):在“重新分析/刷新”模式下, 每次都重新运行 sporttery-sniper ,不复用当日 memory 中该场旧数据。 **仅当龙王明确选择“看之前的分析报告”**时,允许跳过步骤 1/1.5,直接复读当日 memory 中该场的摘要(不刷新赔率)。 脚本抓取命令 运行: cd scripts/sporttery-sniper npm run analyze -- {matchId或analysis URL} --history-window all --format openclaw-json 解析输出 JSON: kind 必须为 openclaw.analysis match.matchId/league/kickoffTime/homeTeam/awayTeam/analysisUrl 必须存在 context 必须包含完整 Markdown 分析上下文 markets 必须包含赔率、竞足和 Crown 全指数相关数据;若部分公司缺失,记录缺口,不得推断为市场共识 ⚠️ 方式 2/3 输入时的必提取字段 :当输入来自龙王手动指定 ID/URL(跳过了 match-scraper 和 match-screening),必须从 payload.match 读取联赛名、主队名、客队名、开球时间。若这些字段缺失,本场标记为「关键字段缺失」,不进入推荐。 ⚠️ 比赛是否已开始(必检) :一旦取得 开球时间 ( payload.match.kickoffTime ,或方式 1 的初筛/赛程列表),立即比较 当前时间 ≥ 开球时间 。若 已开始 : 不执行 步骤 1.5、步骤 3(10 步分析)、输出 1、输出 2; 不写入 memory;不产出分析摘要。 仅通过 messaging 通知龙王:「该场比赛已开始(开球 {开球时间}),不再做赛前分析。」 结束本场。若为多场中的一场,跳过该场继续其余场次。 多场编排时 :因「已开始」跳过本场时,可通过 announce 回传一条简要信息(如 matchId、状态:已开始),便于编排区分「已跳过」与「未完成」,汇总时只合并实际完成的分析。 方式 1 若在进入步骤 1 前 task/初筛结果中已有开球时间,可 先做 本检查,通过则直接通知并结束,不必运行脚本。 方式 4 若从当日赛程解析编号时赛程条中已有开球时间,也可在进入步骤 1 前先做本检查,通过则不必运行脚本。 赛前分析只对未开球的比赛有意义;开球后不再分析。 脚本上下文包含以下数据模块(逐一提取): 基本面模块: 模块 对应分析维度 提取要点 联赛积分排名 基本面 + 战意 双方排名、胜率、近6场战绩、主/客场分别统计 近期战绩 基本面 双方近 N 场比分结果和走势 阵容情况 伤停 缺阵球员名单、位置、缺阵原因 对赛往绩 交锋 近期交手结果和比分 未来五场 战意/轮换 双方后续赛程间隔天数,判断轮换风险 入球数分布 大小球 进球数 0/1/2/3/4+ 分布 赛前简报 综合参考 AI 生成的赛前分析文字,可作为辅助信息 赔率模块(实时变化,每次必须刷新): 模块 对应分析维度 提取要点 联赛盘路走势 盘赔 亚让盘赢盘率、大小球率(全场 + 近6场走势) 即时走势比较 盘赔 各公司欧指、实际最新亚盘、进球数的初盘+即时;若无此表按 TOOLS.md 做定制 比分赔率 步骤 4 EV 从 payload.markets.crowFullIndex.correctScores 读取 Crown 波胆;若缺失则标注「Crown 波胆缺失」,不得自行补赔率。 即:步骤 1 运行脚本后,直接从结构化 JSON 中取得 Crown 波胆、竞足比分赔率和赔率变化历史;步骤 4 直接使用这些字段做 EV,无需再打开分析页。 如果脚本上下文数据不全,用已有信息继续分析,标注哪些维度「数据不足」。 ⚠️ 脚本唯一入口 :本流程只运行 scripts/sporttery-sniper 。脚本失败时结束本场分析,不临时改用其它抓取方式。 步骤 1.5:校验脚本赔率与数据完整性 sporttery-sniper 已抓取各公司的盘口列表、赔率变化历史、欧赔 JS 数据、竞足数据和 Crown 全指数。本步骤只做校验与分析口径确认,不再打开任何赔率页面。 必须检查: markets.asianCompanies / markets.asianHistories :亚盘公司列表与变化历史 markets.overUnderCompanies / markets.overUnderHistories :大小球公司列表与变化历史 markets.europeCompanies / markets.europeHistories :胜平负欧赔公司列表与变化历史 markets.jcOdds :竞足胜平负、让胜平负、总进球、比分赔率 markets.crowFullIndex :Crown 波胆、入球数、总入球 若某类数据为空,继续分析但必须在报告中标注「数据缺口」,并降低该维度权重。 1. 确认分析依据公司列表 联赛类型判定 :由 payload.match.league (或赛程/初筛数据)的 联赛名 判定。德甲、德乙 → 德国联赛 ;日职、K 联赛、澳超、中超等亚洲联赛 → 亚洲联赛 ;其余欧洲联赛 → 欧洲赛事 ;无法归类的 → 其他 (与欧洲同表:欧指 9,8,亚盘/大小球 1,3,8,12)。 根据联赛类型查表,确定本场三类赔率各需作为分析依据的公司: 联赛类型 亚盘必抓 大小球必抓 欧指必抓 欧洲赛事 1, 3, 8, 12 1, 3, 8, 12 9, 8 德国联赛 1, 3, 8, 12 1, 3, 8, 12 9, 8, 19 亚洲联赛 1, 3, 8, 12, 48 1, 3, 8, 12, 48 1, 3, 8, 12, 48 其他 1, 3, 8, 12 1, 3, 8, 12 9, 8 公司 ID 对照:澳彩=1, 皇冠=3, 365=8, 威廉=9, 易胜博=12, Interwetten=19, 平博=47, 香港马会=48 分析规则 : 亚盘 / 大小球 :澳彩(1)、皇冠(3)、365(8)、易胜博(12) 四家 交叉认证 ,分析依据仅限此 4 家; 亚洲联赛 为 4 家 + 马会(48) 共 5 家 交叉认证。4 家(或亚洲 5 家)中若有 1 家与其余不一致 → 严格警惕冷门 。 平博(47) 不参与分析 ;不再为了 CLV 专门抓取或存档。 欧指 : 非亚洲联赛 必抓威廉(9) + 365(8); 德国联赛 在此基础上再加 Interwetten(19),即必抓 威廉(9) + 365(8) + Interwetten(19) 三家交叉认证。 平博(47) 不参与分析 ;不再为了 CLV 专门抓取或存档。 亚洲联赛 欧指必抓 澳彩(1)、皇冠(3)、365(8)、易胜博(12)、马会(48) , 5 家交叉认证 (4 家 + 马会)。 sporttery-sniper 会抓取更宽的公司集合;分析时只按上表和下列规则选取分析依据。未列入分析依据但已抓取的公司,只作辅助观察或复盘存档。 URL 模板(sporttery-sniper 内部数据源说明,分析流程不得手动打开) : 亚盘: https://vip.titan007.com/changeDetail/handicap.aspx?id={matchId}&companyID={cid}&l=0 大小球: https://vip.titan007.com/changeDetail/overunder.aspx?id={matchId}&companyid={cid}&l=0 欧指: https://vip.titan007.com/changeDetail/1x2.aspx?id={matchId}&companyid={cid}&l=0 脚本化流程不需要手动打开页面 。若脚本缺字段,记录缺口并降低对应维度权重。 2. 赔率数据归属与整理 正式流程不打开任何赔率页面。赔率数据归属以 sporttery-sniper 输出的结构化字段为准: 亚盘: markets.asianCompanies 与 markets.asianHistories 大小球: markets.overUnderCompanies 与 markets.overUnderHistories 欧赔: markets.europeCompanies 与 markets.europeHistories 竞足: markets.jcOdds Crown 全指数: markets.crowFullIndex 若同一公司或同一玩法出现重复/缺失,以脚本结构化结果为准,并在报告中标注数据缺口;不得自行补抓。 3. 赔率数据整理规则 从 payload.markets 中按 (公司, 类型) 整理: 初盘 :每家公司赔率变化表的 最后一行 (最早开出) 即时盘 :每家公司赔率变化表的 赛前最新一行 变化方向 :初盘 → 即时的盘口/水位变化 ⚠️ 滚球数据过滤 :赔率行的时间 > 开球时间,或比分列出现非 0:0(如 1:0),均为滚球数据, 必须忽略 。只保留比赛开始前的赔率变化记录。 提取规则(按公司类型) : 平博(47) (若脚本已返回):只可作为普通赔率参考。 不参与分析 ,不再为了 CLV 专门抓取或存档。 其他公司(分析依据) :提取 整张赛前变动表 ——表格中每一行(时间早于开球且比分为 0:0 的),按行提取。用于第 5/6/7 步的「赔率变动轨迹」分析、相同时点交叉认证与每家意图判断。 vip.titan007 赔率变化页格式 (仅供理解 sporttery-sniper 字段来源;正式分析不手动抓取页面): 胜平负(欧指) URL: https://vip.titan007.com/changeDetail/1x2.aspx?id={matchId}&companyid={companyId}&l=0 (companyid 小写) 表头:时间 | 比分 | {主队名} | 和局 | {客队名} | 变化时间 | 状态。数据行 按列顺序 为: 主胜 | 平 | 客胜 | 变化时间 | 状态 。 提取:主胜、平、客胜、变化时间、状态。 排序与时点对齐用「变化时间」 ,格式 MM-DD HH:mm (如 03-15 20:53)。 亚盘 URL: https://vip.titan007.com/changeDetail/handicap.aspx?id={matchId}&companyID={companyId}&l=0 (companyID 大写) 表头:时间 | 比分 | {主队名} | 盘 | {客队名} | 变化时间 | 状态。数据行 按列顺序 为: 主水 | 盘口 | 客水 | 变化时间 | 状态 。 提取:主水、盘口、客水、变化时间、状态。盘口为「平手」「平手/半球」「半球/一球」等。 排序用「变化时间」 。 大小球(进球数) URL: https://vip.titan007.com/changeDetail/overunder.aspx?id={matchId}&companyid={companyId}&l=0 (companyid 小写) 表头:时间 | 比分 | 大球 | 进球数 | 小球 | 变化时间 | 状态。数据行 按列顺序 为: 大球水 | 盘口 | 小球水 | 变化时间 | 状态 。 提取:大球水、盘口、小球水、变化时间、状态。盘口为 2.5、2/2.5 等。 排序用「变化时间」 。 行序与滚球过滤 :页面表格 第一行 为赛前最新(即时盘), 最后一行 为最早(初盘);中间每行一次变动。 只保留「变化时间」早于开球且该行无比分或比分为 0-0 的记录 ;若某行出现非 0:0 或时间≥开球,视为滚球,整行忽略。 8. 存档原始赔率数据 数据整理完成后,将 全部提取到的赔率原始数据 写入文件,供龙王检查和历史存档。 目录结构 : data/{YYYY-MM-DD}/{matchId}/ ,每家公司一个文件: data/2026-03-15/2784764/ ├── _meta.md ← 元信息 ├── 澳彩.md ├── 皇冠.md ├── 365.md ├── 威廉.md ← 仅欧指(欧洲/德国联赛);亚洲联赛无 ├── 易胜博.md └── 平博.md ← 若脚本已返回,可存档为普通赔率参考,不参与分析 _meta.md 内容 : # {联赛} {主队} vs {客队} - 比赛 ID:{matchId} - 开球时间:{kickoff} - 抓取时间:{timestamp} - 抓取批次:共 {N} 批 - 缺失公司:{无 / 列出脚本未抓取到的公司及类型} 公司文件内容 (以 澳彩.md 为例): # 澳彩 (cid=1) ## 亚盘 | 时间 | 盘口 | 主水 | 客水 | | ----------- | --------- | -------- | -------- | | 03-15 09:30 | -0.5 | 0.88 | 0.96 | | 03-14 22:15 | -0.5 | 0.90 | 0.94 | | 03-14 18:00 | -0.25 | 0.85 | 0.99 | | **初盘** | **-0.25** | **0.85** | **0.99** | ## 大小球 | 时间 | 盘口 | 大球 | 小球 | | ---- | ---- | ---- | ---- | | ... | ... | ... | ... | 平博文件 ( 平博.md ,每类型仅 2 行): # 平博 (cid=47) ## 亚盘 | 时点 | 盘口 | 主水 | 客水 | | ------ | ----- | ---- | ---- |
このスキルを起動するキーワード。クリックでコピーできます。
このスキルにはトリガーワードがありません。
ダウンロードした .skill に含まれるフィールド。
| フィールド | 説明 |
|---|---|
| format | フォーマット識別子(skill/v1) |
| skill_id | スキル固有 ID |
| name | スキル名 |
| version | バージョン |
| description | 説明 |
| category | カテゴリ(配列) |
| trigger_words | トリガーワード |
| tags | タグ |
| source | ソース |
| source_url | ソース URL(本ページ) |
| exported_at | エクスポート日時(ダウンロード毎) |
| system_prompt | システムプロンプト本文 |
| model_config | モデル設定:provider / model / temperature / max_tokens / top_p |
| examples | サンプル |
| install_guide | 各プラットフォームの導入説明(Coze / Dify / Claude / カスタム) |