diff --git a/packages/core/src/tools/read-file.test.ts b/packages/core/src/tools/read-file.test.ts index b3c80214499..e0003f82086 100644 --- a/packages/core/src/tools/read-file.test.ts +++ b/packages/core/src/tools/read-file.test.ts @@ -480,6 +480,14 @@ describe('ReadFileTool', () => { expect(() => tool.build(params)).not.toThrow(); }); + it('should treat empty pages parameter as unset', () => { + const params: ReadFileToolParams = { + file_path: path.join(tempRootDir, 'test.txt'), + pages: '', + }; + expect(() => tool.build(params)).not.toThrow(); + }); + it('should support offset and limit for text files', async () => { const filePath = path.join(tempRootDir, 'paginated.txt'); const lines = Array.from({ length: 20 }, (_, i) => `Line ${i + 1}`); diff --git a/packages/core/src/tools/read-file.ts b/packages/core/src/tools/read-file.ts index 315ddd6b170..c05740b524c 100644 --- a/packages/core/src/tools/read-file.ts +++ b/packages/core/src/tools/read-file.ts @@ -264,7 +264,7 @@ export class ReadFileTool extends BaseDeclarativeTool< return 'Limit must be a positive number'; } - if (params.pages !== undefined) { + if (params.pages) { const parsed = parsePDFPageRange(params.pages); if (!parsed) { return `Invalid pages parameter: '${params.pages}'. Use formats like '5' or '1-10'.`;