Skip to main content

CMDOP umbrella package — reusable server-side features (codegen, …) extracted from the relay.

Project description

cmdop-server

CMDOP server — your own self-hostable relay

The umbrella package for reusable CMDOP server-side features — heavy, self-contained pieces lifted out of the relay repo so the repo stays light. This is not the whole relay (run that from the repo); it's an installable home for features other projects can reuse.

pip install cmdop-server

📚 docs.cmdop.com · Server · Connect · Bots · SDK

Features

cmdop_server.codegen — multi-language client generator

A monorepo-agnostic code-generation engine: declarative targets (proto / OpenAPI / WebSocket) → typed clients in Go, TypeScript, Python, Swift. You supply a Config describing your sources + outputs; the engine drives the toolchains (grpc_tools, ogen, @hey-api, openapi-python-client, swift-openapi, a built-in WS emitter).

from cmdop_server.codegen.schema import Config, ProtoSpec, ProtoTarget, Lang, Tool
from cmdop_server.codegen.core.runner import run

cfg = Config(proto=ProtoSpec(targets=[ProtoTarget(
    name="proto-python", lang=Lang.PY, tool=Tool.GRPC_PYTHON,
    path=my_out_dir, proto_dirs=[my_proto_dir],
)]))
run(cfg, kinds=("proto",))

Or the CLI, pointing at a module that exposes config: Config:

python -m cmdop_server.codegen --config myproject.codegen_config gen all

External toolchains (ogen, buf, swift-openapi, @hey-api) are subprocess prerequisites — install the ones your targets use.

Run the relay itself

This package is server-side features, not the server. To run a CMDOP relay, clone and run the repo: github.com/commandoperator/cmdop-server.

Apache-2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cmdop_server-0.0.5-py3-none-any.whl (164.9 kB view details)

Uploaded Python 3

File details

Details for the file cmdop_server-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: cmdop_server-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 164.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for cmdop_server-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e77e9b593fcf76c14637642be5a0f58e8f06e1c76c8564bedd2326882e8f7338
MD5 8e19c65622196d206d70b9a6d21ac603
BLAKE2b-256 37acf807e204dd110cc8a25cd752a1b046c3555fc2e8f8a2f697cac5bd7f599e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page