Skip to main content
Canonical terms used throughout the specification. Implementations SHOULD use the same terms in user-facing interfaces and documentation.

Core concepts

Facet

A named, versioned collection of text assets defined by a manifest. What the author creates, what gets published, and what gets installed.

Facet archive

The published, self-contained artifact stored in the registry. Contains the manifest and all text assets. The transport form between publish and install.

Adapter

An AI coding tool abstraction (OpenCode, Claude Code, Codex). The layer between facet assets and the tool’s storage and configuration conventions.

MCP server

A code asset providing tool capabilities via the Model Context Protocol. Published independently, versioned independently, resolved at install time.

Asset types

Skill

Text asset following the Agent Skills spec.

Agent

Text asset following the Agent Skills spec.

Command

Text asset following the Agent Skills spec.

Server

MCP server reference. Code, not text.

Asset management

TermDefinition
Managed assetInstalled by a facet, tracked in the lockfile and .
Unmanaged assetExists in an adapter directory but not connected to any facet. User-created or kept from an uninstalled facet.

Integrity

Hashes

TermDefinition
Canonical fingerprintSHA-256 of the uncompressed inner tar (content_integrity). Recorded in the lockfile, cache sidecar, and build manifest. Trust anchor for verification.
Transport hashSHA-256 of the uploaded .facet tarball (content_hash). Download-time transit check only. Never persisted to the lockfile.
API surface hashSHA-256 of an MCP server’s tool declarations. Detects structural breaking changes.
OCI digestImmutable content hash for a container image. Pins ref-mode servers in the lockfile.
TermDefinition
Cache sidecarcache-integrity.json stored alongside cached content. Canonical fingerprint + per-asset hashes.
Cache self-auditRe-verification of cached content against its sidecar on every materialization. Evicts on mismatch.
Integrity confirmationRegistry metadata request verifying content matches the published canonical fingerprint. Required when creating a lockfile entry. Fails offline.

Install pipeline

TermDefinition
Install deltaAdditions (user’s specifier verbatim) + removals (bare names). facet install produces an empty delta.
Structural discriminatorAdditions never trust the lockfile for version resolution; reproductions do.
Install receiptMachine-local record under $FACET_DIR/receipts/ tracking materialized state per project. Drives offline drift removal.
Tri-writeAtomic commit: facets.json + facets.lock + receipt written together. Failure leaves all three unchanged.

Execution modes

TermDefinition
Source-modeServer source code published to the facets registry, run via managed runtime.
Ref-modeServer references an OCI container image in an external registry.
Always hyphenate: source-mode, ref-mode. Do not use OCI-mode or unhyphenated forms.

Version constraints

TermDefinition
Floor constraintMinimum acceptable version for source-mode servers. CLI resolves to the latest at or above the floor.
Floor versionThe specific minimum version value (e.g., "1.0.0").

Lifecycle

StageWhat happens
AuthoringAuthor creates a manifest and text assets locally.
PublishingRegistry assembles the archive, computes hashes. Version is immutable once published.
InstallingPlan/commit pipeline: resolve, verify, materialize, tri-write.
UpgradingDiffs surfaced to consumer. API surface changes flagged. (Future)
UninstallingAssets removed via delta pipeline. Receipt updated.
RunningText in context. Servers running via MCP.