{"_id":"ux-ui-agent-skills","_rev":"26-d1d228d20058a373ca83562b0709a6a0","name":"ux-ui-agent-skills","dist-tags":{"latest":"3.1.0"},"versions":{"1.1.0":{"name":"ux-ui-agent-skills","version":"1.1.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"name":"plugin87"},"license":"MIT","_id":"ux-ui-agent-skills@1.1.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"3dae7aed2c52eaac09728f637de6a1a1980273cc","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-1.1.0.tgz","fileCount":203,"integrity":"sha512-lGbJ6MVeU89H2/cppbUxkBK9U4OnOGSyEfQhGlPlhTbY7Hi8PQ+8TxzJyP+5NnOsYUsxafVjJ4HjCB09R5FZZw==","signatures":[{"sig":"MEQCIHT5WlxN9uO7jPmBZTg2yMN3lXf8lbb/nepRaVp5w/YgAiACqU3sr2HcZAOql6SkqPf5aj/kGwaBHli0n17/+NfTGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1861609},"type":"commonjs","engines":{"node":">=16"},"gitHead":"61778557cbb249ea667314dd375a4bf2fb6e2a5a","scripts":{"test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 42 components, WCAG 2.2 accessibility, any-framework code, 138 design systems, and runnable skills. Install into any project with npx.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_1.1.0_1780770516885_0.7068759799930007","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"ux-ui-agent-skills","version":"1.2.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"name":"plugin87"},"license":"MIT","_id":"ux-ui-agent-skills@1.2.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"fb4f9158a6a15a9af7a71029659a71aaec0dd988","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-1.2.0.tgz","fileCount":222,"integrity":"sha512-BDUONLzrISKwkkavjQFrcP0TkXohRnZ8hpdRKm7U44nkQOul+IgzDhoyVYpXCfX2cajLcql7at5A/1Y/9DJapQ==","signatures":[{"sig":"MEUCIQCxYSm2IB96CJRhMuzIHRBcJaS2ERNLxxk7cK60hvVQuQIgFidwnh/KSnxhofXdzG9ZOp2tS+b/St203sXmYsZMAIc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1930589},"type":"commonjs","engines":{"node":">=16"},"gitHead":"a1a3a5d0364f4dda34936a0fd65113b3f5e7a96e","scripts":{"test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, any-framework code, 138 design systems, governance & token-build pipeline, and runnable skills. Install into any project with npx.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_1.2.0_1780895485854_0.7801004894640358","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"ux-ui-agent-skills","version":"1.2.1","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"name":"plugin87"},"license":"MIT","_id":"ux-ui-agent-skills@1.2.1","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"73e809eacdd7a5b589cbba5f6aa5c9a7f11b97e8","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-1.2.1.tgz","fileCount":222,"integrity":"sha512-kTMedVOf/cGX2ApW4xjeI2Sf2uhtm+/WGgLNmES6YkiAwoKYE99lkGDWpegnmg+3FyxaIa5rX/cr5JbpdNrJGw==","signatures":[{"sig":"MEUCIQD3ZkCyTVjA8gc/FzUaLok0hisXxwSHf5szW3aqhRiEKAIgIZp7fBSXh9ksnjVSR0YdhVDkEC/1kw0kZLFIS40tNgQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1931199},"type":"commonjs","engines":{"node":">=16"},"gitHead":"28241de06b3dc19eddbf5f7994557b95959eb712","scripts":{"test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, any-framework code, 138 design systems, governance & token-build pipeline, and runnable skills. Install into any project with npx.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_1.2.1_1780897057905_0.7930389925977532","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"ux-ui-agent-skills","version":"2.0.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"name":"plugin87"},"license":"MIT","_id":"ux-ui-agent-skills@2.0.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"aec3c6a55b2f433269ef0c6c9f25b5d14cedcf7d","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.0.0.tgz","fileCount":237,"integrity":"sha512-DaUDPHjSUAzltzpPSzS91opVKB7gd3kvLjgdWgkIl3Q6m+YcagKdnp0Ke/95axBu9EjgQG6NbrDQFZWIP9tk3g==","signatures":[{"sig":"MEUCIQDaOmy5cBPhNnEZMWkTMyltlz44dDPlcSUQT4d85yMCAAIgHDtE9qva+XQ+TAj4QErE+Q/yBCtiY2oWKodljEXTBV4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1988844},"type":"commonjs","engines":{"node":">=16"},"gitHead":"8c721656bea53436886033c28f51801f1286d2c1","scripts":{"test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.0.0_1780901291942_0.4600234055437682","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"ux-ui-agent-skills","version":"2.1.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"name":"plugin87"},"license":"MIT","_id":"ux-ui-agent-skills@2.1.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"2bd6b82598f4880a91394e686d1f1917ff3c9d4e","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.1.0.tgz","fileCount":248,"integrity":"sha512-APqNbLFNk7kThjktX2+gJ/C1dxxcCTFXF4NGaKYQ1RSqMqg3WG0KzFwYjIrRL0YKX+I2HHXC+puHf4DUICkQdg==","signatures":[{"sig":"MEUCIQCfO8FccKomGlBoCjZocUBex3hGRpKrok5i0ojLnMy8aAIgPb1IqrnJtcp9CFnElaszWzkjmd+Moqce6kqcSfNJ77w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2045273},"type":"commonjs","engines":{"node":">=16"},"gitHead":"838bd6238645c4c88dc8b66c6a6e5c4f63903e55","scripts":{"test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py","verify":"node scripts/accuracy_report.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.1.0_1780906646632_0.8944857891704654","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"ux-ui-agent-skills","version":"2.3.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"name":"plugin87"},"license":"MIT","_id":"ux-ui-agent-skills@2.3.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"c4ac22a409c5ab600607837291e353ff2d55af2e","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.3.0.tgz","fileCount":282,"integrity":"sha512-fnTxYW/6+9PoU3S5dY2hmcbUGeUJCO8DIlfkbK/g5qROHWt5PLTkwfMncZHhzTx9AU0vQekTZCn+RuMB7kF8gA==","signatures":[{"sig":"MEYCIQC1pOOEbeoD+RvzWliYnYNzVUDaUAPBEa3hC31cWe4ybgIhAOD8tJ5DbFhMPoiJWVFQPEeyDqy7kLiG2OlXrB78LW5y","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2234225},"type":"commonjs","engines":{"node":">=16"},"gitHead":"975d93f1d05ee09a4bb30869edea63ba8a9917a6","scripts":{"test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","test:focustrap":"node scripts/verify_focustrap.mjs"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.3.0_1781079645096_0.42880781244059607","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"ux-ui-agent-skills","version":"2.3.1","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"name":"plugin87"},"license":"MIT","_id":"ux-ui-agent-skills@2.3.1","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"1ae59f424a5bc49a537d721b388170e3bfde81f2","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.3.1.tgz","fileCount":282,"integrity":"sha512-p8vc616BGL/3/UnveFIrSCD8euENmRkEhwF5I3FaTFrEVt02W1PSSRooaUC92SiVBtIOdMV4u8UGdn0G7RZ/8w==","signatures":[{"sig":"MEYCIQDV1Nz3CQ9s7iFPwrt2/wnpB7+6w8de4xK09DKZUfHSuQIhAOCoEK1n9xkr15BnjNQu319Z1MkV3t8qCWs1X2MfFHWr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2236589},"type":"commonjs","engines":{"node":">=16"},"gitHead":"55c9347ce2a158f8f6ee786511f44bd8a8b711e8","scripts":{"test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","test:focustrap":"node scripts/verify_focustrap.mjs"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.3.1_1781190831747_0.5483318710582161","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"ux-ui-agent-skills","version":"2.4.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"name":"plugin87"},"license":"MIT","_id":"ux-ui-agent-skills@2.4.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"263ee07547d289e0812efe25890e8521a16bbdd6","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.4.0.tgz","fileCount":283,"integrity":"sha512-cLdfEM96Js96iO2HDu7tUDmiJfPFmWPRqj0hIB+kVrlFqfUqzPpfnpu8UVglMywJITVEa0HjW7vu1wVtfilicQ==","signatures":[{"sig":"MEUCIQDBb7cGIQR3wkbY2UsjjRBtGhGQAjh8eXwySZ+GlhS1YwIgM/22LegsMMn2HR4e5uzqA8P4AfZntmYGkpChde31m3w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2248277},"type":"commonjs","engines":{"node":">=16"},"gitHead":"93a7fbbdb3f19016fc2ea01eeec48a3895045be1","scripts":{"test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","test:focustrap":"node scripts/verify_focustrap.mjs"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.4.0_1782097658308_0.1202466598600127","host":"s3://npm-registry-packages-npm-production"}},"2.5.1":{"name":"ux-ui-agent-skills","version":"2.5.1","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"name":"plugin87"},"license":"MIT","_id":"ux-ui-agent-skills@2.5.1","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"8c9fc36e3c83f8c19f7c3949c4384977865e01cb","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.5.1.tgz","fileCount":319,"integrity":"sha512-Nr+X1b3qEp2YARu0IMWxQsLgkj1pCyQTW5ahQpRkKFxLkRr+QkkXmlNyC0ZkAVUooyuOCpBCZ4WbNT3QvZTRJA==","signatures":[{"sig":"MEUCIG6H+JLTv+IV4oZvvvkgKw3VRdRwK7Cjs7CH7Se0CNOsAiEA94wmIMsmvACb6q/gTv0EN0v6QPlEJ39gK9w8rwDzghE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2455141},"type":"commonjs","engines":{"node":">=16"},"gitHead":"e2d77073784a97728c9986f45a6a93b871646c75","scripts":{"eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.5.1_1787757757067_0.12811162439925705","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"ux-ui-agent-skills","version":"2.7.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.7.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"d5f3621731243962d1b4a5b636c6205c379b03d7","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.7.0.tgz","fileCount":327,"integrity":"sha512-xxrH+Fj/otI+X/omtYffahAOxvAo+UGEAkdT6zyn79xWhuhNcsaHvBKdKnXzkYd9Np9icrdwi5EeVz17SYJleg==","signatures":[{"sig":"MEUCIQCIBjLTQOjFJ9Rw2p3480takIo9cv/gq0kSKAevqbJ01QIgMeWxC/MUoKN1dnEUZxnNQO2TPcnq02jotww2YQ+wBBs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDodO0F0X5y/a5qUr0dpWb5I2tQV24Nx81VfwxYCX52mgIgFIf/mB5Kd+F/2Y2nV2BqPeWF7QqwxmCNvHw1zNjLmks=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2511481},"type":"commonjs","engines":{"node":">=16"},"gitHead":"e84ab38545f5d2259dad68ea774f5d6294a861fd","scripts":{"eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.7.0_1789372137563_0.6752358878081837","host":"s3://npm-registry-packages-npm-production"}},"2.7.1":{"name":"ux-ui-agent-skills","version":"2.7.1","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.7.1","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"ae0dcd8e5a214e82fbd241682262c1f8cb9e8510","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.7.1.tgz","fileCount":325,"integrity":"sha512-7ZwHEoqQPgHgh+QSgKEc9qB6tGHjwVgV5dwINMZjfu8A7VH6YlFPrqSp116vW865ch6pAqqjlDVQpRbuPVjXSg==","signatures":[{"sig":"MEQCICKJig+F5FDq24ECJLTIMUVEPgcvcbjc+rzLjWnNUi0hAiAf4WS4x2z+0cVOc3wOEaYr8mJ9qn4dglrRUrUUf13wNA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHntkNK4aJ0TwCYZQWhSr6h8Zq3KSnpoTIdcSGN7rbxHAiAM7ucapj6EyOUiMWuMFDJJtUdfhXboIpaYbLM8T0skJg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2499864},"type":"commonjs","engines":{"node":">=16"},"gitHead":"7a702e5534e78368fbf47492b52013036055c360","scripts":{"eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.7.1_1789373158510_0.04016959828419786","host":"s3://npm-registry-packages-npm-production"}},"2.8.0":{"name":"ux-ui-agent-skills","version":"2.8.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.8.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"f48fb9dcae56bb621be9209e0b2d3bff6c098379","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.8.0.tgz","fileCount":381,"integrity":"sha512-QbietnXUwA0tfgeM3zjx3Dq90mxSoycqTDPmjJp3ep1zWTwBD1S2y7vGVaTDgkByDIFu9JL3dEXdZe4q4A/jXA==","signatures":[{"sig":"MEYCIQCwOYhVTDqPTl/OgOk5HbDptf5bAmt2H0eLO131CiKuegIhANvZc/iR0Y9BlWsDvpUI0mBnQ4tzZ7Xpmx7dpoasIIJM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDdY4Yo5s7NOpHqMPzi+OlO980WtEik6+tV9TePsvkWpAiAHgmOavz4/8hEEcH8Ghw0S3FwEgLjCm5fK4FMq+P018Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5906510},"type":"commonjs","engines":{"node":">=16"},"gitHead":"d772953c7bedc1b7b3e8da0e432feb91d31120e3","scripts":{"eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.8.0_1789449807977_0.7133862633200401","host":"s3://npm-registry-packages-npm-production"}},"2.9.0":{"name":"ux-ui-agent-skills","version":"2.9.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.9.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"8721479ea106b4039236e36d9e92430ff0bff6a9","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.9.0.tgz","fileCount":398,"integrity":"sha512-DHR9Mt6cX/MVyjyVFikQ/WSPviRuEwgp8hhmSb9H5qjrh3o1oHnVoX2K3lIjo6kSeonhhkO+XR0UGJ3yseeLgw==","signatures":[{"sig":"MEUCIEq+PE7jRwqNe+7t8VpanqM9x0W/Dw4kWYv7vCf7mxeXAiEAtJh5PBoLuq/9nxy+BlZB3duMZqKVz4PhMFdOeHDq6fo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCd40y29/L7eUDFGrmswiSzfL7S1599NoSxlMf7m4mK1AIhAOJkTqgUAl9FSnqXihkwZCKFP7nZJeJlYRW+crg6d18w","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6216078},"type":"commonjs","engines":{"node":">=20"},"gitHead":"8d7ee6d51fdf66ef58737c66dec29c4e3768ece5","scripts":{"eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 50 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.9.0_1791287853617_0.8992919027810753","host":"s3://npm-registry-packages-npm-production"}},"2.9.2":{"name":"ux-ui-agent-skills","version":"2.9.2","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.9.2","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"facf5c72cd1f7cf6fe1769eca7afbacc8fec7278","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.9.2.tgz","fileCount":402,"integrity":"sha512-ElErHoy4u/Uzqsf+HIZCCq70SqwjnNUSsYJ8PMqcN2Rc28z2B2Y1zz98WX4Eb8Dw3hFtUEqmMaFTvacaR+lz5g==","signatures":[{"sig":"MEUCIBQKhPwB+He4rwgltYlxGlkgWrpJ1jrgDdR4Kk3FFcXLAiEAyBOCWD7S3mnwTQjhvqpO8CHMV6MdlgfOVdwPvGMZHVs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDvUZvzfGIZaBXNIiMk42wAlAfoyFcI8MKZgICFTIddHAiEAgEA6AQP2ij7x0wvXV0y8mDZVeKGD5ml/JPI+xxByg+U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6248158},"type":"commonjs","engines":{"node":">=20"},"gitHead":"e8dd339bb04415772e6e33720b7f60a40a072e46","scripts":{"eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"plugin87","email":"pannana1198@gmail.com"},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.9.2_1791335028902_0.20733525838762823","host":"s3://npm-registry-packages-npm-production"}},"2.9.3":{"name":"ux-ui-agent-skills","version":"2.9.3","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.9.3","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"0ebc32bb8eac6fa39a581279802d2c0bcaa8d26b","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.9.3.tgz","fileCount":402,"integrity":"sha512-NJuM6JSLhmjlMC4c4wmYMY+QF9whqJFteevCyl82ABcvMFtuKBNcj2kDHL2qNCthUfmITTYv1NKq9eu7I2s/Gw==","signatures":[{"sig":"MEUCIQDaijlpo3NI/4VBzV84TpdqUGQGVnuksWmzPCV1LorodAIgAawD6GNeCKnrhVpcfVOpFEn1RTHKPFngbYMdmuzPTE4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIH2lEGWUmMno9Ok61CVfm78xf5Q1JwwbxipTxPCIhebfAiBqRybajz8vl+DrwmvNOmmnH53HeC6w7P3m4aaJE3yxKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@2.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6248997},"type":"commonjs","engines":{"node":">=20"},"gitHead":"87944ebb1db8eb4803738e3b70c8cafbdb85000e","scripts":{"eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.0","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"22.23.3","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.9.3_1791335373184_0.3724117992759288","host":"s3://npm-registry-packages-npm-production"}},"2.9.4":{"name":"ux-ui-agent-skills","version":"2.9.4","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.9.4","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"54c8b258827f9ead04f6fca8ed83af31c800a248","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.9.4.tgz","fileCount":404,"integrity":"sha512-wdEGfQoWeQC6UmKL/nb46cP7AmiBAMiUfC2K3dEGvK3Ck/TVu2PW1Z0QfLz9TkNuDY1drr9lpS6Y5ovwh8l7OA==","signatures":[{"sig":"MEQCIFo+n07eY0iwL70qyUUETpEntlejhCUEFPsiWVImxV5oAiBlaXD2BRDpSdjz62w5kASA3p89WW6naTB05SZcrAXJNQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDHKctANfykcuG1IqvWBIGtQKC6SIU0+58LiiuGAR85hgIhAKvSUuyKwN85GdGd0lgo0TFrqOIgk5+GpNvZ0dfUkioJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@2.9.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6259941},"type":"commonjs","engines":{"node":">=20"},"gitHead":"44f0c7a130c866102080df999708ed5a73d0851b","scripts":{"eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.0","description":"Turn Claude into a Senior Design Architect — DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design system","directories":{},"_nodeVersion":"22.23.3","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.9.4_1791336792823_0.9894771694873294","host":"s3://npm-registry-packages-npm-production"}},"2.9.5":{"name":"ux-ui-agent-skills","version":"2.9.5","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma","codex","agents-md","cursor","github-copilot","homebrew"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.9.5","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"b2cf2aa6ddfac8f5b9ebea99b916cde7535e4e3e","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.9.5.tgz","fileCount":404,"integrity":"sha512-yn6cNIJRAq2y5xjELd5iALrTAOMjJRJCQ66sP84Uip+HLzJMPxu3NggPcElQ27L9d5s8cKTLumQHzwOV/VUvHg==","signatures":[{"sig":"MEUCICUQg0PTIzdmpOQ+6FLehA7wa2W8bUxOmefvBzKzIsuYAiEAvq5xhyHUeLnVSFjsUp7wShxtimAZetTBLPyEPQsA6IQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIG452dXBzULFIGw/+xrJ6Xo3oQEfBQu/mLXobQO1ea7UAiEA0QuMD40AsJW68Vny1KepBLyeI743S5xvYmRcuhQAJzo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@2.9.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6268808},"type":"commonjs","engines":{"node":">=20"},"gitHead":"de781c0cacabcd77dc1cfc5ecedcf43317095c0a","scripts":{"eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.0","description":"Design-system kit for coding agents — DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design systems, 51 o","directories":{},"_nodeVersion":"22.23.3","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.9.5_1791427381199_0.9033983160808221","host":"s3://npm-registry-packages-npm-production"}},"2.9.6":{"name":"ux-ui-agent-skills","version":"2.9.6","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma","codex","agents-md","cursor","github-copilot","homebrew","mcp","model-context-protocol","mcp-server"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.9.6","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-mcp":"mcp/server.mjs","ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"c332226cba7448a684082d1deba75c6bfd8c0391","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.9.6.tgz","fileCount":410,"integrity":"sha512-mvXCZrH3Z5wlsmmCdlyQzIVACPqKNC2xJEkaM0VGfslYI9X33ccMx9WGd0ilVmfn/s0SVH2zvgczfIfzC+5uyw==","signatures":[{"sig":"MEYCIQDXbNMBkA3m5OgPAoFLh4zihkzx+oYDb9v+rtFktXnaMAIhANNV8A26HOiALnqc6Mo4JswmFR7mTFH3XRILqg0iv4Tx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAh/YqytG8tKbPAoYWGCu6+VvjiSm7Ykqu2LU5S5tgQ1AiEAjT9MXqwEV+z4yu7BzC7LgA0V7cAbVcV/BnjpGz0KYbM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@2.9.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6332423},"type":"commonjs","engines":{"node":">=20"},"gitHead":"281235f0a0f5ad4eff9c9431728dac640d6083fb","scripts":{"mcp":"node mcp/server.mjs","eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:mcp":"node mcp/server.mjs --selftest","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.0","description":"Design-system kit for coding agents — DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design systems, 52 o","directories":{},"_nodeVersion":"22.23.3","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.9.6_1791433535549_0.9841440217955055","host":"s3://npm-registry-packages-npm-production"}},"2.9.7":{"name":"ux-ui-agent-skills","version":"2.9.7","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma","codex","agents-md","cursor","github-copilot","homebrew","mcp","model-context-protocol","mcp-server"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.9.7","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-mcp":"mcp/server.mjs","ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"5b1f43254664d910b91fc1a32262a2b9ef776f7a","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.9.7.tgz","fileCount":412,"integrity":"sha512-M8y6UHrUTN8AlxAT5Q7eu5wK6LmkIsYshmXS8dRTBcVl2aC87LUo8e0EocK/bKOnxu6O2fpi/uwCDv3MHaDR7g==","signatures":[{"sig":"MEUCIFhGJgU6nmjX9pxcX/Ga0qY7oTDOliJ+buwwusB9o5LgAiEAkEAyWN01vgMTy9eiLGPCzkkeGK8T9hLGS5bXtOSyiZk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIELqiF+tRz1iGTBRCnvYtWx0nBhzqvEMmYD59r5d5qTtAiEA36swdHGc7ySpua8U9z3MubsoEMr+p5RmumsFYmsbZgU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@2.9.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6355971},"type":"commonjs","engines":{"node":">=20"},"gitHead":"c5c2fd3ef5d1e17e05799bf9909b00bebe789018","scripts":{"mcp":"node mcp/server.mjs","eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:mcp":"node mcp/server.mjs --selftest","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.0","description":"Design-system kit for coding agents — DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design systems, 52 o","directories":{},"_nodeVersion":"22.23.3","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.9.7_1791628538849_0.48192083938808095","host":"s3://npm-registry-packages-npm-production"}},"2.9.8":{"name":"ux-ui-agent-skills","version":"2.9.8","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma","codex","agents-md","cursor","github-copilot","homebrew","mcp","model-context-protocol","mcp-server"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.9.8","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-mcp":"mcp/server.mjs","ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"8e0e57c9a654da66f9ab9db9cb649388f9f9ed66","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.9.8.tgz","fileCount":412,"integrity":"sha512-MbHiyL6WmOYSXtmuCgKOk9xXRnyxtIGf8WJf6nV7ELXY+SQibD9W6mJuydvwKpQRfrItUMty9j2NORL3FF8hsg==","signatures":[{"sig":"MEYCIQC0jJ8AWjni8YD6s9qGAmpMJ7MfEiQv7G+njfeTFj19wgIhAI6Di1U6mmuI1QgSwK8D7l69oTqp/CCRfADl5Xokmv5w","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDTCC1/cIcqNRfbMzOupDRrMg5p5JQX937R6K4hiX40/AIhAKSISh0gA3RazmFXUD9pweGLdBdWj2erWl0jYLHK3V6P","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@2.9.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6358201},"type":"commonjs","engines":{"node":">=20"},"gitHead":"62092bd83bc3df0bcb9a2b3b643305ab11c547da","scripts":{"mcp":"node mcp/server.mjs","eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:mcp":"node mcp/server.mjs --selftest","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.0","description":"Design-system kit for coding agents — DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design systems, 52 o","directories":{},"_nodeVersion":"22.23.3","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.9.8_1791649285151_0.5192065993346824","host":"s3://npm-registry-packages-npm-production"}},"2.9.9":{"name":"ux-ui-agent-skills","version":"2.9.9","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma","codex","agents-md","cursor","github-copilot","homebrew","mcp","model-context-protocol","mcp-server"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.9.9","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-mcp":"mcp/server.mjs","ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"9c080a9ce643f4be47812880d71484da4ce8cfe1","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.9.9.tgz","fileCount":414,"integrity":"sha512-fAVecQGANkJXAfnelBKkwM+bZjmqtnWD1WyB8Z9bDJJGS5Rq6o30N0Bs4ZrWoQ5Pg4KWtuOgPbc0JJaDBAEE0A==","signatures":[{"sig":"MEQCIExOlCiA60j3cKMioRe0KLDY2qz5NPTMkPM+MFgem4BhAiA0sHJyTLI5/qDKMT3nR9tk0dsf4BMJnuQ7iMrGQS0l/w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDFUCT3uDj9KPKM9LqHeSBgDBr4YMqdplXEdG0m4iYemQIhAN4nfZ/5TlWHK5ecZCALLAW0JWFB476OFHtxkhh9UcHd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@2.9.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6387846},"type":"commonjs","engines":{"node":">=20"},"gitHead":"680e10547d87621aacb097fc654564f9ceea9eb8","scripts":{"mcp":"node mcp/server.mjs","eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:mcp":"node mcp/server.mjs --selftest","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"deprecated":"Cut from the wrong branch; use 2.9.10","repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.0","description":"Design-system kit for coding agents — DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design systems, 52 o","directories":{},"_nodeVersion":"22.23.3","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","axe-core":"4.10.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.9.9_1792407718617_0.5126989906019304","host":"s3://npm-registry-packages-npm-production"}},"2.9.10":{"name":"ux-ui-agent-skills","version":"2.9.10","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma","codex","agents-md","cursor","github-copilot","homebrew","mcp","model-context-protocol","mcp-server"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.9.10","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-mcp":"mcp/server.mjs","ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"2a6a94a85be4f22da046860b86b2ddca51f1959e","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.9.10.tgz","fileCount":413,"integrity":"sha512-h02QuufY2dIrajhb7BYZ2utSB/SHBYHcAReVT6+yjN+QtkKU6OrQ+Lyi84okZSD5xJ84JNrWS5omyYNUT2AYOA==","signatures":[{"sig":"MEUCIGrhtEJM8kiDLGJkvU4DZWHSqV2bk0+XZ97kaH94cpbvAiEAo7tphB+dpSDpRiyUCrbl6LU70yBtsKZrHO1x3jdXF9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD8XekEyHk9xkm9J4ugn8IRP2HEgjQhuSplEkxYBAqtcQIgG9g6x0OVgVe7++bFXjfGWtSeAXJqDwZJ/fi7EDfWNRo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@2.9.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6367414},"type":"commonjs","engines":{"node":">=20"},"gitHead":"d271880757842ea3bee70d958cab80da5621eb81","scripts":{"mcp":"node mcp/server.mjs","eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:mcp":"node mcp/server.mjs --selftest","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.0","description":"Design-system kit for coding agents — DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design systems, 52 o","directories":{},"_nodeVersion":"22.23.3","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","axe-core":"4.10.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.9.10_1792415358737_0.9971225224757856","host":"s3://npm-registry-packages-npm-production"}},"2.10.0":{"name":"ux-ui-agent-skills","version":"2.10.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma","codex","agents-md","cursor","github-copilot","homebrew","mcp","model-context-protocol","mcp-server"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@2.10.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-mcp":"mcp/server.mjs","ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"c32029a7f96d90fe8cd477990e61ae736897f84a","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-2.10.0.tgz","fileCount":416,"integrity":"sha512-Cz0WX7wkOyBlPs2rpc7BUcUm3lVzkZWecrKkEKRUp/aMy5wzGaJxCkdmO4hiDLoFIMOruSBZB8EGUqodFB4UZQ==","signatures":[{"sig":"MEQCID/F4JR780icguvBTOQI2LEtPzSZ1PEbCUWjaBcb7HCtAiBA3xm7P3unaGRHDE9MHy6+lBtstCzHlilpWiP5aoHrSA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDiBy+JyhOxFJgUL9GmW1w7fbloOx7FnogkdRuHhFef8AIgO+OTyolz43MNPOCRFoTR53si3x/fpne+oONSFIqIFgY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@2.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6401000},"type":"commonjs","engines":{"node":">=20"},"gitHead":"1a050ebc51f7c9136a2fc49e41aba5ed44eca71f","scripts":{"mcp":"node mcp/server.mjs","eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:mcp":"node mcp/server.mjs --selftest","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.0","description":"Design-system kit for coding agents — DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 138 design systems, 52 o","directories":{},"_nodeVersion":"22.23.3","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","axe-core":"4.10.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_2.10.0_1792483596150_0.23034063299853624","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"ux-ui-agent-skills","version":"3.0.0","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma","codex","agents-md","cursor","github-copilot","homebrew","mcp","model-context-protocol","mcp-server","gemini-cli","gemini-extension","antigravity"],"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","_id":"ux-ui-agent-skills@3.0.0","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"bin":{"ux-ui-mcp":"mcp/server.mjs","ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"dist":{"shasum":"ee57d2da2f5db4f3e41aa590cc88c52a78f9fb4e","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-3.0.0.tgz","fileCount":283,"integrity":"sha512-GVXj15T6g1mBwoGBDHtJj8Ejx+808fU5b5Lye7vGcz2sKlujJiMr9X1rCYjyfmraoRG5MMazlBCbOpjdXSRa6A==","signatures":[{"sig":"MEUCIQDCGLETAFXIRZ+cCEbk7XTftXjtNDaJ3EjmSqNf/vKwmAIgZdsWwfIBYqDlYFCIgW9Lm2Shl2gblK+TK1QXQaGg9pQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCCe42ktRGiAKox7Ot5ag9BpqP18o6XUi8vCLkcVIF40QIgVa+xLF2xIoJLUNrKq8WwdvTJFm3BhiLy5Arg6GnRZm0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@3.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6129907},"type":"commonjs","engines":{"node":">=20"},"gitHead":"d2b6c323a09ba90b007cc633b36d22386df1af54","scripts":{"mcp":"node mcp/server.mjs","eval":"node evals/run.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","test:axe":"node scripts/axe_audit.mjs","test:mcp":"node mcp/server.mjs --selftest","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.1","description":"Design-system kit for coding agents: DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 2,144 design systems, 52 ","directories":{},"_nodeVersion":"22.23.3","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","axe-core":"4.10.2","react-dom":"^19.3.0","playwright":"^1.40.0"},"_npmOperationalInternal":{"tmp":"tmp/ux-ui-agent-skills_3.0.0_1792975462756_0.9941801204260041","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"_id":"ux-ui-agent-skills@3.1.0","bin":{"ux-ui-mcp":"mcp/server.mjs","ux-ui-skills":"bin/cli.js","ux-ui-agent-skills":"bin/cli.js"},"bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"dist":{"shasum":"c947b53d3c262a3381a5cc65b45324018e412c8d","tarball":"https://registry.npmjs.org/ux-ui-agent-skills/-/ux-ui-agent-skills-3.1.0.tgz","fileCount":312,"integrity":"sha512-CZC1E4v0cwcShjlJqOQYpsFKkEGAhdYQACYDAaI4Gl/3ABkWGt5b0Egmy4uk8P21gWMKjM0YWbG02DILp9f1/w==","signatures":[{"sig":"MEQCIFhI32eo5hVvTIGOXedPGjYm0cKDUBWq+yav4W0mF37yAiAm3OIKnf2YnToRxZ+BaGtmEmDOuvSSAfep6sgNBq78+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCMJ6BC6rWt/KLNyeyyos/JmJ7pYvjZrhQmX7hZU6mttQIhAO0Yy5FAzYt1aNQ8wrHHGDTySvpoASEK5kKC7cq9VSF7"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ux-ui-agent-skills@3.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7494769},"name":"ux-ui-agent-skills","type":"commonjs","author":{"url":"plugin87","name":"Thientan Soparat"},"engines":{"node":">=20"},"gitHead":"137246daec5b8a0d4c8b7b4f942de3388efb18b1","license":"MIT","scripts":{"mcp":"node mcp/server.mjs","eval":"node evals/run.mjs","pins":"node scripts/pin_version.mjs","test":"node bin/cli.js list >/dev/null && python3 scripts/validate_tokens.py && python3 scripts/validate_contrast.py && python3 scripts/validate_component_spec.py && python3 scripts/lint_hardcodes.py examples/golden && python3 scripts/validate_theme_refs.py && python3 scripts/check_no_emoji.py && python3 scripts/check_links.py && node scripts/stats.mjs --check","stats":"node scripts/stats.mjs --write","taste":"node scripts/taste_audit.mjs","verify":"node scripts/accuracy_report.mjs","version":"node scripts/pin_version.mjs && node scripts/stats.mjs --write && git add -u","test:axe":"node scripts/axe_audit.mjs","test:mcp":"node mcp/server.mjs --selftest","test:rtl":"node scripts/verify_rtl.mjs","eval:self":"node evals/run.mjs --self-test","test:unit":"node --test tests/unit/*.test.mjs tests/cli/*.test.mjs tests/meta/registry.test.mjs","docs:shots":"node scripts/screenshot_docs.mjs","pins:check":"node scripts/pin_version.mjs --check","taste:slop":"node scripts/slop_tells.mjs","test:gates":"node --test tests/meta/*.test.mjs tests/unit/*.test.mjs tests/cli/*.test.mjs","lint:intent":"node scripts/lint_intent.mjs","stats:check":"node scripts/stats.mjs --check","test:render":"node scripts/measure_render.mjs examples/apple-demo/index.html examples/sample-app/preview.html && node scripts/measure_render.mjs --dark examples/sample-app/preview.html","test:states":"node scripts/verify_states.mjs","build:tokens":"node scripts/build_tokens.mjs --out dist/tokens.css","a11y:keyboard":"node scripts/verify_keyboard.mjs","render:source":"node scripts/render_framework_source.mjs","test:focustrap":"node scripts/verify_focustrap.mjs","verify:overflow":"node scripts/verify_overflow.mjs","a11y:target-size":"node scripts/verify_target_size.mjs","docs:shots:check":"node scripts/screenshot_docs.mjs --check","validate:surface":"python3 scripts/validate_instruction_surface.py","validate:template":"python3 scripts/validate_template.py","verify:interactive":"node scripts/verify_interactive.mjs","a11y:reduced-motion":"node scripts/verify_reduced_motion.mjs"},"version":"3.1.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9a581645-a293-43d5-9293-53630fd164fe"}},"homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma","codex","agents-md","cursor","github-copilot","homebrew","mcp","model-context-protocol","mcp-server","gemini-cli","gemini-extension","antigravity"],"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"_npmVersion":"12.2.2","description":"Design-system kit for coding agents: DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 2,144 design systems, 52 ","directories":{},"maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"_nodeVersion":"22.23.4","_hasShrinkwrap":false,"devDependencies":{"react":"^19.3.0","esbuild":"^0.28.2","axe-core":"4.10.2","react-dom":"^19.3.0","playwright":"1.63.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ux-ui-agent-skills_3.1.0_1794294194252_0.3055315557769923"}}},"time":{"created":"2026-06-06T18:28:36.766Z","modified":"2026-11-10T07:03:14.807Z","1.1.0":"2026-06-06T18:28:37.111Z","1.2.0":"2026-06-08T05:11:26.010Z","1.2.1":"2026-06-08T05:37:38.143Z","2.0.0":"2026-06-08T06:48:12.087Z","2.1.0":"2026-06-08T08:17:26.777Z","2.3.0":"2026-06-10T08:20:45.284Z","2.3.1":"2026-06-11T15:13:51.932Z","2.4.0":"2026-06-22T03:07:38.521Z","2.5.1":"2026-08-26T15:22:37.267Z","2.7.0":"2026-09-14T07:48:57.697Z","2.7.1":"2026-09-14T08:05:58.615Z","2.8.0":"2026-09-15T05:23:28.160Z","2.9.0":"2026-10-06T11:57:33.796Z","2.9.2":"2026-10-07T01:03:49.105Z","2.9.3":"2026-10-07T01:09:33.375Z","2.9.4":"2026-10-07T01:33:13.022Z","2.9.5":"2026-10-08T02:43:01.364Z","2.9.6":"2026-10-08T04:25:35.763Z","2.9.7":"2026-10-10T10:35:38.999Z","2.9.8":"2026-10-10T16:21:25.317Z","2.9.9":"2026-10-19T11:01:58.885Z","2.9.10":"2026-10-19T13:09:18.969Z","2.10.0":"2026-10-20T08:06:36.305Z","3.0.0":"2026-10-26T00:44:22.924Z","3.1.0":"2026-11-10T07:03:14.443Z"},"bugs":{"url":"https://github.com/plugin87/ux-ui-agent-skills/issues"},"author":{"url":"plugin87","name":"Thientan Soparat"},"license":"MIT","homepage":"https://github.com/plugin87/ux-ui-agent-skills#readme","keywords":["design-system","design-tokens","dtcg","claude","claude-code","ai-agents","agent-skills","ux","ui","accessibility","wcag","react","tailwindcss","design-to-code","component-library","figma","codex","agents-md","cursor","github-copilot","homebrew","mcp","model-context-protocol","mcp-server","gemini-cli","gemini-extension","antigravity"],"repository":{"url":"git+https://github.com/plugin87/ux-ui-agent-skills.git","type":"git"},"description":"Design-system kit for coding agents: DTCG design tokens, 52 components, WCAG 2.2 AA→AAA + i18n/RTL accessibility, enforced single-theme consistency (contrast, hardcode, Tailwind-palette, theme-ref + CI gates), any-framework code, 2,144 design systems, 52 ","maintainers":[{"name":"plugin87","email":"pannana1198@gmail.com"}],"readme":"<div align=\"center\">\n\n# UX/UI Agent Skills\n\n*aka **XIAS***\n\n### Design-system doctrine for coding agents, and **52 gates** that check what they build instead of taking their word for it.\n\nInstructions, design tokens, 26 runnable skills and 2,144 design systems (2,087 of them measured from the live site) that make a coding agent design to a senior standard, in **any framework** and against **any design system**. Then the gates measure what it built.\n\n<br>\n\n<picture>\n  <source media=\"(prefers-color-scheme: dark)\" srcset=\".github/brand/xias-cover-dark.png\">\n  <source media=\"(prefers-color-scheme: light)\" srcset=\".github/brand/xias-cover-light.png\">\n  <img src=\".github/images/hero.png\" alt=\"XIAS: design-system doctrine for coding agents. 52 objective gates, 34 of which open a real browser: WCAG contrast in every state, axe roles and landmarks, keyboard, target size, reduced motion, no horizontal overflow at 280, token by intent, screen economy. 2,144 design systems, 52 component specs, 26 runnable skills, 14 DTCG token files, 16 framework adapters. Claude Code, Codex, Cursor, Copilot, Gemini CLI, Antigravity, Aider, MCP.\" width=\"900\">\n</picture>\n\n<br>\n<br>\n\n<a href=\"https://trendshift.io/repositories/24406\" target=\"_blank\"><img src=\"https://trendshift.io/api/badge/repositories/24406\" alt=\"plugin87/ux-ui-agent-skills | Trendshift\" width=\"250\" height=\"55\"></a>\n\n<br>\n<br>\n\n[![Version](https://img.shields.io/badge/version-3.1.0-6366f1?style=for-the-badge)](https://github.com/plugin87/ux-ui-agent-skills/releases)\n[![License: MIT](https://img.shields.io/badge/license-MIT-22c55e?style=for-the-badge)](#license)\n[![WCAG 2.2 AA→AAA](https://img.shields.io/badge/WCAG-2.2_AA→AAA-a855f7?style=for-the-badge)](#-accessibility-standards)\n\n<br>\n\n[![npm](https://img.shields.io/npm/v/ux-ui-agent-skills?style=flat-square&logo=npm&logoColor=white&color=cb3837)](https://www.npmjs.com/package/ux-ui-agent-skills)\n[![npm downloads](https://img.shields.io/npm/dt/ux-ui-agent-skills?style=flat-square&logo=npm&logoColor=white&color=cb3837)](https://www.npmjs.com/package/ux-ui-agent-skills)\n![Tokens](https://img.shields.io/badge/Design_Tokens-DTCG-fbbf24?style=flat-square)\n![Skills](https://img.shields.io/badge/runnable_skills-26-14b8a6?style=flat-square)\n![Gates](https://img.shields.io/badge/objective_gates-52-16a34a?style=flat-square)\n[![Live demo](https://img.shields.io/badge/live_demo-open-0ea5e9?style=flat-square)](https://plugin87.github.io/ux-ui-agent-skills/)\n![Design Systems](https://img.shields.io/badge/design_systems-2144-f97316?style=flat-square)\n![Frameworks](https://img.shields.io/badge/frameworks-any-8b5cf6?style=flat-square)\n![Adapters](https://img.shields.io/badge/framework_adapters-16-22d3ee?style=flat-square)\n![React 19](https://img.shields.io/badge/React-19-60a5fa?style=flat-square&logo=react)\n![Next.js 15](https://img.shields.io/badge/Next.js-15-000000?style=flat-square&logo=nextdotjs)\n![SwiftUI 6](https://img.shields.io/badge/SwiftUI-6-f472b6?style=flat-square&logo=swift)\n![Tailwind v4](https://img.shields.io/badge/Tailwind-v4-38bdf8?style=flat-square&logo=tailwindcss)\n\n</div>\n\n**Current release [`v3.1.0`](https://github.com/plugin87/ux-ui-agent-skills/releases)** · [Changelog](CHANGELOG.md) · No build tools, dependencies, or runtime: a pure instruction and knowledge layer for AI agents.\n\n---\n\n## The output, rendered\n\n\nNot a mockup. These are screenshots of the files in `examples/`, taken by\n`node scripts/screenshot_docs.mjs` from the same HTML the 52 gates measure, so\nwhat you see below is what the gate run passed, in both themes.\n\n**Click through them yourself: [plugin87.github.io/ux-ui-agent-skills](https://plugin87.github.io/ux-ui-agent-skills/).**\nThere are 56 live pages (twenty whole-product screens, five websites from a\nproduct launch to a Thai public service page, every component harness, both\nreference screens and an iPhone Duo simulator), with a theme toggle. No install,\nno clone.\n\n<img src=\".github/images/dashboard-light.png\" alt=\"Atlas revenue console in light theme: sidebar navigation, a hero net-recurring-revenue figure at 2.48 million with a weekly bar chart, retention and churn cards, a donut of revenue by plan, an account ranking, regional sparklines, a sortable renewals table and an activity feed\" />\n\n<img src=\".github/images/dashboard-dark.png\" alt=\"The same Atlas console in dark theme, rendered from the same token theme with no per-page palette\" />\n\n<img src=\".github/images/terminal-dark.png\" alt=\"Meridian Terminal: a trading desk screen with a market ticker, candlestick chart with volume and moving average, order book with depth bars, cumulative depth curve, time and sales tape, watchlist sparklines, stacked area allocation, waterfall attribution, bubble chart and a correlation matrix\" />\n\n**Meridian Terminal** is the density test: **ten chart types on one screen**:\ncandlestick, volume, moving average, depth, order book, tape, sparklines,\nstacked area, waterfall, bubble and a correlation matrix. Every one of them is\ninline SVG drawn from the same tokens, with no chart library.\n[Open it live.](https://plugin87.github.io/ux-ui-agent-skills/terminal/)\nBuild one yourself with **`/data-dashboard`**.\n\n**Atlas** is one HTML file in `examples/showcase/`, built only from the kit's\ntokens and rules: the hero figure leads at 3x the body size, the three\nbreakdowns are deliberately three different shapes rather than three identical\ncards, the range tabs move the numbers, and the table headers really sort.\n[Open it live.](https://plugin87.github.io/ux-ui-agent-skills/showcase/)\n\n<table>\n<tr>\n<td width=\"50%\"><img src=\".github/images/reference-app-light.png\" alt=\"Reference app in light theme: an Analytics screen led by one hero revenue metric, three smaller stats beneath it, a settings form, and a red Delete account action\" /></td>\n<td width=\"50%\"><img src=\".github/images/reference-app-dark.png\" alt=\"The same Analytics screen in dark theme, rendered from the same token theme with no per-page palette\" /></td>\n</tr>\n<tr>\n<td><img src=\".github/images/button-states-light.png\" alt=\"Button harness in light theme showing primary, disabled, loading, secondary, danger and toggle states side by side\" /></td>\n<td><img src=\".github/images/button-states-dark.png\" alt=\"The same button states in dark theme, with the destructive action still wearing the danger variant\" /></td>\n</tr>\n</table>\n\nOne theme, two modes, no per-page palette. The destructive action wears the\ndanger variant in both. Loading keeps full strength and swaps in a spinner\ninstead of borrowing the disabled dimming. Every one of those is a rule in\n`CLAUDE.md` that a gate or a critic enforces.\n\n---\n\n## What the gates actually catch\n\n\nLeft: the same dashboard written the way a model writes it when nothing stops it:\nthe indigo-to-purple gradient, four equal cards with no focal point, emoji as\nicons, one radius and one shadow everywhere, grey-on-white body text, and a blue\nDelete Account. Right: the reference app in this repo.\n\n<table>\n<tr>\n<td width=\"50%\"><img src=\".github/images/before-slop.png\" alt=\"A generated-looking analytics dashboard: purple gradient header with emoji, four identical stat cards, grey low-contrast labels, tiny icon buttons, and a blue Delete Account button\" /><br><b>Statistical defaults</b></td>\n<td width=\"50%\"><img src=\".github/images/reference-app-light.png\" alt=\"The same dashboard built to the kit's rules: one hero revenue metric leading, three smaller stats, a settings panel, and a red Delete account action\" /><br><b>Built to the rules</b></td>\n</tr>\n</table>\n\nThe difference is not a matter of opinion, and that is the point. The page on the\nleft is `tests/fixtures/bad/slop-screen.html`; here is what the gates say about it:\n\n| Gate | Verdict on the left-hand page |\n|---|---|\n| REAL-render WCAG | `x <h1> \"Analytics Dashboard\" 1.00:1 (need 3)`: white text on a gradient has no measurable background |\n| State-aware WCAG | `x default \"Save Changes\" 1.00:1 (need 4.5) [rgb(255,255,255) on rgb(255,255,255)]`: 6 states below AA |\n| Target size (2.5.8) | `x button.icon-btn is 15.3x16 (min 24x24)` |\n| Responsive | `x @280px overflow +820px (widest: div.card)` |\n| axe-core | `SERIOUS target-size` |\n| Slop tells | HIGH: hardcoded indigo-purple gradient, single radius, one flat shadow, `#000` on `#fff` |\n| Taste audit | HIGH: biggest heading 24px vs 14px body = 1.7x, not a display scale |\n| Token by intent | `x \"Delete Account\" is destructive but filled with rgb(99, 102, 241) (hue 239deg, not a danger colour)` |\n| No emoji | `x slop-screen.html:55: emoji/pictograph`: a chart glyph in the `<h1>` |\n| No hardcoded values | `FAIL: 63 hardcoded value(s)` |\n\nTen gates reject it, none of them on a matter of taste. The right-hand page\npasses all 52.\n\nThe last row is there because building this comparison broke a gate open.\n`lint_intent` originally read that blue Delete Account as fine: it resolved\n\"primary\" and \"danger\" from the page's own CSS variables, and a page with no\ntokens resolved neither, so it skipped the page and reported zero intent-bearing\ncontrols. An untokenised page is precisely where intent gets picked by\nconvenience, so the gate no longer looks away: a destructive label filled with a\nsaturated colour outside the danger hue range is wrong-intent with or without a\ntheme. Re-checked against every example in both themes afterwards: no false\npositives.\n\n`tests/meta/browser-gates.test.mjs` pins every claim in this table, so it cannot\nrot.\n\n---\n\n## It was run blind, and it came back as rework\n\nTwo subagents were handed a brief and a project scaffolded by `ux-ui-skills new`,\nwhich installs the kit and ships **no example screens**, and nothing else. No\nhints, no warning that anything would be scored, no access to the conversation\nthat built the kit. They met `CLAUDE.md` and `.claude/rules/` the way a new\nuser's agent does.\n\n**Both scored 14/14** on an independent run of `evals/run.mjs`, scored here\nrather than self-reported. The rules transfer across a cold start.\n\n**And the two runs cost the kit seven defects that four in-session runs never\nhit**, because a familiar run keeps reaching for a finished demo theme instead of\nthe template a real user gets: a secondary button at **1.13:1** dark-on-dark\nbecause the component tier never followed the dark map; a reduced-motion policy\nin an external stylesheet read as \"no policy\" (Chromium treats a `file://` linked\nsheet as cross-origin, so the gate was blind exactly where every real project\nlives); a missing scrim token; a theme that emitted colours and no spacing; an\nintent gate that did not know \"cancel subscription\" is destructive.\n\nThen the outputs went to `/critique`, which renders the work and argues for\nrejection. Verdict on two pages that pass all fourteen gates: **rework**, eight\nfindings, five Major, and not one of them measurable: an empty state that reads\nas a page that failed to load, a theme toggle that communicates nothing about its\nown state, a toast claiming \"Draft project created\" over a list that never\nchanged, and a loading state wearing the disabled dimming so it reads as \"you\ncannot do this\".\n\n**The blind outputs were never edited.** They are in `evals/out/` as the record\nof what a cold-start agent produced; patching them would be editing the\nexperiment. The findings were spent on the kit instead. One of them became a\ngate, `verify_interactive.mjs`, which fails any control that declares a state\ncontract and changes nothing when clicked.\n\nThe whole log, including what is still unproven, is in\n[evals/RESULTS.md](evals/RESULTS.md).\n\n---\n\n## What It Does\n\n\n| Capability | Description |\n|-----------|-------------|\n| **Design Token Generation** | Produces DTCG-format JSON tokens (colors, typography, spacing, shadows, borders, breakpoints, motion) with a 3-tier architecture: Primitive → Semantic → Component |\n| **Component Design** | Designs components from Atoms to Templates following Atomic Design, with anatomy, variants, states, token mapping, and accessibility specs |\n| **Code Generation (any framework)** | Adapter Protocol targets **any** stack (React+Tailwind, Next.js, SwiftUI, Vue, Svelte, Angular, Solid, Web Components/Lit, React Native, Flutter, Jetpack Compose, vanilla CSS, CSS-in-JS) or generates a new adapter on demand |\n| **Design-System Interop** | Maps to/from **any** design system (Material 3, Apple HIG, Fluent, Carbon, shadcn/ui, Radix…) via a role-based crosswalk |\n| **Runnable Skills** | 19 invocable `/skills` (each declaring `invocation: user|model`) + 5 slash commands + real scripts: token and contrast validators, real-render and state-aware WCAG gates, axe-core a11y, focus-trap, RTL, target size, keyboard, reduced motion, overflow, token-by-intent, taste and slop audits, token build |\n| **Accessibility Auditing** | Evaluates against WCAG 2.2 AA/AAA with prioritized findings (P0/P1/P2) |\n| **Design Review** | Scores designs across 6 dimensions with Nielsen's 10 Heuristics and a structured findings table |\n| **Prototyping & Research** | Guides through a 5-level fidelity ladder, user journey mapping, and usability testing scripts |\n| **Motion Design** | Tokenized durations, easing curves, transition presets, and reduced-motion strategy for accessible animation |\n| **UX Writing** | Voice & tone system with error/empty-state formulas, microcopy patterns, and inclusive language guidelines |\n| **Design Taste** | Native anti-slop doctrine, aesthetic archetypes, and a library of **2,144 design systems** for layout variance, editorial typography, and premium visual direction |\n\n---\n\n## Quick Start\n\n\n> **Five ways in, and which one is yours:** [docs/INSTALL.md](docs/INSTALL.md)\n> walks through the Claude Code plugin, the `AGENTS.md` surface for Codex and\n> Cursor, the MCP server, Homebrew and `npx`: what each one installs, and what\n> you give up by choosing it.\n>\n> Every `npx` command in these docs names an exact release\n> (`ux-ui-agent-skills@3.1.0`), so what runs on your machine is the tarball the\n> docs describe, never whatever is newest on npm. `npm version` rewrites every\n> pin in the release commit, and `npm run pins:check` fails if one is missed.\n\n### Prerequisites\n\n- **Node.js 20 or newer**, and **Python 3** for the gates that read files.\n- **Chrome, for 34 of the 52 gates.** Those open your page in a real browser.\n  If Chrome is installed, nothing more is needed. If not, inside a project with\n  the kit: `npm install && npx playwright install chrome`, which uses the\n  Playwright version the kit pins (1.63.0). Without a browser those gates\n  cannot measure, and they never report a pass: run one on its own and it\n  prints `SKIPPED`, run the full report and they count as failing.\n\nBefore installing anything, [SECURITY.md](SECURITY.md) lists every file `init`\nwrites, what each hook does and when it fires, and the one network request the\nkit makes. `npx ux-ui-agent-skills@3.1.0 init --dry-run` prints the file list\nfor your project and changes nothing.\n\n### Option A: Install as a Claude Code plugin (recommended)\n\nTwo lines in Claude Code, and every skill, command, and agent is available in any\nproject you open, with no files copied into your repo:\n\n```\n/plugin marketplace add plugin87/ux-ui-agent-skills\n/plugin install ux-ui-agent-skills@ux-ui-agent-skills\n```\n\nYou get 26 skills and the `design-critic` agent.\n\n**Fourteen the model reaches for on its own** when the work calls for them:\n`design-tokens`, `design-component`, `design-code`, `design-review`,\n`a11y-audit`, `apply-aesthetic`, `data-dashboard`, `design-qa`,\n`figma-integration`, `performance`, `token-build`, `ux-writing`,\n`design-doctrine`, and `design-screen`, the one that claims \"design a page /\nscreen / app\", which until 2026-10-05 no skill did, so the most common request\nthere is matched nothing strongly and the kit got used at a fraction of its\ndepth.\n\n**Twelve you start yourself**, because each one takes an action or sets a\ndirection that should be your call: `/brandkit`, `/governance`, `/image-to-code`,\n`/migrate-design-system`, `/prototype`, `/redesign`, `/gate`, `/critique`,\n`/grill-me`, `/ship`, `/scaffold-project`, `/observe`. They carry\n`disable-model-invocation: true`, which is the field that actually stops the\nmodel invoking them. Until 2026-10-05 six of them said `invocation: user`, a\nkey Claude Code does not read, so they were auto-invocable the whole time. The\nlast five were commands and are skills now, so they have a `CLAUDE_SKILL_DIR` of\ntheir own and their paths resolve under a plugin install.\n\n`design-doctrine` carries the house rules that `CLAUDE.md` carries in the repo,\nbecause a plugin root `CLAUDE.md` is not loaded as project context, as Claude\nCode's own `plugin validate` says so.\n\n**Then just work.** Ask for the thing you want and the right skill loads itself:\n\n```text\n\"Design a notification component with all states and accessibility\"\n\"Build the billing settings screen, one shared theme, light and dark\"\n\"/grill-me\"      interrogate the brief before anything is built\n\"/gate\"          run all 52 checks and report the real N/N\n\"/critique\"      hand the result to a critic that argues for rejection\n\"/observe\"       did the agent follow the rules? sessions, blocks, findings left open\n```\n\nIf the skills do not show up straight away, start a new session. To check what\nis loaded, update, or remove it:\n\n```bash\nclaude plugin details ux-ui-agent-skills    # inventory + token cost per skill\nclaude plugin update  ux-ui-agent-skills\nclaude plugin uninstall ux-ui-agent-skills\nclaude plugin marketplace remove ux-ui-agent-skills\n```\n\n`uninstall` also deletes the plugin's data folder, which holds the gate\nreceipts and the `/observe` history.\n\n**34 of the gates open a real browser.** They use the Chrome installed on the\nmachine, or the one `npx playwright install chrome` downloads. Without either\nthey cannot measure: run through `scripts/gate.mjs`, as the skills do, they fail\nwith `REQUIRED, FAILING` instead of passing on nothing.\n\n### See it first, install nothing\n\n```bash\nnpx ux-ui-agent-skills@3.1.0 demo        # copies the rendered examples and opens them\n```\n\nEvery page it opens is a page the gates measure. Delete the folder afterwards;\nnothing was installed. Or skip the copy entirely and use the\n[live demo](https://plugin87.github.io/ux-ui-agent-skills/).\n\n### Option B: Use it from any MCP client\n\n```bash\nclaude mcp add ux-ui-gates -- npx -y --package=ux-ui-agent-skills@3.1.0 ux-ui-mcp\n```\n\nSix tools: `list_gates`, `run_gate`, `review_ui`, `get_doctrine`,\n`get_design_system`, `get_tokens`. Read the doctrine and the tokens before\ngenerating, run the gates on what you produced after.\n\n`AGENTS.md` already lets any agent **read** the doctrine. This lets any MCP\nclient **run the 52 gates**, which reading cannot do. Plenty of things can\ndescribe good UI, very little can tell you afterwards that the contrast you\nshipped is 3.9:1 on hover.\n\nIt returns what the gates printed, unedited, with their exit codes: 0 looked and\nfound nothing, 1 found something, **2 could not look**, never a pass. No SDK\ndependency; the protocol is implemented directly so `\"dependencies\": {}` stays\ntrue. Details in [docs/MCP.md](docs/MCP.md).\n\n### Option C: Install with Homebrew\n\n```bash\nbrew install plugin87/tap/ux-ui-agent-skills\nux-ui-skills init                   # CLAUDE.md + .claude/ skills, rules, critic\nux-ui-skills init --agent codex     # AGENTS.md, for Codex, Cursor, Copilot, Aider\n```\n\nSame npm tarball the `npx` route runs, so this is a convenience rather than a\nsecond product that can drift. The formula is generated from the registry and\nits `test do` block asserts the installed CLI reports the version the formula\nnames, and that `--agent codex` writes `AGENTS.md` without `CLAUDE.md` or\n`.claude/`. Details in [docs/HOMEBREW.md](docs/HOMEBREW.md).\n\n### Option D: Install with `npx`\n\nDrop the kit into any project, no clone needed:\n\n```bash\nnpx ux-ui-agent-skills@3.1.0 init          # full kit into the current folder\nnpx ux-ui-agent-skills@3.1.0 add tokens taste design-systems   # just some areas\nnpx ux-ui-agent-skills@3.1.0 list          # see all areas\nnpx ux-ui-agent-skills@3.1.0 library get stripe   # fetch one design-system spec\n```\n\nFlags: `--force` (overwrite existing files) · `--dry-run` (print every file it\nwould write, change nothing).\n\nThe 2,144 design-system specs are 27.6MB, and a project uses one or two, so\n`init` does not copy them. It installs an index of every spec with its sha256,\nand the agent fetches the one it picks with `node scripts/library.mjs get\n<name>`. A fetched file whose sha256 does not match the index is refused and\nnothing is written. `library pull` fetches all of them for offline work. The\nplugin (Option A) and a clone carry every spec already. To browse all 2,144, open\n[design-systems/catalog.md](design-systems/catalog.md): GitHub's folder view lists\nonly the first 1,000.\n\nWorking on the kit itself, or want it vendored? [Clone and copy](docs/GUIDE.md#install-from-a-clone) instead.\n\n### Advanced: partial install (skill folders only)\n\n```bash\nnpx skills@1.7.6 add plugin87/ux-ui-agent-skills\n```\n\nThis copies the 26 skill folders and nothing else: no gates, no tokens, no\nreferences, no design-system library. It is useful for reading the skills, not\nfor building with them. Each skill checks for the kit before it does anything,\nand without it:\n\n- **Most skills run in guidance-only mode.** The reply opens with \"Guidance-only\n  mode: the UX/UI Agent Skills kit is not installed here, so no gate ran\", states\n  no measured number (no contrast ratio, no N/N, no \"passes WCAG\"), and ends by\n  naming the gates it skipped and the install command.\n- **Five skills stop instead**, because running the kit is their whole job:\n  `gate`, `ship`, `observe`, `scaffold-project` and `critique`.\n\nTo get the verdicts, install the full kit with Option A or Option D.\n\n**Then start using:** open the project in **Claude Code** or any Claude-powered IDE. `CLAUDE.md` loads automatically, activating the agent persona with full access to every tokens / components / taste / design-system file and the runnable `/skills`.\n\n<details>\n<summary><b>Example prompts</b></summary>\n\n<br>\n\n```text\n\"Design a notification component with all states and accessibility\"\n\"Review this login page against WCAG 2.2 and Nielsen's heuristics\"\n\"Generate React + Tailwind code for a data table with sorting and pagination\"\n\"Create a color token palette for a fintech brand using blue as the primary\"\n\"Audit this form for accessibility issues, and give me a prioritized findings table\"\n\"Write the empty state and error copy for the onboarding flow\"\n\"Spec the motion for the modal open/close with reduced-motion fallback\"\n```\n\n</details>\n\n---\n\n## Proving It, and Admitting What Cannot Be Proven\n\n\nThe kit ships **52 objective gates** behind one command:\n\n```bash\nnode scripts/accuracy_report.mjs     # 52/52 or it fails, no partial credit\n```\n\n**34 of them open a real browser, so they need one installed.** `npx\nux-ui-agent-skills@3.1.0 init` does not install Playwright. Whether `/plugin install`\ndoes depends on the Claude Code version: 2.1.301 installed the kit's npm\ndependencies, Playwright included, into the plugin folder. Neither installs the\nbrowser itself. In a clone, run this once before expecting a full score:\n\n```bash\nnpm install                          # playwright\nnpx playwright install chrome        # real Chrome: six gates require the channel\n```\n\nWithout it those 34 report `REQUIRED, FAILING` under `accuracy_report.mjs`, which\nis the honest answer. Run individually they print `SKIPPED` and **exit 0**, so\nrun a single render gate through `scripts/gate.mjs` (or prefix it with\n`DS_REQUIRE_BROWSER=1`) if you are reading its exit code, rather than reading\nsilence as green. Every skill already does.\n\nToken validity, WCAG contrast on a real headless render in light *and* dark, every\nelement in default/hover/focus, axe roles and names, focus traps, RTL, responsive\nfrom 280 to 951px and folded on iPhone Duo, target size, keyboard operability, reduced motion (including\ncontent that only an animation reveals), silent text clipping, token-by-intent,\nand zero emoji anywhere in the output or the instruction surface.\n\n**What that number covers, stated exactly.** 34 of the 52 checks open a real\nbrowser, so what they measure is **rendered HTML**: the 23 component harnesses,\nthe twenty industry screens, the reference app, the live demo, the starter\ntemplate, and the React source compiled and server-rendered. The other 18 read\nfiles: token JSON and alias resolution, contrast math on the token source,\ncomponent specs, hardcoded values, theme references, emoji, hooks, the\ninstruction surface held in step across `CLAUDE.md` and `AGENTS.md`, and\ndestructive-intent declarations in framework source.\n\nThe split is not typed here: `tests/meta/counts.test.mjs` derives it from which\ngates import Playwright and fails if this paragraph drifts from the report. It\nread 35/16 until 2026-10-07, when the derivation was first run. Those were two numbers\nnobody had measured, in the section about not stating numbers you did not\nmeasure.\n\nFramework source (`.tsx`, `.vue`, `.swift`) gets the file-reading checks: no\nemoji, no hardcoded values, every `var(--…)` resolving to the theme, and, since a\nblue Delete shipped in this repo's own `Settings.tsx` while the HTML twin of that\nscreen was correct, every destructive control declaring its intent\n(`lint_intent_source.mjs`). That last one proves a **declaration**, never a\ncolour: `variant=\"destructive\"` wired to a blue token passes it.\n\nOnly a render catches that, so the React components are now compiled with esbuild,\nserver-rendered, and put through the same browser gates as the HTML\n(`render_framework_source.mjs`, which also fails if any class the components emit\nresolves in no linked stylesheet). `.vue` and `.swift` are still file-checks only,\nand are not proven by this number until they are rendered and measured.\n\nThat is correctness. It is not quality, and the kit says so out loud:\n\n| Question | Answer | How |\n|---|---|---|\n| Is it correct? | Measured, all or nothing | `node scripts/accuracy_report.mjs` -> a real `N/N` |\n| Is it any good? | Judged, never scored | `/critique`: an adversarial `design-critic` that renders the work, argues for rejection, and cites evidence per finding |\n| Did the agent follow the rules? | Counted per session, from the hooks | `/observe` or `npx ux-ui-agent-skills@3.1.0 observe` -> pages edited and measured, Stop hook blocks, findings left open, sessions that quit while blocked |\n| Does the kit transfer to a cold start? | Measured, one brief at a time | `evals/`: cold-start briefs, then `node evals/run.mjs <brief-id>` points 15 objective gates at what the agent produced |\n\n`/critique` exists because a passing gate is never evidence of taste. It refuses to\nreview from source alone, screenshots at 1280 and 390 in both themes, clicks every\ncontrol, and returns a verdict with the three reasons a senior designer would send\nthe work back.\n\nIt runs as a **forked subagent**, so the critic never sees the conversation that\nproduced the work. That is not a performance decision. A critic holding the\nmaker's reasoning is reviewing the argument instead of the artifact, and it\nagrees far too easily.\n\nThe critic itself is scored. `tests/fixtures/critic/` holds four pages carrying\nfourteen seeded design defects (no focal point, an empty state with no way\nforward, a toast that claims a project was created while the list is unchanged),\nand **every one of those pages passes all 52 gates**. That is the property that\nmakes the number mean something: nothing in the harness can reach these, so\ncatching them takes judgement. `node evals/score_critic.mjs` scores a critique\nagainst the key, prints the matching excerpt for every hit and the rule for every\nmiss, and says in its own output that the number is a floor until you have read\nthem.\n\n`/observe` answers a different question: not whether the work is right, but\nwhether the agent did what the rules say while making it. The hooks record one\nevent per session start, per UI edit (with what each fast gate caught) and per\nend of turn (which pages had a passing gate, and whether the Stop hook passed,\nblocked, or let the agent go with pages still open). The report joins those to\nthe gate receipts and gives each session a verdict from three counted rules:\nevery edited page measured, no finding left on a file's latest version, never\nfinished while blocked. `--last` and `--session <id>` print a timeline;\n`--html` writes the same thing as a page. Everything stays on the machine,\nfiles older than 30 days are deleted, and `DS_OBSERVE=0` turns it off.\n\nRuns are recorded in `evals/RESULTS.md` with their provenance attached: who built the output and whether they could see the kit while doing it, because a run without that context is not evidence of anything.\n\nThe eval suite exists because \"the kit's own examples pass\" is a weaker claim than\n\"an agent given only this kit and a brief produces work that passes\". Building it\ncaught two real defects the 34-check gate had missed. See `evals/README.md`.\n\n---\n\n## Documentation\n\n| Where | What is in it |\n|---|---|\n| **[Live demo](https://plugin87.github.io/ux-ui-agent-skills/)** | 49 rendered pages: twenty industry screens, every component harness, both reference screens, a theme toggle |\n| [docs/GUIDE.md](docs/GUIDE.md) | Using it as a plugin (inventory, management, token cost), how the skills compose, the repo map, token architecture, frameworks, interop, a11y standards, starting a new product project |\n| [CHANGELOG.md](CHANGELOG.md) | Every release, newest first |\n| [docs/BRANCHING.md](docs/BRANCHING.md) | One concern per branch, one commit per merge, and the settings that enforce it |\n| [CONTRIBUTING.md](CONTRIBUTING.md) | Why PRs are not merged, what to report instead, and how a gate that can still say no is built |\n| [SECURITY.md](SECURITY.md) | What `init` writes, what each hook does and when, the one network request, no telemetry, and how to report a vulnerability |\n| [scripts/](scripts/) | Every gate, as plain Node and Python you can read. [hooks/](hooks/) holds the three plugin hooks, [mcp/](mcp/) the MCP server, [bin/cli.js](bin/cli.js) the installer |\n| [stats.json](stats.json) | Every count this README states, computed from the files by `scripts/stats.mjs`. `npm test` fails if the prose and the files disagree |\n| [CLAUDE.md](CLAUDE.md) | The always-on brief the agent actually reads |\n| [.claude/rules/](.claude/rules/) | The depth behind it: tokens and colour, type and spacing, components, accessibility, frameworks, review, brand and operations |\n| [taste/](taste/) | The anti-slop doctrine and motion choreography. The 2,144 design systems live in [design-systems/](design-systems/) |\n\n---\n\n## Not using Claude Code?\n\nThe kit works with **Codex, Cursor, Copilot, Jules, Aider, VS Code and about\ntwenty more**, through the open `AGENTS.md` convention, and with **Gemini CLI\nand Antigravity**, which read `GEMINI.md` and `.agents/skills/`.\n\n```bash\nnpx ux-ui-agent-skills@3.1.0 init --agent codex    # AGENTS.md + the whole kit\nnpx ux-ui-agent-skills@3.1.0 init --agent gemini   # GEMINI.md + 23 ported skills: Gemini CLI, Antigravity\nnpx ux-ui-agent-skills@3.1.0 init --agent both     # CLAUDE.md and AGENTS.md\nnpx ux-ui-agent-skills@3.1.0 init                  # Claude Code (default)\ngemini extensions install https://github.com/plugin87/ux-ui-agent-skills   # Gemini CLI, every project\n```\n\nWhat transfers, and what does not, stated exactly:\n\n| | Claude Code | AGENTS.md surface | Gemini CLI, Antigravity |\n|---|---|---|---|\n| Tokens, components, taste, accessibility, 2,144 design systems | yes | **yes** | **yes** |\n| All 52 gates | yes | **yes**, they are plain Node and Python | **yes** |\n| Doctrine: the eight states, token by intent, mobile-first, the house rules | yes | **yes** | **yes**, in `GEMINI.md` |\n| 26 skills that load on demand | yes | no, the doctrine is inlined instead | 23 ported skills |\n| Hooks that fire whether or not the model remembers | yes | **no** | **no** |\n| `/critique` in a separate context | yes | no, it is a step in the instructions | no |\n\nA skill is ported, not copied: Gemini CLI and Antigravity do not expand\n`${CLAUDE_SKILL_DIR}`, so each path is rewritten for where the skill lands, and\nthe three that need Claude Code (`critique`, `observe`, `scaffold-project`) stay\nthere. Setup and what was measured: [docs/INSTALL.md](docs/INSTALL.md#2b-gemini-cli-and-antigravity).\n\n**The hooks are the real difference.** On Claude Code, three rules are enforced\nwithout the model choosing to: no hardcoded values and no emoji on every write,\nand a refusal to end a session that edited UI and measured none of it. On the\n`AGENTS.md` surface every rule is a request and the gates run when you run them.\n\n`scripts/validate_agents_surface.py` holds the two files in step, so a rule added\nto one cannot quietly skip the other. Full setup, and the two defects a real\nCodex run found in the first draft: [docs/AGENTS-SETUP.md](docs/AGENTS-SETUP.md).\n\n## Contributing\n\n\n**Pull requests are not merged here.** Every line is written by the maintainer,\ndeliberately. Asking for work against a bar and then declining it would waste\nyour time, so the policy is stated up front instead of at the end of a review.\n\nWhat is wanted, and credited by name in the CHANGELOG: a **gate gap**, a\n**reproduction**, or a **proposal**. Forking is welcome; the MIT licence says so.\n\nTwo commands are the whole bar for anything that does ship:\n`node scripts/accuracy_report.mjs` (52/52, no partial credit) and\n`npm run test:gates` (every gate must still reject its broken fixture). Paste\nthe real output rather than describing it.\n\nThe most valuable issue this repo can receive is a **gate gap**: a case where a\ngate said yes to work it should have caught. There is a template for exactly\nthat, because a gate that passes broken work is worse than a missing one: it\nturns a real defect into a green tick.\n\n[CONTRIBUTING.md](CONTRIBUTING.md) covers setup, the non-negotiable rules, how to\nadd a gate that can still say no, and the SemVer table.\n[CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) applies to every space in the project.\n\n---\n\n## License\n\n\nReleased under the **[MIT License](LICENSE)**: free to use, modify, and\ndistribute, including commercially, as long as the copyright notice and the\npermission notice travel with the copy.\n\nCopyright (c) 2026 **Thientan Soparat** ([@plugin87](https://github.com/plugin87)).\n\n---\n\n<div align=\"center\">\n\nBuilt by **Thientan Soparat** ([@plugin87](https://github.com/plugin87)).\n\nIf this kit helps you, [star it on GitHub](https://github.com/plugin87/ux-ui-agent-skills) so others can find it.\n\n</div>\n","readmeFilename":"README.md"}