Skip to content

feat(vom): expose canvas visual refs in observations with cursor continuation | 在观察结果中呈现 Canvas 视觉入口并支持过多内容时翻页 - #217

Open
Ljy-0827 wants to merge 4 commits into
feat/visual-region-screenshotfrom
feat/canvas-observation
Open

feat(vom): expose canvas visual refs in observations with cursor continuation | 在观察结果中呈现 Canvas 视觉入口并支持过多内容时翻页#217
Ljy-0827 wants to merge 4 commits into
feat/visual-region-screenshotfrom
feat/canvas-observation

Conversation

@Ljy-0827

@Ljy-0827 Ljy-0827 commented Sep 10, 2026

Copy link
Copy Markdown
Collaborator

背景

前序 PR 已提供 Canvas 候选发现、视觉 ref 和按目标截图能力。本 PR 将这些能力接入 observe,让 agent 能发现页面中的 Canvas,并按需获取截图。

主要改动

  • 在 Canvas 对应的 DOM 位置附近输出 @eN canvas [visual:screenshot],保留相邻控件上下文;名称可选,不推断 Canvas 内部内容。
  • 首次观察仅返回语义信息和视觉入口;agent 需要查看内容时,通过对应 ref 请求截图。
  • 默认不设置输出预算;显式指定 max_tokens 时,通过 next_cursor 续读同一次观察,避免只返回前缀而遗漏后续内容。
  • 每次响应只保留当前页的 ref;校验续读所属的页面身份,防止复用失效结果。
  • 同步 CLI、插件及 skill 指引,说明视觉 ref 的用途、续读方式,以及由 agent 判断当前会话是否具备图像理解能力。

范围

复用同一次采集生成语义和视觉条目;续读不重新采集页面。不改变 snapshot 的语义观察行为,不引入 OCR 或 Canvas 内部交互能力。

验证

  • 扩展测试:1267 通过,32 跳过;相关 VOM、插件及 CLI 测试通过。
  • 真实浏览器验证:24 个 Canvas 默认完整输出,有限预算下续读无遗漏或重复,游标重试及旧 ref 失效行为正确。
  • iWiki 表格 Canvas、主页面及跨进程 iframe 的按 ref 截图通过,保留原生圆角效果。

@Ljy-0827
Ljy-0827 added this pull request to stack #210 September 10, 2026 07:16
@Ljy-0827
Ljy-0827 force-pushed the feat/canvas-observation branch from 2c73224 to 19b6445 Compare September 10, 2026 07:50
@Ljy-0827
Ljy-0827 force-pushed the feat/canvas-observation branch from 825b0cc to e0b50da Compare September 10, 2026 11:03
@Ljy-0827
Ljy-0827 marked this pull request as ready for review September 10, 2026 11:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant