From hw
Generate a complete project showcase package for introduction docs, technical docs, slides, and an optional poster.
npx claudepluginhub hypoxanthineovo/hypo-workflow --plugin hwThis skill uses the workspace's default tool permissions.
Use this skill when the user invokes `/hw:showcase` or `/hypo-workflow:showcase`.
Generates project intro slides using Nano Banana Pro (Gemini) API from codebases or descriptions. Produces 3 patterns (Minimalist, Infographic, Hero) with 2 variants each, AI quality checks, and retries. Invoke via /generate-slide.
Scaffolds Slidev presentation decks with slides.md, package.json, Makefile, and public/ folder. Generates concise markdown slides from project docs or prompts.
Generate a polished HTML presentation page and Obsidian Canvas for big releases — new products, takeovers, major migrations. Non-technical audience. Use when asked to "present this", "release announcement", "show what we built", or "stakeholder update".
Share bugs, ideas, or general feedback.
Use this skill when the user invokes /hw:showcase or /hypo-workflow:showcase.
Showcase is a non-development preset that proves Hypo-Workflow can run structured AI work beyond code implementation. It generates project introduction material under .pipeline/showcase/ and keeps the normal Pipeline state machine untouched.
📌 输出语言规则: 读取 config.yaml → output.language
Showcase artifacts must follow showcase.language when set. showcase.language: auto follows output.language.
Supported forms:
/hw:showcase/hw:showcase --all/hw:showcase --doc/hw:showcase --slides/hw:showcase --poster/hw:showcase --doc --poster/hw:showcase --new/hw:showcase --new --allpreset: showcase
sequence:
- analyze
- intro_doc
- tech_doc
- slides
- poster
- review
Step meanings:
analyze: read the project and extract features, architecture, strengths, and statisticsintro_doc: generate .pipeline/showcase/PROJECT-INTRO.mdtech_doc: generate .pipeline/showcase/TECHNICAL-DOC.mdslides: generate .pipeline/showcase/slides.mdposter: call GPT Image API and write .pipeline/showcase/poster.pngreview: validate completeness, accuracy, consistency, and languageanalyze always runs because every artifact depends on it. review always runs because Showcase is user-facing material.
| Flags | Steps |
|---|---|
| none | interactive selection, then analyze + selected steps + review |
--all | all 6 steps |
--doc | analyze + intro_doc + tech_doc + review |
--slides | analyze + slides + review |
--poster | analyze + poster + review |
| combined flags | union of selected artifact steps, plus analyze and review |
When no selection flag is provided, ask and wait:
🎨 Showcase — 本次要生成哪些物料?
[1] 📄 项目介绍文档 (PROJECT-INTRO.md)
[2] 📐 技术文档 (TECHNICAL-DOC.md)
[3] 📊 演示 PPT (slides.md)
[4] 🖼️ 宣传海报 (poster.png — 需要 GPT Image)
输入编号(如 1,3,4)或回复「全部」:
Do not auto-generate all artifacts in interactive mode. Wait for the user response before continuing.
Canonical directory:
.pipeline/showcase/On first run:
.pipeline/showcase/..pipeline/showcase/showcase.yaml with version: 1.On later runs without --new:
showcase.yaml.last_run and generated timestamps for overwritten artifacts.--newWhen --new is present:
N; default to 1 if missing..pipeline/showcase/history/v{N}/.N+1.Archive these files when they exist:
PROJECT-INTRO.mdTECHNICAL-DOC.mdslides.mdposter.pngPreserve .pipeline/showcase/history/.
showcase.yamlUse this shape:
showcase:
version: 3
last_run: "2026-04-29T19:00:00+08:00"
artifacts:
- type: intro_doc
file: PROJECT-INTRO.md
generated: "2026-04-29T19:02:00+08:00"
- type: tech_doc
file: TECHNICAL-DOC.md
generated: "2026-04-29T19:05:00+08:00"
- type: slides
file: slides.md
generated: "2026-04-29T19:08:00+08:00"
- type: poster
file: poster.png
generated: "2026-04-29T19:10:00+08:00"
Use ISO-8601 timestamps converted to output.timezone.
Read project files in this priority:
README.md (required).pipeline/config.yaml or config.yaml for project name, preset, and command count when present.pipeline/architecture.md or architecture.md for architectureSKILL.md for command and capability overviewsrc/ or main code directories for file tree and key modules.pipeline/PROGRESS.md for current progress.pipeline/state.yaml for current development state.pipeline/archives/*/summary.md for version historyExtract an in-memory summary only. Do not write an intermediate analyze file.
Summary fields:
intro_doc StepWrite .pipeline/showcase/PROJECT-INTRO.md for non-developer users.
Required structure:
Style: concise, attractive, non-technical. Follow output.language.
tech_doc StepWrite .pipeline/showcase/TECHNICAL-DOC.md for developers and contributors.
Required structure:
Style: accurate, deep enough to be useful, and clearly structured. Follow output.language.
slides StepWrite .pipeline/showcase/slides.md as Markdown slides separated by ---.
Suggested pages:
Each page should have one clear topic, a title, and 3-5 bullets or one short paragraph.
poster StepGenerate .pipeline/showcase/poster.png with GPT Image when available.
Resolve config:
showcase:
poster:
api_key_env: OPENAI_API_KEY
size: "1024x1536"
quality: high
style: auto
language: auto
Prompt strategy:
API options:
curl against https://api.openai.com/v1/images/generations, orFailure handling:
⚠️ OPENAI_API_KEY 未设置,跳过海报生成 in Chinese or the equivalent in configured languagereview StepRun after all selected artifacts have been attempted.
Check:
output.language / showcase.languageRefresh .pipeline/PROGRESS.md with a concise Showcase result.
Progress table format:
| 19:00 | Showcase | /hw:showcase --all | v3: 4 artifacts generated, review ✅ |
Update the top metadata timestamp and keep PROGRESS.md as a board-style summary instead of appending loose one-line events.
Use the compact time format required by output.timezone.
config.schema.yaml — showcase.* configreferences/config-spec.md — config fallback rulesreferences/progress-spec.md — PROGRESS language and time rulesSKILL.md — command routing and global language rules