mcpField
W
world-cup-predictor

world-cup-predictor

github.com/agentara其他62080 次安装4 周前更新
代码仓库

关于 world-cup-predictor

这是一项 Codex 技能,用于协调实时世界杯预测室,并在网页仪表板汇总主 Agent 与子 Agent 的分析。它将已结束比赛与预测区分开,并保存更新以供回放。

主要功能

  1. 01实时预测仪表板
  2. 02并行分析小组赛与单场比赛
  3. 03收集新闻、市场和天气信号
  4. 04锁定已结束比赛结果
  5. 05快照历史与回放

适用场景

  1. 01预测从小组赛到决赛的赛事进程
  2. 02随分析结果跟踪阶段性预测
  3. 03回顾预测随时间的变化

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/agentara/skills --skill world-cup-predictor

安装后在 Claude Code 中输入/world-cup-predictor确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
assets/dashboard/
app.js
index.html
styles.css
assets/dashboard/data/
final-subagent-dashboard.json
groups.json
live-state.json
locked-results.json
partial-subagent-dashboard.json
predictions.json
signals.json
source-log.json
third-place-annex-c.json
references/
agent-native-workflow.md
dashboard-data-contract.json
prediction-schema.json
research-protocol.md
subagents.md
worldcup-2026-groups.json
scripts/
bootstrap_worldcup.py
build_final_forecast.py
collect_signals.py
merge_predictions.py
publish_dashboard.py
replay_history.py
set_live_state.py
start_dashboard.py
sync_locked_results.py
validate_skill.sh
tests/
test_skill_regressions.py

详细介绍

世界杯预测器

概述

使用此技能运行一个原生支持 Agent 的世界杯预测室。调用此技能的 Codex Agent 会先启动 Web 仪表板,收集当前信号,生成子 Agent 进行独立分析,并在收到子 Agent 结果后,将每次预测更新发布到页面。

不得使用确定性、静态或硬编码的预测替代。模型推理必须来自当前 Codex Agent 及其子 Agent。

默认操作

对于“预测这届世界杯”“预测本届赛事走势”“谁会获胜”或“预测这一届世界杯走向”等宽泛请求:

  1. 首先启动仪表板服务。
    • 在技能根目录下,于一个长期运行的前台工具会话中运行 python3 scripts/start_dashboard.py --port 8789。
    • 如果 8789 端口已被占用,辅助程序会选择下一个可用端口。报告打印出的 URL。
    • 不要依赖使用 & 在 Shell 中将进程置于后台;某些 Codex Shell 会在浏览器连接前清理已分离的进程。
  2. 初始化页面状态。
    • 运行 scripts/bootstrap_worldcup.py --out assets/dashboard/data。
    • 运行 scripts/set_live_state.py --stage kickoff --message "Starting subagent World Cup prediction room" --progress 0.03。
  3. 锁定已结束的比赛结果。
    • 从官方或可靠的实时比分来源核实已结束比赛的结果。
    • 使用 scripts/sync_locked_results.py 将结果写入 assets/dashboard/data/locked-results.json。
    • 不要让子 Agent 预测已锁定的比赛。
  4. 收集当前信号。
    • 运行 scripts/collect_signals.py --out assets/dashboard/data/signals.json。
    • 如果 signals.json 包含 status: "fallback-required" 的 Polymarket 行,或包含 status: "missing ODDS_API_KEY" 的赔率数据,请保留这些行,并让市场子 Agent 手动查看其中列出的公开页面。不要将空市场数据视为零概率。
    • 运行 scripts/set_live_state.py --stage signal-collection --message "Collected news, markets, weather, and optional odds" --progress 0.10。
  5. 阅读 references/agent-native-workflow.md、references/research-protocol.md 和 references/dashboard-data-contract.json。
  6. 使用 references/agent-native-workflow.md 中的分层工作流生成子 Agent。
    • 将 markets 和 news-weather 保留为辅助信号 Agent。
    • 对于小组赛,每个小组生成一个子 Agent(从 group-a 到 group-l)。
    • 对于淘汰赛,为当前轮的每场比赛生成一个子 Agent,并逐轮推进,直到决赛。
    • 半决赛胜者确定后,由一个决赛子 Agent 预测决赛结果。
  7. 收到子 Agent 结果后,使用 scripts/publish_dashboard.py 发布部分仪表板 JSON。
    • 如果子 Agent 首轮等待时间过长,请继续以更长的间隔等待,并发布实时状态心跳更新,让仪表板保持运行。
    • 不要仅为强行获得精简结果而中断响应较慢的角色 Agent。只有在明确失败、子 Agent 工具不可用或用户要求停止等待后,才综合生成缺失角色的结果。
  8. 最终输出必须包含已确定的结果,以及剩余赛事完整路径的预测。
  9. 使用 scripts/publish_dashboard.py --complete 发布最终数据。
  10. 运行本地回归检查,然后在 Browser 插件中验证仪表板和回放控件。

回归检查

发布最终仪表板数据后,运行本地回归测试套件:

python3 -m unittest discover -s tests -v

如果从仓库根目录而非技能根目录调用,请使用:

python3 -m unittest discover -s world-cup-predictor/tests -v

这些测试使用 Python 标准库中的 unittest 框架。除非未来的依赖文件明确添加了 pytest,否则不要要求使用它。将缺少 pytest 视为环境或工具问题,而非回归测试失败。

预测约定

  • 网页是实时展示界面。工作进行期间,通过更新 assets/dashboard/data/live-state.json 和 assets/dashboard/data/predictions.json,让页面持续变化。
  • 发布预测和实时状态更新时,会将快照追加到 assets/dashboard/data/replay.json;整个运行期间都要保留此文件,以便完成后的仪表板回放预测过程。
  • 子 Agent 的推理是预测引擎。不要用确定性评分或硬编码预测取代它。
  • 已结束的比赛是已确认结果,不是预测。预测前锁定这些比赛,并将其排除在子 Agent 的预测范围之外。
  • 每个比赛数据包都必须包含概率、预测比分、赛事时间线、势头、证据、风险和环境因素。
  • 最终仪表板 JSON 必须符合 references/dashboard-data-contract.json。
  • 如果子 Agent 工具不可用,则由主 Agent 执行相同的分析,并说明无法并行处理。

证据规则

  • 为每个来源注明日期。世界杯赛事正在进行,信息变化很快。
  • 区分已观察到的结果与预测。已进行的比赛必须锁定为事实。
  • 标记缺失或过时的数据,不要用猜测填补。
  • 如果实时数据连接器失败,则使用 signals.json 中明确列出的备用 URL,并在仪表板叙述中说明连接器故障。
  • 对于 Polymarket 和赔率信息,记录市场标题、URL、时间戳、可见时的流动性/交易量、价格和归一化隐含概率。
  • 对于战术论断,引用具体对位因素:抗压能力、组织进攻阵型、转换防守、定位球、边路人数优势、门将传球、阵容轮换、海拔/旅途/休息时间以及停赛风险。
  • 对于模拟论断,尽可能注明每个事件背后的因素:高温导致的疲劳、湿度导致的节奏下降、伤病限制、定位球对位劣势、替补席深度、门将特点或战术调整。

资源

  • references/agent-native-workflow.md:适用于可生成子 Agent 的 Codex Agent 的默认免密钥工作流。
  • references/research-protocol.md:来源检查清单、概率校准和置信度评估标准。
  • references/subagents.md:子 Agent 的角色提示词和交接约定。
  • references/prediction-schema.json:比赛级 Agent 输出的 JSON 约定。
  • references/dashboard-data-contract.json:仪表板级赛事预测的 JSON 约定。
  • references/worldcup-2026-groups.json:小组赛初始快照。
  • scripts/bootstrap_worldcup.py:创建仪表板数据脚手架。
  • scripts/start_dashboard.py:在 8789 端口或下一个空闲端口启动静态仪表板。
  • scripts/collect_signals.py:收集当前新闻 RSS、Polymarket、天气和可选赔率信号。
  • scripts/set_live_state.py:更新仪表板播报条。
  • scripts/replay_history.py:追加仪表板快照,以供运行后回放。
  • scripts/sync_locked_results.py:维护已结束且不应进行预测的比赛结果。
  • scripts/publish_dashboard.py:发布由部分或全部子 Agent 推导出的仪表板预测。
  • scripts/merge_predictions.py:子 Agent 输出重叠时,合并各角色的比赛数据包。
  • scripts/validate_skill.sh:创建本地虚拟环境、安装验证依赖并运行官方技能验证器。
  • assets/dashboard/:静态实时仪表板。

评论

支持 Markdown