Skip to main content

autopost

CI PyPI version

A social media auto-poster for a blog.

Supported sites:

  • Twitter (currently untested)
  • Mastodon (any instance)
  • Reddit (any subreddit)
  • Bluesky

Installation

autopost requires Python 3.11 or newer, and is available on PyPI:

python -m pip install autopost

Usage

usage: autopost [-h] [-V] [-v] [--dry-run] [--config-file CONFIG_FILE] {manual,atom} ...

auto-posts social media updates

positional arguments:
  {manual,atom}
    manual              auto-post manually
    atom                auto-post from an Atom RSS feed

options:
  -h, --help            show this help message and exit
  -V, --version         show program's version number and exit
  -v, --verbose         be more verbose while running (default: False)
  --dry-run             perform a dry-run (default: False)
  --config-file CONFIG_FILE
                        the file to load for configuration (default: ./autopost.toml)

Examples

To do anything meaningful with autopost, you'll need to configure it. See autopost.example.toml for an example configuration file.

Once configured, you can use autopost to make a post manually:

$ autopost manual "test" --url "https://example.com" --tags foo bar
🎉 reddit:/r/enosuchblog: https://reddit.com/r/enosuchblog/comments/zldk8y/test/
🎉 mastodon:@yossarian@infosec.exchange: https://infosec.exchange/@yossarian/109509443715725349

...where --tags is optional.

Alternatively, you can use autopost atom to retrieve a post from an Atom-style RSS feed:

autopost atom https://example.com/feed.xml

In both cases, you can pass --dry-run to see what autopost would post instead of actually doing it:

$ autopost --dry-run atom https://blog.yossarian.net/feed.xml
dry run: would have posted Modernizing my 1980s sound system with URL:
https://blog.yossarian.net/2022/11/07/Modernizing-my-1980s-sound-system and tags: ['howto', 'workflow', 'music']

Metadata

Release files for autopost 0.0.11

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for autopost 0.0.11
File Size Uploaded
autopost-0.0.11.tar.gz 6.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for autopost 0.0.11
File Interpreter ABI Platform
autopost-0.0.11-py3-none-any.whl Python 3 none any Details

Total release size: 17.3 kB

Release files / autopost-0.0.11.tar.gz

Download URL autopost-0.0.11.tar.gz
Size 6.7 kB
Tags Source
SHA-256 checksum
How to use checksums
23193bbf56bcd56b212e84f679d6d3e4e3d5d97e8d1e936c997d8fd44020ca41
BLAKE2b-256 checksum
How to use checksums
2e5c14f81acfdcfbdbc7863556671c9cdeca8b0f81326c3e921a7a9b55dfac40
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release files / autopost-0.0.11-py3-none-any.whl

Download URL autopost-0.0.11-py3-none-any.whl
Size 10.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5fe4e6bd3d4d9ce83d474faf241797e34d9aed224a1384f1645b1b23bfd3a3ae
BLAKE2b-256 checksum
How to use checksums
59834680f55cf7476d54c5f7d2c77cb711c11fb9bd90daffd3ca72eecbd83627
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.0.11 This release

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page