chore: infer tool params (#241)

Moves the `schema.parse` call to the calling side of the handler, so we
don't have to duplicate it everywhere.
This commit is contained in:
Simon Knott
2025-04-22 13:24:38 +02:00
committed by GitHub
parent 9578a5b2af
commit c80f7cf222
20 changed files with 212 additions and 273 deletions

View File

@@ -15,18 +15,14 @@
*/
import { z } from 'zod';
import { zodToJsonSchema } from 'zod-to-json-schema';
import { defineTool } from './tool';
import type { Tool } from './tool';
const consoleSchema = z.object({});
const console: Tool = {
const console = defineTool({
capability: 'core',
schema: {
name: 'browser_console_messages',
description: 'Returns all console messages',
inputSchema: zodToJsonSchema(consoleSchema),
inputSchema: z.object({}),
},
handle: async context => {
const messages = await context.currentTabOrDie().console();
@@ -42,7 +38,7 @@ const console: Tool = {
waitForNetwork: false,
};
},
};
});
export default [
console,