Skip to content llms.txt

Registries

Registries are git repositories that hold shared syllago content. Teams publish content to a registry, and consumers add, sync, and browse it locally. Unlike a read-only package feed, registries support contributing back — syllago publish opens a pull request against the registry repo.

When you add a registry, syllago clones the git repo locally. Syncing pulls the latest commits. Browsing lists the content available in the clone. Nothing is installed into your library until you explicitly install an item.

Remote git repo Local clone Your library
┌──────────────┐ add ┌──────────┐ install ┌──────────┐
│ registry.git │──────→ │ .syllago/ │────────→ │ content/ │
└──────────────┘ sync └──────────┘ └──────────┘
↑ │
└──────────────────────┘
publish (PR)
Terminal window
syllago registry add https://github.com/your-org/syllago-registry.git

Options:

  • --name — override the registry name (defaults to name derived from the URL)
  • --ref — pin to a specific branch, tag, or commit (defaults to the repo’s default branch)
Terminal window
# Pin to a release tag
syllago registry add https://github.com/your-org/syllago-registry.git --ref v2.1
# Custom local name
syllago registry add https://github.com/your-org/syllago-registry.git --name team-rules

Pull the latest content from one or all registries:

Terminal window
# Sync all registries
syllago registry sync
# Sync a specific registry
syllago registry sync team-rules

Syncing only updates the local clone. It does not modify your library or any installed content. This keeps your workflow predictable — you choose when to pull updates into your library.

List what a registry offers:

Terminal window
# All items across all registries
syllago registry items
# Items from a specific registry
syllago registry items team-rules
# Filter by content type
syllago registry items --type rules

Install content from a registry into your library using the same install command you use for any content:

Terminal window
syllago install <name> --to <provider>

Syllago resolves the item from your registered registries. Once installed, the content lives in your library and behaves like any other library content.

Terminal window
# List all registered registries
syllago registry list
# Remove a registry (deletes the local clone)
syllago registry remove team-rules

Registries are not read-only. If you have content in your library that belongs in a shared registry, publish it:

Terminal window
syllago publish my-skill --registry team-rules

This opens a pull request against the registry’s git repo. The registry maintainers review and merge through their normal PR workflow — no special tooling required on their end.

For team repos (non-registry), use syllago share instead:

Terminal window
syllago share my-skill

Content from private registries is automatically tainted with source metadata. Syllago blocks publishing tainted content to public registries to prevent accidental leakage. See Registry Privacy for details.

You can scaffold a new registry with syllago registry create:

Terminal window
# Scaffold an empty registry
syllago registry create --new my-rules --description "Team coding standards"
# Index existing provider-native content in a repo
syllago registry create --from-native

Or create one manually — a registry is just a git repo with syllago’s content structure:

  1. Create a new git repo
  2. Add syllago content following the standard directory layout
  3. Push to a git host (GitHub, GitLab, etc.)
  4. Share the URL — others add it with syllago registry add
CollectionRoleAccess model
LibraryYour personal contentFull read-write
RegistriesShared team/community contentConsume locally, contribute via PR
LoadoutsBundled configurationsApply and revert as a unit

Registries feed your library. You browse what is available, install what you need, and the installed content becomes part of your library. Loadouts can then bundle library content into switchable configurations.