os-integrations
Agent skill fromdaveebbelaar/bama
Deep macOS integrations for a native app, such as global hotkeys, menu bar items, floating panels, window control with Accessibility, screen capture and recording, clipboard, Shortcuts and Spotlight, URL schemes, login items, a CLI, and the permissions each one needs. Use when an app must reach outside its own window or control other apps.
How to install os-integrations
install os-integrations
# install the bama pack with the skills CLI
npx skills add daveebbelaar/bama# or add only this skill to Claude Code: copy the folder
skills/code/os-integrations/
# into
~/.claude/skills/os-integrations/ (all projects)
.claude/skills/os-integrations/ (one project)
1# macOS integrations23A Mac app is a set of entry points around the system, not one window. This4skill picks the API for each entry point and the permission it costs.5Code for every row is in [recipes.md](recipes.md).67## Pick the API89| Want | API | Permission |10| --- | --- | --- |11| Global shortcut (key combo) | Carbon `RegisterEventHotKey` | None |12| Hold-to-show (hold Option, press Tab) or key remapping | `CGEvent.tapCreate` event tap | Accessibility |13| Watch keys without changing them (keystroke overlay) | Listen-only event tap | Input Monitoring (`CGRequestListenEventAccess`) |14| List other apps' windows | `CGWindowListCopyWindowInfo` | None (titles need Screen Recording) |15| Menu bar item | `MenuBarExtra` (SwiftUI) or `NSStatusItem` | None |16| Live status in the menu bar (a timer, a sync) | `MenuBarExtra` with a changing label. Live Activities on a Mac only mirror a paired iPhone | None |17| Desktop and Notification Center widgets | WidgetKit extension target (Xcode build, like App Intents) | None |18| Find the app's content in Spotlight | Core Spotlight `CSSearchableIndex` | None |19| Preview the app's own file type in Finder (Space) | Quick Look preview extension | None |20| Menu-bar-only app, no Dock icon | `LSUIElement = YES` in Info.plist | None |21| Spotlight-style panel that keeps the other app in front | `NSPanel` with `.nonactivatingPanel` | None |22| Move and resize other apps' windows | `AXUIElement` (`kAXPositionAttribute`, `kAXSizeAttribute`) | Accessibility |23…
Excerpt shown under the repository's MIT license.
