better-interface

jakubkrehel/skills · Agent Skill

進行介面可及性、佈局、書寫、字型、色彩和視覺呈現的全面評估。

前往安裝 ↓

總覽

發布者jakubkrehel社群
儲存庫jakubkrehel/skills ↗
技能資料夾better-interface
星8,643
分支330
附帶檔案3
授權MIT
最近更新2026年10月25日
連結技能原始碼 ↗ · 儲存庫 ↗

Mozgi 檢查

我們在技能檔案中發現的內容。詳細資訊需訂閱。

安全性
中等風險 · 發現 1 個需要注意的地方
相容性
僅含說明 — 適用於多數代理
相似技能
找到 31 個相似技能
訂閱另含

安裝

技能就是一個含 SKILL.md 的資料夾。選擇你的代理,在專案根目錄的終端機(macOS、Linux 或 Windows 的 Git Bash)執行指令。

把提示貼到 Claude、Codex 或其他助理:它會自行檢查並安裝技能。

Install the “better-interface” skill from mozgi.io (https://mozgi.io/skills/jakubkrehel-better-interface/) for me.

1. Download the archive: https://mozgi.io/skills/jakubkrehel-better-interface/download
   If it fails, take the skill folder from the source: https://github.com/jakubkrehel/skills/tree/main/skills/better-interface
2. Read SKILL.md and the other files. Check the skill is safe: no hidden commands, no sending data elsewhere, no scripts doing something other than described. If anything looks suspicious, stop and tell me.
3. Put the “better-interface” folder into your agent's skills folder: .claude/skills/ for Claude Code, .agents/skills/ for Codex, .cursor/skills/ for Cursor, .gemini/skills/ for Gemini CLI. Inside the project if we are in one, otherwise in the home folder (~/.claude/skills/ etc.).
4. Make sure <skills folder>/better-interface/SKILL.md exists.
5. Briefly tell me what this skill does and offer to try it on my task.

If you cannot do a step yourself, tell me what to click or type.

技能檔案

3 個檔案 下載 ZIP

安裝前請先檢視 SKILL.md 與相關檔案。點擊檔案即可預覽。

SKILL.md 內容

作者原文 · 唯讀

Interface

This skill runs a cross-discipline review. It routes the interface to each better-* skill, collects their evidence and consolidates one ranked verdict.

Orchestration is all it owns. Accessibility rules belong to better-accessibility, structure to better-layout, copy to better-writing, type to better-typography, color to better-colors, visual polish and motion to better-ui.

Change-scoped review of uncommitted work, branches and pull requests belongs to interface-review.

Evidence, not taste

Press hard on the escalation triggers and leave deliberate project choices alone. A trigger is a failure whatever the style guide says. A density, radius or voice you merely disagree with is not a finding.

The bar for reporting is evidence. The bar for Approve is that you inspected what you claim to have inspected.

1. Resolve the scope first

Infer the screen, flow, feature or repository scope from the request and current workspace. State the resolved scope in the output.

Cover all of it in every domain, including the empty, loading, error and narrow-width states where they exist.

When the scope is too large to inspect credibly, narrow it to one complete flow. Take the one the request centers on, or failing that the entry path every user must pass through. State the boundary and what it excluded. Never imply uninspected surfaces were reviewed.

2. Send a change to interface-review

A request naming a branch, pull request, commit range or uncommitted changes is a change review. Say so and ask the user to run interface-review, which is user-invoked and cannot be started from here. Never resolve a change scope yourself, because a guessed diff gives the report a scope nobody can check.

When interface-review hands a review back, apply everything below to it. The cap and the verdict cover Introduced and Regression findings only, so a change whose only findings are Pre-existing is an Approve.

3. Recon before judgment

Identify the framework, styling system, component library, design tokens, supported viewports and any preview or test command. Write every fix in the project's own idiom, never as a request to adopt a different stack.

Then read what the project has written about its own interface: CONTRIBUTING.md, CODING_STANDARDS.md, AGENTS.md, CLAUDE.md, a design-system doc, Storybook docs and interface ADRs. Name which you found, or that there are none.

A documented convention settles matters of taste but never excuses a trigger or a domain rule violation. What it changes is where you report. When a guideline or shared token is the cause, report it once against that source, with the components as its locations.

4. Use domain skills as the sources of truth

Load every owning skill below and complete each domain review before consolidation. Review in this order so foundational failures are not hidden by polish:

1. better-accessibility

2. better-layout

3. better-writing

4. better-typography

5. better-colors

6. better-ui

From each, take its principles, its references and its verification checks. Its severity ladder and its format are for standalone use; the ones in this file replace them.

If an owning skill is unavailable, mark that domain Not reviewed, name it and continue with the rest. Do not recreate its rules from memory, substitute a neighbour or claim holistic coverage.

When two skills appear to cover one issue, assign it to the owner of the underlying rule and note secondary effects in the Why cell.

5. Verify what can be verified

Run the safe, relevant checks the project offers. Inspect the rendered interface when runtime behavior or visual judgment matters, and report the exact command or interaction and its result. A check you cannot run is Not verified, never a finding.

Require evidence

Every finding cites path/to/file:line and shows the current implementation. When runtime behavior determines the result, source alone cannot support a visual finding and a screenshot alone cannot support a code finding.

Rank by user impact

Use one shared severity scale:

  • HIGH: blocks a task, misleads the user, hides content or controls, causes data-loss risk or creates a repeated systemic failure.
  • MEDIUM: meaningfully harms comprehension, efficiency, adaptability or consistency.
  • LOW: isolated polish with limited task impact.

Within a severity, rank by how many places the finding reaches and how much one fix buys. A token or shared-component fix outranks the same symptom in one leaf.

Escalation triggers. Once the owning skill confirms one of these, it is HIGH on sight, never averaged down because the surface is minor:

  • An interactive control with no accessible name.
  • A keyboard-reachable control with no visible focus indicator.
  • A control or path reachable by pointer but not by keyboard.
  • Motion or auto-playing content that ignores prefers-reduced-motion.
  • Content or a control clipped, overlapped or unreachable at 320px width or 200% zoom.
  • Body or control text whose rendered contrast pair fails its required ratio.
  • State or meaning carried by color alone.
  • A destructive action with no confirmation, undo or distinct treatment.
  • Truncated content with no way to reach the full value.
  • Content or a control reachable only past a scroll edge or behind a disclosure that has no visible cue.
  • An error that names no way to recover from it.
  • A semantic color used against its meaning, such as the danger hue on a non-destructive action.
  • A state change carried by motion alone, with no color, icon or label left behind when the animation does not run.

Triggers rank above every other finding. When more fire than the cap allows, list them first and say how many the cap excluded. A cap may shorten a report; it may never be why a blocker went unreported.

These set severity, not new rules. The owning skill decides whether the symptom is present; this list decides what it costs.

Prefer the cheaper fix

Severity says how bad a finding is; this says which fix to propose. When more than one would work, take the earliest that does:

1. Delete. A separator that space would carry, an animation on a high-frequency interaction, an ARIA attribute a native element makes redundant, a ramp nothing imports.

2. Use the platform. The native element, the native control or the browser's own focus ring, in place of a custom rebuild.

3. Reuse what the project has. An existing token, spacing step or motion curve, before any new value.

4. Correct the value. The wrong easing, radius, gap or contrast pair, using the exact value the owning skill gives.

5. Add. A new token, a wrapper, a media query, an ARIA attribute the platform cannot supply.

When the code under review adds what Delete would fix, that is a finding, and its After is the deletion.

Consolidate systemic findings

One root cause is one finding, with every confirmed location in the same row. Report at most 15 findings. Never pad toward the cap; a short review or no findings is a valid result.

Review without mutating by default

Treat a review request as read-only. Do not edit source unless the user also asks you to implement the findings. When they do, keep the consolidated report as the change scope and re-run the relevant verification afterward.

Before you finish

| Mistake | Fix |

| --- | --- |

| A separate findings section per domain | Merge them into one table ranked by severity, then reach |

| A rendering claim whose only evidence is source | Inspect the rendered state, or mark it Not verified |

| A missing accessible name or focus ring rated MEDIUM because the surface is minor | Triggers are HIGH on sight |

| A coverage row whose evidence cell names no file, component or check | Inspect that domain, or mark it Not reviewed with the reason |

| A domain marked Clear although its skill never loaded | Mark it Not reviewed and name the skill |

| The same symptom in several rows, one per component | One row against the shared token or component, listing every location |

| An After that adds a wrapper, token or ARIA attribute | Check whether a deletion or the native element fixes it first |

| A fix written in a library or styling system the project does not use | Rewrite it in the project's own idiom |

Review output format

The format lives in review-format.md ↗: scope and coverage, the findings table, verification and the verdict. A review is not finished until its findings are reported there.

常見問題

better-interface 技能有什麼用途?

進行介面可及性、佈局、書寫、字型、色彩和視覺呈現的全面評估。

如何安裝 better-interface?

打開本頁的「安裝」區塊並選擇你的代理 — Claude Code、Codex、Cursor 或 Gemini CLI:那裡有把技能資料夾複製到正確位置的現成指令。也可以複製「透過助理」分頁中的提示,讓助理自行檢查並安裝技能。

better-interface 適用哪些 AI 模型?

技能是純 Markdown 指示(Agent Skills 格式),因此 better-interface 適用任何讀取 SKILL.md 的代理:Claude Code、Codex、Cursor、Gemini CLI、GitHub Copilot、OpenCode 等。只有在任務符合技能描述時,模型才會載入指示。

better-interface 是免費的嗎?

此技能由 jakubkrehel 公開發布,採用 MIT 授權。技能本身免費 — 你只需向 AI 供應商支付實際使用的 token 費用。

安裝技能安全嗎?

技能是代理會遵循的指示,安裝前請閱讀 SKILL.md 及相關檔案。技能資料夾中的腳本只有在代理執行時才會運行 — 留意它的動作,不要授予多餘權限。

技能和 MCP 伺服器或外掛有何不同?

MCP 伺服器或外掛為模型提供新工具 — 會執行並回傳結果的程式碼。技能提供的是知識與流程:如何處理任務、要遵循哪些步驟、好的成果長什麼樣子。它不需要伺服器或 API 金鑰。

相關技能

所有技能 →
better-accessibility 檢查和改善焦點狀態、鍵盤支援、ARIA、表單、螢幕閱讀器、觸擊區域和動作的無障礙功能。 jakubkrehel8.6k better-colors OKLCH 色彩空間適用於網頁專案,能夠將 hex/rgb/hsl 轉換為 oklch,生成色板,檢查對比度,處理色域邊界,並使用 Tailwind v4 建立主題,支援 oklch、顏色轉換、色板生成、對比度比率、色域、display p3、設計令牌、色調漂移、色度、暗黑模式顏色等功能。 jakubkrehel8.6k better-typography 網頁字型學從選擇字型到間距、換行和無障礙設計。使用於選擇或組合字型風格、設定可變字型或OpenType功能、建立字型尺度、在元件中樣式化文字、裁剪文字、樣式化下劃線、突出顯示、佔位符或遊標,或檢查前端程式碼的字型學。適用於字型學、字型、字型格式、woff2、可變字型、font-weight、opentype、font-feature-settings、letter-spacing、line-height、字型尺度、表格數字、text-wrap、裁剪、line clamp、下劃線、text-decoration、文字突出顯示、iOS 輸入縮放、字型平滑、文字對比、大小、行長、文字欄、智慧標點符號、drop cap。 jakubkrehel8.6k better-writing 改善使用者體驗的寫作,包括介面標籤、錯誤、空狀態、設定、通知和產品順序。 jakubkrehel8.6k oklch-skill 實用工作流程色彩OKLCH技術,打造一致、易用且可客製化的色彩系統於現代使用者介面。 jakubkrehel frontend-ui-engineering 前端UI工程指南,涵蓋元件架構、響應式設計、無障礙和可維護的實現範本。 addyosmani111k