improve-loop
Skill1.7k starsChanged 10 days agoMITView on GitHub
Autonomous loop that works through docs/STORIES.md one story at a time for a macOS app, building, snapshotting, comparing against reference screenshots, fixing, and committing, until a milestone is done. Use when the user says "keep going", "work through the backlog", "make it match the reference", or wants an unattended improvement loop.
5 other projects use a version of this, 2 of them edited.
Adopted by
Steady: 0 new projects took it in the last 4 weeks, none the 4 weeks before.thin data
Most recently taken up by
- Stijnus/dsh-rev-engedited, first seen Nov 8, 2026
- daveebbelaar/bawaedited, first seen Nov 8, 2026
- maxvyshniakov/improve-looptheir own version, first seen Oct 13, 2026
- zircote/improvertheir own version, first seen Oct 11, 2026
- skipstery/improve-looptheir own version, first seen Jul 13, 2026
Who's talking about daveebbelaar/bama
- Dave Ebbelaar“This Free Repo Lets Claude Code Build Any Mac App”YouTube · Oct 26, 2026 · 121k views
- tamhn“Claude Giờ Làm Được MỌI Ứng Dụng Mac (Skill Miễn Phí)”YouTube · Oct 29, 2026 · 8.1k views
- Claudical“App Store 대신 말로 만드는 Mac 앱 | Claude Code 플러그인 BAMA”YouTube · Nov 3, 2026 · 1.9k views
- Daksh“BAMA AI Agent builds native Mac apps from screenshots #shorts”YouTube · Oct 28, 2026 · 742 views
- Tech by Thilak“Claude can now clone Mac apps (BAMA, free and open source)”YouTube · Nov 2, 2026 · 310 views
The biggest 5 of 42 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 42
Talked about on GitHub, YouTube and the web (42 times).
On GitHub · 20
- Nov 5, 2026agent-skills.github.daveebbelaar.bama: 0-unstable-2026-11-01 → 1.1.1 — sudosubin/agents.nix0 reactions
- Nov 5, 2026claude-code-plugins.github.daveebbelaar.bama: 0-unstable-2026-11-01 → 1.1.1 — sudosubin/agents.nix0 reactions
- Nov 1, 2026claude-code-plugins.github.daveebbelaar.bama: 0-unstable-2026-10-29 → 0-unstable-2026-11-01 — sudosubin/agents.nix0 reactions
- Nov 1, 2026agent-skills.github.daveebbelaar.bama: 0-unstable-2026-10-29 → 0-unstable-2026-11-01 — sudosubin/agents.nix0 reactions
- Nov 1, 2026[GitHub Radar] 2026-11-01: 3 repo đáng xem — mrxcode-debug/pdt-github-hot-radar0 reactions
15 more on GitHub
- Oct 30, 2026H: Mac app (SwiftUI shell around the Rust binary), replaces the AppleScript droplet — fastermadman/PDFable0 reactions · 1 comment
- Oct 29, 2026agent-skills.github.daveebbelaar.bama: 0-unstable-2026-10-27 → 0-unstable-2026-10-29 — sudosubin/agents.nix0 reactions
- Oct 29, 2026claude-code-plugins.github.daveebbelaar.bama: 0-unstable-2026-10-27 → 0-unstable-2026-10-29 — sudosubin/agents.nix0 reactions
- Oct 28, 2026[Candidate] daveebbelaar/bama/skills/design/layout-grid - layout-grid — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 28, 2026[Candidate] daveebbelaar/bama/skills/design/design-system - design-system — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 28, 2026[Candidate] daveebbelaar/bama/skills/design/design-kit - design-kit — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026agent-skills.github.daveebbelaar.bama: init at 0-unstable-2026-10-27 — sudosubin/agents.nix0 reactions
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/design/design-from-app - design-from-app — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/design/app-icon - app-icon — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/code/swift-swiftui - swift-swiftui — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026claude-code-plugins.github.daveebbelaar.bama: 0-unstable-2026-10-26 → 0-unstable-2026-10-27 — sudosubin/agents.nix0 reactions
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/code/performance - performance — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/code/os-integrations - os-integrations — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026[Candidate] daveebbelaar/bama/skills/code/improve-architecture - improve-architecture — ProSkillsMD/proskills0 reactions · 1 comment
- Oct 27, 2026claude-code-plugins.github.daveebbelaar.bama: init at 0-unstable-2026-10-26 — sudosubin/agents.nix0 reactions
On YouTube · 13
- Oct 26, 2026This Free Repo Lets Claude Code Build Any Mac App — Dave Ebbelaar121k views · 118 comments
- Oct 29, 2026Claude Giờ Làm Được MỌI Ứng Dụng Mac (Skill Miễn Phí) — tamhn8.1k views · 5 comments
- Nov 3, 2026App Store 대신 말로 만드는 Mac 앱 | Claude Code 플러그인 BAMA — Claudical1.9k views · 1 comment
- Oct 28, 2026BAMA AI Agent builds native Mac apps from screenshots #shorts — Daksh742 views
- Nov 2, 2026Claude can now clone Mac apps (BAMA, free and open source) — Tech by Thilak310 views
8 more on YouTube
- Oct 29, 2026Claude Code Mac App: One Sentence In, a Working App Out (Free BAMA Repo) — Simply AI217 views
- Oct 29, 2026Clone any native Mac app using AI agents 🚀 — LookOnThisGit117 views · 1 comment
- Nov 1, 2026AI Se Apni Mac App? 🖥️ — Suresh52 views
- Nov 2, 2026See an app you like? Claude Code rebuilds it as a Mac app (BAMA) — RocketLauncher Code40 views
- Oct 27, 2026Your AI can now build real Mac apps #shorts — No Short Answers36 views · 1 comment
- Oct 27, 2026BAMA: Agent Skills That Build Native Mac Apps #Shorts — Brix AI30 views
- Oct 29, 2026BAMA + 2 more repos · hotin.ai daily Oct 29, 2026 #Shorts — HotInAI27 views
- Nov 4, 2026bama: Rebuild any Mac app instantly — Dail Finds Dev | Repos, Tools, Sites2 views
On the web · 9
- Oct 30, 2026Build your own Mac app with Claude Code | aruntastic — aruntastic.com
- Oct 26, 2026This Free Repo Lets Claude Code Build Any Mac App · CHOOSETO.AI — chooseto.ai
- Oct 24, 2026daveebbelaar/bama - The Skill Leaderboard — skillleaderboard.com
- Feb 15, 2026Product TEA Test: GAMMA - by TEA (The Era Arc) and Sam Li — tea2025.substack.com
- Dec 28, 2025My Experience Using the BMAD Framework on a Personal Project (Patience Required) — dev.to
4 more on the web
- Dec 6, 2025Finding My Brain Again in the Middle of the AI Fire hose | by Shay Dratler — dratler-shay.medium.com
- Sep 14, 2025#6 - ChatGPT Agent, Youware, Gamma - by Brandon — behindonai.substack.com
- Jul 16, 2025My 15 favorite apps I use daily. We spend hours each day on our phones… | by Bex Jeanson — userbexperiencedesign.medium.com
- Aug 11, 2023Last Day with @daveebbelaar here at Termene.ro in Nuba, Mamaia. I got some great insight on how to code an AI Agent that can take notes for your meetings and organise them … | David Podut — linkedin.com
Other versions5 projects use a version of this.
Word for word · 0
None found.
Edited · 2
- daveebbelaar/bawa★ 1776% same
- Stijnus/dsh-rev-eng★ 198% same
Wrote their own version · 3
- maxvyshniakov/improve-loop★ 0same name
- skipstery/improve-loop★ 0same name
- zircote/improver★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository22 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .claude/CLAUDE.mdCLAUDE.md
- agent-cliSkill
- improve-architectureSkill
- os-integrationsSkill
- performanceSkill
- swift-swiftuiSkill
- app-iconSkill
- design-from-appSkill
- design-kitSkill
- design-systemSkill
- layout-gridSkill
- mac-designSkill
- ux-designSkill
- cloneSkill
- researchSkill
- user-storiesSkill
- build-and-verifySkill
- test-mac-appSkill
- app-briefSkill
- bamaSkill
- new-mac-appSkill
The file
We split this skill into the rules it gives an agent
9 rules. 0 are common, 2 are distinctive, and 7 are very specific to this project.
0
Common
Most of the 5 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 15
Stop after the milestone the user named, or after the current milestone if they named none.
- Very specific: line 25
If the story adds a screen, an action, or words and has no UX: block yet, call the Skill tool with ux-design first.
- Distinctive: line 28
Write two to five lines in your head or in the commit body: which files change, which model fields are new, which menu command and shortcut …
- Very specific: line 35
Follow the swift-swiftui and mac-design skills, the story's UX: block, and design/DESIGN-SYSTEM.md if the app has one.
- Very specific: line 38
Put new pages in the SidebarItem enum so snapshot mode visits them.
- Very specific: line 42
Follow the build-and-verify skill.
- Very specific: line 65
No reference screenshot (no app was cloned)?
- Very specific: line 100
When the last story of a milestone is done, call the Skill tool with improve-architecture before you start the next milestone.
- Very specific: line 105
When a story fixes a bug, add an entry to docs/FIXLOG.md: symptom, cause, fix, and a last line Rule: <what to always or never do>.
“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Improve loop
One pass through the loop takes one story from todo to done:
pick story -> plan -> code -> ./build.sh -> snapshot -> compare -> fix -> commit -> update STORIES.mdStop after the milestone the user named, or after the current milestone if they named none. Then report.
1. Pick
Open docs/STORIES.md. Take the first todo story in the current
milestone whose dependencies are done. Set it to doing.
2. Plan
If the story adds a screen, an action, or words and has no UX: block
yet, call the Skill tool with ux-design first.
Write two to five lines in your head or in the commit body: which files change, which model fields are new, which menu command and shortcut it adds, which snapshot page shows it. If the story needs a new SwiftData field, give it a default value so existing databases keep loading.
3. Code
Follow the swift-swiftui and mac-design skills, the story's UX:
block, and design/DESIGN-SYSTEM.md if the app has one. System hooks follow
os-integrations. Keep each view file under about 300 lines.
Put new pages in the SidebarItem enum so snapshot mode visits them.
4. Build and snapshot
Follow the build-and-verify skill. If the story has logic, add a test
or a self-test step (test-mac-app skill). Use seed data (APP_SEED=1) so pages
show real content.
5. Compare
Open your snapshot and the story's reference screenshot side by side with the Read tool. Write down the differences that matter, in this order:
- Missing or wrong behavior from the acceptance criteria.
- Words and flow: names, surface, and states that differ from the
UX:block ordocs/GLOSSARY.md. - Layout: wrong column, wrong order, missing element, and every FAIL from the grid checks.
- Hierarchy: what is biggest, boldest, first.
- Spacing and alignment.
- Color and details.
The goal is the same structure and behavior, built from Apple's own controls. It is not a pixel copy. When the reference uses a web-style custom control and macOS has a native one (a toolbar, a sidebar, a context menu, a date picker), use the native one.
No reference screenshot (no app was cloned)? Compare against the story's
acceptance lines and the mac-design rules instead.
Snapshot only the pages a story touches (APP_SNAPSHOT_PAGES), and the
full set at the end of each milestone.
Fix, rebuild, and compare again. Three rounds per story at most. If it still
does not match, set the story to todo again with a note that says what is
blocking, and move on.
6. Commit and record
git add -A
git commit -m "Complete tasks with Command-Return"Set the story to done in docs/STORIES.md and commit that with the code.
One story per commit, so any story can be reverted on its own. M1 may
land as one commit when its stories share one skeleton (model, pages,
list, persistence); from M2 on, one story per commit.
7. Report
At the end of the loop, report to the user:
- Stories done, with one line each and the snapshot paths that show them.
- Stories blocked, and why.
- Anything the user should try by hand (shortcuts, drag and drop).
- The next story in line.
Then ./build.sh --open so the user can try the new build.
Milestone check-in
When the last story of a milestone is done, call the Skill tool with
improve-architecture before you start the next milestone. Unattended, do
its top recommendation only if it is Strong, and leave the rest in the
review file for the user.
When a story fixes a bug, add an entry to docs/FIXLOG.md: symptom,
cause, fix, and a last line Rule: <what to always or never do>. The fix
log outlives squashed history, and the check-in reads it.
Running it unattended
The loop works with no one watching, because every step checks itself: the build, the snapshots, the acceptance criteria. To let it run longer, start it with a clear limit ("finish M2, then stop"), make sure the tree is committed before you start, and never let it touch the user's real database. Each story is a separate commit, so the user can review the history in the morning and revert anything they do not like.
Done when every story in the milestone is done or named in the report as
blocked with a reason, each done story has its own commit, and the user
has the report.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

