AgentCatalogEntry
A single catalog entry. The four fields `organization_id`, `namespace`, `name`, and `version` together form the immutable identity of an entry. `tag` is an optional mutable pointer (for example `stable`) that resolves to the underlying version at lookup time.
Properties
| Property | Type | Required | Description |
|---|---|---|---|
annotations |
any | Yes | Narrative key/value annotations; not indexed and not queryable. |
category |
string,null | No | |
created_at |
string | Yes | |
created_by_user_id |
string,null | No | |
deprecated |
boolean | Yes | |
description |
string | Yes | |
id |
string | Yes | |
kind |
AgentCatalogEntryKind | Yes | |
labels |
any | Yes | Queryable key/value labels (e.g. `team=platform`, `env=prod`). |
name |
string | Yes | |
namespace |
string | Yes | |
organization_id |
string | Yes | |
requires |
EntryRequires | No | Dependencies this entry requires to be useful. Typed so the control plane can validate references at apply time without parsing free-form JSON. Stored as JSONB; unknown fields are tolerated on read so a schema bump does not invalidate old rows. |
source |
any | Yes | Where the artifact lives. Free-form JSON so we can evolve the source shape (`inline`, `git`, `registry`, ...) without further migrations. |
tag |
string,null | No | |
trust |
any | Yes | Trust and provenance metadata (`author`, `maintained_by`, `license`, `last_audit_at`). Free-form for now; concrete shape comes later. |
updated_at |
string | Yes | |
version |
string | Yes |
View JSON Schema
{
"type": "object",
"description": "A single catalog entry. The four fields `organization_id`, `namespace`,\n`name`, and `version` together form the immutable identity of an entry.\n`tag` is an optional mutable pointer (for example `stable`) that resolves\nto the underlying version at lookup time.",
"required": [
"id",
"organization_id",
"namespace",
"name",
"version",
"kind",
"description",
"source",
"labels",
"annotations",
"trust",
"deprecated",
"created_at",
"updated_at"
],
"properties": {
"annotations": {
"description": "Narrative key/value annotations; not indexed and not queryable."
},
"category": {
"type": [
"string",
"null"
]
},
"created_at": {
"type": "string",
"format": "date-time"
},
"created_by_user_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"deprecated": {
"type": "boolean"
},
"description": {
"type": "string"
},
"id": {
"type": "string",
"format": "uuid"
},
"kind": {
"$ref": "#/components/schemas/AgentCatalogEntryKind"
},
"labels": {
"description": "Queryable key/value labels (e.g. `team=platform`, `env=prod`)."
},
"name": {
"type": "string"
},
"namespace": {
"type": "string"
},
"organization_id": {
"type": "string",
"format": "uuid"
},
"requires": {
"$ref": "#/components/schemas/EntryRequires",
"description": "Dependencies this entry requires to be useful. Typed so the control\nplane can validate references at apply time without parsing free-form\nJSON. Stored as JSONB; unknown fields are tolerated on read so a\nschema bump does not invalidate old rows."
},
"source": {
"description": "Where the artifact lives. Free-form JSON so we can evolve the source\nshape (`inline`, `git`, `registry`, ...) without further migrations."
},
"tag": {
"type": [
"string",
"null"
]
},
"trust": {
"description": "Trust and provenance metadata (`author`, `maintained_by`, `license`,\n`last_audit_at`). Free-form for now; concrete shape comes later."
},
"updated_at": {
"type": "string",
"format": "date-time"
},
"version": {
"type": "string"
}
}
}