agentpage 0.0.39 → 0.0.41
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/README.md +342 -1687
- package/dist/index.d.mts +164 -2
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +1366 -129
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -1
package/dist/index.d.mts
CHANGED
|
@@ -215,6 +215,20 @@ type SnapshotOptions = {
|
|
|
215
215
|
*/
|
|
216
216
|
expandChildrenRefs?: string[]; /** 对 expandChildrenRefs 节点生效的子节点上限(默认 120)。 */
|
|
217
217
|
expandedChildrenLimit?: number;
|
|
218
|
+
/**
|
|
219
|
+
* 快照中允许输出的 listener 事件白名单(默认仅输出常用事件)。
|
|
220
|
+
* 例如:['click', 'input', 'change', 'mousedown']。
|
|
221
|
+
* 仅影响 `listeners="..."` 文本输出,不影响内部交互判定与 hash 分配。
|
|
222
|
+
*/
|
|
223
|
+
listenerEvents?: string[];
|
|
224
|
+
/**
|
|
225
|
+
* class 名过滤正则列表(默认开启常用 UI 框架过滤)。
|
|
226
|
+
* 每项为正则字符串,class 名匹配任一正则即从快照中剔除。
|
|
227
|
+
* - 默认(undefined):启用内置规则,剔除 Element Plus / AntD / BK / TDesign / Arco / Vant / Naive 等。
|
|
228
|
+
* - 自定义 string[]:替换默认规则,使用自定义正则。
|
|
229
|
+
* - false:禁用过滤,保留所有 class。
|
|
230
|
+
*/
|
|
231
|
+
classNameFilter?: string[] | false;
|
|
218
232
|
};
|
|
219
233
|
/**
|
|
220
234
|
* 生成页面 DOM 快照 — 将 DOM 树转为 AI 可理解的文本描述。
|
|
@@ -239,6 +253,123 @@ type SnapshotOptions = {
|
|
|
239
253
|
declare function generateSnapshot(root?: Element, options?: SnapshotOptions | number): string;
|
|
240
254
|
declare function createPageInfoTool(): ToolDefinition;
|
|
241
255
|
//#endregion
|
|
256
|
+
//#region src/web/ui/panel.d.ts
|
|
257
|
+
/** 面板配置选项 */
|
|
258
|
+
type PanelOptions = {
|
|
259
|
+
/** 面板容器挂载点(默认 document.body) */container?: HTMLElement; /** 构造时是否自动挂载到 DOM(默认 true)。设为 false 时需手动调用 mount() */
|
|
260
|
+
mount?: boolean; /** 是否在 Agent 运行时自动显示操作遮罩(默认 true) */
|
|
261
|
+
enableMask?: boolean; /** 遮罩背景透明度(0–1,默认 0.15)。0 = 全透明,1 = 纯白不透明 */
|
|
262
|
+
maskOpacity?: number; /** 面板默认展开状态(默认 false,即收起状态,只显示 FAB) */
|
|
263
|
+
expanded?: boolean; /** 面板标题(默认 "AutoPilot") */
|
|
264
|
+
title?: string; /** 输入框占位文本 */
|
|
265
|
+
placeholder?: string; /** 遮罩提示文本 */
|
|
266
|
+
maskText?: string; /** 空状态提示文本 */
|
|
267
|
+
emptyText?: string;
|
|
268
|
+
};
|
|
269
|
+
/** 消息类型 */
|
|
270
|
+
type MessageType = "user" | "assistant" | "tool" | "error";
|
|
271
|
+
/** 面板状态 */
|
|
272
|
+
type PanelStatus = "idle" | "running" | "error";
|
|
273
|
+
/**
|
|
274
|
+
* AutoPilot UI 面板。
|
|
275
|
+
*
|
|
276
|
+
* 使用方式:
|
|
277
|
+
* ```ts
|
|
278
|
+
* // 默认自动挂载
|
|
279
|
+
* const panel = new Panel({ enableMask: true });
|
|
280
|
+
* panel.onSend = async (text) => { await agent.chat(text); };
|
|
281
|
+
*
|
|
282
|
+
* // 延迟挂载
|
|
283
|
+
* const panel = new Panel({ mount: false });
|
|
284
|
+
* panel.mount(); // 手动挂载
|
|
285
|
+
* ```
|
|
286
|
+
*/
|
|
287
|
+
declare class Panel {
|
|
288
|
+
private container;
|
|
289
|
+
private enableMask;
|
|
290
|
+
private maskOpacity;
|
|
291
|
+
private title;
|
|
292
|
+
private placeholder;
|
|
293
|
+
private maskText;
|
|
294
|
+
private emptyText;
|
|
295
|
+
private root;
|
|
296
|
+
private fab;
|
|
297
|
+
private mask;
|
|
298
|
+
private panelEl;
|
|
299
|
+
private messagesEl;
|
|
300
|
+
private inputEl;
|
|
301
|
+
private sendBtn;
|
|
302
|
+
private statusDot;
|
|
303
|
+
private statusText;
|
|
304
|
+
private stopBtnContainer;
|
|
305
|
+
private styleEl;
|
|
306
|
+
private fabDragging;
|
|
307
|
+
private fabHasMoved;
|
|
308
|
+
private mounted;
|
|
309
|
+
private expanded;
|
|
310
|
+
private status;
|
|
311
|
+
/** 用户发送消息回调 — 由 WebAgent 绑定 */
|
|
312
|
+
onSend: ((text: string) => Promise<void>) | null;
|
|
313
|
+
/** 用户点击停止按钮回调 */
|
|
314
|
+
onStop: (() => void) | null;
|
|
315
|
+
constructor(options?: PanelOptions);
|
|
316
|
+
/** 挂载面板到 DOM(全局单例:先清理残留再创建,防止 HMR/多实例"分身") */
|
|
317
|
+
mount(): void;
|
|
318
|
+
/** 卸载面板 */
|
|
319
|
+
unmount(): void;
|
|
320
|
+
/** 展开面板(tooltip 风格定位到 FAB 旁边,FAB 保持可见) */
|
|
321
|
+
show(): void;
|
|
322
|
+
/** 收起面板 */
|
|
323
|
+
hide(): void;
|
|
324
|
+
/** 切换展开/收起 */
|
|
325
|
+
toggle(): void;
|
|
326
|
+
/** 是否已展开 */
|
|
327
|
+
isExpanded(): boolean;
|
|
328
|
+
/** 是否已挂载 */
|
|
329
|
+
isMounted(): boolean;
|
|
330
|
+
/** 添加消息到面板 */
|
|
331
|
+
addMessage(type: MessageType, text: string): void;
|
|
332
|
+
/** 清空所有消息 */
|
|
333
|
+
clearMessages(): void;
|
|
334
|
+
/** 设置面板状态 */
|
|
335
|
+
setStatus(status: PanelStatus, text?: string): void;
|
|
336
|
+
/** 显示操作遮罩 */
|
|
337
|
+
showMask(): void;
|
|
338
|
+
/** 隐藏操作遮罩 */
|
|
339
|
+
hideMask(): void;
|
|
340
|
+
/** 显示 typing 指示器 */
|
|
341
|
+
showTyping(): void;
|
|
342
|
+
/** 移除 typing 指示器 */
|
|
343
|
+
removeTyping(): void;
|
|
344
|
+
/**
|
|
345
|
+
* 清理 DOM 中残留的旧 Panel 元素。
|
|
346
|
+
* 防止 HMR 热更新或多次 new Panel() 导致多个 FAB/面板"分身"。
|
|
347
|
+
*/
|
|
348
|
+
private cleanupStale;
|
|
349
|
+
private injectStyles;
|
|
350
|
+
private createDOM;
|
|
351
|
+
private bindEvents;
|
|
352
|
+
/**
|
|
353
|
+
* 使用 @floating-ui/dom 计算面板相对于 FAB 的 tooltip 位置。
|
|
354
|
+
* 根据 FAB 贴边方向自动翻转,并设置对应的 transform-origin 确保动画自然。
|
|
355
|
+
*/
|
|
356
|
+
private updatePanelPosition;
|
|
357
|
+
/**
|
|
358
|
+
* 初始化 FAB 按钮拖拽:长按 300ms 后进入拖拽模式,松手后自动贴边。
|
|
359
|
+
* 短按(未触发长按)或移动距离不超过阈值的走正常 click toggle 逻辑。
|
|
360
|
+
*/
|
|
361
|
+
private initFabDrag;
|
|
362
|
+
/**
|
|
363
|
+
* FAB 吸附到最近屏幕边缘(左/右贴边,上下保持位置)。
|
|
364
|
+
*/
|
|
365
|
+
private snapFabToEdge;
|
|
366
|
+
private handleSend;
|
|
367
|
+
private updateInputState;
|
|
368
|
+
private showEmpty;
|
|
369
|
+
private scrollToBottom;
|
|
370
|
+
private escapeHtml;
|
|
371
|
+
}
|
|
372
|
+
//#endregion
|
|
242
373
|
//#region src/web/tools/dom-tool.d.ts
|
|
243
374
|
declare function createDomTool(): ToolDefinition;
|
|
244
375
|
//#endregion
|
|
@@ -343,7 +474,8 @@ type WebAgentOptions = {
|
|
|
343
474
|
provider?: string; /** 模型名称(默认 "gpt-4o") */
|
|
344
475
|
model?: string; /** 自定义 API 基础 URL(可选,覆盖 provider 默认值) */
|
|
345
476
|
baseURL?: string; /** 是否启用流式输出(SSE)。默认 true;false 时使用 JSON 非流式响应。 */
|
|
346
|
-
stream?: boolean; /**
|
|
477
|
+
stream?: boolean; /** 单次 AI 请求超时(毫秒,默认 45000;<=0 表示不设置超时)。 */
|
|
478
|
+
requestTimeoutMs?: number; /** 是否启用干运行模式 */
|
|
347
479
|
dryRun?: boolean;
|
|
348
480
|
/**
|
|
349
481
|
* 系统提示词注册项。
|
|
@@ -356,6 +488,13 @@ type WebAgentOptions = {
|
|
|
356
488
|
autoSnapshot?: boolean; /** 快照选项(视口裁剪、智能剪枝等,autoSnapshot 开启时生效) */
|
|
357
489
|
snapshotOptions?: SnapshotOptions; /** 轮次后稳定等待(加载态 + DOM 静默)配置 */
|
|
358
490
|
roundStabilityWait?: RoundStabilityWaitOptions;
|
|
491
|
+
/**
|
|
492
|
+
* UI 面板配置。
|
|
493
|
+
* - true:使用默认配置创建面板
|
|
494
|
+
* - PanelOptions:使用自定义配置创建面板
|
|
495
|
+
* - false / undefined:不创建面板
|
|
496
|
+
*/
|
|
497
|
+
panel?: boolean | PanelOptions;
|
|
359
498
|
};
|
|
360
499
|
declare class WebAgent {
|
|
361
500
|
/** 默认系统提示词 key(兼容旧版 setSystemPrompt(prompt))。 */
|
|
@@ -369,6 +508,7 @@ declare class WebAgent {
|
|
|
369
508
|
private model;
|
|
370
509
|
private baseURL?;
|
|
371
510
|
private stream;
|
|
511
|
+
private requestTimeoutMs;
|
|
372
512
|
private dryRun;
|
|
373
513
|
private maxRounds;
|
|
374
514
|
/** system prompt 注册表(key -> prompt 文本)。 */
|
|
@@ -387,6 +527,8 @@ declare class WebAgent {
|
|
|
387
527
|
private roundStabilityWait?;
|
|
388
528
|
/** 工具注册表实例 — 每个 WebAgent 拥有独立的工具集 */
|
|
389
529
|
private registry;
|
|
530
|
+
/** 内置 UI 面板(通过 options.panel 配置启用) */
|
|
531
|
+
panel: Panel | null;
|
|
390
532
|
/** 事件回调 — 绑定后可实时获取 Agent 进度,用于 UI 展示 */
|
|
391
533
|
callbacks: WebAgentCallbacks;
|
|
392
534
|
constructor(options: WebAgentOptions);
|
|
@@ -428,6 +570,10 @@ declare class WebAgent {
|
|
|
428
570
|
setStream(enabled: boolean): void;
|
|
429
571
|
/** 获取当前流式输出开关状态 */
|
|
430
572
|
getStream(): boolean;
|
|
573
|
+
/** 设置单次 AI 请求超时(毫秒) */
|
|
574
|
+
setRequestTimeoutMs(timeoutMs: number): void;
|
|
575
|
+
/** 获取当前 AI 请求超时(毫秒) */
|
|
576
|
+
getRequestTimeoutMs(): number;
|
|
431
577
|
/** 切换干运行模式 */
|
|
432
578
|
setDryRun(enabled: boolean): void;
|
|
433
579
|
/**
|
|
@@ -461,6 +607,22 @@ declare class WebAgent {
|
|
|
461
607
|
getSnapshotOptions(): SnapshotOptions;
|
|
462
608
|
/** 清空对话历史(不影响记忆开关) */
|
|
463
609
|
clearHistory(): void;
|
|
610
|
+
/**
|
|
611
|
+
* 手动创建并挂载 UI 面板(构造时未传 panel 选项时可后续调用)。
|
|
612
|
+
* 若面板已存在则跳过。
|
|
613
|
+
*/
|
|
614
|
+
createPanel(options?: PanelOptions): Panel;
|
|
615
|
+
/**
|
|
616
|
+
* 销毁 UI 面板。
|
|
617
|
+
*/
|
|
618
|
+
destroyPanel(): void;
|
|
619
|
+
/**
|
|
620
|
+
* 建立面板到 WebAgent 的双向绑定。
|
|
621
|
+
*
|
|
622
|
+
* - panel.onSend → agent.chat()
|
|
623
|
+
* - agent.callbacks → panel 消息流 & 状态
|
|
624
|
+
*/
|
|
625
|
+
private wirePanel;
|
|
464
626
|
/**
|
|
465
627
|
* 发送消息并获取 AI 回复(含完整工具调用循环)。
|
|
466
628
|
*
|
|
@@ -479,5 +641,5 @@ declare class WebAgent {
|
|
|
479
641
|
private createBuiltinClient;
|
|
480
642
|
}
|
|
481
643
|
//#endregion
|
|
482
|
-
export { type SnapshotOptions, type ToolCallMessage, type ToolCallResponse, type ToolExecutorMap, WebAgent, WebAgentCallbacks, WebAgentOptions, createDomTool, createEvaluateTool, createNavigateTool, createPageInfoTool, createProxyExecutor, createWaitTool, generateSnapshot, registerToolHandler };
|
|
644
|
+
export { Panel, type PanelOptions, type SnapshotOptions, type ToolCallMessage, type ToolCallResponse, type ToolExecutorMap, WebAgent, WebAgentCallbacks, WebAgentOptions, createDomTool, createEvaluateTool, createNavigateTool, createPageInfoTool, createProxyExecutor, createWaitTool, generateSnapshot, registerToolHandler };
|
|
483
645
|
//# sourceMappingURL=index.d.mts.map
|
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/core/tool-registry.ts","../src/core/types.ts","../src/core/agent-loop/types.ts","../src/web/ref-store.ts","../src/web/tools/page-info-tool.ts","../src/web/tools/dom-tool.ts","../src/web/tools/navigate-tool.ts","../src/web/tools/wait-tool.ts","../src/web/tools/evaluate-tool.ts","../src/web/messaging.ts","../src/web/index.ts"],"mappings":";;;;;;KA0BY,cAAA;EAuBV,qCArBA,OAAA,WAAkB,MAAA,mBAqBR;EAnBV,OAAA,GAAU,MAAA;AAAA;;;;;;ACfZ;;;KD0BY,cAAA;ECxBV,4CD0BA,IAAA,UCtBA;EDwBA,WAAA,UCxBK;ED0BL,MAAA,EAAQ,OAAA,ECpBW;EDsBnB,OAAA,GAAU,MAAA,EAAQ,MAAA,sBAA4B,OAAA,CAAQ,cAAA;AAAA;;;;KClC5C,UAAA;ED0BA,0BCxBV,EAAA;EAEA,IAAA,UD8BkB;EC5BlB,KAAA;AAAA;;KAMU,SAAA;EACV,IAAA,4CDiBA;ECfA,OAAA,WAAkB,KAAA;IAAQ,UAAA;IAAoB,MAAA;EAAA,IDmBpC;ECjBV,SAAA,GAAY,UAAA;AAAA;;KAMF,cAAA;iBAEV,IAAA;EAEA,SAAA,GAAY,UAAA,IA3BQ;EA6BpB,KAAA;IAAU,WAAA;IAAqB,YAAA;EAAA;AAAA;;;AAjBjC;;;KA2BY,QAAA;EACV,IAAA,CAAK,MAAA;IACH,YAAA;IACA,QAAA,EAAU,SAAA;IACV,KAAA,GAAQ,cAAA;EAAA,IACN,OAAA,CAAQ,cAAA;AAAA;;;;KCjDF,yBAAA;EFoBA,2BElBV,OAAA,YFkBgB;EEhBhB,SAAA,WF2BwB;EEzBxB,OAAA,WF+BQ;EE7BR,gBAAA;AAAA;AAAA,KAGU,gBAAA;EACV,UAAA;EACA,cAAA;EACA,mBAAA;EACA,eAAA;EACA,eAAA;EACA,aAAA;EACA,uBAAA;EACA,iBAAA;EACA,kBAAA;EACA,eAAA;EACA,eAAA;EACA,WAAA;EACA,YAAA;AAAA;;KAMU,kBAAA;EDzBA,mBC2BV,MAAA,IAAU,IAAA;EAEV,UAAA,IAAc,IAAA,UAAc,KAAA,oBD3B5B;EC6BA,YAAA,IAAgB,IAAA,UAAc,MAAA,EAAQ,cAAA,WDzBtC;EC2BA,OAAA,IAAW,KAAA;ED3BN;AAMP;;;;;;;EC8BE,wBAAA,IAA4B,MAAA,oBD3BkB;EC6B9C,SAAA,IAAa,OAAA,EAAS,gBAAA;AAAA;AAAA,KA4BZ,eAAA;EDhCV,iBCkCA,KAAA,UDhCE;ECkCF,SAAA,EAAW,KAAA;IAAQ,IAAA;IAAc,KAAA;IAAgB,MAAA,EAAQ,cAAA;EAAA,IDhC7C;ECkCZ,QAAA,EAAU,SAAA,IDlCgB;ECoC1B,OAAA,EAAS,gBAAA;AAAA;;;;;;AFrEX;;;;;;;;;;AAeA;;;;;;;;;;;;;;cGAa,QAAA;EAAA,QACH,GAAA;EHOsC;EAAA,QGLtC,MAAA;EHK4D;;;;cGCxD,GAAA;EFnCF;;;;;;;EE8CV,GAAA,CAAI,EAAA,EAAI,OAAA,EAAS,IAAA;EFxCZ;AAMP;;;EEkDE,GAAA,CAAI,EAAA,WAAa,OAAA;EFjDjB;EEsDA,GAAA,CAAI,EAAA;EFpDc;EEyDlB,KAAA,CAAA;EFzD8C;;;;;AAQhD;;;EE6DE,KAAA,CAAM,GAAA;EF3DN;EAAA,IEmEI,IAAA,CAAA;AAAA;;;;KCtFM,eAAA;EJKc,oBIHxB,QAAA;EJOgB;;;;;EIDhB,YAAA;EJCgB;AAWlB;;;;EINE,WAAA;EJcsD;;;;;EIRtD,QAAA,GAAW,QAAA,EJMX;EIJA,QAAA,WJMA;EIJA,WAAA,WJIU;EIFV,aAAA;EJEsD;;;;EIGtD,iBAAA;;AHrCF;;;EG0CE,kBAAA,aHxCA;EG0CA,qBAAA;
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/core/tool-registry.ts","../src/core/types.ts","../src/core/agent-loop/types.ts","../src/web/ref-store.ts","../src/web/tools/page-info-tool.ts","../src/web/ui/panel.ts","../src/web/tools/dom-tool.ts","../src/web/tools/navigate-tool.ts","../src/web/tools/wait-tool.ts","../src/web/tools/evaluate-tool.ts","../src/web/messaging.ts","../src/web/index.ts"],"mappings":"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"}
|