# 隐私说明

[English](./PRIVACY.en.md) · 中文

> 「顺手 · 会看场合的网页工具」（浏览器扩展 / 油猴脚本）的隐私政策，含产品官网的统计说明。
> 更新日期：2026-09-20

## 一句话

顺手不收集、不存储、不上传你的任何数据；没有账号，也没有服务器。

## 数据怎么流动

- 网页内容只在你**主动操作**时（点击某个动作、在「AI」页点「生成」或「看看这个页面能做什么」让 AI 配置，或你为某个动作开启了「自动运行」）在浏览器本地被读取、渲染；
  自动运行默认关闭、逐个动作开启，只在当前打开的匹配页面执行（站点被设为「安静」或「不运行」时不执行）。
- **输入框里的文字**：同样只在你主动操作时读取，且**只在你正聚焦着的那一个可编辑区**（`<input>` / `<textarea>` /
  可编辑区域）——不扫描全页、不读其他输入框、不读密码框（密码类输入框被排除在外）。用来喂给动作模板或 AI 提示词；
  「处理输入框」这类动作还会把结果**写回**那个框（见下条）。
- **写回输入框**：只改「你正聚焦的那个可编辑区」，且带四条护栏——页面中途换了那个框、你等待期间又敲了字、
  输入框还在输入法组合中、框是只读的：任何一种都**中止并说人话，不覆盖你打的字**；失败时结果只留在提示文字里，不写剪贴板。
  它与「填写输入框」是同一类页面写操作：都是合成事件，尽力而为，不承诺富文本编辑器一定响应。
- 写入笔记：内容直接发送到你配置的笔记服务（虎鲸 MCP 端点 / 思源内核地址），不经过任何第三方中转。
- 存到 Obsidian：内容经 `obsidian://` 深链交给**你本机安装的** Obsidian 应用落盘（正文走系统剪贴板），
  不会发送到任何网络服务，也不经过我们。
- 生成分享图：图片在浏览器本地用 Canvas 绘制；封面等图片从目标网页 / 图床获取。
- 使用**翻译（默认的端上翻译）**：译文由**你自己浏览器的内置翻译**在你本机生成（桌面 Chrome / Edge 138+）——
  **文本不发送给任何服务器、不经过我们、不用于训练**；首次使用某个语言对时，浏览器自己下载语言包（几十 MB，之后可离线翻译）。
  「润色 / 摘要 / AI 总结」等需要大模型的功能不在这条路径上。
- 使用 **AI 提取**（你自行开启并配置后）：页面内容 / 划选会发送到**你自己选择的模型端点**
  （配置为本地模型时不出本机）；不经过我们，也不做二次留存。其它功能不依赖 AI——**翻译默认可用**。
- 使用 **AI 配置助手 / AI 建议**（你自行开启并配置后）：你写的**意图**、能力清单，以及（在页面内配置台时）**当前页的结构摘要**
  （class / id 词表）会发送到**你自己选择的模型端点**，用于生成配置草稿；点「**看看这个页面能做什么**」时，同一通道还会把
  **当前页的正文**、结构摘要与命中的站点适配信号发给该端点，用于按页面类型给出候选动作。两者都只在你点击时才读取当前页，
  不经过我们、也不做留存。
- 使用**动作市场**：只从你订阅的目录地址下载 JSON 配置（动作 / 提示词等纯数据），不上传任何本机信息。

## 本机存储

以下内容只保存在你的浏览器本地（扩展为 `chrome.storage`，油猴为 GM 存储）：

- 工具箱配置（模式 / 场景 / 动作 / 提取规则 / 偏好）
- 连接信息与密钥（笔记服务 Token；配置文件只保存引用，密钥独立存储）
- 本机脚本（你自己编写的提取函数）
- 动作使用记录（点击次数 / 成败 / 耗时；不含网页内容，可在「运行」页一键清空）
- 浏览足迹（停留时长 / 站点 / 最近访问；默认开启，可在「运行」页的「浏览足迹」里随时关闭或清空；被设为「不运行」的站点不计入）

清除扩展数据或油猴存储即可删除它们。

## 权限用途

- `storage`：保存上述配置与密钥。
- 站点访问（`host permissions` / `*://*/*`）：在网页上显示悬浮球，并按你的动作读取当前页面内容（你把站点设为「不运行」后，该站不显示任何界面，也不读取页面内容）。
- `downloads`（扩展）：仅用于「保存到本地」——你主动点击保存类动作时，把当次生成的文件（Markdown / 文本 /
  图片）写入你的下载目录；不读取、不列举、不管理你已有的下载记录。
- `userScripts`（扩展）：运行你自己编写的「本机脚本」；未开启时该功能仅给出提示。
- `contextMenus`（扩展，仅扩展）：页面右键菜单——在网页上右键时列出「本页可用的动作」，点选的那个动作就在**当前页面**运行（与悬浮球里同一动作、同一条执行路径）；菜单内容按标签页在**本机内存**中暂存，后台不读取标签页地址、标题或页面内容。
  **在输入框里右键也会出**这一组；菜单项是**追加**到浏览器原生右键菜单上，不替换它（复制 / 粘贴等原生项照常可用）。
- **油猴脚本**：不用上面的扩展权限，改由脚本管理器提供等价接口（GM 存储 / 剪贴板 / 跨域请求 / 通知 /
  打开标签页）；安装时脚本管理器会向你展示这份授权清单。

## 商店数据使用声明（Chrome Web Store 分类）

**唯一涉及的类型：网站内容。**

- **网站内容**：只有在**你主动操作**（点击动作，或你为某个动作开启了「自动运行」）时，扩展才读取
  **当前这一个页面**的可见文本 / 图片地址 / 链接，用于生成你配置的结果（复制到剪贴板、写入你自己的
  笔记、渲染分享图）。自动运行默认关闭、逐个动作开启，只在当前打开的匹配页面执行，不做后台批量采集；
  站点被设为「安静」档后一律不触发（设为「不运行」的站点则不读取任何页面内容）。其中「写入笔记」与「AI 提取」会把内容发送到**你自己配置的服务
  地址**（虎鲸 / 思源内核 / 你的模型端点）——不经过我们，我们也没有服务器可以接收；「AI 配置助手」只在你点「生成」时把
  意图、能力清单与当前页的结构摘要发给你配置的模型端点，点「看看这个页面能做什么」时还会把当前页的正文与命中的站点信号发给同一端点；「存到 Obsidian」
  则把内容交给本机的 Obsidian 应用，不出设备。封面等图片只在
  你生成分享图时从对应图床获取。
- **部分站点动作会请求该站点自己的接口**：如「B站字幕」（含 AI 自动生成字幕）需要调用 B站自身的接口
  取字幕，这类请求直接发往你正在浏览的那个站点、带上浏览器已有的该站点登录状态（这样登录用户才能取到
  字幕；未登录时只提示「需登录」，不做任何绕过）。不经过我们，也不发往任何第三方。

**其余类型都不涉及，逐条说明：**

- **浏览历史**：只读你主动操作的那一个页面来显示悬浮球与动作（你把站点设为「不运行」后，该站没有任何界面，
  也不读取页面内容）；另有一项**本机浏览足迹**（停留时长 / 站点 /
  最近访问），默认开启、只存在本机、不上传也不导出，可在「运行」页的「浏览足迹」里随时关闭或清空——
  被设为「不运行」的站点不计入。
- **用户活动**：不在页面上做网络监控。只有你在动作里明确配置了「点击 / 填写」等「网页操作」时，
  扩展才会按你的配置向当前页面派发合成事件（普通点击 / 输入，不是后台监控或改写你的操作）；「运行」页的
  动作使用记录只统计**本扩展动作**的触发次数 / 成败 / 耗时，存在本机、不含网页内容、可一键清空、永不导出。
- **身份验证信息**：笔记服务 Token / 模型 API Key 由你自己填写，只存在本机（导出的配置文件
  **不含密钥**），仅用于访问你自己配置的那个服务。
- **个人身份信息 / 健康信息 / 财务与付款信息 / 个人通信 / 位置**：不读取、不存储、不上传。

顺手不含任何统计、广告或崩溃上报 SDK；除你触发的动作与你手动点击的「检查更新」外，不主动发起
网络请求。唯一需要说明的例外是**端上翻译的语言包**：那是你**浏览器自己**的下载（走浏览器自己的更新通道，
不经过我们的服务器、我们看不到也控制不了），扩展本身不发这个请求。

## 第三方

上面「不收集、不上传」的说法都是**扩展 / 油猴脚本本体**的口径：顺手不包含统计、广告或崩溃上报 SDK；
「运行」页的动作使用记录只保存在本机、不上传。除你主动触发的动作与手动「检查更新」（只请求 GitHub Releases
的公开版本信息）外，本体不会发起任何网络请求。

## 官网（落地页）的统计

本节讲的是**产品官网**，与扩展 / 油猴脚本本体无关——本体不含任何统计。

官网 <https://shunshou.leay.net/> 使用 **Google Analytics（GA4）** 统计访问量，只为了解有多少人来看过这个产品。
页面加载时会向 Google 发起请求，并写入用于区分访客的 cookie；统计内容限于**访问本身**（页面、来源、地区、设备），
不涉及你的网页内容、笔记内容、配置或任何本机数据——这些从不经过官网。

不想被统计：用无痕窗口打开官网，或拦截 Google Analytics（如 uBlock Origin）。

## 联系

如有疑问，请在 [Issues](https://github.com/hqweay/shunshou/issues) 反馈。
