Kaggle Agent Skill
End-to-end Kaggle integration for AI coding agents: competition research, dataset/model downloads, notebook execution, submissions, writeup retrieval, and badge collection in one skill.
Evidence shows solid security design: scoped allowed-tools, explicit-intent gating for writes, dry-run defaults, credential non-echoing, zip-slip protection, untrusted-content markers, with test filenames cited (full test bodies not read). Deductions: submissions and badge farming directly modify the user's Kaggle account and submit placeholder predictions (e.g. all-zero Titanic), carrying quota/visibility risk despite confirmation requirements; publisher identity unverified.
Scripts are internally consistent with reasonable error handling, status tracking (badge_tracker), readable failure messages, and skip/fallback logic. Deductions: static review only — key paths (CLI output parsing, kagglehub upload, Playwright phase) depend on external services with brittle format assumptions; badge-catalog has internal inconsistency (55 vs 59); one script is truncated in evidence, so completeness cannot be confirmed.
Precise trigger description (explicitly excludes non-Kaggle tasks), clear module routing, broad compatibility claims, and a clear non-fit boundary (17 non-automatable badges). Deductions: core function depends entirely on overseas services (api.kaggle.com, www.kaggle.com), a real mainland-China reachability limitation not discussed; Playwright MCP tools assumed from the host agent add environmental conditions.
Well-layered docs (SKILL.md → module READMEs → references), MIT license, version 2.4.0 consistent with pyproject, explicit unofficial disclaimer, SECURITY.md and privacy statement. Deductions: no CHANGELOG or explicit maintenance commitment; minor factual inconsistencies (badge counts); troubleshooting/testing coverage partly asserted only via README.
Core workflows (competition page summaries, dataset downloads, discussion retrieval) have concrete command examples and demo screencasts claimed; marginal value over manual browsing is plausible. Deductions: static review cannot verify output quality; badge automation has limited practical benefit with some steps marked manual; demos are author-recorded and not independently verifiable.
Repo includes a test directory, a security-test matrix, pytest markers (live/destructive/manual), and reproducible command paths. Deductions: actual test bodies and CI config were not present in the evidence; demo casts and the '70 MCP tools verified 2026-07-03' claim are author assertions, so more than 5 cannot be awarded on a static read.
- Badge collection and competition submission flows directly modify the user's Kaggle account (creating private resources, consuming submission slots) — confirm each action before execution.
- Submitted prediction files are placeholders (e.g. all-zero Titanic predictions) and could affect account standing or violate some competition rules; do not use against real competitions casually.
- Core functionality depends on api.kaggle.com and www.kaggle.com, which may be unreachable from mainland-China networks without additional networking.
- This is a static review with no execution; minor inconsistencies exist (badge count 55 vs 59) — verify details before use.
- Publisher identity is unverified by the FollowSkills registry (unknown, not suspicious); additional due diligence is advised for enterprise adoption.
What does this skill do, and when should you use it?
An independent, unofficial Kaggle skill for agentic coding systems, maintained by shepsci under the MIT license. It packages credential setup, competition reports, dataset/model operations, notebook publishing and execution, discussion and writeup retrieval, benchmark workflows, and badge collection into modular scripts. Tested platforms include Claude Code, Codex, OpenClaw, Antigravity CLI, and Gemini CLI, with distribution via skills.sh and ClawHub to 35+ agents. Security is taken seriously: credentials never leak to logs, Kaggle-supplied text is wrapped as untrusted content, and account-visible writes require explicit confirmation. It is not affiliated with or endorsed by Kaggle or Google.
Runs a credential checker against KAGGLE_API_TOKEN; calls the Kaggle CLI, kagglehub, and the remote Kaggle MCP endpoint (70 tools verified per the README) to fetch competition pages, generate landscape reports, download and publish datasets/models, publish and poll Kaggle notebook runs, scrape forum topics and leaderboard writeups, drive the kaggle benchmarks CLI for task creation and model runs, and execute a phased badge orchestrator with --dry-run support. Every script that emits Kaggle text wraps it in <untrusted-content> markers.
- A competition participant wants an agent to summarize the rules and evaluation metric of a competition like Titanic before deciding to enter.
- A solution author needs to pull writeups linked to the top-ranked submissions of a competition for study or reference.
- A researcher wants to batch-download Kaggle datasets or models to local disk for notebook work.
- A Kaggle Kernels user wants an agent to push a notebook, poll its execution, and fetch the outputs.
- A badge collector wants an API-first, dry-run-first workflow for safely completing badge phases.
What are this skill's strengths and limitations?
- Full Kaggle lifecycle coverage: account, competitions, datasets, models, notebooks, discussions, benchmarks, badges.
- Security claims are backed by actual test files: no credential leakage, no dynamic eval, zip-slip protection, slug validation.
- External Kaggle content is consistently wrapped in untrusted-content markers, reducing prompt-injection risk.
- Multiple distribution channels (Claude, Codex, skills.sh, ClawHub) plus replayable asciinema demos for verification.
- Independent and unofficial; unaffiliated with Kaggle/Google, so API changes can break scripts at any time.
- Some SPA-scraping steps in the competitions module assume Playwright MCP tools are provided by the host agent; the skill does not bundle them.
- Hermes, Cursor, GitHub Copilot and others are only listed as "compatible" with no test evidence; badge phases can create profile-visible state.
- Benchmark lifecycle commands consume quota and create resources, adding a usage burden documented in separate READMEs.
How do you install this skill?
Claude Code: run /plugin marketplace add shepsci/kaggle-skill then /plugin install kaggle@shepsci. Codex: codex plugin marketplace add shepsci/kaggle-skill --ref main then codex plugin add kaggle@shepsci. skills.sh: npx skills add shepsci/kaggle-skill. ClawHub: clawhub install kaggle. Manual: git clone https://github.com/shepsci/kaggle-skill.git, pip install kagglehub>=1.0.0, kaggle>=2.2.3, kagglesdk>=0.1.33,<1.0, python-dotenv, requests; if your agent lacks plugin support, copy the skills/kaggle/ folder into your agent's skills directory.
How do you use this skill?
Generate a token at kaggle.com/settings, store it in ~/.kaggle/access_token (chmod 600) or export KAGGLE_API_TOKEN, then verify with python3 modules/setup/scripts/check_all_credentials.py. Trigger it in natural language, e.g. "Use the Kaggle skill to summarize the rules and evaluation metric for the Titanic competition" or "retrieve the writeups from the top 3 ranked submissions in the Vesuvius Challenge surface detection competition". You can also call module scripts directly, such as python3 modules/competitions/scripts/competition_pages.py --competition titanic --summary. Write actions (submissions, publishing, badges) require explicit intent and a dry run first.