Spool(思簿)隐私政策
最后更新:2026-10-26(对应 Spool v0.7.4)
一句话版本
Spool 将你的数据保存在本机,Spool 主进程自己从不打开网络连接。捕捉、存入项目、打包和搜索都在本机完成;无需注册账号,也不收集遥测数据。应用的内容安全策略(CSP)从机制上禁止 WebView 发起外部网络连接,而 Spool 这个二进制里根本没装 HTTP 客户端。
有一条路确实会到达模型厂商,而且是 Spool 自己启动它的。如果你打开 API 引擎(在设置 → AI 引擎 → API key 里粘一个你自己的 key;不粘就一直是关的),Spool 会启动一个随包的小程序去发这个请求,用的是你自己的 key 和你自己的额度。这一条,加上另外三条由你自己发起的交接,全部列在下面;除此之外没有任何东西会离开这台电脑。
我们收集什么
不收集任何数据。Spool 没有服务器,也没有账号系统、使用情况分析、崩溃报告或广告标识符。开发者无法查看你的任何内容。
有一个例外,而且它是一个链接,不是 app 的一部分。官网反馈那一节里有一份问卷,托管在第三方问卷服务问卷星。你点进去填写的内容存在问卷星的服务器上、遵守他们的隐私政策,既不经过 spoolapp.org,也不进入 Spool 这个应用。你不点那个链接,这个页面就不会和他们发生任何通信。不想经过第三方的话,邮件和 GitHub 这两条一直都在。
数据存放在哪里
- 所有内容(工作区、项目、笔记、批注和附件索引)都存放在本机 SQLite 数据库中:
~/Library/Application Support/com.oceanjin.spool/spool.db - 界面设置保存在同一目录的
settings.json中。API 引擎的 key 不在这个文件里:macOS 上存在系统钥匙串,Windows 上存在同一目录下一个单独的0600文件。它不会被写进日志,也不会出现在任何报错信息里。 - 你加进项目的文件,Spool 不复制、不上传,只记三样:它的路径;系统用来认出这个文件的一小段身份信息(文件被你挪走或改了名,Spool 靠它跟过去);以及(可选的)本地提取的文字。PDF 和 Word 文档的文字提取完全在本机完成。文件找不到时你点「找一找」,Spool 会用本机的 Spotlight 按文件名搜一下,结果只给你看。
- 放进块里的图片(粘贴、拖进来、捕捉的截图)会复制一份存进数据库,原图删了,块里的图还在。打包、或者 AI 读到带图片的块时,Spool 会在同一目录的
image-cache文件夹里放一份副本,好让收到的程序指得到它;这个文件夹删掉也不丢任何东西。iPhone 拍的照片(HEIC)会先在本机用系统自带的工具转成 JPEG。 - Spool 在本机记每天专注了多久:你在电脑前(15 分钟内动过键盘或鼠标)的时间,不管 Spool 在不在前台,每天一个数,存在同一目录的
focus.json里。它不进数据库、不随库导出,也不会离开这台电脑;删掉这个目录就清掉了。 - 编辑面板和项目底下输入框里还没点「完成」、没发出去的字,边写边存在同一目录的
drafts.json里,退出或换新版本都不会丢;点了「完成」或者发出去就删掉。它和focus.json一样不进数据库、不随库导出、不离开这台电脑。 - 织布那一栏「织成了」的东西(哪一件、哪天织成的)记在同一目录的
knit.json里;针数和布不存,每次都是从你的块现数出来的。它也不进数据库、不随库导出、不离开这台电脑。 - AI 写进来的新内容你看到了哪里(每个项目记一个时间,只用来决定左栏那个小圆点要不要亮绿色)记在同一目录的
ai-seen.json里。它也不进数据库、不随库导出、不离开这台电脑。 - 过期检测的结果(你手动查的、每月自动查的都算)和「每月自动查一次」的开关,记在同一目录的
stale.json里,关掉 Spool 再打开也还在。它也不进数据库、不随库导出、不离开这台电脑。 - 你可以把一个工作区连到电脑上的一个文件夹(代码仓库、论文文件夹都行;默认没有,私密项目不能连)。连上之后,Spool 在本机看这个文件夹里有哪些文件、上次对齐之后哪些改了(只看文件名、大小和修改时间)和 git 提交的标题,并读取你选的最多三份「现状文件」的文字;其他文件的内容不读。Spool 只往这个文件夹里写四处,每一处都在连接时给你看过:根目录的
SPOOL.md(只改 Spool 自己那一段,你改过的不覆盖;私密项目不会写进去)、你选「只留在这台电脑」时.git/info/exclude里的一行、你勾了的CLAUDE.md和AGENTS.md里各一行。改之前的原样备份在同一目录的folder-backups里;断开时可以把这几处撤掉。 - 每次升级数据库结构前,Spool 都会自动在同一目录保存一份快照备份。
删除该目录即可彻底清除 Spool 的全部数据;在应用中选择「设置 → 清除所有数据」也会完成同样的操作。
什么时候会有数据离开你的电脑
内容可能通过以下四种方式交给其他程序,而且每一种都要你自己打开才存在。前三种是你把内容交出去,之后是否发送到网络服务由接收程序决定,不是 Spool 决定;第四种是 API 引擎——那一次请求是替你发的,由 Spool 启动的一个子进程发出:
| 功能 | 数据去向 | 说明 |
|---|---|---|
| 生成并粘贴 Pack | 你粘贴 Pack 的应用或服务 | Spool 在本机生成 Pack,并将其放入剪贴板。仅复制到剪贴板时,内容仍留在这台电脑上;当你把 Pack 粘贴到其他程序时,才是一次由你发起的交接。此后适用接收方的隐私条款。 |
| MCP 服务(设置 → MCP,默认关闭) | 你自行安装和配置的 AI 客户端(例如 Claude Desktop、Codex——包括 ChatGPT 桌面应用中的 Codex 对话——以及 Cursor) | AI 客户端通过本机进程间通信读取项目内容;Spool 不监听任何网络端口。你亲手加进项目的文件,AI 默认能读到 Spool 从里面提取的文字;每个文件旁边都有开关,随时能关,关掉之后 AI 只能向你申请。块里的图片,AI 也能拿到图片本身(看清截图上写了什么)。私密项目(在左栏右键设成私密)对通过 Spool 连接的 AI 来说不存在:读不到,任何列表里也看不到,里面的文件和图片也一样;AI 仍然可以往私密项目里写(比如它自己新建成私密的那个),但写进去之后读不回来。Spool 自带的 AI 功能(周回顾、跟进、压缩、过期检测)也不碰私密项目。私密只管「通过 Spool 连接」这一条路:一个本来就能直接读你电脑上文件的 AI(比如开了文件权限的命令行工具),Spool 拦不住它去读数据库文件。工作区连了文件夹的话,AI 还能读到这个文件夹的位置、你选的现状文件的文字、上次对齐之后改过的文件名和提交标题;其他文件的内容 Spool 不给。但如果客户端自己有读文件的工具,它可以直接去读这个文件夹,这一点 Spool 管不到。客户端之后是否发送内容、发往何处,由该客户端决定,并受你与其服务商之间协议的约束。 |
| 「跟进」、「周回顾」、起草跟进目标、压缩或过期检测(设置 → AI 引擎 → 本机 CLI;需要已安装并登录受支持的 CLI,并开启所需的 MCP 权限) | 你自行安装并登录的命令行 AI(Claude Code、Codex CLI 或 Gemini CLI;没单独装 Codex 时,也会用 ChatGPT 桌面版自带的那一份;Gemini 不支持「跟进」) | Spool 在本机以子进程方式启动该 CLI,并将所需的项目内容交给它。网络请求由该子进程发出,使用你自己的账号额度;这条路上 Spool 不保存 API key,主进程自己也不发出 HTTP 请求。压缩和过期检测走这条路时,CLI 拿不到任何工具,也不连 Spool,只收一段文字、回一段文字。工作区连了文件夹时,它也能读到上一行说的那些文件夹信息。 |
| 「周回顾」、「跟进」、起草跟进目标、压缩或过期检测(设置 → AI 引擎 → API key,默认没有;需要你自己粘一个 key) | 你的 key 所属的那家厂商(OpenAI、Claude、Gemini、DeepSeek、Kimi、通义千问、智谱 GLM、OpenRouter 之一),或者你自己填的 HTTPS 地址 | 这是唯一一条由 Spool 自己去跑的路。用到的项目内容会发到那家厂商,账记在你自己的 key 上——包括你中途按停下的那一次,因为已经吐出来的那一段厂商照样收费。用这条路「跟进」时,网页由那家厂商自带的联网搜索去查(OpenAI、Claude、Gemini、Kimi、通义千问有;其余几家不能用来跟进)。请求由一个随包的子进程(spool-ai)发出,它由 Spool 启动、跑完就退出;Spool 主进程自己仍然不发 HTTP 请求。明文 http:// 的端点会被直接拒绝。它不会改动你已有的任何内容:跟进查到的东西进待审,压缩和过期检测的结果要你在屏幕上点头才生效。 |
⚠️ 「跟进」是唯一会主动搜索网页的操作。它会把你写下的跟进目标,以及搜索所需的上下文,交给你选的那条路(本机 CLI,或 API 那家厂商自带的联网搜索)查找新进展;这些内容因此会到达那家服务商。「周回顾」、「起草跟进目标」、压缩和过期检测都不会获得网页搜索工具,但所需的项目内容仍会交给 CLI 或 API 厂商,也可能到达其服务商。「跟进」默认只在你点的时候跑;你在某个项目的跟进「编辑」里打开「每周自动查一次」之后,Spool 每周替这个项目自动跑一次,走「跟进」选的那条路、用你的额度,查到新东西才放进待审。这个开关每个项目一个,默认关闭。同样,过期检测页签里查整个工作区时可以打开「每月自动查一次」:之后 Spool 大约每 30 天把这个工作区(连同子工作区)里没完成、不私密的项目交给过期检测选的那条路查一遍,结果只放在过期检测页签里等你看。这个开关每个工作区一个,默认关闭。两种自动跑都只在 Spool 开着的时候发生。
换句话说:内容只会顺着你自己打开的那条路离开本机——手动粘贴 Pack、启用 MCP 客户端、运行 CLI 动作,或者给 API 引擎粘了 key(包括你为某个项目打开的每周自动跟进、为某个工作区打开的每月自动过期检测)。API 引擎关着的时候,Spool 一个网络请求都不发;打开之后,请求来自一个单独的子进程,用你自己的 key 和额度,发往你自己选的那家厂商。
反过来,只有启用 MCP 服务后,AI 才可能向 Spool 资料库写入内容。下方的「允许 AI 写入」开关默认开启,并可随时关闭。AI 可以新增带明确来源标注的笔记,但不能编辑、覆盖或删除你写的内容,也不能把自己的内容伪装成你的原文。如果 AI 认为已有内容需要更正,它只能提交更正提议,进入待审队列,由你决定是否接受;AI 也不能替你把笔记标为作废。同样只是提议、要你在待审里点头才生效的还有三种:把你电脑上的一个文件挂进项目(AI 报出完整路径,系统文件夹、隐藏文件夹这类直接拒绝)、用新版文件取代旧版(旧版保留,收在新版下面)、把太长的项目拆成几个子项目(已经完成的项目要你先重新打开)。
系统权限说明
| 权限 | 用途 | 拒绝的后果 |
|---|---|---|
| 输入监控(连按两次 ⌥ 捕捉) | 检测连按两次 Option(⌥)键的手势 | 无法使用跨应用连按两次 ⌥ 的捕捉;仍可在设置中配置自定义捕捉快捷键 |
| 辅助功能(可选) | 两件事:捕捉成功时,从事件流中移除第二次 ⌥ 按键,使该手势仅由 Spool 响应,避免使用相同手势的其他应用(如 Claude Desktop)同时弹出;以及让确认浮窗拿到键盘,批注框不用先点一下就能直接写 | 捕捉仍可正常工作,但使用相同手势的其他应用可能同时响应,且需先点击批注框才能输入 |
| 浏览器自动化 | 读取当前浏览器标签页标题,作为来源标注 | 仍可捕捉,但来源只记录浏览器应用名 |
| 剪贴板 | 触发捕捉时读取剪贴板里的文字、图片,或你复制的图片文件 | 无法捕捉 |
| 截图所在的文件夹(默认是桌面) | 截完图(⌘⇧3、⌘⇧4、⌘⇧5)连按两次 ⌥ 时,读取刚写出来的那一张;第一次会弹系统询问 | 存成文件的截图捕捉不到;截到剪贴板的(比如 ⌃⌘⇧4)照常 |
这些权限只在相应功能触发时使用,不会在后台持续监控。剪贴板只在你触发捕捉的那一刻读取一次;截图文件夹也只在你连按两次 ⌥ 捕捉时看一眼刚截的那一张。
联系方式
如有疑问或顾虑,请在 GitHub 提交 Issue,或发送邮件至 jinhz0531@gmail.com。