Skip to content
This repository was archived by the owner on Apr 25, 2026. It is now read-only.

0.5.1 (a5b6fd2)

Choose a tag to compare

@github-actions github-actions released this 28 Mar 05:46
· 48 commits to main since this release

browser-cli 0.5.1

0.5.1 是一个以页面语义保留、结构化视图可读性和长块元素定位修正为主的补丁版本,汇总了自 0.5.0 以来的这一轮页面解析 / XML 输出 / 扩展侧交互细节改进。

亮点

  • 更完整的交互语义识别
    • 结构化阶段现在能识别更多 role / 状态驱动的控件,包括 role="link"、tab、menuitem、option、switch 等常见自定义交互语义。
    • 对带 tabindex 且同时具有 aria-selected / aria-current / aria-expanded 等状态的节点,会更保守地判定为可交互元素,减少自定义组件上的漏判。
    • 浏览器侧快照补充了 class、tabindex、更多 ARIA 状态和运行时 onclick 信息,为 Rust 侧结构化判断提供更完整的原始事实。
  • 聚焦查看与长块目标解析更稳定
    • view 现在可以正确定位被截断列表 / 表格块中的元素,并自动返回展开后的上下文。
    • click 的文本查询和 --new-session 链接解析会继续在完整块内容中查找目标,不再只局限于当前页已经展开的那一小段。
  • XML 输出更贴近真实语义
    • 会跳过纯展示型包装容器,减少 div / span / i 一类无意义层级噪声。
    • 被压平包装层上的 role / class 语义会向下继承到最终输出节点,便于后续规则、插件或 Agent 利用上下文。
    • 单一交互叶子的列表项会更紧凑地内联输出,但真正有记录边界的 item 分组仍会保留。
  • 光标驻留行为更克制、更自然
    • 空闲游走改为按间隔决策,并在长时间没有 CLI 活动后自动停止,避免页面长期无意义移动。
    • 移动轨迹加入轻微 wobble 和中途犹豫停顿,鼠标存在感更自然。

兼容性与行为说明

  • 这是一个兼容性补丁版本,没有引入新的会话模型或协议层破坏性变更。
  • 现有 eN / tN / bN 工作流继续可用;本次主要是让复杂自定义组件和长块场景下的结构化结果更稳定、更容易定位。
  • XML 输出会比 0.5.0 更少展示无语义包装层;如果下游逻辑依赖这些展示型容器的具体层级,需要按新的结构化视图适配。

English

0.5.1 is a patch release focused on semantic preservation, structured-view readability, and more reliable element resolution inside truncated blocks, covering this round of page parsing, XML rendering, and extension-side interaction refinements since 0.5.0.

Highlights

  • More complete interactive semantic detection
    • The structured page pass now recognizes more role- and state-driven widgets, including common custom semantics such as role="link", tab, menuitem, option, and switch.
    • Nodes with tabindex plus widget state such as aria-selected, aria-current, or aria-expanded are now classified more conservatively as interactive, reducing misses on custom components.
    • Browser-side snapshots now include class, tabindex, more ARIA state, and runtime onclick signals so the Rust side has a fuller set of raw facts to classify from.
  • More reliable focused views and long-block target resolution
    • view can now resolve elements that live inside truncated list/table blocks and automatically return the expanded surrounding context.
    • Text-query resolution in click and link extraction for --new-session now continue searching through full block contents instead of only the currently expanded slice.
  • XML output is closer to real page semantics
    • Purely presentational wrapper containers are skipped to reduce noise from meaningless div / span / i layers.
    • role / class semantics from flattened wrappers are propagated down to the final rendered nodes, which gives downstream rules, plugins, and agents more usable context.
    • List items that only wrap a single interactive leaf are rendered more compactly, while true record boundaries are still preserved.
  • Cursor presence becomes more restrained and natural
    • Idle wandering now runs on interval-based decisions and stops automatically after prolonged CLI inactivity, avoiding endless meaningless movement.
    • Cursor motion now includes slight wobble and occasional hesitation pauses to make on-page presence look less mechanical.

Compatibility and behavior notes

  • This is a compatible patch release with no new session-model or protocol-breaking changes.
  • Existing eN / tN / bN workflows remain valid; the main goal here is to make structured output more stable and easier to target on complex custom widgets and long blocks.
  • XML output in 0.5.1 intentionally shows fewer non-semantic wrapper layers than 0.5.0; downstream logic that depended on those presentational container levels should adapt to the cleaner structure.

Full Changelog: 0.5.0...0.5.1