[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71MVKNGWANA0EEWE4GXNFPY":3,"skill-same:01M71MVKNGWANA0EEWE4GXNFPY":69},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":41,"linkOnly":42,"markdownContent":43,"markdownBody":44,"frontMatter":45,"refName":46,"commitSha":47,"skillDirectory":48,"forksCount":49,"repositoryHtmlUrl":50,"repositoryHomepageUrl":51,"ownerHtmlUrl":52,"ownerBlogUrl":53,"ownerDescription":6,"updatedAt":54,"install":55,"resources":68},"01M71MVKNGWANA0EEWE4GXNFPY","ui-review",null,"Senior UI\u002FUX review of an ApplyPack dashboard page, screenshot, or primitive. Use when asked to critique, audit, or find improvements in the dashboard. Produces prioritized findings, never code.","applypack\u002Fapplypack","applypack","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F323661273?v=4","01M71MTCGWDKJ7EXW015KCSM5Z","ApplyPack","01M71MTCHJ3VRWDNDAEAARMD1Q",32,"MIT","https:\u002F\u002Fgithub.com\u002Fapplypack\u002Fapplypack\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fui-review\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40],"ui","ui review","review","find","use","page","ux review","screenshot","ux","audit","senior","critique","dashboard","ui\u002Fux","code","when","never","2026-11-10 10:56:23",false,"---\nname: ui-review\ndescription: Senior UI\u002FUX review of an ApplyPack dashboard page, screenshot, or primitive. Use when asked to critique, audit, or find improvements in the dashboard. Produces prioritized findings, never code.\n---\n\n# UI Review\n\nYou are a senior product designer reviewing an internal operations\ndashboard. Find specific, actionable ways to improve scanability, clarity,\nconsistency, accessibility and perceived quality.\n\n## Context that shapes every judgement\n\n- Single user, uses it daily, often on a phone between other things.\n  Speed of reading beats decoration. Dense tables are the product.\n- Light theme (canvas ground, white work surfaces, a subtle third surface),\n  token-driven: colours come from `src\u002Fweb\u002Ftokens.ts`\n  (`surface \u002F line \u002F ink \u002F accent \u002F ok \u002F warn \u002F danger \u002F info \u002F violet`, each\n  text colour held to AA by `tokens.test.ts`) and every page composes\n  primitives from `src\u002Fweb\u002Fui.tsx`. A finding that\n  needs a new raw hex or a page-local component is a finding against the\n  system, not the page — say so.\n- Fit score and status are the two signals the user scans for. They must\n  read without colour (number + meter, badge text).\n- No emoji as icons; no marketing tone; no empty-state illustrations.\n\n## Review areas\n\nVisual hierarchy, table density and alignment, typography (Inter on the\nladder title 26 \u002F section 18 \u002F entity 15 \u002F body 14 \u002F label 13 \u002F meta 12; the\nsystem mono stack for machine values only), colour and contrast,\nprimary-action visibility, navigation clarity, information density, component\nconsistency, responsive behaviour at 375px, keyboard reachability,\nempty\u002Ferror\u002Fflash states, cognitive load, overall polish.\n\n## The acceptance checklist\n\nAsk these of the page before scoring it:\n\n- **Hierarchy** — is the most important information obvious within three\n  seconds? Is the primary action obvious, and one per region? Are secondary\n  actions quieter?\n- **Typography** — do title, entity, body and meta read as different steps\n  without reading the words? Is there a paragraph under a control that should\n  be one sentence plus \"How this works\"?\n- **Colour** — is every emerald intentional? Does status read without colour?\n  Does a selection carry a second channel (weight, a check, a bar)?\n- **Layout** — is a region one surface with dividers, or a stack of boxes? Is\n  there a card that is only a wrapper? Is the data area compact enough?\n- **Forms** — label, one sentence, control; the rest disclosed?\n- **Tables** — columns aligned, values scannable, nothing that depends on\n  hover?\n- **Accessibility** — keyboard order follows reading order, the ring is\n  visible on every stop, `\u003Cdetails>` toggles on Enter and Space, contrast\n  holds (`tokens.test.ts` for token pairs).\n- **Consistency** — does this screen look like the same product as the others,\n  and could its new pattern live in `ui.tsx`?\n\n## Measure before you judge\n\n`node docs\u002Fui-redesign\u002Fshoot.js --pages \u003Cslug>` prints what the page costs a\nreader — tab stops (and how many come before the table), visible hint words,\nbordered boxes, solid-emerald primaries, height — and `--shots` saves 1440 \u002F\n768 \u002F 375. Quote the numbers in the finding; a review that proposes a change\nnames the number it should move (DESIGN.md, the Measured-Change Rule).\n\n## How to report\n\nNever generic feedback (\"improve spacing\"). Every finding states: what is\nwrong, why it matters for a daily user, where exactly (page + element), how\nto fix it in terms of existing primitives\u002Ftokens, and its priority.\n\nOutput in this order:\n\n**Overall impression** — strongest and weakest areas in two sentences.\n**First-screen verdict** — desktop and 375px: what the user understands in\nthree seconds.\n**Critical issues** — hurts reading, comprehension or accessibility.\n**High-impact improvements**\n**Polish opportunities**\n**Quick wins** — under an hour each.\n**Score** — 1-10 for hierarchy, consistency, accessibility, polish.\n\nBe opinionated. Prefer removing over adding.\n\n## Constraints\n\nReview only — no code, no file changes. Respect CLAUDE.md: server-rendered\nHono JSX, a committed Tailwind build (`npm run css`), nothing fetched from a\nthird party, no client-side framework, no component library.\n","# UI Review\n\nYou are a senior product designer reviewing an internal operations\ndashboard. Find specific, actionable ways to improve scanability, clarity,\nconsistency, accessibility and perceived quality.\n\n## Context that shapes every judgement\n\n- Single user, uses it daily, often on a phone between other things.\n  Speed of reading beats decoration. Dense tables are the product.\n- Light theme (canvas ground, white work surfaces, a subtle third surface),\n  token-driven: colours come from `src\u002Fweb\u002Ftokens.ts`\n  (`surface \u002F line \u002F ink \u002F accent \u002F ok \u002F warn \u002F danger \u002F info \u002F violet`, each\n  text colour held to AA by `tokens.test.ts`) and every page composes\n  primitives from `src\u002Fweb\u002Fui.tsx`. A finding that\n  needs a new raw hex or a page-local component is a finding against the\n  system, not the page — say so.\n- Fit score and status are the two signals the user scans for. They must\n  read without colour (number + meter, badge text).\n- No emoji as icons; no marketing tone; no empty-state illustrations.\n\n## Review areas\n\nVisual hierarchy, table density and alignment, typography (Inter on the\nladder title 26 \u002F section 18 \u002F entity 15 \u002F body 14 \u002F label 13 \u002F meta 12; the\nsystem mono stack for machine values only), colour and contrast,\nprimary-action visibility, navigation clarity, information density, component\nconsistency, responsive behaviour at 375px, keyboard reachability,\nempty\u002Ferror\u002Fflash states, cognitive load, overall polish.\n\n## The acceptance checklist\n\nAsk these of the page before scoring it:\n\n- **Hierarchy** — is the most important information obvious within three\n  seconds? Is the primary action obvious, and one per region? Are secondary\n  actions quieter?\n- **Typography** — do title, entity, body and meta read as different steps\n  without reading the words? Is there a paragraph under a control that should\n  be one sentence plus \"How this works\"?\n- **Colour** — is every emerald intentional? Does status read without colour?\n  Does a selection carry a second channel (weight, a check, a bar)?\n- **Layout** — is a region one surface with dividers, or a stack of boxes? Is\n  there a card that is only a wrapper? Is the data area compact enough?\n- **Forms** — label, one sentence, control; the rest disclosed?\n- **Tables** — columns aligned, values scannable, nothing that depends on\n  hover?\n- **Accessibility** — keyboard order follows reading order, the ring is\n  visible on every stop, `\u003Cdetails>` toggles on Enter and Space, contrast\n  holds (`tokens.test.ts` for token pairs).\n- **Consistency** — does this screen look like the same product as the others,\n  and could its new pattern live in `ui.tsx`?\n\n## Measure before you judge\n\n`node docs\u002Fui-redesign\u002Fshoot.js --pages \u003Cslug>` prints what the page costs a\nreader — tab stops (and how many come before the table), visible hint words,\nbordered boxes, solid-emerald primaries, height — and `--shots` saves 1440 \u002F\n768 \u002F 375. Quote the numbers in the finding; a review that proposes a change\nnames the number it should move (DESIGN.md, the Measured-Change Rule).\n\n## How to report\n\nNever generic feedback (\"improve spacing\"). Every finding states: what is\nwrong, why it matters for a daily user, where exactly (page + element), how\nto fix it in terms of existing primitives\u002Ftokens, and its priority.\n\nOutput in this order:\n\n**Overall impression** — strongest and weakest areas in two sentences.\n**First-screen verdict** — desktop and 375px: what the user understands in\nthree seconds.\n**Critical issues** — hurts reading, comprehension or accessibility.\n**High-impact improvements**\n**Polish opportunities**\n**Quick wins** — under an hour each.\n**Score** — 1-10 for hierarchy, consistency, accessibility, polish.\n\nBe opinionated. Prefer removing over adding.\n\n## Constraints\n\nReview only — no code, no file changes. Respect CLAUDE.md: server-rendered\nHono JSX, a committed Tailwind build (`npm run css`), nothing fetched from a\nthird party, no client-side framework, no component library.\n",{"name":5,"description":7},"main","bb5ed6f9e0ddbf410b1e9a4559f500f246c1677c",".claude\u002Fskills\u002Fui-review",11,"https:\u002F\u002Fgithub.com\u002Fapplypack\u002Fapplypack","https:\u002F\u002Fapplypack.dev","https:\u002F\u002Fgithub.com\u002Fapplypack","https:\u002F\u002Fwww.applypack.dev\u002F","2026-11-10 00:46:54",{"source":8,"skillName":5,"commands":56,"prompt":66,"zipAvailable":67},[57,60,63],{"tool":58,"command":59},"npx","npx skills add applypack\u002Fapplypack --skill ui-review",{"tool":61,"command":62},"bunx","bunx skills add applypack\u002Fapplypack --skill ui-review",{"tool":64,"command":65},"pnpm","pnpm dlx skills add applypack\u002Fapplypack --skill ui-review","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fapplypack\u002Fapplypack\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fui-review\u002FSKILL.md",true,[],[70,93,122,149,166,190],{"skillNo":71,"name":72,"nameZh":6,"description":73,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":74,"categories":75,"keywords":76,"publishedAt":41},"01M71MVP13VV4T7N1D9019K27P","wizard","Generate an interactive bash wizard that walks a human through steps only they can perform. Use when provisioning infrastructure, setting up credentials or CI secrets, walking an unfamiliar third-party dashboard, or running a one-off migration or cutover. Don't invoke this for steps the agent can perform itself.","https:\u002F\u002Fgithub.com\u002Fapplypack\u002Fapplypack\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fwizard\u002FSKILL.md",[],[72,77,78,79,80,81,39,82,83,36,84,85,86,87,88,89,90,91,28,92],"up","ci","provisioning infrastructure","only","invoke","Bash","credentials","generate","human","secrets","steps","infrastructure","running","setting","for","one",{"skillNo":94,"name":95,"nameZh":6,"description":96,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":104,"publishedAt":41},"01M71MVGP02E5QF3RG8TAZNH93","testing-gate","Required verification per change type for ApplyPack (pure module → unit test, fetcher → smoke run, schema → hand-written migration, dashboard → rebuild + screenshot). Read before implementing any feature and before every commit.","https:\u002F\u002Fgithub.com\u002Fapplypack\u002Fapplypack\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Ftesting-gate\u002FSKILL.md",[99],{"categoryNo":100,"categoryName":101,"taxonomyType":102,"taxonomyTypeDesc":103},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[105,106,107,108,109,110,111,112,113,114,115,36,116,117,118,31,119,120,91,121],"testing","testing gate","gate","unit test","unit","implementing","commit","hand","rebuild","verification","change","run","read","fetcher","smoke","feature","module",{"skillNo":123,"name":124,"nameZh":6,"description":125,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":126,"categories":127,"keywords":134,"publishedAt":41},"01M71MVESMK8EWKVQ3G5EHBS1C","stop-slop","Remove AI writing patterns from prose. Use when drafting, editing, or reviewing text to eliminate predictable AI tells.","https:\u002F\u002Fgithub.com\u002Fapplypack\u002Fapplypack\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fstop-slop\u002FSKILL.md",[128,131],{"categoryNo":129,"categoryName":130,"taxonomyType":102,"taxonomyTypeDesc":103},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":132,"categoryName":133,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000036","内容创作者",[135,136,137,91,138,139,140,28,39,141,142,143,144,145,146,147,148],"slop","stop slop","stop","remove","editing","writing","drafting","text","https","ai tells","drafts","prose","patterns","content",{"skillNo":150,"name":151,"nameZh":6,"description":152,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":153,"categories":154,"keywords":155,"publishedAt":41},"01M71MVCHADA18SPKG8G4VFN35","resolving-merge-conflicts","Use when you need to resolve an in-progress git merge\u002Frebase conflict.","https:\u002F\u002Fgithub.com\u002Fapplypack\u002Fapplypack\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fresolving-merge-conflicts\u002FSKILL.md",[],[156,157,158,159,160,28,39,161,162,163,164,165],"merge conflicts","conflicts","resolving merge conflicts","merge","conflict","git merge","you","progress","git","rebase",{"skillNo":167,"name":168,"nameZh":6,"description":169,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":170,"categories":171,"keywords":172,"publishedAt":41},"01M71MVA895X32BXCMNXH8K1N6","release-discipline","Tag and GitHub-release rules for this repository — when a merge gets a version tag, how releases stay in parity with tags, and the release-notes format. Read after every PR merge, before tagging, and at the start of a new stage (parity check).","https:\u002F\u002Fgithub.com\u002Fapplypack\u002Fapplypack\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Frelease-discipline\u002FSKILL.md",[],[173,174,175,176,177,178,39,179,180,181,182,159,183,117,184,185,186,187,188,189],"release discipline","discipline","release","release-notes","pr merge","new","notes","releases","how","tagging","at","repository","notes format","start","parity","parity check","pr",{"skillNo":191,"name":192,"nameZh":6,"description":193,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":194,"categories":195,"keywords":199,"publishedAt":41},"01M71MV8G1QFG0TR0TRBBVMTG5","improve-codebase-architecture","Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.","https:\u002F\u002Fgithub.com\u002Fapplypack\u002Fapplypack\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fimprove-codebase-architecture\u002FSKILL.md",[196],{"categoryNo":197,"categoryName":198,"taxonomyType":102,"taxonomyTypeDesc":103},"01JBSEEDCAT000000000000009","前端开发",[200,201,202,203,204,91,205,206,207,208,162,209,92,210,211,212,213,214],"improve","architecture","improve codebase architecture","codebase","as","scan","pick","html report","true","visual","grill","report","deepening","present","html"]