Skip to main content

Party mode plugin for Takopi - multi-user private topics

Project description

takopi-party

Party mode plugin for Takopi - enables multiple users to have private conversation topics with Takopi in a shared group chat.

Features

  • Each user gets their own dedicated forum topic
  • Private workspaces with git repository for each user
  • Guest access control - allow specific users to interact in your topic
  • Message filtering - only authorized users can trigger bot responses

Installation

uv pip install takopi-party

Requirements

  • Python 3.14+
  • Takopi 0.17.0+
  • A Telegram group with forum topics enabled
  • Bot must have permission to manage topics

Commands

Command Description
/party register [name] Register and get your own topic with optional custom name
/party allow @username Allow another user to interact in your topic
/party revoke @username Remove a user's access to your topic
/party leave Unregister and archive your workspace
/party list Show all registered party members
/party help Show help message

How It Works

  1. User runs /party register in the General topic
  2. Bot creates a new forum topic for the user
  3. Bot creates an isolated workspace folder with a git repo
  4. Only the topic owner (and allowed guests) can interact with Takopi in that topic
  5. Messages in the General topic are ignored by Takopi (used as a lobby)

Configuration

The plugin expects these values in ctx.plugin_config:

  • workspace_base: Path string for workspace root (default: /root/dev/party)
  • bot: BotClient instance for topic creation
  • raw_message: The raw Telegram message dict for sender extraction

Integration Notes

This plugin provides the command backend. Full party mode functionality requires integration with takopi core to:

  1. Load PartyStateStore in the main loop
  2. Filter messages from unauthorized users in party topics
  3. Override context resolution to use party workspace paths

License

MIT

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

takopi_party-0.1.0.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

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

takopi_party-0.1.0-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file takopi_party-0.1.0.tar.gz.

File metadata

  • Download URL: takopi_party-0.1.0.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for takopi_party-0.1.0.tar.gz
Algorithm Hash digest
SHA256 385a88720608b879d0950f2e4e71d1158fb86d1bc6841850f8d10e65f6a8fff8
MD5 48145a47b72008c1bbd160fb14de5d75
BLAKE2b-256 5ea774e888afc8c7fff3b47e501c2c1ba41ff44b1e66a3ed4c997f72fd05b5a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for takopi_party-0.1.0.tar.gz:

Publisher: release.yml on l3wi/takopi-party

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file takopi_party-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: takopi_party-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for takopi_party-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f85870f23f090a3c8fd691a398818810481960b6303a4d13ee2f0667710bb265
MD5 9a05b147f5eb29990ea01af22d5f7038
BLAKE2b-256 28a06d270025f2533e4bd837ff3c7ece457523072b5abde1c9864618b28b8fc7

See more details on using hashes here.

Provenance

The following attestation bundles were made for takopi_party-0.1.0-py3-none-any.whl:

Publisher: release.yml on l3wi/takopi-party

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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