Happy App Audit
Statický auditor telemetrie macOS .app: otisky prstů vestavěných SDK, koncových bodů, dat na disku
Otestováno · Funguje
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 SDKsFind what data this macOS app uploadsReverse-engineer this app's tracking endpoints