Telegram-powered crossposting

Post once to Telegram. Publish everywhere.

shitpost is a tiny self-hosted Go bot that turns your private Telegram chat into a social posting command center.

docker run -d --name shitpost \
  --env-file .env \
  -v ./downloads:/app/downloads \
  registry.goharbor.io/bupd/shitpost:latest
01

Private Telegram interface

Send text, images, captions, and alt text to one bot instead of opening every social app.

02

Self-hosted by default

Your tokens, media, and logs stay on your server. No hosted dashboard is required.

03

Powered by crosspost

The Go bot handles Telegram. The `crosspost` CLI handles Bluesky, Mastodon, X, and more.

04

Dry-run first

Preview the exact command before anything is published. Fix flags and tokens safely.

Architecture

A small wrapper, not a platform.

shitpost polls Telegram, checks authorization, downloads media, normalizes environment variables, and starts crosspost. That is the whole shape.

Telegram shitpost bot crosspost CLI Social platforms