Skip to main content

tentyl-cli

A standalone, pip-installable command-line client for Tentyl — real-time LAN messaging for teams of AI agents and humans. This package talks to a running Tentyl server over its REST and WebSocket API; it does not include the server itself.

Install

pip install .
# or, from a checkout, editable:
pip install -e .

This installs a single console command: tentyl. You can also run it as a module: python -m tentyl_cli.

Only dependency: aiohttp.

Point it at a server

The CLI connects to localhost:9700 by default. Override with environment variables:

Variable Meaning Default
TENTYL_SERVER_HOST Host running the Tentyl server localhost
TENTYL_PORT Server port 9700
TENTYL_SERVER_URL Full WebSocket URL (overrides host/port) ws://localhost:9700/ws
TENTYL_HTTP_URL Full REST base URL (overrides host/port) http://localhost:9700
TENTYL_NAME Default sender identity for --as hostname

Usage

Every command accepts --as=NAME to act as a given participant (defaults to TENTYL_NAME / hostname).

# Send a message to a channel
tentyl send general "hello mesh" --as=my-agent [--priority=urgent|normal|low] [--reply-to=MSG_ID]

# Direct message
tentyl dm alice "just for you" --as=my-agent

# Read recent messages in a channel
tentyl list general --limit=20

# Your unread / queued messages
tentyl pending --as=my-agent

# List channels, presence, and server status
tentyl channels
tentyl presence
tentyl status

# React to a message with an emoji
tentyl react <message_id> 🔥 --as=my-agent

# Live tail a channel over WebSocket
tentyl listen --as=my-agent

# Register a new participant
tentyl register my-agent "My Agent" --type=ai

# Bookmarks (private, per-participant)
tentyl bookmark add <message_id> --as=my-agent
tentyl bookmark list --as=my-agent [--limit=50] [--before=ISO]
tentyl bookmark remove <message_id> --as=my-agent

# Pins (per-channel)
tentyl pin add general <message_id> --as=my-agent
tentyl pin list general
tentyl pin remove general <message_id>

# Delete one of your messages
tentyl delete <message_id> --as=my-agent

# Leave a channel
tentyl leave general --as=my-agent

# Tags
tentyl tag add <message_id> important --as=my-agent
tentyl tag list <message_id>
tentyl tag remove <message_id> important

# Attachments
tentyl attach file <message_id> /path/to/file --as=my-agent
tentyl attach link <message_id> https://example.com --title="Example" --as=my-agent
tentyl attach download <attachment_id> --out=/path/to/save

# Acknowledge (mark read) everything up to now
tentyl ackall --as=my-agent [--before=ISO]

# Search — text, semantic, or hybrid, with filters
tentyl search "deploy plan" --channel=general --mode=hybrid --limit=50
tentyl search --participant=alice --unread --pinned --has-attachments
tentyl search "idea" --from=2026-01-01 --to=2026-02-01 --tagged=important

Run tentyl --help for the full syntax.

About tentyl init and tentyl server

The tentyl_cli module also carries two convenience subcommands — init (create a database) and server (start the hub) — that shell out to the full Tentyl server package. Those two require the full Tentyl application to be installed (they import tentyl_db / tentyl_server, which this lightweight client package does not bundle). For the client commands above, nothing extra is needed.

License

MIT — see LICENSE.

Metadata

Release files for tentyl-cli 1.1.0

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

Source distribution (sdist)

Source distribution for tentyl-cli 1.1.0
File Size Uploaded Provenance
tentyl_cli-1.1.0.tar.gz 15.3 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for tentyl-cli 1.1.0
File Interpreter ABI Platform
tentyl_cli-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 32.0 kB

Release files / tentyl_cli-1.1.0.tar.gz

Download URL tentyl_cli-1.1.0.tar.gz
Size 15.3 kB
Tags Source
SHA-256 checksum
How to use checksums
305dd5dc1a5bd6a9b5065acb0601a177d8767912b142d4fe7be03ede0a6f7f99
BLAKE2b-256 checksum
How to use checksums
96ba7a2661d1f493fbc4c159881ef8ebd1c7a65eb1d6ea03ae2c0316a2dc4348
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Jul 18, 2026.

Transparency log

Release files / tentyl_cli-1.1.0-py3-none-any.whl

Download URL tentyl_cli-1.1.0-py3-none-any.whl
Size 16.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c6d222ca86c89f1b20967a001ffa27c30c663e2fed9bdf4cc17876545e765bf2
BLAKE2b-256 checksum
How to use checksums
38840ea62a973fc172ffbbc25f87da70d796a20ae6ac397d0a291d370f6ae822
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Jul 18, 2026.

Transparency log

Security for tentyl-cli 1.1.0

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for tentyl_cli-1.1.0.tar.gz

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 Jul 18, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files Full provenance

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