关于 hackathon-deployment-prep
hackathon-deployment-prep 面向准备黑客松项目部署和演示环境的团队,可生成按序验证清单、演示数据设置、环境要求,以及关键故障的备用方案。
主要功能
- 01按序排列的部署检查清单
- 02演示环境设置方案
- 03测试数据与状态准备
- 04针对故障的备用方案
- 05二元通过/不通过标准
适用场景
- 01评审前验证部署状态
- 02从干净状态准备演示数据
- 03为演示阻塞问题制定应对方案
- 04判断团队是否具备展示条件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ bernieweb3/ hackathon-ai-devkit --skill hackathon-deployment-prep安装后在 Claude Code 中输入/hackathon-deployment-prep确认已加载。
详细介绍
hackathon-deployment-prep
目标
在评审开始前,确保项目已可靠部署并做好演示准备:生成部署检查清单、验证演示环境、加载测试数据,并为每种关键故障场景制定备用方案。
触发条件
在以下情况下使用此技能:
- 实现已完成,演示流程可端到端运行
- 项目首次部署到云平台(Vercel、Render、Railway 等)
- 团队需要在评审前验证演示环境
- 排练发现演示流程不稳定
- 在第 8 阶段(交付)调用,此时已完成
hackathon-test-generator,尚未开始hackathon-submission-prep;每次部署变更后重新调用
输入
| 输入 | 类型 | 必填 | 说明 |
|---|---|---|---|
project_title | string | 是 | 项目名称 |
mvp_demo_flow | object[] | 是 | 来自 hackathon-scope-cutter 的演示步骤 |
tech_stack | string[] | 是 | 使用的技术 |
deployment_targets | object[] | 是 | 前端和后端平台详情 |
demo_blockers | object[] | 否 | 来自 hackathon-test-generator 的已知故障场景 |
demo_environment | string | 否 | 演示运行环境(例如浏览器、移动设备、CLI、Vercel) |
judging_format | string | 否 | live_demo、video_only 或 both(默认值:both) |
deadline_hours_remaining | number | 否 | 距提交截止时间的剩余小时数 |
输出
| 输出 | 说明 |
|---|---|
deployment_checklist | 按顺序排列的部署验证步骤,含通过/失败标准 |
demo_environment_plan | 稳定演示所需的完整环境配置 |
demo_data_setup | 从干净状态开始运行演示流程所需的测试数据和状态 |
fallback_plan | 针对每种关键故障场景的分级备用策略 |
go_no_go_criteria | 团队开始展示前必须全部满足的条件 |
recommended_skills | 建议接下来调用的技能 |
规则
deployment_checklist必须能在全新机器或云 Shell 中按顺序执行。mvp_demo_flow中的每一项都必须有对应的demo_data_setup条目。demo_blockers中的每一项都必须有对应的fallback_plan条目。go_no_go_criteria必须是二元通过/失败标准,不得包含部分通过状态。- 如果
judging_format包含live_demo,则必须提供屏幕录制备用方案。 - 将任何需要超过 15 分钟的部署步骤标记为
[TIME-RISK]。 demo_environment_plan必须指定确切的浏览器、缩放级别、窗口布局和测试账户状态。
输出格式
deployment_checklist:
- id: "DC-<number>"
step: "<what to do>"
platform: "<Vercel|Render|Railway|local|all>"
pass_condition: "<what success looks like>"
time_risk: <true|false>
estimated_minutes: <number>
demo_environment_plan:
browser: "<browser name and version>"
zoom_level: "<percentage>"
window_layout: "<description of screen layout>"
demo_account: "<account/user state>"
pre_loaded_data: "<what must exist before demo starts>"
notifications: "disabled"
additional_notes:
- "<note>"
demo_data_setup:
- demo_flow_step: <number>
required_state: "<what must be true in the system>"
setup_command: "<command or action to create this state>"
fallback_plan:
- scenario: "<failure scenario>"
trigger: "<when to invoke this fallback>"
action: "<what to do>"
asset_required: "<pre-recorded video|static slide|mock data|none>"
go_no_go_criteria:
- criterion: "<condition>"
status: "<PASS|FAIL|NOT_CHECKED>"
recommended_skills:
- "<skill-name>"
示例
输入:
project_title: "AnchorAI"
mvp_demo_flow:
- step: 1
action: "User types 'I'm feeling overwhelmed today'"
outcome: "AI responds empathetically"
- step: 2
action: "User describes recurring work stress"
outcome: "AI references last week's conversation from memory"
- step: 3
action: "User expresses hopelessness"
outcome: "Crisis resource card appears"
tech_stack: ["Next.js", "FastAPI", "Supabase", "Groq"]
deployment_targets:
- role: "frontend"
platform: "Vercel"
url: "https://anchorai.vercel.app"
- role: "backend"
platform: "Render"
url: "https://anchorai-api.onrender.com"
demo_blockers:
- scenario: "Groq API rate limit hit during demo"
mitigation: "Pre-recorded screen capture"
- scenario: "Render cold start delays response by 30s"
mitigation: "Warm-up ping at start"
judging_format: "both"
deadline_hours_remaining: 3
输出:
deployment_checklist:
- id: "DC-01"
step: "Verify Render backend is deployed and /health endpoint returns HTTP 200"
platform: "Render"
pass_condition: "curl https://anchorai-api.onrender.com/health returns {\"status\": \"ok\"}"
time_risk: false
estimated_minutes: 2
- id: "DC-02"
step: "Verify Vercel frontend is deployed and loads without console errors"
platform: "Vercel"
pass_condition: "https://anchorai.vercel.app loads; browser console has zero errors"
time_risk: false
estimated_minutes: 3
- id: "DC-03"
step: "Warm up Render instance by sending 3 chat requests and verifying sub-3s response time"
platform: "Render"
pass_condition: "All 3 responses received in under 3 seconds"
time_risk: false
estimated_minutes: 5
- id: "DC-04"
step: "Load demo session history into Supabase for user_id='demo' containing 'exam stress' phrase"
platform: "all"
pass_condition: "GET /memory?user_id=demo returns non-empty summary containing 'exam stress'"
time_risk: false
estimated_minutes: 5
- id: "DC-05"
step: "Run full demo flow end-to-end 3 times from a clean session state"
platform: "all"
pass_condition: "All 3 runs complete without error; wow moment (memory recall) triggers consistently"
time_risk: true
estimated_minutes: 20
demo_environment_plan:
browser: "Chrome (latest stable)"
zoom_level: "125%"
window_layout: "Full-screen browser, chat interface centred, no other tabs visible"
demo_account: "user_id='demo'; 1 prior session loaded in Supabase with 'exam stress' content"
pre_loaded_data: "Supabase 'sessions' table contains row for user_id='demo' with summary field populated"
notifications: "disabled"
additional_notes:
- "Disable OS notifications in System Settings before demo"
- "Close all other applications; only browser open"
- "Have pre-recorded fallback video open in a minimized tab"
demo_data_setup:
- demo_flow_step: 1
required_state: "Empty chat interface; user_id='demo' session loaded in Supabase"
setup_command: "python scripts/seed_demo.py --user demo --summary 'User was anxious about exam stress last week'"
- demo_flow_step: 2
required_state: "Prior session summary accessible via /memory endpoint"
setup_command: "curl https://anchorai-api.onrender.com/memory?user_id=demo — verify response contains 'exam stress'"
- demo_flow_step: 3
required_state: "Crisis keyword detection active (no config change needed)"
setup_command: "No setup required; crisis card is triggered by keyword matching in chat router"
fallback_plan:
- scenario: "Groq API rate limit hit during demo"
trigger: "Chat response takes >5 seconds or returns error"
action: "Switch to pre-recorded screen capture tab; narrate over the video"
asset_required: "pre-recorded video"
- scenario: "Render cold start delays response by 30s"
trigger: "First chat request takes >10 seconds"
action: "Say 'Let me load the warm session' — switch to pre-warmed local fallback or cached response"
asset_required: "mock data"
- scenario: "Supabase unavailable; memory not retrieved"
trigger: "AI response does not reference prior session context"
action: "Acknowledge gracefully: 'Memory is loading from the database' — continue with mocked recall line"
asset_required: "none"
go_no_go_criteria:
- criterion: "Backend /health returns HTTP 200"
status: "NOT_CHECKED"
- criterion: "Frontend loads without console errors"
status: "NOT_CHECKED"
- criterion: "Demo session data loaded in Supabase"
status: "NOT_CHECKED"
- criterion: "Memory recall (wow moment) triggers in 3 of 3 test runs"
status: "NOT_CHECKED"
- criterion: "Crisis card appears on hopelessness message"
status: "NOT_CHECKED"
- criterion: "Pre-recorded fallback video is accessible in minimised tab"
status: "NOT_CHECKED"
- criterion: "Groq API key active and rate limit verified"
status: "NOT_CHECKED"
recommended_skills:
- "hackathon-submission-prep"
上下文文件
知识库
../hackathon-shared-resources/knowledge/hackathon-demo-patterns.md../hackathon-shared-resources/knowledge/hackathon-common-failures.md../hackathon-shared-resources/knowledge/hackathon-submission-guidelines.md../hackathon-shared-resources/knowledge/hackathon-demo-psychology.md
模板
../hackathon-shared-resources/templates/demo-script-template.md
操作手册
../hackathon-shared-resources/playbooks/hackathon-workflow.md../hackathon-shared-resources/playbooks/24h-hackathon-playbook.md../hackathon-shared-resources/playbooks/36h-hackathon-playbook.md../hackathon-shared-resources/playbooks/48h-hackathon-playbook.md
评论
支持 Markdown