← Devpost HackathonsCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Devpost Hackathons
Snapshot Sep 30, 2026 · 22:48 UTC · version 4.0.1
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"name": "review-hackathon-rules",
"description": "Strategic preflight for the hackathon — present the official picture (rules, eligibility, key dates, prizes, judging criteria, submission obligations), capture explicit acknowledgment of the terms, then offer a short conversation about the participant's idea and strategy. Use when the user is starting the hackathon, wants to size up the event or sanity-check their idea, or needs to re-check official requirements.",
"included_files": [
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 242
},
{
"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/placeholder-rules.md",
"size_in_bytes": 3185
},
{
"relative_path": "references/plugin-runtime.md",
"size_in_bytes": 11707
}
],
"skill_md_contents": "---\nname: review-hackathon-rules\ndescription: Strategic preflight for the hackathon — present the official picture (rules, eligibility, key dates, prizes, judging criteria, submission obligations), capture explicit acknowledgment of the terms, then offer a short conversation about the participant's idea and strategy. Use when the user is starting the hackathon, wants to size up the event or sanity-check their idea, or needs to re-check official requirements.\n---\n\n# Review\n\n## Purpose\n\nAct as the strategic preflight and the mandatory rules gate: surface the event's official picture at a glance, walk the rules, update state only after an explicit `yes`, then offer a short conversation about the participant's idea and strategy before they start building.\n\nChat is the primary participant interface. Keep responses text-first so they render in any Codex host; the bundled `devpost` MCP server supplies rich inline visuals on hosts that support them.\n\n## Required Data Source\n\nOfficial rules and requirements come 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\nDraw on these only as needed: `devpost.get_hackathon_rules`, `devpost.get_submission_requirements`, `devpost.get_judging_criteria`, `devpost.get_key_dates`, `devpost.get_prizes`. Quote rules, eligibility, and requirements text from the response; do not paraphrase legal language.\n\n**The acknowledgment gate runs only against real rules.** If `get_hackathon_rules` is unavailable this session, do NOT present rules for agreement and do NOT ask for or record `rules_acknowledged` — a \"yes\" to placeholder text is not consent to the real rules. Say in one line that the official rules can't be fetched right now, point to the hackathon's rules page on Devpost, and stop the gate there. `references/placeholder-rules.md` may shape structure and answer general questions, clearly labeled provisional — never the consent gate.\n\n## Required References\n\nRead these before responding:\n\n- `references/plugin-runtime.md`\n- `references/content/steps/rules.md`\n- `references/config/hackathon.json`\n- `references/placeholder-rules.md`\n\n## Preconditions\n\nRead `.devpost-hackathon-state.json`.\n\nIf the state file does not exist, direct the user to `$start-hackathon`.\n\nLegacy state: older state files may use `review` (instead of `review-hackathon-rules`) in `current_stage`, `completed_stages`, or `next_command` — treat it as this stage.\n\n## Strict Gate\n\nDo not unlock the rest of the plugin flow until the user explicitly agrees to the rules review.\n\nUse this standard:\n\n- If `rules_acknowledged` is `true`, keep the recap short and move to **Strategy Conversation** (or point to `$resources` if they just want to proceed).\n- If `rules_acknowledged` is `false`, present the rules inline through the composer and ask exactly: `Do you agree to these terms? Reply yes or no.`\n\nAccept only `yes` as affirmative confirmation.\n\nTreat `no` as a stop:\n\n- do not update the state file\n- keep the flow locked\n- invite the participant to ask questions or return later\n\nDo not accept ambiguous acknowledgments such as `confirm`, `acknowledge`, `continue`, or `reviewed`.\n\nIf the participant asks substantive questions, answer from the official MCP data or the placeholder reference and clearly label provisional areas as awaiting official copy. But never run the acknowledgment gate itself against placeholder content — see **Required Data Source**.\n\n## Required Rules Content\n\nThe inline rules response should cover:\n\n- fairness and equal-information notice\n- official eligibility rules\n- official contest dates and deadlines\n- what to build\n- what to submit\n- provisional judging criteria awaiting official approval\n- originality, third-party usage, testing, and content restrictions\n- common reasons a submission can get blocked later\n- official contact and escalation path\n- the website-prevails disclaimer, verbatim from `references/content/steps/rules.md` (\"A note on\n accuracy\"): this guide is a helper, and if it ever disagrees with the Devpost website, the\n website prevails\n\nKeep the response complete enough for the gate, but do not write a second ad hoc version outside the configured content and references.\n\n## Strategy Conversation\n\nOnce the gate is passed (this turn or previously), offer — do not force — a short strategic exchange:\n\n- surface the at-a-glance picture: deadline, prize structure, judging criteria weights, submission obligations\n- if the participant shares an idea, react to it against the judging criteria and requirements in a few sentences: where it scores well, what it risks, what the minimum submission needs\n- keep it to a conversation, not a report; two or three sharp observations beat a full analysis\n- close with the Resources preview below\n\n## Resources Preview\n\nWhenever this command points the participant to `$resources` — after the gate passes, or closing the strategy conversation — never leave it at a bare next-command line. Preview the stage in three or four sentences covering, in this order:\n\n1. The Resources step shows the links and info the hackathon organizers published to help you put your best foot forward and make the best project.\n2. It also offers the optional guided build tool — **always say it is optional** — which walks you through ideation, scoping, planning, and building, and introduces best practices for coding AI projects: good if you're new to them, or want to polish your practices.\n3. One token-strategy line: plan and specify with your most powerful model, then hand execution to cheaper models or subagents once the work is specified.\n\nThe guided build tool comes first in this preview, before any mention of submission prep — building precedes preparing, and `$prepare-submission` must never read as the immediate next step here.\n\n## Presentation Output\n\nCompose the response in-context per `references/plugin-runtime.md` (\"Composing the Response\"): read `references/content/steps/rules.md`, strip maintainer `<!-- -->` comments, interpolate the event name, then present a short stage headline, the page content, and the next-step callout. Do not run any script.\n\n## State Update\n\nWhen the user explicitly replies `yes`:\n\n- set `rules_acknowledged` to `true`\n- add `review` to `completed_stages` if needed\n- set `current_stage` to `resources`\n- set `next_command` to `resources`\n- preserve any real deadline values already present\n\nThen compose the Rules response again so the next command is visible.\n\n## Chat Output\n\nKeep chat output minimal.\n\nDo not hand-write a separate dashboard. Let the composer render the response.\n\nIf locked, respond with:\n\n- the composed rules response\n- a reminder to read the inline rules carefully before answering\n- an invitation to ask questions about the rules before replying\n- exact confirmation prompt: `Do you agree to these terms? Reply yes or no.`\n\nIf unlocked after `yes`, respond with:\n\n- rules acknowledged\n- the strategy-conversation offer (one line)\n- the Resources preview (see **Resources Preview**)\n- next command: `$resources`\n\nIf composer generation fails, use a compact text fallback:\n\n- current stage: Review\n- locked/unlocked status\n- exact yes/no requirement when locked\n- next command only when unlocked\n"
}SHA-256: 168cf63cac087775ab94a50aac35e3185168a377f3ffe9ebf6d874e6f1c9563c