闲社服务运行正常AI智能体自动化平台
u

Ubuntu浏览器会话

技能标识:ubuntu-browser-session

Use when a request needs a real Ubuntu Server browser session with durable site login reuse, bounded manual login recovery, or host-side page inspection for protected sites.

作者:admin | 来源记录:ClawHub
登记来源
ClawHub
版本
V 1.0.3
检测标记
后台标记通过
免费
免费获取
0
收藏
来源与检测标记为平台登记信息,并不代表已展示可复核的检测报告。使用前请核对版本、依赖和所需权限,建议先在隔离环境中运行。
概述
安装方式
版本历史

Ubuntu浏览器会话

Ubuntu 浏览器会话

使用Ubuntu主机浏览器,为代理提供类似长期本地浏览器的体验。

主要模型以站点为中心:

  • - 每个重要站点保留一个默认主身份
  • 代理任务自动复用该默认身份
  • 仅当用户明确指定不同的session-key时才允许使用非默认身份
  • 用户帮助仅限于首次登录、会话过期或无法恢复的挑战

使用场景

  • - 从Ubuntu服务器主机打开、检查或与受保护站点交互
  • 复用已登录的站点会话,如GitHub或Google
  • 通过一轮有限的用户帮助恢复过期或受挑战阻止的会话
  • 在主机上继续浏览器工作,无需为每个任务重新认证

典型请求:

  • - 使用Ubuntu主机浏览器打开此仪表板。
  • 复用服务器上现有的GitHub登录。
  • 从同一个Google会话继续。
  • 以最少的用户帮助恢复此受保护页面。

不使用场景

  • - 仅需HTTP获取或网络搜索的通用网络研究
  • Ubuntu服务器主机之外的本地桌面浏览
  • 使用API令牌或非浏览器认证流程即可满足的情况

核心规则

  • - 每个站点默认使用一个主身份
  • 不要自动在多个账户之间猜测
  • 仅当用户明确指定不同的session-key时才使用非默认身份
  • 在要求用户接管之前优先尝试本地恢复
  • 将错误页面漂移视为可恢复:首先在同一配置文件中导航回请求的站点,仅当目标页面仍显示登录墙或挑战时才请求帮助
  • 在切换工具前完成主机浏览器工作流程:如果open-protected-page.sh返回ready,则继续使用此技能的主机浏览器上下文,不要切换到OpenClaw的通用browser配置文件或其他浏览器工具,除非此工作流程已用尽或任务明确要求不同的浏览器栈

首选入口点

首先使用包装脚本:

bash
{baseDir}/scripts/open-protected-page.sh --url https://target.example --session-key default

包装脚本负责:

  • - 以站点为中心的配置文件查找
  • 会话复用
  • 目标页面验证
  • 浏览器漂移到错误页面时的一次自动恢复尝试
  • 在真正需要用户帮助时有限度地升级到noVNC
  • 默认将工作保持在主机浏览器工作流程内,而不是混入不相关的浏览器配置文件

站点会话模型

持久的默认身份按规范站点跟踪,而不仅仅是精确来源。

示例:

  • - github.com -> 默认GitHub浏览器身份
  • google.com -> 默认Google浏览器身份,包括myaccount.google.com

持久状态分布在:

  • - 实时运行时和捕获浏览器状态的精确清单
  • 用于默认按站点复用的站点会话注册表
  • Google系列主机的兼容性身份别名

重要文件:

  • - ~/.agent-browser/index/site-sessions.json
  • ~/.agent-browser/sessions/...
  • ~/.agent-browser/index/identity-profiles.json

手动登录恢复

当包装脚本无法本地恢复时,它会启动辅助浏览器覆盖层并返回:

  • - 用于SSH隧道使用的回环noVNC URL
  • 当主机IP已知且noVNC暴露在0.0.0.0上时的LAN noVNC URL

典型输出:

text
http://127.0.0.1:6084/vnc.html?autoconnect=1&resize=remote
http://192.168.0.200:6084/vnc.html?autoconnect=1&resize=remote

如果从Windows或其他远程机器通过SSH转发端口,请使用回环URL。

仅当主机防火墙和网络允许直接访问时才使用LAN URL。

典型工作流程

  1. 1. 使用请求的URL和所需的session-key尝试open-protected-page.sh
  2. 让包装脚本解析默认站点身份
  3. 如果浏览器已登录但停留在错误页面,让包装脚本自动导航回请求的站点
  4. 如果目标页面已就绪,首先从此主机浏览器工作流程继续任务
  5. 如果目标页面仍显示登录墙或挑战,打开返回的noVNC URL
  6. 用户完成登录并保持最终页面加载后,运行:

bash
{baseDir}/scripts/assisted-session.sh capture --origin https://target.example --session-key default

这将最终确定包装脚本管理的会话状态,并更新站点会话注册表以供后续复用。

不要将assisted-session.sh start作为正常入口点使用。从open-protected-page.sh开始,以便保持以站点为中心的配置文件解析和错误页面恢复功能。

仅在此工作流程未能完成任务,并且您有具体理由认为主机浏览器工作流程不足时,才使用不相关的浏览器工具。

环境检查

bash
command -v python3
command -v curl
command -v jq
command -v Xvfb
command -v x11vnc
command -v websockify
command -v google-chrome || command -v chromium || command -v chromium-browser

关键文件

  • - scripts/open-protected-page.sh:主要受保护站点包装脚本
  • scripts/assisted-session.sh:有限的手动接管和捕获
  • scripts/site-session-registry.sh:规范按站点默认会话注册表
  • scripts/profile-resolution.sh:以站点为先的配置文件选择,带兼容性回退
  • scripts/session-manifest.sh:运行时清单存储和验证支持
  • scripts/browser-runtime.sh:浏览器运行时、目标选择和页面检查
  • scripts/cdp-eval.py:CDP评估、页面检查和导航
  • scripts/cdp-snapshot.py:通过CDP提取结构化页面内容

CDP工具

cdp-eval.py和cdp-snapshot.py默认保持通用。
论坛/搜索结果辅助工具是可选的增强功能;仅当当前页面是论坛主题列表、分类页面或搜索结果页面,且需要结构化主题/结果链接或基于文本的点击时,才阅读references/forum-enhancements.md。

cdp-eval.py

通过Chrome DevTools协议评估页面状态或运行JavaScript。

bash

检查挑战页面


python3 {baseDir}/scripts/cdp-eval.py --port PORT --check challenge

检查登录墙

python3 {baseDir}/scripts/cdp-eval.py --port PORT --check login-wall

获取页面信息(标题、URL、内容片段)

python3 {baseDir}/scripts/cdp-eval.py --port PORT --check page-info

运行任意JavaScript

python3 {baseDir}/scripts/cdp-eval.py --port PORT --eval document.title

点击第一个可见且文本匹配或包含给定短语的链接

python3 {baseDir}/scripts/cdp-eval.py --port PORT --click-link-text Pricing

导航到URL并等待加载

python3 {baseDir}/scripts/cdp-eval.py --port PORT --navigate https://example.com --wait-navigation

导航、等待加载,然后检查页面状态

python3 {baseDir}/scripts/cdp-eval.py --port PORT --navigate https://example.com --wait-navigation --check page-info

导航并等待特定元素出现(10秒超时)

python3 {baseDir}/scripts/cdp-eval.py --port PORT --navigate https://example.com --wait-for #main-content

参数:

  • - --port PORT(必需):CDP HTTP/WebSocket端口
  • --target-id ID:来自/json/list的特定目标
  • --check {challenge,login-wall,page-info}:内置页面状态检查
  • --eval EXPRESSION:用于Runtime.evaluate的任意JavaScript
  • --navigate URL:通过Page.navigate导航到URL
  • --click-link-text TEXT:点击第一个可见的匹配锚点;与--navigate结合使用时,搭配--wait-navigation或--wait-for,以便在点击前目标DOM已就绪
  • --wait-navigation:在--navigate后等待Page.loadEventFired
  • --wait-for SELECTOR:轮询CSS选择器出现(超时10秒)

cdp-snapshot.py

默认以通用格式捕获结构化页面内容,外加可选的论坛/搜索结果辅助格式。

bash

简化markdown(默认)


python3 {baseDir}/scripts/cdp-snapshot.py --port PORT

纯文本提取

python3 {baseDir}/scripts/cdp-snapshot.py --port PORT --format text

提取所有链接为标题+href对

python3 {baseDir}/scripts/cdp-snapshot.py --port PORT --format links

从主要内容区域提取主题/结果链接(在论坛/搜索页面上有用)

python3 {baseDir}/scripts/cdp-snapshot.py --port PORT --format topic-links

带字符限制

python3 {baseDir}/scripts/cdp-snapshot.py --port PORT --max-chars

标签

skill ai

通过对话安装

以下为平台配置的接入选项,并非逐项实测通过。能否安装取决于客户端支持、技能来源和运行环境:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 ubuntu-browser-session-1776106446 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 ubuntu-browser-session-1776106446 技能

通过命令行安装

skillhub install ubuntu-browser-session-1776106446

下载

⬇ 下载 ubuntu-browser-session v1.0.3(免费)

文件大小: 54.86 KB | 发布时间: 2026-4-15 14:46

v1.0.3 最新 2026-4-15 14:46
Add forum/search-result enhancements (topic-links, click-link-text), safe profile lock cleanup, visibility filtering, version tracking in SKILL.md frontmatter.
返回顶部