This commit is contained in:
Abimael Martell 2026-01-30 08:22:45 -08:00 committed by GitHub
commit 7efd9fc940
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 52 additions and 0 deletions

View File

@ -0,0 +1,38 @@
import { describe, expect, it } from "vitest";
import { MoltbotSchema } from "./zod-schema.js";
describe("tools.web.fetch.firecrawl config schema", () => {
it("accepts firecrawl nested config", () => {
const res = MoltbotSchema.safeParse({
tools: {
web: {
fetch: {
firecrawl: {
enabled: true,
baseUrl: "http://localhost:3002",
onlyMainContent: true,
maxAgeMs: 172800000,
},
},
},
},
});
expect(res.success).toBe(true);
});
it("accepts readability config", () => {
const res = MoltbotSchema.safeParse({
tools: {
web: {
fetch: {
readability: false,
},
},
},
});
expect(res.success).toBe(true);
});
});

View File

@ -182,6 +182,18 @@ export const ToolsWebSearchSchema = z
.strict()
.optional();
export const ToolsWebFetchFirecrawlSchema = z
.object({
enabled: z.boolean().optional(),
apiKey: z.string().optional(),
baseUrl: z.string().optional(),
onlyMainContent: z.boolean().optional(),
maxAgeMs: z.number().int().nonnegative().optional(),
timeoutSeconds: z.number().int().positive().optional(),
})
.strict()
.optional();
export const ToolsWebFetchSchema = z
.object({
enabled: z.boolean().optional(),
@ -190,6 +202,8 @@ export const ToolsWebFetchSchema = z
cacheTtlMinutes: z.number().nonnegative().optional(),
maxRedirects: z.number().int().nonnegative().optional(),
userAgent: z.string().optional(),
readability: z.boolean().optional(),
firecrawl: ToolsWebFetchFirecrawlSchema,
})
.strict()
.optional();