Agent skill

UX Desktop

by davidortinau in davidortinau/maui-skills

Apply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window).

MITAuto-check passedMobile

Install UX Desktop

skills CLI
$ npx skills add davidortinau/maui-skills --skill ux-desktop -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install davidortinau/maui-skills ux-desktop --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/davidortinau/maui-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/maui-skills/skills/ux-desktop .claude/skills/ux-desktop && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ux-desktop
GitHub stars
175
Token cost
~1.4k tokens
SKILL.md length
697 words
Files
1
Skills in repo
41
Repo updated
First seen
Licence
MIT

At a glance

Apply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window).

  • Works in 6 steps: Target sizing. The cursor is effectively… → Hover exists — and you can rely on it.… → Information density can be high. Large… → …
  • : design a desktop app screen
  • SKILL.md covers What defines the desktop medium, The six things that change, How principles shift on desktop and Render-time platform handoff…, plus 1 more section
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

UX Desktop is an agent skill from davidortinau/maui-skills. Apply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window). Use alongside ux-first-principles when the target is a desktop app (Windows, macOS, or Linux; native or web-in-a-window) and the decision is affected by input precision, information density, hover, multi-window behavior, or keyboard operation. USE FOR: 'design a desktop app screen', 'lay out this desktop dashboard', 'what should the desktop layout be', pointer-and-keyboard UI, hover affordances…

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Mobile. It works with Linux and macOS. The repository describes itself as: .NET MAUI skills for GitHub Copilot and Claude Code. The licence is MIT.

When your agent uses it

  • : design a desktop app screen
  • Lay out this desktop dashboard
  • What should the desktop layout be
  • Pointer-and-keyboard UI

Example prompts

  • “design a desktop app screen”
  • “lay out this desktop dashboard”
  • “what should the desktop layout be”
  • “/ux-desktop”

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Target sizing. The cursor is effectively a single point and does not occlude its target, so desktop tolerates small, dense controls…
  2. Hover exists — and you can rely on it. Desktop has a third state between idle and click: hover. Tooltips, hover-reveal controls, previews…
  3. Information density can be high. Large screen + precise pointer + close viewing distance means desktop users can scan dense layouts…
  4. Multi-window and resize resilience. Assume the app runs beside others and gets resized to arbitrary dimensions. Layouts must stay usable…
  5. Pointer precision unlocks richer interactions. Right-click context menus, hover-preview, fine drag-selection, multi-select with modifier…
  6. Keyboard is a primary input, not an accessibility afterthought. Desktop users expect keyboard shortcuts, tab-order navigation, type-ahead…

What it can do on your machine

Read from SKILL.md and the folder at commit 79bb4bf. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

UX Desktop loads about 1.4k tokens when it runs. Until then it costs about 195 tokens; SKILL.md has 697 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~195
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from davidortinau/maui-skills at commit 79bb4bf, republished under its MIT licence (© davidortinau). 697 words, ~1,413 tokens.

Download SKILL.mdSave it as .claude/skills/ux-desktop/SKILL.md (or your agent's skills folder).
name
ux-desktop
description
Apply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window). Use alongside ux-first-principles when the target is a desktop app (Windows, macOS, or Linux; native or web-in-a-window) and the decision is affected by input precision, information density, hover, multi-window behavior, or keyboard operation. USE FOR: 'design a desktop app screen', 'lay out this desktop dashboard', 'what should the desktop layout be', pointer-and-keyboard UI, hover affordances, dense data views, resizable and multi-window layouts. DO NOT USE FOR: the invariant principles (use ux-first-principles); phone or tablet layouts (use ux-mobile or ux-tablet); picking colors, fonts, or platform chrome (use a styling/execution skill).

UX for Desktop

This skill is a thin medium layer. The reasoning (hierarchy, cognitive load, Gestalt, heuristics, accessibility) lives in ux-first-principles; read that first or alongside. Here is only what the desktop medium changes about applying it — driven by the body-to-device interface, not by which OS it is.

What defines the desktop medium

A precise pointer (mouse/trackpad), a hardware keyboard, a large high-resolution display viewed at ~50–70cm, and the assumption that your app is one of several windows the user has open and will resize. These four facts change six things.

The six things that change

  1. Target sizing. The cursor is effectively a single point and does not occlude its target, so desktop tolerates small, dense controls (toolbar buttons, menu items, compact rows) that would be untappable on touch. You can exploit screen edges and corners as "infinite" targets: the cursor stops at the edge, so a control flush against it is trivially easy to hit (classic menu-bar and corner placements). Spend this density budget on power, not on cramming.

  2. Hover exists — and you can rely on it. Desktop has a third state between idle and click: hover. Tooltips, hover-reveal controls, previews, and cursor changes are all legitimate and valuable here. Use hover for progressive disclosure of secondary information and affordances. (This is the single biggest thing that does NOT port to touch — see ux-tablet / ux-mobile.)

  3. Information density can be high. Large screen + precise pointer + close viewing distance means desktop users can scan dense layouts: multi-column data grids, persistent sidebars and inspectors, smaller type, more visible at once. Higher density is a feature here, not clutter — provided hierarchy and grouping (see compositional reference) keep it organized. Keep text line length readable (~50–75 characters) even when width is plentiful.

  4. Multi-window and resize resilience. Assume the app runs beside others and gets resized to arbitrary dimensions. Layouts must stay usable from narrow to very wide. Secondary windows, palettes, inspectors, and detached panels are available and often better than cramming everything into one surface. Design for "works at 600px wide and at 2400px wide," not one fixed size.

  5. Pointer precision unlocks richer interactions. Right-click context menus, hover-preview, fine drag-selection, multi-select with modifier keys, resizable columns, and drag-and-drop are all first-class on desktop. Lean on them for efficiency — but never make them the only path to an action; provide a visible alternative.

  6. Keyboard is a primary input, not an accessibility afterthought. Desktop users expect keyboard shortcuts, tab-order navigation, type-ahead, and full keyboard operability. This doubles as accessibility (WCAG Operable). Define a logical focus order, a visible focus indicator, and accelerators for frequent actions (Nielsen #7, Shneiderman #2).

Show full SKILL.md (258 more words)Show less

How principles shift on desktop

  • Fitts's Law: small targets are fine; edges/corners are powerful; primary actions still deserve prominence.
  • Hick's Law: you can afford to show more choices at once than on mobile, because scanning a large precise display is cheap — but don't confuse "can" with "should."
  • Progressive disclosure: hover and side-panels are your disclosure tools; you rarely need to hide things behind a second screen.
  • Recognition over recall: persistent sidebars/inspectors keep more in view, reducing recall load.

Render-time platform handoff (NOT design decisions)

The following are mechanical, per-platform substitutions, not things to reason about from principles. In .NET MAUI and similar native frameworks they are largely handled at render time. Do them in styling, not in design:

  • Exact control sizing and metrics (e.g., platform-default button heights), system fonts, corner radii, and elevation/material conventions.
  • Window chrome, traffic-light vs. min/max/close button placement, menu-bar vs. in-window menu conventions.
  • OS-global behaviors: respect the platform's window-management and standard shortcuts (copy/paste, quit, close-window) rather than reinventing them.

Everything else — including structural choices like sidebar vs. top-nav, modal vs. inspector panel, and how deep the navigation goes — is a design decision. Reason it from first principles and commit to ONE answer that works across desktop platforms. Do not fork the structure per OS.

Deliberate scope note

This optimizes for a coherent cross-platform product over maximal single-OS idiomaticity. That is the right trade-off for cross-platform app work. The only case where it bites is an app whose entire value proposition is feeling 100% hand-built-native on one specific OS — a positioning choice, not a correctness issue.

© davidortinau, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in plugins/maui-skills/skills/ux-desktop of davidortinau/maui-skills.

Open the folder on GitHubat commit 79bb4bf

Compare with similar skills

UX Desktop next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

UX Desktop compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
UX Desktop this skilldavidortinau/maui-skills175—~1.4kAutomated safety check: PassMIT
Engine Whats Newflutter/flutter179k—~978Automated safety check: PassBSD-3-Clause
Updating Android SDKflutter/flutter179k—~1.7kAutomated safety check: PassBSD-3-Clause
Releasenotepadqq/notepadqq2.3k—~2kAutomated safety check: PassGPL-3.0
OdevioOdevio/Odevio-CLI423—~7.6kAutomated safety check: PassMIT
Jetpack Composedarriousliu/PiPixiv263—~1.5kAutomated safety check: PassApache-2.0

Similar skills

  • Engine Whats New

    flutter/flutter

    Generates the "what's new" release summary and diff file for changes in the Flutter engine (//engine/src/flutter) between two releases (e.g., 3.47 vs 3.44).

    179k GitHub stars~978 tokensUpdated today
    MobileAuto-check passed
  • Updating Android SDK

    flutter/flutter

    Upgrades Flutter's Android SDK dependency to a new Android API version (or preview/canary release) in packages.txt, verifies CIPD tag uniqueness, and packages/uploads the binaries using…

    179k GitHub stars~1.7k tokensUpdated today
    MobileAuto-check passed
  • Release

    notepadqq/notepadqq

    Release a new Notepadqq version. An agent skill from notepadqq/notepadqq.

    2.3k GitHub stars~2k tokensUpdated 5 days ago
    MobileAuto-check passed
  • Odevio

    Odevio/Odevio-CLI

    Take a Flutter project to an iPhone or the App Store with Odevio - build, sign and publish iOS apps from Windows, Linux or macOS with no Mac and no Xcode.

    423 GitHub stars~7.6k tokensUpdated 16 days ago
    MobileAuto-check passed
  • Jetpack Compose

    darriousliu/PiPixiv

    Jetpack Compose expert skill for Android UI development. An agent skill from darriousliu/PiPixiv.

    263 GitHub stars~1.5k tokensUpdated yesterday
    MobileAuto-check passed
  • Ccap

    wysaid/CameraCapture

    Install or use the ccap CLI for camera capture, webcam inspection, device listing, frame capture, and video metadata.

    191 GitHub stars~1.4k tokensUpdated 3 mo ago
    MobileAuto-check passed

More from davidortinau/maui-skills

All 41 skills in this repo
  • Maui Hot Reload Diagnostics

    davidortinau/maui-skills

    Diagnose and troubleshoot .NET MAUI Hot Reload issues (C Hot Reload, XAML Hot Reload, Blazor Hybrid).

    175 GitHub stars~1.3k tokensUpdated 3 mo ago
    Auto-check passed
  • Maui Accessibility

    davidortinau/maui-skills

    Guide for making .NET MAUI apps accessible — screen reader support via SemanticProperties, heading levels, AutomationProperties visibility control, programmatic focus and announcements, and…

    175 GitHub stars~974 tokensUpdated 3 mo ago
    Auto-check passed
  • Maui Animations

    davidortinau/maui-skills

    .NET MAUI view animations, custom animations, easing functions, rotation, scale, translation, and fade effects.

    175 GitHub stars~911 tokensUpdated 3 mo ago
    Auto-check passed
  • Maui App Icons Splash

    davidortinau/maui-skills

    .NET MAUI app icon configuration, splash screen setup, SVG to PNG conversion at build time, composed/adaptive icons, and platform-specific icon and splash screen requirements for Android, iOS, Mac…

    175 GitHub stars~995 tokensUpdated 3 mo ago
    Auto-check passed
  • Maui App Lifecycle

    davidortinau/maui-skills

    .NET MAUI app lifecycle guidance covering the four app states (not running, running, deactivated, stopped), cross-platform Window lifecycle events, backgrounding and resume behaviour…

    175 GitHub stars~947 tokensUpdated 3 mo ago
    Auto-check passed
  • Maui Aspire

    davidortinau/maui-skills

    Guide for .NET MAUI apps consuming .NET Aspire-hosted backend services.

    175 GitHub stars~1.3k tokensUpdated 3 mo ago
    Auto-check passed

Works with

Categories

Questions about UX Desktop

What does UX Desktop do?

Apply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window). UX Desktop is an agent skill from davidortinau/maui-skills. Apply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window).

When should I use UX Desktop?

UX Desktop fits situations like: : design a desktop app screen; lay out this desktop dashboard; what should the desktop layout be; pointer-and-keyboard UI.

How do I install UX Desktop in Claude Code?

Run `npx skills add davidortinau/maui-skills --skill ux-desktop -a claude-code`. Or copy the skill folder (plugins/maui-skills/skills/ux-desktop in davidortinau/maui-skills) into .claude/skills/ux-desktop in your project. Claude Code loads it when a task matches its description.

How do I install UX Desktop in Codex?

Run `npx skills add davidortinau/maui-skills --skill ux-desktop -a codex`. Or copy the skill folder (plugins/maui-skills/skills/ux-desktop in davidortinau/maui-skills) into .agents/skills/ux-desktop in your project. Codex loads it when a task matches its description.

Can I use UX Desktop in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add davidortinau/maui-skills --skill ux-desktop -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ux-desktop, .gemini/skills/ux-desktop, .github/skills/ux-desktop and .opencode/skills/ux-desktop in your project.

What does UX Desktop need to run?

SKILL.md names no scripts, command-line tools or credentials: UX Desktop is instructions for the agent only.

Does UX Desktop access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is UX Desktop safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does UX Desktop use?

UX Desktop is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does UX Desktop use?

About 1.4k tokens (SKILL.md is roughly 5.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to UX Desktop?

Skills that share tags, products or a category with UX Desktop: Engine Whats New (flutter/flutter, 179k stars), Updating Android SDK (flutter/flutter, 179k stars), Release (notepadqq/notepadqq, 2.3k stars) and Odevio (Odevio/Odevio-CLI, 423 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains UX Desktop?

davidortinau (a GitHub user) maintains it in davidortinau/maui-skills, which has 175 GitHub stars. The repository holds 41 skills in this directory. The repository was last updated on July 6, 2026.

Source: davidortinau/maui-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.