agentleFS
subarnasaikiasubarnasaikia/kaggle-skills/.claude/skills/new-competition/SKILL.md

new-competition

Skill2 starsChanged 6 months agoMITView on GitHub

Scaffold a new Kaggle competition subfolder under competitions/<slug>/ with CLAUDE.md, README, gitignore, submission log, and standard subdirs. Use when the user says "new competition", "start <slug>", "scaffold <slug>", or provides a Kaggle competition URL.

  • Installs packages

We split this skill into the rules it gives an agent

11 rules. About 0 are common, 4 are distinctive, and 7 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 7

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Resolve workspace root: Look for CLAUDE.md + .claude/ + .learnings/ by walking up from cwd.

    line 18
  2. Very specific:

    Check for existing folder: If competitions/<slug>/ already exists, ask user whether to overwrite or cd into it.

    line 19
  3. Distinctive:

    Fetch competition metadata: Prefer Kaggle MCP tools. CLI fallbacks:

    line 20
  4. Very specific:

    Use kaggle config unset -n competition to clear when switching.

    line 88
  5. Distinctive:

    Do not download data during scaffolding.

    line 97
  6. Distinctive:

    Do not submit anything.

    line 98
  7. Distinctive:

    Do not create the venv unless user confirms.

    line 99
  8. Very specific:

    Do not populate agents/ with starter code unless asked.

    line 100
  9. Very specific:

    Use agents/ folder with versioned subfolders (v1_baseline/, v2_search/ …).

    line 105
  10. Very specific:

    Add agents/baseline/agent.py only if user asks.

    line 106
  11. Very specific:

    Add models/ for checkpoints (gitignored if > 50 MB).

    line 119

≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Scaffolding a New Kaggle Competition

Inputs

The user provides one of:

  • Competition slug (e.g. titanic, lmsys-chatbot-arena).
  • Kaggle URL (e.g. https://www.kaggle.com/competitions/titanic/overview).

Extract <slug> from the URL segment after /competitions/.

Required steps

  1. Resolve workspace root. Look for CLAUDE.md + .claude/ + .learnings/ by walking up from cwd. If not found, ask the user for the workspace path.
  2. Check for existing folder. If competitions/<slug>/ already exists, ask user whether to overwrite or cd into it.
  3. Fetch competition metadata. Prefer Kaggle MCP tools. CLI fallbacks:
    • Fuzzy search (if slug is uncertain): kaggle competitions list -s <term>
    • List data files without downloading: kaggle competitions files <slug> Capture:
    • Title
    • Scoring metric + direction (higher-better / lower-better)
    • Submission file format (csv, notebook, agent.py, etc.)
    • Submission daily limit
    • Evaluation time limit (for simulation competitions)
    • Data file list (don't download yet)
    • Deadline
  4. Create directory skeleton:
    competitions/<slug>/
    ├── CLAUDE.md             # competition-specific rules
    ├── README.md
    ├── LEARNINGS.md          # competition-scoped learnings
    ├── .gitignore
    ├── data/                 # gitignored
    ├── agents/               # or models/ for tabular
    ├── notebooks/
    ├── replays/              # gitignored; for simulation competitions
    ├── experiments/
    │   └── EXPERIMENTS.md
    └── submissions/
        └── LOG.md
  5. Write competitions/<slug>/CLAUDE.md with competition-specific rules:
    • Scoring metric + how to optimize it locally
    • Submission format + validator command
    • Daily submission limit + "never auto-submit" rule
    • Evaluation time budget (if agent-based)
    • Known gotchas from overview/rules page
  6. Write competitions/<slug>/README.md with:
    • Competition title + link
    • One-paragraph summary
    • Metric, format, deadline
    • Quick start: how to download data, run local eval, submit
  7. Write competitions/<slug>/submissions/LOG.md header:
    # Submission Log — <competition-title>
    
    | Date | File | Message | Public Score | Notes |
    |------|------|---------|--------------|-------|
  8. Write competitions/<slug>/experiments/EXPERIMENTS.md header (see log-experiment skill for format).
  9. Write competitions/<slug>/LEARNINGS.md header (see .learnings/README.md for format).
  10. Write competitions/<slug>/.gitignore:
    data/
    .venv/
    replays/
    submissions/*.csv
    submissions/*.zip
    __pycache__/
    *.pkl
    *.pt
  11. Bootstrap Python env (only if user confirms):
    cd competitions/<slug>
    uv venv --python 3.11
    uv pip install kaggle kaggle-environments pandas numpy
  12. Pin the default competition so bare kaggle competitions <cmd> resolves to this slug:
    kaggle config set -n competition -v <slug>
    Use kaggle config unset -n competition to clear when switching. CLI 2.x requires -n/-v flags.
  13. Print summary to user:
    • Folder created
    • Metadata captured (metric, format, deadline)
    • Next suggested step: "Download data? y/n"
    • Do NOT auto-download.

Do NOT

  • Do not download data during scaffolding.
  • Do not submit anything.
  • Do not create the venv unless user confirms.
  • Do not populate agents/ with starter code unless asked.

Sub-type hints

Simulation / agent competition:

  • Use agents/ folder with versioned subfolders (v1_baseline/, v2_search/ …).
  • Add agents/baseline/agent.py only if user asks.
  • Mention kaggle-environments in README.
  • Note time-per-turn budget in CLAUDE.md.

Tabular competition:

  • Use models/ folder.
  • Mention sklearn / xgboost / lightgbm in README only if user asks for a stack.

Notebook-based submission:

  • Mention create_code_competition_submission MCP tool in CLAUDE.md.
  • Point submission workflow to notebook versioning.

NLP / CV competition:

  • Add models/ for checkpoints (gitignored if > 50 MB).
  • Note GPU constraints if running locally vs. Kaggle-hosted.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.