@midscene/web 0.16.5 → 0.16.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es/agent.js +78 -14
- package/dist/es/agent.js.map +1 -1
- package/dist/es/bridge-mode-browser.js +3 -3
- package/dist/es/bridge-mode-browser.js.map +1 -1
- package/dist/es/bridge-mode.js +100 -21
- package/dist/es/bridge-mode.js.map +1 -1
- package/dist/es/chrome-extension.js +79 -15
- package/dist/es/chrome-extension.js.map +1 -1
- package/dist/es/index.js +110 -14
- package/dist/es/index.js.map +1 -1
- package/dist/es/midscene-playground.js +78 -14
- package/dist/es/midscene-playground.js.map +1 -1
- package/dist/es/playground.js +78 -14
- package/dist/es/playground.js.map +1 -1
- package/dist/es/playwright.js +110 -14
- package/dist/es/playwright.js.map +1 -1
- package/dist/es/puppeteer-agent-launcher.js +78 -14
- package/dist/es/puppeteer-agent-launcher.js.map +1 -1
- package/dist/es/puppeteer.js +78 -14
- package/dist/es/puppeteer.js.map +1 -1
- package/dist/es/ui-utils.js.map +1 -1
- package/dist/lib/agent.js +77 -10
- package/dist/lib/agent.js.map +1 -1
- package/dist/lib/bridge-mode-browser.js +3 -3
- package/dist/lib/bridge-mode-browser.js.map +1 -1
- package/dist/lib/bridge-mode.js +99 -18
- package/dist/lib/bridge-mode.js.map +1 -1
- package/dist/lib/chrome-extension.js +78 -11
- package/dist/lib/chrome-extension.js.map +1 -1
- package/dist/lib/index.js +109 -10
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/midscene-playground.js +77 -10
- package/dist/lib/midscene-playground.js.map +1 -1
- package/dist/lib/playground.js +77 -10
- package/dist/lib/playground.js.map +1 -1
- package/dist/lib/playwright.js +109 -10
- package/dist/lib/playwright.js.map +1 -1
- package/dist/lib/puppeteer-agent-launcher.js +77 -10
- package/dist/lib/puppeteer-agent-launcher.js.map +1 -1
- package/dist/lib/puppeteer.js +77 -10
- package/dist/lib/puppeteer.js.map +1 -1
- package/dist/lib/ui-utils.js.map +1 -1
- package/dist/types/agent.d.ts +8 -0
- package/dist/types/bridge-mode-browser.d.ts +1 -1
- package/dist/types/bridge-mode.d.ts +1 -2
- package/dist/types/{browser-0beaa7a7.d.ts → browser-a8afbca5.d.ts} +1 -2
- package/dist/types/playwright.d.ts +16 -0
- package/dist/types/ui-utils.d.ts +1 -1
- package/package.json +4 -3
|
@@ -411,10 +411,7 @@ import { sleep } from "@midscene/core/utils";
|
|
|
411
411
|
import { UITarsModelVersion } from "@midscene/shared/env";
|
|
412
412
|
import { uiTarsModelVersion } from "@midscene/shared/env";
|
|
413
413
|
import { vlLocateMode } from "@midscene/shared/env";
|
|
414
|
-
import {
|
|
415
|
-
imageInfo,
|
|
416
|
-
resizeImgBase64 as resizeImgBase642
|
|
417
|
-
} from "@midscene/shared/img";
|
|
414
|
+
import { imageInfo, resizeImgBase64 as resizeImgBase642 } from "@midscene/shared/img";
|
|
418
415
|
import { getDebug as getDebug2 } from "@midscene/shared/logger";
|
|
419
416
|
import { assert as assert4 } from "@midscene/shared/utils";
|
|
420
417
|
|
|
@@ -1530,17 +1527,23 @@ var PageTaskExecutor = class {
|
|
|
1530
1527
|
executor: taskExecutor
|
|
1531
1528
|
};
|
|
1532
1529
|
}
|
|
1533
|
-
async
|
|
1534
|
-
const
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1530
|
+
async createTypeQueryTask(type, demand) {
|
|
1531
|
+
const taskExecutor = new Executor(
|
|
1532
|
+
taskTitleStr(
|
|
1533
|
+
type,
|
|
1534
|
+
typeof demand === "string" ? demand : JSON.stringify(demand)
|
|
1535
|
+
),
|
|
1536
|
+
{
|
|
1537
|
+
onTaskStart: this.onTaskStartCallback
|
|
1538
|
+
}
|
|
1539
|
+
);
|
|
1538
1540
|
const queryTask = {
|
|
1539
1541
|
type: "Insight",
|
|
1540
|
-
subType:
|
|
1542
|
+
subType: type,
|
|
1541
1543
|
locate: null,
|
|
1542
1544
|
param: {
|
|
1543
1545
|
dataDemand: demand
|
|
1546
|
+
// for user param presentation in report right sidebar
|
|
1544
1547
|
},
|
|
1545
1548
|
executor: async (param) => {
|
|
1546
1549
|
let insightDump;
|
|
@@ -1548,11 +1551,21 @@ var PageTaskExecutor = class {
|
|
|
1548
1551
|
insightDump = dump;
|
|
1549
1552
|
};
|
|
1550
1553
|
this.insight.onceDumpUpdatedFn = dumpCollector;
|
|
1551
|
-
const
|
|
1552
|
-
|
|
1553
|
-
)
|
|
1554
|
+
const ifTypeRestricted = type !== "Query";
|
|
1555
|
+
let demandInput = demand;
|
|
1556
|
+
if (ifTypeRestricted) {
|
|
1557
|
+
demandInput = {
|
|
1558
|
+
result: `${type}, ${demand}`
|
|
1559
|
+
};
|
|
1560
|
+
}
|
|
1561
|
+
const { data, usage } = await this.insight.extract(demandInput);
|
|
1562
|
+
let outputResult = data;
|
|
1563
|
+
if (ifTypeRestricted) {
|
|
1564
|
+
assert4(data?.result !== void 0, "No result in query data");
|
|
1565
|
+
outputResult = data.result;
|
|
1566
|
+
}
|
|
1554
1567
|
return {
|
|
1555
|
-
output:
|
|
1568
|
+
output: outputResult,
|
|
1556
1569
|
log: { dump: insightDump },
|
|
1557
1570
|
usage
|
|
1558
1571
|
};
|
|
@@ -1565,6 +1578,18 @@ var PageTaskExecutor = class {
|
|
|
1565
1578
|
executor: taskExecutor
|
|
1566
1579
|
};
|
|
1567
1580
|
}
|
|
1581
|
+
async query(demand) {
|
|
1582
|
+
return this.createTypeQueryTask("Query", demand);
|
|
1583
|
+
}
|
|
1584
|
+
async boolean(prompt) {
|
|
1585
|
+
return this.createTypeQueryTask("Boolean", prompt);
|
|
1586
|
+
}
|
|
1587
|
+
async number(prompt) {
|
|
1588
|
+
return this.createTypeQueryTask("Number", prompt);
|
|
1589
|
+
}
|
|
1590
|
+
async string(prompt) {
|
|
1591
|
+
return this.createTypeQueryTask("String", prompt);
|
|
1592
|
+
}
|
|
1568
1593
|
async assert(assertion) {
|
|
1569
1594
|
const description = `assert: ${assertion}`;
|
|
1570
1595
|
const taskExecutor = new Executor(taskTitleStr("Assert", description), {
|
|
@@ -1751,6 +1776,16 @@ function buildPlans(type, locateParam, param) {
|
|
|
1751
1776
|
};
|
|
1752
1777
|
returnPlans = [sleepPlan];
|
|
1753
1778
|
}
|
|
1779
|
+
if (type === "Locate") {
|
|
1780
|
+
assert5(locateParam, `missing locate info for action "${type}"`);
|
|
1781
|
+
const locatePlan2 = {
|
|
1782
|
+
type,
|
|
1783
|
+
param: locateParam,
|
|
1784
|
+
locate: locateParam,
|
|
1785
|
+
thought: ""
|
|
1786
|
+
};
|
|
1787
|
+
returnPlans = [locatePlan2];
|
|
1788
|
+
}
|
|
1754
1789
|
if (returnPlans) {
|
|
1755
1790
|
debug3("buildPlans", returnPlans);
|
|
1756
1791
|
return returnPlans;
|
|
@@ -1950,6 +1985,35 @@ ${errorTask?.errorStack}`);
|
|
|
1950
1985
|
this.afterTaskRunning(executor);
|
|
1951
1986
|
return output;
|
|
1952
1987
|
}
|
|
1988
|
+
async aiBoolean(prompt) {
|
|
1989
|
+
const { output, executor } = await this.taskExecutor.boolean(prompt);
|
|
1990
|
+
this.afterTaskRunning(executor);
|
|
1991
|
+
return output;
|
|
1992
|
+
}
|
|
1993
|
+
async aiNumber(prompt) {
|
|
1994
|
+
const { output, executor } = await this.taskExecutor.number(prompt);
|
|
1995
|
+
this.afterTaskRunning(executor);
|
|
1996
|
+
return output;
|
|
1997
|
+
}
|
|
1998
|
+
async aiString(prompt) {
|
|
1999
|
+
const { output, executor } = await this.taskExecutor.string(prompt);
|
|
2000
|
+
this.afterTaskRunning(executor);
|
|
2001
|
+
return output;
|
|
2002
|
+
}
|
|
2003
|
+
async aiLocate(prompt, opt) {
|
|
2004
|
+
const detailedLocateParam = this.buildDetailedLocateParam(prompt, opt);
|
|
2005
|
+
const plans = buildPlans("Locate", detailedLocateParam);
|
|
2006
|
+
const { executor, output } = await this.taskExecutor.runPlans(
|
|
2007
|
+
taskTitleStr("Locate", locateParamStr(detailedLocateParam)),
|
|
2008
|
+
plans
|
|
2009
|
+
);
|
|
2010
|
+
this.afterTaskRunning(executor);
|
|
2011
|
+
const { element } = output;
|
|
2012
|
+
return {
|
|
2013
|
+
rect: element?.rect,
|
|
2014
|
+
center: element?.center
|
|
2015
|
+
};
|
|
2016
|
+
}
|
|
1953
2017
|
async aiAssert(assertion, msg, opt) {
|
|
1954
2018
|
const { output, executor } = await this.taskExecutor.assert(assertion);
|
|
1955
2019
|
this.afterTaskRunning(executor, true);
|
|
@@ -2240,7 +2304,7 @@ function sleep2(ms) {
|
|
|
2240
2304
|
var ChromeExtensionProxyPage = class {
|
|
2241
2305
|
constructor(forceSameTabNavigation) {
|
|
2242
2306
|
this.pageType = "chrome-extension-proxy";
|
|
2243
|
-
this.version = "0.16.
|
|
2307
|
+
this.version = "0.16.6";
|
|
2244
2308
|
this.activeTabId = null;
|
|
2245
2309
|
this.tabIdOfDebuggerAttached = null;
|
|
2246
2310
|
this.attachingDebugger = null;
|