bama
Health Pass
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 121 GitHub stars
Code Pass
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
BAMA: Build Any Mac App. Agent skills to research, clone, design, build, optimize, and test native macOS apps with Swift and SwiftUI.
See an app you like. Rebuild it as your own native Mac app.
Agent skills that take a native macOS app from idea to your Dock.
Swift and SwiftUI. Local data. No Xcode GUI.
Quick start · How it works · Skills · Specs · Install
Quick start
npx skills@latest add daveebbelaar/bama
Then ask your agent:
Clone my to-do app as a native Mac app.
Screenshot every screen, write the user stories, and build milestone 1.
Not sure where to start? Type /bama. It looks at your project and picks the next skill.
How it works
|
1. Clone Your agent opens the app you like and screenshots every screen. It writes a screen index. |
2. Plan It turns the screens into user stories with checkable acceptance criteria, in milestones. |
3. Build It builds one story per commit. Before each commit it snapshots every page in light and dark mode and runs the tests. |
Skills
| Stage | Skill | What it does |
|---|---|---|
| Start | bama | Router: finds where you are and calls the right skill |
| app-brief | Turns an idea into a one-page brief | |
| new-mac-app | A working app from a template: Swift package, SwiftData, build script, snapshot mode, git | |
| Plan | research | Parallel researcher agents: market, users, features, design, macOS APIs |
| clone | Screenshots every screen of any app with computer use or a browser, writes a screen index | |
| user-stories | A backlog with checkable acceptance criteria, in milestones | |
| Code | swift-swiftui | Swift 6 concurrency, state, SwiftData, AppKit bridges, compiler errors |
| os-integrations | Global hotkeys, menu bar, floating panels, window control, screen capture, Shortcuts, URL schemes, CLI, permissions | |
| performance | Measure, then fix: main thread, GPU compositing, images, Instruments from the command line | |
| improve-architecture | Finds hot spots as the app grows and refactors one step per commit, with behavior proven unchanged | |
| agent-cli | Optional: a command line and MCP server, so Claude Code, Codex, and scripts can drive your app | |
| Design | ux-design | Names, flow, where each feature opens (inline, popover, sheet, window), words, and accessibility, before code |
| mac-design | Liquid Glass, layout, toolbars, menus, keyboard, type, dark mode | |
| design-system | Native look with an accent color people pick in Settings, then one set of tokens and one rules page | |
| layout-grid | A 4 pt grid with checks that fail on misalignment: a code lint, a layout probe in snapshot mode, and a grid overlay | |
| design-kit | Your own parts, not Apple's: three token layers, type, an icon set, every part in every state, custom window chrome, and a parts gallery | |
| design-from-app | Rebuilds the look of an app you like from its screenshots: measures sizes, type, and colors, then compares pixel by pixel until it matches | |
| app-icon | A Liquid Glass icon written as an Icon Composer file, checked in every look | |
| Ship | build-and-verify | Build, install, snapshot every page in light and dark, look at them |
| test-mac-app | Swift Testing, an in-app self-test, a debug bridge an agent can drive | |
| improve-loop | Works through the backlog one story per commit until a milestone is done |
Specs
Not sure what to build? specs/ has 12 build plans for small Mac apps: a window snapper, a window switcher, a launcher, clipboard history, screenshots, a screen recorder, and more. I took them apart from Onyx, my own menu bar app. Copy one into an empty folder and tell your agent:
Build the app in window-snapper.md with BAMA.
Install
Pick one route per agent. Two routes install every skill twice.
Claude Code/plugin marketplace add daveebbelaar/bama
/plugin install bama@bama
Codex
codex plugin marketplace add daveebbelaar/bama
codex plugin add bama@bama
Any other agent (Cursor, Gemini CLI, Copilot, and more)
Uses skills.sh. Install all skills, or one with --skill.
npx skills@latest add daveebbelaar/bama -a <agent>
npx skills@latest add daveebbelaar/bama --skill=clone
By hand
git clone https://github.com/daveebbelaar/bama.git
bama/scripts/link-skills.sh # links every skill into ~/.claude/skills and ~/.agents/skills
Requirements
- macOS 26 or later
- Xcode 26 or later, for the Swift 6.2 toolchain (you never open it)
- An agent that supports skills: Claude Code, Codex, Cursor, Gemini CLI
- For
cloneon native apps: computer use (Claude Pro or Max)
Credits
- The idea and the "any" promise come from
REA: Reverse Engineer Anything by morluto.
REA showed that an agent can reverse engineer any app. BAMA takes that idea to the Mac. - Skill format and writing rules follow Matt Pocock's
skills and hiswriting-for-agentsskill. - Works well with SwiftUI Pro
by Paul Hudson and SwiftUI Expert
by Antoine van der Lee.
License
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found