Command Palette

Search for a command to run...

Addons / Publishing Addons

Publish your addon to the registry

Publishing makes your addon available to anyone with access to the Anesis registry. Point the CLI at a GitHub URL, and the backend fetches the directory, reads your manifest, and creates the registry entry.

Requires anesis loginGitHub URLCommit SHA tracking

Authentication required

Both anesis addon publish and anesis addon update require a saved login session.

Run anesis login before publishing. The CLI sends your auth token with the request so the backend can associate the addon with your account. See the Authentication page for the full login flow.

Publishing an addon

Pass the GitHub URL of your addon directory. Both repo root and subdirectory URLs are accepted.

# Publish an addon whose manifest is at the repo root
anesis addon publish https://github.com/owner/repo

# Publish an addon in a subdirectory
anesis addon publish https://github.com/owner/repo/tree/main/addons/nest-drizzle

Visibility and private repositories

Publish and update both accept the same visibility flags.

  • --visibility <public|private|org-private> — defaults to public when omitted.
  • --credential-id <uuid> — required to read a private GitHub repository during publish.
  • --org-id <uuid> — legacy organization target, kept only for backwards compatibility.
# Publish a private repo, referencing a stored GitHub credential
anesis addon publish https://github.com/owner/repo \
  --visibility private --credential-id <uuid>

Updating an addon

When you push changes to your GitHub repo, run update to sync the registry with the latest commit.

# Update an existing registry entry with the latest commit
anesis addon update https://github.com/owner/repo/tree/main/addons/nest-drizzle

Use the same URL that was passed to anesis addon publish. The backend re-fetches the tree, re-reads the manifest, and updates the stored commit SHA. Users will get the new version on their next install or update.

What happens when you publish

The CLI and backend work together to register your addon.

  1. Validate the URL locally. The CLI checks that the URL is a valid github.com URL with at least an owner/repo path before contacting the server.
  2. Send to the backend. The CLI sends the URL to the backend as JSON. Your auth token is included with the request.
  3. Backend fetches the tree. The backend fetches the GitHub directory tree, reads anesis.addon.json from the published path, and validates the manifest.
  4. Registry entry is created. The addon is stored in the registry with its current commit SHA. The CLI uses the commit SHA to avoid redundant re-downloads.

GitHub URL rules

The CLI validates the URL locally before sending it to the backend.

  • The host must be github.com — other Git hosts are not supported.
  • The path must contain at least owner/repo.
  • Use the GitHub /tree/<branch>/<path> URL format to point at a subdirectory.
  • Both the repository root and subdirectory URLs are valid.