u
This commit is contained in:
@@ -96,36 +96,40 @@ export function createWebSearchTool({ googleAuthId }) {
|
||||
additionalProperties: false,
|
||||
required: ['query'],
|
||||
properties: {
|
||||
note: {
|
||||
type: ['string', 'null'],
|
||||
description: 'A note explaining what this search is doing (or null). This note will be displayed to the user while the search is executing.',
|
||||
},
|
||||
query: {
|
||||
type: 'string',
|
||||
description: 'Search query.',
|
||||
},
|
||||
timePeriod: {
|
||||
type: 'string',
|
||||
enum: ['day', 'week', 'month', 'year'],
|
||||
description: 'Time filter: "day", "week", "month", or "year".',
|
||||
type: ['string', 'null'],
|
||||
enum: ['day', 'week', 'month', 'year', null],
|
||||
description: 'Time filter: "day", "week", "month", or "year", or null.',
|
||||
},
|
||||
gl: {
|
||||
type: 'string',
|
||||
description: 'Country code. Default "de".',
|
||||
type: ['string', 'null'],
|
||||
description: 'Country code or null. Default "de".',
|
||||
},
|
||||
hl: {
|
||||
type: 'string',
|
||||
description: 'Language code. Default "de".',
|
||||
type: ['string', 'null'],
|
||||
description: 'Language code or null. Default "de".',
|
||||
},
|
||||
page: {
|
||||
type: 'number',
|
||||
description: 'Result page number (10/page). Default 1.',
|
||||
type: ['number', 'null'],
|
||||
description: 'Result page number (10/page) or null. Default 1.',
|
||||
},
|
||||
},
|
||||
},
|
||||
invoke: async ({ query, timePeriod, tbs, gl = 'de', hl = 'de', page = 1 } = {}, { signal } = {}) => {
|
||||
invoke: async ({ query, timePeriod, tbs, gl = 'de', hl = 'de', page = 1, note } = {}, { signal } = {}) => {
|
||||
const term = typeof query === 'string' ? query.trim() : '';
|
||||
if (!term) {
|
||||
throw new ToolError('web_search requires a non-empty "query".');
|
||||
}
|
||||
|
||||
const parsedPage = Number(page);
|
||||
const parsedPage = page != null ? Number(page) : 1;
|
||||
if (!Number.isInteger(parsedPage) || parsedPage < 1) {
|
||||
throw new ToolError(`"page" must be a positive integer (received ${page}).`);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user