create-yss-spec 2.1.7 → 2.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/template/.agents/skills/ask-matt/SKILL.md +0 -1
- package/template/.agents/skills/code-review/SKILL.md +1 -1
- package/template/.agents/skills/grill-me/SKILL.md +1 -1
- package/template/.agents/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.agents/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.agents/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.agents/skills/to-spec/SKILL.md +1 -1
- package/template/.agents/skills/to-tickets/SKILL.md +1 -1
- package/template/.agents/skills/yss-components/SKILL.md +85 -10
- package/template/.agents/skills/yss-design-system/SKILL.md +1 -1
- package/template/.agents/skills/yss-hook/SKILL.md +141 -72
- package/template/.agents/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.agents/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.agents/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.agents/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.claude/skills/ask-matt/SKILL.md +0 -1
- package/template/.claude/skills/code-review/SKILL.md +1 -1
- package/template/.claude/skills/grill-me/SKILL.md +1 -1
- package/template/.claude/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.claude/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.claude/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.claude/skills/to-spec/SKILL.md +1 -1
- package/template/.claude/skills/to-tickets/SKILL.md +1 -1
- package/template/.claude/skills/yss-components/SKILL.md +85 -10
- package/template/.claude/skills/yss-design-system/SKILL.md +1 -1
- package/template/.claude/skills/yss-hook/SKILL.md +141 -72
- package/template/.claude/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.claude/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.claude/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.claude/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.claude/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.codex/skills/ask-matt/SKILL.md +0 -1
- package/template/.codex/skills/code-review/SKILL.md +1 -1
- package/template/.codex/skills/grill-me/SKILL.md +1 -1
- package/template/.codex/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.codex/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.codex/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.codex/skills/to-spec/SKILL.md +1 -1
- package/template/.codex/skills/to-tickets/SKILL.md +1 -1
- package/template/.codex/skills/yss-components/SKILL.md +85 -10
- package/template/.codex/skills/yss-design-system/SKILL.md +1 -1
- package/template/.codex/skills/yss-hook/SKILL.md +141 -72
- package/template/.codex/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.codex/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.codex/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.codex/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.hermes/skills/ask-matt/SKILL.md +0 -1
- package/template/.hermes/skills/code-review/SKILL.md +1 -1
- package/template/.hermes/skills/grill-me/SKILL.md +1 -1
- package/template/.hermes/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.hermes/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.hermes/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.hermes/skills/to-spec/SKILL.md +1 -1
- package/template/.hermes/skills/to-tickets/SKILL.md +1 -1
- package/template/.hermes/skills/yss-components/SKILL.md +85 -10
- package/template/.hermes/skills/yss-design-system/SKILL.md +1 -1
- package/template/.hermes/skills/yss-hook/SKILL.md +141 -72
- package/template/.hermes/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.hermes/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.hermes/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.hermes/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.hermes/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.hermes/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.hermes/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.pi/skills/ask-matt/SKILL.md +0 -1
- package/template/.pi/skills/code-review/SKILL.md +1 -1
- package/template/.pi/skills/grill-me/SKILL.md +1 -1
- package/template/.pi/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.pi/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.pi/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.pi/skills/to-spec/SKILL.md +1 -1
- package/template/.pi/skills/to-tickets/SKILL.md +1 -1
- package/template/.pi/skills/yss-components/SKILL.md +85 -10
- package/template/.pi/skills/yss-design-system/SKILL.md +1 -1
- package/template/.pi/skills/yss-hook/SKILL.md +141 -72
- package/template/.pi/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.pi/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.pi/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.pi/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.qoder/skills/ask-matt/SKILL.md +0 -1
- package/template/.qoder/skills/code-review/SKILL.md +1 -1
- package/template/.qoder/skills/grill-me/SKILL.md +1 -1
- package/template/.qoder/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.qoder/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.qoder/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.qoder/skills/to-spec/SKILL.md +1 -1
- package/template/.qoder/skills/to-tickets/SKILL.md +1 -1
- package/template/.qoder/skills/yss-components/SKILL.md +85 -10
- package/template/.qoder/skills/yss-design-system/SKILL.md +1 -1
- package/template/.qoder/skills/yss-hook/SKILL.md +141 -72
- package/template/.qoder/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.qoder/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.qoder/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.qoder/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.qoder/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.trae/skills/ask-matt/SKILL.md +0 -1
- package/template/.trae/skills/code-review/SKILL.md +1 -1
- package/template/.trae/skills/grill-me/SKILL.md +1 -1
- package/template/.trae/skills/grill-with-docs/SKILL.md +2 -1
- package/template/.trae/skills/maintaining-skills/SKILL.md +25 -0
- package/template/.trae/skills/product-design-prototype/SKILL.md +1 -1
- package/template/.trae/skills/to-spec/SKILL.md +1 -1
- package/template/.trae/skills/to-tickets/SKILL.md +1 -1
- package/template/.trae/skills/yss-components/SKILL.md +85 -10
- package/template/.trae/skills/yss-design-system/SKILL.md +1 -1
- package/template/.trae/skills/yss-hook/SKILL.md +141 -72
- package/template/.trae/skills/yss-hook/references/frontend-docs.md +3 -2
- package/template/.trae/skills/yss-product-lifecycle/SKILL.md +10 -9
- package/template/.trae/skills/yss-product-lifecycle/references/matt-yss-adapter.md +29 -17
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration-contract.yaml +87 -2
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration.md +6 -6
- package/template/.trae/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.trae/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/AGENTS.md +20 -60
- package/template/docs/adr/0001-product-design-prototype-entrypoint.md +2 -2
- package/template/docs/agents/skills-maintenance.md +3 -3
- package/template/docs/design/README.md +1 -1
- package/template/docs/process/MATT-POCOCK-ENGINEERING-SKILLS.md +1 -1
- package/template/docs/process/harness-process-tailoring.md +37 -1
- package/template/docs/process/lifecycle-artifact-map.md +1 -0
- package/template/docs/process/lifecycle-registry-baseline.json +4 -1
- package/template/docs/process/lifecycle-registry.yaml +13 -10
- package/template/docs/process/maintenance-intensity.yaml +25 -0
- package/template/docs/user-guide//344/272/247/345/223/201/347/240/224/345/217/221/345/205/250/347/224/237/345/221/275/345/221/250/346/234/237/346/234/200/344/275/263/345/256/236/350/267/265.md +1 -1
- package/template/scripts/lib/maintenance-intensity.mjs +94 -0
- package/template/scripts/lib/scenario-checks.mjs +149 -1
- package/template/scripts/lib/skill-supply-chain.mjs +13 -2
- package/template/scripts/verify-maintenance-checkpoint +13 -0
- package/template/scripts/verify-maintenance-intensity-scenarios +47 -0
- package/template/scripts/verify-template +3 -2
- package/template/skills-lock.json +27 -120
- package/template/wiki/raw/skills-lock.json +99 -222
- package/template/wiki/wiki/Matt/346/212/200/350/203/275/344/275/223/347/263/273.md +1 -1
- package/template/wiki/wiki/YSS/345/267/245/347/250/213/346/212/200/350/203/275/344/275/223/347/263/273.md +1 -1
- package/template/wiki/wiki//345/244/215/347/233/230/344/270/216/346/235/203/345/250/201/350/265/204/344/272/247/344/277/256/350/256/242.md +1 -1
- package/template/wiki/wiki//346/250/241/346/235/277/345/217/221/345/270/203/351/227/250/347/246/201/344/270/216/351/252/214/350/257/201.md +1 -1
- package/template/wiki/wiki//346/250/241/346/235/277/347/273/264/346/212/244/346/265/201/347/250/213.md +1 -1
- package/template.snapshot.json +4 -4
- package/template/.agents/skills/claude-handoff/SKILL.md +0 -18
- package/template/.agents/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.agents/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.agents/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.agents/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.agents/skills/web-design-engineer/README.md +0 -461
- package/template/.agents/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.agents/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.agents/skills/web-design-engineer/manifest.json +0 -15
- package/template/.agents/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.agents/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.agents/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.agents/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.agents/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.agents/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.agents/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.agents/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.agents/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.agents/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.agents/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.agents/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.agents/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.agents/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.agents/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.agents/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.agents/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.agents/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.agents/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.agents/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.agents/skills/web-video-presentation/README.md +0 -322
- package/template/.agents/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.agents/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.agents/skills/web-video-presentation/manifest.json +0 -15
- package/template/.agents/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.agents/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.agents/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.agents/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.agents/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.agents/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.agents/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.agents/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.agents/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.agents/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.agents/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.agents/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.agents/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.agents/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.agents/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.agents/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.agents/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.agents/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.agents/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.agents/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.agents/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.agents/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.agents/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.agents/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.agents/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.agents/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.agents/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.agents/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.agents/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.agents/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.agents/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.agents/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.agents/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.agents/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.agents/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.agents/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.agents/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.agents/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.agents/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.agents/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.agents/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.agents/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.agents/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.agents/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.agents/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.agents/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.agents/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.agents/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.agents/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.agents/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.agents/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.agents/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.agents/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.agents/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.agents/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.agents/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.agents/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.agents/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.agents/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.agents/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.agents/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.agents/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.agents/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.agents/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.agents/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.agents/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.agents/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.agents/skills/wizard/SKILL.md +0 -44
- package/template/.agents/skills/wizard/agents/openai.yaml +0 -3
- package/template/.agents/skills/wizard/template.sh +0 -204
- package/template/.agents/skills/writing-skills/SKILL.md +0 -689
- package/template/.agents/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.agents/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.agents/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.agents/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.agents/skills/writing-skills/render-graphs.js +0 -168
- package/template/.agents/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.claude/skills/claude-handoff/SKILL.md +0 -18
- package/template/.claude/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.claude/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.claude/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.claude/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.claude/skills/web-design-engineer/README.md +0 -461
- package/template/.claude/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.claude/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.claude/skills/web-design-engineer/manifest.json +0 -15
- package/template/.claude/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.claude/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.claude/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.claude/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.claude/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.claude/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.claude/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.claude/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.claude/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.claude/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.claude/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.claude/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.claude/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.claude/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.claude/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.claude/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.claude/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.claude/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.claude/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.claude/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.claude/skills/web-video-presentation/README.md +0 -322
- package/template/.claude/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.claude/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.claude/skills/web-video-presentation/manifest.json +0 -15
- package/template/.claude/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.claude/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.claude/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.claude/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.claude/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.claude/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.claude/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.claude/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.claude/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.claude/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.claude/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.claude/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.claude/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.claude/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.claude/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.claude/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.claude/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.claude/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.claude/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.claude/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.claude/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.claude/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.claude/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.claude/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.claude/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.claude/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.claude/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.claude/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.claude/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.claude/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.claude/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.claude/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.claude/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.claude/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.claude/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.claude/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.claude/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.claude/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.claude/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.claude/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.claude/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.claude/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.claude/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.claude/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.claude/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.claude/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.claude/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.claude/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.claude/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.claude/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.claude/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.claude/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.claude/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.claude/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.claude/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.claude/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.claude/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.claude/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.claude/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.claude/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.claude/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.claude/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.claude/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.claude/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.claude/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.claude/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.claude/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.claude/skills/wizard/SKILL.md +0 -44
- package/template/.claude/skills/wizard/agents/openai.yaml +0 -3
- package/template/.claude/skills/wizard/template.sh +0 -204
- package/template/.claude/skills/writing-skills/SKILL.md +0 -689
- package/template/.claude/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.claude/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.claude/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.claude/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.claude/skills/writing-skills/render-graphs.js +0 -168
- package/template/.claude/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.codex/skills/claude-handoff/SKILL.md +0 -18
- package/template/.codex/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.codex/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.codex/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.codex/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.codex/skills/web-design-engineer/README.md +0 -461
- package/template/.codex/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.codex/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.codex/skills/web-design-engineer/manifest.json +0 -15
- package/template/.codex/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.codex/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.codex/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.codex/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.codex/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.codex/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.codex/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.codex/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.codex/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.codex/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.codex/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.codex/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.codex/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.codex/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.codex/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.codex/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.codex/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.codex/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.codex/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.codex/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.codex/skills/web-video-presentation/README.md +0 -322
- package/template/.codex/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.codex/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.codex/skills/web-video-presentation/manifest.json +0 -15
- package/template/.codex/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.codex/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.codex/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.codex/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.codex/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.codex/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.codex/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.codex/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.codex/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.codex/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.codex/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.codex/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.codex/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.codex/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.codex/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.codex/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.codex/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.codex/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.codex/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.codex/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.codex/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.codex/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.codex/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.codex/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.codex/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.codex/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.codex/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.codex/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.codex/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.codex/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.codex/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.codex/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.codex/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.codex/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.codex/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.codex/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.codex/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.codex/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.codex/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.codex/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.codex/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.codex/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.codex/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.codex/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.codex/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.codex/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.codex/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.codex/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.codex/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.codex/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.codex/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.codex/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.codex/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.codex/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.codex/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.codex/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.codex/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.codex/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.codex/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.codex/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.codex/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.codex/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.codex/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.codex/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.codex/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.codex/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.codex/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.codex/skills/wizard/SKILL.md +0 -44
- package/template/.codex/skills/wizard/agents/openai.yaml +0 -3
- package/template/.codex/skills/wizard/template.sh +0 -204
- package/template/.codex/skills/writing-skills/SKILL.md +0 -689
- package/template/.codex/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.codex/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.codex/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.codex/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.codex/skills/writing-skills/render-graphs.js +0 -168
- package/template/.codex/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.hermes/skills/claude-handoff/SKILL.md +0 -18
- package/template/.hermes/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.hermes/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.hermes/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.hermes/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.hermes/skills/web-design-engineer/README.md +0 -461
- package/template/.hermes/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.hermes/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.hermes/skills/web-design-engineer/manifest.json +0 -15
- package/template/.hermes/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.hermes/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.hermes/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.hermes/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.hermes/skills/web-video-presentation/README.md +0 -322
- package/template/.hermes/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.hermes/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.hermes/skills/web-video-presentation/manifest.json +0 -15
- package/template/.hermes/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.hermes/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.hermes/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.hermes/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.hermes/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.hermes/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.hermes/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.hermes/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.hermes/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.hermes/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.hermes/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.hermes/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.hermes/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.hermes/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.hermes/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.hermes/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.hermes/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.hermes/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.hermes/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.hermes/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.hermes/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.hermes/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.hermes/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.hermes/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.hermes/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.hermes/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.hermes/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.hermes/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.hermes/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.hermes/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.hermes/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.hermes/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.hermes/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.hermes/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.hermes/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.hermes/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.hermes/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.hermes/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.hermes/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.hermes/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.hermes/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.hermes/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.hermes/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.hermes/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.hermes/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.hermes/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.hermes/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.hermes/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.hermes/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.hermes/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.hermes/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.hermes/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.hermes/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.hermes/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.hermes/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.hermes/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.hermes/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.hermes/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.hermes/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.hermes/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.hermes/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.hermes/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.hermes/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.hermes/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.hermes/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.hermes/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.hermes/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.hermes/skills/wizard/SKILL.md +0 -44
- package/template/.hermes/skills/wizard/agents/openai.yaml +0 -3
- package/template/.hermes/skills/wizard/template.sh +0 -204
- package/template/.hermes/skills/writing-skills/SKILL.md +0 -689
- package/template/.hermes/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.hermes/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.hermes/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.hermes/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.hermes/skills/writing-skills/render-graphs.js +0 -168
- package/template/.hermes/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.pi/skills/claude-handoff/SKILL.md +0 -18
- package/template/.pi/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.pi/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.pi/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.pi/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.pi/skills/web-design-engineer/README.md +0 -461
- package/template/.pi/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.pi/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.pi/skills/web-design-engineer/manifest.json +0 -15
- package/template/.pi/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.pi/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.pi/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.pi/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.pi/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.pi/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.pi/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.pi/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.pi/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.pi/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.pi/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.pi/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.pi/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.pi/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.pi/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.pi/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.pi/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.pi/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.pi/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.pi/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.pi/skills/web-video-presentation/README.md +0 -322
- package/template/.pi/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.pi/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.pi/skills/web-video-presentation/manifest.json +0 -15
- package/template/.pi/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.pi/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.pi/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.pi/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.pi/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.pi/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.pi/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.pi/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.pi/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.pi/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.pi/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.pi/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.pi/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.pi/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.pi/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.pi/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.pi/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.pi/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.pi/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.pi/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.pi/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.pi/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.pi/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.pi/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.pi/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.pi/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.pi/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.pi/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.pi/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.pi/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.pi/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.pi/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.pi/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.pi/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.pi/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.pi/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.pi/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.pi/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.pi/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.pi/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.pi/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.pi/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.pi/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.pi/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.pi/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.pi/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.pi/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.pi/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.pi/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.pi/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.pi/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.pi/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.pi/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.pi/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.pi/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.pi/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.pi/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.pi/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.pi/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.pi/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.pi/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.pi/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.pi/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.pi/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.pi/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.pi/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.pi/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.pi/skills/wizard/SKILL.md +0 -44
- package/template/.pi/skills/wizard/agents/openai.yaml +0 -3
- package/template/.pi/skills/wizard/template.sh +0 -204
- package/template/.pi/skills/writing-skills/SKILL.md +0 -689
- package/template/.pi/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.pi/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.pi/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.pi/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.pi/skills/writing-skills/render-graphs.js +0 -168
- package/template/.pi/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.qoder/skills/claude-handoff/SKILL.md +0 -18
- package/template/.qoder/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.qoder/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.qoder/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.qoder/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.qoder/skills/web-design-engineer/README.md +0 -461
- package/template/.qoder/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.qoder/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.qoder/skills/web-design-engineer/manifest.json +0 -15
- package/template/.qoder/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.qoder/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.qoder/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.qoder/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.qoder/skills/web-video-presentation/README.md +0 -322
- package/template/.qoder/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.qoder/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.qoder/skills/web-video-presentation/manifest.json +0 -15
- package/template/.qoder/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.qoder/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.qoder/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.qoder/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.qoder/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.qoder/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.qoder/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.qoder/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.qoder/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.qoder/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.qoder/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.qoder/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.qoder/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.qoder/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.qoder/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.qoder/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.qoder/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.qoder/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.qoder/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.qoder/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.qoder/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.qoder/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.qoder/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.qoder/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.qoder/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.qoder/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.qoder/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.qoder/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.qoder/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.qoder/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.qoder/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.qoder/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.qoder/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.qoder/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.qoder/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.qoder/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.qoder/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.qoder/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.qoder/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.qoder/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.qoder/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.qoder/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.qoder/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.qoder/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.qoder/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.qoder/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.qoder/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.qoder/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.qoder/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.qoder/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.qoder/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.qoder/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.qoder/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.qoder/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.qoder/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.qoder/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.qoder/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.qoder/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.qoder/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.qoder/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.qoder/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.qoder/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.qoder/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.qoder/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.qoder/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.qoder/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.qoder/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.qoder/skills/wizard/SKILL.md +0 -44
- package/template/.qoder/skills/wizard/agents/openai.yaml +0 -3
- package/template/.qoder/skills/wizard/template.sh +0 -204
- package/template/.qoder/skills/writing-skills/SKILL.md +0 -689
- package/template/.qoder/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.qoder/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.qoder/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.qoder/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.qoder/skills/writing-skills/render-graphs.js +0 -168
- package/template/.qoder/skills/writing-skills/testing-skills-with-subagents.md +0 -384
- package/template/.trae/skills/claude-handoff/SKILL.md +0 -18
- package/template/.trae/skills/claude-handoff/agents/openai.yaml +0 -5
- package/template/.trae/skills/git-guardrails-claude-code/SKILL.md +0 -95
- package/template/.trae/skills/git-guardrails-claude-code/agents/openai.yaml +0 -3
- package/template/.trae/skills/git-guardrails-claude-code/scripts/block-dangerous-git.sh +0 -25
- package/template/.trae/skills/web-design-engineer/README.md +0 -461
- package/template/.trae/skills/web-design-engineer/README.zh-CN.md +0 -461
- package/template/.trae/skills/web-design-engineer/SKILL.md +0 -493
- package/template/.trae/skills/web-design-engineer/manifest.json +0 -15
- package/template/.trae/skills/web-design-engineer/references/advanced-patterns.md +0 -521
- package/template/.trae/skills/web-design-engineer/references/critique-guide.md +0 -226
- package/template/.trae/skills/web-design-engineer/references/design-directions.md +0 -188
- package/template/.trae/skills/web-design-engineer/references/style-recipes/INDEX.md +0 -145
- package/template/.trae/skills/web-design-engineer/references/style-recipes/active-theory.md +0 -49
- package/template/.trae/skills/web-design-engineer/references/style-recipes/aesop.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/apple-hig.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/are-na.md +0 -55
- package/template/.trae/skills/web-design-engineer/references/style-recipes/balenciaga-post-2017.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/bloomberg-businessweek-turley.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/bloomberg-terminal.md +0 -56
- package/template/.trae/skills/web-design-engineer/references/style-recipes/dieter-rams-braun.md +0 -50
- package/template/.trae/skills/web-design-engineer/references/style-recipes/field-io.md +0 -50
- package/template/.trae/skills/web-design-engineer/references/style-recipes/headspace-meditation.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/linear.md +0 -61
- package/template/.trae/skills/web-design-engineer/references/style-recipes/mailchimp-freddie.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/mid-century-modern.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/monocle-magazine.md +0 -53
- package/template/.trae/skills/web-design-engineer/references/style-recipes/muji-kenya-hara.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/notion-pre-ai.md +0 -53
- package/template/.trae/skills/web-design-engineer/references/style-recipes/nyt-the-daily.md +0 -54
- package/template/.trae/skills/web-design-engineer/references/style-recipes/pentagram.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/raycast.md +0 -54
- package/template/.trae/skills/web-design-engineer/references/style-recipes/resn-storytelling.md +0 -49
- package/template/.trae/skills/web-design-engineer/references/style-recipes/stripe-press.md +0 -54
- package/template/.trae/skills/web-design-engineer/references/style-recipes/tufte-dataink.md +0 -52
- package/template/.trae/skills/web-design-engineer/references/style-recipes/vercel-mesh.md +0 -56
- package/template/.trae/skills/web-design-engineer/references/style-recipes/vignelli-swiss-helvetica.md +0 -50
- package/template/.trae/skills/web-design-engineer/references/style-recipes/y2k-retrofuturism.md +0 -54
- package/template/.trae/skills/web-video-presentation/README.md +0 -322
- package/template/.trae/skills/web-video-presentation/README.zh-CN.md +0 -322
- package/template/.trae/skills/web-video-presentation/SKILL.md +0 -451
- package/template/.trae/skills/web-video-presentation/manifest.json +0 -15
- package/template/.trae/skills/web-video-presentation/references/AUDIO.md +0 -276
- package/template/.trae/skills/web-video-presentation/references/CHAPTER-CRAFT.md +0 -224
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/README.md +0 -107
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/case-tech-review/README.md +0 -56
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/case-tech-review/outline-snippet.md +0 -71
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/hook-chapter/README.md +0 -86
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.css +0 -197
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/hook-chapter/chapter.tsx +0 -125
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/list-reveal/README.md +0 -91
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.css +0 -137
- package/template/.trae/skills/web-video-presentation/references/EXAMPLES/list-reveal/chapter.tsx +0 -103
- package/template/.trae/skills/web-video-presentation/references/OUTLINE-FORMAT.md +0 -203
- package/template/.trae/skills/web-video-presentation/references/RECORDING.md +0 -77
- package/template/.trae/skills/web-video-presentation/references/SCRIPT-STYLE.md +0 -409
- package/template/.trae/skills/web-video-presentation/references/THEMES.md +0 -351
- package/template/.trae/skills/web-video-presentation/scripts/scaffold.sh +0 -245
- package/template/.trae/skills/web-video-presentation/templates/index.html +0 -12
- package/template/.trae/skills/web-video-presentation/templates/scripts/extract-narrations.ts +0 -137
- package/template/.trae/skills/web-video-presentation/templates/scripts/synthesize-audio.sh +0 -145
- package/template/.trae/skills/web-video-presentation/templates/scripts/tts-providers/README.md +0 -324
- package/template/.trae/skills/web-video-presentation/templates/scripts/tts-providers/minimax.sh +0 -50
- package/template/.trae/skills/web-video-presentation/templates/scripts/tts-providers/openai.sh +0 -70
- package/template/.trae/skills/web-video-presentation/templates/src/App.tsx +0 -73
- package/template/.trae/skills/web-video-presentation/templates/src/chapters/01-example/Example.css +0 -80
- package/template/.trae/skills/web-video-presentation/templates/src/chapters/01-example/Example.tsx +0 -104
- package/template/.trae/skills/web-video-presentation/templates/src/chapters/01-example/narrations.ts +0 -28
- package/template/.trae/skills/web-video-presentation/templates/src/components/AutoStartGate.css +0 -55
- package/template/.trae/skills/web-video-presentation/templates/src/components/AutoStartGate.tsx +0 -36
- package/template/.trae/skills/web-video-presentation/templates/src/components/AutoToggle.css +0 -53
- package/template/.trae/skills/web-video-presentation/templates/src/components/AutoToggle.tsx +0 -36
- package/template/.trae/skills/web-video-presentation/templates/src/components/MaskReveal.tsx +0 -35
- package/template/.trae/skills/web-video-presentation/templates/src/components/ProgressBar.css +0 -122
- package/template/.trae/skills/web-video-presentation/templates/src/components/ProgressBar.tsx +0 -109
- package/template/.trae/skills/web-video-presentation/templates/src/components/Stage.tsx +0 -48
- package/template/.trae/skills/web-video-presentation/templates/src/hooks/useAudioPlayer.ts +0 -112
- package/template/.trae/skills/web-video-presentation/templates/src/hooks/useAutoMode.ts +0 -66
- package/template/.trae/skills/web-video-presentation/templates/src/hooks/useStageScale.ts +0 -28
- package/template/.trae/skills/web-video-presentation/templates/src/hooks/useStepper.ts +0 -174
- package/template/.trae/skills/web-video-presentation/templates/src/main.tsx +0 -9
- package/template/.trae/skills/web-video-presentation/templates/src/registry/chapters.ts +0 -23
- package/template/.trae/skills/web-video-presentation/templates/src/registry/types.ts +0 -25
- package/template/.trae/skills/web-video-presentation/templates/src/styles/animations.css +0 -63
- package/template/.trae/skills/web-video-presentation/templates/src/styles/base.css +0 -415
- package/template/.trae/skills/web-video-presentation/templates/src/styles/fonts.css +0 -20
- package/template/.trae/skills/web-video-presentation/templates/vite.config.ts +0 -10
- package/template/.trae/skills/web-video-presentation/themes/bauhaus-bold/theme.json +0 -27
- package/template/.trae/skills/web-video-presentation/themes/bauhaus-bold/tokens.css +0 -60
- package/template/.trae/skills/web-video-presentation/themes/blueprint/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/blueprint/tokens.css +0 -65
- package/template/.trae/skills/web-video-presentation/themes/bold-signal/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/bold-signal/tokens.css +0 -71
- package/template/.trae/skills/web-video-presentation/themes/chalk-garden/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/chalk-garden/tokens.css +0 -64
- package/template/.trae/skills/web-video-presentation/themes/creative-voltage/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/creative-voltage/tokens.css +0 -68
- package/template/.trae/skills/web-video-presentation/themes/dark-botanical/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/dark-botanical/tokens.css +0 -68
- package/template/.trae/skills/web-video-presentation/themes/dune/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/dune/tokens.css +0 -62
- package/template/.trae/skills/web-video-presentation/themes/electric-studio/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/electric-studio/tokens.css +0 -68
- package/template/.trae/skills/web-video-presentation/themes/forest-ink/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/forest-ink/tokens.css +0 -68
- package/template/.trae/skills/web-video-presentation/themes/indigo-porcelain/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/indigo-porcelain/tokens.css +0 -62
- package/template/.trae/skills/web-video-presentation/themes/kraft-paper/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/kraft-paper/tokens.css +0 -67
- package/template/.trae/skills/web-video-presentation/themes/midnight-press/theme.json +0 -26
- package/template/.trae/skills/web-video-presentation/themes/midnight-press/tokens.css +0 -56
- package/template/.trae/skills/web-video-presentation/themes/monochrome-print/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/monochrome-print/tokens.css +0 -60
- package/template/.trae/skills/web-video-presentation/themes/neon-cyber/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/neon-cyber/tokens.css +0 -75
- package/template/.trae/skills/web-video-presentation/themes/newsroom/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/newsroom/tokens.css +0 -63
- package/template/.trae/skills/web-video-presentation/themes/paper-press/theme.json +0 -27
- package/template/.trae/skills/web-video-presentation/themes/paper-press/tokens.css +0 -65
- package/template/.trae/skills/web-video-presentation/themes/pastel-dream/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/pastel-dream/tokens.css +0 -67
- package/template/.trae/skills/web-video-presentation/themes/split-canvas/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/split-canvas/tokens.css +0 -70
- package/template/.trae/skills/web-video-presentation/themes/sunset-zine/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/sunset-zine/tokens.css +0 -65
- package/template/.trae/skills/web-video-presentation/themes/swiss-ikb/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/swiss-ikb/tokens.css +0 -77
- package/template/.trae/skills/web-video-presentation/themes/terminal-green/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/terminal-green/tokens.css +0 -73
- package/template/.trae/skills/web-video-presentation/themes/vintage-editorial/theme.json +0 -28
- package/template/.trae/skills/web-video-presentation/themes/vintage-editorial/tokens.css +0 -66
- package/template/.trae/skills/web-video-presentation/themes/warm-keynote/theme.json +0 -27
- package/template/.trae/skills/web-video-presentation/themes/warm-keynote/tokens.css +0 -66
- package/template/.trae/skills/wireframe-prototype/SKILL.md +0 -56
- package/template/.trae/skills/wireframe-prototype/agents/openai.yaml +0 -4
- package/template/.trae/skills/wizard/SKILL.md +0 -44
- package/template/.trae/skills/wizard/agents/openai.yaml +0 -3
- package/template/.trae/skills/wizard/template.sh +0 -204
- package/template/.trae/skills/writing-skills/SKILL.md +0 -689
- package/template/.trae/skills/writing-skills/anthropic-best-practices.md +0 -1150
- package/template/.trae/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/template/.trae/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/template/.trae/skills/writing-skills/persuasion-principles.md +0 -187
- package/template/.trae/skills/writing-skills/render-graphs.js +0 -168
- package/template/.trae/skills/writing-skills/testing-skills-with-subagents.md +0 -384
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: "yss-components"
|
|
3
|
-
description: Use when YSS
|
|
3
|
+
description: Use when YSS Vue 页面涉及布局、YTable、YEditTable、YFormily、YTree、ConditionBuilder、空态、弹窗或业务组件选型。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# YSS 页面组件开发标准
|
|
@@ -9,11 +9,32 @@ description: Use when YSS UI 组件开发规范与最佳实践。涉及页面布
|
|
|
9
9
|
|
|
10
10
|
## 0. 权威资料与边界
|
|
11
11
|
|
|
12
|
-
- YSS UI 组件文档:`http://192.168.164.27:3200/components
|
|
12
|
+
- YSS UI 组件文档:`http://192.168.164.27:3200/components`(组件契约以该手册为准;本技能依据 2026-08-18 可见内容整理)
|
|
13
13
|
- 本地引用索引:`references/frontend-docs.md`
|
|
14
14
|
|
|
15
15
|
本技能只负责页面组件、布局和交互呈现规范。请求、分页参数、接口映射交给 `yss-hook` 或 `api-integration`;完整页面生成流程交给 `yss-page-module-development`;表格/树高度细节交给 `yss-use-table-height` 或 `yss-use-tree-height`。
|
|
16
16
|
|
|
17
|
+
组件文档与当前项目的已验证用法冲突时,先检查当前项目代码和依赖版本,再决定是否迁移;不得把上游 Ant Design Vue、vxe-table、Univer 或 Monaco 的未验证 API 当作 YSS 顶层契约。
|
|
18
|
+
|
|
19
|
+
## 0.1 组件选型速查
|
|
20
|
+
|
|
21
|
+
| 场景 | 首选组件 | 关键边界 |
|
|
22
|
+
| --- | --- | --- |
|
|
23
|
+
| 常规动作、权限控制、操作下拉 | `YButton`、`AuthorityDropdown` | 用 `permissionCode` + `fallback` 控制隐藏/禁用;按需导入下拉必须使用 `AuthorityDropdown`,不使用仅全量注册的 `YDropdown` 别名。 |
|
|
24
|
+
| 信息分组、统计卡片 | `YCard` | 组件不处理卡片布局;使用 CSS Grid/Flex 排版,`padding` 与 `bodyStyle.padding` 同时提供时以后者为准。 |
|
|
25
|
+
| 左树右表、上下内容区 | `YSplitPane` | 轻内容使用默认实时拖拽;树、宽表、编辑器、图表等重内容使用 `resize-mode="deferred"` + `collapse-animation="transform"`。 |
|
|
26
|
+
| 树、目录、资源导航 | `YTree` | 受控选择使用 `v-model:selected-keys`;大量节点必须给 `height`,再按需设置 `virtual`,不能只靠 CSS 高度。 |
|
|
27
|
+
| 查询、编辑、详情表单 | `YFormily` | 新代码使用公开导出 `YFormily`;`YssFormily` 仅为历史兼容名。查询动作、展开状态和跨字段联动都以 schema / `scope` / `x-reactions` 表达。 |
|
|
28
|
+
| 常规展示、选择、分页、筛选、操作列 | `YTable` | 远程分页和远程筛选由 Hook 管理;多选必须声明业务 `row-config.keyField`,不能依赖内部 `_X_ROW_KEY`。 |
|
|
29
|
+
| 行内编辑、单元格校验、拖拽排序 | `YEditTable` | 只在确有编辑闭环时使用;保存前调用 `validate()`,以 `v-model:data` 与公开 `updateRow` 事件接回受控数据。 |
|
|
30
|
+
| 嵌套 AND/OR、字段-操作符-值联动 | `YConditionBuilder` | 保存和请求映射在 Hook;组件只维护 `ConditionGroup`。复杂筛选不是把字段硬编码回普通 `YFormily` 模板。 |
|
|
31
|
+
| 月视图、排班、日程状态 | `YMonthCalendar` | 是单日期选择与展示月份的独立状态,不是日期范围输入器;范围查询继续在 `YFormily` 的日期字段完成。 |
|
|
32
|
+
| SQL / JSON / 配置编辑、日志阅读 | `YMonaco` / `YMonacoDiff` | 容器变更后必要时调用 `layout()`;日志追加使用 `appendContent()`,不反复 `setValue()`。 |
|
|
33
|
+
| Cron 配置 | `YCron` | 输出为七段 `秒 分 时 天 月 周 年`;只使用其 `v-model`、`disabled`、`show-second`、`show-year` 公开契约。 |
|
|
34
|
+
| 类 Excel 协作编辑 | `YSheet` | 必须给明确高度;只通过 Facade API 更新工作簿,卸载后释放实例;评估 Univer/React/RxJS 的包体影响。 |
|
|
35
|
+
| 两步文件导入与失败结果下载 | `YFileImport` | 默认阻止 Upload 自动上传;在 `nextStep` / `finalImport` 事件中由业务实现校验、上传和结果回显。 |
|
|
36
|
+
| 图表 | `YssEcharts` | 先阅读当前版本组件页面与项目现有图表实践,再确定 option、数据更新和容器尺寸方案。 |
|
|
37
|
+
|
|
17
38
|
## 1. 触发场景
|
|
18
39
|
|
|
19
40
|
当需求涉及以下任一内容时,优先按本技能执行:
|
|
@@ -21,7 +42,7 @@ description: Use when YSS UI 组件开发规范与最佳实践。涉及页面布
|
|
|
21
42
|
- 新建页面或重构页面结构
|
|
22
43
|
- 左树右表、左右分栏、主从布局
|
|
23
44
|
- YTable 列渲染、分页、空态
|
|
24
|
-
- YssFormily
|
|
45
|
+
- YFormily(或历史代码中的 YssFormily)查询区与 schema 配置
|
|
25
46
|
- 页面级弹窗、详情抽屉、Header 信息区
|
|
26
47
|
|
|
27
48
|
## 2. 页面目录规范
|
|
@@ -49,9 +70,9 @@ views/PageName/
|
|
|
49
70
|
- `index.vue` 仅编排页面,不承载复杂数据转换
|
|
50
71
|
- `components/` 放展示型或区块型组件
|
|
51
72
|
- `hooks/` 放页面业务逻辑 Hook
|
|
52
|
-
- `schemas/` 放
|
|
73
|
+
- `schemas/` 放 YFormily 元数据定义
|
|
53
74
|
|
|
54
|
-
## 3.
|
|
75
|
+
## 3. 页面骨架规范(YSplitPane + YTree)
|
|
55
76
|
|
|
56
77
|
页面容器使用 `YSplitPane`,并提供宽度边界与 `storage-key`。
|
|
57
78
|
|
|
@@ -81,13 +102,17 @@ views/PageName/
|
|
|
81
102
|
- 左侧区域承载目录、筛选树、统计导航
|
|
82
103
|
- 右侧区域按顺序组织 Header、查询区、数据区
|
|
83
104
|
- 右侧无选中对象时必须提供明确空态
|
|
105
|
+
- 尺寸需要受控时使用 `v-model:left-width`(纵向使用 `v-model:top-height`);`storage-key` 仅保存用户尺寸,不替代页面状态。
|
|
106
|
+
- 左树使用业务主键配置 `field-names`,选中状态使用 `v-model:selected-keys`。树数据量大时传入明确 `height`,必要时启用虚拟滚动;搜索区通过 `#search`、`#header-left`、`#header-right` 扩展,不复制内置搜索逻辑。
|
|
107
|
+
- 节点“更多”操作使用 `get-node-actions` 和 `@action`;默认点击更多会选中该节点,若不应改变主内容选择,显式设置 `:select-on-action-click="false"`。
|
|
108
|
+
- 折叠树时默认保留内容状态(`destroy-on-collapse=false`)。只有确需释放重 DOM、且允许丢失树展开/勾选/滚动状态时才设为 `true`。
|
|
84
109
|
|
|
85
|
-
## 4. 查询区规范(
|
|
110
|
+
## 4. 查询区规范(YFormily)
|
|
86
111
|
|
|
87
112
|
查询表单必须采用 schema 驱动,页面中只负责绑定 `schema`、`scope`、初始值与插槽。
|
|
88
113
|
|
|
89
114
|
```vue
|
|
90
|
-
<
|
|
115
|
+
<YFormily
|
|
91
116
|
ref="formRef"
|
|
92
117
|
:schema="searchSchema"
|
|
93
118
|
:model-value="initialValues"
|
|
@@ -99,7 +124,7 @@ views/PageName/
|
|
|
99
124
|
<a-input v-model:value="searchVal" />
|
|
100
125
|
</a-input-group>
|
|
101
126
|
</template>
|
|
102
|
-
</
|
|
127
|
+
</YFormily>
|
|
103
128
|
```
|
|
104
129
|
|
|
105
130
|
schema 约束:
|
|
@@ -107,6 +132,10 @@ schema 约束:
|
|
|
107
132
|
- 使用 `FormLayout + FormGrid + FormItem` 组织字段
|
|
108
133
|
- 按钮区使用 `AutoButtonGroup + Submit`
|
|
109
134
|
- 行为通过 `onSubmit: '{{ handleQuery }}'` 等 scope 方法绑定
|
|
135
|
+
- 新页面统一使用 `YFormily`;`YssFormily` 不作为新代码的组件名或类型来源。
|
|
136
|
+
- 查询表单需要折叠时启用 `collapsible`,并用 `v-model:expanded` 管理外部状态。使用 `#actions` 自定义操作区后,组件会把折叠入口置于其左侧;不要再手写第二套展开逻辑。
|
|
137
|
+
- 字段显隐、禁用、数据源联动使用 `x-reactions`;单字段输入优先监听底层组件的 `onUpdate:value`,选择/失焦事件以 Ant Design Vue 对应事件为准。复杂异步、副作用和跨页面可复用逻辑下沉到 Hook。
|
|
138
|
+
- 详情页使用 `mode="2"`,字段插槽固定为 `#detail-<path>`(路径中的 `.` 替换为 `-`);不要为只读页另建一套模板。
|
|
110
139
|
|
|
111
140
|
## 5. 数据区规范(YTable)
|
|
112
141
|
|
|
@@ -133,6 +162,22 @@ schema 约束:
|
|
|
133
162
|
- 先固定序号列,再拼接动态列
|
|
134
163
|
- 列字段名与接口字段保持一致
|
|
135
164
|
- 长文本列优先 `showOverflow` 或省略显示
|
|
165
|
+
- 按业务主键设置 `:row-config="{ keyField: 'id', useKey: true }"`;涉及刷新、树表、勾选或批量操作时这是必需项。
|
|
166
|
+
- 分页数据来自服务端时在 `pagination` 中明确 `remote: true`,由 Hook 响应 `page-change` / `size-change` 后刷新数据和 `total`;不得让组件在远程数据上再次切片。
|
|
167
|
+
- 远程列筛选监听 `filter-change`,列上提供稳定的 `filters`,并设置 `filterMethod: () => true` 禁用 vxe-table 本地过滤;本地筛选才编写真实 `filterMethod`。
|
|
168
|
+
- 多选首列为 `type: 'checkbox'`,用 `v-model:selected-row-keys` 或 `v-model:selected-rows` 受控。批量动作放在 `#toolbar-right`,成功后重置选中键或调用 `clearSelection()`。
|
|
169
|
+
- 插槽统一使用 kebab-case:`#<field>-header`、`#<field>-filter`、`#expand-row`、`#group-header`、`#toolbar-left`、`#toolbar-right`。不要把 camelCase 旧兼容写法用于新模板。
|
|
170
|
+
- 最后一列宽度必须精确控制时设置 `:auto-flex-column="false"`;默认自动填满余宽。数据量达到组件阈值时让默认 `virtualXConfig` / `virtualYConfig` 生效,避免手动拼接分页假象。
|
|
171
|
+
|
|
172
|
+
### 5.1 可编辑表格的升级条件
|
|
173
|
+
|
|
174
|
+
只有同时满足“用户需要在行内编辑”和“编辑前校验、保存或取消回退”时,从 `YTable` 升级到 `YEditTable`:
|
|
175
|
+
|
|
176
|
+
- 列通过 `component`(可为纯函数)声明编辑器;按行差异由 `cellProps(ctx)` 决定,函数不得有副作用。
|
|
177
|
+
- 必填和自定义校验通过 `editRules` / `customRule` 声明,提交前调用 `tableRef.value.validate()`;校验失败不得发起保存请求。
|
|
178
|
+
- 以 `v-model:data` 接收完整数据,或在 Vue 模板监听公开 `updateRow` 事件的 kebab-case 写法 `@update-row` 接收单元格变更;保存失败由业务层回退受控数据或保持编辑态,不能假定组件自动持久化。
|
|
179
|
+
- 行级候选项优先级为“行对象 `rowOptionsFieldName`(默认 `options`)→ 列 `options` → `optionsMap[field]`”。字段联动、异步候选和清空关联值必须落在 Hook 的单一数据流中。
|
|
180
|
+
- 编辑表的表头筛选仍是 `filterable + filters + filterMethod`;编辑态 `filterOptions` 只过滤该行下拉候选,二者不可混用。
|
|
136
181
|
|
|
137
182
|
## 6. 交互状态规范
|
|
138
183
|
|
|
@@ -143,6 +188,36 @@ schema 约束:
|
|
|
143
188
|
- `selected`:依赖选中节点时,未选中显示引导空态
|
|
144
189
|
- `error`:请求失败提示 `message.error`
|
|
145
190
|
|
|
191
|
+
### 6.1 复杂条件、日历和导入的状态契约
|
|
192
|
+
|
|
193
|
+
#### `YConditionBuilder`
|
|
194
|
+
|
|
195
|
+
- 用于可嵌套的 AND/OR 条件树,根值必须是 `ConditionGroup`:`{ id, type: 'GROUP', logicalOp: 'AND' | 'OR', children }`;叶子是 `{ id, type: 'LEAF', field, operator, value, betweenValue1?, betweenValue2? }`。
|
|
196
|
+
- 静态操作符使用 `operator-options`;字段切换需改变操作符或值候选时使用 `get-operators(field)` 与 `load-values({ q, field, operator })`。远程字段搜索使用 `load-fields(q)`。
|
|
197
|
+
- 默认严格校验;提交前调用 `ref.validate()`。只有明确允许未完成草稿时才能关闭 `strict-mode`。
|
|
198
|
+
- 嵌套深度由 `max-depth` 限制(默认 3)。条件树到接口筛选 DSL 的序列化、恢复与错误兜底必须放在 `hooks/useXxx.ts`,保留组件内的标准模型。
|
|
199
|
+
- `readonly` 已废弃且不生效;展示态统一传 `disabled`。
|
|
200
|
+
|
|
201
|
+
#### `YMonthCalendar`
|
|
202
|
+
|
|
203
|
+
- `v-model` 管理一个选中 `Dayjs`,`v-model:month` 管理展示月份;两者不要混为一个日期范围字段。
|
|
204
|
+
- `valid-range` 限制可选范围,`disabled-date` 处理业务禁用日期。`validRange` 起止传反时组件会自动交换,但业务仍应在 Hook 中规范化输入。
|
|
205
|
+
- 需要连续假期/日程视觉时使用 `cell-layout="grid"` 和 `#date-cell` / `#date-cell-extra`;自定义单元格必须根据 `isToday`、`isSelected`、`isDisabled` 等上下文自行保留状态语义。
|
|
206
|
+
- 父容器高度确定且需要填满时才使用 `fill-height`;它要求父容器有明确高度。键盘、右键或双击动作接入 `select`、`cell-contextmenu`、`cell-dblclick`,不覆盖组件默认焦点行为。
|
|
207
|
+
|
|
208
|
+
#### `YFileImport`
|
|
209
|
+
|
|
210
|
+
- 以 `v-model` 管理弹窗显示;选择文件、`nextStep` 校验/预检、结果回显、`finalImport` 确认构成两步流程。事件会提供 `fileList`、`loadingName` 和 `close`。
|
|
211
|
+
- 默认 `beforeUpload` 始终返回 `false`,因此不能期待 `action` 自动上传。需要直传时只在 `upload-props.customRequest` 实现,文件类型规则由 `accept` 或 `file-type-list` 统一配置。
|
|
212
|
+
- `importResult` 用于展示成功、失败和总数;失败文件下载用 `exportErrorData` 事件。遮罩、居中等弹窗配置只放 `modal-props`,上传器配置只放 `upload-props`。
|
|
213
|
+
|
|
214
|
+
### 6.2 编辑器、Cron、Sheet 与图表
|
|
215
|
+
|
|
216
|
+
- `YMonaco` 默认 `auto-layout`;在分栏折叠、抽屉打开等容器尺寸变化后确认编辑器已布局。只读日志使用 `language="log"` 或 `"yss-log"`,并用 `appendContent()` 追加;超大内容避免频繁重设完整字符串。
|
|
217
|
+
- `YCron` 的业务值就是七段表达式。页面仅负责双向绑定和禁用态;Cron 到后端调度模型的转换、时区和生效校验属于接口/Hook 层。
|
|
218
|
+
- `YSheet` 的 `modelValue` 是工作簿数据;初始化后经 `getUniverAPI()` / `getWorkbook()` 的 Facade 修改并用 `save()` 取值,禁止直接改 `IWorkbookData`。必须设置容器高度;使用前确认 optionalDependencies 已被私服安装成功。
|
|
219
|
+
- `YssEcharts` 的 option、数据更新策略和容器尺寸以当前版本手册与项目既有实践为准;不得把原生 ECharts 初始化、实例销毁和 ResizeObserver 再复制进页面层。
|
|
220
|
+
|
|
146
221
|
## 7. 组件编码规范
|
|
147
222
|
|
|
148
223
|
- 使用 `<script setup lang="ts">`
|
|
@@ -220,7 +295,7 @@ schema 约束:
|
|
|
220
295
|
满足任一条件即可触发本技能:
|
|
221
296
|
|
|
222
297
|
- 用户提到“页面搭建、页面重构、页面区块拆分”
|
|
223
|
-
- 用户提到“YTable、
|
|
298
|
+
- 用户提到“YTable、YEditTable、YFormily、YTree、YSplitPane、ConditionBuilder”
|
|
224
299
|
- 用户提到“左树右表、查询区、表格区、空态、详情弹窗”
|
|
225
300
|
- 用户要求“参考 QualityReportData 做一个新页面”
|
|
226
301
|
|
|
@@ -234,7 +309,7 @@ schema 约束:
|
|
|
234
309
|
应触发示例:
|
|
235
310
|
|
|
236
311
|
- “帮我按 QualityReportData 的结构搭一个新页面,左侧树右侧表格。”
|
|
237
|
-
- “把这个页面查询区改成
|
|
312
|
+
- “把这个页面查询区改成 YFormily schema 驱动。”
|
|
238
313
|
- “YTable 需要加分页和空态,顺便补一个详情弹窗。”
|
|
239
314
|
|
|
240
315
|
不应优先触发示例:
|
|
@@ -80,7 +80,7 @@ description: Use when YSS 产品设计系统与 Ant Design 企业级 UI 风格
|
|
|
80
80
|
| Spec 后做页面 / 原型 / 交互说明 | `yss-prototype-stage` → `product-design:index` |
|
|
81
81
|
| 低保真原型进入高保真前评审 | `prototype-review` |
|
|
82
82
|
| 低保真评审通过后的高保真 HTML 原型 | `yss-prototype-stage`;`high-fidelity-html-prototype` 仅兼容入口 |
|
|
83
|
-
| 低保真线框或流程图 | `product-design:index`
|
|
83
|
+
| 低保真线框或流程图 | `product-design:index` |
|
|
84
84
|
| 前端页面实现 | `yss-ui` / `yss-page-module-development` |
|
|
85
85
|
| 表单 schema | `yss-formily` |
|
|
86
86
|
| YTable / YTree / 高度自适应 | `yss-components` / `yss-use-table-height` / `yss-use-tree-height` |
|
|
@@ -1,47 +1,54 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: "yss-hook"
|
|
3
|
-
description: Use when YSS
|
|
3
|
+
description: Use when YSS Vue 页面涉及 vue-hooks-plus/useRequest、分页、请求缓存、轮询、URL query、异步 loading、数据转换或树数据加载。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# YSS Hook 开发标准
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
本技能用于将 `views/**` 的请求、状态与数据映射收敛到 `hooks/useXxx.ts`。页面组件只保留布局、事件绑定和渲染。
|
|
9
9
|
|
|
10
|
-
##
|
|
10
|
+
## 0. 权威资料与边界
|
|
11
11
|
|
|
12
12
|
- YSS UI Hooks documentation: `http://192.168.164.27:3200/hooks`
|
|
13
|
+
- Vue Hooks Plus `useRequest`: `https://inhiblabcore.github.io/vue-hooks-plus/zh/hooks/useRequest/quick-start`
|
|
13
14
|
- Local reference index: `references/frontend-docs.md`
|
|
14
15
|
|
|
15
|
-
|
|
16
|
+
本技能负责请求执行、分页/筛选参数、选择状态、响应映射和页面级调度。接口导入与 Orval mutator 使用 `api-integration`;布局、组件与交互呈现使用 `yss-components`;高度计算分别使用 `yss-use-table-height` 或 `yss-use-tree-height`。
|
|
16
17
|
|
|
17
|
-
|
|
18
|
+
官方 `@yss-ui/hooks` 当前公开 `useFullscreen`、`useTreeHeight`、`useTableHeight`、`useLoading`、`usePollingTask` 与 `useUrlState`。`useRequest`、防抖、缓存或重试不属于这套公开 YSS Hooks 契约。仅当项目已批准 `vue-hooks-plus` 及其具体版本时,才可使用第 3 节的 `useRequest`;不得把它命名或包装成 YSS 官方 API。
|
|
18
19
|
|
|
19
|
-
##
|
|
20
|
+
## 0.1 Hook 选型速查
|
|
20
21
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
| 场景 | 首选 Hook / 模式 | 关键边界 |
|
|
23
|
+
| --- | --- | --- |
|
|
24
|
+
| 单次列表、详情、导出、提交请求 | 当前项目已批准的请求库;若为 Vue Hooks Plus,使用 `useRequest` | 业务 Hook 维护 loading、参数、映射和异常;不要以 `usePollingTask` 代替请求状态管理。 |
|
|
25
|
+
| 搜索防抖、缓存/SWR、失败重试或请求轮询 | 已批准的 `vue-hooks-plus/useRequest` | 仅用已锁定版本的 API;同一数据源只能有一个轮询调度器。 |
|
|
26
|
+
| 单个异步动作的 loading / 回调 | `useLoading` | 使用 `withLoading()` 包装动作;默认捕获错误并返回 `undefined`,需要上抛才设 `rethrowError: true`。 |
|
|
27
|
+
| 后台静默刷新、多接口轮询 | `usePollingTask` | 调度和页面 loading 解耦;在写入结果前检查 `isCurrent()`,请求库支持时传入 `signal`。 |
|
|
28
|
+
| 地址栏筛选、分页或详情定位 | `useUrlState` | query 是扁平字符串视图;默认 `history + replace` 不触发路由重建,依赖路由守卫时显式用 `strategy: 'router'`。 |
|
|
29
|
+
| 全屏预览、编辑器、图表 | `useFullscreen` | 真实全屏必须由用户手势触发;页面全屏仅是 CSS 覆盖层,不调用浏览器 Fullscreen API。 |
|
|
30
|
+
| 树或表格自适应高度 | `useTreeHeight` / `useTableHeight` | 按各自专项技能实现;高度 Hook 不负责请求或业务状态。 |
|
|
24
31
|
|
|
25
|
-
##
|
|
32
|
+
## 1. 基本分层
|
|
33
|
+
|
|
34
|
+
- 将请求执行、参数合并、响应映射与数据竞争处理放在 `hooks/useXxx.ts`;页面只保留布局、事件绑定和渲染。
|
|
35
|
+
- 以业务域划分 Hook,而不是为每个微小工具函数各建一个 Hook。
|
|
36
|
+
- 每个对外动作都必须有明确的 loading、成功、失败和数据陈旧策略;不要把这些分支留给模板或页面组件。
|
|
37
|
+
|
|
38
|
+
## 2. 列表 / 分页 Hook
|
|
39
|
+
|
|
40
|
+
下面示例仅说明**已批准**的 `useRequest` 具有 `manual`、`run`、`onSuccess`、`onError` 时的组织方式;`vue-hooks-plus` 的专属契约见第 3 节,其他请求库以实际 API 为准。
|
|
26
41
|
|
|
27
42
|
```ts
|
|
28
43
|
export function useReportTable() {
|
|
29
|
-
const loading = ref(false);
|
|
30
44
|
const tableData = ref<any[]>([]);
|
|
31
|
-
const currentParams = ref({
|
|
32
|
-
page: 1,
|
|
33
|
-
pageSize: 20,
|
|
34
|
-
});
|
|
35
|
-
|
|
45
|
+
const currentParams = ref({ page: 1, pageSize: 20 });
|
|
36
46
|
const pagination = reactive({
|
|
37
|
-
current: 1,
|
|
38
|
-
|
|
39
|
-
total: 0,
|
|
40
|
-
showSizeChanger: true,
|
|
41
|
-
showQuickJumper: true,
|
|
47
|
+
current: 1, pageSize: 20, total: 0,
|
|
48
|
+
showSizeChanger: true, showQuickJumper: true,
|
|
42
49
|
});
|
|
43
50
|
|
|
44
|
-
const { run: fetchList } = useRequest(apiFn, {
|
|
51
|
+
const { loading, run: fetchList } = useRequest(apiFn, {
|
|
45
52
|
manual: true,
|
|
46
53
|
onSuccess: (res) => {
|
|
47
54
|
tableData.value = res?.data?.list || [];
|
|
@@ -52,80 +59,142 @@ export function useReportTable() {
|
|
|
52
59
|
pagination.total = 0;
|
|
53
60
|
},
|
|
54
61
|
});
|
|
55
|
-
|
|
56
62
|
const query = (params: Record<string, any>) => {
|
|
57
63
|
currentParams.value = { ...currentParams.value, ...params };
|
|
58
64
|
return fetchList(currentParams.value);
|
|
59
65
|
};
|
|
60
|
-
|
|
61
66
|
const handlePageChange = (current: number, pageSize: number) => {
|
|
62
67
|
pagination.current = current;
|
|
63
68
|
pagination.pageSize = pageSize;
|
|
64
69
|
return query({ page: current, pageSize });
|
|
65
70
|
};
|
|
66
|
-
|
|
67
|
-
return {
|
|
68
|
-
loading,
|
|
69
|
-
tableData,
|
|
70
|
-
currentParams,
|
|
71
|
-
pagination,
|
|
72
|
-
query,
|
|
73
|
-
handlePageChange,
|
|
74
|
-
};
|
|
71
|
+
return { loading, tableData, currentParams, pagination, query, handlePageChange };
|
|
75
72
|
}
|
|
76
73
|
```
|
|
77
74
|
|
|
78
|
-
|
|
75
|
+
- 仅当项目已批准的请求库支持时使用 `useRequest`;通常使用 `manual: true`,除非需求明确要求挂载即请求。
|
|
76
|
+
- `currentParams` 是唯一参数源。筛选变化重置 `page: 1`;翻页只改 `page/pageSize`;刷新、导出和编辑后重载复用它。
|
|
77
|
+
- 在 Hook 内处理成功、失败、空数据和响应映射;旧列表会误导时才在失败时清空。
|
|
78
|
+
- 树数据同样由 Hook 暴露 `treeData`、`treeLoading`、`selectedKey`、`handleSelect`,并在其中处理会触发加载的选中副作用。
|
|
79
79
|
|
|
80
|
-
|
|
81
|
-
- Use `manual: true` unless the request must fire on mount.
|
|
82
|
-
- Handle success and failure in the hook, not in the page component.
|
|
83
|
-
- Reset list state on failure when stale data would be misleading.
|
|
80
|
+
## 3. `vue-hooks-plus/useRequest`(项目已批准时)
|
|
84
81
|
|
|
85
|
-
|
|
82
|
+
`useRequest` 接收返回 `Promise<TData>` 的 service,并以插件组合管理 `loading`、`data`、`error`、`params`。自动模式默认在组件初始化时执行;`manual: true` 时用 `run` 或 `runAsync` 发起请求。
|
|
86
83
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
84
|
+
```ts
|
|
85
|
+
import { useRequest } from 'vue-hooks-plus';
|
|
86
|
+
|
|
87
|
+
const { data, error, loading, params, run, runAsync, refresh, mutate, cancel } = useRequest(
|
|
88
|
+
searchReports,
|
|
89
|
+
{
|
|
90
|
+
manual: true,
|
|
91
|
+
debounceWait: 300,
|
|
92
|
+
onSuccess: (result, requestParams) => {
|
|
93
|
+
tableData.value = result.list;
|
|
94
|
+
pagination.total = result.total;
|
|
95
|
+
},
|
|
96
|
+
onError: (cause) => { requestError.value = cause; },
|
|
97
|
+
},
|
|
98
|
+
);
|
|
99
|
+
```
|
|
91
100
|
|
|
92
|
-
|
|
101
|
+
- `run` 会捕获异常并交给 `onError`;`runAsync` 返回 `Promise`,调用处必须自行 `catch`。`refresh` / `refreshAsync` 使用上一次 `params` 重发请求;不要在页面重拼参数。
|
|
102
|
+
- `mutate(nextData | updater)` 用于乐观更新;启用 `rollbackOnError` 时,远端失败会恢复更新前数据。先保存局部错误 / 刷新策略,不能只依赖乐观 UI。
|
|
103
|
+
- `cancel()` 会忽略当前 Promise 的结果和错误,并会取消仍在等待执行的防抖调用;它**不会**终止底层 Promise。若 transport 支持真正中止,service 才能额外使用其已验证的 `AbortSignal` 支持。
|
|
104
|
+
- 搜索场景优先 `debounceWait`(毫秒),并按需要配置 `debounceLeading`、`debounceTrailing`、`debounceMaxWait`。组件卸载与后一次请求的竞态响应会被库忽略;需要提前停止时调用 `cancel()`。不要再叠加自定义 timer / 序号,除非已验证当前版本或 transport 存在库无法覆盖的缺口。
|
|
105
|
+
- `useRequest` 的并发语义在文档版本间出现差异:页面说明从 v2.4.0 起手动调用可独立执行,而 Options 表仍列出 `concurrent`(默认 `false`)控制新旧请求关系。启用并发前,必须以项目锁定版本的类型、测试与行为为准;搜索和同一资源写入默认采用单一最新请求策略。
|
|
93
106
|
|
|
94
|
-
|
|
107
|
+
### 3.1 缓存、刷新与重试
|
|
95
108
|
|
|
96
|
-
-
|
|
97
|
-
-
|
|
98
|
-
-
|
|
109
|
+
- `cacheKey` 成功后会全局共享 data 和 params:同 key 的并发实例共用 Promise、数据同步。因此 key 必须包含稳定的业务身份与影响结果的参数;不同租户、用户、筛选条件或权限视图不能共用 key。副作用、实时性强或权限敏感结果默认不启用共享缓存。
|
|
110
|
+
- `staleTime` 内数据视为新鲜,不重新请求;`cacheTime` 到期清除缓存。没有 `staleTime` 时,重新挂载会先展示缓存、再后台请求(SWR)。编辑 / 提交成功后的显式 `refresh` 优先于等待 SWR。
|
|
111
|
+
- `refreshOnWindowFocus: true` 在 `visibilitychange` / `focus` 后刷新,使用 `focusTimespan`(默认 5000ms)限频。只给允许后台重取的读模型开启;编辑中的表单、一次性动作和高成本查询默认关闭。
|
|
112
|
+
- `retryCount` 控制失败后的重试次数,`-1` 为无限重试;未设 `retryInterval` 时按 2s、4s…且最高 30s 的指数退避。仅对暂时性网络 / 可恢复服务错误设置有限重试;认证授权、参数校验、业务拒绝、显式取消和非幂等写操作禁止自动重试。`cancel()` 可停止正在等待的重试。
|
|
113
|
+
- `loadingDelay` 可延迟 loading 变为 `true`,避免短请求闪烁;它不延迟请求,也不能作为防抖替代。
|
|
99
114
|
|
|
100
|
-
|
|
115
|
+
### 3.2 请求轮询与依赖刷新
|
|
101
116
|
|
|
102
|
-
|
|
117
|
+
- `pollingInterval > 0` 启用请求轮询;每次请求完成后等待间隔再发下一次。`manual: true` 时,先 `run/runAsync` 才启动。`pollingWhenHidden` 默认 `true`;仅在业务允许后台继续请求时保留,需暂停则显式设为 `false`。`pollingErrorRetryCount` 默认 `-1`,必须为生产读模型配置有限值或明确停止条件。
|
|
118
|
+
- 同一数据源只能选择 `useRequest` 轮询或 YSS `usePollingTask` 之一,禁止嵌套或同时运行。手动刷新前 `cancel()` 当前请求 / 轮询,执行带 loading 的 `refresh`,再依据明确业务规则恢复轮询。
|
|
119
|
+
- `refreshDeps` 仅在非 manual 自动模式生效;传入 `WatchSource[]` 精确声明依赖,或在理解捕获范围后用 `true` 自动收集。筛选列表通常使用显式 `query` 并在筛选变化时重置页码,不以 `refreshDeps` 隐式驱动复杂参数。
|
|
103
120
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
121
|
+
## 4. 单一异步动作:`useLoading`
|
|
122
|
+
|
|
123
|
+
`useLoading(initialValue?)` 返回 `loading`、`setLoading`、`toggleLoading` 与 `withLoading`。用 `withLoading` 包装提交、删除、导出等动作,并把刷新或状态修正写在回调中。
|
|
124
|
+
|
|
125
|
+
```ts
|
|
126
|
+
const { loading: removeLoading, withLoading } = useLoading();
|
|
127
|
+
|
|
128
|
+
async function remove(id: string) {
|
|
129
|
+
// `withLoading` 不等同于去重锁;快速重复点击须显式短路。
|
|
130
|
+
if (removeLoading.value) return;
|
|
131
|
+
await withLoading(() => deleteReport(id), {
|
|
132
|
+
onSuccess: async () => { await query(currentParams.value); },
|
|
133
|
+
onError: (error) => { actionError.value = error; },
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
- 确认弹窗属于页面 / 组件交互层;Hook 接收“已确认”的业务意图并负责执行、loading、结果更新和最小动作面。
|
|
139
|
+
- `withLoading` 默认捕获异常并返回 `undefined`;调用方确实需要捕获时才设置 `rethrowError: true`。可用 `onSuccess`、`onError`、`onFinally` 或 `keepLoadingOnError` 定义行为。
|
|
140
|
+
- 不要让一个全局 `loading` 掩盖多个互不相关动作;为删除、保存、导出等分别暴露必要状态。
|
|
141
|
+
|
|
142
|
+
## 5. 搜索竞态、取消与并行详情
|
|
143
|
+
|
|
144
|
+
`@yss-ui/hooks` 没有通用防抖、取消、缓存或重试 Hook。项目已批准 Vue Hooks Plus 时,优先遵循第 3 节;否则先确认项目请求库是否已提供这些能力,再在业务 Hook 中以最小实现处理:
|
|
145
|
+
|
|
146
|
+
- 搜索建议:维护 timer、递增请求序号和(仅当客户端支持时)`AbortController`;新输入先清除旧 timer、递增序号并取消旧请求;响应写入前比较序号;在 `onScopeDispose` 清理 timer 并中止请求。不要把这些逻辑放在页面组件。
|
|
147
|
+
- 并行详情:每个独立区域返回自己的 `{ data, loading, error, refresh }`,`refreshAll` 可以用 `Promise.allSettled` 聚合;某一区域失败不得清空或阻塞其他区域,也必须可单独刷新。
|
|
148
|
+
- 提交类动作应回滚局部乐观状态;查询类动作只在旧数据会误导时清空。
|
|
149
|
+
|
|
150
|
+
```ts
|
|
151
|
+
function createDetailPanel<T>(load: () => Promise<T>) {
|
|
152
|
+
const data = ref<T>();
|
|
153
|
+
const error = ref<unknown>();
|
|
154
|
+
const { loading, withLoading } = useLoading();
|
|
155
|
+
const refresh = () => withLoading(load, {
|
|
156
|
+
onSuccess: (result) => { data.value = result; error.value = undefined; },
|
|
157
|
+
onError: (cause) => { error.value = cause; },
|
|
158
|
+
});
|
|
159
|
+
return { data, error, loading, refresh };
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
const refreshAll = () => Promise.allSettled([
|
|
163
|
+
profile.refresh(), permissions.refresh(), audit.refresh(),
|
|
164
|
+
]);
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
## 6. 轮询:`usePollingTask`
|
|
168
|
+
|
|
169
|
+
`usePollingTask` 是通用调度器,不管理业务数据、loading 或错误状态,也不能替代请求 Hook。它在本轮任务结束后用 `setTimeout` 安排下一轮,避免 `setInterval` 造成重叠堆积。若同一数据源已采用第 3.2 节的 `useRequest` 请求轮询,不得再使用本 Hook。
|
|
170
|
+
|
|
171
|
+
```ts
|
|
172
|
+
const polling = usePollingTask(async ({ isCurrent, signal }) => {
|
|
173
|
+
const result = await fetchStatus({ signal }); // 仅在客户端支持 signal 时传入
|
|
174
|
+
if (!isCurrent()) return;
|
|
175
|
+
status.value = result;
|
|
176
|
+
}, { interval: 5_000, autoStart: true, pauseWhenHidden: true });
|
|
177
|
+
```
|
|
109
178
|
|
|
110
|
-
|
|
179
|
+
- `start`、`stop`、`restart` 会推进 generation;异步结果写入前必须调用 `isCurrent()`。`signal` 只有请求库真正支持时才能中止网络请求。
|
|
180
|
+
- `stop()` 停止但保留 interval;`setInterval(0)` 停止并把当前 interval 置零。`runNow()` 可立即执行,`restart({ immediate: false })` 可避免手动刷新后紧接着重复请求。
|
|
181
|
+
- 手动搜索 / 刷新时:先 `stop()`,走带 loading 的手动请求,再按需要 `restart()`;不可让轮询与手动请求同时竞争同一状态。
|
|
182
|
+
- 默认页面隐藏时暂停后续调度;正在执行的任务不会自动取消。`continueOnError`、`resumeMode` 和 `concurrent` 必须按接口语义显式选择。
|
|
111
183
|
|
|
112
|
-
|
|
113
|
-
2. Write the request entry with `useRequest`.
|
|
114
|
-
3. Normalize parameters with one merged params object.
|
|
115
|
-
4. Map API responses into page-ready state.
|
|
116
|
-
5. Expose a minimal action surface to the page.
|
|
184
|
+
## 7. URL、全屏与高度类 Hooks
|
|
117
185
|
|
|
118
|
-
|
|
186
|
+
- `useUrlState()`:返回扁平字符串 `state`、`setState`、`clearKeys`、`clearState`。`setState` 合并状态,`undefined`、`null`、空字符串删除键。默认 `mode: 'replace'`、`strategy: 'history'`;需要路由守卫或导航语义时用 `strategy: 'router'`。
|
|
187
|
+
- `useFullscreen(target, options?)`:返回 `isFullscreen`、`enterFullscreen`、`exitFullscreen`、`toggleFullscreen`、`isEnabled`。浏览器真全屏需要用户手势;`pageFullscreen` 是 CSS 模拟全屏,可配置 `className`、`zIndex`,并可用 `escTip` 控制提示。
|
|
188
|
+
- `useTreeHeight` 与 `useTableHeight` 通过 `ResizeObserver` 计算可用高度。树的 `extraOffset` 仅用于 YTree 内置 `filterable` 搜索区;表格可配置 `boundaryRef` 避免尺寸反馈循环,并可扣除分页、工具栏或新增按钮高度。具体布局约束交由 `yss-use-tree-height` / `yss-use-table-height`。
|
|
119
189
|
|
|
120
|
-
|
|
121
|
-
- no split source of truth for params
|
|
122
|
-
- success, failure, and empty-data cases are handled
|
|
123
|
-
- data mapping happens in the hook, not the template
|
|
124
|
-
- pagination and tree loading are decoupled when they represent different domains
|
|
190
|
+
## 8. 返回契约与自检
|
|
125
191
|
|
|
126
|
-
|
|
192
|
+
对页面只暴露必要的 loading、数据、错误、当前参数、分页 / 选择状态和动作方法。实现前依次定义状态域、单一参数源、请求入口、响应映射和页面动作面。
|
|
127
193
|
|
|
128
|
-
-
|
|
129
|
-
-
|
|
130
|
-
-
|
|
131
|
-
-
|
|
194
|
+
- 页面没有重复请求、响应映射或防抖竞态逻辑。
|
|
195
|
+
- 参数没有双数据源;筛选、分页、刷新和导出遵循同一份参数。
|
|
196
|
+
- 成功、失败、空数据、陈旧响应和重复点击均有行为定义。
|
|
197
|
+
- 并行区域可独立展示失败和刷新;轮询不会覆盖更新后的手动结果。
|
|
198
|
+
- 使用 Vue Hooks Plus 时,已确认包版本;缓存 key 已隔离身份和筛选;重试、焦点刷新和隐藏页轮询均有明确的开启理由。
|
|
199
|
+
- 不将 YSS `usePollingTask` 与 `useRequest` 轮询叠加,也不将 `cancel()` 误认为能终止底层网络请求。
|
|
200
|
+
- 不复制同一请求到多个页面,不在页面和 Hook 同时维护分页,也不把无关业务域揉进一个 Hook。
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
# yss-hook Frontend Documentation
|
|
2
2
|
|
|
3
|
-
Generated: 2026-08-
|
|
3
|
+
Generated: 2026-08-18T00:00:00+08:00
|
|
4
4
|
|
|
5
5
|
Use these YSS UI documentation entry points as authoritative references when local repo examples are insufficient.
|
|
6
6
|
|
|
7
7
|
- hooks: http://192.168.164.27:3200/hooks
|
|
8
|
+
- vue-hooks-plus/useRequest: https://inhiblabcore.github.io/vue-hooks-plus/zh/hooks/useRequest/quick-start
|
|
8
9
|
|
|
9
|
-
When documentation and local code differ, inspect the current project code before editing and prefer established local usage.
|
|
10
|
+
When documentation and local code differ, inspect the current project code before editing and prefer established local usage. `vue-hooks-plus` is a third-party request library, not an `@yss-ui/hooks` API; confirm the package and version are approved before using its options.
|
|
@@ -14,7 +14,7 @@ YSS 产品研发的全生命周期主控编排器。它决定阶段、条件门
|
|
|
14
14
|
3. `template-source` 只走模板维护流程;不得生成具体产品 Spec、原型、OpenAPI 或切片 Ticket。
|
|
15
15
|
4. `project-instance` 以 `docs/process/lifecycle-registry.yaml`、由其派生的 `docs/process/lifecycle-artifact-map.md` 和 `docs/process/harness-process-tailoring.md` 为阶段、门禁和裁剪事实来源。
|
|
16
16
|
|
|
17
|
-
YSS 仓库以本 skill 为直接入口,不机械嵌套调用 `ask-matt`。`ask-matt` 仅在用户显式调用时作为 Matt
|
|
17
|
+
YSS 仓库以本 skill 为直接入口,不机械嵌套调用 `ask-matt`。`ask-matt` 仅在用户显式调用时作为 Matt 通用导航:不得写生命周期资产或改变门禁/Ticket 状态,并须在任何写入前回交本编排器。不要修改 Matt skills 来复制 YSS 规则。
|
|
18
18
|
|
|
19
19
|
## 选择模式
|
|
20
20
|
|
|
@@ -31,7 +31,7 @@ YSS 仓库以本 skill 为直接入口,不机械嵌套调用 `ask-matt`。`ask
|
|
|
31
31
|
|
|
32
32
|
- 保留生命周期注册表定义的主阶段;其中条件门禁全部按影响面强制。命中项必须达到 `approved`,未命中项记录 `not-applicable` 和原因;产物、工作单元和证据不得被统称为门禁。
|
|
33
33
|
- 安全 / 权限不设独立生命周期资料、专属门禁或 `not-applicable` 记录。只有需求或冻结资产明确要求改变认证、授权、租户隔离、敏感数据或合规行为时,才把该行为写入普通 Spec、API、架构、验收和测试 seam,并仅按实际 UI、API、Backend、Data、High-risk 影响触发既有门禁;普通 action 注册、沿用认证中间件、未变化的 `401` / `403`、一般字段、SQL / DDL / 迁移和上传 / 下载本身不触发安全 / 权限流程。
|
|
34
|
-
- 有效 `yss-project.yaml`
|
|
34
|
+
- 有效 `yss-project.yaml` 存在时,Matt user-invoked skill 保持显式用户入口。生命周期可以准备和验收其结果,但不得自动调用它们或代替其创建正式资产;最终入口、仓库身份和模式裁决归本编排器。
|
|
35
35
|
- `template-source` 命中产品 flow 时必须返回 `blocked`(`template-source-product-artifact-forbidden`),不得继续到产品资产或 Ticket 生成。
|
|
36
36
|
- `template-source` 迁移共享工具或验证器前,先区分维护侧构建资产、实例分发面和实例运行资产;冻结公开入口、运行时前提、旧实现处置和跨仓消费者契约后,才可改写实现。
|
|
37
37
|
- 替换自身验证门禁时,不得只用候选门禁自证;必须保留独立 baseline oracle 或同一 fixture 的双跑证据。涉及共享运行资产时,只有生成/同步实例、失败回滚和跨仓消费者的 fresh evidence 齐备,才能声明生态完成或可发布。
|
|
@@ -39,10 +39,10 @@ YSS 仓库以本 skill 为直接入口,不机械嵌套调用 `ask-matt`。`ask
|
|
|
39
39
|
- 父 Ticket/checkpoint 的状态只是索引;与真实资产冲突时,以权威资产为准并修复索引。
|
|
40
40
|
- 上游变化按依赖图精准传播 `stale`;不要无条件重跑完整阶段。
|
|
41
41
|
- Matt 五态保持原义。只有解除阻塞、门禁通过且可直接实现的垂直切片才能使用 `ready-for-agent`。
|
|
42
|
-
-
|
|
43
|
-
-
|
|
44
|
-
- `orchestrate`/`resume`
|
|
45
|
-
-
|
|
42
|
+
- 用户显式运行 `to-spec` 后,生命周期必须把其 `ready-for-agent` 发布提示归一化为 Spec `ready-for-human`;不得把 Spec 初稿当作可直接实现的 Ticket。
|
|
43
|
+
- 用户显式运行 `to-tickets` 后,新建垂直切片统一写为 `ready-for-human`;只有本编排器复算完整 `ready-for-agent` 公式后才能提升,通用默认标签不得提前覆盖生命周期状态。
|
|
44
|
+
- `orchestrate`/`resume` 连续执行安全的准备、校验和 model-invoked 工作单元,直到需要显式用户入口、人工门禁、真实阻塞、新授权、实现/发布裁决或专项失败。
|
|
45
|
+
- 进入实现准备后继续主控,通过 `yss-router`、`code-review` 和 YSS 专项 skills 执行允许的 model-invoked 工作单元;`implement` 本身仍须由用户显式启动,并在其自身流程内按需使用 `tdd`,结果回交后再做独立审查和 fresh verification。只有工作单元真实触碰当前用户、审计、加密或明确的权限业务行为时,才增加 `yss-userinfo`、`yss-audit-log`、`yss-security-algorithm` 等专项依赖。
|
|
46
46
|
- 原型确认 → 后端脚手架:命中产品设计影响时,先按 `yss-prototype-stage` 形成交互说明、独立 Prototype Review、高保真 HTML、AntD CLI 与浏览器验证、用户确认;只有 `gate.prototype-reviewed`、`gate.prototype-verified` 和 `gate.user-confirmation` 均满足时,才能进入下游。若 backend `scaffold_status=required`,随后先完成工程基线,由 `yss-router` 编译脚手架受控生成工作单元合同,经生命周期编排器批准并持久化后,才使用 `yss-ddd-scaffold-generator` 生成后端骨架;随后由 `yss-backend-scaffold-parent` 校验并重新进入 `yss-router`,不得先写业务代码。
|
|
47
47
|
- 所有后续生成的后端代码都必须消费生命周期批准、已持久化且版本当前的 Slice Implementation Contract,绑定最小 YSS skill 闭包、允许写路径、证据文件和 YSS Skill Execution Result;没有这些证据时必须阻断。
|
|
48
48
|
- Harness 内承载运行时代码时,项目路径策略固定为 `apps/backend/<project>/` 和 `apps/frontend/<project>/`;`apps/backend/`、`apps/frontend/` 仅是项目容器,`app/backend/`、`app/frontend/` 及其子路径禁止生成。外部实现仓库不强制使用该目录,但必须登记真实项目根路径并写入合同。
|
|
@@ -51,13 +51,14 @@ YSS 仓库以本 skill 为直接入口,不机械嵌套调用 `ask-matt`。`ask
|
|
|
51
51
|
- 小改动和中等变更允许同一独立执行者完成 Review 与 fresh verification;该执行者不得是实现者。新模块、高风险或职责冲突时拆分 Reviewer 与 Verifier。
|
|
52
52
|
- 进入 `code-review` 前必须持久化或明确传入 `review_mode`、`review_base_ref`、`candidate_snapshot_ref`、`candidate_digest` 和完整候选引用;`worktree` 模式必须一次捕获 committed、staged、unstaged、untracked,并让两个 Reviewer 消费同一快照,不能用只看 `HEAD` 或实时变化的 diff 宣称已审查。候选 manifest 和 `yss-worktree-candidate-v1` 不可变摘要流以 `orchestration-contract.yaml.review_input` 为唯一机器契约。
|
|
53
53
|
- 实现授权不包含 Git 授权。只有用户分别明确给出值为 `true` 的 `commit_authorized` / `push_authorized`、非空 scope 和对应 `*_authorization_ref` 时才执行动作;缺失时只记录 checkpoint 判断,不得把 `implement`、`orchestrate`、当前分支或负责人要求解释成隐含授权。
|
|
54
|
+
- “然后 commit”“做完提交”等自然语言意向不构成上述结构化 Git 授权,不能据此预授权或事后补齐 scope / authorization ref。
|
|
54
55
|
- 连续自动推进期间累积 Ticket/Git 证据,在人工暂停、handoff、进入实现、合并或发布边界集中 checkpoint;不为每个连续经过的概念阶段重复写同类记录。
|
|
55
56
|
- 跨线程、仓库、原型分支或上下文边界时使用 `handoff` 或等价记录。
|
|
56
57
|
- 在 Matt 阶段边界(phase boundary)先按 `Continue → /clear → /handoff → subagent → /compact` 判断上下文动作;只在 checkpoint 记录可选 `phase_boundary` 证据,不新增生命周期状态。
|
|
57
58
|
- `to-questionnaire` 进入结构化 `external-input-required` 暂停;回答回流后必须重新分类影响面并更新权威资产,不能直接恢复下游实现。
|
|
58
|
-
- `wait-what` 只重新解释当前结论,不改变阶段、门禁、Ticket 或 `ready-for-agent`
|
|
59
|
+
- `wait-what` 只重新解释当前结论,不改变阶段、门禁、Ticket 或 `ready-for-agent` 状态;Agent 无法替代的人工步骤使用显式人工 checkpoint,秘密值不得进入持久化输出。
|
|
59
60
|
- Matt `prototype` 是保留在 `prototype/<name>` 分支的单文件可分享 HTML 主来源;YSS 高保真 HTML 原型仍必须经过 Prototype Review、AntD CLI、浏览器验证和用户确认,两者不得互相替代。
|
|
60
|
-
-
|
|
61
|
+
- 新工作单元返回 `Workflow Execution Result`;旧 `Matt Skill Result` 仅可兼容读取后归一化。`drift`、`new_impacts`、`violation`、`stale_candidates`、缺失证据或不完整结果不得推进为 `completed`。
|
|
61
62
|
|
|
62
63
|
### 原型完成后的后端脚手架与代码生成边界
|
|
63
64
|
|
|
@@ -91,6 +92,6 @@ YSS 仓库以本 skill 为直接入口,不机械嵌套调用 `ask-matt`。`ask
|
|
|
91
92
|
|
|
92
93
|
## 输出
|
|
93
94
|
|
|
94
|
-
始终输出:模式、当前阶段、影响面、证据、资产/门禁状态、阻塞项、本轮动作、下一工作单元、暂停或继续理由、Ticket 同步和 Git checkpoint
|
|
95
|
+
始终输出:模式、当前阶段、影响面、证据、资产/门禁状态、阻塞项、本轮动作、下一工作单元、暂停或继续理由、Ticket 同步和 Git checkpoint 判断;追加 `Workflow Execution Result`,并注明 workflow reference 或实际 model-invoked skill。
|
|
95
96
|
|
|
96
97
|
暂停时只提出一个具体人工决策,并给出推荐答案与确认后的恢复动作。`audit`/`route` 不得写文件、Ticket、标签或 Git。
|