Enter the team password
Tags your name on posts so the team can see who queued what
Drag to move · pinch or slider to zoom — keep the best bit in the frame
Pick when it goes live — UK time
Genuine, on-brand suggestions — copy one, tweak it, and post it yourself on Instagram. Nothing is posted automatically.
A marker for something happening outside the auto-poster — a manual IG-app post, an accepted collab, a go-live reminder. It shows on the calendar, dashed, kept separate from scheduled posts.
Recipients are managed in one place — Accounts → 💬 WhatsApp recipients. Add a group or a number there and it appears in every note’s reminder picker here.
Find relevant posts worth genuinely engaging with — per brand. Add hashtags or creators to watch, hit Find content, then review the queue. You approve every like and comment — nothing acts without your say-so. Turn on Automation below to have the ones you approve run for you, paced and only when the account is healthy.
Hashtags pull recent public posts for that tag; creators pull a specific account's latest posts. On TikTok this uses your scraper (each search uses a little Apify credit, so keep the list focused).
Muted words hide any post whose caption contains them; muted creators hide all their posts — good for giveaways, bots and rival promoters.
Runs the likes/comments you approve, one at a time, spaced out, only in active hours and only when the account is healthy and past warm-up. Starts in test (dry) mode — it opens the session and finds the button but doesn't click, so you can confirm it works before going live.
One-time per account: log in once on the Mac with node tiktok/login.mjs <slug>. This account's slug: —.
Each brand tracks its own competitors. Add a rival's Meta Page ID (best — exact match) or a keyword, then pull their live ads from the Meta Ad Library. Longest-running ads are their likely winners.
Find a Page ID in the Meta Ad Library — search the brand, open one of their ads, the page id is in the ad's details.
Your brand vs its rivals on the organic side — followers, growth, engagement rate, posting cadence. Add an @handle to a competitor above (the +@handle button) to include it. Growth fills in once we have a few days of daily snapshots.
Log rival events / on-sales / big announcements. The Month calendar flags their days in red, and this checks whether your upcoming posts land on one (where you'd get buried) — plus the clear green windows.
Runs on its own — captures competitor followers daily and pushes a summary to your phone every Monday. Movers = biggest follower changes across all brands' rivals over the last week; plus rival events coming up in the next 7 days.
Set a repeating weekly posting plan — the times you want to post on each day. Then Fill drops your drafts into the next open slots automatically. Tap a cell to add/remove a slot.
Auto-schedules this account's drafts into the next open plan slots (respecting the daily cap + gap).
One post per line. A plain caption drops into the next open plan slot; prefix a time — 20:00 | caption or 2026-08-12 18:30 | caption — to pin it. Applies to this account's drafts, oldest first.
One place to manage who’s connected to WhatsApp — a group or an individual number. These are used by post reminders and the weekly brief.
For a group: add the bot number to the WhatsApp group first, then paste its group id (from ./manage.sh wa-groups). Individuals can be 07…, +44…, or full international.
Pick a Facebook page that already has an Instagram account linked. Everything else — page token, IG id, handle — comes from the last npm run fb-connect. If a page is missing here, re-run that and reload. New accounts start with TikTok, YouTube, X, Threads and Snap off; turn them on per account once its Ayrshare profile is linked.
A “what worked” summary of the last 7 days, sent automatically to your phone and/or the WhatsApp recipients you tick below.
Where automated alerts go — failed posts, Morning Drop, competitor digest, disk/token warnings, login alerts. Tick who gets them on WhatsApp; keep phone-push (ntfy) on if you use it for healthchecks.
During quiet hours, non-critical alerts hold; critical ones (failed posts, can’t publish, disk/backup) always send.