Skip to main content

cmdop-utils

Small framework-neutral utilities shared by CMDOP services.

pip install cmdop-utils

As of 0.2.0, the former umbrella package has been split:

  • LLM transport and the current agent harness: pip install cmdop-llm (import cmdop_llm)
  • Client generation: pip install cmdop-codegen (import cmdop_codegen)
  • The obsolete cmdop_utils.agent implementation was removed; use the harness shipped in cmdop_llm.agent.

cmdop-utils now contains only focused logging and Telegram helpers.

Structured logging

from cmdop_utils.logging import configure_logging, get_logger

configure_logging(service="billing", environment="production")
logger = get_logger(__name__)
logger.info("invoice_created", invoice_id="inv_123", amount="19.00")

The logger uses structlog, async-safe queue-backed sinks, compact machine output, context scoping, redaction, rate limiting, and a Rich console renderer.

Telegram

from cmdop_utils.telegram import DjangoTelegram

telegram = DjangoTelegram(
    bot_token="your-token",
    chat_id="your-chat-id",
)
telegram.send_message("Deployment completed", fail_silently=True)

DjangoTelegram keeps its historical name but does not depend on Django. Credentials can be passed explicitly or supplied through the env-backed cmdop_utils._compat configuration seam.

Development and release

python -m pip install -e ".[dev]"
pytest
python ../publishing/publish.py cmdop-utils --build-only

Metadata

Release files for cmdop-utils 0.2.1

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

Source distribution (sdist)

Source distribution for cmdop-utils 0.2.1
File Size Uploaded
cmdop_utils-0.2.1.tar.gz 105.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cmdop-utils 0.2.1
File Interpreter ABI Platform
cmdop_utils-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 139.9 kB

Release files / cmdop_utils-0.2.1.tar.gz

Download URL cmdop_utils-0.2.1.tar.gz
Size 105.3 kB
Tags Source
SHA-256 checksum
How to use checksums
0ca1a254c2301c54a9e21dd416e6d2ea3b88ad305b6f21ba6224319af80d093f
BLAKE2b-256 checksum
How to use checksums
1f4485aac495c6aaf715e785796e04e51f1f2e1c60d8d69b075752f64efc0963
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.18

Release files / cmdop_utils-0.2.1-py3-none-any.whl

Download URL cmdop_utils-0.2.1-py3-none-any.whl
Size 34.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
183998fc3342c5c528850f7722f588593ed92779bb53dcf4b91e39f82ada79ac
BLAKE2b-256 checksum
How to use checksums
f35d85088c929891774c02ed691e2e0b7c7e741903748e41016ac6ec74592955
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.18

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.1.1

2 release files

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