Use when creating a new project folder, starter pack, app scaffold, or agent-ready workspace — AGENTS.md, README, TASKS, DECISIONS, PROMPTS, an idempotent bootstrap script, and starter-pack modes.
日本語の概要は準備中です。原文の説明を表示しています。
Use when designing or implementing the overall macOS app window shell — titlebar, toolbar, sidebar, content, inspector, window sizing, panels, sheets, and menu bar companion windows.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Build a stable, resizable, native macOS window shell organized around the main task: titlebar, toolbar, sidebar, content, inspector, sizing, panels, sheets, and menu bar companions. Reach for it when shaping the overall window structure rather than one isolated component.
Use this skill when designing or implementing the overall macOS app window shell: titlebar, toolbar, sidebar, content area, inspector, window sizing, panels, sheets, and menu bar companion windows.
A macOS window should feel stable, resizable, native, and organized around the main task.
Use for:
Do not use for:
┌─────────────────────────────────────────────┐
│ Toolbar / titlebar │
├──────────────┬───────────────────┬──────────┤
│ Sidebar │ Main Content │ Inspector│
│ │ │ │
└──────────────┴───────────────────┴──────────┘
Recommended widths:
Sidebar: 220–280 px
Main: flexible, dominant
Inspector: 280–360 px
Small utility: 520 × 420
Medium productivity: 900 × 640
Large workspace: 1100 × 720+
Settings: 520–640 × 360–520
Menu bar popover: 320–420 wide
Use minimum sizes so layout does not break.
@main
struct MyApp: App {
var body: some Scene {
WindowGroup {
RootWindowView()
.frame(minWidth: 900, minHeight: 640)
}
Settings {
SettingsView()
.frame(width: 560, height: 420)
}
}
}
struct RootWindowView: View {
@State private var selection: SidebarDestination? = .home
@State private var showsInspector = true
var body: some View {
NavigationSplitView {
SidebarView(selection: $selection)
} detail: {
DetailView(selection: selection)
.inspector(isPresented: $showsInspector) {
InspectorPanel()
.inspectorColumnWidth(min: 280, ideal: 320, max: 380)
}
}
.toolbar {
ToolbarItem(placement: .primaryAction) {
Button {
showsInspector.toggle()
} label: {
Label("Inspector", systemImage: "sidebar.right")
}
.keyboardShortcut("i", modifiers: [.command])
}
}
}
}
Use sheets for short focused tasks:
New Project
Rename
Choose template
Confirm export
Use separate windows for:
Settings
Detailed logs
Large editor
Long report preview
Use popovers for:
Small contextual controls
Quick capture
Short menu bar interactions
Do not put complex multi-step workflows in tiny popovers.
If the app has both a menu bar item and a full window:
Menu bar = quick status / quick capture / quick action
Window = full workspace
Do not duplicate the full app inside the menu bar popover.
[ ] Window has a clear main task
[ ] Sidebar/content/inspector roles are clear
[ ] Toolbar actions are contextual
[ ] Window has useful minimum size
[ ] Layout survives resizing
[ ] Sidebar can collapse
[ ] Inspector can hide
[ ] Settings window is appropriately sized
[ ] Complex workflows are not inside tiny popovers
[ ] Native macOS chrome is preserved where possible
Fake custom titlebar for no reason
Full dashboard inside menu bar popover
No minimum window size
Inspector always visible on tiny width
Toolbar used as navigation
Sidebar too wide
Content squeezed by too many panels
Settings window too large or dashboard-like
Use the apple-hig-macos-window-layout skill to improve the macOS window shell.
Rules:
- Preserve native macOS window behavior.
- Use NavigationSplitView for sidebar/content layouts.
- Use inspector for selected-item details.
- Keep main content dominant.
- Add sensible minimum window size.
- Make sidebar collapsible.
- Make inspector toggleable.
- Use sheets for short focused tasks.
- Use windows for large workflows.
- Do not duplicate full app inside menu bar popover.
- Test resizing.
After coding:
1. List files changed.
2. Explain window layout.
3. Explain sizing decisions.
4. Explain sidebar/inspector behavior.
5. Give manual test steps.
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Use when creating a new project folder, starter pack, app scaffold, or agent-ready workspace — AGENTS.md, README, TASKS, DECISIONS, PROMPTS, an idempotent bootstrap script, and starter-pack modes.
日本語の概要は準備中です。原文の説明を表示しています。
Use when designing or implementing states for AI agent tasks, background jobs, local model runs, queues, and notifications — one shared set of states, only legal transitions, and a recovery path out of every failure.
日本語の概要は準備中です。原文の説明を表示しています。
Use when exposing app features to App Intents, Shortcuts, Siri, Spotlight, widgets, controls, or system actions — small safe AppIntents, AppShortcutsProvider, AppEnum/AppEntity, parameters, and open-vs-background behavior.
日本語の概要は準備中です。原文の説明を表示しています。
Use when designing, reviewing, or implementing a command-palette / ⌘K layer for an Apple-platform app — keyboard-first global search, ranked and grouped results, native floating panel, and protected destructive commands.
日本語の概要は準備中です。原文の説明を表示しています。
Use when designing or implementing empty, first-run, no-result, offline, error, or waiting states in Apple-platform apps — every empty state explains what is missing, why it matters, and what to do next.
日本語の概要は準備中です。原文の説明を表示しています。
Use when designing or implementing feedback, status, progress, alerts, errors, success states, and live activity indicators in Apple-platform apps — inline status, banners, alerts, notifications, and loading states.
日本語の概要は準備中です。原文の説明を表示しています。