Skip to content

Type Alias: ClientDefinition

Makaio Framework


Makaio Framework / contracts / ClientDefinition

ClientDefinition = z.infer<typeof ClientDefinitionSchema>

Defined in: ../../../packages/contracts/src/client/definition.ts:494

  • ClientDefinition
    • z.infer<typeof ClientDefinitionSchema>
      • typeof ClientDefinitionSchema
type ClientDefinition = {
id: string;
name: string;
nativeTools: Array<{ name: string; friendlyName: string; capabilities: Array<{ tag: string; description?: string | undefined; }>; description?: string | undefined; category?: string | undefined; }>;
defaultApprovalPolicy: 'reject' | 'always-ask' | 'full-access';
runtimeCapabilities: { supportsHooks: boolean; supportsStatusline: boolean; supportsSupervisorLaunch: boolean; supportsManagedBinary: boolean; hookEvents: Array<{ name: string; frameworkSubject?: string | undefined; }>; };
description?: string | undefined;
binaryName?: string | undefined;
minimumVersion?: string | undefined;
logSources?: Array<{ id: string; name: string; description?: string | undefined; glob?: string | undefined; }> | undefined;
defaultProviderId?: string | undefined;
managedInstall?: { type: 'manifest-bucket'; config: { baseUrl: string; versionIndex: { latest: string; }; manifestPath: string; manifestChecksumField: string; binaryPath: string; archiveFormat?: 'raw' | 'tar.gz' | 'zip' | undefined; }; } | { type: 'npm'; package: string; } | { type: 'github-release'; repo: string; assetPattern: Record<string, string>; archiveFormat: 'tar.gz' | 'zip'; } | undefined;
versionCommand?: Array<string> | undefined;
postInstall?: { kind: string; payload?: Record<string, unknown> | undefined; } | undefined;
configIsolation?: { envVar: string; defaultPath: string; pathKind: 'file' | 'directory'; } | undefined;
};