{"id":51215781,"url":"https://github.com/dpejoh/specter","last_synced_at":"2026-06-28T04:01:02.407Z","repository":{"id":357349479,"uuid":"1229388030","full_name":"dpejoh/specter","owner":"dpejoh","description":"Unified Play Integrity and root hiding stack for Android","archived":false,"fork":false,"pushed_at":"2026-06-24T12:06:55.000Z","size":13157,"stargazers_count":332,"open_issues_count":0,"forks_count":24,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-06-24T14:06:51.794Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://specter.dpejoh.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dpejoh.png","metadata":{"files":{"readme":"README.md","changelog":"changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-05T01:52:29.000Z","updated_at":"2026-06-24T13:37:11.000Z","dependencies_parsed_at":"2026-05-31T19:00:27.771Z","dependency_job_id":null,"html_url":"https://github.com/dpejoh/specter","commit_stats":null,"previous_names":["dpejoh/specter"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/dpejoh/specter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpejoh%2Fspecter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpejoh%2Fspecter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpejoh%2Fspecter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpejoh%2Fspecter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dpejoh","download_url":"https://codeload.github.com/dpejoh/specter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpejoh%2Fspecter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34876271,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-28T02:00:05.809Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-06-28T04:00:54.750Z","updated_at":"2026-06-28T04:01:02.360Z","avatar_url":"https://github.com/dpejoh.png","language":"TypeScript","funding_links":["https://ko-fi.com/dpejoh"],"categories":["Root Management"],"sub_categories":["Root Hiding and Play Integrity"],"readme":"# Specter\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./screenshots/home.png\" width=\"19%\" alt=\"Home\"\u003e\n  \u003cimg src=\"./screenshots/tools.png\" width=\"19%\" alt=\"Tools\"\u003e\n  \u003cimg src=\"./screenshots/target.png\" width=\"19%\" alt=\"App Targeting\"\u003e\n  \u003cimg src=\"./screenshots/control.png\" width=\"19%\" alt=\"Control\"\u003e\n  \u003cimg src=\"./screenshots/settings.png\" width=\"19%\" alt=\"Settings\"\u003e\n\u003c/p\u003e\n\n[![latest release](https://img.shields.io/github/v/release/dpejoh/specter?label=Release\u0026logo=github)](https://github.com/dpejoh/specter/releases/latest)\n[![CI](https://github.com/dpejoh/specter/actions/workflows/build-test.yml/badge.svg)](https://github.com/dpejoh/specter/actions/workflows/build-test.yml)\n\nGetting strong integrity, TEESimulator management, detection solve. Clean, focused, no bloat.\n\n[Download](https://github.com/dpejoh/specter/releases/latest)\n\n## Background\n\nSpecter is a complete rewrite of what I originally built as Yurikey.\n\n## Support\n\n- Telegram: [Channel](https://t.me/dpejoh) · [Group](https://t.me/dpejoh0)\n- Ko-fi: [ko-fi.com/dpejoh](https://ko-fi.com/dpejoh)\n- BTC: bc1qfy4vfstns4aqhvck66x0r53n3hfkkzhwkt7zpw\n- ETC: 0x895762C0Fd2BeF54EE3cD478Fc03212aeA673a68\n\n## Quick start\n\n1. Install [Tricky Store](https://github.com/5ec1cff/TrickyStore/releases/latest) or a fork\n2. Install any PIF fork\n3. Install Specter via Magisk / KernelSU / APatch\n4. Reboot. First-boot runs backup, target, security patch, keybox.\n5. Open the WebUI\n\n## Features\n\n- **Keybox**: multi-source catalog, custom keybox, Google revocation, backup/restore\n- **Auto Target**: inotify + polling for new apps\n- **App Targeting**: per-app states, TEE-aware suffixes, blacklist\n- **Security Patch**: live fetch with offline fallback\n- **TEE \u0026 Boot Hash**: TEE status/tier, vbmeta digest, boot hash\n- **ROM Fingerprint**: cleans custom ROM props and prefixes\n- **ADB Disabler**: dev options, USB debugging, OEM unlock\n- **PIF**: auto-detect variant, fetch fingerprint, block spoof engines\n- **GMS Kill**: force-stops DroidGuard/GMS, clears Play Store\n- **Module Configs**: HMA-OSS/HMA/HMAL, Zygisk Next\n- **Detection Cleanup**: removes detector logs, temp dirs, caches\n- **Widevine L1**: attestation keys via KmInstallKeybox\n- **Conflict Resolution**: 7 modules — aggressive disabled, passive coexists\n- **Scheduler**: periodic keybox info, auto-target, autopif\n- **First-Boot**: backup originals, run full pipeline once\n\n## Requirements\n\n- Root access (Magisk / KernelSU / APatch)\n- Tricky Store or fork\n- Play Integrity Fix or fork (recommended)\n\n## Build\n\n```bash\ngit clone https://github.com/dpejoh/specter\ncd specter\nnpm install\nnpm run build\n```\n\nOutput: `Specter-v{version}.zip`\n\n### Testing\n\n```bash\nbash tests/run.sh          # Shell tests. 6 files, 97 assertions.\nnpm test                   # TS tests. 10 files, 92 tests (vitest + happy-dom).\nnpx tsc --noEmit           # TypeScript strict check\n```\n\n### CI\n\n- TypeScript strict, ShellCheck (warning), shell tests, TS tests\n- Module structure verification\n- No hardcoded `/data/adb/modules/Specter` paths in lib/ or features/\n- No `su -c` in feature scripts\n\n## Legal\n\n```\nFOR EDUCATIONAL PURPOSES ONLY.\nTHE DEVELOPER DOES NOT CONDONE ILLEGAL ACTIVITIES INCLUDING BYPASSING DRM, VIOLATING TERMS OF SERVICE, OR COMMITTING FRAUD.\nUSERS ARE SOLELY RESPONSIBLE FOR COMPLYING WITH APPLICABLE LAWS.\n```\n\n## Warning\n\n```\nSPECTER IS PROGRAMMED NOT TO CAUSE PROBLEMS, BUT AN UNLOCKED PHONE ALWAYS COMES WITH RISKS.\nNOTHING IS 100% GUARANTEED. USE AT YOUR OWN RISK.\nYOUR WARRANTY MAY BE VOIDED, APPS MAY BREAK, AND ACCOUNT BANS ARE POSSIBLE.\nALWAYS MAINTAIN BACKUPS OF IMPORTANT DATA.\n```\n\n## Translations\n\nThe WebUI is translated into Arabic, Spanish, Russian, and Chinese (all AI-generated — human review welcome).\n\nTo contribute translations:\n- **Preferred**: Join the [Crowdin project](https://crowdin.com/project/specter) — web UI, no git needed\n- **Alternative**: Edit the JSON files in `src/webroot/lang/` and submit a PR\n\nEach `*.json` file is validated against `source/string.json` in CI (`npm test`). New keys without translations fall back to English.\n\n## Thanks\n\n- [chiteroman](https://github.com/chiteroman/PlayIntegrityFix), [KOWX712](https://github.com/KOWX712/PlayIntegrityFix) and [osm0sis](https://github.com/osm0sis/PlayIntegrityFork). PIF and forks.\n- [5ec1cff](https://github.com/5ec1cff/TrickyStore), [JingMatrix](https://github.com/JingMatrix/TEESimulator), [Enginex0](https://github.com/Enginex0/TEESimulator-RS). Tricky Store and forks.\n- [KOWX712](https://github.com/KOWX712/Tricky-Addon-Update-Target-List), [Enginex0](https://github.com/Enginex0/tricky-addon-enhanced). Tricky Store Addon.\n- [vvb2060](https://github.com/vvb2060/KeyAttestation). KeyAttestation.\n- [eltavine](https://github.com/eltavine/Duck-Detector-Refactoring). Duck Detector.\n- [Citra-Standalone](https://github.com/Citra-Standalone/TSupport-Advance). TSupport-Advance.\n\n## License\n\nGNU GPL v3.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdpejoh%2Fspecter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdpejoh%2Fspecter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdpejoh%2Fspecter/lists"}