拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Argent 遥测安全与隐私指南:到底收集了什么,如何为整个团队一键关闭

Argent 遥测安全与隐私指南:到底收集了什么,如何为整个团队一键关闭

Argent 遥测安全与隐私指南:到底收集了什么,如何为整个团队一键关闭

【免费下载链接】argentAn agentic toolkit to control, debug, and profile iOS and Android apps. Made by Software Mansion.项目地址: https://gitcode.com/gh_mirrors/arg/argent

Argent 是由 Software Mansion 打造的 AI Agent 移动开发工具包,用于控制、调试和剖析 iOS 与 Android 应用。它默认开启遥测(telemetry),但设计上极其克制:不收集源码、文件路径、工具输入参数或错误内容。本指南带你 5 分钟搞懂 Argent 遥测隐私机制——它到底上报了什么、数据去了哪里,以及如何用一条命令为整个团队一键关闭遥测。

一分钟看懂:Argent 遥测收集什么?

Argent 的遥测定位为「最小化使用统计」,目的是了解功能使用频率、定位安装与工具链故障。完整的官方说明见隐私声明 Telemetry.md,全部事件清单定义在 packages/telemetry/src/events.ts 中。

类别收集内容
🔧 安装与更新安装/更新/卸载的进度:选了哪些选项、成功还是失败、在哪一步取消
🛠️ 工具调用调用了哪个 Argent 工具、成功还是报错、耗时多久、由哪个 AI 编码工具驱动
🎨 Lens 设计评审仅聚合计数:提案了多少元素和变体、留了几条评论、一轮评审耗时——从不收集评论文字
🖥️ 环境信息Argent 版本、Node.js 版本、操作系统、是否终端/CI 环境、目标平台类型(iOS/Android/Chromium 等)
📊 诊断错误是否发生(仅事件类型和错误码)、调试器连接状态(固定编码原因)
🆔 标识符安装标识(单向 HMAC-SHA256 哈希,原始设备标识永不上传、不可逆)+ 随机会话 ID

明确不收集的「红线清单」

官方在 Telemetry.md 中用一整节明确承诺,遥测永远不包含:

  • ❌ 工具输入或参数值(校验失败时只记录哪些参数名出错,从不记录你填的值)
  • ❌ 文件路径或文件名
  • ❌ 源码及其内容
  • ❌ 应用数据
  • ❌ 设备标识符(硬件 ID、MAC 地址、序列号等)
  • ❌ 错误消息的内容或文字

💡 一个细节:设备标识只在本地用于推断「这是模拟器还是真机」,原始值从不离开你的电脑(见 packages/telemetry/src/events.ts 中device_kind的注释)。

首次运行提示:同意决策链长什么样?

argent init首次运行时,终端会弹出遥测通知并询问「Enable telemetry?」(默认选中 Enabled)。这套交互实现在 packages/argent-installer/src/first-run-notice.ts,提示文案定义在 packages/telemetry/src/notice.ts。

决策优先级(从高到低)设计得非常透明,完整逻辑见 packages/telemetry/src/consent.ts:

  1. --no-telemetry标志:初始化时直接带这个参数,无条件关闭;
  2. 环境变量DO_NOT_TRACK=1或ARGENT_TELEMETRY=0:优先级高于一切配置文件,CI 场景首选;
  3. 项目/全局配置文件:.argent/config.json中的telemetry.enabled;
  4. 默认值:都没设置时默认开启。

关键点:每次调用track()前都会重新评估同意状态,所以关闭遥测后无需重启,立即生效。

一键关闭步骤:三条命令管到底

CLI 命令实现位于 packages/argent-cli/src/telemetry.ts,用法极简:

# 1. 查看当前状态(含来源:环境变量?配置文件?还是默认值?) argent telemetry status # 2. 一键关闭(写入全局配置 ~/.argent/config.json,立即永久生效) argent telemetry disable # 3. 想改主意时重新开启 argent telemetry enable

status输出会告诉你是哪一层策略在生效,例如「config.json (global)」或「environment (DO_NOT_TRACK=1)」,排障时一目了然。官方承诺:关闭遥测不影响 Argent 任何功能。

为整个团队一键关闭:项目级作用域

这是本指南的核心技巧 👇argent telemetry支持--scope参数切换作用域:

# 写入 <项目根目录>/.argent/config.json,提交到仓库即可覆盖所有克隆者 argent telemetry disable --scope project

提交后,任何git clone该仓库的同事,其机器上的遥测都会自动保持关闭——无需任何额外沟通。

这套机制采用「限制性合并」策略(false优先):

  • 项目级false覆盖所有人的全局设置,团队成员的 opt-out 在每台机器上持续生效;
  • 反过来,项目文件无法重新开启已被个人全局关闭的遥测——个人意愿永远优先;
  • 两层任一为false,遥测即为关闭状态。

对于 CI/CD 流水线,推荐更彻底的方式:在 CI 环境全局设置DO_NOT_TRACK=1,它拥有最高优先级,任何配置都无法覆盖(相关实现见 packages/telemetry/src/consent.ts 中getConsentState的优先级判断)。

数据去了哪里?保留多久?

根据 Telemetry.md 隐私声明:

  • 📡 数据通过OpenTelemetry(OTLP)协议发送到 Software Mansion 自建的遥测收集端点,不经过任何第三方产品分析平台;
  • 🔒 端点与鉴权令牌在代码中硬编码(见 packages/telemetry/src/otel.ts),防止被环境变量劫持改道——这是刻意的防数据外泄设计;
  • 🌍 数据存储在欧洲经济区(EEA)境内;
  • ⏳ 保留期为72 个月,之后删除或聚合为不可识别的统计值;
  • 🚫 不用于广告、营销、用户画像或自动决策,也不与任何账号关联。

快速自查清单

完成以下三步,你的 Argent 隐私设置就无懈可击了:

  • 运行argent telemetry status,确认state: disabled;
  • 团队仓库中已提交包含telemetry.enabled: false的.argent/config.json(--scope project一条命令搞定);
  • CI 环境变量中已加入DO_NOT_TRACK=1。

Argent 的隐私设计哲学很清晰:默认开启但最小化收集,退出永远是一步之遥。了解机制之后,你可以根据团队合规要求自由决定开关——无论怎么选,工具功能都不打折扣。

【免费下载链接】argentAn agentic toolkit to control, debug, and profile iOS and Android apps. Made by Software Mansion.项目地址: https://gitcode.com/gh_mirrors/arg/argent

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

返回列表