Skip to content

Packages

sarr-io edited this page Jun 15, 2026 · 28 revisions

Packages

A package is a directory with a zinc.pkg.yaml manifest.

Zinc records package identity and roots. It does not catalog every package file into its database. Package files are read from the package root when requested.

Package facts Zinc records

Fact Purpose
name Package identity.
version Package version.
root Installed root path.
source.git Source repository, when installed from source.
source.ref Source ref, such as a package release tag.
source.path Path inside the source repository.

Package manifest

The manifest is package-owned YAML.

name: openai-responses
version: "0.3.3"
about: OpenAI Responses-shaped model package.

source:
  git: https://github.com/darkhorseprojects/darkhorseprojects-packages.git
  ref: openai-responses-v0.3.3
  path: openai-responses

software:
  responses: software/responses.py

shapes:
  short_answer: shapes/short-answer.circuitry.yaml

settings:
  models: settings/models.yaml

docs:
  readme: docs/README.md

Zinc treats software, shapes, settings, and docs as manifest navigation paths. It does not assign special behavior to those keys.

Why this design exists

Package internals vary by package. One package may contain Python software, another may contain shell settings, and another may contain documentation only.

Zinc keeps package installation easy while staying neutral about package internals.

Design reason

Zinc records enough to find a package and navigate its manifest. The package owns the rest.

Clone this wiki locally