Skip to content

rawGthConfigSchema

const rawGthConfigSchema: ZodObject<{ $schema: ZodOptional<ZodString>; a2aAgents: ZodOptional<ZodRecord<ZodString, ZodUnknown>>; agent: ZodOptional<ZodObject<{ backend: ZodOptional<ZodEnum<{ deep: "deep"; lean: "lean"; }>>; }, $strip>>; aiignore: ZodOptional<ZodObject<{ enabled: ZodOptional<ZodBoolean>; patterns: ZodOptional<ZodArray<ZodString>>; }, $strip>>; allowDirs: ZodOptional<ZodArray<ZodString>>; allowedTools: ZodOptional<ZodArray<ZodString>>; approvals: ZodOptional<ZodUnion<readonly [ZodEnum<{ auto-safe: "auto-safe"; bypass: "bypass"; full-auto: "full-auto"; read-only: "read-only"; write: "write"; }>, ZodObject<{ allow: ZodOptional<ZodArray<ZodDiscriminatedUnion<[…, …, …], "type">>>; deny: ZodOptional<ZodArray<ZodDiscriminatedUnion<[…, …, …], "type">>>; escalate: ZodOptional<ZodArray<ZodDiscriminatedUnion<[…, …, …], "type">>>; mcp: ZodOptional<ZodObject<{ defaults: ZodOptional<…>; servers: ZodOptional<…>; }, $strict>>; mode: ZodOptional<ZodEnum<{ auto-safe: "auto-safe"; bypass: "bypass"; full-auto: "full-auto"; read-only: "read-only"; write: "write"; }>>; rater: ZodOptional<ZodString>; raterTimeoutMs: ZodOptional<ZodNumber>; }, $strip>]>>; askWriteMode: ZodOptional<ZodBoolean>; binaryFormats: ZodOptional<ZodUnion<readonly [ZodLiteral<false>, ZodArray<ZodObject<{ extensions: ZodArray<ZodString>; maxSize: ZodOptional<ZodNumber>; mimeTypes: ZodOptional<ZodRecord<ZodString, ZodString>>; type: ZodEnum<{ audio: "audio"; binary: "binary"; file: "file"; image: "image"; video: "video"; }>; }, $strip>>]>>; builtInTools: ZodOptional<ZodUnion<readonly [ZodArray<ZodString>, ZodRecord<ZodString, ZodUnion<readonly [ZodBoolean, ZodObject<{ command: ZodOptional<…>; enabled: ZodOptional<…>; fileSet: ZodOptional<…>; maxOutputBytes: ZodOptional<…>; timeout: ZodOptional<…>; }, $strip>]>>]>>; builtInToolsConfig: ZodOptional<ZodRecord<ZodString, ZodUnknown>>; canInterruptInferenceWithEsc: ZodOptional<ZodBoolean>; commands: ZodOptional<ZodObject<{ api: ZodOptional<ZodObject<{ approvals: ZodOptional<ZodUnion<readonly […, …]>>; builtInTools: ZodOptional<ZodUnion<readonly […, …]>>; cors: ZodOptional<ZodObject<{ allowHeaders: …; allowMethods: …; allowOrigin: …; }, $strip>>; filesystem: ZodOptional<ZodUnion<readonly […, …]>>; port: ZodOptional<ZodNumber>; }, $strip>>; ask: ZodOptional<ZodObject<{ allowedTools: ZodOptional<ZodArray<ZodString>>; approvals: ZodOptional<ZodUnion<readonly […, …]>>; binaryFormats: ZodOptional<ZodUnion<readonly […, …]>>; builtInTools: ZodOptional<ZodUnion<readonly […, …]>>; customTools: ZodOptional<ZodUnion<readonly […, …]>>; filesystem: ZodOptional<ZodUnion<readonly […, …]>>; }, $strip>>; chat: ZodOptional<ZodObject<{ allowedTools: ZodOptional<ZodArray<ZodString>>; approvals: ZodOptional<ZodUnion<readonly […, …]>>; binaryFormats: ZodOptional<ZodUnion<readonly […, …]>>; builtInTools: ZodOptional<ZodUnion<readonly […, …]>>; customTools: ZodOptional<ZodUnion<readonly […, …]>>; filesystem: ZodOptional<ZodUnion<readonly […, …]>>; }, $strip>>; code: ZodOptional<ZodObject<{ allowedTools: ZodOptional<ZodArray<ZodString>>; approvals: ZodOptional<ZodUnion<readonly […, …]>>; binaryFormats: ZodOptional<ZodUnion<readonly […, …]>>; builtInTools: ZodOptional<ZodUnion<readonly […, …]>>; customTools: ZodOptional<ZodUnion<readonly […, …]>>; filesystem: ZodOptional<ZodUnion<readonly […, …]>>; }, $strip>>; exec: ZodOptional<ZodObject<{ allowedTools: ZodOptional<ZodArray<ZodString>>; approvals: ZodOptional<ZodUnion<readonly […, …]>>; binaryFormats: ZodOptional<ZodUnion<readonly […, …]>>; builtInTools: ZodOptional<ZodUnion<readonly […, …]>>; customTools: ZodOptional<ZodUnion<readonly […, …]>>; filesystem: ZodOptional<ZodUnion<readonly […, …]>>; }, $strip>>; pr: ZodOptional<ZodObject<{ allowedTools: ZodOptional<ZodArray<ZodString>>; approvals: ZodOptional<ZodUnion<readonly […, …]>>; binaryFormats: ZodOptional<ZodUnion<readonly […, …]>>; builtInTools: ZodOptional<ZodUnion<readonly […, …]>>; contentSource: ZodOptional<ZodString>; customTools: ZodOptional<ZodUnion<readonly […, …]>>; filesystem: ZodOptional<ZodUnion<readonly […, …]>>; logWorkForReviewInSeconds: ZodOptional<ZodNumber>; rating: ZodOptional<ZodObject<{ enabled: …; errorOnReviewFail: …; maxRating: …; minRating: …; passThreshold: …; }, $strip>>; requirementSource: ZodOptional<ZodString>; }, $strip>>; review: ZodOptional<ZodObject<{ allowedTools: ZodOptional<ZodArray<ZodString>>; approvals: ZodOptional<ZodUnion<readonly […, …]>>; binaryFormats: ZodOptional<ZodUnion<readonly […, …]>>; builtInTools: ZodOptional<ZodUnion<readonly […, …]>>; contentSource: ZodOptional<ZodString>; customTools: ZodOptional<ZodUnion<readonly […, …]>>; filesystem: ZodOptional<ZodUnion<readonly […, …]>>; rating: ZodOptional<ZodObject<{ enabled: …; errorOnReviewFail: …; maxRating: …; minRating: …; passThreshold: …; }, $strip>>; requirementSource: ZodOptional<ZodString>; }, $strip>>; }, $strip>>; commit: ZodOptional<ZodObject<{ coAuthor: ZodOptional<ZodObject<{ email: ZodOptional<ZodString>; name: ZodOptional<ZodString>; }, $strip>>; }, $strip>>; consoleLevel: ZodOptional<ZodUnion<readonly [ZodString, ZodNumber]>>; contentSource: ZodOptional<ZodString>; contentSourceConfig: ZodOptional<ZodRecord<ZodString, ZodUnknown>>; customTools: ZodOptional<ZodRecord<ZodString, ZodObject<{ command: ZodString; description: ZodString; parameters: ZodOptional<ZodRecord<ZodString, ZodObject<{ allow: ZodOptional<…>; description: ZodString; }, $strip>>>; timeout: ZodOptional<ZodNumber>; }, $strip>>>; debugDump: ZodOptional<ZodObject<{ redact: ZodOptional<ZodBoolean>; }, $strip>>; debugLog: ZodOptional<ZodBoolean>; extends: ZodOptional<ZodString>; filesystem: ZodOptional<ZodUnion<readonly [ZodArray<ZodString>, ZodEnum<{ all: "all"; none: "none"; read: "read"; }>]>>; history: ZodOptional<ZodObject<{ dbPath: ZodOptional<ZodString>; enabled: ZodOptional<ZodBoolean>; }, $strip>>; identityProfile: ZodOptional<ZodString>; includeCurrentDateAfterGuidelines: ZodOptional<ZodBoolean>; injectModelContext: ZodOptional<ZodBoolean>; llm: ZodOptional<ZodObject<{ apiKeyEnvironmentVariable: ZodOptional<ZodString>; configuration: ZodOptional<ZodRecord<ZodString, ZodUnknown>>; model: ZodOptional<ZodString>; type: ZodOptional<ZodString>; }, $loose>>; mcpServers: ZodOptional<ZodRecord<ZodString, ZodUnknown>>; memory: ZodOptional<ZodObject<{ enabled: ZodOptional<ZodBoolean>; }, $strip>>; middleware: ZodOptional<ZodArray<ZodUnknown>>; modelDisplayName: ZodOptional<ZodString>; noDefaultPrompts: ZodOptional<ZodBoolean>; organization: ZodOptional<ZodObject<{ locale: ZodOptional<ZodString>; name: ZodOptional<ZodString>; timezone: ZodOptional<ZodString>; }, $strip>>; output: ZodOptional<ZodObject<{ header: ZodOptional<ZodBoolean>; }, $strip>>; prompts: ZodOptional<ZodObject<{ backstory: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ enabled: ZodOptional<…>; mode: ZodOptional<…>; path: ZodOptional<…>; }, $strip>]>>; chat: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ enabled: ZodOptional<…>; mode: ZodOptional<…>; path: ZodOptional<…>; }, $strip>]>>; code: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ enabled: ZodOptional<…>; mode: ZodOptional<…>; path: ZodOptional<…>; }, $strip>]>>; exec: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ enabled: ZodOptional<…>; mode: ZodOptional<…>; path: ZodOptional<…>; }, $strip>]>>; guidelines: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ enabled: ZodOptional<…>; mode: ZodOptional<…>; path: ZodOptional<…>; }, $strip>]>>; review: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ enabled: ZodOptional<…>; mode: ZodOptional<…>; path: ZodOptional<…>; }, $strip>]>>; system: ZodOptional<ZodUnion<readonly [ZodString, ZodObject<{ enabled: ZodOptional<…>; mode: ZodOptional<…>; path: ZodOptional<…>; }, $strip>]>>; }, $strip>>; recursionLimit: ZodOptional<ZodNumber>; reporters: ZodOptional<ZodRecord<ZodString, ZodString>>; requirementSource: ZodOptional<ZodString>; requirementSourceConfig: ZodOptional<ZodRecord<ZodString, ZodUnknown>>; streamOutput: ZodOptional<ZodBoolean>; streamSessionInferenceLog: ZodOptional<ZodBoolean>; subagents: ZodOptional<ZodArray<ZodObject<{ description: ZodOptional<ZodString>; name: ZodString; profile: ZodString; }, $strip>>>; tls: ZodOptional<ZodObject<{ extraCaCerts: ZodOptional<ZodArray<ZodString>>; rejectUnauthorized: ZodOptional<ZodBoolean>; }, $strip>>; toolLoopGuard: ZodOptional<ZodUnion<readonly [ZodBoolean, ZodObject<{ halt: ZodOptional<ZodBoolean>; threshold: ZodOptional<ZodNumber>; warn: ZodOptional<ZodBoolean>; }, $strip>]>>; tools: ZodOptional<ZodArray<ZodUnknown>>; useColour: ZodOptional<ZodBoolean>; useMouse: ZodOptional<ZodBoolean>; writeBinaryOutputsToFile: ZodOptional<ZodBoolean>; writeOutputToFile: ZodOptional<ZodUnion<readonly [ZodBoolean, ZodString]>>; }, $loose>

Defined in: _worktrees/docs-release/gaunt-sloth/packages/core/src/config/schema.ts:711

Zod schema for the raw, on-disk Gaunt Sloth config. Loose at the top level so unknown keys are preserved (warn-only via findUnknownTopLevelKeys).