agentpage 0.0.38 → 0.0.40
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 +327 -1686
- package/dist/index.d.mts +154 -2
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +1366 -194
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -1
package/dist/index.d.mts
CHANGED
|
@@ -215,6 +215,12 @@ 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[];
|
|
218
224
|
};
|
|
219
225
|
/**
|
|
220
226
|
* 生成页面 DOM 快照 — 将 DOM 树转为 AI 可理解的文本描述。
|
|
@@ -239,6 +245,121 @@ type SnapshotOptions = {
|
|
|
239
245
|
declare function generateSnapshot(root?: Element, options?: SnapshotOptions | number): string;
|
|
240
246
|
declare function createPageInfoTool(): ToolDefinition;
|
|
241
247
|
//#endregion
|
|
248
|
+
//#region src/web/ui/panel.d.ts
|
|
249
|
+
/** 面板配置选项 */
|
|
250
|
+
type PanelOptions = {
|
|
251
|
+
/** 面板容器挂载点(默认 document.body) */container?: HTMLElement; /** 构造时是否自动挂载到 DOM(默认 true)。设为 false 时需手动调用 mount() */
|
|
252
|
+
mount?: boolean; /** 是否在 Agent 运行时自动显示操作遮罩(默认 true) */
|
|
253
|
+
enableMask?: boolean; /** 面板默认展开状态(默认 false,即收起状态,只显示 FAB) */
|
|
254
|
+
expanded?: boolean; /** 面板标题(默认 "AutoPilot") */
|
|
255
|
+
title?: string; /** 输入框占位文本 */
|
|
256
|
+
placeholder?: string; /** 遮罩提示文本 */
|
|
257
|
+
maskText?: string; /** 空状态提示文本 */
|
|
258
|
+
emptyText?: string;
|
|
259
|
+
};
|
|
260
|
+
/** 消息类型 */
|
|
261
|
+
type MessageType = "user" | "assistant" | "tool" | "error";
|
|
262
|
+
/** 面板状态 */
|
|
263
|
+
type PanelStatus = "idle" | "running" | "error";
|
|
264
|
+
/**
|
|
265
|
+
* AutoPilot UI 面板。
|
|
266
|
+
*
|
|
267
|
+
* 使用方式:
|
|
268
|
+
* ```ts
|
|
269
|
+
* // 默认自动挂载
|
|
270
|
+
* const panel = new Panel({ enableMask: true });
|
|
271
|
+
* panel.onSend = async (text) => { await agent.chat(text); };
|
|
272
|
+
*
|
|
273
|
+
* // 延迟挂载
|
|
274
|
+
* const panel = new Panel({ mount: false });
|
|
275
|
+
* panel.mount(); // 手动挂载
|
|
276
|
+
* ```
|
|
277
|
+
*/
|
|
278
|
+
declare class Panel {
|
|
279
|
+
private container;
|
|
280
|
+
private enableMask;
|
|
281
|
+
private title;
|
|
282
|
+
private placeholder;
|
|
283
|
+
private maskText;
|
|
284
|
+
private emptyText;
|
|
285
|
+
private root;
|
|
286
|
+
private fab;
|
|
287
|
+
private mask;
|
|
288
|
+
private panelEl;
|
|
289
|
+
private messagesEl;
|
|
290
|
+
private inputEl;
|
|
291
|
+
private sendBtn;
|
|
292
|
+
private statusDot;
|
|
293
|
+
private statusText;
|
|
294
|
+
private stopBtnContainer;
|
|
295
|
+
private styleEl;
|
|
296
|
+
private fabDragging;
|
|
297
|
+
private fabHasMoved;
|
|
298
|
+
private mounted;
|
|
299
|
+
private expanded;
|
|
300
|
+
private status;
|
|
301
|
+
/** 用户发送消息回调 — 由 WebAgent 绑定 */
|
|
302
|
+
onSend: ((text: string) => Promise<void>) | null;
|
|
303
|
+
/** 用户点击停止按钮回调 */
|
|
304
|
+
onStop: (() => void) | null;
|
|
305
|
+
constructor(options?: PanelOptions);
|
|
306
|
+
/** 挂载面板到 DOM(全局单例:先清理残留再创建,防止 HMR/多实例"分身") */
|
|
307
|
+
mount(): void;
|
|
308
|
+
/** 卸载面板 */
|
|
309
|
+
unmount(): void;
|
|
310
|
+
/** 展开面板(tooltip 风格定位到 FAB 旁边,FAB 保持可见) */
|
|
311
|
+
show(): void;
|
|
312
|
+
/** 收起面板 */
|
|
313
|
+
hide(): void;
|
|
314
|
+
/** 切换展开/收起 */
|
|
315
|
+
toggle(): void;
|
|
316
|
+
/** 是否已展开 */
|
|
317
|
+
isExpanded(): boolean;
|
|
318
|
+
/** 是否已挂载 */
|
|
319
|
+
isMounted(): boolean;
|
|
320
|
+
/** 添加消息到面板 */
|
|
321
|
+
addMessage(type: MessageType, text: string): void;
|
|
322
|
+
/** 清空所有消息 */
|
|
323
|
+
clearMessages(): void;
|
|
324
|
+
/** 设置面板状态 */
|
|
325
|
+
setStatus(status: PanelStatus, text?: string): void;
|
|
326
|
+
/** 显示操作遮罩 */
|
|
327
|
+
showMask(): void;
|
|
328
|
+
/** 隐藏操作遮罩 */
|
|
329
|
+
hideMask(): void;
|
|
330
|
+
/** 显示 typing 指示器 */
|
|
331
|
+
showTyping(): void;
|
|
332
|
+
/** 移除 typing 指示器 */
|
|
333
|
+
removeTyping(): void;
|
|
334
|
+
/**
|
|
335
|
+
* 清理 DOM 中残留的旧 Panel 元素。
|
|
336
|
+
* 防止 HMR 热更新或多次 new Panel() 导致多个 FAB/面板"分身"。
|
|
337
|
+
*/
|
|
338
|
+
private cleanupStale;
|
|
339
|
+
private injectStyles;
|
|
340
|
+
private createDOM;
|
|
341
|
+
private bindEvents;
|
|
342
|
+
/**
|
|
343
|
+
* 使用 @floating-ui/dom 计算面板相对于 FAB 的 tooltip 位置。
|
|
344
|
+
* 根据 FAB 贴边方向自动翻转,并设置对应的 transform-origin 确保动画自然。
|
|
345
|
+
*/
|
|
346
|
+
private updatePanelPosition;
|
|
347
|
+
/**
|
|
348
|
+
* 初始化 FAB 按钮拖拽:长按 300ms 后进入拖拽模式,松手后自动贴边。
|
|
349
|
+
* 短按(未触发长按)或移动距离不超过阈值的走正常 click toggle 逻辑。
|
|
350
|
+
*/
|
|
351
|
+
private initFabDrag;
|
|
352
|
+
/**
|
|
353
|
+
* FAB 吸附到最近屏幕边缘(左/右贴边,上下保持位置)。
|
|
354
|
+
*/
|
|
355
|
+
private snapFabToEdge;
|
|
356
|
+
private handleSend;
|
|
357
|
+
private updateInputState;
|
|
358
|
+
private showEmpty;
|
|
359
|
+
private scrollToBottom;
|
|
360
|
+
private escapeHtml;
|
|
361
|
+
}
|
|
362
|
+
//#endregion
|
|
242
363
|
//#region src/web/tools/dom-tool.d.ts
|
|
243
364
|
declare function createDomTool(): ToolDefinition;
|
|
244
365
|
//#endregion
|
|
@@ -343,7 +464,8 @@ type WebAgentOptions = {
|
|
|
343
464
|
provider?: string; /** 模型名称(默认 "gpt-4o") */
|
|
344
465
|
model?: string; /** 自定义 API 基础 URL(可选,覆盖 provider 默认值) */
|
|
345
466
|
baseURL?: string; /** 是否启用流式输出(SSE)。默认 true;false 时使用 JSON 非流式响应。 */
|
|
346
|
-
stream?: boolean; /**
|
|
467
|
+
stream?: boolean; /** 单次 AI 请求超时(毫秒,默认 45000;<=0 表示不设置超时)。 */
|
|
468
|
+
requestTimeoutMs?: number; /** 是否启用干运行模式 */
|
|
347
469
|
dryRun?: boolean;
|
|
348
470
|
/**
|
|
349
471
|
* 系统提示词注册项。
|
|
@@ -356,6 +478,13 @@ type WebAgentOptions = {
|
|
|
356
478
|
autoSnapshot?: boolean; /** 快照选项(视口裁剪、智能剪枝等,autoSnapshot 开启时生效) */
|
|
357
479
|
snapshotOptions?: SnapshotOptions; /** 轮次后稳定等待(加载态 + DOM 静默)配置 */
|
|
358
480
|
roundStabilityWait?: RoundStabilityWaitOptions;
|
|
481
|
+
/**
|
|
482
|
+
* UI 面板配置。
|
|
483
|
+
* - true:使用默认配置创建面板
|
|
484
|
+
* - PanelOptions:使用自定义配置创建面板
|
|
485
|
+
* - false / undefined:不创建面板
|
|
486
|
+
*/
|
|
487
|
+
panel?: boolean | PanelOptions;
|
|
359
488
|
};
|
|
360
489
|
declare class WebAgent {
|
|
361
490
|
/** 默认系统提示词 key(兼容旧版 setSystemPrompt(prompt))。 */
|
|
@@ -369,6 +498,7 @@ declare class WebAgent {
|
|
|
369
498
|
private model;
|
|
370
499
|
private baseURL?;
|
|
371
500
|
private stream;
|
|
501
|
+
private requestTimeoutMs;
|
|
372
502
|
private dryRun;
|
|
373
503
|
private maxRounds;
|
|
374
504
|
/** system prompt 注册表(key -> prompt 文本)。 */
|
|
@@ -387,6 +517,8 @@ declare class WebAgent {
|
|
|
387
517
|
private roundStabilityWait?;
|
|
388
518
|
/** 工具注册表实例 — 每个 WebAgent 拥有独立的工具集 */
|
|
389
519
|
private registry;
|
|
520
|
+
/** 内置 UI 面板(通过 options.panel 配置启用) */
|
|
521
|
+
panel: Panel | null;
|
|
390
522
|
/** 事件回调 — 绑定后可实时获取 Agent 进度,用于 UI 展示 */
|
|
391
523
|
callbacks: WebAgentCallbacks;
|
|
392
524
|
constructor(options: WebAgentOptions);
|
|
@@ -428,6 +560,10 @@ declare class WebAgent {
|
|
|
428
560
|
setStream(enabled: boolean): void;
|
|
429
561
|
/** 获取当前流式输出开关状态 */
|
|
430
562
|
getStream(): boolean;
|
|
563
|
+
/** 设置单次 AI 请求超时(毫秒) */
|
|
564
|
+
setRequestTimeoutMs(timeoutMs: number): void;
|
|
565
|
+
/** 获取当前 AI 请求超时(毫秒) */
|
|
566
|
+
getRequestTimeoutMs(): number;
|
|
431
567
|
/** 切换干运行模式 */
|
|
432
568
|
setDryRun(enabled: boolean): void;
|
|
433
569
|
/**
|
|
@@ -461,6 +597,22 @@ declare class WebAgent {
|
|
|
461
597
|
getSnapshotOptions(): SnapshotOptions;
|
|
462
598
|
/** 清空对话历史(不影响记忆开关) */
|
|
463
599
|
clearHistory(): void;
|
|
600
|
+
/**
|
|
601
|
+
* 手动创建并挂载 UI 面板(构造时未传 panel 选项时可后续调用)。
|
|
602
|
+
* 若面板已存在则跳过。
|
|
603
|
+
*/
|
|
604
|
+
createPanel(options?: PanelOptions): Panel;
|
|
605
|
+
/**
|
|
606
|
+
* 销毁 UI 面板。
|
|
607
|
+
*/
|
|
608
|
+
destroyPanel(): void;
|
|
609
|
+
/**
|
|
610
|
+
* 建立面板到 WebAgent 的双向绑定。
|
|
611
|
+
*
|
|
612
|
+
* - panel.onSend → agent.chat()
|
|
613
|
+
* - agent.callbacks → panel 消息流 & 状态
|
|
614
|
+
*/
|
|
615
|
+
private wirePanel;
|
|
464
616
|
/**
|
|
465
617
|
* 发送消息并获取 AI 回复(含完整工具调用循环)。
|
|
466
618
|
*
|
|
@@ -479,5 +631,5 @@ declare class WebAgent {
|
|
|
479
631
|
private createBuiltinClient;
|
|
480
632
|
}
|
|
481
633
|
//#endregion
|
|
482
|
-
export { type SnapshotOptions, type ToolCallMessage, type ToolCallResponse, type ToolExecutorMap, WebAgent, WebAgentCallbacks, WebAgentOptions, createDomTool, createEvaluateTool, createNavigateTool, createPageInfoTool, createProxyExecutor, createWaitTool, generateSnapshot, registerToolHandler };
|
|
634
|
+
export { Panel, type PanelOptions, type SnapshotOptions, type ToolCallMessage, type ToolCallResponse, type ToolExecutorMap, WebAgent, WebAgentCallbacks, WebAgentOptions, createDomTool, createEvaluateTool, createNavigateTool, createPageInfoTool, createProxyExecutor, createWaitTool, generateSnapshot, registerToolHandler };
|
|
483
635
|
//# 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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"}
|