Skip to content

Variable: AgentSelectionBaseSchema

Makaio Framework


Makaio Framework / contracts / AgentSelectionBaseSchema

const AgentSelectionBaseSchema: ZodObject<{ allowedDirectories: ZodOptional<ZodArray<ZodString>>; allowedTools: ZodOptional<ZodArray<ZodString>>; cwd: ZodOptional<ZodString>; disallowedTools: ZodOptional<ZodArray<ZodString>>; kind: ZodString; model: ZodOptional<ZodString>; providerConfigId: ZodOptional<ZodString>; reasoningEffort: ZodOptional<ZodEnum<{ extra-high: "extra-high"; high: "high"; low: "low"; medium: "medium"; none: "none"; }>>; systemPrompt: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ content: ZodString; mode: ZodLiteral<"append">; }, $strip>]>>; }, $loose>

Defined in: ../../../packages/contracts/src/adapter/schemas/agent-resolution.ts:25

Common fields shared by all agent selection kinds.

Every AgentSelection carries a kind discriminant (an open string, not a closed enum) plus optional overrides that apply after resolution, regardless of how the agent config was resolved.

Framework defines kind: 'adapter' (direct adapter specification). Host packages register resolvers for additional kinds (e.g. persona, profile, virtual-model) via AgentResolutionSubjects.resolve.

Defined as a loose object (z.looseObject) so kind-specific fields (e.g. personaId, profileId) survive Zod validation when this schema is used as the wire-level validator. Per-kind validation happens in the host-tier resolver, not at the bus transport layer.