From 5aa5b1613bbb8ddbb7b8243c6eed6ee91ee5c0c8 Mon Sep 17 00:00:00 2001 From: Xin Yun Date: Wed, 26 Aug 2026 17:17:43 +0800 Subject: [PATCH 01/15] [MISC][XY] Add DS agent skills --- docs/skills/cc-flagship-ds/SKILL-v4.md | 174 +++++ docs/skills/cc-flagship-ds/SKILL.md | 190 ++++++ docs/skills/cc-flagship-ds/catalogue.md | 173 +++++ docs/skills/cc-flagship-ds/evals/evals.json | 317 +++++++++ .../resources/v3/components/accordion.md | 115 ++++ .../resources/v3/components/alert.md | 56 ++ .../resources/v3/components/animation.md | 17 + .../resources/v3/components/avatar.md | 13 + .../resources/v3/components/badge.md | 21 + .../resources/v3/components/box-container.md | 54 ++ .../resources/v3/components/breadcrumb.md | 69 ++ .../v3/components/button-with-icon.md | 32 + .../resources/v3/components/button.md | 75 +++ .../resources/v3/components/calendar.md | 109 +++ .../resources/v3/components/card.md | 49 ++ .../resources/v3/components/checkbox.md | 56 ++ .../v3/components/countdown-timer.md | 24 + .../resources/v3/components/data-table.md | 145 ++++ .../resources/v3/components/date-navigator.md | 27 + .../resources/v3/components/divider.md | 21 + .../resources/v3/components/drawer.md | 80 +++ .../resources/v3/components/error-display.md | 114 ++++ .../v3/components/feedback-rating.md | 64 ++ .../resources/v3/components/file-download.md | 41 ++ .../resources/v3/components/file-upload.md | 91 +++ .../resources/v3/components/filter.md | 210 ++++++ .../resources/v3/components/footer.md | 95 +++ .../v3/components/form-date-input.md | 85 +++ .../v3/components/form-date-range-input.md | 139 ++++ .../v3/components/form-e-signature.md | 46 ++ .../resources/v3/components/form-input.md | 88 +++ .../v3/components/form-masked-input.md | 55 ++ .../v3/components/form-multi-select.md | 112 ++++ .../v3/components/form-nested-multi-select.md | 173 +++++ .../v3/components/form-nested-select.md | 165 +++++ .../v3/components/form-otp-verification.md | 164 +++++ .../v3/components/form-phone-number-input.md | 80 +++ .../components/form-predictive-text-input.md | 102 +++ .../resources/v3/components/form-select.md | 122 ++++ .../resources/v3/components/form-slider.md | 115 ++++ .../resources/v3/components/form-textarea.md | 122 ++++ .../v3/components/form-time-range-picker.md | 84 +++ .../v3/components/form-timepicker.md | 68 ++ .../v3/components/form-unit-number-input.md | 132 ++++ .../components/fullscreen-image-carousel.md | 123 ++++ .../v3/components/histogram-slider.md | 40 ++ .../resources/v3/components/icon-button.md | 25 + .../resources/v3/components/icon.md | 175 +++++ .../resources/v3/components/image-button.md | 14 + .../resources/v3/components/input.md | 45 ++ .../v3/components/language-switcher.md | 17 + .../resources/v3/components/layout.md | 138 ++++ .../resources/v3/components/link-list.md | 89 +++ .../resources/v3/components/local-nav.md | 95 +++ .../resources/v3/components/masthead.md | 14 + .../resources/v3/components/menu.md | 115 ++++ .../resources/v3/components/modal.md | 114 ++++ .../resources/v3/components/navbar.md | 203 ++++++ .../v3/components/notification-banner.md | 67 ++ .../resources/v3/components/pagination.md | 104 +++ .../resources/v3/components/pill.md | 58 ++ .../resources/v3/components/popover.md | 72 ++ .../v3/components/progress-indicator.md | 48 ++ .../resources/v3/components/radio-button.md | 69 ++ .../resources/v3/components/schedule.md | 72 ++ .../resources/v3/components/sidenav.md | 190 ++++++ .../v3/components/singpass-button.md | 15 + .../v3/components/smart-app-banner.md | 29 + .../resources/v3/components/tab.md | 85 +++ .../resources/v3/components/tag.md | 71 ++ .../resources/v3/components/text-list.md | 44 ++ .../v3/components/time-slot-bar-week.md | 67 ++ .../resources/v3/components/time-slot-bar.md | 42 ++ .../v3/components/time-slot-week-view.md | 63 ++ .../resources/v3/components/timeline.md | 59 ++ .../resources/v3/components/timetable.md | 82 +++ .../resources/v3/components/toast.md | 67 ++ .../resources/v3/components/toggle.md | 120 ++++ .../resources/v3/components/tooltip.md | 62 ++ .../resources/v3/components/typography.md | 92 +++ .../v3/components/uneditable-section.md | 94 +++ .../layout-composition-patterns.md | 47 ++ .../resources/v3/foundations/tokens.md | 628 ++++++++++++++++++ .../resources/v3/patterns/dashboard.md | 154 +++++ .../resources/v3/patterns/detail.md | 364 ++++++++++ .../resources/v3/patterns/setup.md | 369 ++++++++++ .../resources/v3/patterns/states.md | 305 +++++++++ .../resources/v3/templates/form.md | 555 ++++++++++++++++ .../resources/v3/templates/listing.md | 579 ++++++++++++++++ .../resources/v4/components/accordion.md | 115 ++++ .../resources/v4/components/alert.md | 56 ++ .../resources/v4/components/animation.md | 17 + .../resources/v4/components/avatar.md | 13 + .../resources/v4/components/badge.md | 21 + .../resources/v4/components/box-container.md | 54 ++ .../resources/v4/components/breadcrumb.md | 69 ++ .../resources/v4/components/button.md | 78 +++ .../resources/v4/components/calendar.md | 109 +++ .../resources/v4/components/card.md | 51 ++ .../resources/v4/components/checkbox.md | 56 ++ .../v4/components/countdown-timer.md | 24 + .../resources/v4/components/data-table.md | 145 ++++ .../resources/v4/components/date-navigator.md | 27 + .../resources/v4/components/divider.md | 21 + .../resources/v4/components/drawer.md | 80 +++ .../resources/v4/components/error-display.md | 114 ++++ .../v4/components/feedback-rating.md | 64 ++ .../resources/v4/components/file-download.md | 41 ++ .../resources/v4/components/file-upload.md | 91 +++ .../resources/v4/components/filter.md | 211 ++++++ .../resources/v4/components/footer.md | 95 +++ .../v4/components/form-date-input.md | 92 +++ .../v4/components/form-date-range-input.md | 146 ++++ .../v4/components/form-e-signature.md | 46 ++ .../resources/v4/components/form-input.md | 88 +++ .../v4/components/form-masked-input.md | 55 ++ .../v4/components/form-multi-select.md | 112 ++++ .../v4/components/form-nested-multi-select.md | 173 +++++ .../v4/components/form-nested-select.md | 165 +++++ .../v4/components/form-otp-verification.md | 164 +++++ .../v4/components/form-phone-number-input.md | 87 +++ .../components/form-predictive-text-input.md | 102 +++ .../resources/v4/components/form-select.md | 122 ++++ .../resources/v4/components/form-slider.md | 115 ++++ .../resources/v4/components/form-textarea.md | 122 ++++ .../v4/components/form-time-range-picker.md | 91 +++ .../v4/components/form-timepicker.md | 75 +++ .../v4/components/form-unit-number-input.md | 139 ++++ .../components/fullscreen-image-carousel.md | 123 ++++ .../v4/components/histogram-slider.md | 40 ++ .../resources/v4/components/icon.md | 175 +++++ .../resources/v4/components/image-button.md | 14 + .../resources/v4/components/input.md | 45 ++ .../v4/components/language-switcher.md | 17 + .../resources/v4/components/layout.md | 143 ++++ .../resources/v4/components/link-list.md | 89 +++ .../resources/v4/components/local-nav.md | 95 +++ .../resources/v4/components/masthead.md | 14 + .../resources/v4/components/menu.md | 115 ++++ .../resources/v4/components/modal.md | 114 ++++ .../resources/v4/components/navbar.md | 203 ++++++ .../v4/components/notification-banner.md | 67 ++ .../resources/v4/components/pagination.md | 104 +++ .../resources/v4/components/pill.md | 58 ++ .../resources/v4/components/popover.md | 72 ++ .../v4/components/progress-indicator.md | 48 ++ .../resources/v4/components/radio-button.md | 69 ++ .../resources/v4/components/schedule.md | 72 ++ .../resources/v4/components/sidenav.md | 190 ++++++ .../v4/components/singpass-button.md | 15 + .../v4/components/smart-app-banner.md | 29 + .../resources/v4/components/tab.md | 85 +++ .../resources/v4/components/tag.md | 71 ++ .../resources/v4/components/text-list.md | 44 ++ .../v4/components/time-slot-bar-week.md | 67 ++ .../resources/v4/components/time-slot-bar.md | 42 ++ .../v4/components/time-slot-week-view.md | 63 ++ .../resources/v4/components/timeline.md | 59 ++ .../resources/v4/components/timetable.md | 82 +++ .../resources/v4/components/toast.md | 67 ++ .../resources/v4/components/toggle.md | 120 ++++ .../resources/v4/components/typography.md | 92 +++ .../v4/components/uneditable-section.md | 94 +++ .../resources/v4/patterns/setup.md | 162 +++++ .../resources/v4/templates/form.md | 545 +++++++++++++++ .../resources/v4/templates/listing.md | 445 +++++++++++++ package.json | 3 +- scripts/init-skills.js | 88 +++ 168 files changed, 17649 insertions(+), 1 deletion(-) create mode 100644 docs/skills/cc-flagship-ds/SKILL-v4.md create mode 100644 docs/skills/cc-flagship-ds/SKILL.md create mode 100644 docs/skills/cc-flagship-ds/catalogue.md create mode 100644 docs/skills/cc-flagship-ds/evals/evals.json create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/accordion.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/alert.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/animation.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/avatar.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/badge.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/box-container.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/breadcrumb.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/button-with-icon.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/button.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/calendar.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/card.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/checkbox.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/countdown-timer.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/data-table.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/date-navigator.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/divider.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/drawer.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/error-display.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/feedback-rating.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/file-download.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/file-upload.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/filter.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/footer.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-date-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-date-range-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-e-signature.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-masked-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-multi-select.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-nested-multi-select.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-nested-select.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-otp-verification.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-phone-number-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-predictive-text-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-select.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-slider.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-textarea.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-time-range-picker.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-timepicker.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/form-unit-number-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/fullscreen-image-carousel.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/histogram-slider.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/icon-button.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/icon.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/image-button.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/language-switcher.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/layout.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/link-list.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/local-nav.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/masthead.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/menu.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/modal.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/navbar.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/notification-banner.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/pagination.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/pill.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/popover.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/progress-indicator.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/radio-button.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/schedule.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/sidenav.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/singpass-button.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/smart-app-banner.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/tab.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/tag.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/text-list.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/time-slot-bar-week.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/time-slot-bar.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/time-slot-week-view.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/timeline.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/timetable.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/toast.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/toggle.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/tooltip.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/typography.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/components/uneditable-section.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/foundations/layout-composition-patterns.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/foundations/tokens.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/patterns/dashboard.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/patterns/detail.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/patterns/setup.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/patterns/states.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/templates/form.md create mode 100644 docs/skills/cc-flagship-ds/resources/v3/templates/listing.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/accordion.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/alert.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/animation.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/avatar.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/badge.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/box-container.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/breadcrumb.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/button.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/calendar.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/card.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/checkbox.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/countdown-timer.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/data-table.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/date-navigator.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/divider.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/drawer.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/error-display.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/feedback-rating.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/file-download.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/file-upload.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/filter.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/footer.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-date-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-date-range-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-e-signature.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-masked-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-multi-select.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-nested-multi-select.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-nested-select.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-otp-verification.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-phone-number-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-predictive-text-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-select.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-slider.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-textarea.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-time-range-picker.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-timepicker.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/form-unit-number-input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/fullscreen-image-carousel.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/histogram-slider.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/icon.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/image-button.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/input.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/language-switcher.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/layout.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/link-list.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/local-nav.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/masthead.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/menu.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/modal.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/navbar.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/notification-banner.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/pagination.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/pill.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/popover.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/progress-indicator.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/radio-button.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/schedule.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/sidenav.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/singpass-button.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/smart-app-banner.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/tab.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/tag.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/text-list.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/time-slot-bar-week.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/time-slot-bar.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/time-slot-week-view.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/timeline.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/timetable.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/toast.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/toggle.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/typography.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/components/uneditable-section.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/patterns/setup.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/templates/form.md create mode 100644 docs/skills/cc-flagship-ds/resources/v4/templates/listing.md create mode 100644 scripts/init-skills.js diff --git a/docs/skills/cc-flagship-ds/SKILL-v4.md b/docs/skills/cc-flagship-ds/SKILL-v4.md new file mode 100644 index 0000000000..5b0644144d --- /dev/null +++ b/docs/skills/cc-flagship-ds/SKILL-v4.md @@ -0,0 +1,174 @@ +--- +name: "flagship-v4" +description: "Use when building with @lifesg/react-design-system v4 (alpha). Covers composition rules, correct import patterns, token usage, and component discovery. Apply whenever the user's package.json has @lifesg/react-design-system ^4.x." +metadata: + version: "4.0.0-alpha" + audience: external + category: design-system +--- + +# Flagship Design System v4 — Agent Skill + +You are helping build web applications with **`@lifesg/react-design-system` v4** for government digital products. + +> **Pre-release:** v4 is in alpha. ThemeProvider API and token shapes are locked; CSS URLs still reference v3 CDN paths for fonts. + +This file covers v4-specific setup and rules. For components not yet documented in `resources/v4/`, fall back to `resources/v3/` component docs — most component APIs are unchanged. + +--- + +## Install + +```bash +pnpm add @lifesg/react-design-system @lifesg/react-icons @floating-ui/react @mui/icons-material +``` + +Do not install `styled-components` — v4 uses CSS Modules for custom styles. + +Peer deps: `react` + `react-dom` (^17, ^18, or ^19). + +**If the project is new or missing setup** — read `./resources/v4/patterns/setup.md` for the full CSS/ThemeProvider/Vite walkthrough before writing any component code. + +--- + +## ThemeProvider (required) + +Every app must wrap all components in `ThemeProvider`. Without it, components throw errors. + +```tsx +import { ThemeProvider } from "@lifesg/react-design-system/theme"; +import "@lifesg/react-design-system/theme/styles/lifesg.css"; + +export default function App() { + return {/* your app */}; +} +``` + +Theme is a **string**: `"lifesg"` · `"bookingsg"` · `"ccube"` · `"mylegacy"` · `"oneservice"` · `"pa"` · `"supportgowhere"` · `"sgw-digital-lobby"` · `"careercompass"` · `"rbs"` · `"imda"` · `"spf"` · `"smgs"` · `"a11y-playground"` + +Dark/light mode: `mode` prop defaults to `"auto"` (OS preference). Override with `mode="light"` or `mode="dark"`. + +--- + +## Component imports + +Always use subpath imports: + +```tsx +import { Button } from "@lifesg/react-design-system/button"; +import { Form } from "@lifesg/react-design-system/form"; +``` + +--- + +## Page structure + +Every page must have `Navbar` at the top and `Footer` at the bottom. + +```tsx +import { Navbar } from "@lifesg/react-design-system/navbar"; +import { Footer } from "@lifesg/react-design-system/footer"; + +; +{ + /* page content */ +} +