marketplace
The Singularity Marketplace is Snippbot’s package registry for agent profiles, plugins, and bundles. The snippbot marketplace command group lets you search the registry, install packages locally, publish your own, and manage your publisher account.
The marketplace hosts ten package types: agent_profile, agent, tool, workflow, hook, mcp_server, scheduled_job, sandbox_preset, channel, and shared_asset. Bundles (curated sets of packages) are a separate browse-only construct; you don’t publish a bundle as a package type.
Overview
Section titled “Overview”# Discovery & installsnippbot marketplace search [query] # Search the registrysnippbot marketplace info <@pub/pkg> # Package detailssnippbot marketplace install <@pub/pkg> # Install locallysnippbot marketplace list # Locally installed packagessnippbot marketplace uninstall <@pub/pkg> # Remove a local installsnippbot marketplace update # Check for updates
# Publishingsnippbot marketplace init [dir] # Scaffold a new packagesnippbot marketplace publish [dir] # Upload to the registry
# Accountsnippbot marketplace register # Create publisher accountsnippbot marketplace login # Authenticatesnippbot marketplace logout # Clear credentialssnippbot marketplace whoami # Show current publisherDiscovery & install
Section titled “Discovery & install”snippbot marketplace search
Section titled “snippbot marketplace search”Browse the registry.
snippbot marketplace search redis # Keyword searchsnippbot marketplace search -c plugins # Filter by categorysnippbot marketplace search -t agent_profile # Filter by typesnippbot marketplace search --sort newest --limit 10| Option | Values | Description |
|---|---|---|
-c, --category | (string) | Filter by category |
-t, --type | agent_profile, agent, tool, workflow, hook, mcp_server, scheduled_job, sandbox_preset, channel, shared_asset | Filter by type |
-s, --sort | trending, newest, most-installed, rating, name | Sort order (default: trending) |
--page, --limit | int | Pagination (default: page 1, limit 20) |
--json | — | Emit structured JSON |
snippbot marketplace info
Section titled “snippbot marketplace info”Show metadata + version history for a single package. Package refs follow the @publisher/name format.
snippbot marketplace info @acme/research-agentsnippbot marketplace info @acme/research-agent --jsonsnippbot marketplace install
Section titled “snippbot marketplace install”Install a package locally. Downloads the tarball, verifies its SHA256 against the registry record, then installs into ~/.snippbot/packages/.
snippbot marketplace install @acme/research-agent # Latest versionsnippbot marketplace install @acme/research-agent -v 1.2.3 # Pinned versionsnippbot marketplace list
Section titled “snippbot marketplace list”List packages installed locally.
snippbot marketplace listsnippbot marketplace list --jsonsnippbot marketplace uninstall
Section titled “snippbot marketplace uninstall”Remove a locally installed package.
snippbot marketplace uninstall @acme/research-agentsnippbot marketplace uninstall @acme/research-agent --yes # Skip confirmationsnippbot marketplace update
Section titled “snippbot marketplace update”Check for updates to installed packages against the registry. With --apply, patch updates are installed automatically.
snippbot marketplace updatesnippbot marketplace update --apply # Auto-apply patch updatessnippbot marketplace update --jsonPublishing
Section titled “Publishing”snippbot marketplace init
Section titled “snippbot marketplace init”Scaffold a new package directory with singularity.json + .singularityignore.
snippbot marketplace init # Current directorysnippbot marketplace init ./my-plugin -t plugin # With type| Option | Values | Description |
|---|---|---|
-t, --type | One of the 10 ArtifactType values (see the Overview above) | Package type (default: agent_profile) |
snippbot marketplace publish
Section titled “snippbot marketplace publish”Build a tarball from the package directory and upload it. Requires snippbot marketplace login first.
snippbot marketplace publish # Current directorysnippbot marketplace publish ./my-pluginAccount
Section titled “Account”snippbot marketplace register
Section titled “snippbot marketplace register”Create a new publisher account.
snippbot marketplace registerYou’ll be prompted for publisher name (lowercase, alphanumeric, hyphens), display name, email, and password.
snippbot marketplace login / logout / whoami
Section titled “snippbot marketplace login / logout / whoami”snippbot marketplace logoutsnippbot marketplace whoamiCredentials are stored in ~/.snippbot/marketplace_token.json with 0600 permissions.
Advanced commands
Section titled “Advanced commands”| Command | Purpose |
|---|---|
marketplace keygen | Generate an Ed25519 signing keypair |
marketplace upload-key <path> | Upload a public signing key to the registry |
marketplace sign [dir] | Sign a package tarball with your Ed25519 key |
marketplace update-policy | Configure automatic-update policy (auto/prompt/pin) |
marketplace rollback | Roll back a package to a prior version |
marketplace advisories | Show security advisories for installed packages |
marketplace bundles / bundle-info / bundle-install | Curated package bundles |
marketplace plans / billing | Subscription plans & org billing status |
marketplace pro / purchases | Pro subscription & purchase history |
marketplace org … | Org management (create, list, members, invite, remove-member) |
marketplace registry … | Private registry management |
marketplace forgot-password / reset-password | Account recovery |
Pointing at a non-default registry
Section titled “Pointing at a non-default registry”By default every marketplace command targets https://api.singularitymarketplace.com. To target a different registry (a private mirror, a local dev stack, an enterprise on-prem instance), pick one of the following — they are checked in priority order:
snippbot config set registry_url https://your-registry.example.com— persistent for this user.SINGULARITY_REGISTRY_URL=https://your-registry.example.com— environment variable, useful for one-off overrides and CI.- The registry URL stamped into
~/.snippbot/marketplace_token.jsonat login time — this is set automatically when you log in against a non-default registry.
If nothing is set the CLI falls back to the public registry. Verify the registry before running any destructive command (publish, org create, registry create) with:
snippbot marketplace whoami # Shows the registry hostname for your active session