Skip to content

Commit 18d6c53

Browse files
committed
fix(browser-mcp): fix download list retrieval and path issues
1 parent 9896387 commit 18d6c53

1 file changed

Lines changed: 11 additions & 2 deletions

File tree

  • packages/agent-infra/mcp-servers/browser/src/utils

packages/agent-infra/mcp-servers/browser/src/utils/browser.ts

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import path from 'node:path';
12
import { Browser, Page } from 'puppeteer-core';
23
import { LocalBrowser, RemoteBrowser } from '@agent-infra/browser';
34
import { PuppeteerBlocker } from '@ghostery/adblocker-puppeteer';
@@ -185,7 +186,7 @@ export async function ensureBrowser() {
185186
}
186187

187188
if (!store.initialBrowserSetDownloadBehavior) {
188-
const client = await store.globalPage.createCDPSession();
189+
const client = await store.globalBrowser.target().createCDPSession();
189190
const { outputDir } = store.globalConfig;
190191
await client.send('Browser.setDownloadBehavior', {
191192
behavior: 'allow',
@@ -201,7 +202,7 @@ export async function ensureBrowser() {
201202
guid: event.guid,
202203
url: event.url,
203204
suggestedFilename: event.suggestedFilename,
204-
resourceUri: `download://${event.suggestedFilename}`,
205+
resourceUri: path.join(outputDir!, event.suggestedFilename),
205206
createdAt: new Date().toISOString(),
206207
progress: 0,
207208
state: 'inProgress',
@@ -230,6 +231,14 @@ export async function ensureBrowser() {
230231
`状态: ${event.state}, 已下载: ${event.receivedBytes}/${event.totalBytes}`,
231232
);
232233

234+
if (event.state === 'completed') {
235+
// @ts-ignore
236+
if (event.filePath) {
237+
// @ts-ignore
238+
downloadInfo.resourceUri = event.filePath;
239+
}
240+
}
241+
233242
// canceled from browser
234243
if (event.state === 'canceled') {
235244
store.downloadedFiles.splice(idx, 1);

0 commit comments

Comments
 (0)