How it works
Review the request. Keep the record.
The mobile app under development supports a choice for each case: guided steps you complete yourself, or an explicitly approved automated email through a supported channel. Neither a sent email nor a completed form proves that a listing was removed.
Mobile app · in development
Choose how each privacy request gets sent.
UnlistFast’s iPhone app brings your profile, requests, replies, and evidence into one place. Review the recipient and exact draft, then choose guided steps or approved automated email where supported.
Guided requests
Open the recipient’s page or an email draft and complete the step yourself. Record the response and attach evidence. A self-reported submission stays distinct from verified removal.
Approved automated email
For supported, reviewed email channels, approve the exact message before delivery. An interrupted send goes to manual review. Mail acceptance is recorded separately from delivery and removal.
Your account and documents
Email-code sign-in, encrypted document storage, protected account actions, and an in-app account-deletion flow are implemented. Mobile accounts use a backend; this is separate from the local desktop vault.
Clear next steps
Track cases, add listing URLs, record replies, and review disclosure history. Connection failures show recovery actions. Identity checks and broker decisions still require the appropriate person.
The mobile app is not available on the App Store yet. These are implemented development features, not a public removal service. Production setup, device testing, and App Store review remain. No removal rate or delivery outcome is guaranteed.
The separate desktop workbench
The following sections describe the local, dry-only desktop runner. They do not describe the mobile account backend or its approved email delivery.
Current release: dry planning and manual evidence only. UNLISTED_DRIVER=live is rejected before the database or a browser can be opened.
- 01
Scout
Plans each reviewed broker search and contains the local matching rules for name, age, city, relatives, and phone. The current dry runner does not open those search pages; you can add an exact listing URL manually and confirm it yourself.
→ dry search plan, or a user-confirmed listing - 02
Operative
Turns the broker recipe into a redacted, reviewable dry plan. It does not open the broker form or submit personal data. You perform the external step, then record the attempt and its exact evidence in the local case file.
→ local draft and next step; nothing submitted - 03
Sentinel
Keeps removal and recurrence as separate evidence-backed outcomes. Automatic page checks are disabled in the current build, so dry verification stays inconclusive. You can record a point-in-time observation with the source and exact evidence.
→ user-reviewed observation + local evidence digest
Mailroom
Mints a per-listing plus alias. Confirmation-link parsing accepts only HTTPS links on the broker's own domain, but no inbox worker reads or clicks them. The job parks and tells you to handle the message manually.
Counsel
Drafts CCPA § 1798.105 deletion, opt-out of sale under § 1798.120, GDPR Article 17 erasure, authorized-agent requests, and neutral follow-ups. Local timers never manufacture a legal breach; drafts stay local for review.
Scout
A heuristic narrows the queue. You make the decision.
The scout code contains local matching rules for name, age, city, state, relatives, and phone numbers. The score is not a probability, and any candidate would still require your confirmation. In the current dry-only runner, broker search plans are recorded but no search page is opened and no listing is discovered automatically.
You can add an exact listing URL yourself. It must use HTTPS, remain on the selected broker’s allowlisted domain, and be confirmed as yours or one you have permission to handle. Local result parsing and structured-AI extraction exist for a future reviewed executor, but neither receives a live page in this release.
Source: UnlistFast source — packages/agents/src/scout.ts, packages/core/src/matching.tsWhy the floor matters: filing a removal for the wrong person means sending a stranger’s name and city to a data broker in order to delete a record that was never yours. Missing a listing costs you a re-run. Getting it wrong costs somebody else.
Operative
Reviewed recipes, visible before you act.
Each mapped broker has a recipe: go here, paste the listing URL, fill the contact email, submit, capture the result. Every step also carries a plain-English intent — “paste the exact profile listing URL” — sitting right next to its selector.
Today, the dry driver records those intended steps with personal values redacted. It never opens the broker form or clicks Submit. You perform the external action yourself, then record whether it was accepted, uncertain, or failed and upload the exact evidence you reviewed.
Source: UnlistFast source — packages/agents/src/operative.ts, driver.ts, live-driver.tsOne active mode, two dormant adapters
dry records what it would do and touches no network — that powers demo mode and the “explain this removal” preview. Playwright and read-only AI adapter code remain dormant architecture: UNLISTED_DRIVER=live is rejected at startup, and an Anthropic API key does not activate either path.
External gates stay with you
CAPTCHAs, logins, phone checks, ID uploads, and all broker-side submission remain manual. The case can label the next step as Needs you and wait for evidence from the action you perform.
Sentinel
Evidence without pretending a dry run looked.
The data model distinguishes removed, still listed, relisted, and inconclusive. The current dry sentinel does not load a listing URL and therefore records verification as inconclusive instead of manufacturing a success state.
You can personally check the source and upload the exact evidence for a point-in-time removed or relisted observation. The local ledger stores its source, timestamp, and digest; relisting never creates another request automatically.
Source: UnlistFast source — packages/agents/src/sentinel.tsMailroom & Counsel
Aliases, conservative parsers, and a filing cabinet.
The mailroom mints a per-broker plus-address alias and contains conservative parsers for confirmation links and codes. The current provider cannot read an inbox, so email confirmation is handed back to you rather than described as though an unseen mailbox worker exists.
Counsel writes the escalation. The templates are deterministic and ship in the box — no API key, no model call, no chance of a model inventing a statute. Drafts remain local until you review and send them.
Source: UnlistFast source — packages/agents/src/mailroom.ts, counsel.ts| Kind | Basis |
|---|---|
| Deletion | Cal. Civ. Code § 1798.105 |
| Opt out of sale | Cal. Civ. Code § 1798.120 |
| Erasure | GDPR Art. 17, with an Art. 21 objection |
| Authorized agent | 11 CCR § 7063 — requires valid signed permission and consumer verification |
| Request follow-up | Neutral status request; it does not infer a missed deadline from a local timer or claim screenshots that were not attached |
California
DROP is a separate official state request.
The DELETE Act created a state-run request for eligible California residents. Registered brokers must access and process the state’s recurring deletion list every 45 days.
UnlistFast does not integrate with or submit to the portal. The official instructions allow an eligible person to submit for themselves and explain when someone may submit for another person with permission. UnlistFast asks you to declare residency explicitly and hands you the official link.
Source: California Privacy Protection Agency — DROPWhat you see
A log, not a quarterly PDF.
Dry-plan events and user-recorded lifecycle actions receive a timestamp and actor. Evidence-backed actions also carry the stored artifact reference and digest. The sample log shows the intended full case history; it is not a claim that today’s runner performed those network actions.
- 2026-08-05 14:22 sentinel example-broker.test/profile/example-profile → 404. removed. evidence/example-verify-0812.png
- 2026-08-05 09:04 operative radaris.com is phone-gated → parked before browser launch for manual completion
- 2026-08-04 18:40 mailroom beenverified.com confirmation email expected at +ul-beenverified → needs you
- 2026-08-03 12:11 sentinel familytreenow.com listing is back after 94 days. relisted.
- 2026-08-02 07:15 counsel drafted CCPA §1798.105 letter → privacy@mylife.com. 31 days waiting.
- 2026-08-01 11:02 scout truepeoplesearch.com: 2 candidates, top heuristic 0.86 → waiting for review
Sources
- California Consumer Privacy Act as amended by the CPRA — right to delete (§ 1798.105), response deadlines (§ 1798.130(a)(2)), authorized agents (11 CCR § 7063). https://oag.ca.gov/privacy/ccpa
- Official GDPR text: Article 12 response rules, Article 17 right to erasure, and Article 21 right to object, each subject to the regulation's scope and exceptions. https://eur-lex.europa.eu/eli/reg/2016/679/oj/eng
- California's Delete Request and Opt-out Platform launched on 1 Jan 2026. Brokers began processing requests on 1 Aug 2026, with an initial 90-day window and recurring deletion processing every 45 days. https://privacy.ca.gov/drop/
- The claims about what UnlistFast does are checkable against the code: packages/agents/src/*.ts and packages/brokers/src/*.ts.