Internal tool · TikTok
Find the ads.
Authorise the posts.
Spark Control drives an iPhone to scan TikTok's For You feed, flags competitor ads with OCR and vision models, and generates Spark Ad authorisation codes for your own posts. Everything lands in one panel.
First launch: macOS will block it — right-click the app and choose Open, then Open again. Only needed once; updates after that install silently.
No Windows build. The app signs and launches WebDriverAgent through Xcode, which only runs on macOS. Running it from Windows would need a separately signed IPA and a different device layer — not built yet.
Before you run it
What the Mac needs
The app checks every item below on first launch and installs what it can. Open a row to see how to sort the rest.
○ Xcode & command line tools You
xcode-select --install.
Needed to sign and launch WebDriverAgent onto the phone.
○ Homebrew You
brew.sh. The app uses it to fetch the two
dependencies below.
↓ libimobiledevice & Tesseract App installs
↓ Python environment App installs
○ Supabase & Anthropic keys You
↓ WebDriverAgent App installs
○ iPhone on USB, trusted You
○ TikTok ad permissions Optional
↑ Updates install themselves. When a new version is published the app shows a banner, downloads it, and relaunches.
Questions
FAQ
The things that actually come up. If something here doesn't cover it, Setup has a Copy setup report button — send that.
? macOS says it can't be opened
? Do I need Xcode?
xcode-select --install. Sign into it with the Apple ID you
were given, and pick the right team when prompted.
? Setup shows red items — what do I fix first?
? Three permissions that can't be automated
1. Open Spark Importer once and tap Allow — lets it add images to your photos.
2. Settings → Spark Importer → Paste from Other Apps → Allow — lets it read the Spark code from the clipboard.
3. TikTok → Settings and privacy → Creator tools → Ad settings — without this, "Generate code" never appears.