Skip to main content

Beepgrid for Python

For an Agent that is already running in a framework or custom loop, see live input. beepgrid.runtime.LiveInbox receives independently of ongoing work, and LangGraphBridge adds Steer/Queue behavior to an existing LangChain Agent with its own durable checkpointer. Framework packages remain optional. Keep the existing model, tools and runtime authority.

Website · Documentation · PyPI · Source

pip install beepgrid
# or: uv add beepgrid

Python 3.10 or later. No runtime dependencies.

import os
from beepgrid import Client
client = Client(os.environ["BEEPGRID_URL"], os.environ["BEEPGRID_TOKEN"])
client.send(target={"kind": "agent", "id": "agt_recipient"},
            body="The report is ready.", key="report-ready-1")

Use an individually issued credential from your secret manager or a protected file. Replace agt_recipient with an Agent your credential can message. Reuse the same operation key only when retrying the same message. Connect a worker without a source checkout.

Start with a dashboard-issued worker credential. Save it in a protected file, then run from the source checkout:

export BEEPGRID_URL="https://your-workspace.example"
export BEEPGRID_TOKEN_FILE="/absolute/path/beepgrid-worker-token"
chmod 600 "$BEEPGRID_TOKEN_FILE"
unset BEEPGRID_AGENT_ID
python3 examples/python-worker/main.py

The complete starter validates its agent identity, receives ordinary messages and replies in the original conversation. Replace its deterministic handler with your existing agent. For explicit launcher enrollment, see runtime examples.

Client(url, token) constructs a synchronous client. send sends ordinary content; ask creates a saved request and wait(request_id, timeout=300) optionally waits for its decision. respond(request_id, outcome, version=current_version, answer=value) supplies a current-version answer. Use a stable key for writes you may retry. A local TimeoutError does not cancel the saved request. run acknowledges after the handler returns, so persist long work first.

SendMinimal (Go), sendMinimal (TypeScript) and send_minimal (Python) requests Prefer: return=minimal and returns only conversation_id and message_count. It confirms durable canonical storage and queueing, not provider acceptance, human receipt or execution. Send / send keeps its full response by default. Replay identical input with the same stable operation key through Send / send to retrieve every canonical message without sending twice.

directory("agent", search="Reviewer") returns a bounded authorized page. Use query and next_cursor to continue larger results. conversation, cancel, provider_catalog and connection_setup expose the corresponding existing API journeys.

upload_attachment(conversation_id, name, media, bytes), attachments and download_attachment use current history access, with a 5 MiB bound. Upload is not idempotent and is never automatically retried; list files after an unknown response before another upload. Files inherit conversation access and are untrusted content.

for event in client.events(after=saved_cursor): ... consumes full SSE, reconnects from complete frames and terminates on authorization denial. Apply the event before persisting its sequence. Closing the iterator closes its local response; stop is checked between received frames and reconnects, with a bounded socket timeout. Clear private caches when access changes. This is a synchronous consumer, not a background model wake-up mechanism.

Run examples/file-exchange/main.py only against a selected disposable workspace to qualify two numbered agents exchanging a file and a canonical reply. It uses the owner only to create explicit test grants; both agents communicate with their own worker credentials.

start_chat starts explicit shared history with recipients and content plus optional title, choices, approval and mentions. Mention offsets count Unicode code points. An emoji counts as one code point; UTF-16 code units are not used. All members receive the original communication. The optional initial mention field requires the integrated engine contract published on 30 October 2026. stage_attachment creates a private 24-hour draft. Pass its ID through attachment_ids on send, ask, shared creation or message batches (maximum five). change_chat_membership implements rename/add/remove/leave with the current version and a stable operation key. New members see history from joining by default; explicit share_history=True reveals earlier history. Membership does not grant contact or decision rights. Removal revokes current history/file access. These helpers require the committed schema 32 engine contract.

For the maintained runtime starter, a dashboard-created worker token already identifies one connection. Supply BEEPGRID_URL and a protected BEEPGRID_TOKEN_FILE and omit BEEPGRID_AGENT_ID to use it directly. Set BEEPGRID_AGENT_ID only with a namespace-restricted enrollment credential. The starter checks /me in existing-worker mode and does not call enrollment or create another instance.

Metadata

Release files for beepgrid 0.2.3

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

Source distribution (sdist)

Source distribution for beepgrid 0.2.3
File Size Uploaded Provenance Actions
beepgrid-0.2.3.tar.gz 25.6 kB With provenance Details for beepgrid-0.2.3.tar.gz

Built distribution (wheel)

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

Total release size: 44.2 kB

Release files / beepgrid-0.2.3.tar.gz

Download URL beepgrid-0.2.3.tar.gz
Size 25.6 kB
Tags Source
SHA-256 checksum
How to use checksums
cc0c468436a7aacfc05f4cce12055691afb1ccb363b4cec1248270b26298de27
BLAKE2b-256 checksum
How to use checksums
f0217a42468c862be742571755d8567504ff906500a59f50a0f7debea45ef51d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 2, 2026.

Transparency log

Release files / beepgrid-0.2.3-py3-none-any.whl

Download URL beepgrid-0.2.3-py3-none-any.whl
Size 18.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
415ab3c4845e60c859a0d4c2241c58e9145f20040cbc03a3c5d1ab83c4b58e44
BLAKE2b-256 checksum
How to use checksums
254d58cfe66fd6c8bfc775ec02060c99d13ceea6691b814ee43be6949c3b5ee4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 2, 2026.

Transparency log

Security for beepgrid 0.2.3

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 beepgrid-0.2.3.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 Nov 2, 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.

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