linear-ui
Skill2 starsChanged 32 days agoMITView on GitHub
Design, implement or review coherent Linear-inspired application interfaces: compact navigation, useful density, themed menus, adaptive action icons and whole-surface accessibility. Use for Linear-style UI, dense workspaces, dashboards, consistent dropdowns, clipped toolbar labels, or a reusable interaction system. Preserve the product's brand, themes, palette, platform and business behavior; this is a design method, not a framework migration.
In this repository19 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- .github/copilot-instructions.mdCopilot instructions
- roberdan-twinSkill
- apple-designerSkill
- auto-checkpointSkill
- engineering-referenceSkill
- film-directorSkill
- focus-groupSkill
- jevSkill
- long-running-jobsSkill
- model-selection-policySkill
- instagram-reel-previewSkill
- premortemSkill
- problem-validationSkill
- reviewSkill
- shipSkill
- syncSkill
- verify-doneSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
27 rules. About 0 are common, 27 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈27
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 16
Use for application workspaces: lists, boards, timelines, reports, editors, administrative tools and desktop/web companions with recurring …
- Distinctive: line 20
Keep the existing framework and platform.
- Distinctive: line 28
Use current public platform documentation for APIs and accessibility patterns.
- Distinctive: line 29
Do not inspect a signed-in workspace or copy private screenshots as references.
- Distinctive: line 48
Do not change themes, colors, palette values, opacity or semantic color mappings unless explicitly authorized.
- Distinctive: line 61
Prefer an interactive slice with the real renderer.
- Distinctive: line 67
Keep the existing presentation available behind the project's established preview boundary.
- Distinctive: line 92
Do not replace routing or business logic just to obtain a new header.
- Distinctive: line 103
Do not replace all of them with one generic dropdown.
- Distinctive: line 107
Keep the native value and application event contract authoritative.
- Distinctive: line 117
Keep the popup inside the viewport and the owning modal's accessibility/focus boundary.
- Distinctive: line 123
Do not sacrifice native accessibility merely to imitate another platform.
- Distinctive: line 128
Keep text when it fits. For familiar actions with an unambiguous existing icon, use an icon-only presentation when the actual container …
- Distinctive: line 136
Keep the icon through loading/retry label changes, with truthful visible or accessible status and correct disabled/busy state.
- Distinctive: line 140
Do not collapse ambiguous, destructive or format-sensitive actions into the same glyph.
- Distinctive: line 142
Do not force icons onto every button.
- Distinctive: line 149
Read verification.md before implementation acceptance.
- Distinctive: line 153
Use real application journeys, not only isolated component demos.
- Distinctive: line 163
If files are expected to match, compare their bytes.
- Distinctive: line 172
Follow engineering-reference for parallel ownership and integration.
- Distinctive: line 182
Use the project's review budget and required independent verifier.
- Distinctive: line 185
Only the owner can approve subjective direction or release gates that belong to them.
- Distinctive: line 190
Keep three ownership layers distinct:
- Distinctive: line 193
Use the existing generated wrappers.
- Distinctive: line 200
Before recommending a framework, inspect its actual distribution: source, runtime styles, exported tokens, component registry and …
- Distinctive: line 204
Do not extract private application code into a public shared library.
- Distinctive: line 210
Do not implement automatic-latest adoption or cross-project edits without scope.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
linear-ui
Build a calm, compact working interface, not a screenshot that resembles Linear. Borrow hierarchy, alignment, navigation clarity and interaction consistency; do not copy branding, artwork, exact colors or an entire product's layout. This skill supplies a direction and acceptance method, not permission to publish.
Fit and boundaries
- Use for application workspaces: lists, boards, timelines, reports, editors, administrative tools and desktop/web companions with recurring tasks.
- An explicitly approved alternative direction wins. Do not impose dashboard density on editorial, expressive, child-facing or voice-first experiences.
- Keep the existing framework and platform. Do not add a build step, component library or web wrapper merely to restyle controls.
- For Apple targets, also invoke the host-declared
apple-designerskill, or read its canonical guidance. Native interaction, accessibility, typography and materials remain platform-specific. - Reuse the generic reference-analysis method in visual-language.md, rather than inventing a competing design process.
- Use current public platform documentation for APIs and accessibility patterns. Do not inspect a signed-in workspace or copy private screenshots as references.
1. Establish the contract before changing pixels
Record a short contract in the task's existing state:
- Audience, primary task, platform, input methods and supported environments.
- What must remain unchanged: brand, themes, palette, fonts where required, navigation, filters, selection, calculations, permissions and write safeguards.
- Existing component and icon systems, native controls, rendering lifecycle, offline/export hosts and optional or feature-gated surfaces.
- The exact evidence required for visual preference, behavior and accessibility.
Inventory every reachable view and control family, not only the home screen. Include shell/settings, search, filters, menus, editable suggestions, drawers, dialogs, confirmations, loading/error/empty states and exported documents. Track default and proposed presentations separately. A source inventory proves what was found in source, not that the interface was exercised.
Do not change themes, colors, palette values, opacity or semantic color mappings unless explicitly authorized. Reusing a token name is insufficient if its use changes the meaning of selection, warning or error. If an existing color constraint prevents adequate contrast, report the conflict; do not quietly recolor the product or weaken the accessibility requirement.
2. Approve a small real slice, then propagate
Unless the direction is already approved, present two or three inexpensive directions using identical synthetic content, dimensions, state and theme. Recommend one. Show a primary workflow and a dense or narrow state, not just an empty landing page.
Prefer an interactive slice with the real renderer. Label static mockups, interactive prototypes and functional application evidence distinctly. Measure useful changes: where content begins, rows visible, steps to an action, readability and retained controls. Less vertical space is not success if a button disappears, text becomes too small or meaning is removed.
Keep the existing presentation available behind the project's established preview boundary. Do not invent persistent preferences or alter domain payloads to carry a temporary presentation choice. Visual approval is not release approval, permission for external writes or proof of accessibility.
3. The visual grammar
| Area | Linear-inspired rule |
| Shell | Stable, quiet navigation; clear active location; predictable keyboard entry points. |
| Header | One view title, compact context, explicit primary action; avoid stacked hero/header duplicates. |
| Content | Prefer aligned working surfaces over decorative card stacks. Keep related facts together. |
| Density | Remove repetition and excess spacing before reducing text or target sizes. |
| Typography | Clear hierarchy, readable secondary text, aligned numeric values, reliable font fallback. |
| Actions | Consistent placement, icon family and wording; primary, secondary and destructive roles remain distinct. |
| Filters | Group by purpose, show active state and a predictable reset without losing unrelated context. |
| Detail | Reveal supporting information progressively, without hiding the task or breaking return focus. |
| Status | Distinguish loading, unavailable, empty, partial and failed; never present missing data as zero. |
Preserve provenance and what counts actually mean. A compact summary must not turn planned work into actuals, a partial result into complete coverage, or different populations into interchangeable numbers.
Reuse existing primitives and renderers. When shared behavior is missing, introduce a small shared primitive rather than independent per-view patches. Do not replace routing or business logic just to obtain a new header.
4. Menus and suggestions belong to the same visual system
Style the open popup as well as the closed control. Changing a border or arrow while the list still uses unrelated operating-system chrome is not complete when a product-themed dropdown was requested.
First reuse a proven accessible component already present in the project. Choose the control by semantics: select-only combobox, editable combobox, multi-select listbox, action menu, disclosure and date picker are different. Do not replace all of them with one generic dropdown.
For web adapters over native controls:
- Keep the native value and application event contract authoritative. Preserve form submission, validation, disabled/required states, labels and descriptions.
- Preserve
input.listwhen existing application logic depends on it. Keep free text in an editable suggestion field unless the domain prohibits it. - Synchronize programmatic value changes, dynamic options, disabled groups, empty options, reset and rerenders without duplicate events or observers.
- Provide the correct role, accessible name, expanded state, active option and selected state. Active navigation is not necessarily committed selection.
- Exercise arrows, Home/End, typeahead, Enter/Space as appropriate, Escape, Tab, outside dismissal, scrolling and focus restoration.
- Keep the popup inside the viewport and the owning modal's accessibility/focus boundary. Do not let clipping or stacking make options unreachable.
Platform APIs such as customizable native selects can help, but verify the supported browser/platform matrix. Do not silently accept an OS popup on unsupported engines while claiming consistent custom styling everywhere. Do not sacrifice native accessibility merely to imitate another platform; surface an unresolved platform tradeoff instead.
5. Adapt action labels to available space
Keep text when it fits. For familiar actions with an unambiguous existing icon, use an icon-only presentation when the actual container cannot accommodate the label. Measure the container and content, or use a proven container-aware component; the global viewport or a matching media breakpoint is not proof.
- Preserve the original action, identifier, handler and full accessible name.
- Provide a discoverable label on keyboard focus as well as hover; touch users must not depend on hover to identify an unfamiliar action.
- Keep the icon through loading/retry label changes, with truthful visible or accessible status and correct disabled/busy state.
- Make the change reversible as space returns. Test font loading, localization, long labels, nested containers and rerenders.
- Do not collapse ambiguous, destructive or format-sensitive actions into the same glyph. Keep explicit labels, wrap or reorganize the toolbar instead.
- Do not force icons onto every button. Do not shrink targets to conceal overflow.
Refresh, spreadsheet export and a clearly named document export may be good candidates; that is an example, not a universal hardcoded allowlist.
6. Validate every host and the actual outcome
Read verification.md before implementation acceptance. Carry the inventory into a matrix of implemented, exercised, intentionally unchanged and unverified items, each with evidence or a reason.
Use real application journeys, not only isolated component demos. Verify the result the user sees after an action: the new report rows and generation, the file actually downloaded, the reopened detail or the restored focus. A successful request, backend job or generated Blob alone is not that result. Synthetic external boundaries are appropriate; replacing the implementation under test is not an end-to-end check.
Offline exports are another host, not screenshots. Include their complete dependency order, frozen selection/theme/reference state and input escaping. Open the actual generated and extracted files without the app server or network. If files are expected to match, compare their bytes. Keep offline documents read-only where the product requires it.
7. Deliver quickly without inventing confidence
Make a coherent, clearly labelled preview available early, independently of final certification. Freeze its source revision and isolate its data, profile, port and write authority. Do not serve partially merged or actively edited files.
Follow engineering-reference for parallel ownership and integration. Separate working copies prevent file overwrite, not semantic conflicts. Reconcile exact completed handoffs serially; a published snapshot does not prove another agent has stopped working.
Give each author and reviewer a different owned evidence directory. Existing inventories, logs and screenshots are read-only inputs, never templates to overwrite with reviewer summaries. Record revision, method, environment, scope, result and provenance. Reconstructed evidence must say it is reconstructed.
Use the project's review budget and required independent verifier. Do not add endless rounds or quietly waive a literal requirement to get a green report. Report working behavior, remaining failures and human/external limits separately. Only the owner can approve subjective direction or release gates that belong to them; only the project's authorized verifier can close its completion gate.
8. Reuse the method without copying the implementation
Keep three ownership layers distinct:
- Canonical skill: direction, interaction principles, evidence and acceptance. Use the existing generated wrappers; do not maintain copied skills in consumers.
- Component system: executable controls, semantic tokens, compositions and tests for its supported platform. Improve existing primitives, not a rival family.
- Product adapter: brand, domain language, platform-specific interaction and application state. Native and web products can share meanings and test scenarios without sharing a renderer, material or pixel value.
Before recommending a framework, inspect its actual distribution: source, runtime styles, exported tokens, component registry and agent-facing documentation can disagree. A package version or a monorepo build is not an isolated-consumer check. Preserve the rendered appearance when reconciling distribution inconsistencies. Do not extract private application code into a public shared library.
Record the guidance revision and the component release or immutable registry snapshot used by each consumer. An update creates a candidate: run that consumer's compatibility checks, review differences, preserve local adaptations and retain rollback before adoption. Distinguish available from adopted and verified. Do not implement automatic-latest adoption or cross-project edits without scope.
Reference basis
Checked 2026-09-13; recheck guidance when the platform or interaction changes.
- Linear's redesign process: hierarchy, alignment, working density, multiple view families and staged rollout.
- WAI-ARIA combobox pattern: interaction semantics, not a license to omit browser and assistive-technology tests.
- Verification sources and exact criteria.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

