Skip to content

AgentRow

Defined in: .upstream/src/core/wire.ts:452

The GET /agents row shape as every consumer sees it (warren-4253 / pl-b82d). Not enum-shaped like the rest of this file, but it crosses the same wire and drifted the same way: the UI typed the hoisted description / provider / model trio while the SDK’s hand-copy lacked all three. Declared once here; src/client/types.ts and src/ui/src/api/types.ts re-export it.

Field notes (server truth: DecoratedAgent in src/server/handlers/agents.ts):

  • renderedJson is OPTIONAL: the public projection drops the whole rendered envelope for a readPublic-only spectator (warren-4f6c), so operator surfaces must test presence.
  • description / provider / model are the frontmatter facts hoisted out of renderedJson onto the row (warren-4f6c) so both audiences get them; null when the frontmatter declares none.
  • source is decorated by the server (warren-f6ad / readAgentSource).

The drizzle agents table row is a DIFFERENT shape (physical schema, not wire vocabulary) and lives in src/db/schema/ as AgentDbRow.

description: string | null

Defined in: .upstream/src/core/wire.ts:457


lastRefreshed: string

Defined in: .upstream/src/core/wire.ts:456


model: string | null

Defined in: .upstream/src/core/wire.ts:459


name: string

Defined in: .upstream/src/core/wire.ts:453


provider: string | null

Defined in: .upstream/src/core/wire.ts:458


registeredAt: string

Defined in: .upstream/src/core/wire.ts:455


optional renderedJson?: unknown

Defined in: .upstream/src/core/wire.ts:454


optional source?: "builtin" | "library"

Defined in: .upstream/src/core/wire.ts:460