- Docs
- catalogue.schema.json
catalogue.schema.json
Field reference for catalogue.schema.json, generated from contracts/catalogue.schema.json.
This table is generated from contracts/catalogue.schema.json.
For what each field means, see the raw schema, which states every rule.
| Field | Type | Required | Rules | Description |
|---|---|---|---|---|
schema | integer | yes | enum: [1] | Schema version — must be 1. |
pack-defaults | object | no | each value: object | Per-pack configuration defaults baked into install-defaults.toml at build time. |
catalogue | object | yes | no undeclared keys | |
catalogue.user-dir | string | no | User-scope pack directory root (must start with ~/). Defaults to ~/.agentbundle when absent. | |
catalogue.name | string | yes | pattern: ^[A-Za-z0-9][A-Za-z0-9_\-]*$ | Safe identifier — [A-Za-z0-9][A-Za-z0-9_-]*. |
catalogue.display-name | string | yes | Human-readable catalogue name. | |
catalogue.description | string | yes | One-line description of the catalogue. | |
catalogue.minimum-agentbundle-version | string | yes | Minimum agentbundle version required to use this catalogue. | |
catalogue.owner | object | no | no undeclared keys | Display/ownership metadata — not a registry publisher identity. |
catalogue.owner.name | string | yes | Display name of the catalogue owner (team, org, or individual). | |
catalogue.paths | object | yes | no undeclared keys | |
catalogue.paths.packs | string | yes | Relative path to the packs directory. | |
catalogue.paths.profiles | string | yes | Relative path to the profiles directory. | |
catalogue.paths.contracts | string | no | Relative path to the contracts directory. Optional — when absent AgentBundle uses its bundled schemas. | |
catalogue.paths.marketplace | string | yes | Relative path to the marketplace.json file. | |
catalogue.paths.build-output | string | yes | Relative path for build output. | |
catalogue.build | object | yes | no undeclared keys | |
catalogue.build.recipes | array of string | yes | Build recipe IDs or relative .toml paths. | |
catalogue.build.self-host | boolean | yes | Whether to generate self-host install-defaults.toml. | |
catalogue.build.claude-plugin-branch | string | yes | Branch name for claude-plugin publishing. | |
catalogue.build.marketplace-description | string | yes | Description for marketplace.json. | |
catalogue.package | object | yes | no undeclared keys | |
catalogue.package.include | array of string | yes | Pack paths to include in a packaged archive. Empty list means include all packs. | |
catalogue.package.required | array of string | no | Required root-level file paths. Overrides the default LICENSE-APACHE / LICENSE-MIT constraint when set. Absent or empty means use the default requirement. | |
distribution | object | yes | no undeclared keys | |
distribution.agentbundle | object | yes | no undeclared keys | |
distribution.agentbundle.install-defaults-output | string | no | Relative path for generated install-defaults.toml. Optional — absent for external catalogues that do not vendor AgentBundle. | |
distribution.agentbundle.preferred-adapter | string | yes | Default adapter hint written to install-defaults.toml. | |
distribution.agentbundle.default-source | string | no | Default catalogue source URI (git+https:// or local path). Optional — absent for newly initialized independent catalogues. | |
distribution.agentbundle.artifactory | object | yes | no undeclared keys | |
distribution.agentbundle.artifactory.enabled | boolean | yes | Whether the Artifactory bootstrap is active. | |
distribution.agentbundle.artifactory.base-url | string | no | Artifactory base URL (https:// only, required when enabled). | |
distribution.agentbundle.artifactory.repository | string | no | Artifactory repository name (required when enabled). | |
distribution.agentbundle.artifactory.bundle | string | no | Catalogue bundle name (required when enabled). | |
distribution.agentbundle.artifactory.channel | string | no | Artifactory channel name (required when enabled = true). |