anycap-ai/anycap

anycap-worldcup-predict

World Cup match prediction and pre-match intel for football (soccer) fans: predict who will win and a likely scoreline, backed by structured, verifiable evidence -- player profiles, squad dossiers, current form, head-to-head records, and past-tournament his…

소스 보기
원본 Skill 문서

원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.

AnyCap World Cup Predict

Read this entire file before starting. It defines a reliable workflow for turning a player name (or a whole squad) into structured, verifiable World Cup pre-match intel using AnyCap, then optionally calling a winner and scoreline for fun.

World Cup match prediction and pre-match intel for serious football fans. Turn player names and lineups into structured, verifiable profiles, stats, and matchup briefings so you can read a World Cup matchup before kickoff -- then, if you want, finish with a for-fun prediction (likely winner + scoreline + confidence). Built for World Cup squads and national-team lineups, and works for any footballer.

This skill is about how to retrieve and verify player data. For CLI command reference (flags, output, jq), read the anycap-cli skill and its references/search.md / references/crawl.md.

This skill surfaces public information (profiles, form, historical stats) and can finish with an optional for-fun prediction (likely winner + a playful scoreline) derived from that data. It does not set betting odds, output win probabilities as if they were facts, or place wagers. Every prediction must ship with the disclaimer in predict.md. Treat everything as informational and form your own judgment.

Prerequisites

  • anycap CLI installed and authenticated (anycap status to verify). Read the anycap-cli skill if setup is needed.
  • jq for parsing JSON output.

Core Principle: Search Less, Not Faster

Do not crawl the whole web for every player. Narrow the search space first, then retrieve only what matters:

  1. Grounding first -- ask for a structured profile in one shot (anycap search --prompt). This is the fastest path to clean data.
  2. Disambiguate -- when a name is shared by several players, add context (nationality, position, birth year, club) to lock onto the right one.
  3. Verify only when accuracy matters -- cross-check against an authoritative, crawlable source (Wikipedia) instead of trusting a single answer.
  4. Prune, don't dump -- in batch mode, fetch one structured profile per player; never crawl every search result.

Workflow

GoalRouteReference
One player's basic infoGrounding structured JSONlookup.md
Right player when name is sharedAdd context / pre-scan with --querylookup.md
High-accuracy, sourced profileCross-check vs Wikipediaverify.md
A whole squad / rosterLoop grounding, aggregate to tablebatch.md
Career + current World Cup statsGrounding stats JSON (with caveats)stats.md
Size up a matchup (Team A vs Team B)Build both squads via batch, compare side by sidebatch.md
Add past World Cup contextFormat, group + knockout results, key players, team history, head-to-headhistory.md
Call a winner + scoreline (for fun)Weigh the gathered layers (plus any user-defined dimensions), then predict with a mandatory disclaimerpredict.md

For a matchup, run the squad workflow for both teams, then layer in historical context (tournament track record + head-to-head from history.md). Present three layers side by side -- squad quality, current form, historical context -- and highlight differences in key positions and availability. Then, if a prediction is wanted, finish with an optional for-fun call (likely winner + playful scoreline + confidence) per predict.md. Always keep the factual layers clearly separated from the prediction, and always attach the disclaimer.

Fast path (single player)

bash
anycap search --prompt 'Give the basic profile of footballer Jude Bellingham as JSON with fields: full_name, date_of_birth, nationality, height, position, current_club, shirt_number, national_team. Only the JSON.' \
  | jq -r '.data.content'

Returns (verified):

json
{
  "full_name": "Jude Victor William Bellingham",
  "date_of_birth": "2003-06-29",
  "nationality": "English",
  "height": "1.86 m",
  "position": "Midfielder",
  "current_club": "Real Madrid",
  "shirt_number": 5,
  "national_team": "England"
}

Grounding search costs 5 credits per call. General search (--query) and crawl cost 1 credit each.

Output Schema

Normalize every profile to this schema so single-player and batch results are consistent:

FieldTypeNotes
full_namestringLegal/full name
date_of_birthstringYYYY-MM-DD; use null if unknown
nationalitystringPrimary nationality
heightstringe.g. 1.86 m; null if unknown
positionstringe.g. Midfielder, Goalkeeper
current_clubstringClub as of retrieval date
shirt_numberint/nullClub or national-team number
national_teamstringNational team

Rules:

  • Use null for missing fields. Never invent values.
  • current_club and shirt_number change frequently -- treat them as point-in-time and note the retrieval date.
  • When a field cannot be confirmed, mark it and (if accuracy matters) verify via verify.md.

Important: Source Reliability (verified)

  • Wikipedia is reliably crawlable (anycap crawl https://en.wikipedia.org/wiki/<Player> returns full Markdown). Use it as the primary verification source.
  • Transfermarkt blocks crawling -- anycap crawl returns a short Human Verification page, not data. Do not rely on crawling it; use grounding search or Wikipedia instead.
  • Other stats sites may also bot-block. Always check the crawled title/length before trusting content.

Prediction (for fun)

After the factual layers, you may add an optional, clearly-labeled prediction so the briefing is fun to read. See predict.md for the method and the required disclaimer. Non-negotiable rules:

  • Facts first, prediction last. Never blend the guess into the data tables; put it in its own clearly-marked block.
  • Always attach the disclaimer from predict.md. A prediction without the disclaimer is incomplete output.
  • Entertainment, not betting. Do not present win probabilities or odds as facts, do not give wagering advice, and do not tell anyone to bet.
  • Show the reasoning. Base the call on the gathered signals (ranking, form, head-to-head, key players), not a coin flip.
  • Let the user steer. Users can add, drop, or re-weight prediction dimensions (e.g. home advantage, injuries, rest, weather, "vibes"). Honor their weights, retrieve any missing data first, and list the final dimension set used. See predict.md.

Limitations

  • Live data (current club, shirt number, latest stats) reflects whatever the web returns at call time and can lag real events.
  • Grounding stats numbers are best-effort and can be approximate; verify critical figures against Wikipedia.
  • Generic player names need disambiguation context or the wrong person may be returned.
  • This skill retrieves data on demand; it is not a stored database of all players.

Quick Reference

ToolPurpose
anycap search --prompt "...JSON..."Structured profile / stats in one shot (5 cr)
anycap search --query "..." --no-crawlFind/disambiguate the right player page (1 cr)
anycap crawl https://en.wikipedia.org/wiki/<Player>Authoritative verification source (1 cr)
anycap statusCheck auth before a batch run
같은 저장소의 Skills

더 많은 Skills

모든 Skills