home / skills / petekp / agent-skills / macos-app-design
This skill helps you design macOS apps that feel native and citizen-friendly by aligning with system conventions and Liquid Glass rules.
npx playbooks add skill petekp/agent-skills --skill macos-app-designReview the files below or copy the command above to add this skill to your agents.
---
name: macos-app-design
description: Use when designing or building native macOS applications with SwiftUI or AppKit. Triggers on menu bar structure, keyboard shortcuts, multi-window behavior, Liquid Glass design system, macOS Tahoe/Sequoia, sidebar navigation, toolbar design, app icons, SF Symbols, or making an app feel like a "good Mac citizen."
---
# macOS App Design & Development
Guide for designing and implementing native-feeling, "good Mac citizen" apps: fast, elegant, accessible, and deeply integrated with macOS workflows.
## Two Rules That Beat Everything Else
1. **Prefer system components and conventions** over bespoke UI—fastest path to "feels right on Mac"
2. **If you customize bars, backgrounds, borders, or control chrome**: stop and justify it
## Quick Reference: Mac Citizen Checklist
| Area | Requirement |
|------|-------------|
| **Menu Bar** | Standard layout (App/File/Edit/View/Window/Help), ⌘, for Settings |
| **Keyboard** | Every primary command reachable via keyboard, standard shortcuts work |
| **Windows** | Resize fluidly, support multiple windows, respect fullscreen/minimize |
| **Sidebars** | Top-level navigation, scannable items, content extends behind |
| **Toolbars** | Group by function/frequency, demote secondary to "more" menu |
| **Text** | Use system text components, standard editing behaviors |
| **Accessibility** | VoiceOver labels, full keyboard navigation, Reduced Motion support |
## Liquid Glass Quick Rules
**Do:**
- Use for navigation/controls layer (toolbars, sidebars, bars)
- Let system components provide built-in behaviors
**Don't:**
- Apply to content layer (tables, lists, document content)
- Stack "glass on glass"
## App Archetypes
Identify your app type first:
- **Document-based**: Files as primary units (open/save/duplicate)
- **Library + editor**: Sidebar lists items, detail in main area
- **Utility**: Single window, optional menu bar
- **Menu-bar app**: Lives in menu bar, minimal UI
- **Pro tool**: Dense, power-user workflows
## Deliverables Before Building
1. **App archetype** identified
2. **Information architecture** (sidebar structure, navigation, window model)
3. **Command map** (menus + keyboard shortcuts for every major feature)
4. **State + data model** (persistence, undo/redo, concurrency)
5. **Accessibility plan** (VoiceOver, keyboard, contrast, reduce motion)
## Full Reference
For complete design system details, Icon Composer workflow, SF Symbols guidance, evaluation rubrics, and Definition of Done checklist:
See: [references/macos-design-guide.md](references/macos-design-guide.md)
## Common Mistakes
| Mistake | Fix |
|---------|-----|
| Missing menu bar commands | Every feature in menus with keyboard shortcuts |
| Settings outside App menu | Always ⌘, opening from App menu |
| Custom text components | Use system text for Mac editing ecosystem |
| Toolbar overload | Demote secondary actions, group by function |
| Glass on content | Reserve Liquid Glass for navigation layer only |
| Breaking standard shortcuts | Never override ⌘C, ⌘V, ⌘Z, etc. |
| Single-window only | Support multiple windows when it benefits workflows |
This skill helps designers and developers build native-feeling macOS apps with SwiftUI or AppKit, focusing on system conventions, keyboard-first workflows, and macOS visual language like Liquid Glass. It prioritizes making apps behave like a “good Mac citizen”: fast, accessible, multi-window aware, and consistent with platform expectations. Use it to audit or plan menu structure, shortcuts, sidebars, toolbars, icons, and overall app archetype.
The skill inspects your app’s UI and interaction surface against macOS conventions: menu bar layout, keyboard shortcuts, window behavior, sidebar/navigation patterns, toolbar grouping, and where Liquid Glass is applied. It flags deviations from platform standards, recommends keyboard mappings and menu placement, and produces concrete deliverables to resolve gaps (archetype, information architecture, command map, state model, accessibility plan).
What is Liquid Glass allowed for?
Use Liquid Glass for navigation and controls (sidebars, toolbars, bars). Avoid applying it to content areas like documents, tables, and lists.
How should I handle keyboard shortcuts?
Expose every primary command via keyboard, follow macOS standard shortcuts, and never reassign common system shortcuts like ⌘C/⌘V/⌘Z.
When should I support multiple windows?
Support multiple windows whenever users work on multiple items or compare content; single-window is appropriate only for simple utilities or menu-bar apps.