Unified message protocol for channel adapters in the 3tears platform
Project description
3tears-channels
A unified message protocol for the 3tears framework, with adapters for Slack, Discord, and WebSocket clients. Write your agent logic once and deliver it across channels.
pip install 3tears-channels
What you get
- One message model --
ChannelMessage,ChannelResponse,ChannelDeliveryMessage, andAttachmentcarry a request and its reply regardless of channel. - Routing --
ChannelRouterandStreamingChannelRouterdispatch inbound messages and stream responses back. - Slack and Discord -- payload and rich-formatting builders (
build_slack_blocks,build_slack_payload,build_discord_embed,build_discord_payload) plus ashould_use_rich_formattinghelper. - WebSocket --
WebSocketHandler,WebSocketProtocol, aConnectionRegistry, and frame primitives for real-time clients. - Rooms and presence --
RoomFanout,RoomState,RoomIndexCollection, and a three-tier-backedPresenceCollectionwith aPresenceSweeperfor connection liveness.
Quickstart
from threetears.channels import ChannelRouter, ChannelMessage, build_slack_blocks
router = ChannelRouter(...)
response = await router.dispatch(ChannelMessage(text="hello", channel="slack", ...))
blocks = build_slack_blocks(response)
License
MIT. See LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file 3tears_channels-0.19.2.tar.gz.
File metadata
- Download URL: 3tears_channels-0.19.2.tar.gz
- Upload date:
- Size: 124.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a876b161a525d7bfd85ea422665692005f2c86235e5251463c338bde13a97aee
|
|
| MD5 |
c0529b81ddaecaaa899ca1f2910dc70a
|
|
| BLAKE2b-256 |
3b3a5a0e90e60ef621d6846a6a2389c3330c64a46d68226da229def7fb9ebe9d
|
Provenance
The following attestation bundles were made for 3tears_channels-0.19.2.tar.gz:
Publisher:
release.yml on pacepace/3tears
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
3tears_channels-0.19.2.tar.gz -
Subject digest:
a876b161a525d7bfd85ea422665692005f2c86235e5251463c338bde13a97aee - Sigstore transparency entry: 2254717865
- Sigstore integration time:
-
Permalink:
pacepace/3tears@558ab98beb6358b954180afeb569d341ea3313c4 -
Branch / Tag:
refs/tags/v0.19.2 - Owner: https://github.com/pacepace
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@558ab98beb6358b954180afeb569d341ea3313c4 -
Trigger Event:
push
-
Statement type:
File details
Details for the file 3tears_channels-0.19.2-py3-none-any.whl.
File metadata
- Download URL: 3tears_channels-0.19.2-py3-none-any.whl
- Upload date:
- Size: 67.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
18882185aae9f06599ecbab520ddc8b85353d03feedda3b355cc64448a167f52
|
|
| MD5 |
d6e2ec4fb334b554b1b18b82070b4190
|
|
| BLAKE2b-256 |
150ce37531637e93b081267c4053127f4325895fc40dec3a4c64eaa9595473f6
|
Provenance
The following attestation bundles were made for 3tears_channels-0.19.2-py3-none-any.whl:
Publisher:
release.yml on pacepace/3tears
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
3tears_channels-0.19.2-py3-none-any.whl -
Subject digest:
18882185aae9f06599ecbab520ddc8b85353d03feedda3b355cc64448a167f52 - Sigstore transparency entry: 2254718428
- Sigstore integration time:
-
Permalink:
pacepace/3tears@558ab98beb6358b954180afeb569d341ea3313c4 -
Branch / Tag:
refs/tags/v0.19.2 - Owner: https://github.com/pacepace
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@558ab98beb6358b954180afeb569d341ea3313c4 -
Trigger Event:
push
-
Statement type: