Happy App Audit

Statický auditor telemetrie macOS .app: otisky prstů vestavěných SDK, koncových bodů, dat na disku

od iamzhihuix · iamzhihuix/happy-claude-skills

Otestováno · Funguje ★ 8.8/10

Happy App Audit — Statický auditor telemetrie macOS .app: otisky prstů vestavěných SDK, koncových bodů, dat na disku

Co umí

Staticky audituje nainstalovaný balíček macOS .app, aby nahlásil, jakou telemetrii shromažďuje, na jaké uploadovací koncové body se mapuje a co zanechává na disku, a to pouze pomocí nástrojů pro čtení (strings, otool, plutil, codesign, sqlite3 .schema) bez síťových požadavků nebo připojení debuggeru. Otisky prstů vestavěných SDK (ByteDance AppLog/Parfait/TTNet, Tencent mars/MMKV/Bugly, Sentry, Firebase, Umeng atd.), seskupuje extrahované řetězce do urls/domains/sql/events a vykresluje markdown report. Spouští se, když uživatel požádá o audit, prozkoumání nebo reverzní inženýrství aplikace macOS pro telemetrii, nahrávání dat, soukromí nebo detekci SDK proti cestám jako /Applications nebo /Library/Input Methods.

Testovací report

Klonoval jsem repozitář (bun 1.3.14 přítomen, macOS) a spustil scripts/run.ts end-to-end proti /Applications/Kimi.app a /Applications/Discord.app s --out do dočasného adresáře. Vyprodukoval meta.json, seskupené strings/*.{urls,domains,sql,events}.md, matched.md, local_data.md a 138řádkový report.md; pro Kimi vyjmenoval 4 vestavěné frameworky s velikostmi, seskupil 1382 URL z binárního souboru Electron Framework a vypsal SQLite .schema z Cache.db bez čtení řádků. Základní linie (můj vlastní ad-hoc plutil/otool/strings|grep, 25 řádků): otool -L odhalil pouze Electron Framework + libSystem a `strings MacOS/Kimi | grep` vrátil nula domén, protože launcher je tenký — dovednost našla skutečný telemetrický povrch, který základní linie minula. Shoda otisků prstů vrátila 0 potvrzených pro oba (poctivý negativ — DB cílí na nativní balíčky ByteDance/Tencent IME, nikoli na aplikace Electron/JS-asar), a lib/shell.ts vynucuje whitelist příkazů pouze pro čtení; žádné curl|sh, base64, eval nebo pevně zakódované cesty stroje nenalezeny.

Testováno: 2026-07-31 · Claude Code 2.x (agent harness)

Instalace

git clone --depth 1 https://github.com/iamzhihuix/happy-claude-skills.git /tmp/happy-app-audit-src
mkdir -p ~/.claude/skills
cp -R /tmp/happy-app-audit-src/skills/happy-app-audit ~/.claude/skills/happy-app-audit
# Requires bun in PATH (falls back to `npx -y bun`). macOS only (uses otool/codesign/plutil).
# Run a full audit (writes report + audit trail):
#   bun ~/.claude/skills/happy-app-audit/scripts/run.ts /Applications/Foo.app --out ~/app-audit
# Optional --card renders a 4:5 share image and needs the separate baoyu-imagine skill;
# without it the skill still writes card_prompt.md and prints an install hint.

Příkazy a ukázkové prompty

  • /happy-app-auditStatický auditor telemetrie macOS .app: otisky prstů vestavěných SDK, koncových bodů, dat na disku

Skilly se spouštějí běžnými požadavky — žádné příkazy k zapamatování. Po instalaci ho aktivují prompty jako tyto (anglicky):

  • Audit this app for hidden telemetry SDKs
  • Find what data this macOS app uploads
  • Reverse-engineer this app's tracking endpoints