betting
Betting analysis — odds conversion, de-vigging, edge detection, Kelly criterion, arbitrage…
Sports news via RSS/Atom feeds and Google News. Fetch headlines, search by query, filter by date. Covers football news, transfer rumors, match reports, and any sport via Google News. Use when: user asks for recent news, headlines, transfer rumors, or articles about any sport.
$ npx -y skills add machina-sports/sports-skills --skill sports-news --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/sports-newsContext preview
The summary Claude sees to decide when to auto-load this skill.
Sports news via RSS/Atom feeds and Google News. Fetch headlines, search by query, filter by date. Covers football news, transfer rumors, match reports, and any sport via Google News. Use when: user asks for recent news, headlines, transfer rumors, or articles about any sport.
name: sports-news description: | Sports news via RSS/Atom feeds and Google News. Fetch headlines, search by query, filter by date. Covers football news, transfer rumors, match reports, and any sport via Google News. Use when: user asks for recent news, headlines, transfer rumors, or articles about any sport. Good for "what's the latest on [team/player]" questions. Supports any Google News query and curated RSS feeds (BBC Sport, ESPN, The Athletic, Sky Sports). Don't use when: user asks for structured data like standings, scores, statistics, or xG — use the sport-specific skill instead: football-data (soccer), nfl-data (NFL), nba-data (NBA), wnba-data (WNBA), nhl-data (NHL), mlb-data (MLB), tennis-data (tennis), golf-data (golf), cricket-data (cricket), cfb-data (college football), cbb-data (college basketball), or fastf1 (F1). Don't use for prediction market odds — use polymarket or kalshi. News results are text articles, not structured data. license: MIT metadata: author: machina-sports version: "0.1.0"
Before writing queries, consult `references/api-reference.md` for command parameters and `references/rss-feeds.md` for curated feed URLs.
Prefer the CLI — it avoids Python import path issues:
sports-skills news fetch_items --google_news --query="Arsenal transfer" --limit=5 sports-skills news fetch_feed --url="https://feeds.bbci.co.uk/sport/football/rss.xml"
Python SDK (alternative):
from sports_skills import news articles = news.fetch_items(google_news=True, query="Arsenal transfer news", limit=10) feed = news.fetch_feed(url="https://feeds.bbci.co.uk/sport/football/rss.xml")
CRITICAL: Before calling any news command, verify:
Derive the current date from the system prompt's date (e.g., `currentDate: 2026-02-16` means today is 2026-02-16).
| Command | Required | Optional | Description | |---|---|---|---| | `fetch_feed` | url | | Fetch an RSS/Atom feed by URL | | `fetch_items` | | google_news, query, url, limit, after, before, sort_by_date | Fetch news from Google News or an RSS feed |
1. `fetch_items --google_news --query="<topic>" --limit=5 --sort_by_date=True` 2. Present headlines with source and date.
1. `fetch_items --google_news --query="<topic>" --after=<7_days_ago> --sort_by_date=True --limit=10` 2. For curated sources, also try `fetch_feed --url="<rss_url>"`. 3. Cross-reference both for comprehensive coverage.
1. For each sport of interest, `fetch_items --google_news --query="<sport> results" --after=<7_days_ago> --limit=5`. 2. Aggregate and present by sport.
Example 1: Transfer news search User says: "What's the latest Arsenal transfer news?" Actions: 1. Derive `after` from `currentDate`: today minus 3 days 2. Call `fetch_items(google_news=True, query="Arsenal transfer news", after=<derived_date>, sort_by_date=True, limit=10)` Result: Recent Arsenal transfer headlines with source, date, and links
Example 2: Curated RSS feed User says: "Show me BBC Sport football headlines" Actions: 1. Call `fetch_feed(url="https://feeds.bbci.co.uk/sport/football/rss.xml")` Result: BBC Sport football feed title, last updated, and recent articles
Example 3: Date-filtered news User says: "Any Champions League news from this week?" Actions: 1. Derive `after` from `currentDate`: today minus 7 days 2. Call `fetch_items(google_news=True, query="Champions League", after=<derived_date>, sort_by_date=True, limit=10)` Result: Champions League articles from the last 7 days, sorted newest first
If a command is not listed in the Commands table above, it does not exist.
Error: Google News returns empty results Cause: `query` is missing or too narrow, or `google_news=True` is not set Solution: Ensure `google_news=True` AND a `query` are both set. Try broader keywords (e.g., "Arsenal" instead of "Arsenal vs Chelsea goal")
Error: RSS feed returns an error Cause: The feed URL may be temporarily down or the URL format has changed Solution: Use Google News (`fetch_items` with `google_news=True`) as a fallback for the same topic
Error: Articles returned are old despite using "recent" query Cause: `sort_by_date=True` is not set, or the `after` date filter is missing Solution: Add `sort_by_date=True` and `after=<today - 3 days>` to ensure newest articles appear first
Open-source agent skills for live sports data and prediction markets. Built for the Agent Skills spec. Works with sportsclaw, OpenClaw, Claude Code, Cursor, Copilot, Gemini CLI, Hermes Agent, and every major AI agent. Zero API keys. Zero signup.
Betting analysis — odds conversion, de-vigging, edge detection, Kelly criterion, arbitrage…
College Basketball (CBB) data via ESPN public endpoints and the NCAA's official endpoints —…
College Football (CFB) data via ESPN public endpoints and the NCAA's official endpoints —…
Cricket data via ESPN public endpoints and Cricsheet open data — live-ish series scoreboards,…
Esports data — Dota 2 (OpenDota) and League of Legends esports (Leaguepedia). Pro matches,…
Formula 1 data — race schedules, results, lap timing, driver and team info. Powered by the…