Skip to main content

chatom chatom

Chatom

A unified Python frontend for Discord, Slack, Symphony, Telegram, and other chat backends.

Build Status codecov License PyPI

Chatom lets application code use one set of users, channels, messages, formatting nodes, interactions, and backend operations. Platform adapters translate that frontend to Discord, Slack, Symphony, or Telegram at the edge. The same models also feed cross-platform bridges, pydantic-ai tools, MCP servers, and CSP graphs.

Install

Chatom requires Python 3.11 or newer.

pip install chatom

Install the SDKs for the backends you use:

pip install slack-sdk discord.py symphony-bdk-python python-telegram-bot

Optional integrations are available with chatom[agent] and chatom[mcp].

One message, four backends

from chatom import MessageBuilder

message = (
    MessageBuilder()
    .heading("Deployment status", level=2)
    .paragraph("All checks passed.")
    .bold("Environment: ")
    .text("production")
    .table(
        [["API", "healthy"], ["Workers", "healthy"]],
        headers=["Service", "State"],
    )
    .build()
)

slack_content = message.render_for("slack")
discord_content = message.render_for("discord")
symphony_content = message.render_for("symphony")
telegram_content = message.render_for("telegram")

Message construction stays unchanged. Only rendering and backend configuration know which platform receives it.

Connected backends share the same lifecycle and operation shape:

await backend.connect()
try:
    channel = await backend.fetch_channel(name="operations")
    await backend.send_message(channel, message.render_for(backend.name))
finally:
    await backend.disconnect()

What the frontend covers

  • Platform-independent models for users, channels, organizations, threads, messages, attachments, embeds, reactions, presence, and interactions
  • Rich text, tables, mentions, embeds, buttons, select menus, and format conversion
  • A common asynchronous backend interface with a synchronous facade
  • Backend capabilities for feature-dependent operations such as reactions, editing, files, presence, and threads
  • Model promotion and demotion between common and backend-specific types
  • Identity mapping and message forwarding between platforms
  • Agent, MCP, and CSP integrations built on the same backend contract
  • In-memory Discord, Slack, Symphony, and Telegram backends for tests

Documentation

License

Chatom is licensed under the Apache License 2.0.

Metadata

Release files for chatom 0.2.2

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

Source distribution (sdist)

Source distribution for chatom 0.2.2
File Size Uploaded
chatom-0.2.2.tar.gz 363.4 kB Details

Built distribution (wheel)

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

Total release size: 802.3 kB

Release files / chatom-0.2.2.tar.gz

Download URL chatom-0.2.2.tar.gz
Size 363.4 kB
Tags Source
SHA-256 checksum
How to use checksums
5103c010865951da522c37dac7e2e72bb0ec85dee02f4f4aaf20072299e158bb
BLAKE2b-256 checksum
How to use checksums
26e62e56c7e765069e4924c7c0bc806196405d38d05e37510c484abc73031a9b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / chatom-0.2.2-py3-none-any.whl

Download URL chatom-0.2.2-py3-none-any.whl
Size 438.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
db7c352adeab09b2d7a57035eb0c4e0986ce3639a5e83a10562aa80467d9a7f5
BLAKE2b-256 checksum
How to use checksums
7bb45674cfee7d4fbafb11d2f2c04e3b4eef9c17bdfc843fc15354d6226ee6e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release history Release notifications | RSS feed

This release

0.2.2 This release

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.0

1 release file

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