Multiple agents, two Macs, and several skills Developer Jake Mor of Superwall has built a cloud-based workflow using GitHub and Vercel's skills.sh to synchronize AI agent skills across multiple Macs, addressing fragmentation caused by different agents and machines. The system relies on three custom skills—push-my-skills, pull-my-skills, and sync-npx-skills—to keep personal and third-party skills current, with GitHub serving as the durable source of truth. Mor acknowledges the solution is a temporary fix and hopes for an open standard to emerge. Skills are a paramount puzzle piece to my agent usage. The rub? They are too easily fragmented: - You could be using different agents. Claude, annoyingly, looks at its own spot for skills. Everything else uses an open standard, ~/.agents/skills . - Then, there’s different machines you could be running. Symlinking is great, but run npx skills update on your MacBook at home and then your MacBook on the go is now stale. - Each harness seems to want to funnel you into different paths for installing skills. Is there an open standard to solve? Surely, if there is, it would have to be cloud based. For example, at Superwall, we simply have GitHub repo for proprietary, shared skills. So, I’ve adopted that same pattern for two things: - The skills I’ve personally made, and just as important… - Skills I’ve installed via Vercel’s skills.sh https://www.skills.sh . The whole process hinges on three skills: push-my-skills , pull-my-skills , and sync-npx-skills . So, uhhh, naturally - I made a Windows XP recreation to show you how the process works. You got two computers, each needing to be current on 3rd party skills from skills.sh , and my own personal ones. Click on any of the skill buttons below to see how they operate: Choose a job below to watch it travel. MacBook A My source files personal-skills/ Agent copies Claude · Codex · more npx lock What is installed here GitHub Skills I made DreamingInBinary/skills Third-party manifest Desired state + baselines MacBook B My source files personal-skills/ Agent copies Claude · Codex · more npx lock What is installed here Two kinds of skills. One cloud handoff. Your skills no longer depend on whichever Mac or agent you happened to use last. - 1 Skills you author Push the real files up; pull them down elsewhere. - 2 Skills you install Publish the list; reconcile each Mac against it. - ✓ Installed folders are copies GitHub is the durable source of truth. Ready. Pick a job to run. Here’s the technical breakdown. For the skills that I’ve made … …one GitHub repo is the source of truth; so everything inside ~/.agents/skills is merely an installed copy. On one Mac, push-my-skills refreshes those copies, commits my changes and pushes them to GitHub in one shot. On another, pull-my-skills pulls that repo and reinstalls the same skills for every agent. Now, my personal skills are source controlled and current across machines. But, that’s just half of it. Third-party skills actually use a shared manifest instead… …so sync-npx-skills compares that manifest against the Mac’s last sync and its current npx lock file, determining whether a difference was made here, or on another machine. Local additions and removals are published; which means remote changes are applied so each Mac eventually converges on the same set of skills without manually copying folders around. At this point, I have to ask: Did I solve the problem? Absolutely. Did I engineer myself into a small pyrrhic victory along the way? Also absolutely maybe yes My hope is that an open standard arrives tomorrow, and makes all of this gloriously obsolete. Until then, at least both Macs agree on what skills they have. Until next time ✌️