Unispec Docs
Registry

Registry

Publish versioned, validated agent contracts — like npm for agent specs.

The Unispec contracts registry stores versioned, validated agent contracts: machine-readable specs that describe what an agent does — its instructions, input/output schemas, tools, and permissions — independent of any runtime. Publish a contract once, then pull it anywhere, diff it against prior versions, and generate runtime artifacts from it.

  • Projects live under an owner: owner/project (the owner is your organization slug). Visibility is public or private.
  • Drafts → versions. You edit a draft, validate it, then publish an immutable semver version.
  • Validation gates publishing: structural checks, schema checks, tool reference checks, and breaking-change detection against prior versions.
  • Browse the registry at unispec.ai/registry. The HTTP API reference is under API → Registry.

Quickstart

Install the CLI and store credentials (a platform API key works everywhere, including CI):

npm install -g @unispec-ai/cli
unispec login --api-key lb-sk_xxx

1. Scaffold a project

unispec init acme/support-triage
cd support-triage

This creates agent.yaml (the contract), README.md, schemas/, tools/, examples/, and .unispec/project.json (local coordinates + visibility).

2. Edit and validate

Edit agent.yaml (see Contract format), then:

unispec validate --create-if-missing

--create-if-missing creates the remote project on first use. Validation returns issues by severity; errors block publishing.

3. Publish an immutable version

unispec publish --version 1.0.0

Published versions are immutable. Subsequent publishes must bump the version; unispec diff shows what changed (and flags breaking changes):

unispec diff --against 1.0.0

4. Pull and generate

# Pull a published version into a local directory
unispec pull acme/support-triage@1.0.0

# Generate runtime artifacts for a published version
unispec generate acme/support-triage@1.0.0

Command reference

CommandPurpose
unispec init <owner>/<project>Scaffold a local contract project.
unispec loginStore credentials (--api-key, --token, --base-url).
unispec whoamiShow effective auth/config state.
unispec validateValidate the local draft against the registry.
unispec publish --version <v>Publish the draft as an immutable version.
unispec pull [coordinate]Download a published version's files.
unispec generate [coordinate]Generate artifacts for a published version.
unispec diff --against <v>Compare the draft to a published version.
unispec deprecate <v> [--reason]Mark a published version deprecated (undo: unispec undeprecate).
unispec search <query>Search public (and your private) projects.
unispec project statusShow local + remote project status.

Example project

A complete reference contract — typed schemas, a tool, and first-class guardrails — lives at unispec/customer-support (source in the platform repo under contracts/examples/customer-support). Pull it with unispec pull unispec/customer-support to explore the layout.

The same binary also carries the platform product groups (unispec memory, unispec vector, unispec kb, unispec agents) — see the Quickstart.

On this page