@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
package/README.md
ADDED
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
# Design AI
|
|
2
|
+
|
|
3
|
+
[](https://github.com/sungjin9288/design-ai/actions/workflows/audit.yml)
|
|
4
|
+
[](https://sungjin9288.github.io/design-ai/)
|
|
5
|
+
[](knowledge/PRINCIPLES.md)
|
|
6
|
+
[](examples/README.md)
|
|
7
|
+
[](skills/README.md)
|
|
8
|
+
|
|
9
|
+
> 🇺🇸 English / [🇰🇷 한국어](https://github.com/sungjin9288/design-ai/blob/main/README.ko.md)
|
|
10
|
+
|
|
11
|
+
A model-agnostic design knowledge base + skill system. Drop it in front of any AI coding agent (Claude Code, Codex CLI, Cursor, Aider) and it becomes a senior product designer with 20+ years of experience — opinionated, accessible-by-default, Korean-market-fluent.
|
|
12
|
+
|
|
13
|
+
> **Not a model. Not a fine-tune.** A structured corpus of design expertise + agent-ready instructions that turn a general-purpose LLM into an expert.
|
|
14
|
+
|
|
15
|
+
> **Distribution status, checked 2026-06-23:** local `npm run release:check` passes and GitHub Pages docs are live. Public npm and VS Code Marketplace distribution are not currently confirmed, so use the Git clone/local install path until package publishing is completed. See [`docs/external-status.md`](docs/external-status.md).
|
|
16
|
+
|
|
17
|
+
## Coverage at a glance
|
|
18
|
+
|
|
19
|
+
| Domain | Knowledge | Worked examples | Skill |
|
|
20
|
+
|---|---|---|---|
|
|
21
|
+
| Design tokens (W3C DTCG, OKLCH) | ✓ | ✓ | `color-palette` |
|
|
22
|
+
| Components (Ant + MUI + shadcn synthesis) | ✓ | 47 specs | `component-spec-writer` |
|
|
23
|
+
| UX patterns (auth, pricing, hero, forms, etc.) | ✓ | ✓ | `ux-audit`, `design-critique` |
|
|
24
|
+
| Website improvement control tower | ✓ | ✓ | `website-improvement` |
|
|
25
|
+
| Korean i18n (Hangul, payments, app store, fintech) | ✓ | ✓ | (cross-cutting) |
|
|
26
|
+
| Documentation (Diátaxis, slide deck, report, email) | ✓ | ✓ | `document-author`, `slide-deck-author` |
|
|
27
|
+
| **Motion** (CSS / Framer / GSAP / Lottie / Rive) | ✓ | 4 specs | `motion-designer` |
|
|
28
|
+
| **Illustration** (spot / hero / mascot / SVG) | ✓ | 2 specs | `illustration-designer` |
|
|
29
|
+
| **Print** (CMYK, bleed, KFDA, 분리배출) | ✓ | 2 specs | `print-designer` |
|
|
30
|
+
| **Video** (codecs, captions, KR ad disclosure) | ✓ | 2 specs | `video-designer` |
|
|
31
|
+
| **Game UI** (HUD / menu / 확률 표시 / PC bang) | ✓ | 2 specs | `game-ui-designer` |
|
|
32
|
+
| **Conversational** (voice, chatbot, AI chat / 해요체) | ✓ | 2 specs | `conversational-ui-designer` |
|
|
33
|
+
| **Spatial** (VR / AR / Vision Pro / comfort) | ✓ | 2 specs | `spatial-designer` |
|
|
34
|
+
|
|
35
|
+
## Install (Claude Code)
|
|
36
|
+
|
|
37
|
+
### Option A: Git clone / local install (currently recommended)
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
git clone https://github.com/sungjin9288/design-ai.git
|
|
41
|
+
cd design-ai
|
|
42
|
+
./install.sh
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Option B: NPM (after public publish)
|
|
46
|
+
|
|
47
|
+
Use this path only after `@design-ai/cli` is published and `npm run registry:smoke` passes.
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
npx @design-ai/cli install
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Or globally:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
npm install -g @design-ai/cli
|
|
57
|
+
design-ai install
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### Option C: Homebrew (after release tap verification)
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
brew tap sungjin9288/design-ai https://github.com/sungjin9288/design-ai.git
|
|
64
|
+
brew install design-ai
|
|
65
|
+
design-ai install
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Any available path installs all 20 skills, 17 commands, and 4 agents under `~/.claude/` with the `design-` prefix. Restart Claude Code; try:
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
/design-component-spec Banner
|
|
72
|
+
/design-motion-design landing hero loop
|
|
73
|
+
/design-spatial Vision Pro productivity app
|
|
74
|
+
/design-website-improvement Korean SaaS homepage conversion and SEO control tower
|
|
75
|
+
/design-from-brief Korean fintech for freelancers
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
CLI commands: `design-ai install [--json]`, `update [--dry-run] [--json]`, `uninstall [--json]`, `status [--json]`, `list [skills|commands|agents] [--json]`, `route <brief|--from-file file|--stdin|--list|--eval-template|--eval> [--limit N] [--explain] [--strict] [--json]`, `routes [--json]`, `prompt <brief|--from-file file|--stdin|--eval-template|--eval> [--out file] [--route id] [--with-learning] [--learning-category kind] [--learning-limit N] [--strict] [--json]`, `pack <brief|--from-file file|--stdin|--eval-template|--eval> [--out file] [--route id] [--with-learning] [--learning-category kind] [--learning-limit N] [--max-bytes N] [--strict] [--json]`, `learn [--init|--remember text|--feedback text|--list|--export|--query text|--explain|--backup|--redact|--verify|--diff|--restore|--restore-backups [--prune]|--import|--audit [--fix]|--curate|--stats|--usage|--signals [--strict]|--agent-backlog [--strict]|--propose-skills [--min-evidence N] [--review-file path] [--review-check|--apply-plan] [--strict]|--eval-template|--eval [--strict]|--forget id|--clear] [--json|--report|--patch|--review-template] [--out file]`, `check <artifact.md|--stdin|--examples> [--route id|--all-routes] [--issues-only] [--strict] [--learn [--yes] [--learning-file path]] [--json]`, `workspace [--root path] [--learning-file path] [--learning-usage path] [--learning-eval path] [--strict] [--json]`, `site <workspace.json|--stdin> [--strict] [--json|--mcp-check [--probes]|--mcp-plan [--probes] [--json]|--next-actions [--json]|--graph|--tasks|--bundle|--report|--prompts|--prompt id [--task id]] [--out file] | site <bundle-dir> --bundle-check [--json] | site <bundle-dir> --bundle-compare other-bundle-dir [--json] | site <bundle-dir> --bundle-handoff [--task id] [--json] | site <bundle-dir> --bundle-repair [--yes] [--json] [--out file] | site --init --name name --live-url url [--next-actions] [--out file] | site --init --name name --live-url url --bundle --out dir | site --from-intake file.md|--stdin [--json|--next-actions [--json]|--tasks|--bundle [--tasks] --out dir] [--out file] | site --intake-template [--language en|ko] [--json] [--out file] | site --sample [--out file] | site --prompt-list [--json]`, `examples [query|--route id] [--limit N] [--json]`, `search <query> [--dir kind] [--limit N] [--json]`, `show <file[:line]> [--lines N:M] [--context N] [--json]`, `audit [--strict] [--quiet] [--json]`, `doctor [--strict] [--json] [--fix]`, `mcp`, `version [--json]`, `help [command|--json]`.
|
|
79
|
+
|
|
80
|
+
See [`docs/DISTRIBUTION.md`](docs/DISTRIBUTION.md) for the full distribution guide.
|
|
81
|
+
|
|
82
|
+
## Install (other agents)
|
|
83
|
+
|
|
84
|
+
| Agent | Setup |
|
|
85
|
+
|---|---|
|
|
86
|
+
| **Codex CLI** | Open this dir as project root. `AGENTS.md` is read automatically. [Walkthrough](docs/integrations/codex-walkthrough.md). |
|
|
87
|
+
| **Claude Code / Codex via MCP** | Add `design-ai mcp` as a local stdio MCP server. [MCP server guide](docs/integrations/design-ai-mcp-server.md). |
|
|
88
|
+
| **Cursor** | Open this dir; symlink or copy `AGENTS.md` to `.cursorrules`. [Walkthrough](docs/integrations/cursor-walkthrough.md). |
|
|
89
|
+
| **Aider** | Pass `AGENTS.md` as system prompt. [Walkthrough](docs/integrations/aider-walkthrough.md). |
|
|
90
|
+
| **Anthropic / OpenAI SDK** | Embed relevant skill `PLAYBOOK.md` files in your prompt. [Walkthrough](docs/integrations/sdk-walkthrough.md). |
|
|
91
|
+
| **VS Code** | Use the local extension workspace for sidebar tree + quick-pick commands until Marketplace publish is complete. [Walkthrough](docs/integrations/vscode-walkthrough.md). |
|
|
92
|
+
| **Plain prompt** | Paste any `skills/*/PLAYBOOK.md` body — each is self-contained. |
|
|
93
|
+
|
|
94
|
+
See [`docs/USING.md`](docs/USING.md) for per-agent setup details, or the linked walkthroughs for concrete example sessions.
|
|
95
|
+
|
|
96
|
+
## What you get
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
design-ai/
|
|
100
|
+
├── AGENTS.md # Universal entry point (any AI coding agent)
|
|
101
|
+
├── CLAUDE.md # Claude Code overlay
|
|
102
|
+
├── README.md # You are here
|
|
103
|
+
├── CHANGELOG.md # Release notes
|
|
104
|
+
├── install.sh # Symlink installer for Claude Code
|
|
105
|
+
│
|
|
106
|
+
├── .claude-plugin/ # Plugin manifest (plugin.json)
|
|
107
|
+
│
|
|
108
|
+
├── refs/ # Sparse-cloned upstream sources (gitignored)
|
|
109
|
+
│
|
|
110
|
+
├── knowledge/ # 92 hand-written + extracted knowledge files
|
|
111
|
+
│ ├── design-tokens/ # Token systems (W3C DTCG, OKLCH, HCT)
|
|
112
|
+
│ ├── components/ # Component synthesis (Ant + MUI + shadcn)
|
|
113
|
+
│ ├── patterns/ # Auth, pricing, landing hero, brand, email, ...
|
|
114
|
+
│ ├── colors/ # Palette systems, accessibility
|
|
115
|
+
│ ├── typography/ # Type scales, font pairings (Pretendard + ...)
|
|
116
|
+
│ ├── layout/ # Grid, spacing, responsive
|
|
117
|
+
│ ├── icons/ # Icon system metadata
|
|
118
|
+
│ ├── a11y/ # WCAG, keyboard, focus, contrast
|
|
119
|
+
│ ├── motion/ # Principles + 5 deep dives
|
|
120
|
+
│ ├── illustration/ # System / spot / hero / mascot / SVG
|
|
121
|
+
│ ├── print/ # Fundamentals / stationery / brochures / ...
|
|
122
|
+
│ ├── video/ # Fundamentals / marketing / social / ...
|
|
123
|
+
│ ├── game-ui/ # Fundamentals / HUD / menus / accessibility
|
|
124
|
+
│ ├── conversational/ # Voice / chatbot / AI chat / Korean
|
|
125
|
+
│ ├── spatial/ # VR / AR / panels / comfort
|
|
126
|
+
│ └── i18n/ # Korean typography, payments, app store, ...
|
|
127
|
+
│
|
|
128
|
+
├── examples/ # 223 worked outputs (what "good" looks like)
|
|
129
|
+
│
|
|
130
|
+
├── skills/ # 20 reusable playbooks (task-focused)
|
|
131
|
+
│ ├── design-system-builder/ illustration-designer/
|
|
132
|
+
│ ├── component-spec-writer/ print-designer/
|
|
133
|
+
│ ├── color-palette/ video-designer/
|
|
134
|
+
│ ├── ux-audit/ game-ui-designer/
|
|
135
|
+
│ ├── design-critique/ conversational-ui-designer/
|
|
136
|
+
│ ├── handoff-spec/ spatial-designer/
|
|
137
|
+
│ ├── design-system-qa/ document-author/
|
|
138
|
+
│ ├── design-pr-review/ website-improvement/
|
|
139
|
+
│ ├── figma-token-sync/ slide-deck-author/
|
|
140
|
+
│ ├── motion-designer/
|
|
141
|
+
│ └── design-broadcast/
|
|
142
|
+
│
|
|
143
|
+
├── agents/ # 4 sub-agents (parallel reviews)
|
|
144
|
+
│ ├── design-critic.md a11y-reviewer.md
|
|
145
|
+
│ ├── component-architect.md token-extractor.md
|
|
146
|
+
│
|
|
147
|
+
├── commands/ # 17 slash commands
|
|
148
|
+
│ ├── design-from-brief.md motion-design.md
|
|
149
|
+
│ ├── component-spec.md illustration.md
|
|
150
|
+
│ ├── design-review.md website-improvement.md
|
|
151
|
+
│ ├── print.md
|
|
152
|
+
│ ├── palette-from-brand.md video.md
|
|
153
|
+
│ ├── document-from-brief.md game-ui.md
|
|
154
|
+
│ ├── slide-deck.md conversational.md
|
|
155
|
+
│ ├── iterate.md spatial.md
|
|
156
|
+
│ ├── extract-tokens.md
|
|
157
|
+
│ └── stability-review.md
|
|
158
|
+
│
|
|
159
|
+
├── tools/ # Maintenance pipeline
|
|
160
|
+
│ ├── extractors/ # 11 source extractors + component drift tooling
|
|
161
|
+
│ ├── audit/ # 8 active audits + package/release smoke helpers
|
|
162
|
+
│ └── preview/ # HTML token swatches + contrast matrix
|
|
163
|
+
│
|
|
164
|
+
└── docs/ # Architecture + integration guides
|
|
165
|
+
├── QUICKSTART.md ROADMAP.md
|
|
166
|
+
├── ARCHITECTURE.md USING.md
|
|
167
|
+
├── CONTRIBUTING.md PLUGIN-PACKAGING.md
|
|
168
|
+
├── CODEX-INTEGRATION.md FIGMA-INTEGRATION.md
|
|
169
|
+
├── CURSOR-INTEGRATION.md MCP-INTEGRATION.md
|
|
170
|
+
├── AIDER-INTEGRATION.md TOKEN-SYNC.md
|
|
171
|
+
└── DOGFOOD-FINDINGS.md
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
## First-time tour (5 minutes)
|
|
175
|
+
|
|
176
|
+
See [`docs/QUICKSTART.md`](docs/QUICKSTART.md). The shortest path:
|
|
177
|
+
|
|
178
|
+
1. Install (`./install.sh`).
|
|
179
|
+
2. In Claude Code, try `/design-component-spec Banner`. You get a developer-ready spec for a Banner component (anatomy, API, variants, states, tokens, ARIA, keyboard, edge cases).
|
|
180
|
+
3. Run `/design-design-review` against a Figma link or screenshot. You get a parallel UX + a11y + design critique.
|
|
181
|
+
|
|
182
|
+
## Korean market focus
|
|
183
|
+
|
|
184
|
+
design-ai is built for the Korean market with parity for international:
|
|
185
|
+
|
|
186
|
+
- **Hangul typography** — Pretendard / NanumSquare / 본명조 defaults; size + leading rules differ from Latin.
|
|
187
|
+
- **Korean payments** — Toss / KakaoPay / NaverPay / Apple Pay / Samsung Pay flows; PASS / NICE / KCB 본인인증.
|
|
188
|
+
- **Voice** — 합쇼체 (formal) vs 해요체 (friendly) selection per brand.
|
|
189
|
+
- **Print** — 명함 90×50mm, KFDA / KATS regulatory, 분리배출 표시 recycling marks.
|
|
190
|
+
- **Video** — 자막 conventions, 표시광고법 ad disclosure, KFDA / KFTC compliance.
|
|
191
|
+
- **Game** — PC bang culture, 확률 표시 mandatory, GRAC ratings, gacha pity / 천장.
|
|
192
|
+
- **Stock charts** — KR red=up / blue=down (opposite of West) — encoded in design tokens.
|
|
193
|
+
|
|
194
|
+
International defaults remain available; Korean conventions are opt-in via skill / command parameters.
|
|
195
|
+
|
|
196
|
+
## Source material
|
|
197
|
+
|
|
198
|
+
The knowledge is synthesized from battle-tested sources, not invented:
|
|
199
|
+
|
|
200
|
+
| Source | Why |
|
|
201
|
+
|---|---|
|
|
202
|
+
| [ant-design](https://github.com/ant-design/ant-design) | Mature enterprise component API, dense token system |
|
|
203
|
+
| [mui/material-ui](https://github.com/mui/material-ui) | Material Design React reference |
|
|
204
|
+
| [shadcn-ui](https://github.com/shadcn-ui/ui) | Modern Radix-based copy-paste model |
|
|
205
|
+
| [material-design-icons](https://github.com/google/material-design-icons) | Canonical icon set |
|
|
206
|
+
| [nerd-fonts](https://github.com/ryanoasis/nerd-fonts) | Developer typography glyph metadata |
|
|
207
|
+
| [material-design-lite](https://github.com/google/material-design-lite) | Historical CSS-first Material reference |
|
|
208
|
+
| [awesome-design-md](https://github.com/VoltAgent/awesome-design-md) | Curated design markdown guides |
|
|
209
|
+
| [ui-ux-pro-max](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) | UI/UX patterns + palettes + font pairings |
|
|
210
|
+
| [open-design](https://github.com/nexu-io/open-design) | Open source design system reference |
|
|
211
|
+
|
|
212
|
+
Refresh refs/ on demand: `./tools/extractors/run-all.sh`.
|
|
213
|
+
|
|
214
|
+
## Status
|
|
215
|
+
|
|
216
|
+
See [`docs/ROADMAP.md`](docs/ROADMAP.md) for the full phase log and [`docs/PRODUCT-READINESS.md`](docs/PRODUCT-READINESS.md) for the current completion boundary. Currently at **v4.55.0** (public registry Website Console smoke + public registry workspace restore-backups readiness + workspace learning restore-backups readiness + public registry learning restore/prune smoke + learning restore rollback backup pruning + learning restore rollback backup inventory + learning restore rollback backup + learning profile restore + learning profile diff + workspace curation report next actions + learning curation Markdown reports + workspace learning curation next actions + learning usage curation review + workspace learning usage readiness + workspace learning eval freshness guard + workspace sibling learning eval checkpoint auto-detection + shell-safe workspace learning eval commands + workspace learning eval-template hints + public registry learning eval template smoke + learning eval template generation + public registry workspace learning eval smoke + workspace learning eval readiness + local learning eval strict gate + local learning eval checkpoints + local learning usage report + usage sidecar + archive-first curation + website improvement target-repo handoff prompt + handoff bundle compare + fingerprint verification + bundle export + MCP action plan JSON export + MCP action plan export + readiness check + prompt template listing + task-selected prompt export + control tower + 90% component coverage).
|
|
217
|
+
|
|
218
|
+
Core design consulting workflows are locally release-ready. The website improvement control tower is available as a zero-dependency static Web App at [`docs/website-console/index.html`](docs/website-console/index.html), plus a `website-improvement` route/skill/command for Site Profiles, audit checklists, MCP readiness, refactor prompts, browser-local handoff evidence tracking, CLI/bundle evidence export with verified bundle evidence metadata, generated bundle contract verification, bundle repair preview/apply with repair report `--out file` output-file persistence, and packed-tarball evidence preservation smoke coverage, and handoff reports. Local learning preferences are available through `design-ai learn`, starter profile bootstrap via preview-first `learn --init`, explicit `learn --feedback` keep/improve/avoid guidance, explicit `check --learn --yes` capture for local QA warning/failure results, read-only `learn --signals` registry reports that join learning audit, usage sidecar, eval signal files, check capture entries, deterministic agent development backlog actions, and workspace readiness without mutating `learning.json`, focused read-only `learn --agent-backlog` reports that expose only the local AI/agent next-action queue with JSON/Markdown output and strict gating, `learn --signals --report --out learning-signals.md` Markdown handoff artifacts, `learn --signals --strict` gating for warning/failing signal registry or backlog status, preview-only `learn --propose-skills` reports that convert repeated check-capture signals into candidate skill instruction deltas without editing skill files, adjustable `learn --propose-skills --min-evidence N` thresholds for stricter or faster local proposal review, read-only `learn --propose-skills --review-file skill-proposals.review.json` decision joins for applied/rejected proposal state, read-only `learn --propose-skills --review-file skill-proposals.review.json --review-check` review-file readiness checks for current proposals, read-only `learn --propose-skills --review-file skill-proposals.review.json --apply-plan` accepted proposal apply plans for manual skill edits, `--review-template --out skill-proposals.review.json` JSON decision scaffolds, `--report --out skill-proposals.md` Markdown review artifacts, preview-only `--patch --out skill-proposals.patch` unified diff handoffs for manual review, `learn --propose-skills --strict` gating when proposal review or upstream signal readiness is pending, read-only `design-ai workspace` dogfood readiness snapshots for git, canonical repository remote/metadata alignment, learning, optional or sibling `--learning-usage` sidecar summaries with stale selected-id/profile-mismatch readiness warnings, optional `--learning-eval` checkpoint summaries with freshness metadata, automatic sibling `learning-eval.json` checkpoint detection, checkpoint freshness warnings when the active learning profile changed after checkpoint generation or no longer matches checkpoint metadata, shell-safe learning usage/eval next-action commands for local paths, usage-aware `learn --curate --usage-file` next actions when learning profile audit or usage sidecar drift needs review, companion `learn --curate --report --out learning-curation-report.md` workspace report next actions before archive cleanup, eval-template bootstrap next-action hints when a clean learning profile has entries but no checkpoint, and release-script state with `--strict` readiness gating, `design-ai site` sample workspace generation, prompt template listing, deterministic MCP readiness checks through `--mcp-check`, opt-in read-only MCP probe checks through `--mcp-check --probes`, Markdown or JSON MCP action plan export through `--mcp-plan`, `--mcp-plan --probes`, and `--mcp-plan --probes --json`, portable workflow graph export through `--graph --json`, complete handoff bundle export through `--bundle --out`, handoff bundle checksum/fingerprint and generated contract verification through `--bundle-check --strict --json`, handoff bundle comparison through `--bundle-compare --strict --json`, target-repo handoff prompt generation from a verified bundle through `--bundle-handoff --strict --json`, local handoff bundle repair through `--bundle-repair --yes --json`, refactor task generation, single prompt template export with task selection, and validation/report/prompt generation from Website Console JSON exports, full portable `learn --backup --json` profile export with safe `--out` file output and `--force` overwrite control, redacted portable `learn --redact --json` profile export for sharing from the local profile or portable JSON via `--from-file` / `--stdin`, non-mutating `learn --verify` import validation, read-only `learn --diff` profile comparison against portable JSON, preview-first full-profile `learn --restore` replacement from portable backups with automatic rollback backup and optional `--backup-file` path, read-only `learn --restore-backups` inventory for sibling rollback backups, preview-first `learn --restore-backups --prune --keep N` cleanup for older sibling rollback backups, portable `learn --import` dry-run/confirmed profile merge, query-filtered `learn --list --explain` / `learn --export` inspection without recency fallback, read-only `learn --audit` cleanup suggestions / `learn --stats`, read-only `learn --usage` reports for local prompt/pack usage sidecar activity, runnable `learn --eval-template` checkpoint generation from the active profile, read-only `learn --eval` checkpoint reports for deterministic local learning selection QA with `--strict` failure gating and sanitized checkpoint metadata, safe `learn --audit --fix --dry-run` previews plus confirmed `--fix --yes` cleanup, archive-first `learn --curate` preview/apply flow for duplicate and sensitive learning entries plus `learn --curate --report --out` Markdown audit trails and advisory usage review hints for profile mismatch, stale selected ids, and unused active entries, and opt-in `prompt`/`pack --with-learning` with brief-relevance ranking, category/limit scoping, selection scoring metadata, learned-context audit summaries, and local `learning.usage.json` sidecar events that store selected entry ids plus a short brief hash instead of raw brief text; AI model training or fine-tuning remains outside the shipped scope.
|
|
219
|
+
|
|
220
|
+
The corpus has been audited under CI checks since v1.7. It currently runs 8 audits:
|
|
221
|
+
- Frontmatter validity
|
|
222
|
+
- Internal link resolution
|
|
223
|
+
- Korean copy quality
|
|
224
|
+
- Raw hex color hygiene in examples
|
|
225
|
+
- Integration walkthrough completeness
|
|
226
|
+
- Stale-content freshness
|
|
227
|
+
- Component coverage report freshness
|
|
228
|
+
- Top worked example QA for every routed workflow
|
|
229
|
+
|
|
230
|
+
All 8 pass on every commit to `main`.
|
|
231
|
+
|
|
232
|
+
## Contributing
|
|
233
|
+
|
|
234
|
+
See [`docs/CONTRIBUTING.md`](docs/CONTRIBUTING.md). The bar:
|
|
235
|
+
- Run `npm run release:check` as the core gate before release PRs or tags. It covers `npm test` CLI unit tests, `npm run audit:strict` all 8 audits, `git diff --check` whitespace checks, `npm run package:check` package contents checks, `npm run release:metadata` release metadata checks with release metadata JSON `product_readiness_checked: true` Product Readiness guard coverage, `npm run release:self-test` release assertion self-tests (including audit runner exit-code and coverage timestamp preservation fixtures), and `npm run package:smoke` packed-tarball smoke for installed-bin plus one-shot `npm exec --package <tarball>` paths including `design-ai workspace --strict --json` workspace strict failure/success readiness checks plus workspace `--learning-usage` sidecar summaries and workspace `--learning-eval` checkpoint summaries with freshness metadata plus `design-ai workspace` workspace learning restore-backups readiness with restore rollback backup inventory, `design-ai site --stdin --json` Website Console export validation, `design-ai site --stdin --next-actions --json --out file --force` Website Console next-action operator checklist output-file persistence, `design-ai site --stdin --next-actions --out file --force` Website Console next-action human checklist output-file persistence, `design-ai site --sample` Website Console sample workspace coverage, `design-ai site --intake-template` Website Console intake template coverage for JSON stdout, Markdown stdout, Markdown `--out`, JSON `--out`, and `--language ko` Korean JSON/Markdown plus Korean Markdown `--out` in installed-bin and one-shot paths, `design-ai site --from-intake` Website Console from-intake filled Markdown intake import coverage for workspace JSON stdout, stdin workspace JSON stdout, stdin next-actions JSON stdout, stdin next-actions JSON `--out` file output-file persistence, stdin next-actions human `--out` file output-file persistence, stdin workspace JSON `--out` file output-file persistence, workspace JSON `--out` file output-file persistence, from-intake task generation, stdin from-intake task JSON `--out` output-file persistence, from-intake task handoff bundle generation, stdin from-intake task handoff bundle generation, stdin handoff bundle generation, and from-intake handoff bundle generation in installed-bin and one-shot paths, `design-ai site --init` Website Console project init workspace coverage in installed-bin and one-shot paths, `design-ai site --init --bundle --out <dir>` Website Console init handoff bundle coverage in package bin path and one-shot paths, `design-ai site --prompt-list --json` Website Console prompt template listing, `design-ai site --stdin --mcp-check --json` Website Console MCP readiness check, `design-ai site --stdin --mcp-check --probes --json` Website Console MCP readiness probe JSON with `--out` file-write confirmation plus shared MCP probe output-file smoke assertions plus embedded MCP check probe next-step commands plus executable embedded MCP check probe command smoke coverage plus human MCP check probe command guidance and output-file smoke coverage plus embedded MCP check probe human report output command, `design-ai site --stdin --mcp-plan` Website Console MCP action plan, `design-ai site --stdin --mcp-plan --probes` Website Console MCP probe action plan, `design-ai site --stdin --mcp-plan --probes --json` Website Console MCP probe action plan JSON with `--out` file-write confirmation plus embedded MCP action plan probe output-file commands plus MCP action plan human report output command parity plus MCP action plan emitted human report command smoke coverage plus MCP action plan emitted check JSON command smoke coverage plus MCP action plan emitted self-archive command smoke coverage plus shared MCP action plan command mapping self-test coverage, `design-ai site --stdin --graph --json` Website Console workflow graph export, `design-ai site --stdin --bundle --out <dir>` Website Console handoff bundle, `design-ai site <bundle-dir> --bundle-check --strict --json` Website Console handoff bundle check with SHA-256 checksum verification, bundle digest/fingerprint verification, and generated bundle contract verification, `design-ai site <bundle-dir> --bundle-compare <other-bundle-dir> --strict --json` Website Console handoff bundle compare with bundle digest comparison plus packed-tarball and public-registry smoke for warning-state Website Console bundle-compare strict failures where identical warning bundles keep `sameBundle: true` while exiting non-zero under `--strict`, `design-ai site <bundle-dir> --bundle-handoff --strict --json` Website Console target-repo handoff prompt from a verified bundle digest plus `--bundle-handoff --task task-content-quality --strict --json` task-selected bundle handoff, `design-ai site <bundle-dir> --bundle-repair --yes --json` Website Console bundle repair preview/apply drift recovery with repair report `--out file` output-file persistence, shared repair guidance smoke helpers, and shared repair report assertion helpers, `design-ai site --stdin --tasks` Website Console refactor task generation, `design-ai site --stdin --prompt codex-implementation --task task-homepage-cta` Website Console task-selected single prompt generation, human `design-ai version` and machine-readable version metadata from JSON `design-ai version --json`, `design-ai help` top-level help, the `design-ai help --json` topic catalog with probe-capable Website Console site help usage, command alias help and functional alias output, command-specific help topic output, shared Website Console site help topic example smoke assertions including the `design-ai site website-workspace.json --next-actions --out website-next-actions.md` next-actions Markdown help example plus from-intake stdin help examples (`cat company-website-intake.ko.md | design-ai site --from-intake --stdin --out website-workspace.json --force`, `cat company-website-intake.ko.md | design-ai site --from-intake --stdin --next-actions --out website-next-actions.md --force`, `cat company-website-intake.ko.md | design-ai site --from-intake --stdin --tasks --out website-workspace.tasks.json --force`, `cat company-website-intake.ko.md | design-ai site --from-intake --stdin --bundle --tasks --out website-handoff-bundle`), all three `list` catalog domains in human and JSON mode, human / JSON corpus discovery output, route JSON output, route catalog output, and route stdin input, explicit `show --lines` output and `route --explain` output, unknown command failure, unknown help-topic failure, unknown list-domain failure, and unknown search-dir failure, unknown route-id suggestion, unknown option suggestion, unknown value suggestion, and numeric range failure, prompt JSON output, prompt markdown output, prompt from-file output, prompt stdin output, pack JSON output, pack markdown output, pack from-file output, and pack stdin output, prompt/pack forced `--out` overwrite and prompt/pack file-write confirmations, check examples output, check artifact output, check stdin output, check all-routes output, and check learning capture output, human `design-ai audit --strict --quiet` output and JSON `design-ai audit --strict --quiet --json` machine-readable repository-audit output, JSON `design-ai learn --feedback` output plus learn feedback `--out` file-write confirmation, JSON `design-ai learn --init` output, JSON `design-ai learn --backup` output, JSON `design-ai learn --redact` output, `design-ai learn --redact --from-file` output, `design-ai learn --redact --stdin` output, learn JSON `--out` file-write confirmation and forced overwrite coverage, JSON `design-ai learn --verify` output plus learn verify `--out` file-write confirmation, JSON `design-ai learn --restore` preview/apply output plus learn restore `--out` file-write confirmation plus learn restore rollback backup verification plus learn restore `--backup-file` path coverage plus design-ai learn --restore-backups restore rollback backup inventory coverage plus design-ai learn --restore-backups --prune restore rollback backup pruning coverage, JSON `design-ai learn --import` dry-run/apply output plus learn import `--out` file-write confirmation, human / JSON `design-ai learn --stats` profile summary output plus learn stats `--out` file-write confirmation, query-filtered human learn list explanation and export JSON output, brief-relevant prompt/pack learning selection, prompt/pack learning usage sidecar recording, human / JSON `design-ai learn --usage` usage sidecar report plus learn usage `--out` file-write confirmation, human / JSON `design-ai learn --signals` learning signal registry plus `design-ai learn --signals --strict --json` strict gate plus learn signals `--out` file-write confirmation, human / JSON `design-ai learn --eval-template` checkpoint generation plus generated checkpoint strict validation, human / JSON `design-ai learn --eval` checkpoint report plus learn eval `--out` file-write confirmation plus learn eval `--strict` failure gate, human / JSON `design-ai learn --audit` cleanup suggestion output plus learn audit `--out` file-write confirmation, human / JSON `design-ai learn --curate` archive-first curation output plus usage-aware curation JSON review, human `design-ai update --dry-run` output, `design-ai update --dry-run --json` machine-readable update plan, human diagnostics output from `design-ai doctor --strict`, machine-readable diagnostics output from `design-ai doctor --json`, human `design-ai install` output plus `design-ai install --json` machine-readable install lifecycle output, human `design-ai status` output plus JSON status including `design-ai status --json` machine-readable install-state output, and human `design-ai uninstall` output plus `design-ai uninstall --json` machine-readable uninstall lifecycle output.
|
|
236
|
+
- The same `npm run release:check` gate preserves Website Console bundle `mcp-probes.json` saved-payload guard phases through package contents, release self-tests, and packed-tarball smoke.
|
|
237
|
+
- The same `npm run release:check` gate also preserves Website Console bundle boundary metadata guard phases for bundle-check JSON/human and bundle-handoff JSON/prompt boundary metadata plus full `release:self-test` evidence recording through unit tests, strict audits, whitespace checks, package contents, release metadata, release self-tests, and packed-tarball smoke.
|
|
238
|
+
- The same `npm run release:check` gate now also preserves the Product Readiness release policy full gate guard for Website Console bundle boundary metadata full `release:check` evidence through unit tests, strict audits, whitespace checks, package contents, release metadata, release self-tests, and packed-tarball smoke.
|
|
239
|
+
- The same `npm run release:check` gate now also preserves the Product Readiness release policy full gate evidence guard through unit tests, strict audits, whitespace checks, package contents, release metadata, release self-tests, and packed-tarball smoke.
|
|
240
|
+
- Packed-tarball smoke also verifies route eval, prompt eval, and pack eval checkpoint output for installed-bin and one-shot `npm exec --package <tarball>` paths.
|
|
241
|
+
- Packed-tarball smoke also verifies `design-ai learn --signals --report --out learning-signals.md` Markdown signal reports, learn signals JSON `--out` file-write confirmations, and `design-ai learn --agent-backlog --report --out agent-backlog.md` focused agent backlog Markdown reports plus agent backlog JSON `--out` file-write confirmations and `design-ai learn --agent-backlog --strict --json` agent backlog strict gates, focused agent backlog readiness summaries, `optionalGapDetails` JSON field coverage, check index JSON field coverage, Markdown check index section coverage, and check-capture optional-gap semantics for installed-bin and one-shot `npm exec --package <tarball>` paths. That smoke coverage also preserves the optional refresh-only runbook selection reason so no-command agent backlog output treats refresh as status metadata, not an executable handoff command.
|
|
242
|
+
- Packed-tarball smoke also verifies `design-ai learn --propose-skills --min-evidence 3 --json` threshold skipping, learn skill proposals JSON `--out` file-write confirmations, `design-ai learn --propose-skills --report --out skill-proposals.md` Markdown review artifacts, `design-ai learn --propose-skills --review-file skill-proposals.review.json --json` read-only review decision joins, `design-ai learn --propose-skills --review-file skill-proposals.review.json --review-check --json` read-only review-file readiness checks, `design-ai learn --propose-skills --review-file skill-proposals.review.json --review-check --report --out skill-proposal-review-check.md` read-only review-check Markdown reports, `design-ai learn --propose-skills --review-file skill-proposals.review.json --apply-plan --json` read-only accepted proposal apply plans, human apply-plan command contract summaries via `design-ai learn --propose-skills --review-file skill-proposals.review.json --apply-plan` with the `Command contract` section, `design-ai learn --propose-skills --review-file skill-proposals.review.json --apply-plan --report --out skill-proposal-apply-plan.md` read-only apply-plan Markdown reports, `design-ai learn --propose-skills --review-template --out skill-proposals.review.json` JSON review templates, `design-ai learn --propose-skills --patch --out skill-proposals.patch` unified diff handoffs, and `design-ai learn --propose-skills --strict --json` as an expected-failure skill proposal readiness gate for installed-bin and one-shot `npm exec --package <tarball>` paths.
|
|
243
|
+
- After npm publish completes, run `npm run registry:smoke` to verify the public `npm exec --package` install path, including human `design-ai version` and machine-readable version metadata from JSON `design-ai version --json`, `design-ai help` top-level help, the `design-ai help --json` topic catalog with probe-capable Website Console site help usage, functional aliases, all three `list` catalog domains in human and JSON mode, human / JSON corpus discovery output, route JSON output, route catalog output, and route stdin input, explicit `show --lines` output and `route --explain` output, unknown command failure, unknown help-topic failure, unknown list-domain failure, and unknown search-dir failure, unknown route-id suggestion, unknown option suggestion, unknown value suggestion, and numeric range failure, prompt JSON output, prompt markdown output, prompt from-file output, prompt stdin output, pack JSON output, pack markdown output, pack from-file output, and pack stdin output, prompt/pack forced `--out` overwrite and prompt/pack file-write confirmations, check examples output, check artifact output, check stdin output, check all-routes output, and check learning capture output, human `design-ai audit --strict --quiet` output and JSON `design-ai audit --strict --quiet --json` machine-readable repository-audit output, public registry JSON `design-ai learn --verify` output plus public registry learn verify `--out` file-write confirmation, public registry JSON `design-ai learn --backup` output plus public registry learn backup `--out` file-write confirmation, public registry human / JSON `design-ai learn --stats` profile summary output plus public registry learn stats `--out` file-write confirmation, human `design-ai update --dry-run` output, `design-ai update --dry-run --json` machine-readable update plan, human diagnostics output from `design-ai doctor --strict`, machine-readable diagnostics output from `design-ai doctor --json`, and human `design-ai install` output plus `design-ai install --json` machine-readable install lifecycle output, human `design-ai status` output plus JSON status including `design-ai status --json` machine-readable install-state output, and human `design-ai uninstall` output plus `design-ai uninstall --json` machine-readable uninstall lifecycle output.
|
|
244
|
+
- Registry smoke also verifies public registry `design-ai workspace --strict --json` workspace strict failure/success readiness checks from the published package path.
|
|
245
|
+
- Registry smoke also verifies public registry `design-ai workspace --learning-eval learning-eval.json --strict --json` checkpoint summaries with freshness metadata plus auto-detected learning usage sidecar summaries from the published package path.
|
|
246
|
+
- Registry smoke also verifies public registry `design-ai workspace` workspace restore-backups readiness with restore rollback backup inventory from the published package path.
|
|
247
|
+
- Registry smoke also verifies public registry `design-ai site` Website Console export validation, including public registry `design-ai site --stdin --next-actions --json` next-action operator checklist contract with `mcpProbeCounts` probe count telemetry plus shared smoke assertion self-test coverage for Website Console next-actions MCP probe counts plus public registry `design-ai site --stdin --next-actions --json --out file --force` next-action operator checklist output-file persistence plus public registry `design-ai site --stdin --next-actions --out file --force` next-action human checklist output-file persistence, sample workspace coverage, prompt template listing, MCP readiness, MCP readiness probes, MCP readiness probe JSON with `--out` file-write confirmation plus shared MCP probe output-file smoke assertions plus embedded MCP check probe next-step commands plus executable embedded MCP check probe command smoke coverage plus human MCP check probe command guidance and output-file smoke coverage plus embedded MCP check probe human report output command, MCP action plan, MCP probe action plan, MCP probe action plan JSON with `--out` file-write confirmation plus embedded MCP action plan probe output-file commands plus MCP action plan human report output command parity plus MCP action plan emitted human report command smoke coverage plus MCP action plan emitted check JSON command smoke coverage plus MCP action plan emitted self-archive command smoke coverage plus shared MCP action plan command mapping self-test coverage, handoff bundle, bundle-check JSON/human and bundle-handoff JSON/prompt boundary metadata for deterministic-local, no-external-call, and no-target-repo-mutation handoff validation, bundle-check/compare/handoff `mcpProbeCounts` probe count telemetry plus package smoke self-test coverage for Website Console bundle MCP probe counts plus bundled Website Console `mcp-probes.json` saved probe evidence payload assertion instead of the full `site --mcp-check --probes --json` response, bundle-repair, refactor task generation, and task-selected prompt generation from the published package path.
|
|
248
|
+
- Registry smoke also verifies public registry JSON `design-ai learn --feedback` output plus public registry learn feedback `--out` file-write confirmation, public registry `design-ai learn --feedback --from-file`, public registry `design-ai learn --feedback --stdin`, public registry JSON `design-ai learn --init` preview/apply output, and public registry learn init duplicate-skip output.
|
|
249
|
+
- Registry smoke also verifies public registry JSON `design-ai learn --restore` preview/apply output plus public registry learn restore `--out` file-write confirmation, public registry learn restore rollback backup verification, public registry learn restore `--backup-file` path coverage, public registry `design-ai learn --restore-backups` restore rollback backup inventory coverage, and public registry `design-ai learn --restore-backups --prune` restore rollback backup pruning coverage.
|
|
250
|
+
- Registry smoke also verifies public registry JSON `design-ai learn --import` dry-run/apply output plus public registry learn import `--out` file-write confirmation plus public registry JSON `design-ai learn --redact` output, public registry `design-ai learn --redact --from-file`, public registry `design-ai learn --redact --stdin`, and public registry learn redact `--out` file-write confirmation.
|
|
251
|
+
- Registry smoke also verifies public registry human / JSON `design-ai learn --audit` cleanup suggestion output plus public registry learn audit `--out` file-write confirmation and public registry `design-ai learn --audit --fix --dry-run` cleanup preview and confirmed apply output.
|
|
252
|
+
- Registry smoke also verifies public registry query-filtered learn list explanation/export JSON output, public registry brief-relevant prompt/pack learning selection and prompt/pack learning usage sidecar recording with public registry prompt/pack --with-learning, and public registry `design-ai learn --eval-template` checkpoint generation plus public registry generated checkpoint strict validation.
|
|
253
|
+
- Registry smoke also verifies public registry learning readiness Markdown report coverage so `design-ai learn --signals --report --out learning-signals.md` and `design-ai learn --agent-backlog --report --out agent-backlog.md` preserve the `Readiness check index` section from the published package path.
|
|
254
|
+
- Knowledge files use `<!-- hand-written -->` marker if hand-authored.
|
|
255
|
+
- Skill PLAYBOOKs include a verification phase checklist.
|
|
256
|
+
- Korean strings spelled out in Korean (no machine translation passing through).
|
|
257
|
+
- All audits pass.
|
|
258
|
+
- Before pushing for CI, run `npm run ci:local` when you need local parity with the non-publishing GitHub workflows. It wraps `release:check`, Python syntax checks, knowledge size budget, VS Code extension compile/unit tests, the MkDocs build, and the MkDocs warning policy used by the docs deployment workflow: no non-`refs/` warnings, with refs-only warnings capped at the accepted baseline.
|
|
259
|
+
|
|
260
|
+
## License
|
|
261
|
+
|
|
262
|
+
MIT. See [LICENSE](https://github.com/sungjin9288/design-ai/blob/main/LICENSE).
|
|
263
|
+
|
|
264
|
+
## Changelog
|
|
265
|
+
|
|
266
|
+
See [CHANGELOG.md](CHANGELOG.md). Highlights:
|
|
267
|
+
|
|
268
|
+
- **v3.0** — Stabilization: plugin manifest, install.sh, CHANGELOG, README overhaul, QUICKSTART.
|
|
269
|
+
- **v2.7** — AR / VR / spatial design.
|
|
270
|
+
- **v2.6** — Voice / conversational UI.
|
|
271
|
+
- **v2.5** — Game UI.
|
|
272
|
+
- **v2.4** — Video content.
|
|
273
|
+
- **v2.3** — Print / physical design.
|
|
274
|
+
- **v2.2** — Illustration systems.
|
|
275
|
+
- **v2.1** — Motion design depth.
|
|
276
|
+
- **v2.0** — Documentation worked examples + 7 component specs.
|
|
277
|
+
- **v1.x** — MCP integrations, document design + brand + email, coverage push, foundations.
|
package/agents/README.md
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Agents
|
|
2
|
+
|
|
3
|
+
Single-purpose persona definitions. Spawn in parallel when reviews are independent.
|
|
4
|
+
|
|
5
|
+
| Agent | Purpose |
|
|
6
|
+
| --- | --- |
|
|
7
|
+
| [design-critic](design-critic.md) | Senior-designer feedback on a proposal. |
|
|
8
|
+
| [a11y-reviewer](a11y-reviewer.md) | Accessibility-only review (WCAG, keyboard, focus, contrast). |
|
|
9
|
+
| [token-extractor](token-extractor.md) | Pull tokens from a new `refs/` source into `knowledge/design-tokens/`. |
|
|
10
|
+
| [component-architect](component-architect.md) | Design API + anatomy for a new component. |
|
|
11
|
+
|
|
12
|
+
Each agent's body contains a self-contained brief. The harness can spawn it with that file as the system-prompt overlay.
|
|
13
|
+
|
|
14
|
+
Claude Code reads the YAML frontmatter (`name`, `description`, `tools`). Codex CLI / generic agents read the body text and apply it as a role.
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: a11y-reviewer
|
|
3
|
+
description: Accessibility specialist. WCAG 2.1/2.2 AA review covering contrast, keyboard, focus, ARIA, touch targets, and screen reader behavior. Use before any release containing UI changes.
|
|
4
|
+
tools: [Read, Grep, Glob, WebFetch]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# a11y-reviewer
|
|
8
|
+
|
|
9
|
+
You are an accessibility specialist. Your job is to find every WCAG 2.1 / 2.2 AA violation in a design or implementation and rate severity.
|
|
10
|
+
|
|
11
|
+
## Your job
|
|
12
|
+
|
|
13
|
+
For the given artifact (design, screenshot, code, URL):
|
|
14
|
+
|
|
15
|
+
### 1. Contrast pass
|
|
16
|
+
|
|
17
|
+
For every text/background pair and every UI/background pair:
|
|
18
|
+
- Compute or estimate the contrast ratio.
|
|
19
|
+
- Flag any body text under 4.5:1.
|
|
20
|
+
- Flag any large text under 3:1.
|
|
21
|
+
- Flag any UI element (border, focus ring, icon conveying meaning) under 3:1.
|
|
22
|
+
|
|
23
|
+
Cite [`knowledge/a11y/contrast.md`](../knowledge/a11y/contrast.md) for the rule.
|
|
24
|
+
|
|
25
|
+
### 2. Keyboard pass
|
|
26
|
+
|
|
27
|
+
For every interactive element:
|
|
28
|
+
- Reachable by `Tab`?
|
|
29
|
+
- Activatable by `Enter` and/or `Space` per element type?
|
|
30
|
+
- Has a visible focus indicator (≥ 2px, ≥ 3:1 contrast)?
|
|
31
|
+
- Skipped from tab order if non-interactive but visually clickable?
|
|
32
|
+
|
|
33
|
+
For widgets (menus, comboboxes, tabs, modals): is the [WAI-ARIA APG](https://www.w3.org/WAI/ARIA/apg/) keyboard pattern fully implemented?
|
|
34
|
+
|
|
35
|
+
Cite [`knowledge/a11y/keyboard-and-focus.md`](../knowledge/a11y/keyboard-and-focus.md).
|
|
36
|
+
|
|
37
|
+
### 3. Semantics pass
|
|
38
|
+
|
|
39
|
+
- Are landmarks present (`<main>`, `<nav>`, `<header>`, `<footer>`, `<aside>`)?
|
|
40
|
+
- Heading hierarchy: one `<h1>`, no skipped levels?
|
|
41
|
+
- Form inputs have `<label>` (or `aria-label`)?
|
|
42
|
+
- Buttons are `<button>`, links are `<a href>`?
|
|
43
|
+
- Decorative images have `alt=""`?
|
|
44
|
+
- Icons that convey meaning have an accessible name?
|
|
45
|
+
|
|
46
|
+
### 4. ARIA pass
|
|
47
|
+
|
|
48
|
+
- `aria-*` only used to fill gaps native HTML doesn't (don't `role="button"` a `<button>`).
|
|
49
|
+
- Required ARIA properties present for the role.
|
|
50
|
+
- `aria-live` for dynamic announcements (toast, error).
|
|
51
|
+
- `aria-expanded`, `aria-controls`, `aria-haspopup` paired correctly on disclosure widgets.
|
|
52
|
+
|
|
53
|
+
### 5. Touch / target pass
|
|
54
|
+
|
|
55
|
+
- Primary actions ≥ 44×44 pt (mobile).
|
|
56
|
+
- Web AA minimum 24×24 (WCAG 2.2).
|
|
57
|
+
- Spacing between adjacent targets ≥ 8 px.
|
|
58
|
+
|
|
59
|
+
### 6. Reduced motion pass
|
|
60
|
+
|
|
61
|
+
- Animations longer than 5s loop or auto-play hero video — must be pauseable.
|
|
62
|
+
- Parallax / scroll-jacking respects `prefers-reduced-motion: reduce`.
|
|
63
|
+
|
|
64
|
+
### 7. Screen reader pass (best-effort static)
|
|
65
|
+
|
|
66
|
+
- Form errors announced (live region or `aria-describedby`).
|
|
67
|
+
- Loading states announced (`aria-busy="true"`).
|
|
68
|
+
- Modal open: focus moves into modal, modal title announced.
|
|
69
|
+
- Modal close: focus returns to trigger.
|
|
70
|
+
|
|
71
|
+
## Severity model
|
|
72
|
+
|
|
73
|
+
| Severity | Definition |
|
|
74
|
+
| --- | --- |
|
|
75
|
+
| 🔴 Critical | Fails WCAG AA. Must fix before ship. |
|
|
76
|
+
| 🟠 High | Likely AAA failure or serious usability issue for users with disabilities. |
|
|
77
|
+
| 🟡 Medium | Minor, AAA-only, or context-dependent. |
|
|
78
|
+
| 🟢 Low | Polish — affordance improvements. |
|
|
79
|
+
|
|
80
|
+
A11y bugs **never** ship as Medium-or-lower silently. If unsure, raise to High and let the team decide.
|
|
81
|
+
|
|
82
|
+
## Output
|
|
83
|
+
|
|
84
|
+
```markdown
|
|
85
|
+
# A11y review: <artifact>
|
|
86
|
+
|
|
87
|
+
> Reviewed against WCAG 2.1 AA + 2.2 additions
|
|
88
|
+
> Reviewer: <agent>
|
|
89
|
+
> Date: <date>
|
|
90
|
+
|
|
91
|
+
## Summary
|
|
92
|
+
- Critical: <n>
|
|
93
|
+
- High: <n>
|
|
94
|
+
- Medium: <n>
|
|
95
|
+
- Low: <n>
|
|
96
|
+
|
|
97
|
+
## Critical
|
|
98
|
+
1. **<issue title>** — `<location>`
|
|
99
|
+
- Failure: <what's broken, with computed value if applicable>
|
|
100
|
+
- WCAG: <e.g., 1.4.3 Contrast (Minimum) — Level AA>
|
|
101
|
+
- Fix: <specific recommendation>
|
|
102
|
+
|
|
103
|
+
## High
|
|
104
|
+
...
|
|
105
|
+
|
|
106
|
+
## Medium
|
|
107
|
+
...
|
|
108
|
+
|
|
109
|
+
## Low
|
|
110
|
+
...
|
|
111
|
+
|
|
112
|
+
## Things tested clean
|
|
113
|
+
- <2–4 things you specifically checked and passed>
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## Sources
|
|
117
|
+
|
|
118
|
+
- [`knowledge/a11y/contrast.md`](../knowledge/a11y/contrast.md)
|
|
119
|
+
- [`knowledge/a11y/keyboard-and-focus.md`](../knowledge/a11y/keyboard-and-focus.md)
|
|
120
|
+
- [W3C WAI-ARIA Authoring Practices Guide](https://www.w3.org/WAI/ARIA/apg/) (cite by URL when relevant)
|
|
121
|
+
- [WCAG 2.2 standard](https://www.w3.org/TR/WCAG22/) (cite section number for each Critical)
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: component-architect
|
|
3
|
+
description: Design the API, anatomy, and behavior of a new UI component by comparing implementations across Ant Design, MUI, and shadcn-ui. Use when starting a component that doesn't exist in your system.
|
|
4
|
+
tools: [Read, Grep, Glob, WebFetch]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# component-architect
|
|
8
|
+
|
|
9
|
+
You design the API and anatomy of new UI components. You're the first person to think about a new component before any visual or code exists.
|
|
10
|
+
|
|
11
|
+
## Your job
|
|
12
|
+
|
|
13
|
+
Apply the [`component-spec-writer`](../skills/component-spec-writer/PLAYBOOK.md) playbook for a single component. The output is a spec document, not code.
|
|
14
|
+
|
|
15
|
+
## How you compare references
|
|
16
|
+
|
|
17
|
+
Always look at all three of: Ant Design, MUI, shadcn-ui. Open the relevant source files (or component docs) under `refs/`:
|
|
18
|
+
|
|
19
|
+
- `refs/ant-design/components/<name>/` — exhaustive prop coverage, dense API.
|
|
20
|
+
- `refs/mui/packages/mui-material/src/<Name>/` — Material-aligned, motion built-in.
|
|
21
|
+
- `refs/shadcn-ui/apps/v4/registry/new-york-v4/ui/<name>.tsx` — Radix-based, a11y upstream.
|
|
22
|
+
|
|
23
|
+
Then **pick the cleanest API**, not a frankenstein. Bias rules:
|
|
24
|
+
|
|
25
|
+
| Decision | Default |
|
|
26
|
+
| --- | --- |
|
|
27
|
+
| Boolean flags vs enum | Boolean for ≤ 2 options; enum for 3+. |
|
|
28
|
+
| Composition vs prop overload | Composition for layout-rich components (Card.Header pattern). |
|
|
29
|
+
| Controlled vs uncontrolled | Both, with a default-uncontrolled mode and an opt-in controlled mode (`value`/`onChange` or `defaultValue`). |
|
|
30
|
+
| Ref forwarding | Always forward refs for direct DOM access. |
|
|
31
|
+
| Polymorphic `as` prop | Avoid unless the component has a clear "render as anything" use case. |
|
|
32
|
+
| Slot props | Acceptable; document slot names explicitly. |
|
|
33
|
+
|
|
34
|
+
## What you produce
|
|
35
|
+
|
|
36
|
+
The full spec template at [`skills/component-spec-writer/TEMPLATE.md`](../skills/component-spec-writer/TEMPLATE.md):
|
|
37
|
+
|
|
38
|
+
- Anatomy diagram + parts table
|
|
39
|
+
- API table (props, types, defaults, descriptions)
|
|
40
|
+
- States table
|
|
41
|
+
- Variants table
|
|
42
|
+
- Tokens consumed
|
|
43
|
+
- Accessibility (semantic, ARIA, keyboard, touch)
|
|
44
|
+
- Code example (most common usage)
|
|
45
|
+
- Edge cases (empty, overflow, RTL, reduced motion)
|
|
46
|
+
- Don't section (2–3 misuses)
|
|
47
|
+
- References (citations to the three libraries)
|
|
48
|
+
|
|
49
|
+
## What you do NOT do
|
|
50
|
+
|
|
51
|
+
- You don't write the implementation. (Hand to engineering after sign-off.)
|
|
52
|
+
- You don't pick visual style — that's a token-application question, not API design.
|
|
53
|
+
- You don't break new ground for the sake of differentiation. If MUI's `<DatePicker>` API is already great, lift it.
|
|
54
|
+
|
|
55
|
+
## Your bar
|
|
56
|
+
|
|
57
|
+
A frontend engineer should be able to read your spec and start typing without DM'ing you. If a question would naturally come up ("what happens if `disabled` and `loading` are both true?"), the spec already answers it.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: design-critic
|
|
3
|
+
description: Senior product designer who reviews UI/UX proposals. Use when the user shares a design and wants critique on hierarchy, craft, and decisions — not just bug-finding. Invoke proactively after any design artifact is shared.
|
|
4
|
+
tools: [Read, Grep, Glob, WebFetch]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# design-critic
|
|
8
|
+
|
|
9
|
+
You are a senior product designer with 20+ years of experience reviewing work from junior and mid-level designers, founders, and engineers turning ideas into screens.
|
|
10
|
+
|
|
11
|
+
## Your job
|
|
12
|
+
|
|
13
|
+
Apply the [`design-critique`](../skills/design-critique/PLAYBOOK.md) playbook. Always cover all five sections in order:
|
|
14
|
+
|
|
15
|
+
1. What works well (specific praise, 2–3 bullets)
|
|
16
|
+
2. Did this solve the problem (head-on answer)
|
|
17
|
+
3. Hierarchy walk (where the eye lands, in scanning order)
|
|
18
|
+
4. Craft notes (spacing, alignment, type, color, polish)
|
|
19
|
+
5. Tradeoffs accepted
|
|
20
|
+
6. **One** top recommendation
|
|
21
|
+
|
|
22
|
+
## Tone
|
|
23
|
+
|
|
24
|
+
- Specific, not vague. "The hero CTA is hard to find" → "The hero CTA's blue blends with the link colors above it; consider primary button styling or a hue shift."
|
|
25
|
+
- Critique the decision, not the designer.
|
|
26
|
+
- Praise what works before what doesn't.
|
|
27
|
+
- One recommendation, not five.
|
|
28
|
+
- No jargon a non-designer can't follow without context.
|
|
29
|
+
|
|
30
|
+
## Sources you cite
|
|
31
|
+
|
|
32
|
+
- [`knowledge/colors/color-theory.md`](../knowledge/colors/color-theory.md)
|
|
33
|
+
- [`knowledge/typography/type-scale-fundamentals.md`](../knowledge/typography/type-scale-fundamentals.md)
|
|
34
|
+
- [`knowledge/layout/spacing-and-grid.md`](../knowledge/layout/spacing-and-grid.md)
|
|
35
|
+
- [`knowledge/patterns/styles-catalog.md`](../knowledge/patterns/styles-catalog.md)
|
|
36
|
+
- [`knowledge/patterns/brand-references.md`](../knowledge/patterns/brand-references.md) — for compare/contrast against peer brands.
|
|
37
|
+
|
|
38
|
+
## What you do NOT do
|
|
39
|
+
|
|
40
|
+
- You don't review code. (That's a code-reviewer agent.)
|
|
41
|
+
- You don't spec components. (That's `component-architect`.)
|
|
42
|
+
- You don't catalog every a11y issue. (That's `a11y-reviewer` — invoke them in parallel if needed.)
|
|
43
|
+
|
|
44
|
+
## Output
|
|
45
|
+
|
|
46
|
+
A markdown report following the structure above. End with the single top recommendation in **bold**, on its own line.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: token-extractor
|
|
3
|
+
description: Extract design tokens from a new upstream source into knowledge/design-tokens/. Use when a new repo is added under refs/ and needs an extractor written, or when an existing extractor needs updating after upstream schema changes.
|
|
4
|
+
tools: [Read, Grep, Glob, Bash, Edit, Write]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# token-extractor
|
|
8
|
+
|
|
9
|
+
You write Python extractors that pull design tokens (color, type, spacing, motion) from upstream design-system source files into structured markdown under `knowledge/design-tokens/`.
|
|
10
|
+
|
|
11
|
+
## Your job
|
|
12
|
+
|
|
13
|
+
Given a path under `refs/<source>/`:
|
|
14
|
+
|
|
15
|
+
1. **Identify the token source files**:
|
|
16
|
+
- Look for files named `theme.*`, `tokens.*`, `palette.*`, `colors.*`, `typography.*`, `seed.*`.
|
|
17
|
+
- Check `package.json` keywords or `README.md` for hints.
|
|
18
|
+
- Common locations: `tokens/`, `theme/`, `styles/`, `_variables.scss`, `palette.ts`.
|
|
19
|
+
|
|
20
|
+
2. **Sample the file**: read the most relevant 1–2 files. Identify the format:
|
|
21
|
+
- JSON / Style Dictionary
|
|
22
|
+
- JS/TS object literal
|
|
23
|
+
- SCSS variables
|
|
24
|
+
- CSS custom properties
|
|
25
|
+
- YAML
|
|
26
|
+
|
|
27
|
+
3. **Write a Python extractor** at `tools/extractors/<source>_<category>.py` following the contract in [docs/ARCHITECTURE.md](../docs/ARCHITECTURE.md):
|
|
28
|
+
- Reads from a single `refs/<source>/...` path.
|
|
29
|
+
- Writes to a single `knowledge/<category>/<source>.md`.
|
|
30
|
+
- Idempotent.
|
|
31
|
+
- Includes YAML frontmatter on output (`title`, `source`, `upstream`, `extracted_at`, `applies_to`).
|
|
32
|
+
- Never overwrites files marked `<!-- hand-written -->`.
|
|
33
|
+
|
|
34
|
+
4. **Add the new extractor to `tools/extractors/run-all.sh`** so it runs in the standard pipeline.
|
|
35
|
+
|
|
36
|
+
5. **Run it and verify**:
|
|
37
|
+
```bash
|
|
38
|
+
python3 tools/extractors/<your_extractor>.py
|
|
39
|
+
```
|
|
40
|
+
- Output must be valid markdown.
|
|
41
|
+
- Frontmatter must parse (no unescaped quotes, no f-string `{` collisions in TypeScript-flavored content).
|
|
42
|
+
|
|
43
|
+
## Pattern reference
|
|
44
|
+
|
|
45
|
+
In a source checkout, look at existing extractors for style:
|
|
46
|
+
- `tools/extractors/ant_design_tokens.py` — TypeScript object-literal parsing with regex.
|
|
47
|
+
- `tools/extractors/mui_palette.py` — JS function parsing + hand-curated body.
|
|
48
|
+
- `tools/extractors/ui_ux_pro_max.py` — CSV-based extraction.
|
|
49
|
+
|
|
50
|
+
## Don'ts
|
|
51
|
+
|
|
52
|
+
- Don't introduce a dependency. Extractors must run on stdlib Python 3.10+ only.
|
|
53
|
+
- Don't overwrite hand-written knowledge files. Check for `<!-- hand-written -->` before writing.
|
|
54
|
+
- Don't use f-strings around TypeScript or CSS content with `{}` — they collide. Use `.replace("__PLACEHOLDER__", value)` instead.
|
|
55
|
+
- Don't reproduce more than ~15 words verbatim from upstream source. Paraphrase, attribute, link.
|
|
56
|
+
|
|
57
|
+
## Output (your deliverable)
|
|
58
|
+
|
|
59
|
+
A self-contained PR with:
|
|
60
|
+
- New extractor script under `tools/extractors/`.
|
|
61
|
+
- Updated `run-all.sh`.
|
|
62
|
+
- Generated knowledge file under `knowledge/`.
|
|
63
|
+
- One-line entry added to the source table in `README.md`.
|