ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

BrowserSkill 隐私与权限架构全解:数据边界、12 项权限依据与源码级证据

BrowserSkill 隐私与权限架构全解:数据边界、12 项权限依据与源码级证据 BrowserSkill 隐私与权限架构全解数据边界、12 项权限依据与源码级证据【免费下载链接】BrowserSkillLet AI agents use your real, logged-in browser without interrupting your work. CLI extension for browser automation across any shell-capable AI agent.项目地址: https://gitcode.com/GitHub_Trending/br/BrowserSkillBrowserSkill 是「Chromium 扩展 bsk命令行守护进程」组成的浏览器自动化项目。本文从隐私与权限视角出发对照仓库源码逐项核对扩展能接触哪些数据、为什么向 Chrome 申请 12 项权限、数据最终停在哪、用户如何随时收回这些能力。它的工作方式值得先说清楚你指定的 AI Agent 不必替你登录任何网站它通过命令行驱动你已登录的真实浏览器配置而扩展只是通往 Chrome DevTools ProtocolCDP浏览器开放给外部程序的调试控制接口的桥——扩展内部没有任何 LLM 客户端也没有任何 AI 服务商的密钥。1. 定位与边界扩展只做桥接不做推理这一节先钉死扩展的职责范围后文所有判断都以此为前提。调用链只有四段中间每一段都是本地进程或环回连接用户 / AI Agent → bsk CLI → 本地 daemon 进程 → WebSocket → 扩展 → CDP → Chromium 页面它做什么通过 CDP 附加到被选中的标签页派发点击、按键与表单值采集 DOM、可访问性树、截图与快照管理独立的 Agent Window一个与日常浏览隔离的浏览器窗口。它不做什么不独立调用任何 LLM 或云 API不枚举浏览历史、书签、已保存密码不含遥测、分析或广告代码。边界落在哪扩展只与用户选定的 daemon 或网关通信。通信层集中在 transport/ 目录ws-transport.ts负责本地环回remote-endpoint.ts与remote-storage.ts负责远程配对自动化工具实现集中在apps/extension/src/tools/。2. 实际怎么跑默认走本地环回远程配对是显式选项主链路分默认与可选两种模式区别在于请求去哪里、数据停在哪。本地模式默认。扩展连回环地址上的 daemon地址由构建期常量注入wxt.config.ts 中__BSK_DAEMON_WS_URL__缺省为ws://127.0.0.1:52800daemon-endpoint.ts里DEFAULT_DAEMON_PORT 52800normalizeDaemonPort只接受1–65535的整数端口其余输入一律回退默认值。用户改端口时写回chrome.storage.local的bsk_daemon_port键读取时再过一遍同样的校验。远程模式可选。用户显式与运行bsk的服务器配对后自动化流量改走认证 WSS 发往所选端点。明文 HTTP/WS 仅允许用于环回上的开发场景。数据停在哪本地模式命令响应页面内容、截图、标签页元数据经环回回到 daemon观察数据只在命令生命周期内临时存在。下载动作浏览器把文件写入 daemon 提供的私有目录download.ts强制要求参数中携带该目录browser_relative_dir缺省直接报invalid_params。远程模式结果到达所选服务器若开启操作审计审计正文落在 daemon 所在主机即服务器侧而非浏览器本地磁盘。3. 关键项枚举manifest 里的 12 项权限各自干什么权限清单与 wxt.config.ts 中permissions数组加一条host_permissions完全一致可逐项对照条目它做什么为什么需要debugger通过 CDP 附加到被选做自动化或被借用的标签页驱动真实页面的唯一通道观察、交互、捕获downloads追踪唯一一次进行中的bsk download事务把浏览器产出的下载交还调用方不用于枚举下载历史scripting向目标页面注入全页截图辅助脚本扩展重载后可能丢失页面侧脚本需按需重注tabs在 Agent Window 内检查、创建、关闭标签页把命令定向到正确的标签页windows创建并管理独立 Agent Window隔离 Agent 活动与用户正常浏览activeTab用户点击发起 Quick Action 时临时访问活动标签页一次性、用户主动触发的页面捕获notifications借用用户既有标签页前弹系统通知开启借用确认时逐标签页征得同意idle检测设备从空闲/锁屏恢复机器唤醒后及时重建 WebSocket 连接alarms周期性唤醒 Service Worker保持所选连接存活、续期远程设备授权storage持久化实例 ID、标签、功能偏好Service Worker 重启后恢复设置webNavigation跟踪导航与 frame 变化让捕获、录制跟随正确的文档all_urls主机权限注入Agent Active浮层允许访问用户指示的任意站点自动化目标是用户指定的网页站点不可预知4. 证据核对五个可在源码中验证的声明以下每条都给出文件与可定位的常量或函数若需自行核对可git clone https://gitcode.com/GitHub_Trending/br/BrowserSkill后直接查看。默认端口 52800非法输入回退默认值。依据wxt.config.ts中__BSK_DAEMON_WS_URL__的缺省值apps/extension/src/transport/daemon-endpoint.ts的DEFAULT_DAEMON_PORT与parseDaemonPortInput正则^\d$且范围校验。实例 ID 是 8 位十六进制短串对 daemon 不透明。依据apps/extension/src/lib/instance-id.ts中INSTANCE_ID_LENGTH 8generateShortInstanceId用crypto.getRandomValues取 4 字节32 位熵源码注释明确daemon 只要求它在 Service Worker 重启后稳定以便关联同一浏览器。全部存储键名在文件末尾的STORAGE_KEYS一次列全。远程凭证与明文偏好在物理上分层。依据apps/extension/src/transport/remote-storage.ts只把非机密的bsk_connection_mode、bsk_remote_connection_revision写入chrome.storage.local真正的端点写入扩展源 IndexedDB 库bsk-remote-authorization对象存储connection。并做了失败关闭本地模式不打开凭证库remote模式下凭证缺失直接抛Remote authorization is missing不自动回退。下载只认领单个活动事务。依据apps/extension/src/tools/download.ts顶部模块级downloadActive标志第二次调用直接返回another bsk download is active流程是先验证会话与标签页所有权再委托download-capture.ts的单一浏览器级chrome.downloads事务。审计保留 30 天、单任务 16 MiB 上限、目录权限收紧。依据crates/bsk-cli/src/daemon/audit.rs常量RETENTION_MS 30 * 24 * 60 * 60 * 1000、MAX_RUN_BYTES 16 * 1024 * 1024清理逻辑显式跳过running状态的任务目录以0o700、文件以0o600落盘。daemon 主目录由BSK_HOME环境变量或~/.bsk解析见同目录paths.rs。脱敏同样可查safe_text会把token、password、sk-、ghp_等前缀直接替换为[redacted]。5. 边界与信任信任模型在哪里成立、哪里会被打破 信任对象与失效条件逐条列清本地模式信任的是环回端口。能绑定所配置端口的进程即可驱动扩展同一系统账户下的本地进程不在威胁模型内。远程模式的信任对象是配对服务器。该服务器的 Agent 可以操作你的浏览器配置与已登录网站会话应视为可信赖其操作你的登录态的一方。页面读取的授权前提是任务自有标签页。把用户标签页移入 Agent Window 不构成授权借用既有标签页需遵循浏览器内的确认偏好开启确认后以系统通知逐标签页征求同意。边界会被打破的典型场景你主动配对了不可信的第三方网关下载、上传字节暂存在 daemon 侧目录daemon 主机被攻破即暴露。一条对合规评估重要的事实断开连接不会删除服务器侧已持有的结果与审计记录——服务器上的留存只有靠撤销设备与服务器自身策略处置。审计侧的纵深防御即使开启审计落盘的也只有时间、工具类型、站点来源等元数据输入值、页面正文、截图不落盘敏感词由上述脱敏函数二次拦截。6. 用户控制关闭、撤销、卸载的完整入口关闭操作审计偏好键bsk_audit_enabled见 audit.ts停止收集新操作但保留已有历史。弹窗内审计面板开启时每 3 秒刷新最近 5 条任务audit-panel.tsx中setInterval(refresh, 3000)与limit: 5。关闭 Agent Window立即停止所有 Agent 自动化。拒绝标签页借用开启借用前确认对通知请求选拒绝既有标签页保持不可触碰。断开连接关闭连接开关、选择本地模式或停止所选 daemon远程凭证随之不再续期。撤销配对设备在服务器侧执行bsk daemon revoke DEVICE_ID同时关闭现有连接并拒绝新连接。卸载扩展从chrome://extensions移除chrome.storage.local中的实例 ID、标签与偏好一并清除daemon 主机上的审计文件需另行删除。7. 收尾三条贯穿仓库的设计原则只桥接自动化不内置 AI明文偏好与机密凭证分层存储收集可关、设备可撤、连接可断想继续深入建议两篇文档对照读docs/operation-audit.md 讲审计的开关语义与保留细节docs/remote-extension-connection.md讲远程配对、TLS 与设备授权的生命周期。【免费下载链接】BrowserSkillLet AI agents use your real, logged-in browser without interrupting your work. CLI extension for browser automation across any shell-capable AI agent.项目地址: https://gitcode.com/GitHub_Trending/br/BrowserSkill创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表