Distribution Engine

Review queue, provider status, and posting windows

Distribution is API-first for TikTok draft uploads, with browser automation kept as fallback only. Artemis routes rendered variants, stores provider submission state, and uses Mission Control only where approval is configured.

Drafts

45

Active accounts

3

Approval tasks

10

Posting windows

0

Review-first delivery

@sam_the_wombatTikTok Slideshow

My phone used to be a networking junk drawer until I started this Friday ritual. Old recruiters, duplicate coworkers, conference contacts I never followed up with—each one was a tiny brain recoil every time I scrolled by. I realized my network was leaking focus, not fueling it. So I built a 15-minute reset: delete the ghosts, tag the three people I’d actually follow up with next week, archive the maybe-laters, and stop hoarding badge scans from events three years ago. The weirdest one I found? A mystery client labeled ‘Mike Maybe’ from a project I couldn’t even remember. What’s the strangest work contact hiding in your phone? Drop it in the comments—I know I’m not alone. After a few Fridays, my contact list finally feels like a tool, not guilt. I use ContactSweeper now to make the swipe-and-review part stupidly simple, but the routine works without it too. Send this to the friend who still has ‘Conference Guy 2019’ in their phone.

APPROVEDTIKTOK UPLOAD APISEND TO USER INBOX7 slides

ContactSweeper • auth api • browser expired

Visual learning

SUCCEEDED • score 63

.artemis-runtime/storage/visual-analysis/cmpkykkuk002kl147w5r0cs0z/cmpkykkxk0037l147tyy1dmgz/summary.json

Latest provider trace

tiktok_api_582aa0fb00674cdc9ab00636857b4009

APPROVED • TikTok draft upload completed; Artemis approval was skipped because review happens in TikTok.

.artemis-runtime/storage/provider-traces/tiktok/uploads/cmpjdpyoa002vl1l3g2oybyag/cmpkykkvr002ul147iu6ig307/upload_472b92db43524139a63cc2316a5243aa/2026-05-25T08-43-31.475Z-final.json

@finearttherapyTikTok Slideshow

She leaked a private vent to the group chat and I was out before I knew what happened. One day we're planning a birthday trip; the next day I see photos of it without me. She texted later like nothing had changed—asking about some old shirt, zero apology. I stopped defending myself when I realized explaining only fueled their version. But here's what kept the wound open: her contact still sat in my phone as 'family ride-or-die.' That label was a lie that stared at me every time I scrolled. So I renamed it. 'Warning: snake.' That tiny edit gave me a weird closure—a reminder that I don't owe access to people who leak my trust. A week later, I swiped left while waiting for lunch. No drama, no final monologue. Just one less trigger on my screen and a cleaner, quieter nervous system. If you have a saved name that still makes your heart sink, let ContactSweeper make the exit boring and final. Swipe left on names that kept you small, swipe right on the ones who feel safe, and review every merge before committing. Your phone should match the boundaries your soul already set.

APPROVEDTIKTOK UPLOAD APISEND TO USER INBOX7 slides

ContactSweeper • auth api • browser expired

Visual learning

SUCCEEDED • score 65

.artemis-runtime/storage/visual-analysis/cmpkykgpm000ll147k4ux9q1c/cmpkykgvi001al147sopiu8ny/summary.json

Latest provider trace

tiktok_api_b5ba74f5949b408dbdabeae477aa23e7

APPROVED • TikTok draft upload completed; Artemis approval was skipped because review happens in TikTok.

.artemis-runtime/storage/provider-traces/tiktok/uploads/cmpjdp58z001vl1l319lqd0x3/cmpkykgrw000vl147pp7i1vc7/upload_4f26dd205feb4d99803abea127a6c59b/2026-05-25T08-43-02.922Z-final.json

@24f496TikTok Slideshow

It's been nearly two weeks and you almost made it without typing his name. Then you went to text your mom, and autocomplete decided to test you. His contact, still saved as Do Not Text Him, popped up like a dare you weren't ready for. Last Resort is still there too. Low Expectations. Answer At Your Own Risk—names you gave as half-warnings, half-invitations. These aren't just contacts. They're receipts from the version of you who kept doors cracked open just in case Tuesday felt too quiet. Deleting them all feels like too much, too fast. That's where ContactSweeper lets you take one tiny batch: swipe left on the ghosts, right on the people who actually show up for the real you. Review every merge before it sticks, so your phone matches the progress you've fought for, not the heartbreak you're healing from. Tag the friend who still has her ex under an unhinged nickname, and drop your worst saved contact name in the comments. Let's make the mess feel a little less lonely 👇

APPROVEDTIKTOK UPLOAD APISEND TO USER INBOX7 slides

ContactSweeper • auth api • browser expired

Visual learning

SUCCEEDED • score 66

.artemis-runtime/storage/visual-analysis/cmpkif5no00bxl1zzgvnpn9ze/cmpkif63w00ckl1zzddongpp6/summary.json

Latest provider trace

tiktok_api_b00af971bc764b9a97fc72b1a8d8734e

APPROVED • TikTok draft upload completed; Artemis approval was skipped because review happens in TikTok.

.artemis-runtime/storage/provider-traces/tiktok/uploads/cmo5ivfq2000bl17trd6nwfi5/cmpkif5p000c7l1zzd2nonl5h/upload_40ff5c8329e4451b841d462bb908a470/2026-05-25T01-11-00.763Z-final.json

@24f496TikTok Slideshow

You told yourself you would not search his name. Then you typed one letter trying to text your mom, and his contact autocompleted like it was waiting for you. Answer At Your Own Risk. Old situationship. Do Not Answer. You gave him those labels like little electric fences, but they never actually stopped you. The thread is still there. The voice notes are still there. And for five seconds you forget you are supposed to be moving on. ContactSweeper is not a big dramatic delete. It is one tiny batch: swipe left delete, swipe right keep, review before merge. Just one name gone so the search bar stops feeling like a history test. What is the one saved contact name you cannot bring yourself to delete? Send this to the friend who is still one saved name away from relapse.

APPROVEDTIKTOK UPLOAD APISEND TO USER INBOX6 slides

ContactSweeper • auth api • browser expired

Visual learning

SUCCEEDED • score 67

.artemis-runtime/storage/visual-analysis/cmpjcpiqy000tl1m03byidppw/cmpjcpj6g001il1m04u6jyf3m/summary.json

Latest provider trace

tiktok_api_1cb97908ffc448b19e27bad321d6da1d

APPROVED • TikTok draft upload completed; Artemis approval was skipped because review happens in TikTok.

.artemis-runtime/storage/provider-traces/tiktok/uploads/cmo5ivfq2000bl17trd6nwfi5/cmpjcpitc0013l1m0fgli9lng/upload_c21e01c8a3434d9281c8ded506fe0083/2026-05-24T05-43-20.868Z-final.json

@24f496TikTok Slideshow

Two weeks later and you're still holding your phone like a loaded question. You thought deleting his number would be enough, but his contact still says Do Not Text Him. Last Resort is still in your favorites. Low Expectations has a new photo and you noticed. One search undoes a whole week of progress, and suddenly you're reading old messages like a diary you promised to lock forever. You want the reset but can't fake okay—moving on is a thousand tiny choices before you even open the app. If you're in that fragile window where one search could ruin your progress, here's the smallest boundary: swipe left on ghosts, review before merging, and let ContactSweeper archive the names that don't deserve favorites access. The reset doesn't have to feel reckless. You can review one tiny batch before anything changes. Comment the most chaotic saved name you can't delete yet. Tag the friend who needs to clear Do Not Answer tonight. 💔

APPROVEDTIKTOK UPLOAD APISEND TO USER INBOX7 slides

ContactSweeper • auth api • browser expired

Visual learning

SUCCEEDED • score 69

.artemis-runtime/storage/visual-analysis/cmphr40th001wl17v2pzdkai4/cmphr41ae002jl17vk6uafnl4/summary.json

Latest provider trace

tiktok_api_9d2081bd879d45e5a53417b2614629b2

APPROVED • TikTok draft upload completed; Artemis approval was skipped because review happens in TikTok.

.artemis-runtime/storage/provider-traces/tiktok/uploads/cmo5ivfq2000bl17trd6nwfi5/cmphr40v80026l17vitjusw98/upload_34ea47dbcbeb4d51a2fb870904468942/2026-05-23T02-50-59.245Z-final.json

@24f496TikTok Slideshow

The other day I searched for 'Alex' and found three people: Alex from the job I quit in 2021, Alex the maybe-client who never was, and Alex with no last name who I'm pretty sure I met at a street fair but might have dreamed. That's when it hit me: my contacts aren't just names, they're a museum of every version of me that didn't survive. Old landlord? That's my 'first apartment with the broken microwave' era. 'Do Not Answer'? That's the boundary I set but never fully enforced, a little trophy of my people-pleasing past. 'Guy with the Dog'? No clue. But he's been in my phone since 2019, a mystery I'll never solve. We all have this accidental archive, and it's time to stop letting the past live rent-free in our search bar. I'm not saying delete your whole life — just ten names. Swipe left on the ghosts, right on the real ones, and review any duplicates before merging (because those two 'Sarah's might be very different people). Tag the friend with the most chaotic contacts list. Comment the weirdest saved name you have — I promise mine is worse.

APPROVEDTIKTOK UPLOAD APISEND TO USER INBOX7 slides

ContactSweeper • auth api • browser expired

Visual learning

SUCCEEDED • score 65

.artemis-runtime/storage/visual-analysis/cmphnlu9s00cjl1n74j2fxdtg/cmphnlupx00d6l1n7k32xzpu7/summary.json

Latest provider trace

tiktok_api_5b8d965319104c588ee4a7e718aab237

APPROVED • TikTok draft upload completed; Artemis approval was skipped because review happens in TikTok.

.artemis-runtime/storage/provider-traces/tiktok/uploads/cmo5ivfq2000bl17trd6nwfi5/cmphnlub000ctl1n75u12q9fu/upload_dd427ed197d444e5b40c31a440475749/2026-05-23T01-12-52.104Z-final.json

@24f496TikTok Slideshow

Tag the friend whose contacts app needs a group-chat witness. We all have that one saved name that makes zero sense. Mine was 'Guy from the Wedding' for three years (still don't know which wedding). The truth is, your contact list is a secret diary of bad decisions, flaky dentists, and ex-people. 'Dentist No Show' is a confession. 'Hinge Match 2023' is a relic. And three Jamies? That's a corporate thriller. Send this to someone whose phone is one accidental AirDrop away from exposing the whole saga. One tiny batch in ContactSweeper can prevent future embarrassment. Swipe left for cringe, swipe right for real people. Review similar names before merging so you don't delete a real friend accidentally. Comment the weirdest saved name in your phone. I want to see if anyone beats 'Free Haircut Please.'

APPROVEDTIKTOK UPLOAD APISEND TO USER INBOX6 slides

ContactSweeper • auth api • browser expired

Visual learning

SUCCEEDED • score 65

.artemis-runtime/storage/visual-analysis/cmpgzwdbc001sl1n7vx28k27r/cmpgzwdo6002hl1n73923j6wx/summary.json

Latest provider trace

tiktok_api_b718b60291f2422e865ef18e57e91866

APPROVED • TikTok draft upload completed; Artemis approval was skipped because review happens in TikTok.

.artemis-runtime/storage/provider-traces/tiktok/uploads/cmo5ivfq2000bl17trd6nwfi5/cmpgzwdcw0022l1n77zw0rgig/upload_f44e27ffd8fa4f40927d578696fe8a9e/2026-05-22T14-09-13.564Z-final.json

@24f496TikTok Slideshow

Your Contacts app keeps old eras like souvenirs. Old Landlord, Girl From May, Maybe Client, one trip number, three Alexes, and a mystery no-last-name contact are still searchable like they pay rent in your phone and deserve a dramatic farewell tour. ContactSweeper keeps the reset small and a little dramatic in the best way: open one tiny batch, swipe left for the ghosts you would hate explaining out loud, swipe right for the people you would actually text today, and review before merge so two similar names do not become one cursed mega-contact. The point is not to rebuild your entire digital life before lunch; it is to make search feel lighter, safer, and less haunted one batch at a time. Make the cleanup a little spicy: start with the names that would make you pause before handing someone your phone, then let every tiny decision feel like clearing one weird tab from your brain. Save this for your own cleanup, send it to the friend whose phone would need witnesses, and comment the worst saved contact name you are brave enough to admit.

APPROVEDTIKTOK UPLOAD APISEND TO USER INBOX8 slides

ContactSweeper • auth api • browser expired

Visual learning

SUCCEEDED • score 68

.artemis-runtime/storage/visual-analysis/cmpeswvy7009dl190ghwtxdx3/cmpeswwdy00a0l1904ydxbs4n/summary.json

Latest provider trace

tiktok_api_e37558e1d3544b1fa2f5e1fbb1fd9c89

APPROVED • TikTok draft upload completed; Artemis approval was skipped because review happens in TikTok.

.artemis-runtime/storage/provider-traces/tiktok/uploads/cmo5ivfq2000bl17trd6nwfi5/cmpesww02009nl190it3f0ns5/upload_59a37ff33c234389b11d812397fa3c87/2026-05-21T01-18-07.261Z-final.json

@24f496TikTok Slideshow

Tiny dare: delete ten names you would hate explaining out loud. Do Not Answer counts. Random delivery guy counts. The no-last-name mystery number counts. Old situationship absolutely counts. This is not a life audit; it is a fast little cleanup with main-character relief. ContactSweeper keeps the reset small and a little dramatic in the best way: open one tiny batch, swipe left for the ghosts you would hate explaining out loud, swipe right for the people you would actually text today, and review before merge so two similar names do not become one cursed mega-contact. The point is not to rebuild your entire digital life before lunch; it is to make search feel lighter, safer, and less haunted one batch at a time. Make the cleanup a little spicy: start with the names that would make you pause before handing someone your phone, then let every tiny decision feel like clearing one weird tab from your brain. Save this for your own cleanup, send it to the friend whose phone would need witnesses, and comment the worst saved contact name you are brave enough to admit.

APPROVEDTIKTOK UPLOAD APISEND TO USER INBOX8 slides

ContactSweeper • auth api • browser expired

Visual learning

SUCCEEDED • score 67

.artemis-runtime/storage/visual-analysis/cmpddknfw00lcl12fh276ec7u/cmpddknsx00m1l12fyzfwn2oc/summary.json

Latest provider trace

tiktok_api_02001bdf0a4d44cdacdb6dbb3d684fb7

APPROVED • TikTok draft upload completed; Artemis approval was skipped because review happens in TikTok.

.artemis-runtime/storage/provider-traces/tiktok/uploads/cmo5ivfq2000bl17trd6nwfi5/cmpddknha00lml12fzatr8oxn/upload_eb365dddf7bd44ceb020adea6eb4d779/2026-05-20T01-20-56.042Z-final.json

@24f496TikTok Slideshow

You were finally acting normal after the breakup, then one saved name reopened the whole room. His nickname shows up in search like it belongs there. Do Not Answer is still there too. Old situationship, Maybe Client, Girl From May, Alex New, Alex Work: your phone kept every little door you were trying not to touch. ContactSweeper makes the first step small enough to do while you are still torn up: open one tiny batch, swipe left for the ghosts that keep pulling you backward, swipe right for the people who feel calm, and review before merge so similar names do not collapse different eras into one old ache. The point is not to perform healing for the internet. It is to remove one shortcut back to the room you already survived, then let the quiet feel like proof. Save this for the moment one name almost gets you, send it to the friend whose phone keeps ambushing her, and comment the saved contact that still feels dangerous.

APPROVEDTIKTOK UPLOAD APISEND TO USER INBOX8 slides

ContactSweeper • auth api • browser expired

Visual learning

SUCCEEDED • score 71

.artemis-runtime/storage/visual-analysis/cmpbybhuj00a7l12fms4krufb/cmpbybi7700aul12funu5qaj5/summary.json

Latest provider trace

tiktok_api_9bcb2516498345d88b3c109323015370

APPROVED • TikTok draft upload completed; Artemis approval was skipped because review happens in TikTok.

.artemis-runtime/storage/provider-traces/tiktok/uploads/cmo5ivfq2000bl17trd6nwfi5/cmpbybhw000ahl12fq8tx5un9/upload_9bae3a9a7e784892850ed1b173803513/2026-05-19T01-26-08.098Z-final.json

Approval queue

Review TikTok post attribution

Review whether this public TikTok post should train ContactSweeper: Merge Contacts. Relevance: relevant (0.62).

No account

Review TikTok post attribution

Review whether this public TikTok post should train ContactSweeper: Merge Contacts. Relevance: relevant (0.62).

No account

Review TikTok post attribution

Review whether this public TikTok post should train ContactSweeper: Merge Contacts. Relevance: relevant (0.62).

No account

Review TikTok post attribution

Review whether this public TikTok post should train ContactSweeper: Merge Contacts. Relevance: relevant (0.62).

No account

Review TikTok post attribution

Review whether this public TikTok post should train ContactSweeper: Merge Contacts. Relevance: relevant (0.62).

No account

Review TikTok post attribution

Review whether this public TikTok post should train ContactSweeper: Merge Contacts. Relevance: relevant (0.62).

No account

Review autonomous learning directives

Artemis found useful creative learning, but the evidence is not solid enough to auto-apply.

No account

Review TikTok post attribution

Artemis found a possible TikTok public post match, but the caption/time evidence is not strong enough to learn from automatically.

No account

Review Creative Lab copy before upload

Stopped ContactSweeper: Merge Contacts slideshow before TikTok upload: no-passing-finished-script, adSmellRisk, render:slide-4-ellipsis, render:slide-5-ellipsis, render:slide-6-ellipsis.

No account

Review Creative Lab copy before upload

Stopped ContactSweeper: Merge Contacts slideshow before TikTok upload: no-passing-finished-script, recent-hook-repeat:Your phone remembers him, recent-script-too-similar.

No account

Optimal posting predictor

No posting windows have been calculated yet.