Models

The model registry

How models are published, signed and verified, and how this website's catalog is built from the registry.

The official registry is a static bucket served at https://models.boat-annotation.com. The boat CLI installs from it by default, and the model library on this site is generated from it.

Layout

models.boat-annotation.com/
  index.json                   every model, its versions and manifest paths
  index.json.sig               Ed25519 signature over index.json
  manifests/<id>/<version>-<digest>.json
  blobs/sha256/<sha256>        code archives and weight files

Blobs have no file extension; they are identified by the size and SHA-256 recorded in the manifest.

index.json

Each model lists its published versions. The fields shown on this website come straight from here:

{
  "models": {
    "sam3-litetext": [
      {
        "version": "0.0.1",
        "default": "sam3-litetext:S0",
        "manifest": "manifests/sam3-litetext/0.0.1-d7866026581ccc06.json",
        "sha256": "d7866026581ccc06…",
        "recommended": "10/10",
        "vram-required": "2.2GB-2.5GB",
        "runtime": ["linux-cpu", "linux-cuda126", "linux-cuda128", "macos-metal"],
        "tool": ["instance_segmentation:text-to-mask", "object_detection:text-to-boxes"]
      }
    ]
  },
  "schema_version": 1
}
Field Shown on this site as
recommended The recommendation score and default sort order
vram-required VRAM: the weight footprint across tags
runtime Supported platforms
tool Annotation types and tools
default The tag installed when you omit one

Manifests

A manifest describes one release: display name, license and license prompt, tags with their configs and weight files, runtime profiles and the code archives. Code is split into a common archive (shared adapter code, tool definitions and icons) and one archive per runtime profile. Installing downloads only the common archive, the archive for your platform and the weights for the chosen tag.

Verification

  • index.json is signed with Ed25519, and the CLI verifies it before trusting any manifest.
  • Each manifest is pinned by the SHA-256 recorded in the index.
  • Every archive and weight file is pinned by size and SHA-256 in its manifest.

Nothing unverified is installed, and nothing is silently replaced.

How this website's catalog is built

Visitors to this site never hit the registry. The catalog is a snapshot taken at build time:

  1. Maintainers run ./sync.sh in the website repository.
  2. The script downloads index.json, the latest manifest for each model and its small common archive, verifying every SHA-256.
  3. It extracts tool definitions and icons and writes one JSON file, src/data/registry.json.
  4. If anything changed, it builds the site, commits the snapshot and pushes. Cloudflare Pages deploys the static result.

That keeps pages fast and avoids per-visitor requests to the model bucket. The footer and the models page show when the snapshot was taken.

↑↓ navigate↵ open