pm-workflow-studio 0.1.0
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/.claude/CLAUDE.md +31 -0
- package/.claude/agents/demand-analyst.md +26 -0
- package/.claude/agents/dev-planner.md +22 -0
- package/.claude/agents/product-manager.md +25 -0
- package/.claude/agents/quality-reviewer.md +31 -0
- package/.claude/agents/tech-architect.md +22 -0
- package/.claude/agents/ui-designer.md +39 -0
- package/.claude/commands/pm-workflow/analyze.md +6 -0
- package/.claude/commands/pm-workflow/architect.md +6 -0
- package/.claude/commands/pm-workflow/deliver.md +6 -0
- package/.claude/commands/pm-workflow/design.md +6 -0
- package/.claude/commands/pm-workflow/help.md +6 -0
- package/.claude/commands/pm-workflow/init.md +8 -0
- package/.claude/commands/pm-workflow/plan.md +6 -0
- package/.claude/commands/pm-workflow/review.md +6 -0
- package/.claude/commands/pm-workflow/status.md +6 -0
- package/.claude/commands/pm-workflow.md +13 -0
- package/.claude/settings.json +15 -0
- package/.claude/skills/demand-analysis/SKILL.md +50 -0
- package/.claude/skills/demand-analysis/templates/handoff-prd.md +39 -0
- package/.claude/skills/demand-analysis/templates/prd.md +85 -0
- package/.claude/skills/dev-task-planning/SKILL.md +37 -0
- package/.claude/skills/dev-task-planning/templates/dev-tasks.md +54 -0
- package/.claude/skills/impeccable/SKILL.md +169 -0
- package/.claude/skills/impeccable/reference/adapt.md +190 -0
- package/.claude/skills/impeccable/reference/animate.md +175 -0
- package/.claude/skills/impeccable/reference/audit.md +133 -0
- package/.claude/skills/impeccable/reference/bolder.md +113 -0
- package/.claude/skills/impeccable/reference/brand.md +118 -0
- package/.claude/skills/impeccable/reference/clarify.md +174 -0
- package/.claude/skills/impeccable/reference/codex.md +105 -0
- package/.claude/skills/impeccable/reference/cognitive-load.md +106 -0
- package/.claude/skills/impeccable/reference/color-and-contrast.md +105 -0
- package/.claude/skills/impeccable/reference/colorize.md +154 -0
- package/.claude/skills/impeccable/reference/craft.md +123 -0
- package/.claude/skills/impeccable/reference/critique.md +236 -0
- package/.claude/skills/impeccable/reference/delight.md +302 -0
- package/.claude/skills/impeccable/reference/distill.md +111 -0
- package/.claude/skills/impeccable/reference/document.md +427 -0
- package/.claude/skills/impeccable/reference/extract.md +69 -0
- package/.claude/skills/impeccable/reference/harden.md +347 -0
- package/.claude/skills/impeccable/reference/heuristics-scoring.md +234 -0
- package/.claude/skills/impeccable/reference/interaction-design.md +195 -0
- package/.claude/skills/impeccable/reference/layout.md +141 -0
- package/.claude/skills/impeccable/reference/live.md +622 -0
- package/.claude/skills/impeccable/reference/motion-design.md +109 -0
- package/.claude/skills/impeccable/reference/onboard.md +234 -0
- package/.claude/skills/impeccable/reference/optimize.md +258 -0
- package/.claude/skills/impeccable/reference/overdrive.md +130 -0
- package/.claude/skills/impeccable/reference/personas.md +179 -0
- package/.claude/skills/impeccable/reference/polish.md +242 -0
- package/.claude/skills/impeccable/reference/product.md +62 -0
- package/.claude/skills/impeccable/reference/quieter.md +99 -0
- package/.claude/skills/impeccable/reference/responsive-design.md +114 -0
- package/.claude/skills/impeccable/reference/shape.md +165 -0
- package/.claude/skills/impeccable/reference/spatial-design.md +100 -0
- package/.claude/skills/impeccable/reference/teach.md +156 -0
- package/.claude/skills/impeccable/reference/typeset.md +124 -0
- package/.claude/skills/impeccable/reference/typography.md +159 -0
- package/.claude/skills/impeccable/reference/ux-writing.md +107 -0
- package/.claude/skills/impeccable/scripts/cleanup-deprecated.mjs +284 -0
- package/.claude/skills/impeccable/scripts/command-metadata.json +94 -0
- package/.claude/skills/impeccable/scripts/critique-storage.mjs +242 -0
- package/.claude/skills/impeccable/scripts/design-parser.mjs +820 -0
- package/.claude/skills/impeccable/scripts/detect-csp.mjs +198 -0
- package/.claude/skills/impeccable/scripts/detect.mjs +21 -0
- package/.claude/skills/impeccable/scripts/detector/browser/injected/index.mjs +1688 -0
- package/.claude/skills/impeccable/scripts/detector/cli/main.mjs +232 -0
- package/.claude/skills/impeccable/scripts/detector/detect-antipatterns-browser.js +4030 -0
- package/.claude/skills/impeccable/scripts/detector/detect-antipatterns.mjs +43 -0
- package/.claude/skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +251 -0
- package/.claude/skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +420 -0
- package/.claude/skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +954 -0
- package/.claude/skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +174 -0
- package/.claude/skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +189 -0
- package/.claude/skills/impeccable/scripts/detector/findings.mjs +12 -0
- package/.claude/skills/impeccable/scripts/detector/node/file-system.mjs +198 -0
- package/.claude/skills/impeccable/scripts/detector/profile/profiler.mjs +166 -0
- package/.claude/skills/impeccable/scripts/detector/registry/antipatterns.mjs +278 -0
- package/.claude/skills/impeccable/scripts/detector/rules/checks.mjs +1948 -0
- package/.claude/skills/impeccable/scripts/detector/shared/color.mjs +124 -0
- package/.claude/skills/impeccable/scripts/detector/shared/constants.mjs +101 -0
- package/.claude/skills/impeccable/scripts/detector/shared/page.mjs +7 -0
- package/.claude/skills/impeccable/scripts/impeccable-paths.mjs +110 -0
- package/.claude/skills/impeccable/scripts/is-generated.mjs +69 -0
- package/.claude/skills/impeccable/scripts/live-accept.mjs +595 -0
- package/.claude/skills/impeccable/scripts/live-browser-session.js +123 -0
- package/.claude/skills/impeccable/scripts/live-browser.js +4860 -0
- package/.claude/skills/impeccable/scripts/live-complete.mjs +75 -0
- package/.claude/skills/impeccable/scripts/live-completion.mjs +18 -0
- package/.claude/skills/impeccable/scripts/live-inject.mjs +446 -0
- package/.claude/skills/impeccable/scripts/live-poll.mjs +200 -0
- package/.claude/skills/impeccable/scripts/live-resume.mjs +48 -0
- package/.claude/skills/impeccable/scripts/live-server.mjs +838 -0
- package/.claude/skills/impeccable/scripts/live-session-store.mjs +254 -0
- package/.claude/skills/impeccable/scripts/live-status.mjs +47 -0
- package/.claude/skills/impeccable/scripts/live-wrap.mjs +632 -0
- package/.claude/skills/impeccable/scripts/live.mjs +247 -0
- package/.claude/skills/impeccable/scripts/load-context.mjs +141 -0
- package/.claude/skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
- package/.claude/skills/impeccable/scripts/pin.mjs +214 -0
- package/.claude/skills/pm-workflow/SKILL.md +371 -0
- package/.claude/skills/pm-workflow/assets/design-themes/README.md +56 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/OPEN_DESIGN_COMMIT +1 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/OPEN_DESIGN_IMPORT.md +28 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/OPEN_DESIGN_LICENSE +201 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/README.md +103 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/agentic/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/airbnb/DESIGN.md +393 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/airbnb/examples.html +23 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/airtable/DESIGN.md +92 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/apple/DESIGN.md +250 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/apple/examples.html +23 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/application/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/arc/DESIGN.md +152 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/artistic/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/atelier-zero/DESIGN.md +316 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/bento/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/binance/DESIGN.md +348 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/bmw/DESIGN.md +183 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/bmw-m/DESIGN.md +246 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/bold/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/brutalism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/bugatti/DESIGN.md +271 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cafe/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cal/DESIGN.md +262 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/canva/DESIGN.md +157 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cisco/DESIGN.md +201 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/claude/DESIGN.md +315 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/clay/DESIGN.md +307 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/claymorphism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/clean/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/clickhouse/DESIGN.md +284 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cohere/DESIGN.md +269 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/coinbase/DESIGN.md +132 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/colorful/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/composio/DESIGN.md +310 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/contemporary/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/corporate/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cosmic/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/creative/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/cursor/DESIGN.md +312 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/dashboard/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/default/DESIGN.md +62 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/discord/DESIGN.md +162 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/dithered/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/doodle/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/dramatic/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/duolingo/DESIGN.md +154 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/editorial/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/elegant/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/elevenlabs/DESIGN.md +268 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/energetic/DESIGN.md +72 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/enterprise/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/expo/DESIGN.md +284 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/expressive/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/fantasy/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/ferrari/DESIGN.md +317 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/figma/DESIGN.md +223 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/flat/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/framer/DESIGN.md +249 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/friendly/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/futuristic/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/glassmorphism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/gradient/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/hashicorp/DESIGN.md +281 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/hud/DESIGN.md +173 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/huggingface/DESIGN.md +149 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/huggingface/examples.html +11 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/intercom/DESIGN.md +149 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/kami/DESIGN.md +410 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/kraken/DESIGN.md +128 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/lamborghini/DESIGN.md +291 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/levels/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/linear-app/DESIGN.md +370 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/linear-app/examples.html +56 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/lingo/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/loom/DESIGN.md +201 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/lovable/DESIGN.md +301 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/luxury/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mastercard/DESIGN.md +368 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/material/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/material/examples.html +11 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/meta/DESIGN.md +369 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/minimal/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/minimax/DESIGN.md +260 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mintlify/DESIGN.md +329 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/miro/DESIGN.md +111 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mission-control/DESIGN.md +474 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mistral-ai/DESIGN.md +264 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/modern/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mongodb/DESIGN.md +269 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mongodb/examples.html +14 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/mono/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/neobrutalism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/neon/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/neumorphism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/nike/DESIGN.md +366 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/notion/DESIGN.md +312 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/notion/examples.html +64 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/nvidia/DESIGN.md +296 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/ollama/DESIGN.md +270 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/openai/DESIGN.md +140 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/openai/examples.html +14 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/opencode-ai/DESIGN.md +284 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/pacman/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/paper/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/perspective/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/pinterest/DESIGN.md +233 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/playstation/DESIGN.md +367 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/posthog/DESIGN.md +259 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/premium/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/professional/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/publication/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/raycast/DESIGN.md +271 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/raycast/examples.html +11 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/refined/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/renault/DESIGN.md +314 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/replicate/DESIGN.md +264 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/resend/DESIGN.md +306 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/retro/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/revolut/DESIGN.md +188 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/runwayml/DESIGN.md +247 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/sanity/DESIGN.md +360 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/sentry/DESIGN.md +265 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/shadcn/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/shadcn/examples.html +24 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/shopify/DESIGN.md +353 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/shopify/examples.html +11 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/simple/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/skeumorphism/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/sleek/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/spacex/DESIGN.md +197 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/spacious/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/spotify/DESIGN.md +249 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/starbucks/DESIGN.md +583 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/storytelling/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/stripe/DESIGN.md +325 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/stripe/examples.html +58 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/supabase/DESIGN.md +258 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/supabase/examples.html +26 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/superhuman/DESIGN.md +255 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/tesla/DESIGN.md +289 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/tetris/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/theverge/DESIGN.md +342 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/together-ai/DESIGN.md +266 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/totality-festival/DESIGN.md +206 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/trading-terminal/DESIGN.md +178 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/uber/DESIGN.md +298 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/urdu/DESIGN.md +1002 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/vercel/DESIGN.md +313 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/vercel/examples.html +55 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/vibrant/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/vintage/DESIGN.md +71 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/vodafone/DESIGN.md +426 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/voltagent/DESIGN.md +326 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/warm-editorial/DESIGN.md +65 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/warp/DESIGN.md +256 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/webex/DESIGN.md +207 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/webflow/DESIGN.md +95 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/webflow/examples.html +11 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/wired/DESIGN.md +281 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/wise/DESIGN.md +176 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/x-ai/DESIGN.md +260 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/x-ai/examples.html +12 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/xiaohongshu/DESIGN.md +402 -0
- package/.claude/skills/pm-workflow/assets/design-themes/open-design/zapier/DESIGN.md +331 -0
- package/.claude/skills/pm-workflow/assets/design-themes/revenuecat/DESIGN.md +209 -0
- package/.claude/skills/pm-workflow/assets/design-themes/revenuecat/examples.html +122 -0
- package/.claude/skills/pm-workflow/assets/design-themes/vben/DESIGN.md +685 -0
- package/.claude/skills/pm-workflow/assets/design-themes/vben/examples.html +155 -0
- package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/MERMAID_LICENSE +21 -0
- package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/SVG_PAN_ZOOM_LICENSE +23 -0
- package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/THIRD_PARTY_LICENSES.md +21 -0
- package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/mermaid.min.js +3298 -0
- package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/svg-pan-zoom.min.js +3 -0
- package/.claude/skills/pm-workflow/references/commands/analyze.md +39 -0
- package/.claude/skills/pm-workflow/references/commands/architect.md +41 -0
- package/.claude/skills/pm-workflow/references/commands/deliver.md +29 -0
- package/.claude/skills/pm-workflow/references/commands/design.md +92 -0
- package/.claude/skills/pm-workflow/references/commands/help.md +24 -0
- package/.claude/skills/pm-workflow/references/commands/init.md +40 -0
- package/.claude/skills/pm-workflow/references/commands/plan.md +41 -0
- package/.claude/skills/pm-workflow/references/commands/review.md +33 -0
- package/.claude/skills/pm-workflow/references/commands/status.md +20 -0
- package/.claude/skills/pm-workflow/scripts/package_delivery.js +195 -0
- package/.claude/skills/pm-workflow/scripts/review_stage.js +622 -0
- package/.claude/skills/quality-review/SKILL.md +49 -0
- package/.claude/skills/quality-review/templates/review-stage.md +39 -0
- package/.claude/skills/tech-architecture/SKILL.md +49 -0
- package/.claude/skills/tech-architecture/templates/handoff-architecture.md +28 -0
- package/.claude/skills/tech-architecture/templates/tech-architecture.md +54 -0
- package/.claude/skills/ui-prototype-design/SKILL.md +125 -0
- package/.claude/skills/ui-prototype-design/templates/handoff-ui.md +40 -0
- package/.claude/skills/ui-prototype-design/templates/prototype-review.md +57 -0
- package/.claude/skills/ui-prototype-design/templates/ui-design.md +142 -0
- package/.codex/SKILL.md +374 -0
- package/.codex/agents/demand-analyst.toml +87 -0
- package/.codex/agents/dev-planner.toml +47 -0
- package/.codex/agents/openai.yaml +4 -0
- package/.codex/agents/product-manager.toml +81 -0
- package/.codex/agents/quality-reviewer.toml +76 -0
- package/.codex/agents/tech-architect.toml +57 -0
- package/.codex/agents/ui-designer.toml +132 -0
- package/.codex/assets/design-themes/README.md +56 -0
- package/.codex/assets/design-themes/open-design/OPEN_DESIGN_COMMIT +1 -0
- package/.codex/assets/design-themes/open-design/OPEN_DESIGN_IMPORT.md +28 -0
- package/.codex/assets/design-themes/open-design/OPEN_DESIGN_LICENSE +201 -0
- package/.codex/assets/design-themes/open-design/README.md +103 -0
- package/.codex/assets/design-themes/open-design/agentic/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/airbnb/DESIGN.md +393 -0
- package/.codex/assets/design-themes/open-design/airbnb/examples.html +23 -0
- package/.codex/assets/design-themes/open-design/airtable/DESIGN.md +92 -0
- package/.codex/assets/design-themes/open-design/apple/DESIGN.md +250 -0
- package/.codex/assets/design-themes/open-design/apple/examples.html +23 -0
- package/.codex/assets/design-themes/open-design/application/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/arc/DESIGN.md +152 -0
- package/.codex/assets/design-themes/open-design/artistic/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/atelier-zero/DESIGN.md +316 -0
- package/.codex/assets/design-themes/open-design/bento/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/binance/DESIGN.md +348 -0
- package/.codex/assets/design-themes/open-design/bmw/DESIGN.md +183 -0
- package/.codex/assets/design-themes/open-design/bmw-m/DESIGN.md +246 -0
- package/.codex/assets/design-themes/open-design/bold/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/brutalism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/bugatti/DESIGN.md +271 -0
- package/.codex/assets/design-themes/open-design/cafe/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/cal/DESIGN.md +262 -0
- package/.codex/assets/design-themes/open-design/canva/DESIGN.md +157 -0
- package/.codex/assets/design-themes/open-design/cisco/DESIGN.md +201 -0
- package/.codex/assets/design-themes/open-design/claude/DESIGN.md +315 -0
- package/.codex/assets/design-themes/open-design/clay/DESIGN.md +307 -0
- package/.codex/assets/design-themes/open-design/claymorphism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/clean/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/clickhouse/DESIGN.md +284 -0
- package/.codex/assets/design-themes/open-design/cohere/DESIGN.md +269 -0
- package/.codex/assets/design-themes/open-design/coinbase/DESIGN.md +132 -0
- package/.codex/assets/design-themes/open-design/colorful/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/composio/DESIGN.md +310 -0
- package/.codex/assets/design-themes/open-design/contemporary/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/corporate/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/cosmic/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/creative/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/cursor/DESIGN.md +312 -0
- package/.codex/assets/design-themes/open-design/dashboard/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/default/DESIGN.md +62 -0
- package/.codex/assets/design-themes/open-design/discord/DESIGN.md +162 -0
- package/.codex/assets/design-themes/open-design/dithered/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/doodle/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/dramatic/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/duolingo/DESIGN.md +154 -0
- package/.codex/assets/design-themes/open-design/editorial/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/elegant/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/elevenlabs/DESIGN.md +268 -0
- package/.codex/assets/design-themes/open-design/energetic/DESIGN.md +72 -0
- package/.codex/assets/design-themes/open-design/enterprise/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/expo/DESIGN.md +284 -0
- package/.codex/assets/design-themes/open-design/expressive/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/fantasy/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/ferrari/DESIGN.md +317 -0
- package/.codex/assets/design-themes/open-design/figma/DESIGN.md +223 -0
- package/.codex/assets/design-themes/open-design/flat/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/framer/DESIGN.md +249 -0
- package/.codex/assets/design-themes/open-design/friendly/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/futuristic/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/glassmorphism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/gradient/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/hashicorp/DESIGN.md +281 -0
- package/.codex/assets/design-themes/open-design/hud/DESIGN.md +173 -0
- package/.codex/assets/design-themes/open-design/huggingface/DESIGN.md +149 -0
- package/.codex/assets/design-themes/open-design/huggingface/examples.html +11 -0
- package/.codex/assets/design-themes/open-design/intercom/DESIGN.md +149 -0
- package/.codex/assets/design-themes/open-design/kami/DESIGN.md +410 -0
- package/.codex/assets/design-themes/open-design/kraken/DESIGN.md +128 -0
- package/.codex/assets/design-themes/open-design/lamborghini/DESIGN.md +291 -0
- package/.codex/assets/design-themes/open-design/levels/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/linear-app/DESIGN.md +370 -0
- package/.codex/assets/design-themes/open-design/linear-app/examples.html +56 -0
- package/.codex/assets/design-themes/open-design/lingo/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/loom/DESIGN.md +201 -0
- package/.codex/assets/design-themes/open-design/lovable/DESIGN.md +301 -0
- package/.codex/assets/design-themes/open-design/luxury/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/mastercard/DESIGN.md +368 -0
- package/.codex/assets/design-themes/open-design/material/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/material/examples.html +11 -0
- package/.codex/assets/design-themes/open-design/meta/DESIGN.md +369 -0
- package/.codex/assets/design-themes/open-design/minimal/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/minimax/DESIGN.md +260 -0
- package/.codex/assets/design-themes/open-design/mintlify/DESIGN.md +329 -0
- package/.codex/assets/design-themes/open-design/miro/DESIGN.md +111 -0
- package/.codex/assets/design-themes/open-design/mission-control/DESIGN.md +474 -0
- package/.codex/assets/design-themes/open-design/mistral-ai/DESIGN.md +264 -0
- package/.codex/assets/design-themes/open-design/modern/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/mongodb/DESIGN.md +269 -0
- package/.codex/assets/design-themes/open-design/mongodb/examples.html +14 -0
- package/.codex/assets/design-themes/open-design/mono/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/neobrutalism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/neon/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/neumorphism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/nike/DESIGN.md +366 -0
- package/.codex/assets/design-themes/open-design/notion/DESIGN.md +312 -0
- package/.codex/assets/design-themes/open-design/notion/examples.html +64 -0
- package/.codex/assets/design-themes/open-design/nvidia/DESIGN.md +296 -0
- package/.codex/assets/design-themes/open-design/ollama/DESIGN.md +270 -0
- package/.codex/assets/design-themes/open-design/openai/DESIGN.md +140 -0
- package/.codex/assets/design-themes/open-design/openai/examples.html +14 -0
- package/.codex/assets/design-themes/open-design/opencode-ai/DESIGN.md +284 -0
- package/.codex/assets/design-themes/open-design/pacman/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/paper/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/perspective/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/pinterest/DESIGN.md +233 -0
- package/.codex/assets/design-themes/open-design/playstation/DESIGN.md +367 -0
- package/.codex/assets/design-themes/open-design/posthog/DESIGN.md +259 -0
- package/.codex/assets/design-themes/open-design/premium/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/professional/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/publication/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/raycast/DESIGN.md +271 -0
- package/.codex/assets/design-themes/open-design/raycast/examples.html +11 -0
- package/.codex/assets/design-themes/open-design/refined/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/renault/DESIGN.md +314 -0
- package/.codex/assets/design-themes/open-design/replicate/DESIGN.md +264 -0
- package/.codex/assets/design-themes/open-design/resend/DESIGN.md +306 -0
- package/.codex/assets/design-themes/open-design/retro/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/revolut/DESIGN.md +188 -0
- package/.codex/assets/design-themes/open-design/runwayml/DESIGN.md +247 -0
- package/.codex/assets/design-themes/open-design/sanity/DESIGN.md +360 -0
- package/.codex/assets/design-themes/open-design/sentry/DESIGN.md +265 -0
- package/.codex/assets/design-themes/open-design/shadcn/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/shadcn/examples.html +24 -0
- package/.codex/assets/design-themes/open-design/shopify/DESIGN.md +353 -0
- package/.codex/assets/design-themes/open-design/shopify/examples.html +11 -0
- package/.codex/assets/design-themes/open-design/simple/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/skeumorphism/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/sleek/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/spacex/DESIGN.md +197 -0
- package/.codex/assets/design-themes/open-design/spacious/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/spotify/DESIGN.md +249 -0
- package/.codex/assets/design-themes/open-design/starbucks/DESIGN.md +583 -0
- package/.codex/assets/design-themes/open-design/storytelling/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/stripe/DESIGN.md +325 -0
- package/.codex/assets/design-themes/open-design/stripe/examples.html +58 -0
- package/.codex/assets/design-themes/open-design/supabase/DESIGN.md +258 -0
- package/.codex/assets/design-themes/open-design/supabase/examples.html +26 -0
- package/.codex/assets/design-themes/open-design/superhuman/DESIGN.md +255 -0
- package/.codex/assets/design-themes/open-design/tesla/DESIGN.md +289 -0
- package/.codex/assets/design-themes/open-design/tetris/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/theverge/DESIGN.md +342 -0
- package/.codex/assets/design-themes/open-design/together-ai/DESIGN.md +266 -0
- package/.codex/assets/design-themes/open-design/totality-festival/DESIGN.md +206 -0
- package/.codex/assets/design-themes/open-design/trading-terminal/DESIGN.md +178 -0
- package/.codex/assets/design-themes/open-design/uber/DESIGN.md +298 -0
- package/.codex/assets/design-themes/open-design/urdu/DESIGN.md +1002 -0
- package/.codex/assets/design-themes/open-design/vercel/DESIGN.md +313 -0
- package/.codex/assets/design-themes/open-design/vercel/examples.html +55 -0
- package/.codex/assets/design-themes/open-design/vibrant/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/vintage/DESIGN.md +71 -0
- package/.codex/assets/design-themes/open-design/vodafone/DESIGN.md +426 -0
- package/.codex/assets/design-themes/open-design/voltagent/DESIGN.md +326 -0
- package/.codex/assets/design-themes/open-design/warm-editorial/DESIGN.md +65 -0
- package/.codex/assets/design-themes/open-design/warp/DESIGN.md +256 -0
- package/.codex/assets/design-themes/open-design/webex/DESIGN.md +207 -0
- package/.codex/assets/design-themes/open-design/webflow/DESIGN.md +95 -0
- package/.codex/assets/design-themes/open-design/webflow/examples.html +11 -0
- package/.codex/assets/design-themes/open-design/wired/DESIGN.md +281 -0
- package/.codex/assets/design-themes/open-design/wise/DESIGN.md +176 -0
- package/.codex/assets/design-themes/open-design/x-ai/DESIGN.md +260 -0
- package/.codex/assets/design-themes/open-design/x-ai/examples.html +12 -0
- package/.codex/assets/design-themes/open-design/xiaohongshu/DESIGN.md +402 -0
- package/.codex/assets/design-themes/open-design/zapier/DESIGN.md +331 -0
- package/.codex/assets/design-themes/revenuecat/DESIGN.md +209 -0
- package/.codex/assets/design-themes/revenuecat/examples.html +122 -0
- package/.codex/assets/design-themes/vben/DESIGN.md +685 -0
- package/.codex/assets/design-themes/vben/examples.html +155 -0
- package/.codex/assets/vendor/flow-viewer/MERMAID_LICENSE +21 -0
- package/.codex/assets/vendor/flow-viewer/SVG_PAN_ZOOM_LICENSE +23 -0
- package/.codex/assets/vendor/flow-viewer/THIRD_PARTY_LICENSES.md +21 -0
- package/.codex/assets/vendor/flow-viewer/mermaid.min.js +3298 -0
- package/.codex/assets/vendor/flow-viewer/svg-pan-zoom.min.js +3 -0
- package/.codex/bundled-skills/impeccable/SKILL.md +163 -0
- package/.codex/bundled-skills/impeccable/agents/openai.yaml +4 -0
- package/.codex/bundled-skills/impeccable/reference/adapt.md +190 -0
- package/.codex/bundled-skills/impeccable/reference/animate.md +175 -0
- package/.codex/bundled-skills/impeccable/reference/audit.md +132 -0
- package/.codex/bundled-skills/impeccable/reference/bolder.md +113 -0
- package/.codex/bundled-skills/impeccable/reference/brand.md +118 -0
- package/.codex/bundled-skills/impeccable/reference/clarify.md +174 -0
- package/.codex/bundled-skills/impeccable/reference/codex.md +105 -0
- package/.codex/bundled-skills/impeccable/reference/cognitive-load.md +106 -0
- package/.codex/bundled-skills/impeccable/reference/color-and-contrast.md +105 -0
- package/.codex/bundled-skills/impeccable/reference/colorize.md +154 -0
- package/.codex/bundled-skills/impeccable/reference/craft.md +123 -0
- package/.codex/bundled-skills/impeccable/reference/critique.md +259 -0
- package/.codex/bundled-skills/impeccable/reference/delight.md +302 -0
- package/.codex/bundled-skills/impeccable/reference/distill.md +111 -0
- package/.codex/bundled-skills/impeccable/reference/document.md +427 -0
- package/.codex/bundled-skills/impeccable/reference/extract.md +68 -0
- package/.codex/bundled-skills/impeccable/reference/harden.md +347 -0
- package/.codex/bundled-skills/impeccable/reference/heuristics-scoring.md +234 -0
- package/.codex/bundled-skills/impeccable/reference/interaction-design.md +195 -0
- package/.codex/bundled-skills/impeccable/reference/layout.md +141 -0
- package/.codex/bundled-skills/impeccable/reference/live.md +622 -0
- package/.codex/bundled-skills/impeccable/reference/motion-design.md +109 -0
- package/.codex/bundled-skills/impeccable/reference/onboard.md +234 -0
- package/.codex/bundled-skills/impeccable/reference/optimize.md +258 -0
- package/.codex/bundled-skills/impeccable/reference/overdrive.md +130 -0
- package/.codex/bundled-skills/impeccable/reference/personas.md +179 -0
- package/.codex/bundled-skills/impeccable/reference/polish.md +242 -0
- package/.codex/bundled-skills/impeccable/reference/product.md +62 -0
- package/.codex/bundled-skills/impeccable/reference/quieter.md +99 -0
- package/.codex/bundled-skills/impeccable/reference/responsive-design.md +114 -0
- package/.codex/bundled-skills/impeccable/reference/shape.md +165 -0
- package/.codex/bundled-skills/impeccable/reference/spatial-design.md +100 -0
- package/.codex/bundled-skills/impeccable/reference/teach.md +156 -0
- package/.codex/bundled-skills/impeccable/reference/typeset.md +124 -0
- package/.codex/bundled-skills/impeccable/reference/typography.md +159 -0
- package/.codex/bundled-skills/impeccable/reference/ux-writing.md +107 -0
- package/.codex/bundled-skills/impeccable/scripts/cleanup-deprecated.mjs +284 -0
- package/.codex/bundled-skills/impeccable/scripts/command-metadata.json +94 -0
- package/.codex/bundled-skills/impeccable/scripts/critique-storage.mjs +242 -0
- package/.codex/bundled-skills/impeccable/scripts/design-parser.mjs +820 -0
- package/.codex/bundled-skills/impeccable/scripts/detect-csp.mjs +198 -0
- package/.codex/bundled-skills/impeccable/scripts/detect.mjs +21 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/browser/injected/index.mjs +1688 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/cli/main.mjs +232 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/detect-antipatterns-browser.js +4030 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/detect-antipatterns.mjs +43 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +251 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +420 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +954 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +174 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +189 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/findings.mjs +12 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/node/file-system.mjs +198 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/profile/profiler.mjs +166 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/registry/antipatterns.mjs +278 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/rules/checks.mjs +1948 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/shared/color.mjs +124 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/shared/constants.mjs +101 -0
- package/.codex/bundled-skills/impeccable/scripts/detector/shared/page.mjs +7 -0
- package/.codex/bundled-skills/impeccable/scripts/impeccable-paths.mjs +110 -0
- package/.codex/bundled-skills/impeccable/scripts/is-generated.mjs +69 -0
- package/.codex/bundled-skills/impeccable/scripts/live-accept.mjs +595 -0
- package/.codex/bundled-skills/impeccable/scripts/live-browser-session.js +123 -0
- package/.codex/bundled-skills/impeccable/scripts/live-browser.js +4860 -0
- package/.codex/bundled-skills/impeccable/scripts/live-complete.mjs +75 -0
- package/.codex/bundled-skills/impeccable/scripts/live-completion.mjs +18 -0
- package/.codex/bundled-skills/impeccable/scripts/live-inject.mjs +446 -0
- package/.codex/bundled-skills/impeccable/scripts/live-poll.mjs +200 -0
- package/.codex/bundled-skills/impeccable/scripts/live-resume.mjs +48 -0
- package/.codex/bundled-skills/impeccable/scripts/live-server.mjs +838 -0
- package/.codex/bundled-skills/impeccable/scripts/live-session-store.mjs +254 -0
- package/.codex/bundled-skills/impeccable/scripts/live-status.mjs +47 -0
- package/.codex/bundled-skills/impeccable/scripts/live-wrap.mjs +632 -0
- package/.codex/bundled-skills/impeccable/scripts/live.mjs +247 -0
- package/.codex/bundled-skills/impeccable/scripts/load-context.mjs +141 -0
- package/.codex/bundled-skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
- package/.codex/bundled-skills/impeccable/scripts/pin.mjs +214 -0
- package/.codex/references/commands/analyze.md +39 -0
- package/.codex/references/commands/architect.md +41 -0
- package/.codex/references/commands/deliver.md +29 -0
- package/.codex/references/commands/design.md +92 -0
- package/.codex/references/commands/help.md +24 -0
- package/.codex/references/commands/init.md +40 -0
- package/.codex/references/commands/plan.md +41 -0
- package/.codex/references/commands/review.md +33 -0
- package/.codex/references/commands/status.md +20 -0
- package/.codex/role-skills/demand-analysis/SKILL.md +50 -0
- package/.codex/role-skills/demand-analysis/templates/handoff-prd.md +39 -0
- package/.codex/role-skills/demand-analysis/templates/prd.md +85 -0
- package/.codex/role-skills/dev-task-planning/SKILL.md +37 -0
- package/.codex/role-skills/dev-task-planning/templates/dev-tasks.md +54 -0
- package/.codex/role-skills/quality-review/SKILL.md +49 -0
- package/.codex/role-skills/quality-review/templates/review-stage.md +39 -0
- package/.codex/role-skills/tech-architecture/SKILL.md +49 -0
- package/.codex/role-skills/tech-architecture/templates/handoff-architecture.md +28 -0
- package/.codex/role-skills/tech-architecture/templates/tech-architecture.md +54 -0
- package/.codex/role-skills/ui-prototype-design/SKILL.md +125 -0
- package/.codex/role-skills/ui-prototype-design/templates/handoff-ui.md +40 -0
- package/.codex/role-skills/ui-prototype-design/templates/prototype-review.md +57 -0
- package/.codex/role-skills/ui-prototype-design/templates/ui-design.md +142 -0
- package/.codex/scripts/package_delivery.js +195 -0
- package/.codex/scripts/review_stage.js +622 -0
- package/.codex/templates/AGENTS.md +44 -0
- package/.codex/templates/delivery-README.md +37 -0
- package/.codex/templates/framework-AGENTS.md +74 -0
- package/.codex/templates/framework-README.md +65 -0
- package/.codex/templates/project-config.md +117 -0
- package/.codex/templates/prototype-README.md +45 -0
- package/.codex/templates/workflow-state.json +47 -0
- package/README.md +28 -0
- package/bin/pmflow.js +463 -0
- package/package.json +30 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# Cognitive Load Assessment
|
|
2
|
+
|
|
3
|
+
Cognitive load is the total mental effort required to use an interface. Overloaded users make mistakes, get frustrated, and leave. This reference helps identify and fix cognitive overload.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Three Types of Cognitive Load
|
|
8
|
+
|
|
9
|
+
### Intrinsic Load: The Task Itself
|
|
10
|
+
Complexity inherent to what the user is trying to do. You can't eliminate this, but you can structure it.
|
|
11
|
+
|
|
12
|
+
**Manage it by**:
|
|
13
|
+
- Breaking complex tasks into discrete steps
|
|
14
|
+
- Providing scaffolding (templates, defaults, examples)
|
|
15
|
+
- Progressive disclosure: show what's needed now, hide the rest
|
|
16
|
+
- Grouping related decisions together
|
|
17
|
+
|
|
18
|
+
### Extraneous Load: Bad Design
|
|
19
|
+
Mental effort caused by poor design choices. **Eliminate this ruthlessly.** It's pure waste.
|
|
20
|
+
|
|
21
|
+
**Common sources**:
|
|
22
|
+
- Confusing navigation that requires mental mapping
|
|
23
|
+
- Unclear labels that force users to guess meaning
|
|
24
|
+
- Visual clutter competing for attention
|
|
25
|
+
- Inconsistent patterns that prevent learning
|
|
26
|
+
- Unnecessary steps between user intent and result
|
|
27
|
+
|
|
28
|
+
### Germane Load: Learning Effort
|
|
29
|
+
Mental effort spent building understanding. This is *good* cognitive load; it leads to mastery.
|
|
30
|
+
|
|
31
|
+
**Support it by**:
|
|
32
|
+
- Progressive disclosure that reveals complexity gradually
|
|
33
|
+
- Consistent patterns that reward learning
|
|
34
|
+
- Feedback that confirms correct understanding
|
|
35
|
+
- Onboarding that teaches through action, not walls of text
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Cognitive Load Checklist
|
|
40
|
+
|
|
41
|
+
Evaluate the interface against these 8 items:
|
|
42
|
+
|
|
43
|
+
- [ ] **Single focus**: Can the user complete their primary task without distraction from competing elements?
|
|
44
|
+
- [ ] **Chunking**: Is information presented in digestible groups (≤4 items per group)?
|
|
45
|
+
- [ ] **Grouping**: Are related items visually grouped together (proximity, borders, shared background)?
|
|
46
|
+
- [ ] **Visual hierarchy**: Is it immediately clear what's most important on the screen?
|
|
47
|
+
- [ ] **One thing at a time**: Can the user focus on a single decision before moving to the next?
|
|
48
|
+
- [ ] **Minimal choices**: Are decisions simplified (≤4 visible options at any decision point)?
|
|
49
|
+
- [ ] **Working memory**: Does the user need to remember information from a previous screen to act on the current one?
|
|
50
|
+
- [ ] **Progressive disclosure**: Is complexity revealed only when the user needs it?
|
|
51
|
+
|
|
52
|
+
**Scoring**: Count the failed items. 0–1 failures = low cognitive load (good). 2–3 = moderate (address soon). 4+ = high cognitive load (critical fix needed).
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## The Working Memory Rule
|
|
57
|
+
|
|
58
|
+
**Humans can hold ≤4 items in working memory at once** (Miller's Law revised by Cowan, 2001).
|
|
59
|
+
|
|
60
|
+
At any decision point, count the number of distinct options, actions, or pieces of information a user must simultaneously consider:
|
|
61
|
+
- **≤4 items**: Within working memory limits, manageable
|
|
62
|
+
- **5–7 items**: Pushing the boundary; consider grouping or progressive disclosure
|
|
63
|
+
- **8+ items**: Overloaded; users will skip, misclick, or abandon
|
|
64
|
+
|
|
65
|
+
**Practical applications**:
|
|
66
|
+
- Navigation menus: ≤5 top-level items (group the rest under clear categories)
|
|
67
|
+
- Form sections: ≤4 fields visible per group before a visual break
|
|
68
|
+
- Action buttons: 1 primary, 1–2 secondary, group the rest in a menu
|
|
69
|
+
- Dashboard widgets: ≤4 key metrics visible without scrolling
|
|
70
|
+
- Pricing tiers: ≤3 options (more causes analysis paralysis)
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Common Cognitive Load Violations
|
|
75
|
+
|
|
76
|
+
### 1. The Wall of Options
|
|
77
|
+
**Problem**: Presenting 10+ choices at once with no hierarchy.
|
|
78
|
+
**Fix**: Group into categories, highlight recommended, use progressive disclosure.
|
|
79
|
+
|
|
80
|
+
### 2. The Memory Bridge
|
|
81
|
+
**Problem**: User must remember info from step 1 to complete step 3.
|
|
82
|
+
**Fix**: Keep relevant context visible, or repeat it where it's needed.
|
|
83
|
+
|
|
84
|
+
### 3. The Hidden Navigation
|
|
85
|
+
**Problem**: User must build a mental map of where things are.
|
|
86
|
+
**Fix**: Always show current location (breadcrumbs, active states, progress indicators).
|
|
87
|
+
|
|
88
|
+
### 4. The Jargon Barrier
|
|
89
|
+
**Problem**: Technical or domain language forces translation effort.
|
|
90
|
+
**Fix**: Use plain language. If domain terms are unavoidable, define them inline.
|
|
91
|
+
|
|
92
|
+
### 5. The Visual Noise Floor
|
|
93
|
+
**Problem**: Every element has the same visual weight; nothing stands out.
|
|
94
|
+
**Fix**: Establish clear hierarchy: one primary element, 2–3 secondary, everything else muted.
|
|
95
|
+
|
|
96
|
+
### 6. The Inconsistent Pattern
|
|
97
|
+
**Problem**: Similar actions work differently in different places.
|
|
98
|
+
**Fix**: Standardize interaction patterns. Same type of action = same type of UI.
|
|
99
|
+
|
|
100
|
+
### 7. The Multi-Task Demand
|
|
101
|
+
**Problem**: Interface requires processing multiple simultaneous inputs (reading + deciding + navigating).
|
|
102
|
+
**Fix**: Sequence the steps. Let the user do one thing at a time.
|
|
103
|
+
|
|
104
|
+
### 8. The Context Switch
|
|
105
|
+
**Problem**: User must jump between screens/tabs/modals to gather info for a single decision.
|
|
106
|
+
**Fix**: Co-locate the information needed for each decision. Reduce back-and-forth.
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# Color & Contrast
|
|
2
|
+
|
|
3
|
+
## Color Spaces: Use OKLCH
|
|
4
|
+
|
|
5
|
+
**Stop using HSL.** Use OKLCH (or LCH) instead. It's perceptually uniform, meaning equal steps in lightness *look* equal, unlike HSL where 50% lightness in yellow looks bright while 50% in blue looks dark.
|
|
6
|
+
|
|
7
|
+
The OKLCH function takes three components: `oklch(lightness chroma hue)` where lightness is 0-100%, chroma is roughly 0-0.4, and hue is 0-360. To build a primary color and its lighter / darker variants, hold the chroma+hue roughly constant and vary the lightness, but **reduce chroma as you approach white or black**, because high chroma at extreme lightness looks garish.
|
|
8
|
+
|
|
9
|
+
The hue you pick is a brand decision and should not come from a default. Do not reach for blue (hue 250) or warm orange (hue 60) by reflex; those are the dominant AI-design defaults, not the right answer for any specific brand.
|
|
10
|
+
|
|
11
|
+
## Building Functional Palettes
|
|
12
|
+
|
|
13
|
+
### Tinted Neutrals
|
|
14
|
+
|
|
15
|
+
**Pure gray is dead.** A neutral with zero chroma feels lifeless next to a colored brand. Add a tiny chroma value (0.005-0.015) to all your neutrals, hued toward whatever your brand color is. The chroma is small enough not to read as "tinted" consciously, but it creates subconscious cohesion between brand color and UI surfaces.
|
|
16
|
+
|
|
17
|
+
The hue you tint toward should come from THIS project's brand, not from a "warm = friendly, cool = tech" formula. If your brand color is teal, your neutrals lean toward teal. If your brand color is amber, they lean toward amber. The point is cohesion with the SPECIFIC brand, not a stock palette.
|
|
18
|
+
|
|
19
|
+
**Avoid** the trap of always tinting toward warm orange or always tinting toward cool blue. Those are the two laziest defaults and they create their own monoculture across projects.
|
|
20
|
+
|
|
21
|
+
### Palette Structure
|
|
22
|
+
|
|
23
|
+
A complete system needs:
|
|
24
|
+
|
|
25
|
+
| Role | Purpose | Example |
|
|
26
|
+
|------|---------|---------|
|
|
27
|
+
| **Primary** | Brand, CTAs, key actions | 1 color, 3-5 shades |
|
|
28
|
+
| **Neutral** | Text, backgrounds, borders | 9-11 shade scale |
|
|
29
|
+
| **Semantic** | Success, error, warning, info | 4 colors, 2-3 shades each |
|
|
30
|
+
| **Surface** | Cards, modals, overlays | 2-3 elevation levels |
|
|
31
|
+
|
|
32
|
+
**Skip secondary/tertiary unless you need them.** Most apps work fine with one accent color. Adding more creates decision fatigue and visual noise.
|
|
33
|
+
|
|
34
|
+
### The 60-30-10 Rule (Applied Correctly)
|
|
35
|
+
|
|
36
|
+
This rule is about **visual weight**, not pixel count:
|
|
37
|
+
|
|
38
|
+
- **60%**: Neutral backgrounds, white space, base surfaces
|
|
39
|
+
- **30%**: Secondary colors: text, borders, inactive states
|
|
40
|
+
- **10%**: Accent: CTAs, highlights, focus states
|
|
41
|
+
|
|
42
|
+
The common mistake: using the accent color everywhere because it's "the brand color." Accent colors work *because* they're rare. Overuse kills their power.
|
|
43
|
+
|
|
44
|
+
## Contrast & Accessibility
|
|
45
|
+
|
|
46
|
+
### WCAG Requirements
|
|
47
|
+
|
|
48
|
+
| Content Type | AA Minimum | AAA Target |
|
|
49
|
+
|--------------|------------|------------|
|
|
50
|
+
| Body text | 4.5:1 | 7:1 |
|
|
51
|
+
| Large text (18px+ or 14px bold) | 3:1 | 4.5:1 |
|
|
52
|
+
| UI components, icons | 3:1 | 4.5:1 |
|
|
53
|
+
| Non-essential decorations | None | None |
|
|
54
|
+
|
|
55
|
+
**The gotcha**: Placeholder text still needs 4.5:1. That light gray placeholder you see everywhere? Usually fails WCAG.
|
|
56
|
+
|
|
57
|
+
### Dangerous Color Combinations
|
|
58
|
+
|
|
59
|
+
These commonly fail contrast or cause readability issues:
|
|
60
|
+
|
|
61
|
+
- Light gray text on white (the #1 accessibility fail)
|
|
62
|
+
- **Gray text on any colored background**: gray looks washed out and dead on color. Use a darker shade of the background color, or transparency
|
|
63
|
+
- Red text on green background (or vice versa): 8% of men can't distinguish these
|
|
64
|
+
- Blue text on red background (vibrates visually)
|
|
65
|
+
- Yellow text on white (almost always fails)
|
|
66
|
+
- Thin light text on images (unpredictable contrast)
|
|
67
|
+
|
|
68
|
+
### Never Use Pure Gray or Pure Black
|
|
69
|
+
|
|
70
|
+
Pure gray (`oklch(50% 0 0)`) and pure black (`#000`) don't exist in nature; real shadows and surfaces always have a color cast. Even a chroma of 0.005-0.01 is enough to feel natural without being obviously tinted. (See tinted neutrals example above.)
|
|
71
|
+
|
|
72
|
+
### Testing
|
|
73
|
+
|
|
74
|
+
Don't trust your eyes. Use tools:
|
|
75
|
+
|
|
76
|
+
- [WebAIM Contrast Checker](https://webaim.org/resources/contrastchecker/)
|
|
77
|
+
- Browser DevTools → Rendering → Emulate vision deficiencies
|
|
78
|
+
- [Polypane](https://polypane.app/) for real-time testing
|
|
79
|
+
|
|
80
|
+
## Theming: Light & Dark Mode
|
|
81
|
+
|
|
82
|
+
### Dark Mode Is Not Inverted Light Mode
|
|
83
|
+
|
|
84
|
+
You can't just swap colors. Dark mode requires different design decisions:
|
|
85
|
+
|
|
86
|
+
| Light Mode | Dark Mode |
|
|
87
|
+
|------------|-----------|
|
|
88
|
+
| Shadows for depth | Lighter surfaces for depth (no shadows) |
|
|
89
|
+
| Dark text on light | Light text on dark (reduce font weight) |
|
|
90
|
+
| Vibrant accents | Desaturate accents slightly |
|
|
91
|
+
| White backgrounds | Never pure black; use dark gray (oklch 12-18%) |
|
|
92
|
+
|
|
93
|
+
In dark mode, depth comes from surface lightness, not shadow. Build a 3-step surface scale where higher elevations are lighter (e.g. 15% / 20% / 25% lightness). Use the SAME hue and chroma as your brand color (whatever it is for THIS project; do not reach for blue) and only vary the lightness. Reduce body text weight slightly (e.g. 350 instead of 400) because light text on dark reads as heavier than dark text on light.
|
|
94
|
+
|
|
95
|
+
### Token Hierarchy
|
|
96
|
+
|
|
97
|
+
Use two layers: primitive tokens (`--blue-500`) and semantic tokens (`--color-primary: var(--blue-500)`). For dark mode, only redefine the semantic layer; primitives stay the same.
|
|
98
|
+
|
|
99
|
+
## Alpha Is A Design Smell
|
|
100
|
+
|
|
101
|
+
Heavy use of transparency (rgba, hsla) usually means an incomplete palette. Alpha creates unpredictable contrast, performance overhead, and inconsistency. Define explicit overlay colors for each context instead. Exception: focus rings and interactive states where see-through is needed.
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
**Avoid**: Relying on color alone to convey information. Creating palettes without clear roles for each color. Using pure black (#000) for large areas. Skipping color blindness testing (8% of men affected).
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
> **Additional context needed**: existing brand colors.
|
|
2
|
+
|
|
3
|
+
Replace timid grayscale or single-accent designs with a strategic palette: pick a color strategy, choose a hue family that fits the brand, then apply color with intent. More color ≠ better. Strategic color beats rainbow vomit.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Register
|
|
8
|
+
|
|
9
|
+
Brand: palette IS voice. Pick a color strategy first per SKILL.md (Restrained / Committed / Full palette / Drenched) and follow its dosage. Committed, Full palette, and Drenched deliberately exceed the ≤10% rule; that rule is Restrained only. Unexpected combinations are allowed; a dominant color can own the page when the chosen strategy calls for it.
|
|
10
|
+
|
|
11
|
+
Product: semantic-first and almost always Restrained. Accent color is reserved for primary action, current selection, and state indicators. Not decoration. Every color has a consistent meaning across every screen.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Assess Color Opportunity
|
|
16
|
+
|
|
17
|
+
Analyze the current state and identify opportunities:
|
|
18
|
+
|
|
19
|
+
1. **Understand current state**:
|
|
20
|
+
- **Color absence**: Pure grayscale? Limited neutrals? One timid accent?
|
|
21
|
+
- **Missed opportunities**: Where could color add meaning, hierarchy, or delight?
|
|
22
|
+
- **Context**: What's appropriate for this domain and audience?
|
|
23
|
+
- **Brand**: Are there existing brand colors we should use?
|
|
24
|
+
|
|
25
|
+
2. **Identify where color adds value**:
|
|
26
|
+
- **Semantic meaning**: Success (green), error (red), warning (yellow/orange), info (blue)
|
|
27
|
+
- **Hierarchy**: Drawing attention to important elements
|
|
28
|
+
- **Categorization**: Different sections, types, or states
|
|
29
|
+
- **Emotional tone**: Warmth, energy, trust, creativity
|
|
30
|
+
- **Wayfinding**: Helping users navigate and understand structure
|
|
31
|
+
- **Delight**: Moments of visual interest and personality
|
|
32
|
+
|
|
33
|
+
If any of these are unclear from the codebase, STOP and use Codex's structured user-input/question tool when available; if unavailable, ask directly in chat to clarify what you cannot infer.
|
|
34
|
+
|
|
35
|
+
**CRITICAL**: More color ≠ better. Strategic color beats rainbow vomit every time. Every color should have a purpose.
|
|
36
|
+
|
|
37
|
+
## Plan Color Strategy
|
|
38
|
+
|
|
39
|
+
Create a purposeful color introduction plan:
|
|
40
|
+
|
|
41
|
+
- **Color palette**: What colors match the brand/context? (Choose 2-4 colors max beyond neutrals)
|
|
42
|
+
- **Dominant color**: Which color owns 60% of colored elements?
|
|
43
|
+
- **Accent colors**: Which colors provide contrast and highlights? (30% and 10%)
|
|
44
|
+
- **Application strategy**: Where does each color appear and why?
|
|
45
|
+
|
|
46
|
+
**IMPORTANT**: Color should enhance hierarchy and meaning, not create chaos. Less is more when it matters more.
|
|
47
|
+
|
|
48
|
+
## Introduce Color Strategically
|
|
49
|
+
|
|
50
|
+
Add color systematically across these dimensions:
|
|
51
|
+
|
|
52
|
+
### Semantic Color
|
|
53
|
+
- **State indicators**:
|
|
54
|
+
- Success: Green tones (emerald, forest, mint)
|
|
55
|
+
- Error: Red/pink tones (rose, crimson, coral)
|
|
56
|
+
- Warning: Orange/amber tones
|
|
57
|
+
- Info: Blue tones (sky, ocean, indigo)
|
|
58
|
+
- Neutral: Gray/slate for inactive states
|
|
59
|
+
|
|
60
|
+
- **Status badges**: Colored backgrounds or borders for states (active, pending, completed, etc.)
|
|
61
|
+
- **Progress indicators**: Colored bars, rings, or charts showing completion or health
|
|
62
|
+
|
|
63
|
+
### Accent Color Application
|
|
64
|
+
- **Primary actions**: Color the most important buttons/CTAs
|
|
65
|
+
- **Links**: Add color to clickable text (maintain accessibility)
|
|
66
|
+
- **Icons**: Colorize key icons for recognition and personality
|
|
67
|
+
- **Headers/titles**: Add color to section headers or key labels
|
|
68
|
+
- **Hover states**: Introduce color on interaction
|
|
69
|
+
|
|
70
|
+
### Background & Surfaces
|
|
71
|
+
- **Tinted backgrounds**: Replace pure gray (`#f5f5f5`) with warm neutrals (`oklch(97% 0.01 60)`) or cool tints (`oklch(97% 0.01 250)`)
|
|
72
|
+
- **Colored sections**: Use subtle background colors to separate areas
|
|
73
|
+
- **Gradient backgrounds**: Add depth with subtle, intentional gradients (not generic purple-blue)
|
|
74
|
+
- **Cards & surfaces**: Tint cards or surfaces slightly for warmth
|
|
75
|
+
|
|
76
|
+
**Use OKLCH for color**: It's perceptually uniform, meaning equal steps in lightness *look* equal. Great for generating harmonious scales.
|
|
77
|
+
|
|
78
|
+
### Data Visualization
|
|
79
|
+
- **Charts & graphs**: Use color to encode categories or values
|
|
80
|
+
- **Heatmaps**: Color intensity shows density or importance
|
|
81
|
+
- **Comparison**: Color coding for different datasets or timeframes
|
|
82
|
+
|
|
83
|
+
### Borders & Accents
|
|
84
|
+
- **Hairline borders**: 1px colored borders on full perimeter (not side-stripes; see the absolute ban on `border-left/right > 1px`)
|
|
85
|
+
- **Underlines**: Color underlines for emphasis or active states
|
|
86
|
+
- **Dividers**: Subtle colored dividers instead of gray lines
|
|
87
|
+
- **Focus rings**: Colored focus indicators matching brand
|
|
88
|
+
- **Surface tints**: A 4-8% background wash of the accent color instead of a stripe
|
|
89
|
+
|
|
90
|
+
**NEVER**: `border-left` or `border-right` greater than 1px as a colored accent stripe. This is one of the three absolute bans in the parent skill. If you want to mark a card as "active" or "warning", use a full hairline border, a background tint, a leading glyph, or a numbered prefix. Not a side stripe.
|
|
91
|
+
|
|
92
|
+
### Typography Color
|
|
93
|
+
- **Colored headings**: Use brand colors for section headings (maintain contrast)
|
|
94
|
+
- **Highlight text**: Color for emphasis or categories
|
|
95
|
+
- **Labels & tags**: Small colored labels for metadata or categories
|
|
96
|
+
|
|
97
|
+
### Decorative Elements
|
|
98
|
+
- **Illustrations**: Add colored illustrations or icons
|
|
99
|
+
- **Shapes**: Geometric shapes in brand colors as background elements
|
|
100
|
+
- **Gradients**: Colorful gradient overlays or mesh backgrounds
|
|
101
|
+
- **Blobs/organic shapes**: Soft colored shapes for visual interest
|
|
102
|
+
|
|
103
|
+
## Balance & Refinement
|
|
104
|
+
|
|
105
|
+
Ensure color addition improves rather than overwhelms:
|
|
106
|
+
|
|
107
|
+
### Maintain Hierarchy
|
|
108
|
+
- **Dominant color** (60%): Primary brand color or most used accent
|
|
109
|
+
- **Secondary color** (30%): Supporting color for variety
|
|
110
|
+
- **Accent color** (10%): High contrast for key moments
|
|
111
|
+
- **Neutrals** (remaining): Gray/black/white for structure
|
|
112
|
+
|
|
113
|
+
### Accessibility
|
|
114
|
+
- **Contrast ratios**: Ensure WCAG compliance (4.5:1 for text, 3:1 for UI components)
|
|
115
|
+
- **Don't rely on color alone**: Use icons, labels, or patterns alongside color
|
|
116
|
+
- **Test for color blindness**: Verify red/green combinations work for all users
|
|
117
|
+
|
|
118
|
+
### Cohesion
|
|
119
|
+
- **Consistent palette**: Use colors from defined palette, not arbitrary choices
|
|
120
|
+
- **Systematic application**: Same color meanings throughout (green always = success)
|
|
121
|
+
- **Temperature consistency**: Warm palette stays warm, cool stays cool
|
|
122
|
+
|
|
123
|
+
**NEVER**:
|
|
124
|
+
- Use every color in the rainbow (choose 2-4 colors beyond neutrals)
|
|
125
|
+
- Apply color randomly without semantic meaning
|
|
126
|
+
- Put gray text on colored backgrounds. It looks washed out; use a darker shade of the background color or transparency instead
|
|
127
|
+
- Use pure gray for neutrals. Add subtle color tint (warm or cool) for depth
|
|
128
|
+
- Use pure black (`#000`) or pure white (`#fff`) for large areas
|
|
129
|
+
- Violate WCAG contrast requirements
|
|
130
|
+
- Use color as the only indicator (accessibility issue)
|
|
131
|
+
- Make everything colorful (defeats the purpose)
|
|
132
|
+
- Default to purple-blue gradients (AI slop aesthetic)
|
|
133
|
+
|
|
134
|
+
## Verify Color Addition
|
|
135
|
+
|
|
136
|
+
Test that colorization improves the experience:
|
|
137
|
+
|
|
138
|
+
- **Better hierarchy**: Does color guide attention appropriately?
|
|
139
|
+
- **Clearer meaning**: Does color help users understand states/categories?
|
|
140
|
+
- **More engaging**: Does the interface feel warmer and more inviting?
|
|
141
|
+
- **Still accessible**: Do all color combinations meet WCAG standards?
|
|
142
|
+
- **Not overwhelming**: Is color balanced and purposeful?
|
|
143
|
+
|
|
144
|
+
When the palette earns its place, hand off to `$impeccable polish` for the final pass.
|
|
145
|
+
|
|
146
|
+
## Live-mode signature params
|
|
147
|
+
|
|
148
|
+
When invoked from live mode, each variant MUST declare a `color-amount` param so the user can dial between a restrained accent and a drenched surface without regeneration. Author the variant's CSS against `var(--p-color-amount, 0.5)`, typically as the alpha multiplier on backgrounds, or as a scaling factor on the chroma axis in an OKLCH expression. 0 = neutral/monochrome, 1 = full saturation / dominant coverage.
|
|
149
|
+
|
|
150
|
+
```json
|
|
151
|
+
{"id":"color-amount","kind":"range","min":0,"max":1,"step":0.05,"default":0.5,"label":"Color amount"}
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
Layer 1-2 variant-specific params on top: palette selection (`steps` with named options), temperature warmth, or tint vs. true color. See `reference/live.md` for the full params contract.
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# Craft Flow
|
|
2
|
+
|
|
3
|
+
Build a feature with impeccable UX and UI quality: shape the design, land the visual direction, build real production code, inspect and improve in-browser until it meets a high-end studio bar.
|
|
4
|
+
|
|
5
|
+
Before writing code, you need: PRODUCT.md loaded, register identified and the matching reference loaded, and a confirmed design direction for this task (either from `shape` or supplied by the user). PRODUCT.md is project context, not a task-specific brief.
|
|
6
|
+
|
|
7
|
+
Treat any approved visual direction (generated mock or stated reference) as a concrete contract for composition, hierarchy, density, atmosphere, signature motifs, and distinctive visual moves. Don't let mocks replace structure, copy, accessibility, or state design. But if the live result lacks the approved direction's major ingredients, the implementation is wrong.
|
|
8
|
+
|
|
9
|
+
### Gates: do not compress
|
|
10
|
+
|
|
11
|
+
Craft has **multiple user gates**, not one. When the harness has native image generation (Codex via `image_gen`), the gate sequence before code is:
|
|
12
|
+
|
|
13
|
+
1. **Shape brief confirmed** (Step 1)
|
|
14
|
+
2. **Direction questions answered** (codex.md Step A)
|
|
15
|
+
3. **Palette confirmed** (codex.md Step B)
|
|
16
|
+
4. **One mock direction approved or delegated** (codex.md Step D)
|
|
17
|
+
|
|
18
|
+
You must stop at every gate. **Shape confirmation alone is NOT a green light to start coding.** It is the green light to begin codex.md Step A. Compressing gates 2 through 4 because the shape brief felt complete is the dominant failure mode of this flow.
|
|
19
|
+
|
|
20
|
+
When the harness lacks native image generation, gates 2-4 collapse into the brief itself, and shape confirmation does advance straight to code.
|
|
21
|
+
|
|
22
|
+
## Step 0: Project Foundation
|
|
23
|
+
|
|
24
|
+
Before shape, before code: figure out what kind of project you're working in.
|
|
25
|
+
|
|
26
|
+
Look at the working directory. Run `ls`. Check for:
|
|
27
|
+
|
|
28
|
+
- An existing framework: `astro.config.mjs/ts`, `next.config.js/ts`, `nuxt.config.ts`, `svelte.config.js`, `vite.config.js/ts`, `package.json` with framework deps, `Cargo.toml` + Leptos/Yew, `Gemfile` + Rails. **If found, use it.** Do not start a parallel build, do not introduce a second framework, do not write to `dist/` or `build/` directly. Whatever pipeline the project has, respect it.
|
|
29
|
+
- An existing component library or design system: `src/components/`, `app/components/`, a `tokens.css` / `theme.ts`, an `astro.config` `integrations`. Read what's there before adding to it.
|
|
30
|
+
- An existing icon set: `lucide-react`, `@phosphor-icons/react`, `@iconify/*`, hand-rolled SVG sprites in `assets/icons/`. **Use what's already in the project**; don't introduce a second set.
|
|
31
|
+
|
|
32
|
+
If the directory is empty (greenfield), don't pick a framework silently. Ask the user via the AskUserQuestion tool, with sensible defaults framed by the brief:
|
|
33
|
+
|
|
34
|
+
```text
|
|
35
|
+
What should this be built on?
|
|
36
|
+
- Astro (default for content-led brand sites, landing pages, marketing surfaces)
|
|
37
|
+
- SvelteKit / Next.js / Nuxt (when the brief implies an app surface or significant interactivity)
|
|
38
|
+
- Single index.html (one-shot demo, prototype, or a deliberately framework-free experiment)
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Default: Astro for brand briefs, the project's existing framework for product briefs. Ask once; don't re-ask mid-task.
|
|
42
|
+
|
|
43
|
+
## Step 1: Shape the Design
|
|
44
|
+
|
|
45
|
+
Run $impeccable shape, passing along whatever feature description the user provided. Shape is **required** for craft; it is what produces a confirmed direction.
|
|
46
|
+
|
|
47
|
+
Present the shape output and stop. Wait for the user to confirm, override, or course-correct before writing code.
|
|
48
|
+
|
|
49
|
+
If the user already supplied a confirmed brief or ran shape separately, use it and skip this step.
|
|
50
|
+
|
|
51
|
+
When the original prompt + PRODUCT.md already answer scope, content, and visual direction with no real ambiguity, the shape output can be **compact** (3-5 bullets stating what you're building and the visual lane, ending with one or two specific questions or "confirm or override"). The full 10-section structured brief is reserved for genuinely ambiguous, multi-screen, or stakeholder-heavy tasks. Don't pad a clear brief into a long one to look thorough; equally, don't skip the pause to look efficient.
|
|
52
|
+
|
|
53
|
+
If the harness has native image generation (Codex), a compact shape's "confirm or override" advances to **Step 3 and the codex.md flow**, not to Step 4. Phrase the closing line accordingly: "Confirm or override; once we lock direction, I'll run a couple of palette and reference questions before generating any mocks." This stops the model from reading shape confirmation as code-green.
|
|
54
|
+
|
|
55
|
+
## Step 2: Load References
|
|
56
|
+
|
|
57
|
+
Based on the design brief's "Recommended References" section, consult the relevant impeccable reference files. At minimum, always consult:
|
|
58
|
+
|
|
59
|
+
- [spatial-design.md](spatial-design.md) for layout and spacing
|
|
60
|
+
- [typography.md](typography.md) for type hierarchy
|
|
61
|
+
|
|
62
|
+
Then add references based on the brief's needs:
|
|
63
|
+
- Complex interactions or forms? Consult [interaction-design.md](interaction-design.md)
|
|
64
|
+
- Animation or transitions? Consult [motion-design.md](motion-design.md)
|
|
65
|
+
- Color-heavy or themed? Consult [color-and-contrast.md](color-and-contrast.md)
|
|
66
|
+
- Responsive requirements? Consult [responsive-design.md](responsive-design.md)
|
|
67
|
+
- Heavy on copy, labels, or errors? Consult [ux-writing.md](ux-writing.md)
|
|
68
|
+
|
|
69
|
+
## Step 3: Visual Direction & Assets (Harness-Gated)
|
|
70
|
+
|
|
71
|
+
If the harness has **native image generation** (currently Codex via `image_gen`), this step is mandatory. **Stop and load [codex.md](codex.md)**. It covers palette generation, mock exploration, the approval loop, mock-fidelity inventory, and asset slicing via the `impeccable_asset_producer` subagent. Follow Steps A-F in that file, then return here for Step 4.
|
|
72
|
+
|
|
73
|
+
If the harness lacks native image generation, **state in one line that the visual-direction-by-generation step is being skipped because the harness lacks native image generation, then proceed**. The one-line announcement is required; it forces a conscious decision instead of letting the step quietly evaporate. The brief is your only visual reference. Implement directly from it, treating any named anchor references and the brief's "Design Direction" as the contract.
|
|
74
|
+
|
|
75
|
+
Whether you generated mocks or not: don't replace required imagery with generic cards, bullets, emoji, fake metrics, decorative CSS panels, or filler copy. Image-led briefs (restaurants, hotels, magazines, photography, hobbyist communities, food, travel, fashion, product) need real or sourced imagery in the build, not CSS scenery.
|
|
76
|
+
|
|
77
|
+
## Step 4: Build to Production Quality
|
|
78
|
+
|
|
79
|
+
**Precondition.** If Step 3 routed you to codex.md (native image generation available), Steps A through D in that file must be complete before any code: questions answered, palette confirmed, mocks generated, one direction approved or delegated. **Do not mention implementation, file paths, or patch plans until that's done.** A confirmed shape brief is not enough; the model that compressed those gates is the model that already failed this flow.
|
|
80
|
+
|
|
81
|
+
Implement the feature following the design brief. Build in passes so structure, visual system, states, motion/media, and responsive behavior each get deliberate attention. The list below is the definition of done, not inspiration.
|
|
82
|
+
|
|
83
|
+
### Production bar
|
|
84
|
+
|
|
85
|
+
- **Real content.** No placeholder copy, placeholder images, dead links, fake controls, or unused scaffold at presentation time.
|
|
86
|
+
- **Preserve the approved mock's major ingredients.** Missing hero objects, world/product imagery, section structure, CTA/nav treatment, or distinctive motifs are blocking defects unless the user accepted the change.
|
|
87
|
+
- **Semantic first.** Real headings, landmarks, labels, form associations, button/link semantics, accessible names, state announcements where needed.
|
|
88
|
+
- **Deliberate spacing and alignment.** No default gaps, arbitrary margins, unbalanced whitespace, or accidental optical misalignment.
|
|
89
|
+
- **Intentional typography.** Chosen loading strategy, clear hierarchy, readable measure, stable line breaks, no overflow at any width.
|
|
90
|
+
- **Realistic state coverage.** Default, hover, focus-visible, active, disabled, loading, error, success, empty, overflow, long/short text, first-run.
|
|
91
|
+
- **Finished interaction quality.** Keyboard paths, touch targets, feedback timing, scroll behavior, state transitions, no hover-only functionality.
|
|
92
|
+
- **Coherent icon set.** Use the project's established set; otherwise pick one library or use accessible text. Don't mix.
|
|
93
|
+
- **Respect the build pipeline.** Edit source files and run the project's build (`npm run build` or equivalent). Don't write to `build/` / `dist/` / `.next/` with `cat`, heredoc, or Bash redirects; that skips asset hashing, image optimization, code splitting, and CSS extraction, and produces output the dev server won't serve.
|
|
94
|
+
- **Verify image URLs before referencing them.** Use image-search MCP or web-fetch when available; guessed photo IDs ship as broken-image placeholders. Without verification, prefer fewer images you're confident about.
|
|
95
|
+
- **Optimized imagery and media.** Correct dimensions, useful alt text, lazy loading below the fold, modern formats when practical, responsive `srcset`/`picture` for raster, no project-referenced asset left outside the workspace.
|
|
96
|
+
- **Premium motion.** Use atmospheric blur, filter, mask, shadow, reveal when they improve the experience. Avoid casual layout-property animation, bound expensive effects, verify smoothness in-browser, respect reduced motion, and avoid choreography that blocks task completion.
|
|
97
|
+
- **Maintainable.** Reusable local patterns, clear component boundaries, project conventions. No rasterized UI text or one-off hacks when a local pattern exists.
|
|
98
|
+
- **Technically clean.** Production build passes, no console errors, no avoidable layout shift, no needless dependencies, no broken asset paths.
|
|
99
|
+
- **Ask when uncertain.** If a discovery materially changes the brief or approved direction, stop and ask. Don't guess.
|
|
100
|
+
|
|
101
|
+
## Step 5: Iterate Visually
|
|
102
|
+
|
|
103
|
+
Look at what you built like a designer would. Your eyes are whatever the harness gives you: a connected browser, a screenshotting tool, Playwright, or asking the user. Use them for responsive testing (mobile, tablet, desktop minimum) and general visual validation.
|
|
104
|
+
|
|
105
|
+
If your tool returns a file path, read the PNG back into the conversation. A screenshot you didn't read doesn't count.
|
|
106
|
+
|
|
107
|
+
For long-form brand surfaces, inspect major sections individually. Thumbnails hide spacing, clipping, and cascade defects.
|
|
108
|
+
|
|
109
|
+
After the first pass, write an honest critique against the brief, the approved mock's major ingredients (hero silhouette, motifs, imagery, nav/CTA, density), and impeccable's DON'Ts. Patch material defects and re-inspect. **Don't invent defects to demonstrate iteration.** A confident "first pass clean, shipping" beats a fake fix.
|
|
110
|
+
|
|
111
|
+
Actively check: responsive behavior (composes, not shrinks), every state (empty / error / loading / edge), craft details (spacing, alignment, hierarchy, contrast, motion timing, focus), performance basics. The exit bar: defensible in a high-end studio review.
|
|
112
|
+
|
|
113
|
+
Detector or QA output is defect evidence only; never proof the work is finished.
|
|
114
|
+
|
|
115
|
+
## Step 6: Present
|
|
116
|
+
|
|
117
|
+
Present the result to the user:
|
|
118
|
+
- Show the feature in its primary state
|
|
119
|
+
- Summarize the browser/viewports checked and the most important fixes made after inspection
|
|
120
|
+
- Walk through the key states (empty, error, responsive)
|
|
121
|
+
- Explain design decisions that connect back to the design brief and, when used, the chosen north-star mock. Include any accepted deviations from the mock; do not hide unimplemented mock ingredients.
|
|
122
|
+
- Note any remaining limitations or follow-up risks honestly
|
|
123
|
+
- Ask: "What's working? What isn't?"
|