Maintainers and core teams of open source projects, from solo libraries to foundations

Promote open source projects without becoming a marketer

Maintainers ship releases, review pull requests, and answer issues. Posting about the project comes last. SocialHandoff is itself open source under AGPL-3.0, self-hosts for free, and turns releases into drafts that a maintainer approves on X, Bluesky, and Mastodon.

Open source projects grow through word of mouth, and word of mouth needs posts: new releases, contributor thanks, calls for help. Maintainers are volunteers or stretched thin, project accounts are shared by several people, and nobody wants a bot posting on behalf of the community without a human check.

How to do it

  1. Self-host next to the project Run the Docker Compose stack or all-in-one image on the project's infrastructure. No per-seat cost.
  2. Release to draft The socialhandoff-announce-action GitHub Action sends each release; a draft is created per network with a citation to the release.
  3. Shared project account, separate keys Each maintainer or bot gets its own agent key, so the audit log shows who drafted and who approved.
  4. Maintainer approves Any owner can approve from the inbox or phone. Contributor thank-you posts and calls for help follow the same path.
v0.18 is out, with 23 contributors, 9 of them first-timers. Highlights: async plugin loading, a much smaller install, and Windows path fixes. Thank you all. Changelog and upgrade notes in the release. #opensource

Open source promotion that respects the community

Open source communities are wary of marketing, and for good reason. The posts that work are factual, thank people by name, and link to the work. That is a good match for an agent that reads the release and drafts, and a good reason to keep a maintainer approving every post on a shared project account.

Why self-hosting fits

SocialHandoff is released under AGPL-3.0; see open source. Self-hosting is free and has no channel or agent limits, which suits projects without a budget. The self-hosting guide covers Docker Compose and the all-in-one image. Tokens are encrypted at rest, and the service runs as non-root.

Setup

  1. Connect the project's accounts. Many open source communities are active on Mastodon and Bluesky.
  2. Add the release action to your workflow (GitHub releases, GitHub Actions integration).
  3. Add brand memory: project name casing, how you credit contributors, topics the project avoids.

Permissions

The release bot gets draft only. Maintainers who draft by hand in their editor get draft and schedule. Owners approve. If the project wants patch releases to post automatically, promote the release agent on one network via the trust ladder and leave minor and major releases draft-only.

Measuring project reach

Stars and downloads matter more than likes. Tag links to the docs site with UTM parameters and compare traffic. Per-post metrics show which release posts drew replies and reposts.

Pitfalls

  • Forgetting contributors. Ask the agent to include first-time contributor counts from the release notes.
  • Hashtag spam. One relevant tag is plenty on Mastodon.
  • Posting pre-releases. Reject release candidates, or send only full releases from the action.

Templates: open source release, thank-you post.

Frequently asked questions

Is SocialHandoff itself open source?
Yes. It is licensed under AGPL-3.0 and can be self-hosted for free with no limits on channels or agents.
Can several maintainers share one project account safely?
Yes. Connect the account once and give each maintainer or bot its own agent key. The audit log shows who drafted and who approved each post.
Does it support Mastodon instances other than the big ones?
Yes. Mastodon support covers threads, up to 4 attachments, and the instance character limit, with idempotency keys to prevent duplicates.

Let your agents post. Keep the final say.

Connect your first agent in minutes. Every draft waits in your inbox until you approve it.

14 days free. No card required.

The hosted version is opening soon

Leave your email and we will send one message when hosted accounts open, with your 14-day trial ready. Want it today? Self-host it free from the repo.

Start free trial