kaggle

kaggle is a skill for Claude Code, Codex from fmind/dot. It costs 38 tokens per session (852 once invoked), scanned A, original, MIT.

A guide to using Kaggle’s command-line tool for competitions, datasets, notebooks, and machine-learning models. Kaggle is a platform where people share data and run data-science projects.

In plain words
What is it for?
Use it to authenticate, inspect competition and dataset files, download data, manage notebooks, and publish or submit approved work.
Why use it?
It limits downloads and requires clear authority for publishing or submitting work, reducing accidental data use or submissions.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/fmind/dot/kaggle
Any agent
npx skills add fmind/dot --skill kaggle
Clone the repo
git clone --depth 1 https://github.com/fmind/dot

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for kaggle

README.md
[![agentmods](https://agentmods.dev/badge/skills/fmind/dot/kaggle.svg)](https://agentmods.dev/skills/fmind/dot/kaggle)
Your own site
<a href="https://agentmods.dev/skills/fmind/dot/kaggle"><img src="https://agentmods.dev/badge/skills/fmind/dot/kaggle.svg" alt="Measured on agentmods" height="20"></a>
Per session 38 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 852 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00038 $0.00852
Opus 5 $0.00019 $0.00426
Sonnet 5 $0.00008 $0.00170
Haiku 4.5 $0.00004 $0.00085

Measured yesterday against content hash 20c2227c54e9, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

kaggle scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/kaggle/SKILL.md · 57 lines

How it starts

The opening of the file, as written. The whole thing — 57 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Kaggle CLI

Use kaggle for competition, dataset, kernel, and model operations from the shell. The official Kaggle skills document every command and metadata file; this skill owns authentication, download scope, and the authority boundary around submissions and publications.

Workflow

  1. Resolve the account: kaggle auth login (OAuth) or KAGGLE_API_TOKEN in the environment; the legacy ~/.kaggle/kaggle.json still works. Never run kaggle auth print-access-token during ordinary work.

  2. Read before writing: kaggle competitions list, kaggle competitions files <slug>, kaggle datasets files <owner>/<name>, and kaggle competitions submission-limits <slug> --json cost nothing and reveal the rules in force.

  3. Download into an ignored directory: accept the competition rules on the website first (the CLI returns 403 otherwise).

    kaggle competitions download <slug> -p data/
    kaggle datasets download <owner>/<name> -p data/ --unzip
    
  4. Kernels as code: kaggle kernels init -p <dir> writes kernel-metadata.json; kaggle kernels push -p <dir> publishes it; kaggle kernels status <owner>/<slug> and kaggle kernels output <owner>/<slug> -p out/ retrieve the run.

  5. Submit with authority: a submission counts against the daily limit and shows on the leaderboard, so confirm the competition, file, and message first, then verify.

    kaggle competitions submit <slug> -f submission.csv -m "<message>"
    kaggle competitions submissions <slug>
    
  6. Publish with authority: kaggle datasets create -p <dir> and kaggle datasets version -p <dir> -m "<message>" are private by default (--public flips it); confirm the license and visibility in the metadata before the first push.

Gotchas

  • Pinned version: in a project that pins kaggle, call uv run kaggle so the pinned version runs instead of the global shim.
  • Quota: kaggle quota shows the accelerator budget before a kernel push with --accelerator.
  • Scripts: pass -W to silence the out-of-date warning so JSON output stays parseable.

Read the full file on GitHub · 57 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 57 lines · 38 tokens per session scan A 20c2227c54e9

Subscribe to this mod's changes

kaggle is a skill published in the GitHub repository fmind/dot (4 stars, last pushed today), licensed MIT. It adds 38 tokens to every session and 852 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.