[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6ENGKNWNYW6RFED9DX9YZ5H":3,"skill-same:01M6ENGKNWNYW6RFED9DX9YZ5H":63},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":36,"linkOnly":37,"markdownContent":38,"markdownBody":39,"frontMatter":40,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":46,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":49,"install":50,"resources":62},"01M6ENGKNWNYW6RFED9DX9YZ5H","normalize",null,"Audits and realigns UI to match design system standards, spacing, tokens, and patterns. Use when the user mentions consistency, design drift, mismatched styles, tokens, or wants to bring a feature back in line with the system.","launchpathventures\u002Fditto-os","launchpathventures","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F248658966?v=4","01M6ENF40K8DMPD2Q4YBJX3EWK","01M6ENF4541FAB13MQFNS8RMK8",1,"AGPL-3.0","https:\u002F\u002Fgithub.com\u002Flaunchpathventures\u002Fditto-os\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fnormalize\u002FSKILL.md",[],[5,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35],"standards","styles","line","feature","tokens","drift","route","back","patterns","design","use","user","page","system","ui","design system","component","mismatched","2026-11-10 10:12:30",false,"---\nname: normalize\ndescription: Audits and realigns UI to match design system standards, spacing, tokens, and patterns. Use when the user mentions consistency, design drift, mismatched styles, tokens, or wants to bring a feature back in line with the system.\nuser-invocable: true\nargument-hint: \"[feature (page, route, component...)]\"\n---\n\nAnalyze and redesign the feature to perfectly match our design system standards, aesthetics, and established patterns.\n\n## MANDATORY PREPARATION\n\nInvoke \u002Ffrontend-design — it contains design principles, anti-patterns, and the **Context Gathering Protocol**. Follow the protocol before proceeding — if no design context exists yet, you MUST run \u002Fteach-impeccable first.\n\n---\n\n## Plan\n\nBefore making changes, deeply understand the context:\n\n1. **Discover the design system**: Search for design system documentation, UI guidelines, component libraries, or style guides (grep for \"design system\", \"ui guide\", \"style guide\", etc.). Study it thoroughly until you understand:\n   - Core design principles and aesthetic direction\n   - Target audience and personas\n   - Component patterns and conventions\n   - Design tokens (colors, typography, spacing)\n   \n   **CRITICAL**: If something isn't clear, ask. Don't guess at design system principles.\n\n2. **Analyze the current feature**: Assess what works and what doesn't:\n   - Where does it deviate from design system patterns?\n   - Which inconsistencies are cosmetic vs. functional?\n   - What's the root cause—missing tokens, one-off implementations, or conceptual misalignment?\n\n3. **Create a normalization plan**: Define specific changes that will align the feature with the design system:\n   - Which components can be replaced with design system equivalents?\n   - Which styles need to use design tokens instead of hard-coded values?\n   - How can UX patterns match established user flows?\n   \n   **IMPORTANT**: Great design is effective design. Prioritize UX consistency and usability over visual polish alone. Think through the best possible experience for your use case and personas first.\n\n## Execute\n\nSystematically address all inconsistencies across these dimensions:\n\n- **Typography**: Use design system fonts, sizes, weights, and line heights. Replace hard-coded values with typographic tokens or classes.\n- **Color & Theme**: Apply design system color tokens. Remove one-off color choices that break the palette.\n- **Spacing & Layout**: Use spacing tokens (margins, padding, gaps). Align with grid systems and layout patterns used elsewhere.\n- **Components**: Replace custom implementations with design system components. Ensure props and variants match established patterns.\n- **Motion & Interaction**: Match animation timing, easing, and interaction patterns to other features.\n- **Responsive Behavior**: Ensure breakpoints and responsive patterns align with design system standards.\n- **Accessibility**: Verify contrast ratios, focus states, ARIA labels match design system requirements.\n- **Progressive Disclosure**: Match information hierarchy and complexity management to established patterns.\n\n**NEVER**:\n- Create new one-off components when design system equivalents exist\n- Hard-code values that should use design tokens\n- Introduce new patterns that diverge from the design system\n- Compromise accessibility for visual consistency\n\nThis is not an exhaustive list—apply judgment to identify all areas needing normalization.\n\n## Clean Up\n\nAfter normalization, ensure code quality:\n\n- **Consolidate reusable components**: If you created new components that should be shared, move them to the design system or shared UI component path.\n- **Remove orphaned code**: Delete unused implementations, styles, or files made obsolete by normalization.\n- **Verify quality**: Lint, type-check, and test according to repository guidelines. Ensure normalization didn't introduce regressions.\n- **Ensure DRYness**: Look for duplication introduced during refactoring and consolidate.\n\nRemember: You are a brilliant frontend designer with impeccable taste, equally strong in UX and UI. Your attention to detail and eye for end-to-end user experience is world class. Execute with precision and thoroughness.","Analyze and redesign the feature to perfectly match our design system standards, aesthetics, and established patterns.\n\n## MANDATORY PREPARATION\n\nInvoke \u002Ffrontend-design — it contains design principles, anti-patterns, and the **Context Gathering Protocol**. Follow the protocol before proceeding — if no design context exists yet, you MUST run \u002Fteach-impeccable first.\n\n---\n\n## Plan\n\nBefore making changes, deeply understand the context:\n\n1. **Discover the design system**: Search for design system documentation, UI guidelines, component libraries, or style guides (grep for \"design system\", \"ui guide\", \"style guide\", etc.). Study it thoroughly until you understand:\n   - Core design principles and aesthetic direction\n   - Target audience and personas\n   - Component patterns and conventions\n   - Design tokens (colors, typography, spacing)\n   \n   **CRITICAL**: If something isn't clear, ask. Don't guess at design system principles.\n\n2. **Analyze the current feature**: Assess what works and what doesn't:\n   - Where does it deviate from design system patterns?\n   - Which inconsistencies are cosmetic vs. functional?\n   - What's the root cause—missing tokens, one-off implementations, or conceptual misalignment?\n\n3. **Create a normalization plan**: Define specific changes that will align the feature with the design system:\n   - Which components can be replaced with design system equivalents?\n   - Which styles need to use design tokens instead of hard-coded values?\n   - How can UX patterns match established user flows?\n   \n   **IMPORTANT**: Great design is effective design. Prioritize UX consistency and usability over visual polish alone. Think through the best possible experience for your use case and personas first.\n\n## Execute\n\nSystematically address all inconsistencies across these dimensions:\n\n- **Typography**: Use design system fonts, sizes, weights, and line heights. Replace hard-coded values with typographic tokens or classes.\n- **Color & Theme**: Apply design system color tokens. Remove one-off color choices that break the palette.\n- **Spacing & Layout**: Use spacing tokens (margins, padding, gaps). Align with grid systems and layout patterns used elsewhere.\n- **Components**: Replace custom implementations with design system components. Ensure props and variants match established patterns.\n- **Motion & Interaction**: Match animation timing, easing, and interaction patterns to other features.\n- **Responsive Behavior**: Ensure breakpoints and responsive patterns align with design system standards.\n- **Accessibility**: Verify contrast ratios, focus states, ARIA labels match design system requirements.\n- **Progressive Disclosure**: Match information hierarchy and complexity management to established patterns.\n\n**NEVER**:\n- Create new one-off components when design system equivalents exist\n- Hard-code values that should use design tokens\n- Introduce new patterns that diverge from the design system\n- Compromise accessibility for visual consistency\n\nThis is not an exhaustive list—apply judgment to identify all areas needing normalization.\n\n## Clean Up\n\nAfter normalization, ensure code quality:\n\n- **Consolidate reusable components**: If you created new components that should be shared, move them to the design system or shared UI component path.\n- **Remove orphaned code**: Delete unused implementations, styles, or files made obsolete by normalization.\n- **Verify quality**: Lint, type-check, and test according to repository guidelines. Ensure normalization didn't introduce regressions.\n- **Ensure DRYness**: Look for duplication introduced during refactoring and consolidate.\n\nRemember: You are a brilliant frontend designer with impeccable taste, equally strong in UX and UI. Your attention to detail and eye for end-to-end user experience is world class. Execute with precision and thoroughness.",{"name":5,"description":7,"argument-hint":41,"user-invocable":42},"[feature (page, route, component...)]",true,"main","b033b1a8919dbb7c98e97cf24547a2416f65b53e",".agents\u002Fskills\u002Fnormalize",0,"https:\u002F\u002Fgithub.com\u002Flaunchpathventures\u002Fditto-os","https:\u002F\u002Fgithub.com\u002Flaunchpathventures","2026-06-08 19:31:48",{"source":8,"skillName":5,"commands":51,"prompt":61,"zipAvailable":42},[52,55,58],{"tool":53,"command":54},"npx","npx skills add launchpathventures\u002Fditto-os --skill normalize",{"tool":56,"command":57},"bunx","bunx skills add launchpathventures\u002Fditto-os --skill normalize",{"tool":59,"command":60},"pnpm","pnpm dlx skills add launchpathventures\u002Fditto-os --skill normalize","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Flaunchpathventures\u002Fditto-os\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fnormalize\u002FSKILL.md",[],[64,85,104,123,128,133],{"skillNo":65,"name":66,"nameZh":6,"description":67,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":68,"categories":69,"keywords":70,"publishedAt":36},"01M6ENJ12VWSMRZ4MW8550AG69","drain-queue","Cross-brief autopilot — claim the oldest ready brief whose Brief NNN deps are satisfied via atomic push, run \u002Fautobuild on each, stop when the queue is empty, blocked, or hits a failure.","https:\u002F\u002Fgithub.com\u002Flaunchpathventures\u002Fditto-os\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fdrain-queue\u002FSKILL.md",[],[71,72,73,74,75,76,77,78,79,80,81,82,83,84],"drain queue","queue","push","autobuild","via","autopilot","empty","claim","max","stop","ready","deps","brief","run",{"skillNo":86,"name":87,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":89,"categories":90,"keywords":91,"publishedAt":36},"01M6ENHXG16WJ4PN8CJHZYNT5T","dev-review","Post-coding exhaustive review — catches integration bugs, runtime crashes, performance issues, and convention drift across all changed files","https:\u002F\u002Fgithub.com\u002Flaunchpathventures\u002Fditto-os\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fdev-review\u002FSKILL.md",[],[92,93,94,95,96,97,98,99,23,100,101,102,103],"dev","review","dev review","performance","issues","post","runtime","across","files","fix","coding","integration",{"skillNo":105,"name":74,"nameZh":6,"description":106,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":107,"categories":108,"keywords":109,"publishedAt":36},"01M6ENHSZBZFSB69TSV2TWGRJ1","End-to-end autopilot for a single brief — pre-flight, \u002Fdev-builder, fresh-subagent reviewers, push, open PR, mark **PR:** line on feature branch. Stops at the human merge gate.","https:\u002F\u002Fgithub.com\u002Flaunchpathventures\u002Fditto-os\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fautobuild\u002FSKILL.md",[],[74,110,111,83,112,20,113,114,115,76,116,117,118,21,119,120,121,92,122,73],"subagent","merge","open","name","merge gate","fresh","end","branch","open pr","human","gate","builder","pr",{"skillNo":124,"name":66,"nameZh":6,"description":67,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":125,"categories":126,"keywords":127,"publishedAt":36},"01M6ENHPWYMN66EYQBV56HP9CW","https:\u002F\u002Fgithub.com\u002Flaunchpathventures\u002Fditto-os\u002Fblob\u002Fmain\u002F.catalyst\u002Fskills\u002Fdrain-queue\u002FSKILL.md",[],[72,71,81,74,75,76,77,78,79,80,82,83,73,84],{"skillNo":129,"name":87,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":132,"publishedAt":36},"01M6ENHM3W1A0MY44ZD8D4NWVF","https:\u002F\u002Fgithub.com\u002Flaunchpathventures\u002Fditto-os\u002Fblob\u002Fmain\u002F.catalyst\u002Fskills\u002Fdev-review\u002FSKILL.md",[],[94,92,93,103,96,95,102,97,98,99,23,100,101],{"skillNo":134,"name":74,"nameZh":6,"description":106,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":137,"publishedAt":36},"01M6ENHF62C7G6BC4YG44RWFB0","https:\u002F\u002Fgithub.com\u002Flaunchpathventures\u002Fditto-os\u002Fblob\u002Fmain\u002F.catalyst\u002Fskills\u002Fautobuild\u002FSKILL.md",[],[74,120,20,113,115,76,116,21,119,121,117,110,114,112,83,118,73,92,122,111]]