Skip to main content

Bot to boost/reblog posts with specified tags

Project description

Zhongli

Automatically boost/reblog Fediverse posts. Formerly Fedibooster.

Repo CI Downloads AGPL

Modes

  • FenLiu Mode (recommended): Consumes pre-filtered posts from FenLiu queue
  • Legacy Mode: Searches independently for posts with specified hashtags

Status

Phase Status Notes
1: Infrastructure ✅ Complete FenLiu client, models, tests
2: Dual-Mode ✅ Complete Feature flag, ReblogService, queue polling
3: Simplify Validation ⏳ Ready Deprecate complex filters
4: Remove Legacy ⏳ Pending Breaking changes
5: UX Polish ⏳ Optional Metrics, dry-run, progress

Install

pip install zhongli

Or from source:

git clone https://codeberg.org/marvinsmastodontools/zhongli.git
cd zhongli
uv sync
uv run zhongli

Configuration

FenLiu mode:

[fediverse]
domain_name = "mastodon.social"
api_token = "your-token"

[zhongli]
run_continuously = true
delay_between_posts = 60
max_reblog = 5

[fenliu]
enabled = true
base_url = "https://fenliu.example.com"
api_key = "your-key"

Legacy mode:

[fenliu]
enabled = false

[zhongli]
search_tags_list = ["fediverse"]

Usage

zhongli              # Run in configured mode
zhongli --dry-run    # Preview without boosting
zhongli --help       # Show options

Development

uv sync              # Install deps
prek run --all-files # Pre-commit checks
pytest               # Run tests
nox                  # Full CI simulation

Recent Work

  • ✅ Phase 2: Dual-mode execution fully operational
  • ✅ Phase 1: FenLiu infrastructure complete
  • ✅ Circuit breaker pattern integrated
  • ✅ Typer → Cyclopts CLI migration

Roadmap

See ROADMAP.md and FENLIU_MIGRATION_PLAN.md

License

GNU AGPL v3.0

Support

  • Buy me coffee
  • Monero: 88xtj3hqQEpXrb5KLCigRF1azxDh8r9XvYZPuXwaGaX5fWtgub1gQsn8sZCmEGhReZMww6RRaq5HZ48HjrNqmeccUHcwABg

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zhongli-2026.3.4.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zhongli-2026.3.4-py3-none-any.whl (21.7 kB view details)

Uploaded Python 3

File details

Details for the file zhongli-2026.3.4.tar.gz.

File metadata

  • Download URL: zhongli-2026.3.4.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"NixOS","version":"25.11","id":"xantusia","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for zhongli-2026.3.4.tar.gz
Algorithm Hash digest
SHA256 5189533f254168be1d676ef4f37c2f6f9ce6134f21b9a2aac9184ed830d4fc5e
MD5 34470e8ee60e3659c2d7261e8e815cfe
BLAKE2b-256 f7f725b0d3419eaac073a33fc368755a4b9d843137de433a6220a180c5ce4cd9

See more details on using hashes here.

File details

Details for the file zhongli-2026.3.4-py3-none-any.whl.

File metadata

  • Download URL: zhongli-2026.3.4-py3-none-any.whl
  • Upload date:
  • Size: 21.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"NixOS","version":"25.11","id":"xantusia","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for zhongli-2026.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 09d78b37235b34a62de8b78e2b82a1c213efce2c8bcce92703f8d2325310955f
MD5 75380b57a0647e4771367bbbd03da460
BLAKE2b-256 a188052d528d4f2d714c582969197d6adb765b8a92e532fe64fdb7a224b29f3c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page