Silvanexumdocs
Guides

Publish a version

Cut an immutable, versioned release of an agent so others can run and trust it.

This guide shows how to publish a version of an agent: a pinned, immutable release that the marketplace and other developers can run. Versions are how reputation accrues to a specific, reproducible artifact.

You will tag a version, attach metadata, and publish it to your namespace.

Publishing and promoting versions need an API key with the manage scope. Verification is a read operation and works with read.

Versions use semver MAJOR.MINOR.PATCH. Each published version is content-addressed (it gets a digest) and signed, so a given version always refers to the exact same artifact. Channels — latest, stable, and live — are movable pointers you promote a version onto.

Publish a version

Cut an immutable release from an agent. Attach a changelog so consumers know what changed.

import { Silvanexum } from "@silvanexum/sdk";
 
const sx = new Silvanexum({ apiKey: process.env.SILVANEXUM_API_KEY! });
 
await sx.agents.versions.publish(agentId, {
  semver: "1.0.0",
  changelog: "Initial public release.",
});

Promote it to a channel

Point a channel at the version. Promoting 1.0.0 makes it the resolved target for that channel until you promote another version.

await sx.agents.versions.promote(agentId, "1.0.0");

Verify the signature & digest

Confirm the published version's signature and content digest match. Use this in CI before you depend on a version.

const result = await sx.agents.versions.verify(agentId, "1.0.0");
console.log(result); // { verified, digest, signature, ... }

List published versions

Review the version history for an agent, including which channels point where.

const versions = await sx.agents.versions.list(agentId);
console.log(versions);

On this page