隐私与遥测
DevAgent 会收集哪些匿名使用数据、绝不收集哪些数据,以及如何选择退出。
本页描述我们在打包发布的 DevAgent 构建中收集的匿名产品使用遥测数据、我们绝不收集的内容,以及如何选择退出。
概要
- 匿名。 事件以存储在你本机上的一个随机 ID 作为键。不收集账户、邮箱、IP 地址或用户名。
- 无内容。 我们绝不传输文件内容、prompt、agent 输出、终端输出、仓库名、分支名、URL、路径或提交信息。
- 以下情况始终关闭: 设置了
DO_NOT_TRACK=1或ORCA_TELEMETRY_DISABLED=1。
我们收集什么
伴随每个事件,我们会包含基本的构建和平台信息:DevAgent 版本、你的操作系统(如 darwin / win32 / linux)、CPU 架构、粗粒度的 OS 发行字符串、发布渠道(stable 或 rc),以及上文所述的匿名本地 ID。没有主机名,没有用户名,没有 IP。
我们观察的行为类别:
- Lifecycle(生命周期) —— 应用何时打开。用于估算日活、周活和月活用户。
- Repos and workspaces(仓库与工作区) —— 你何时添加仓库或创建工作区。我们记录你如何做的(例如文件夹选择器 vs. 克隆 URL;命令面板 vs. 拖放),绝不记录仓库名、URL、路径、分支名或任何自由文本。
- Agents —— 你何时启动 agent、它是哪种 agent(来自
claude-code、codex、gemini等固定列表),以及你从哪里启动它。绝不记录 prompt、模型细节或 agent 输出。 - Agent errors(agent 错误) —— 一个粗粒度的错误类别以及涉及的 agent 种类。我们绝不会看到原始错误信息或堆栈跟踪;每次事故的详细信息留在你本机的一个本地诊断跟踪文件中,只有当你明确分享诊断包时才会到达 DevAgent。
- 设置 —— 你何时切换一小组白名单内的功能标志或 UX 偏好。我们记录哪个偏好发生了变化以及它是布尔值还是枚举值,绝不记录任何自由文本设置的原始值。
- Privacy controls(隐私控制) —— 你何时选择开启或退出遥测,以便我们能从聚合数据中判断我们的同意 UI 是否有效。
我们传输的每个字段要么是固定枚举值、版本字符串,要么是匿名本地 ID。任何 UI 输入的自由文本字符串都绝不会离开你的机器。
我们绝不发送什么
- 不发送文件路径、仓库名、分支名、URL、提交信息或当前工作目录。
- 不发送 agent prompt、响应或终端内容。
- 不发送原始错误信息或堆栈帧。每次事故的错误上下文留在你本机的一个本地诊断跟踪文件中,只有当你明确分享诊断包时才会到达我们这里。
- 不发送用户账户信息(DevAgent 没有账户系统)。
- 不发送 IP 地址,也不做精确的 geoip;从请求推导出的唯一地理信号是国家/地区。
- 不发送与你匿名 ID 关联的、供应商侧的用户画像。
如何选择退出
你可以通过三种方式禁用遥测。任何一种都足够;它们可以叠加。
在应用内。 设置 → 隐私 → 关闭 "Share anonymous usage data"。更改立即生效并持久保存。
DO_NOT_TRACK=1—— 社区标准的环境变量。为该次启动禁用传输。取消设置后,下次启动时会恢复你已存储的偏好。ORCA_TELEMETRY_DISABLED=1—— DevAgent 专属的一键关闭开关,语义与DO_NOT_TRACK相同。
数据流向何处
- 供应商: PostHog Cloud,美国区域。
- 保留期: 按其定价页面 PostHog Cloud 套餐级别的默认值。我们不设置自定义保留窗口。
- 访问权限: 项目成员资格仅限少数几名 DevAgent 维护者。