← Devpost HackathonsCONTENT HISTORY

Update to Devpost Hackathons

Snapshot Sep 30, 2026 · 22:48 UTC · version 4.0.1

Collection source: not recorded for this historical snapshot.

WHAT CHANGED · RULE-BASED ANALYSIS

First saved snapshot

No earlier snapshot is available to establish a change.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Discover which Devpost hackathon is open to enter before starting the guided flow. Use when the user wants to find, search, or browse hackathons, asks for a recommendation (\"recommend a hackathon\", \"which hackathon fits me/my project\"), or asks what hackathons are open or upcoming. This is the pre-stepper discovery step; setup and registration happen in $start-hackathon.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 229
    },
    {
      "relative_path": "references/SETUP.md",
      "size_in_bytes": 1231
    },
    {
      "relative_path": "references/config/hackathon.json",
      "size_in_bytes": 1897
    },
    {
      "relative_path": "references/content/learning/build.md",
      "size_in_bytes": 939
    },
    {
      "relative_path": "references/content/learning/checklist.md",
      "size_in_bytes": 618
    },
    {
      "relative_path": "references/content/learning/onboard.md",
      "size_in_bytes": 1333
    },
    {
      "relative_path": "references/content/learning/prd.md",
      "size_in_bytes": 972
    },
    {
      "relative_path": "references/content/learning/scope.md",
      "size_in_bytes": 403
    },
    {
      "relative_path": "references/content/learning/spec.md",
      "size_in_bytes": 356
    },
    {
      "relative_path": "references/content/steps/check.md",
      "size_in_bytes": 1150
    },
    {
      "relative_path": "references/content/steps/help.md",
      "size_in_bytes": 2595
    },
    {
      "relative_path": "references/content/steps/map.md",
      "size_in_bytes": 948
    },
    {
      "relative_path": "references/content/steps/prepare.md",
      "size_in_bytes": 1599
    },
    {
      "relative_path": "references/content/steps/resources.md",
      "size_in_bytes": 1601
    },
    {
      "relative_path": "references/content/steps/rules.md",
      "size_in_bytes": 840
    },
    {
      "relative_path": "references/content/steps/start.md",
      "size_in_bytes": 1868
    },
    {
      "relative_path": "references/plugin-runtime.md",
      "size_in_bytes": 11707
    }
  ],
  "name": "find-hackathon",
  "skill_md_contents": "---\nname: find-hackathon\ndescription: Discover which Devpost hackathon is open to enter before starting the guided flow. Use when the user wants to find, search, or browse hackathons, asks for a recommendation (\"recommend a hackathon\", \"which hackathon fits me/my project\"), or asks what hackathons are open or upcoming. This is the pre-stepper discovery step; setup and registration happen in $start-hackathon.\n---\n\n# Find Hackathon\n\n## Purpose\n\nShow the participant what is open to enter through this app, then point them to `$start-hackathon`.\n\nThis skill is discovery only. It writes no state file, performs no registration, and makes exactly one MCP call. Dates, prizes, rules, and announcements belong to later steps — do not fetch them here.\n\nThis is pre-stepper discovery. Do not call `show_hackathon_stepper` in this skill — the journey stepper starts at `$start-hackathon`.\n\nChat is the primary participant interface.\n\n## Required Data Source\n\nOfficial event data comes from the `devpost` MCP server — follow **Devpost MCP Server** in `references/plugin-runtime.md` (call only what you need, never verify or set up the server, degrade in one line on failure).\n\nThis skill uses exactly one tool: `devpost.list_open_hackathons` — the catalog of open or upcoming hackathons available through this app. Do not call `get_hackathon_overview`, `list_hackathons`, or `search_hackathons` here.\n\n## Required References\n\nRead before responding:\n\n- `references/plugin-runtime.md`\n- `references/config/hackathon.json`\n\n## Authentication\n\nEvery `devpost` tool call requires the participant to be signed in — there is no public tier. `list_open_hackathons` is this skill's auth gate: if it fails on auth, hard-stop per **On auth failure** in `references/plugin-runtime.md` (one-line notice, the sign-in recovery, and stop). Do not call `whoami` first — the required call is the gate.\n\n## Flow\n\n1. **If the user names a specific hackathon** (a Devpost slug like `my-event`, a clear event name, or a devpost.com URL), skip discovery entirely: tell them `$start-hackathon` sets it up, and per the affordance rule in `references/plugin-runtime.md`, treat any go-ahead (\"start it\", \"yes\", \"let's do it\") as that command and proceed on this turn.\n2. Otherwise call `list_open_hackathons` once.\n3. **One hackathon in the catalog (the current normal case):** show it — name, the devpost.com link, and a one-line description — and recommend `$start-hackathon`. Do not present a list of one.\n4. **More than one:** present a short numbered list (name, one-line descriptor, URL) and recommend `$start-hackathon`, naming their pick in the recommendation. Selection is resolved and recorded by `$start-hackathon`, not here.\n5. **Present the catalog honestly.** These are the hackathons live in this app right now — never claim they are the entire Devpost catalog, and never invent entries. Point anyone who wants the full picture at the Devpost browse page (`links.browse_hackathons` in `references/config/hackathon.json`). Do not use web search for discovery — ever.\n\n## Fallback\n\nIf `list_open_hackathons` fails on availability (not auth — the gate above owns auth failures), degrade in one line per `references/plugin-runtime.md` and point the participant at the Devpost browse page (`links.browse_hackathons` in `references/config/hackathon.json`). If they already know their event, `$start-hackathon` accepts a pasted name, slug, or URL.\n\n## Chat Output\n\nKeep chat output minimal:\n\n- the current hackathon (or the short list), with the devpost.com link and a one-line description\n- nothing else — no dates, prizes, or registration details; those come in later steps\n\nEnd with an enrollment callout as the final line, so the participant's advance is an acknowledged choice of hackathon — never a generic \"next\" detached from the event. The callouts below are templates: `[Event Name]` is a placeholder slot, NOT literal text. Interpolate the actual event name(s) from the `list_open_hackathons` response you just received on this turn; never output the bracketed placeholder itself, and never hardcode an event name into this skill.\n\nOne hackathon in the catalog:\n\n```text\nReady to enroll in [Event Name]? Say \"next\" and I'll get you registered — or type `$start-hackathon`.\n```\n\nMore than one:\n\n```text\nWhich one looks right? Tell me your pick — or type `$start-hackathon` and I'll set you up.\n```\n\nTreat \"next\", a named pick, \"start it\", or any clear go-ahead as `$start-hackathon` per the affordance rule.\n"
}

SHA-256 of public snapshot: 4df5df79d11ccc79f77e3a779c890c84205be42d7d239b59456ad18ec7d69a0c