用途:对已安装的 macOS .app 包做纯静态遥测审计,回答“上报了什么、报给谁、推断频率、在磁盘留下什么”。触发词包括审计/调查/拆/逆向/上报/埋点/隐私/抓 SDK 加 .app 路径或应用名;不适用于源码仓库、网站、iOS/Android 包。
主要能力(6 阶段):0 锁定 ≤5 个有效 .app 路径并拒绝 /System/、/usr/libexec/、/private/var/db/com.apple.*;1 用 snapshot_app.ts 采集 bundle id、版本、签名、entitlements、ATS 例外、内嵌框架;2 classify_strings.ts 把二进制字符串分桶为 urls/domains/paths/sql/events/keys;3 依 sdk_fingerprints.md 做 SDK 指纹匹配;4 结合 known_endpoints.md 生成端点表,频率只能引用字符串或配置中的字面数值,否则写 unknown;5 inventory_data.ts 盘点 Application Support、Containers、Caches、Preferences、Logs,SQLite 仅取 schema 不读内容;6 render_report.ts 生成 report.md,可选 --card 输出 4:5 卡片。
用法:运行时为 bun+TypeScript,优先 PATH 中的 bun,否则 npx -y bun。快速开始: bun {baseDir}/scripts/run.ts /Library/Input\ Methods/DoubaoIme.app 加卡片:--card;只写提示词:--card --no-image;指定图片参数如 --image-provider google --image-model gemini-3-pro-image-preview --image-imageSize 4K。输出默认在 ~/Documents/app-telemetry-audit/<日期>_<bundle-id>/。卡片依赖 baoyu-imagine,未安装则跳过 PNG 仅写 card_prompt.md。
限制:硬性只读,禁止 curl/wget/nc/dig、无需 lldb/dtrace/tcpdump/frida、不读钥匙串、不绕过 DRM、不做内存转储;命令须在 references/safe_commands.md 白名单内;输出中 device_id、uid、session_id、邮箱、IDFV、IDFA、JWT 及 16+ 位十六进制块脱敏为 redacted:N;单次最多 5 个应用;Phase 3 未命中则不写报告,只输出“no telemetry detected”。