关于 cfb-data
cfb-data 是面向大学美式足球数据查询的 skill,通过 sports-skills CLI 获取比分、排名、球队及比赛详情。它还提供 NCAA 官方数据接口,覆盖 FBS、FCS 和各级别学校目录。
主要功能
- 01查询比分、赛程和分区排名
- 02获取球队名单及球员与球队统计
- 03查看比赛摘要和逐场比赛记录
- 04查询伤病、新闻及未来赛赔率
- 05通过 NCAA 接口查询 FBS、FCS 数据
适用场景
- 01查看本周大学美式足球比分
- 02查询某联盟积分榜或球队赛程
- 03分析球队或球员赛季数据
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ machina-sports/ sports-skills --skill cfb-data安装后在 Claude Code 中输入/cfb-data确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/api-reference.mdconference-ids.mdteam-ids.mdscripts/validate_params.sh详细介绍
College Football Data (CFB)
编写查询前,请查阅 references/api-reference.md,了解端点、大会 ID、球队 ID 和数据结构。
设置
首次使用前,检查 CLI 是否可用:
which sports-skills || pip install sports-skills
如果 pip install 因 Python 版本错误而失败,则该软件包需要 Python 3.10 或更高版本。请查找兼容的 Python 版本:
python3 --version # check version
# If < 3.10, try: python3.12 -m pip install sports-skills
# On macOS with Homebrew: /opt/homebrew/bin/python3.12 -m pip install sports-skills
无需 API 密钥。
快速开始
优先使用 CLI,可避免 Python 导入路径问题:
sports-skills cfb get_scoreboard
sports-skills cfb get_rankings
sports-skills cfb get_standings --group=8
重要:执行任何查询前
重要:调用任何数据端点前,请确认:
- 赛季年份根据系统提示中的
currentDate推导得出,绝不可硬编码。 - 查询排名时,
group参数应设为正确的大会 ID(参见references/api-reference.md)。 - 如果只提供了球队名称,请使用
get_teams获取球队 ID。
选择赛季
根据系统提示中的日期推导当前年份(例如,currentDate: 2026-02-28 → 当前年份为 2026)。
- 如果用户指定了赛季,请按原样使用。
- 如果用户说“当前”“本赛季”或未指定赛季:CFB 赛季从 8 月持续至次年 1 月。如果当前月份为 2 月至 7 月(休赛期),请使用
season = current_year - 1。从 8 月起,使用当前年份。
重要:大学联赛与职业联赛的区别
- 排名按大会划分——使用
group参数进行筛选 - 排名榜取代领跑者榜单——大学联赛使用 AP Top 25、Coaches Poll 和 CFP 排名
- 排名球队在记分板参赛方数据中有一个
rank字段(null = 未排名) - 按周安排赛程——与 NFL 类似,大学橄榄球使用周数
命令
| 命令 | 说明 |
|---|---|
get_scoreboard | 实时/近期大学橄榄球比分 |
get_standings | 按大会划分的排名(使用 group 参数) |
get_teams | 所有 750 多支 FBS 大学橄榄球队 |
get_team_roster | 球队完整名单 |
get_team_schedule | 指定球队的赛程 |
get_game_summary | 详细的比赛统计和得分回合 |
get_rankings | AP Top 25、Coaches Poll、CFP 排名 |
get_news | 大学橄榄球新闻 |
get_play_by_play | 比赛完整逐档记录 |
get_win_probability | 已结束比赛的胜率变化时间线 |
get_schedule | 按周划分的赛季赛程 |
get_injuries | 所有球队的伤病报告 |
get_futures | 未来赛事/赔率市场(全国冠军、海斯曼奖等) |
get_team_stats | 球队统计资料 |
get_player_stats | 球员统计资料 |
get_ncaa_scoreboard | NCAA 官方记分板——FBS 和 FCS |
get_ncaa_schedule | 哪些周有比赛(官方索引) |
get_ncaa_game | NCAA 官方比赛信息 |
get_ncaa_boxscore | NCAA 官方比赛统计 |
get_ncaa_play_by_play | 含进攻回合背景信息的官方逐档记录 |
get_ncaa_scoring_summary | 官方得分摘要 |
get_ncaa_schools | NCAA 学校索引(所有级别) |
完整参数列表和返回结构请参阅 references/api-reference.md。
官方 NCAA 后端
get_ncaa_* 命令读取 NCAA 自有端点(sdataprod.ncaa.com +
ncaa.com),可提供 ESPN 未覆盖的数据:
- 通过
division="fcs"获取 FCS 比分板——ESPN 的大学橄榄球覆盖以 FBS 为主。 - 官方比赛详情:
get_ncaa_game、get_ncaa_boxscore、get_ncaa_play_by_play(含进攻推进上下文)、get_ncaa_scoring_summary。 - 学校索引(约 1,200 所学校,涵盖所有级别):
get_ncaa_schools。
NCAA 比赛 ID(例如来自 get_ncaa_scoreboard 的 6306261)与 ESPN 赛事 ID
毫无关联——请根据比赛日期和球队名称进行匹配。NCAA 会重新分配比赛 ID,因此应从最新的 get_ncaa_scoreboard 调用中获取,不要保存这些 ID。橄榄球的级别为 fbs/fcs(而非 d1-d3)。get_ncaa_schedule 使用 get_ncaa_scoreboard 接受的周数(16 周及以后的比赛属于季后赛,包括 FCS 季后赛)。得分摘要中的射门得分包含 distance_yards,该数据取自逐场比赛记录。除 get_ncaa_schools 外,所有 get_ncaa_* 命令都使用 NCAA 的 GraphQL 持久化查询,其哈希值会在 ncaa.com 重新部署时轮换;发生这种情况时,它们会明确说明,而由 ESPN 提供数据的 get_scoreboard /
get_schedule 可覆盖相同的 FBS 比赛。
示例
示例 1:当前排名 用户说:“大学橄榄球排名如何?” 操作:
- 调用
get_rankings()结果:美联社前 25 名、教练投票排名和 CFP 排名,包含名次、上一期名次及战绩
示例 2:联盟排名 用户说:“给我看看 SEC 橄榄球排名” 操作:
- 根据
currentDate推导赛季年份 - 调用
get_standings(group=8, season=<derived_year>)(group 8 = SEC) 结果:SEC 排名,包含各队的胜负战绩
示例 3:球队赛程 用户说:“阿拉巴马队本赛季的赛程是什么?” 操作:
- 根据
currentDate推导赛季年份 - 调用
get_team_schedule(team_id="333", season=<derived_year>)结果:阿拉巴马队的完整赛季赛程,包含对手、日期和比分(如已赛)
示例 4:每周比分 用户说:“给我看看本周的大学橄榄球比分” 操作:
- 调用
get_scoreboard()结果:所有正在进行和近期的 CFB 比赛及其比分和排名状态
示例 5:海斯曼奖热门人选 用户说:“谁是海斯曼奖热门?” 操作:
- 调用
get_futures(limit=10)结果:海斯曼奖最热门候选人及赔率数值
示例 6:球队统计数据 用户说:“给我看看阿拉巴马队的球队统计数据” 操作:
- 根据
currentDate推导赛季年份 - 调用
get_team_stats(team_id="333", season_year=<derived_year>)结果:阿拉巴马队各类别的赛季统计数据,包含数值、排名和场均数据
不存在的命令——绝不要调用
/get_odds——不可用。要查询预测市场赔率,请使用 polymarket 或 kalshi 技能。get_betting_odds——不存在。请改用search_teamsget_teams。——不存在。请改用get_box_scoreget_game_summary。——不存在。请改用get_player_ratingsget_player_stats。/get_bcs_rankings——不存在。请改用get_playoff_rankingsget_rankings。
如果某条命令未列在上方的命令表中,则该命令不存在。
错误处理
命令失败时,不要向用户显示原始错误。应当:
- 如果未找到某日期的赛事,检查是否处于休赛期(CFB 赛季为 8 月至 1 月)
- 如果未指定分组时排名结果为空,请尝试指定具体的联盟分组
- 穷尽替代方案后,才用清晰简洁的信息说明失败
故障排除
错误:找不到 sports-skills 命令
原因:未安装软件包
解决方案:运行 pip install sports-skills
错误:未找到比赛
原因:CFB 有赛季(8 月至 1 月);休赛期的比分板将为空
解决方案:全年使用 get_rankings 或 get_news;使用 get_schedule 查找赛季开始时间
错误:返回的球队过多
原因:get_teams 会返回 750 多支 FBS 球队
解决方案:通过建议用户使用 references/api-reference.md 中的特定球队 ID,帮助用户缩小范围;或者使用 ESPN URL 查询 ID
错误:休赛期排名为空
原因:排名仅在赛季期间和休赛期初发布
解决方案:休赛期使用 get_news;排名会在 8 月恢复发布