Skip to content

Sync declared skills into bb user skills - #57

Merged
stephendolan merged 1 commit into
mainfrom
agent/bb-skill-sync
Oct 12, 2026
Merged

stephendolan merged 1 commit into
mainfrom
agent/bb-skill-sync

Conversation

@stephendolan

Copy link
Copy Markdown
Owner

Skills install per machine today, so every bb machine needs install-skills.py and drifts whenever its dotfiles checkout falls behind (the Mac Mini was four commits behind and still installed improve-animations). bb already distributes user skills from the server's data directory to threads on every machine, so a single sync on the server can replace those installs for bb threads.

sync-bb-skills.py fills that directory from ai/skillset.json: public and private repositories over git (private ones through the server's gh credentials), GitHub tree URLs, marketplace plugin skills, and the Interface Craft installer. It rewrites only changed skills, never replaces a skill it did not create, and skips pruning for any source that fails to fetch. sync-bb-skills.sh is the entry point for a bb script automation on the server; it runs the sync from a clean checkout of main, so manifest changes apply on the next run.

🤖 Generated with Claude Code

bb injects user skills from the server's data directory into every
provider thread on every machine, so one sync on the bb server replaces
per-machine installs for bb threads. The sync reads the same
ai/skillset.json, fetches public and private repositories with git, and
only replaces or prunes skills it created, so a failed fetch or a
hand-installed skill is never clobbered.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@stephendolan
stephendolan merged commit 1fb0ff6 into main Oct 12, 2026
1 check passed
@stephendolan
stephendolan deleted the agent/bb-skill-sync branch October 12, 2026 20:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant