Demo snapshot with made-up demo data. It is read-only: buttons that change things are switched off here.

Settings

How far the operator may go on its own, which integrations are live, and the connection tests.

Autonomy
Ali always approves the first route and the maximum spend for each piece. After that the operator may act inside these limits. Final assets, posts and anything on the pause list come back to Ali.

Always pause and ask when…

Posting per platform

PlatformPost without askingOur daily capPlatform limit
Instagram100 API-published posts per 24 hours (carousels count as one).
Facebook30 API-published Reels per Page per rolling 24 hours.
TikTokUnaudited TikTok apps can only post privately (SELF_ONLY) until TikTok audits the app.
YouTubevideos.insert has its own quota bucket of 100 uploads per day.
LinkedInCompany page posting needs the Community Management API product (w_organization_social).
XPay-per-use: $0.015 per post, $0.20 per post that contains a URL, $0.005 per post read.

Model families the router may use

Integrations
Keys live in .env.local on this computer and are never shown here.
Claude (operator, QA)demonot set
Higgsfield (generation)demonot set
Higgsfield webhook secretoptionalnot set
Buffer (posting + scheduling)main way to postnot set
Meta direct (optional)not set
TikToknot set
Google (YouTube)not set
LinkedInnot set
Xnot set
Public media URLfor Instagramnot set
Supabase media bucketalternative to a public URLnot set
Token encryption keyauto key in data/secret.keynot set

Claude model: claude-opus-5-5 (with server-side fallback on). Worker: not running in this process.

Connection tests
Checks the keys with the smallest possible request. A real generation only runs if you tick both boxes.
Demo data
Status: done. Resetting wipes every record and media file on this computer and loads the demo again.