tennis-data

📁 machina-sports/sports-skills 📅 8 days ago
40
总安装量
38
周安装量
#9481
全站排名
安装命令
npx skills add https://github.com/machina-sports/sports-skills --skill tennis-data

Agent 安装分布

opencode 37
gemini-cli 37
codex 37
cursor 37
amp 36
github-copilot 36

Skill 文档

Tennis Data (ATP + WTA)

Quick Start

Prefer the CLI — it avoids Python import path issues:

sports-skills tennis get_scoreboard --tour=atp
sports-skills tennis get_rankings --tour=wta
sports-skills tennis get_calendar --tour=atp --year=2026

Important: Tennis is Not a Team Sport

Tennis data is fundamentally different from team sports (NFL, NBA, etc.):

  • Tournaments, not games: Events are multi-day tournaments containing many matches.
  • Individual athletes: Competitors are individual players (singles) or pairs (doubles), not teams.
  • Set-based scoring: Scores are per-set game counts (e.g., 6-4, 7-5), not quarters.
  • Rankings, not standings: Players have ATP/WTA ranking points, not team records.
  • No rosters or team schedules: Tennis has no team-level commands.

The tour Parameter

Most commands require --tour=atp or --tour=wta:

  • ATP: Men’s professional tennis tour
  • WTA: Women’s professional tennis tour

If the user doesn’t specify, default to atp for men’s tennis or wta for women’s tennis. If the user just says “tennis” without specifying, ask which tour or show both by calling the command twice.

Before complex fetches, run the parameter validator: bash scripts/validate_params.sh [args]

For detailed reference data, see the files in the references/ directory.

Workflows

Workflow: Live Tournament Check

  1. get_scoreboard --tour=<atp|wta>
  2. Present current matches by round.
  3. For player info, use get_player_info --player_id=<id>.

Workflow: Rankings Lookup

  1. get_rankings --tour=<atp|wta> --limit=20
  2. Present rankings with points and trend.

Workflow: Season Calendar

  1. get_calendar --tour=<atp|wta> --year=<year>
  2. Filter for specific tournament.
  3. get_news --tour=<tour> for latest coverage.

Examples

User: “What ATP matches are happening right now?”

  1. Call get_scoreboard(tour="atp")
  2. Present current tournaments and matches by round

User: “Show me the WTA rankings”

  1. Call get_rankings(tour="wta", limit=20)
  2. Present rankings with rank, name, points, and trend

User: “When is the French Open this year?”

  1. Call get_calendar(tour="atp", year=2026)
  2. Search results for “Roland Garros” (the French Open’s official name)

Error Handling & Fallbacks

  • If get_scoreboard returns no matches, tournaments run specific weeks. Use get_calendar to find when events are scheduled.
  • If rankings are empty, rankings update weekly on Mondays. The command auto-retries previous weeks.
  • If player profile fails, use get_rankings to verify the player_id.
  • Never fabricate match scores or rankings. If data is unavailable, state so.