@design-ai/cli 4.55.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-plugin/plugin.json +164 -0
- package/AGENTS.ko.md +126 -0
- package/AGENTS.md +182 -0
- package/CHANGELOG.md +6883 -0
- package/CLAUDE.md +39 -0
- package/LICENSE +21 -0
- package/README.ko.md +245 -0
- package/README.md +277 -0
- package/agents/README.md +14 -0
- package/agents/a11y-reviewer.md +121 -0
- package/agents/component-architect.md +57 -0
- package/agents/design-critic.md +46 -0
- package/agents/token-extractor.md +63 -0
- package/cli/bin/design-ai-mcp.mjs +6 -0
- package/cli/bin/design-ai.mjs +40 -0
- package/cli/commands/audit.mjs +111 -0
- package/cli/commands/check.mjs +226 -0
- package/cli/commands/doctor.mjs +141 -0
- package/cli/commands/examples.mjs +58 -0
- package/cli/commands/help.mjs +271 -0
- package/cli/commands/install.mjs +161 -0
- package/cli/commands/learn.mjs +1871 -0
- package/cli/commands/list.mjs +143 -0
- package/cli/commands/mcp.mjs +27 -0
- package/cli/commands/pack.mjs +211 -0
- package/cli/commands/prompt.mjs +199 -0
- package/cli/commands/route.mjs +247 -0
- package/cli/commands/search.mjs +60 -0
- package/cli/commands/show.mjs +52 -0
- package/cli/commands/site.mjs +558 -0
- package/cli/commands/status.mjs +161 -0
- package/cli/commands/uninstall.mjs +119 -0
- package/cli/commands/update.mjs +184 -0
- package/cli/commands/version.mjs +94 -0
- package/cli/commands/workspace.mjs +176 -0
- package/cli/lib/brief.mjs +52 -0
- package/cli/lib/check.mjs +642 -0
- package/cli/lib/dispatch.mjs +109 -0
- package/cli/lib/doctor.mjs +505 -0
- package/cli/lib/examples.mjs +258 -0
- package/cli/lib/exec.mjs +63 -0
- package/cli/lib/help-flags.mjs +5 -0
- package/cli/lib/learn.mjs +3694 -0
- package/cli/lib/log.mjs +47 -0
- package/cli/lib/mcp-server.mjs +426 -0
- package/cli/lib/output.mjs +101 -0
- package/cli/lib/pack.mjs +599 -0
- package/cli/lib/paths.mjs +63 -0
- package/cli/lib/prompt.mjs +603 -0
- package/cli/lib/route.mjs +740 -0
- package/cli/lib/search.mjs +158 -0
- package/cli/lib/show.mjs +161 -0
- package/cli/lib/signals.mjs +2337 -0
- package/cli/lib/site.mjs +6617 -0
- package/cli/lib/skill-proposals.mjs +2046 -0
- package/cli/lib/suggest.mjs +66 -0
- package/cli/lib/workspace.mjs +1056 -0
- package/commands/README.md +25 -0
- package/commands/component-spec.md +34 -0
- package/commands/conversational.md +44 -0
- package/commands/design-from-brief.md +141 -0
- package/commands/design-review.md +62 -0
- package/commands/document-from-brief.md +47 -0
- package/commands/extract-tokens.md +38 -0
- package/commands/game-ui.md +40 -0
- package/commands/illustration.md +37 -0
- package/commands/iterate.md +167 -0
- package/commands/motion-design.md +54 -0
- package/commands/palette-from-brand.md +50 -0
- package/commands/print.md +49 -0
- package/commands/slide-deck.md +46 -0
- package/commands/spatial.md +47 -0
- package/commands/stability-review.md +74 -0
- package/commands/video.md +42 -0
- package/commands/website-improvement.md +77 -0
- package/docs/AGENT-DEVELOPMENT.md +658 -0
- package/docs/AI-LEARNING.md +429 -0
- package/docs/AIDER-INTEGRATION.md +224 -0
- package/docs/ARCHITECTURE.ko.md +183 -0
- package/docs/ARCHITECTURE.md +105 -0
- package/docs/CODEX-INTEGRATION.md +311 -0
- package/docs/COMPANY-WEBSITE-DOGFOOD.ko.md +144 -0
- package/docs/COMPANY-WEBSITE-DOGFOOD.md +150 -0
- package/docs/COMPANY-WEBSITE-INTAKE-TEMPLATE.ko.md +153 -0
- package/docs/COMPANY-WEBSITE-INTAKE-TEMPLATE.md +154 -0
- package/docs/CONTRIBUTING.ko.md +203 -0
- package/docs/CONTRIBUTING.md +242 -0
- package/docs/CURSOR-INTEGRATION.md +220 -0
- package/docs/DISTRIBUTION.ko.md +248 -0
- package/docs/DISTRIBUTION.md +253 -0
- package/docs/DOGFOOD-FINDINGS.md +180 -0
- package/docs/DOGFOOD-V4-FINDINGS.md +139 -0
- package/docs/DOGFOOD-V4-MKDOCS-FINDINGS.md +233 -0
- package/docs/DOGFOOD-V4-NPM-FINDINGS.md +157 -0
- package/docs/DOGFOOD-V4-VSCODE-FINDINGS.md +135 -0
- package/docs/FIGMA-INTEGRATION.md +222 -0
- package/docs/MCP-INTEGRATION.md +243 -0
- package/docs/MIGRATION-v4.md +121 -0
- package/docs/PLUGIN-PACKAGING.md +240 -0
- package/docs/PRODUCT-READINESS.md +66 -0
- package/docs/QUICKSTART.ko.md +178 -0
- package/docs/QUICKSTART.md +179 -0
- package/docs/RELEASE-CHECKLIST.md +292 -0
- package/docs/ROADMAP.md +19495 -0
- package/docs/SESSION-LOG.md +940 -0
- package/docs/TOKEN-SYNC.md +237 -0
- package/docs/USING.ko.md +206 -0
- package/docs/USING.md +218 -0
- package/docs/WEBSITE-IMPROVEMENT.ko.md +75 -0
- package/docs/WEBSITE-IMPROVEMENT.md +89 -0
- package/docs/announcements/README.md +56 -0
- package/docs/announcements/dev-to-korea.md +206 -0
- package/docs/announcements/hashnode-post.ko.md +232 -0
- package/docs/announcements/okky-post.ko.md +158 -0
- package/docs/announcements/press-kit.md +101 -0
- package/docs/announcements/reddit-r-korea.md +196 -0
- package/docs/announcements/show-hn.md +114 -0
- package/docs/announcements/twitter-thread.md +255 -0
- package/docs/external-status.md +34 -0
- package/docs/integrations/aider-walkthrough.ko.md +275 -0
- package/docs/integrations/aider-walkthrough.md +274 -0
- package/docs/integrations/codex-walkthrough.ko.md +297 -0
- package/docs/integrations/codex-walkthrough.md +297 -0
- package/docs/integrations/cursor-walkthrough.ko.md +281 -0
- package/docs/integrations/cursor-walkthrough.md +284 -0
- package/docs/integrations/design-ai-mcp-server.md +169 -0
- package/docs/integrations/figma-mcp.md +149 -0
- package/docs/integrations/github-mcp.md +178 -0
- package/docs/integrations/linear-mcp.md +215 -0
- package/docs/integrations/notion-mcp.md +174 -0
- package/docs/integrations/sdk-walkthrough.ko.md +375 -0
- package/docs/integrations/sdk-walkthrough.md +375 -0
- package/docs/integrations/slack-mcp.md +208 -0
- package/docs/integrations/vscode-walkthrough.ko.md +202 -0
- package/docs/integrations/vscode-walkthrough.md +205 -0
- package/docs/requirements.txt +16 -0
- package/docs/site-overrides/extra.css +83 -0
- package/docs/site-overrides/favicon.svg +4 -0
- package/docs/site-overrides/logo.svg +10 -0
- package/docs/site-overrides/main.html +18 -0
- package/docs/website-console/app.js +2540 -0
- package/docs/website-console/index.html +24 -0
- package/docs/website-console/styles.css +975 -0
- package/examples/README.md +252 -0
- package/examples/cases/dogfood-v4-korean-hr-onboarding.md +356 -0
- package/examples/component-accordion-actions.md +153 -0
- package/examples/component-accordion-details.md +147 -0
- package/examples/component-accordion-summary.md +180 -0
- package/examples/component-accordion.md +229 -0
- package/examples/component-account-card.md +284 -0
- package/examples/component-address-input.md +260 -0
- package/examples/component-affix.md +190 -0
- package/examples/component-alert-dialog.md +210 -0
- package/examples/component-alert-title.md +77 -0
- package/examples/component-alert.md +192 -0
- package/examples/component-amount-input.md +278 -0
- package/examples/component-anchor.md +198 -0
- package/examples/component-app-bar.md +249 -0
- package/examples/component-aspect-ratio.md +156 -0
- package/examples/component-auto-complete.md +199 -0
- package/examples/component-avatar-group.md +170 -0
- package/examples/component-avatar.md +191 -0
- package/examples/component-back-top.md +123 -0
- package/examples/component-backdrop.md +148 -0
- package/examples/component-badge.md +181 -0
- package/examples/component-banner.md +237 -0
- package/examples/component-biometric-gate.md +281 -0
- package/examples/component-blockquote.md +153 -0
- package/examples/component-border-beam.md +207 -0
- package/examples/component-bottom-navigation.md +226 -0
- package/examples/component-box.md +112 -0
- package/examples/component-breadcrumb.md +222 -0
- package/examples/component-button-base.md +190 -0
- package/examples/component-button-group.md +117 -0
- package/examples/component-button.md +213 -0
- package/examples/component-calendar.md +280 -0
- package/examples/component-callout.md +131 -0
- package/examples/component-card-actions.md +101 -0
- package/examples/component-card-content.md +90 -0
- package/examples/component-card-header.md +122 -0
- package/examples/component-card-media.md +79 -0
- package/examples/component-card.md +233 -0
- package/examples/component-carousel.md +266 -0
- package/examples/component-cascader.md +135 -0
- package/examples/component-category-picker.md +271 -0
- package/examples/component-chart.md +237 -0
- package/examples/component-chat-interface.md +399 -0
- package/examples/component-checkbox.md +149 -0
- package/examples/component-click-away-listener.md +87 -0
- package/examples/component-code.md +213 -0
- package/examples/component-collapsible.md +219 -0
- package/examples/component-color-picker.md +110 -0
- package/examples/component-combobox.md +267 -0
- package/examples/component-command.md +299 -0
- package/examples/component-config-provider.md +190 -0
- package/examples/component-context-menu.md +179 -0
- package/examples/component-css-baseline.md +148 -0
- package/examples/component-date-picker.md +249 -0
- package/examples/component-descriptions.md +242 -0
- package/examples/component-dialog-actions.md +111 -0
- package/examples/component-dialog-content-text.md +76 -0
- package/examples/component-dialog-content.md +105 -0
- package/examples/component-dialog-title.md +104 -0
- package/examples/component-dialog.md +176 -0
- package/examples/component-divider.md +182 -0
- package/examples/component-doc-page.md +217 -0
- package/examples/component-drawer.md +257 -0
- package/examples/component-dropdown.md +220 -0
- package/examples/component-email-layout.md +253 -0
- package/examples/component-empty-state.md +269 -0
- package/examples/component-empty.md +172 -0
- package/examples/component-fade.md +87 -0
- package/examples/component-feature-grid.md +201 -0
- package/examples/component-field.md +266 -0
- package/examples/component-filled-input.md +114 -0
- package/examples/component-flex.md +117 -0
- package/examples/component-float-button.md +214 -0
- package/examples/component-form-control-label.md +134 -0
- package/examples/component-form-control.md +113 -0
- package/examples/component-form-controls.md +251 -0
- package/examples/component-form-group.md +86 -0
- package/examples/component-form-helper-text.md +95 -0
- package/examples/component-form-label.md +98 -0
- package/examples/component-form.md +291 -0
- package/examples/component-game-hud.md +362 -0
- package/examples/component-game-menu.md +327 -0
- package/examples/component-grid.md +140 -0
- package/examples/component-grow.md +79 -0
- package/examples/component-hero-block.md +252 -0
- package/examples/component-hover-card.md +211 -0
- package/examples/component-icon-button.md +142 -0
- package/examples/component-icon.md +102 -0
- package/examples/component-illustration.md +280 -0
- package/examples/component-image-list.md +107 -0
- package/examples/component-image.md +282 -0
- package/examples/component-input-adornment.md +101 -0
- package/examples/component-input-base.md +134 -0
- package/examples/component-input-number.md +141 -0
- package/examples/component-input-otp.md +271 -0
- package/examples/component-input.md +213 -0
- package/examples/component-item.md +243 -0
- package/examples/component-kbd.md +197 -0
- package/examples/component-krw-amount.md +219 -0
- package/examples/component-label.md +118 -0
- package/examples/component-layout.md +217 -0
- package/examples/component-link.md +223 -0
- package/examples/component-list-item-avatar.md +72 -0
- package/examples/component-list-item-button.md +139 -0
- package/examples/component-list-item-icon.md +82 -0
- package/examples/component-list-item-text.md +98 -0
- package/examples/component-list-item.md +116 -0
- package/examples/component-list-subheader.md +70 -0
- package/examples/component-list.md +198 -0
- package/examples/component-loading-button.md +125 -0
- package/examples/component-loading-sequence.md +254 -0
- package/examples/component-lottie-player.md +279 -0
- package/examples/component-masonry.md +191 -0
- package/examples/component-mentions.md +189 -0
- package/examples/component-menu-item.md +102 -0
- package/examples/component-menu-list.md +98 -0
- package/examples/component-menu.md +139 -0
- package/examples/component-menubar.md +259 -0
- package/examples/component-message.md +162 -0
- package/examples/component-mobile-stepper.md +155 -0
- package/examples/component-modal.md +220 -0
- package/examples/component-navigation-menu.md +295 -0
- package/examples/component-notification.md +166 -0
- package/examples/component-otp-countdown.md +245 -0
- package/examples/component-outlined-input.md +145 -0
- package/examples/component-page-transition.md +281 -0
- package/examples/component-pagination.md +226 -0
- package/examples/component-paper.md +199 -0
- package/examples/component-pass-auth.md +265 -0
- package/examples/component-payment-brand-button.md +253 -0
- package/examples/component-payment-method-selector.md +272 -0
- package/examples/component-payment-receipt.md +277 -0
- package/examples/component-popconfirm.md +144 -0
- package/examples/component-popover.md +239 -0
- package/examples/component-popper.md +129 -0
- package/examples/component-pricing-cards.md +247 -0
- package/examples/component-progress.md +195 -0
- package/examples/component-qr-code.md +201 -0
- package/examples/component-radio.md +167 -0
- package/examples/component-rate.md +202 -0
- package/examples/component-resizable.md +163 -0
- package/examples/component-result.md +270 -0
- package/examples/component-scroll-area.md +199 -0
- package/examples/component-scroll-reveal.md +320 -0
- package/examples/component-segmented.md +178 -0
- package/examples/component-select.md +258 -0
- package/examples/component-separator.md +177 -0
- package/examples/component-sheet.md +277 -0
- package/examples/component-sidebar.md +257 -0
- package/examples/component-skeleton.md +178 -0
- package/examples/component-slide.md +89 -0
- package/examples/component-slider.md +208 -0
- package/examples/component-snackbar-content.md +92 -0
- package/examples/component-snackbar.md +121 -0
- package/examples/component-sonner.md +165 -0
- package/examples/component-space.md +125 -0
- package/examples/component-spatial-locomotion.md +373 -0
- package/examples/component-spatial-panel.md +330 -0
- package/examples/component-speed-dial-action.md +78 -0
- package/examples/component-speed-dial.md +177 -0
- package/examples/component-spin.md +173 -0
- package/examples/component-spinner.md +204 -0
- package/examples/component-splitter.md +210 -0
- package/examples/component-stack.md +130 -0
- package/examples/component-statistic.md +282 -0
- package/examples/component-step-button.md +157 -0
- package/examples/component-step-connector.md +157 -0
- package/examples/component-step-content.md +121 -0
- package/examples/component-step-icon.md +115 -0
- package/examples/component-step-label.md +101 -0
- package/examples/component-step.md +84 -0
- package/examples/component-steps.md +264 -0
- package/examples/component-stock-chart.md +251 -0
- package/examples/component-swipeable-drawer.md +149 -0
- package/examples/component-switch.md +99 -0
- package/examples/component-tab-scroll-button.md +180 -0
- package/examples/component-tab.md +120 -0
- package/examples/component-table-body.md +82 -0
- package/examples/component-table-cell.md +118 -0
- package/examples/component-table-container.md +75 -0
- package/examples/component-table-footer.md +72 -0
- package/examples/component-table-head.md +78 -0
- package/examples/component-table-pagination.md +137 -0
- package/examples/component-table-row.md +113 -0
- package/examples/component-table-sort-label.md +109 -0
- package/examples/component-table.md +202 -0
- package/examples/component-tabs.md +184 -0
- package/examples/component-tag-badge.md +309 -0
- package/examples/component-tag.md +102 -0
- package/examples/component-testimonial-carousel.md +218 -0
- package/examples/component-textarea-autosize.md +114 -0
- package/examples/component-textarea.md +173 -0
- package/examples/component-time-picker.md +205 -0
- package/examples/component-timeline.md +170 -0
- package/examples/component-toast.md +224 -0
- package/examples/component-toggle-button.md +129 -0
- package/examples/component-toggle.md +220 -0
- package/examples/component-toolbar.md +104 -0
- package/examples/component-tooltip.md +178 -0
- package/examples/component-tour.md +176 -0
- package/examples/component-transaction-list-item.md +243 -0
- package/examples/component-transfer.md +156 -0
- package/examples/component-tree-select.md +202 -0
- package/examples/component-tree.md +297 -0
- package/examples/component-typography.md +215 -0
- package/examples/component-upload.md +295 -0
- package/examples/component-video-hero.md +409 -0
- package/examples/component-video-player.md +340 -0
- package/examples/component-voice-input.md +408 -0
- package/examples/component-watermark.md +217 -0
- package/examples/component-zoom.md +92 -0
- package/examples/doc-explanation-example.md +196 -0
- package/examples/doc-how-to-example.md +205 -0
- package/examples/doc-tutorial-example.md +162 -0
- package/examples/dogfood-korean-fintech-system.md +433 -0
- package/examples/email-transactional-example.md +259 -0
- package/examples/palette-saas-violet.md +235 -0
- package/examples/print-business-card-spec.md +205 -0
- package/examples/print-packaging-spec.md +285 -0
- package/examples/report-example.md +228 -0
- package/examples/slide-deck-example.md +237 -0
- package/examples/website-improvement-report.md +128 -0
- package/examples/website-improvement-workspace.json +126 -0
- package/install.sh +189 -0
- package/knowledge/COVERAGE.md +740 -0
- package/knowledge/PRINCIPLES.md +108 -0
- package/knowledge/a11y/contrast.md +70 -0
- package/knowledge/a11y/keyboard-and-focus.md +108 -0
- package/knowledge/colors/color-theory.md +90 -0
- package/knowledge/colors/mui-palette-structure.md +105 -0
- package/knowledge/colors/palettes-by-product-type.md +876 -0
- package/knowledge/components/INDEX.md +231 -0
- package/knowledge/components/index.json +1470 -0
- package/knowledge/components/shadcn-registry.md +159 -0
- package/knowledge/conversational/ai-chat-interfaces.md +323 -0
- package/knowledge/conversational/chatbot-design.md +312 -0
- package/knowledge/conversational/conversational-ui-fundamentals.md +299 -0
- package/knowledge/conversational/korean-voice-conventions.md +281 -0
- package/knowledge/conversational/voice-ui-patterns.md +297 -0
- package/knowledge/design-tokens/ant-design.md +124 -0
- package/knowledge/design-tokens/material-3.md +235 -0
- package/knowledge/design-tokens/polaris-and-carbon.md +231 -0
- package/knowledge/design-tokens/tailwind-v4.md +284 -0
- package/knowledge/game-ui/game-accessibility.md +317 -0
- package/knowledge/game-ui/game-ui-fundamentals.md +281 -0
- package/knowledge/game-ui/hud-design.md +324 -0
- package/knowledge/game-ui/korean-gaming-conventions.md +312 -0
- package/knowledge/game-ui/menu-systems.md +388 -0
- package/knowledge/i18n/korean-app-store-visual.md +223 -0
- package/knowledge/i18n/korean-document-style.md +301 -0
- package/knowledge/i18n/korean-payments.md +211 -0
- package/knowledge/i18n/korean-product-conventions.md +96 -0
- package/knowledge/i18n/korean-publishing.md +139 -0
- package/knowledge/i18n/korean-typography.md +123 -0
- package/knowledge/icons/curated-sets.md +225 -0
- package/knowledge/illustration/hero-illustrations.md +234 -0
- package/knowledge/illustration/illustration-systems.md +221 -0
- package/knowledge/illustration/mascot-design.md +208 -0
- package/knowledge/illustration/spot-illustrations.md +246 -0
- package/knowledge/illustration/svg-optimization.md +308 -0
- package/knowledge/layout/spacing-and-grid.md +119 -0
- package/knowledge/motion/app-loading-sequences.md +277 -0
- package/knowledge/motion/choreography-depth.md +297 -0
- package/knowledge/motion/marketing-motion.md +223 -0
- package/knowledge/motion/micro-interactions.md +266 -0
- package/knowledge/motion/motion-tools.md +281 -0
- package/knowledge/motion/principles.md +126 -0
- package/knowledge/patterns/auth-flow-design.md +316 -0
- package/knowledge/patterns/b2b-onboarding-flows.md +182 -0
- package/knowledge/patterns/brand-identity.md +238 -0
- package/knowledge/patterns/brand-references.md +97 -0
- package/knowledge/patterns/chart-color-encoding.md +269 -0
- package/knowledge/patterns/chart-types.md +344 -0
- package/knowledge/patterns/dashboard-composition.md +299 -0
- package/knowledge/patterns/design-system-qa.md +356 -0
- package/knowledge/patterns/document-typography.md +248 -0
- package/knowledge/patterns/email-design.md +338 -0
- package/knowledge/patterns/empty-states.md +263 -0
- package/knowledge/patterns/error-states.md +318 -0
- package/knowledge/patterns/form-design.md +237 -0
- package/knowledge/patterns/information-architecture.md +341 -0
- package/knowledge/patterns/landing-hero-design.md +283 -0
- package/knowledge/patterns/landing-page-patterns.md +681 -0
- package/knowledge/patterns/list-and-feed.md +371 -0
- package/knowledge/patterns/mobile-navigation.md +278 -0
- package/knowledge/patterns/money-and-amount.md +301 -0
- package/knowledge/patterns/onboarding.md +300 -0
- package/knowledge/patterns/pricing-page-design.md +261 -0
- package/knowledge/patterns/realtime-data.md +280 -0
- package/knowledge/patterns/report-design.md +330 -0
- package/knowledge/patterns/search-ux.md +373 -0
- package/knowledge/patterns/settings-page.md +325 -0
- package/knowledge/patterns/slide-deck-design.md +316 -0
- package/knowledge/patterns/styles-catalog.md +2599 -0
- package/knowledge/patterns/technical-writing.md +306 -0
- package/knowledge/patterns/ui-reasoning.md +1853 -0
- package/knowledge/patterns/ux-guidelines.md +1454 -0
- package/knowledge/platforms/react-native.md +395 -0
- package/knowledge/print/brochures-and-flyers.md +276 -0
- package/knowledge/print/korean-print-conventions.md +284 -0
- package/knowledge/print/packaging.md +321 -0
- package/knowledge/print/print-fundamentals.md +238 -0
- package/knowledge/print/signage-and-posters.md +235 -0
- package/knowledge/print/stationery.md +262 -0
- package/knowledge/spatial/ar-patterns.md +253 -0
- package/knowledge/spatial/comfort-and-accessibility.md +245 -0
- package/knowledge/spatial/spatial-design-fundamentals.md +346 -0
- package/knowledge/spatial/spatial-ui-elements.md +343 -0
- package/knowledge/spatial/vr-patterns.md +302 -0
- package/knowledge/typography/font-pairings.md +332 -0
- package/knowledge/typography/mui-type-scale.md +57 -0
- package/knowledge/typography/type-scale-fundamentals.md +105 -0
- package/knowledge/video/in-product-video.md +277 -0
- package/knowledge/video/korean-video-conventions.md +247 -0
- package/knowledge/video/marketing-video.md +258 -0
- package/knowledge/video/social-and-short-form.md +257 -0
- package/knowledge/video/video-fundamentals.md +296 -0
- package/package.json +106 -0
- package/skills/README.md +39 -0
- package/skills/color-palette/PLAYBOOK.md +175 -0
- package/skills/color-palette/SKILL.md +6 -0
- package/skills/color-palette/TEMPLATE.md +103 -0
- package/skills/component-spec-writer/PLAYBOOK.md +169 -0
- package/skills/component-spec-writer/SKILL.md +6 -0
- package/skills/component-spec-writer/TEMPLATE.md +115 -0
- package/skills/conversational-ui-designer/PLAYBOOK.md +231 -0
- package/skills/conversational-ui-designer/SKILL.md +6 -0
- package/skills/design-broadcast/PLAYBOOK.md +146 -0
- package/skills/design-broadcast/SKILL.md +6 -0
- package/skills/design-critique/PLAYBOOK.md +137 -0
- package/skills/design-critique/SKILL.md +6 -0
- package/skills/design-pr-review/PLAYBOOK.md +171 -0
- package/skills/design-pr-review/SKILL.md +6 -0
- package/skills/design-system-builder/PLAYBOOK.md +218 -0
- package/skills/design-system-builder/SKILL.md +6 -0
- package/skills/design-system-qa/PLAYBOOK.md +163 -0
- package/skills/design-system-qa/SKILL.md +6 -0
- package/skills/document-author/PLAYBOOK.md +167 -0
- package/skills/document-author/SKILL.md +6 -0
- package/skills/figma-token-sync/PLAYBOOK.md +149 -0
- package/skills/figma-token-sync/SKILL.md +6 -0
- package/skills/game-ui-designer/PLAYBOOK.md +209 -0
- package/skills/game-ui-designer/SKILL.md +6 -0
- package/skills/handoff-spec/PLAYBOOK.md +170 -0
- package/skills/handoff-spec/SKILL.md +6 -0
- package/skills/illustration-designer/PLAYBOOK.md +166 -0
- package/skills/illustration-designer/SKILL.md +6 -0
- package/skills/motion-designer/PLAYBOOK.md +223 -0
- package/skills/motion-designer/SKILL.md +6 -0
- package/skills/print-designer/PLAYBOOK.md +209 -0
- package/skills/print-designer/SKILL.md +6 -0
- package/skills/slide-deck-author/PLAYBOOK.md +198 -0
- package/skills/slide-deck-author/SKILL.md +6 -0
- package/skills/spatial-designer/PLAYBOOK.md +238 -0
- package/skills/spatial-designer/SKILL.md +6 -0
- package/skills/ux-audit/PLAYBOOK.md +142 -0
- package/skills/ux-audit/SKILL.md +6 -0
- package/skills/video-designer/PLAYBOOK.md +240 -0
- package/skills/video-designer/SKILL.md +6 -0
- package/skills/website-improvement/PLAYBOOK.md +118 -0
- package/skills/website-improvement/SKILL.md +6 -0
- package/skills/website-improvement/TEMPLATE.md +103 -0
- package/tools/audit/changelog-generate.py +176 -0
- package/tools/audit/check-coverage.py +483 -0
- package/tools/audit/doctor_assertions.py +256 -0
- package/tools/audit/example-qa.py +108 -0
- package/tools/audit/frontmatter-check.py +199 -0
- package/tools/audit/integration-check.py +95 -0
- package/tools/audit/korean-copy-check.py +161 -0
- package/tools/audit/link-check.py +146 -0
- package/tools/audit/local-ci.py +558 -0
- package/tools/audit/package-contents.py +723 -0
- package/tools/audit/package-smoke.py +22443 -0
- package/tools/audit/raw-hex-check.py +252 -0
- package/tools/audit/registry-smoke.py +8188 -0
- package/tools/audit/release-metadata.py +9832 -0
- package/tools/audit/run-all.py +351 -0
- package/tools/audit/smoke_assertions.py +12742 -0
- package/tools/audit/stability-review.py +332 -0
- package/tools/audit/stale-check.py +156 -0
- package/tools/migrations/add-version-frontmatter.py +132 -0
- package/tools/migrations/bump-last-updated.py +131 -0
- package/tools/migrations/promote-stability.py +172 -0
- package/tools/preview/README.md +58 -0
- package/tools/preview/render-tokens.py +454 -0
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
# Codex CLI walkthrough
|
|
2
|
+
|
|
3
|
+
A concrete walkthrough of using design-ai with **OpenAI Codex CLI**. Picks up where [`docs/CODEX-INTEGRATION.md`](../CODEX-INTEGRATION.md) leaves off — that's setup; this is workflow.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Install Codex CLI
|
|
9
|
+
npm install -g @openai/codex
|
|
10
|
+
|
|
11
|
+
# Get design-ai
|
|
12
|
+
git clone https://github.com/sungjin9288/design-ai.git ~/dev/design-ai
|
|
13
|
+
# OR
|
|
14
|
+
npm install -g @design-ai/cli
|
|
15
|
+
# (npm CLI symlinks for Claude Code; Codex reads files directly from the source dir)
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Setup (60 seconds)
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
cd ~/dev/design-ai # Open the design-ai project root
|
|
22
|
+
codex # Launch Codex CLI
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
That's it. Codex auto-loads `AGENTS.md` at session start. The full corpus is reachable via path references.
|
|
26
|
+
|
|
27
|
+
## Walkthrough 1: Spec a component
|
|
28
|
+
|
|
29
|
+
**Goal**: get a developer-ready spec for a custom `Banner` component.
|
|
30
|
+
|
|
31
|
+
### Session
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
You ▸ Spec a Banner component for a Korean fintech app. Persistent
|
|
35
|
+
in-page strip for system status announcements. Distinct from
|
|
36
|
+
Alert (inline) and Toast (transient).
|
|
37
|
+
|
|
38
|
+
Codex ▸ I'll apply the component-spec-writer skill.
|
|
39
|
+
|
|
40
|
+
Reading: skills/component-spec-writer/PLAYBOOK.md
|
|
41
|
+
Reading: knowledge/components/INDEX.md
|
|
42
|
+
Cross-referencing: examples/component-banner.md
|
|
43
|
+
Reading: knowledge/i18n/korean-document-style.md (KR voice)
|
|
44
|
+
|
|
45
|
+
[produces full spec following the established template]
|
|
46
|
+
|
|
47
|
+
# Banner — spec
|
|
48
|
+
## Banner vs Alert vs Toast
|
|
49
|
+
| | Banner | Alert | Toast |
|
|
50
|
+
...
|
|
51
|
+
[continues]
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### What's happening
|
|
55
|
+
|
|
56
|
+
- Codex read `AGENTS.md` (the universal entry) at session start.
|
|
57
|
+
- The user's prompt mentions a component task, so Codex looks up the matching skill.
|
|
58
|
+
- The skill (`component-spec-writer/PLAYBOOK.md`) directs Codex to read references first, choose canonical API, define anatomy, etc.
|
|
59
|
+
- Korean fintech context triggers reading `knowledge/i18n/korean-document-style.md` for honorific level guidance.
|
|
60
|
+
- Output follows the template in `skills/component-spec-writer/TEMPLATE.md`.
|
|
61
|
+
|
|
62
|
+
### Why this works in Codex
|
|
63
|
+
|
|
64
|
+
Codex's strength is reading whole files in context. design-ai's design — markdown-only, clear cross-references, self-contained playbooks — fits Codex's model perfectly. No special Codex-specific config.
|
|
65
|
+
|
|
66
|
+
## Walkthrough 2: Generate a design system from a brief
|
|
67
|
+
|
|
68
|
+
**Goal**: bootstrap a complete design system from a one-paragraph brief.
|
|
69
|
+
|
|
70
|
+
### Session
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
You ▸ Apply the design-system-builder skill. Brief: Korean fintech for
|
|
74
|
+
freelancers. Invoice, expense tracking, tax estimation. Calm,
|
|
75
|
+
trustworthy, mobile-first. Pretendard typography. Brand color:
|
|
76
|
+
teal-blue (#0E7490).
|
|
77
|
+
|
|
78
|
+
Codex ▸ I'll bootstrap the system. Reading the playbook now.
|
|
79
|
+
|
|
80
|
+
Reading: skills/design-system-builder/PLAYBOOK.md
|
|
81
|
+
Reading: knowledge/PRINCIPLES.md
|
|
82
|
+
Reading: knowledge/colors/color-theory.md
|
|
83
|
+
Reading: knowledge/colors/palettes-by-product-type.md
|
|
84
|
+
Reading: knowledge/typography/font-pairings.md
|
|
85
|
+
Reading: knowledge/i18n/korean-typography.md
|
|
86
|
+
|
|
87
|
+
Phase 1: Color palette
|
|
88
|
+
[generates ramps, semantic aliases, dark mode, contrast matrix]
|
|
89
|
+
|
|
90
|
+
Phase 2: Foundations
|
|
91
|
+
[typography scale, spacing, radius, shadow tokens]
|
|
92
|
+
|
|
93
|
+
Phase 3: Component baseline
|
|
94
|
+
[Button, Input, Card, Modal API specs cross-referenced]
|
|
95
|
+
|
|
96
|
+
Phase 4: Starter component set
|
|
97
|
+
[5 components specced from the canonical synthesis]
|
|
98
|
+
|
|
99
|
+
Phase 5: Handoff doc
|
|
100
|
+
[token JSON + Tailwind config + Figma variables export]
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Output structure
|
|
104
|
+
|
|
105
|
+
Codex outputs the design system inline OR (preferred) writes files into your project's `design/` directory. Specify in the prompt:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
You ▸ Apply design-system-builder. Brief: ... Write outputs to
|
|
109
|
+
./design/ in this repo, organized by phase (1-color, 2-foundations,
|
|
110
|
+
3-baseline, 4-starter, 5-handoff).
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
Codex will use file write operations to materialize the system.
|
|
114
|
+
|
|
115
|
+
## Walkthrough 3: Iterate on a critique
|
|
116
|
+
|
|
117
|
+
**Goal**: take a screenshot critique and produce a revised design spec.
|
|
118
|
+
|
|
119
|
+
### Session
|
|
120
|
+
|
|
121
|
+
```
|
|
122
|
+
You ▸ I have a screenshot of our pricing page that the design-critique
|
|
123
|
+
skill flagged. The top 3 critiques:
|
|
124
|
+
1. CTA contrast 3.1:1 fails WCAG AA
|
|
125
|
+
2. Tier comparison not scannable
|
|
126
|
+
3. KR currency format inconsistent (₩50,000 vs 50,000원)
|
|
127
|
+
|
|
128
|
+
Apply the iterate skill. Produce a revision spec.
|
|
129
|
+
|
|
130
|
+
Codex ▸ Reading: commands/iterate.md
|
|
131
|
+
Reading: knowledge/a11y/contrast.md (for WCAG AA bump)
|
|
132
|
+
Reading: knowledge/patterns/pricing-page-design.md
|
|
133
|
+
Reading: knowledge/i18n/korean-typography.md (for currency)
|
|
134
|
+
Reading: examples/component-pricing-cards.md
|
|
135
|
+
|
|
136
|
+
Revision spec:
|
|
137
|
+
|
|
138
|
+
## Critical fixes (CRITICAL severity)
|
|
139
|
+
|
|
140
|
+
1. CTA contrast → bump foreground to white on
|
|
141
|
+
oklch(64% 0.18 30) (currently oklch(70% 0.16 30)). Verified 4.6:1.
|
|
142
|
+
|
|
143
|
+
2. Tier comparison → restructure as table-style grid with
|
|
144
|
+
feature-row alignment. Three columns equal width, anchor middle
|
|
145
|
+
tier as "recommended" with brand-color border.
|
|
146
|
+
|
|
147
|
+
3. Currency format → unify to "₩50,000". Apply the
|
|
148
|
+
knowledge/patterns/money-and-amount.md rule consistently.
|
|
149
|
+
|
|
150
|
+
## Changelog (vs original)
|
|
151
|
+
[diff-style annotations]
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
## Walkthrough 4: Audit a Figma file
|
|
155
|
+
|
|
156
|
+
**Goal**: run a UX audit + a11y review on a Figma design.
|
|
157
|
+
|
|
158
|
+
### Session
|
|
159
|
+
|
|
160
|
+
```
|
|
161
|
+
You ▸ I exported screens from Figma to ./screens/. Audit them with
|
|
162
|
+
ux-audit and a11y-reviewer skills.
|
|
163
|
+
|
|
164
|
+
Codex ▸ Reading: skills/ux-audit/PLAYBOOK.md
|
|
165
|
+
Reading: agents/a11y-reviewer.md
|
|
166
|
+
Reading: knowledge/a11y/contrast.md
|
|
167
|
+
Reading: knowledge/a11y/keyboard-and-focus.md
|
|
168
|
+
|
|
169
|
+
[analyzes each screen]
|
|
170
|
+
[returns severity-aggregated findings: CRITICAL, HIGH, MEDIUM, LOW]
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
For real Figma integration (read live designs vs static exports): see [Figma MCP integration](../FIGMA-INTEGRATION.md). Codex CLI supports MCP servers; configure in `~/.codex/config.toml`.
|
|
174
|
+
|
|
175
|
+
## Common workflow patterns
|
|
176
|
+
|
|
177
|
+
### Pattern 1: Read-explore-produce
|
|
178
|
+
|
|
179
|
+
Most design tasks fit this loop:
|
|
180
|
+
|
|
181
|
+
```
|
|
182
|
+
1. User states intent.
|
|
183
|
+
2. Codex identifies relevant skill.
|
|
184
|
+
3. Codex reads the playbook + cited knowledge files.
|
|
185
|
+
4. Codex produces output following the template.
|
|
186
|
+
5. User iterates with follow-up prompts.
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
### Pattern 2: Cite-everything mode
|
|
190
|
+
|
|
191
|
+
For high-stakes deliverables, prompt:
|
|
192
|
+
|
|
193
|
+
```
|
|
194
|
+
You ▸ Apply the X skill. Cite every knowledge file you reference, in
|
|
195
|
+
footnotes. Mark any unsupported claims as "(judgment, not sourced)".
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
This forces Codex to be explicit about its sources.
|
|
199
|
+
|
|
200
|
+
### Pattern 3: Explicit skill chain
|
|
201
|
+
|
|
202
|
+
For complex tasks that span multiple skills:
|
|
203
|
+
|
|
204
|
+
```
|
|
205
|
+
You ▸ Apply skills in this order:
|
|
206
|
+
1. color-palette (brief: teal-blue, calm fintech)
|
|
207
|
+
2. component-spec-writer for: Button, Input, Card, Modal, Toast
|
|
208
|
+
3. handoff-spec to consolidate
|
|
209
|
+
|
|
210
|
+
Codex ▸ [executes all three sequentially]
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
## Codex-specific tips
|
|
214
|
+
|
|
215
|
+
### File paths in prompts
|
|
216
|
+
|
|
217
|
+
Codex resolves `~` and relative paths. Both work:
|
|
218
|
+
|
|
219
|
+
```
|
|
220
|
+
Read ~/dev/design-ai/skills/color-palette/PLAYBOOK.md
|
|
221
|
+
Read ./skills/color-palette/PLAYBOOK.md
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
### MCP integration
|
|
225
|
+
|
|
226
|
+
Codex supports MCP servers via `~/.codex/config.toml`:
|
|
227
|
+
|
|
228
|
+
```toml
|
|
229
|
+
[mcp_servers.figma]
|
|
230
|
+
command = "npx"
|
|
231
|
+
args = ["-y", "figma-mcp"]
|
|
232
|
+
env = { FIGMA_TOKEN = "..." }
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
After this, design-ai's Figma-aware skills (`figma-token-sync`, `design-pr-review`) work with live Figma data.
|
|
236
|
+
|
|
237
|
+
### No slash commands
|
|
238
|
+
|
|
239
|
+
Codex doesn't have a slash-command system. The slash commands in `commands/*.md` are still useful — Codex reads them as prompt recipes:
|
|
240
|
+
|
|
241
|
+
```
|
|
242
|
+
You ▸ Run the /design-from-brief command. Brief: [paragraph here].
|
|
243
|
+
|
|
244
|
+
Codex ▸ Reading: commands/design-from-brief.md
|
|
245
|
+
[executes the recipe]
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
### Custom user instructions
|
|
249
|
+
|
|
250
|
+
Add design-ai to Codex's per-user instructions for system-wide availability:
|
|
251
|
+
|
|
252
|
+
```bash
|
|
253
|
+
mkdir -p ~/.codex/AGENTS.md.d/
|
|
254
|
+
ln -s ~/dev/design-ai/AGENTS.md ~/.codex/AGENTS.md.d/design-ai.md
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
(Codex 0.x+ supports composable AGENTS.md fragments.)
|
|
258
|
+
|
|
259
|
+
## Troubleshooting
|
|
260
|
+
|
|
261
|
+
### Codex can't find a knowledge file
|
|
262
|
+
|
|
263
|
+
Verify paths from the project root:
|
|
264
|
+
```bash
|
|
265
|
+
ls knowledge/colors/color-theory.md
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
If running Codex from outside the project: `cd` into design-ai first OR pass `--cd ~/dev/design-ai`.
|
|
269
|
+
|
|
270
|
+
### Output ignores Korean conventions
|
|
271
|
+
|
|
272
|
+
Prompt explicitly:
|
|
273
|
+
|
|
274
|
+
```
|
|
275
|
+
You ▸ Audience is Korean B2C. Apply 해요체 voice. Use 명함 90×50mm
|
|
276
|
+
not international 85×55. Read knowledge/i18n/ before producing.
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
Or set in your environment / project AGENTS.md overlay.
|
|
280
|
+
|
|
281
|
+
### Output is vague / generic
|
|
282
|
+
|
|
283
|
+
The corpus knows specifics; ensure Codex actually reads them. Prompt:
|
|
284
|
+
|
|
285
|
+
```
|
|
286
|
+
You ▸ Before answering, read knowledge/components/INDEX.md and the three
|
|
287
|
+
reference implementations cited there. Cite which library's API
|
|
288
|
+
you're using.
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
## Next
|
|
292
|
+
|
|
293
|
+
- [`docs/CODEX-INTEGRATION.md`](../CODEX-INTEGRATION.md) — full setup reference
|
|
294
|
+
- [`docs/integrations/cursor-walkthrough.md`](cursor-walkthrough.md) — Cursor variant
|
|
295
|
+
- [`docs/integrations/aider-walkthrough.md`](aider-walkthrough.md) — Aider variant
|
|
296
|
+
- [`docs/integrations/sdk-walkthrough.md`](sdk-walkthrough.md) — Anthropic / OpenAI SDK
|
|
297
|
+
- [`docs/MCP-INTEGRATION.md`](../MCP-INTEGRATION.md) — Figma / Notion / GitHub / Slack / Linear MCPs
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
# Cursor 워크스루
|
|
2
|
+
|
|
3
|
+
[Cursor IDE](https://cursor.sh)에서 design-ai를 사용하는 구체적인 가이드. [`docs/CURSOR-INTEGRATION.md`](../CURSOR-INTEGRATION.md)는 설치를, 이 문서는 워크플로를 다뤄요.
|
|
4
|
+
|
|
5
|
+
## 사전 준비
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Cursor 설치 (cursor.sh)
|
|
9
|
+
# design-ai 설치
|
|
10
|
+
git clone https://github.com/sungjin9288/design-ai.git ~/dev/design-ai
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## 설치 (90초)
|
|
14
|
+
|
|
15
|
+
### 옵션 A: 사용 프로젝트의 `.cursorrules`
|
|
16
|
+
|
|
17
|
+
가장 흔한 패턴. design-ai 전문성을 원하는 프로젝트에서 `.cursorrules` 생성:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
cd ~/projects/my-app
|
|
21
|
+
cat > .cursorrules <<'EOF'
|
|
22
|
+
당신은 UI/UX, 디자인 시스템, 접근성(WCAG 2.1 AA), 한국 시장 디자인에
|
|
23
|
+
20년 이상의 경력을 가진 시니어 프로덕트 디자이너입니다.
|
|
24
|
+
|
|
25
|
+
디자인 작업에서 다음 프로토콜을 따르세요:
|
|
26
|
+
1. /Users/sungjin/dev/design-ai/AGENTS.md (범용 진입점) 읽기.
|
|
27
|
+
2. /Users/sungjin/dev/design-ai/knowledge/PRINCIPLES.md (30개 핵심 규칙) 읽기.
|
|
28
|
+
3. /Users/sungjin/dev/design-ai/skills/<skill-name>/PLAYBOOK.md에서 매칭 스킬 찾기.
|
|
29
|
+
4. 적용. 모든 주장에 대해 지식 파일 인용.
|
|
30
|
+
5. 한국어 콘텐츠는 Pretendard + 해요체 (B2C) 또는 합쇼체 (격식) 기본.
|
|
31
|
+
6. 출처 없는 주장은 "(판단, 출처 없음)" 표시.
|
|
32
|
+
|
|
33
|
+
사용 가능한 스킬:
|
|
34
|
+
- color-palette, component-spec-writer, ux-audit, design-critique
|
|
35
|
+
- design-system-builder, handoff-spec, design-system-qa, design-pr-review
|
|
36
|
+
- figma-token-sync, design-broadcast, document-author, slide-deck-author
|
|
37
|
+
- motion-designer, illustration-designer, print-designer, video-designer
|
|
38
|
+
- game-ui-designer, conversational-ui-designer, spatial-designer
|
|
39
|
+
|
|
40
|
+
스킬은 /Users/sungjin/dev/design-ai/skills/<name>/PLAYBOOK.md에 있어요.
|
|
41
|
+
EOF
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Cursor는 채팅 시작 시 `.cursorrules`를 자동 로드해요.
|
|
45
|
+
|
|
46
|
+
### 옵션 B: design-ai를 워크스페이스 폴더로 추가
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
File → Add Folder to Workspace → ~/dev/design-ai
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
이후 Cursor 채팅에서 `@`로 파일 참조:
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
@design-ai/skills/color-palette/PLAYBOOK.md teal-blue 핀테크 앱에 적용해 주세요.
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
`@` 자동완성이 전체 워크스페이스를 검색해요. design-ai의 구조화된 트리가 깔끔하게 보여요.
|
|
59
|
+
|
|
60
|
+
## 워크스루 1: 인라인 컴포넌트 스펙
|
|
61
|
+
|
|
62
|
+
**목표**: 앱 코드베이스에서 작업하면서 Cursor에 Banner 컴포넌트 스펙 요청 후 구현.
|
|
63
|
+
|
|
64
|
+
### 세션
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
You ▸ (src/components/Banner.tsx 열려 있음)
|
|
68
|
+
@design-ai/skills/component-spec-writer/PLAYBOOK.md
|
|
69
|
+
@design-ai/examples/component-banner.md
|
|
70
|
+
|
|
71
|
+
우리 시스템용 Banner 컴포넌트 스펙 만들어 주세요. 시스템 상태용
|
|
72
|
+
영구 인페이지 스트립. 변형: info / success / warning / error /
|
|
73
|
+
promo. 닫기 가능. 한국어 카피.
|
|
74
|
+
|
|
75
|
+
Cursor ▸ component-spec-writer 스킬을 적용하고 기존 Banner spec을 참조해서
|
|
76
|
+
당신 코드베이스에 맞춰 적용할게요.
|
|
77
|
+
|
|
78
|
+
[채팅에 인라인으로 스펙 생성]
|
|
79
|
+
[표 형식 API, 아나토미, 상태, 토큰 포함]
|
|
80
|
+
|
|
81
|
+
You ▸ 이 스펙을 React 컴포넌트로 이 파일에 구현해 주세요. 우리 토큰
|
|
82
|
+
시스템 (`var(--color-banner-bg-info)` 등) 사용. dismiss 버튼은
|
|
83
|
+
src/components/Alert.tsx의 패턴을 따라 주세요.
|
|
84
|
+
|
|
85
|
+
Cursor ▸ [Banner.tsx 구현 생성]
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
두 단계 워크플로 — **스펙 먼저, 구현 그 다음** — 이 핵심 Cursor 패턴이에요. 스펙은 지식 산출물; 구현은 코드.
|
|
89
|
+
|
|
90
|
+
## 워크스루 2: 기존 컴포넌트 감사
|
|
91
|
+
|
|
92
|
+
**목표**: Cursor가 현재 Button 컴포넌트를 design-ai 스펙과 비교 검토.
|
|
93
|
+
|
|
94
|
+
### 세션
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
You ▸ src/components/Button.tsx와 @design-ai/examples/component-button.md를
|
|
98
|
+
나란히 열어 주세요.
|
|
99
|
+
|
|
100
|
+
내 Button을 스펙에 대비해 감사해 주세요. 누락된 변형, 누락된
|
|
101
|
+
상태, 접근성 격차, 한국 컨텐츠 고려사항 표시.
|
|
102
|
+
|
|
103
|
+
Cursor ▸ Button.tsx와 component-button.md 비교 중.
|
|
104
|
+
|
|
105
|
+
발견사항:
|
|
106
|
+
|
|
107
|
+
[HIGH] `loading` 상태 누락. 스펙 "States" 섹션은 spinner +
|
|
108
|
+
비활성 이벤트가 있는 loading 변형 요구. 컴포넌트에 loading
|
|
109
|
+
prop 없음.
|
|
110
|
+
|
|
111
|
+
[HIGH] `asChild` 지원 누락. 스펙 "Composition patterns" → asChild가
|
|
112
|
+
Button을 Link 또는 다른 슬롯으로 렌더링하도록 함. 현재는 button
|
|
113
|
+
전용.
|
|
114
|
+
|
|
115
|
+
[MEDIUM] 터치 타겟. 스펙은 모바일 primary에 ≥ 44pt 요구; 현재
|
|
116
|
+
`size="sm"`은 32px 높이. 데스크톱 secondary에는 OK; 모바일
|
|
117
|
+
primary에는 실패.
|
|
118
|
+
|
|
119
|
+
[LOW] 한국어: IME 고려 없음. Button submit으로 가는 입력의 경우
|
|
120
|
+
IME composition이 Enter를 삼킬 수 있음. compositionend를
|
|
121
|
+
존중하는 Form의 submit 핸들러로 감싸기 권장.
|
|
122
|
+
|
|
123
|
+
[파일 diff와 함께 권고사항]
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
이는 컴포넌트별로 적용한 `design-system-qa` 스킬이에요. 기존 코드베이스 품질을 spec으로 끌어올리는 강력한 방법.
|
|
127
|
+
|
|
128
|
+
## 워크스루 3: Figma 스크린샷 반복
|
|
129
|
+
|
|
130
|
+
**목표**: Figma 스크린샷을 붙여넣고 구체적인 수정과 함께 비평 받기.
|
|
131
|
+
|
|
132
|
+
### 세션
|
|
133
|
+
|
|
134
|
+
```
|
|
135
|
+
You ▸ [screenshot.png를 채팅에 붙여넣기]
|
|
136
|
+
@design-ai/agents/design-critic.md
|
|
137
|
+
@design-ai/agents/a11y-reviewer.md
|
|
138
|
+
|
|
139
|
+
이 hero 섹션 비평. 한국 핀테크 audience.
|
|
140
|
+
|
|
141
|
+
Cursor ▸ design-critic + a11y-reviewer를 병렬 실행 중.
|
|
142
|
+
|
|
143
|
+
최우선 권고:
|
|
144
|
+
헤드라인이 메시지의 70%를 전달하지만 24px Inter Light 사용.
|
|
145
|
+
한국 타겟 사용자에겐 Light weight가 라틴에서 의미하는 따뜻함이
|
|
146
|
+
전달되지 않음. Pretendard 600 Semibold로 모바일 32px,
|
|
147
|
+
데스크톱 48px로 강화하세요.
|
|
148
|
+
|
|
149
|
+
[CRITICAL]
|
|
150
|
+
- CTA 대비 3.4:1 (oklch(70% 0.16 240) 위 흰색 텍스트)이
|
|
151
|
+
WCAG AA 실패. 배경을 oklch(58% 0.18 240)로 강화해서 4.5:1
|
|
152
|
+
만족.
|
|
153
|
+
|
|
154
|
+
[HIGH]
|
|
155
|
+
- 서브 헤드라인이 `당신의 ...` 사용 — 너무 격식-거리감.
|
|
156
|
+
`~해요`로 재작성: "여러분의 송금을 더 쉽게 만들어요".
|
|
157
|
+
- 30% 세일 배지가 CTA 근처에서 주의를 끌어요. 카드 우상단으로
|
|
158
|
+
이동하거나 제거.
|
|
159
|
+
|
|
160
|
+
[제안 재작성]
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## 워크스루 4: 브랜드 브리프에서 토큰 생성
|
|
164
|
+
|
|
165
|
+
**목표**: 브랜드 브리프에서 디자인 토큰 파일 부트스트랩, CSS와 Tailwind config로 export.
|
|
166
|
+
|
|
167
|
+
### 세션
|
|
168
|
+
|
|
169
|
+
```
|
|
170
|
+
You ▸ @design-ai/skills/color-palette/PLAYBOOK.md
|
|
171
|
+
|
|
172
|
+
프리랜서를 위한 한국 핀테크용 전체 팔레트 생성. 브랜드: 신뢰감 있고,
|
|
173
|
+
차분하고, 모던. Seed: oklch(56% 0.16 244). 출력:
|
|
174
|
+
src/tokens/colors.css (CSS vars) + tailwind.config.ts
|
|
175
|
+
(colors 확장). 다크 모드 포함.
|
|
176
|
+
|
|
177
|
+
Cursor ▸ [플레이북 읽기]
|
|
178
|
+
[당신 프로젝트에 두 파일 생성]
|
|
179
|
+
|
|
180
|
+
You ▸ 이제 spec에 따라 semantic alias (--color-primary-default 등)
|
|
181
|
+
추가. 그리고 colors.css 위에 주석 블록으로 대비 매트릭스 추가.
|
|
182
|
+
|
|
183
|
+
Cursor ▸ [파일 업데이트]
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## 워크스루 5: Cursor의 `Cmd+K`로 인플레이스 편집
|
|
187
|
+
|
|
188
|
+
빠른 반복 루프를 위해, Cursor의 `Cmd+K` (인라인 편집)이 design-ai 컨텍스트로 작동해요. 규칙을 글로벌로 설정하면.
|
|
189
|
+
|
|
190
|
+
```
|
|
191
|
+
[문제 있는 JSX 블록 선택]
|
|
192
|
+
[Cmd+K]
|
|
193
|
+
"우리 색상 토큰 사용해서 design-ai의 component-button.md에 있는
|
|
194
|
+
'destructive' 변형 일치시켜 주세요."
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
Cursor가 워크스페이스 컨텍스트를 통해 spec을 읽고 인플레이스 재작성.
|
|
198
|
+
|
|
199
|
+
## Cursor 전용 팁
|
|
200
|
+
|
|
201
|
+
### MCP 서버
|
|
202
|
+
|
|
203
|
+
Cursor 0.40+ MCP 지원. 디자인 인식 MCP 추가:
|
|
204
|
+
|
|
205
|
+
```json
|
|
206
|
+
// ~/.cursor/mcp.json
|
|
207
|
+
{
|
|
208
|
+
"mcpServers": {
|
|
209
|
+
"figma": {
|
|
210
|
+
"command": "npx",
|
|
211
|
+
"args": ["-y", "figma-mcp"],
|
|
212
|
+
"env": { "FIGMA_TOKEN": "..." }
|
|
213
|
+
},
|
|
214
|
+
"github": {
|
|
215
|
+
"command": "npx",
|
|
216
|
+
"args": ["-y", "@modelcontextprotocol/server-github"],
|
|
217
|
+
"env": { "GITHUB_TOKEN": "..." }
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
이후 design-ai의 Figma + GitHub 인식 스킬 (`figma-token-sync`, `design-pr-review`)이 라이브 데이터로 작동.
|
|
224
|
+
|
|
225
|
+
### Composer 모드
|
|
226
|
+
|
|
227
|
+
여러 파일 변경 시 (예: 5개 컴포넌트를 새 spec에 맞춰 리팩토링) Cursor Composer 사용:
|
|
228
|
+
|
|
229
|
+
```
|
|
230
|
+
[Composer 모드]
|
|
231
|
+
"@design-ai/examples/component-button.md의 destructive 변형을 src/의 모든
|
|
232
|
+
DangerButton 사용처에 적용. 컴포넌트, Storybook, 모든 사용처 업데이트.
|
|
233
|
+
우리 토큰 시스템 일치."
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
Composer가 spec을 한 번 읽고 여러 파일에 적용.
|
|
237
|
+
|
|
238
|
+
### 프로젝트별 AGENTS.md fork
|
|
239
|
+
|
|
240
|
+
큰 프로젝트의 경우 design-ai AGENTS.md를 프로젝트로 fork:
|
|
241
|
+
|
|
242
|
+
```bash
|
|
243
|
+
cp ~/dev/design-ai/AGENTS.md ./AGENTS.md
|
|
244
|
+
# 프로젝트별 오버라이드 + design-ai 경로 추가하도록 편집.
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
Cursor가 프로젝트 `AGENTS.md`를 읽고 `.cursorrules`도 읽어요.
|
|
248
|
+
|
|
249
|
+
## 문제 해결
|
|
250
|
+
|
|
251
|
+
### Cursor가 `.cursorrules`를 인식 안 함
|
|
252
|
+
|
|
253
|
+
Cursor 재시작. 또는 `Cmd+Shift+P → Developer: Reload Window`.
|
|
254
|
+
|
|
255
|
+
### `@`가 design-ai 파일 자동완성 안 됨
|
|
256
|
+
|
|
257
|
+
design-ai 폴더를 워크스페이스에 추가 (`.cursorrules`만 아니라). Cursor의 `@`는 워크스페이스 폴더만 인덱싱해요.
|
|
258
|
+
|
|
259
|
+
### 한국 컨벤션이 세션 전체에서 일관되지 않음
|
|
260
|
+
|
|
261
|
+
`.cursorrules`에 명시적 리마인더 추가:
|
|
262
|
+
|
|
263
|
+
```
|
|
264
|
+
한국어 콘텐츠는 항상:
|
|
265
|
+
- Pretendard 타이포그래피
|
|
266
|
+
- 해요체 (B2C) 또는 합쇼체 (격식) — 한 컴포넌트에서 섞지 말 것
|
|
267
|
+
- 명함 90×50mm (국제 85×55 아님)
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
### Cursor가 GPT-4 사용 (Claude 아님)
|
|
271
|
+
|
|
272
|
+
design-ai는 모델에 종속되지 않아요. 둘 다 작동. 긴 합성 작업에는 Claude Sonnet 4.6+이 약간 강하고; 코드 생성에는 GPT-4o + Claude 둘 다 작동. Cursor 모델 선택 (Cmd+/ → Model)으로 전환.
|
|
273
|
+
|
|
274
|
+
## 다음
|
|
275
|
+
|
|
276
|
+
- [`docs/CURSOR-INTEGRATION.md`](../CURSOR-INTEGRATION.md) — 전체 설치 레퍼런스
|
|
277
|
+
- [`docs/integrations/codex-walkthrough.ko.md`](codex-walkthrough.ko.md) — Codex CLI 변형
|
|
278
|
+
- [`docs/integrations/aider-walkthrough.ko.md`](aider-walkthrough.ko.md) — Aider 변형
|
|
279
|
+
- [`docs/integrations/sdk-walkthrough.ko.md`](sdk-walkthrough.ko.md) — Anthropic / OpenAI SDK
|
|
280
|
+
- [`docs/integrations/vscode-walkthrough.ko.md`](vscode-walkthrough.ko.md) — VS Code 확장
|
|
281
|
+
- [`docs/MCP-INTEGRATION.md`](../MCP-INTEGRATION.md) — MCP 서버
|