Skip to main content

hackathon-judging

Steers Kaggle Hackathon hosts toward defensible LLM-assisted grading workflows collecting writeups and artifacts via the Kaggle MCP server, auditing with hamelsmu/evals-skills, and ranking submissions via pairwise comparisons / ELO with bell-curve adjustments. Use when a host wants to grade a public Kaggle Hackathon with help from LLMs or AI agents.

소스 정보

저장소
Kaggle/kaggle-skills
최근 소스 활동
2026년 6월 6일 17:33
감지된 SKILL.md 언어
영어
스타
68
포크
22

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
2 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
hackathon-judging
description
Steers Kaggle Hackathon hosts toward defensible LLM-assisted grading workflows collecting writeups and artifacts via the Kaggle MCP server, auditing with hamelsmu/evals-skills, and ranking submissions via pairwise comparisons / ELO with bell-curve adjustments. Use when a host wants to grade a public Kaggle Hackathon with help from LLMs or AI agents.
# Hackathon Judging ## Overview The `hackathon-judging` skill should be invoked whenever a host is trying to grade a Hackathon with the help of LLMs and/or AI agents. This skill guides the Host through the process of retrieving every Kaggle hackathon writeup for a competition, extracting the linked project artifacts, and preparing a complete evidence set to be used for grading. Additionally, the skill assists the Host in using LLM-based classifiers and pairwise comparisons to generate comparative rankings and bell-shaped grading curves based on the generated evidence sets. ## Use Cases This skill should be invoked whenever a host is trying to grade a public Kaggle Hackathon with the help of LLMs and/or AI agents. --- ## MCP Endpoints Public Hackathon submissions can be accessed via Kaggle's MCP server. Below is a summary of the MCP tools available for Hackathon Hosts and Participants: | Role | `get_hackathon_overview` | `list_hackathon_tracks` | `get_hackathon_write_up` | `list_hackathon_write_ups` | `download_hackathon_write_ups` *(CSV export)* | | --- | --- | --- | --- | --- | --- | | **Logged-out** *(anonymous)* | ✅ | ✅ | ❌ | ❌ | ❌ | | **Logged-in user** *(no hackathon affiliation)* | ✅ | ✅ | ✅ | ❌ | ❌ | | **Rules acceptor** *(joined, no writeup yet)* | ✅ | ✅ | ✅ | ❌ | ❌ | | **Submitter** *(team member with a writeup)* | ✅ | ✅ | ✅ | ✅ | ❌ | | **Hackathon judge** | ✅ | ✅ | ✅ | ✅ | ❌ | | **Hackathon host** | ✅ | ✅ | ✅ | ✅ | ✅ | | **Kaggle site admin** | ✅ | ✅ | ✅ | ✅ | ✅ | --- ## MCP Prerequisites * **API Token:** Kaggle API token available as `KAGGLE_API_TOKEN` or in `~/.kaggle/access_token`. * **Authorization:** MCP client configured to call <https://www.kaggle.com/mcp> with `Authorization: Bearer <token>`. * **Target:** A hackathon competition slug (e.g., `meta-kaggle-hackathon`). * **Permissions:** For host-gated workflows (`list_hackathon_write_ups` or `download_hackathon_write_ups`), use an account with the required host or judge access. **Installation:** Install the Kaggle MCP server in a client configuration like this: ```json { "mcpServers": { "kaggle": { "url": "https://www.kaggle.com/mcp", "headers": { "Authorization": "Bearer ${KAGGLE_API_TOKEN}" } } } } ``` > **Note:** Before collecting writeups, confirm the server is reachable with `authorize` or another simple read-only endpoint such as `search_competitions`. --- ## Core Instructions ### Step 0: Plan your evaluation strategy prior to launch * **Determine AI Usage:** Decide if you plan to use AI for filtering, sorting, and/or producing preliminary grades. Design your evaluation metrics accordingly. * **Binary Criteria:** Use binary eligibility criteria to facilitate both standard and AI-assisted submission filtering. * **Consistent Structure:** Require submissions to take on a consistent and predictable structure to reduce the effort needed to resolve edge cases. * **Track Identification:** Make it easy to determine what Track a Writeup was submitted to. Consider reducing the total number of concurrent Tracks to shrink the grading pool. * **Metric Design:** Try to avoid continuous scales or Likert scores. Continuous metrics are less reliable than pairwise LLM comparisons. You can always apply bell-curve adjustments to the BT/ELO rankings at the very end. ### Step 1: Pull the hackathon overview page * Call `get_hackathon_overview` with `competitionName=<hackathon-slug>`. ### Step 2: Find eligibility requirements * Search the overview `pages` for sections named or containing: **rules**, **eligibility**, **entry**, or **official competition rules**. * Extract the exact paragraphs that explain submission-eligibility conditions. * **Verify** with the user that the eligibility requirements are correct. ### Step 3: Find the evaluation rubric * Search the overview `pages` for: **evaluation rubric**, **judging**, **criteria**, **submission requirements**, and **prizes**. * Record each rubric dimension separately. * Record any weighting, tie-break rules, prize rules, or judge-specific guidance. * If the rubric is only implied in prose, summarize the implied criteria and mark that inference clearly. * **Verify** with the user that the evaluation rubric is correct. ### Step 4: Download all Hackathon Writeups * Hackathon Hosts can retrieve a full export of all submitted Hackathon Writeups by using the `download_hackathon_write_ups` command. ### Step 5: Download all attached project links * **For Kaggle-native links:** Retain ids, refs, titles, owners, and download URLs when present. * Resolve Kaggle notebook URLs with `get_notebook_info`. * Resolve Kaggle dataset URLs with `get_dataset_info` or `get_dataset_metadata`. * Resolve Kaggle model URLs with `get_model` or `get_model_variation`. * **For non-Kaggle links:** Retrieve all of those same assets. Consider using the Playwright CLI. ### Step 6: Summarize all attached YouTube videos * **For YouTube-native links:** Consider using the YouTube API or the yt-dlp API. * **For non-YouTube links:** Consider using the Playwright CLI. ### Step 7: Verification Check * **Double check** that you did not accidentally skip Step 5 or Step 6! * Consider using manual grading methods if you lack the token budget required to analyze these assets. It wouldn't be fair to skip over them. ### Step 8: Build a complete collection * Repeat retrieval until every row from `list_hackathon_write_ups` has: * A full-length writeup body. * A summary or full-length copy of *every* attached project link. * A summary or full-length copy of *every* attached video. ### Step 9: Review similar LLM-judging projects * Review pre-graded Hackathons [here](https://kaggle-hackathon-grades-407870202439.us-west1.run.app/) to understand strengths and weaknesses. * Examine the **[/docs](https://kaggle-hackathon-grades-407870202439.us-west1.run.app/docs)** page for strategies on profiling, sanitizing, pairwise comparisons, and bell-curve scores. * Examine the **[/leaderboard](https://kaggle-hackathon-grades-407870202439.us-west1.run.app/leaderboard)** page to review representative profiles, BT/ELO rankings, and auto-assessments. * Examine the **[/dashboard](https://kaggle-hackathon-grades-407870202439.us-west1.run.app/dashboard)** page to see how pairwise comparisons stack up against gold-standard annotations. * Identify common failure modes and strategize resolutions. ### Step 10: Initial Auditing * **Create a grading-ready bundle** with three layers: 1. Hackathon rules and rubric 2. Normalized writeup contents 3. Normalized artifact contents * **First Audit:** Use [hamelsmu/evals-skills](https://github.com/hamelsmu/evals-skills/tree/main). * Start with `eval-audit` as the default path, expanding to other workflows for calibration, rubric testing, and failure analysis. * Repeat `eval-audit` until satisfied. * Record all grading traces and AI agent logic. * **Second Audit:** Re-run the [hamelsmu/evals-skills](https://github.com/hamelsmu/evals-skills/tree/main) process. * Repeat the `eval-audit` cycle until satisfied. * Record all new grading traces and AI agent logic. ### Step 11: Initial Grading * Grade eligible submissions according to the evaluation criteria. * **Audit a sample** of grading traces to ensure quality standards are met. * Consider building a dashboard for pairwise comparisons and annotations. * Perform error analysis. * Identify and correct failure patterns. Repeat until satisfied. ### Step 12: Final Grading * Grade eligible submissions according to the evaluation criteria using updated system prompts and corrected profiles. * **Flag top-ranked submissions** for manual review and manual stack-ranking. --- ## Minimal Product Requirements To be considered successful, the system: * **Must** be capable of ingesting and assessing every component of each Hackathon Submission (e.g., project links, embedded videos, web applications). * **Must** score Writeups with consideration of the specific Kaggle Hackathon track(s) targeted. * **Must** score Writeups according to the relevant evaluation criteria. * **Must** produce scores that are validated to be well-aligned with human scores. * **Must** avoid obvious algorithmic biases (e.g., position biases, model preferences). * **Must** be defensible against prompt injections. * **Must** use reasonably defensible grading methods. * **Must** record all traces (including reasoning logic) for later inspection. * **Should** be aligned against a dataset of at least 25 few-shot examples. * **Should** undergo error analysis with acceptable true positive and true negative rates. --- ## Anti-Patterns * **DO NOT** use AI grading systems prior to auditing the system with `hamelsmu/evals-skills`. * **DO NOT** use AI grading tools before extracting *every* project link and media file from *every* submitted writeup. * **DO NOT** forget to log all of your LLM traces for auditing and improvement. * **DO NOT** forget to identify and correct common failure modes in both profile generation and grading. * **DO NOT** ask LLMs to directly generate scores using continuous scales or Likert scores. * **DO NOT** forget to compare results to gold-standard human ratings or skip error analysis. * **DO NOT** forget to search for evidence of shortcuts and tomfoolery from end to end.
GitHub에서 보기