Product
What is SocialHandoff?
SocialHandoff is an AI social media scheduler with human approval. AI agents draft and schedule posts, a person approves them, and then they publish to your social accounts.
Which networks can I post to?
X, LinkedIn, Bluesky, Mastodon, Threads, Instagram, Facebook Pages, and TikTok are all supported. Instagram needs a professional account, and Meta and TikTok review each developer app before it can post for accounts beyond its testers. YouTube, Pinterest, and Google Business Profile are not supported yet.
Can I approve posts from my phone?
Yes. The approval inbox has a phone swipe stack and installs as an app, so you can approve, reject, or edit drafts anywhere.
Does it support threads and images?
Yes. X, Bluesky, Mastodon, and Threads get real threads, and images carry alt text. LinkedIn gets one post per publish, so a thread is joined into a single post, and on Instagram it is joined into one caption.
Do I get analytics?
You get per-post metrics wherever the network returns them. Best-time and engagement comparisons are shown too, and they are labeled as heuristics.
Can I move from Postiz?
Yes. You can import from Postiz, and a Postiz-compatible API slice keeps existing scripts working while you switch.
Agents and MCP
Which AI agents can connect?
Any MCP client, including Claude Desktop, Claude Code, ChatGPT through a custom connector, Cursor, VS Code, Windsurf, Cline, and Gemini CLI.
How do I connect an agent over MCP?
Run npx socialhandoff-mcp for a local stdio connection, or point your client at the streamable HTTP endpoint at /mcp. Then give the agent its own API key.
What can an agent do through MCP?
It can plan a week, draft, schedule, list, and preview posts, reject drafts, read insights, and read or update brand memory. Approving posts needs an owner key.
Can I use n8n, Zapier, or Make?
Yes. Automation tools connect over the REST API, which is documented with OpenAPI at /openapi.json. LangChain, CrewAI, and the OpenAI Agents SDK work the same way.
Can an agent ever publish without approval?
Only if you promote it. New agents are draft-only; you can promote one to auto-publish on specific networks after clean approvals, and a guardrail failure demotes it immediately.
Can GitHub releases become posts?
Yes. A GitHub release or signed webhook becomes a draft for approval. The socialhandoff-announce-action GitHub Action sends releases for you.
Security and control
How are my social tokens stored?
Social account tokens are encrypted at rest with AES-256-GCM. Agent API keys are stored only as SHA-256 hashes, so a database leak does not expose usable keys.
Can an agent approve its own post?
No. Approval requires an owner key. An agent's key can draft and schedule within its scope but can never approve its own draft.
What is the kill switch?
One action pauses every agent and holds all queued posts. When you resume, the held posts are released on their schedule.
How do I know the audit log is complete?
The log is append-only and hash-chained. Calling the verify endpoint checks the chain, so any edited or removed entry shows up.
What guardrails are included?
Banned topics, per-network length limits, missing alt text, per-account daily limits, and blocked link shorteners. Rules run on every draft.
Self-hosting
Is SocialHandoff open source?
Yes. The core is licensed under AGPL-3.0, including the scheduler, approvals, guardrails, and network connectors.
How do I self-host it?
Use Docker Compose, the all-in-one image, or the run.sh script for local development. The self-hosting guide walks through each option.
Are there limits when I self-host?
No. Self-hosting is free, with no channel or agent limits. You run and update the server yourself.
Which AI model do I need?
None to publish. For brand-voice rewrites you bring your own key for OpenAI, Anthropic, OpenRouter, or any OpenAI-compatible endpoint.
Billing
How long is the free trial?
The hosted trial lasts 14 days and does not need a credit card.
How much do hosted plans cost?
Starter is $19/month, Pro is $49/month, and Agency is $149/month. Annual billing gives you 2 months free.
Can I get a refund?
Yes. Ask within 14 days of your first paid charge and we refund it in full. You can cancel anytime from billing settings.
Who handles payments and tax?
Lemon Squeezy is our merchant of record. It processes payments, issues invoices, and handles sales tax and VAT.