Skip to content

Variable: StartAgentSchema

Makaio Framework


Makaio Framework / contracts/adapter / StartAgentSchema

const StartAgentSchema: object

Defined in: ../../../packages/contracts/src/adapter/schemas/start-agent.ts:86

Start a new agent with full lifecycle control.

Subject: adapter.startAgent Type: Request (RPC) Purpose: Non-blocking agent creation with full control over session management. Returns immediately with agent identifiers for further interaction.

Request modes:

  • create (default, can be omitted): Create fresh session. Server generates sessionId.
  • resume: Continue existing makaio session from a provider session’s last state.
  • fork: Branch from existing provider session into same makaio session.

For fork mode, sessionId and sourceSessionId are REQUIRED. For resume mode, sessionId and adapterSessionId are REQUIRED.

request: ZodUnion<readonly [ZodObject<{ adapterId: ZodString; allowedDirectories: ZodOptional<ZodArray<ZodString>>; allowedTools: ZodOptional<ZodArray<ZodString>>; clientId: ZodOptional<ZodString>; cwd: ZodOptional<ZodString>; disallowedTools: ZodOptional<ZodArray<ZodString>>; env: ZodOptional<ZodRecord<ZodString, ZodString>>; ephemeral: ZodOptional<ZodBoolean>; harnessId: ZodOptional<ZodString>; initialMessage: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ blocks: ZodUnion<…>; role: ZodOptional<…>; }, $strip>]>>; mcpSessionContext: ZodOptional<ZodObject<{ directTools: ZodArray<ZodObject<{ description: …; enabled: …; enabledAt: …; enabledBy: …; exposed: …; exposureMode: …; fullName: …; inputSchema: …; originalName: …; serverName: …; }, $strip>>; discoverableTools: ZodArray<ZodObject<{ description: …; enabled: …; enabledAt: …; enabledBy: …; exposed: …; exposureMode: …; fullName: …; inputSchema: …; originalName: …; serverName: …; }, $strip>>; profileId: ZodNullable<ZodString>; projectId: ZodNullable<ZodString>; servers: ZodArray<ZodObject<{ exposureMode: …; name: …; transport: …; }, $strip>>; sessionId: ZodString; }, $strip>>; mode: ZodLiteral<"fork">; model: ZodOptional<ZodString>; providerContext: ZodOptional<ZodObject<{ credentialEnvVars: ZodOptional<ZodRecord<ZodString, ZodString>>; credentialRefs: ZodRecord<ZodString, $ZodBranded<ZodString, "CredentialRef", "out">>; definitionId: ZodString; endpointOverrides: ZodOptional<ZodObject<{ anthropic: …; openai: …; }, $strip>>; providerConfigId: ZodString; }, $strip>>; reasoningEffort: ZodOptional<ZodEnum<{ extra-high: "extra-high"; high: "high"; low: "low"; medium: "medium"; none: "none"; }>>; role: ZodEnum<{ lead: "lead"; member: "member"; }>; sessionContext: ZodOptional<ZodObject<{ extractedContext: ZodOptional<ZodUnknown>; hasCompression: ZodOptional<ZodBoolean>; hasConnectorSwap: ZodOptional<ZodBoolean>; hasNewTransforms: ZodOptional<ZodBoolean>; isFirstTurn: ZodOptional<ZodBoolean>; messageHistory: ZodOptional<ZodArray<ZodObject<…, …>>>; turnContext: ZodOptional<ZodRecord<ZodString, ZodType<…, …, …>>>; }, $strip>>; sessionId: ZodString; sourceSessionId: ZodString; systemPrompt: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ content: ZodString; mode: ZodLiteral<…>; }, $strip>]>>; }, $strip>, ZodObject<{ adapterId: ZodString; adapterSessionId: ZodString; allowedDirectories: ZodOptional<ZodArray<ZodString>>; allowedTools: ZodOptional<ZodArray<ZodString>>; clientId: ZodOptional<ZodString>; cwd: ZodOptional<ZodString>; disallowedTools: ZodOptional<ZodArray<ZodString>>; env: ZodOptional<ZodRecord<ZodString, ZodString>>; ephemeral: ZodOptional<ZodBoolean>; harnessId: ZodOptional<ZodString>; initialMessage: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ blocks: ZodUnion<…>; role: ZodOptional<…>; }, $strip>]>>; mcpSessionContext: ZodOptional<ZodObject<{ directTools: ZodArray<ZodObject<{ description: …; enabled: …; enabledAt: …; enabledBy: …; exposed: …; exposureMode: …; fullName: …; inputSchema: …; originalName: …; serverName: …; }, $strip>>; discoverableTools: ZodArray<ZodObject<{ description: …; enabled: …; enabledAt: …; enabledBy: …; exposed: …; exposureMode: …; fullName: …; inputSchema: …; originalName: …; serverName: …; }, $strip>>; profileId: ZodNullable<ZodString>; projectId: ZodNullable<ZodString>; servers: ZodArray<ZodObject<{ exposureMode: …; name: …; transport: …; }, $strip>>; sessionId: ZodString; }, $strip>>; mode: ZodLiteral<"resume">; model: ZodOptional<ZodString>; providerContext: ZodOptional<ZodObject<{ credentialEnvVars: ZodOptional<ZodRecord<ZodString, ZodString>>; credentialRefs: ZodRecord<ZodString, $ZodBranded<ZodString, "CredentialRef", "out">>; definitionId: ZodString; endpointOverrides: ZodOptional<ZodObject<{ anthropic: …; openai: …; }, $strip>>; providerConfigId: ZodString; }, $strip>>; reasoningEffort: ZodOptional<ZodEnum<{ extra-high: "extra-high"; high: "high"; low: "low"; medium: "medium"; none: "none"; }>>; role: ZodEnum<{ lead: "lead"; member: "member"; }>; sessionContext: ZodOptional<ZodObject<{ extractedContext: ZodOptional<ZodUnknown>; hasCompression: ZodOptional<ZodBoolean>; hasConnectorSwap: ZodOptional<ZodBoolean>; hasNewTransforms: ZodOptional<ZodBoolean>; isFirstTurn: ZodOptional<ZodBoolean>; messageHistory: ZodOptional<ZodArray<ZodObject<…, …>>>; turnContext: ZodOptional<ZodRecord<ZodString, ZodType<…, …, …>>>; }, $strip>>; sessionId: ZodString; systemPrompt: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ content: ZodString; mode: ZodLiteral<…>; }, $strip>]>>; }, $strip>, ZodObject<{ adapterId: ZodString; allowedDirectories: ZodOptional<ZodArray<ZodString>>; allowedTools: ZodOptional<ZodArray<ZodString>>; clientId: ZodOptional<ZodString>; cwd: ZodOptional<ZodString>; disallowedTools: ZodOptional<ZodArray<ZodString>>; env: ZodOptional<ZodRecord<ZodString, ZodString>>; ephemeral: ZodOptional<ZodBoolean>; harnessId: ZodOptional<ZodString>; initialMessage: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ blocks: ZodUnion<…>; role: ZodOptional<…>; }, $strip>]>>; mcpSessionContext: ZodOptional<ZodObject<{ directTools: ZodArray<ZodObject<{ description: …; enabled: …; enabledAt: …; enabledBy: …; exposed: …; exposureMode: …; fullName: …; inputSchema: …; originalName: …; serverName: …; }, $strip>>; discoverableTools: ZodArray<ZodObject<{ description: …; enabled: …; enabledAt: …; enabledBy: …; exposed: …; exposureMode: …; fullName: …; inputSchema: …; originalName: …; serverName: …; }, $strip>>; profileId: ZodNullable<ZodString>; projectId: ZodNullable<ZodString>; servers: ZodArray<ZodObject<{ exposureMode: …; name: …; transport: …; }, $strip>>; sessionId: ZodString; }, $strip>>; mode: ZodOptional<ZodLiteral<"create">>; model: ZodOptional<ZodString>; providerContext: ZodOptional<ZodObject<{ credentialEnvVars: ZodOptional<ZodRecord<ZodString, ZodString>>; credentialRefs: ZodRecord<ZodString, $ZodBranded<ZodString, "CredentialRef", "out">>; definitionId: ZodString; endpointOverrides: ZodOptional<ZodObject<{ anthropic: …; openai: …; }, $strip>>; providerConfigId: ZodString; }, $strip>>; reasoningEffort: ZodOptional<ZodEnum<{ extra-high: "extra-high"; high: "high"; low: "low"; medium: "medium"; none: "none"; }>>; role: ZodEnum<{ lead: "lead"; member: "member"; }>; sessionContext: ZodOptional<ZodObject<{ extractedContext: ZodOptional<ZodUnknown>; hasCompression: ZodOptional<ZodBoolean>; hasConnectorSwap: ZodOptional<ZodBoolean>; hasNewTransforms: ZodOptional<ZodBoolean>; isFirstTurn: ZodOptional<ZodBoolean>; messageHistory: ZodOptional<ZodArray<ZodObject<…, …>>>; turnContext: ZodOptional<ZodRecord<ZodString, ZodType<…, …, …>>>; }, $strip>>; sessionId: ZodOptional<ZodString>; systemPrompt: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ content: ZodString; mode: ZodLiteral<…>; }, $strip>]>>; }, $strip>]>

response: ZodDiscriminatedUnion<[ZodObject<{ adapterId: ZodString; adapterSessionId: ZodString; agentId: ZodString; messageId: ZodOptional<ZodString>; sessionId: ZodString; success: ZodLiteral<true>; }, $strip>, ZodObject<{ message: ZodString; success: ZodLiteral<false>; }, $strip>], "success">