Kailash Enterprise — high-performance Rust-powered workflow engine, drop-in replacement for kailash
Project description
Kailash Enterprise
High-performance Rust-powered workflow engine — a drop-in replacement for the kailash Python SDK.
Installation
pip install kailash-enterprise
Replaces pip install kailash. Existing code works without changes.
Usage
# Existing kailash code — no changes needed
from kailash.runtime import LocalRuntime
from kailash.workflow.builder import WorkflowBuilder
builder = WorkflowBuilder()
builder.add_node("NoOpNode", "step1")
workflow = builder.build()
runtime = LocalRuntime()
results, run_id = runtime.execute(workflow)
Why Enterprise?
- 22–261x faster execution via compiled Rust engine
- 100–300x less memory than the pure Python SDK
- Same API — zero migration effort
- Binary-only — source code stays protected
Compatibility
Full backward compatibility with kailash v0.12. The legacy API emits deprecation warnings to guide migration to the new v2 API.
New v2 API:
import kailash
reg = kailash.NodeRegistry()
builder = kailash.WorkflowBuilder()
builder.add_node("NoOpNode", "step1")
workflow = builder.build(reg)
runtime = kailash.Runtime(reg)
result = runtime.execute(workflow)
# result["results"], result["run_id"], result["metadata"]
Domain event bus (kailash.events)
A pluggable publish/subscribe event bus for cross-service domain events,
with structured envelopes (correlation/causation tracking, schema
version, JSON payload). Distinct from kailash.EventBus (which is the
Nexus lifecycle broadcast bus and is unchanged).
from kailash.events import EventBus, DomainEvent
bus = EventBus()
received = []
bus.subscribe("orders", lambda e: received.append(e))
event = DomainEvent(
"order.created", "orders", "checkout-service", {"order_id": 42}
).with_correlation("44444444-4444-4444-8444-444444444444")
bus.publish(event)
time.sleep(0.05)
Each subscriber receives a dict with the event's fields (id,
event_type, topic, actor, schema_version, correlation_id,
causation_id, timestamp, payload, metadata).
Choosing an event-bus backend
kailash.events ships two backends. They are not unified — the
choice is a deployment-topology decision, not a convenience toggle:
| Backend | Delivery scope | Durability | When to use |
|---|---|---|---|
InMemoryEventBus |
Same Python process ONLY | None | Dev / test / single-process. EventBus is an alias for this. |
NatsEventBus |
Cross-process, cross-host | At-least-once | Multi-process / multi-service production (requires a NATS JetStream broker). |
Cross-process divergence is deliberate and silent if mis-chosen: a
subscriber registered in one process on InMemoryEventBus will NEVER see
events published from a different process — that is a no-delivery, not a
degraded delivery. Pick NatsEventBus whenever publisher and subscriber
are not the same OS process:
import os
from kailash.events import NatsEventBus, DomainEvent
# URL threaded in explicitly — the binding never reads the environment
# itself. TLS is required by default; allow_plaintext=True is only for a
# localhost test broker.
bus = NatsEventBus(os.environ["KAILASH_NATS_URL"])
bus.subscribe("kailash.events.acme.orders.created", lambda e: ...)
bus.publish(
DomainEvent("order.created", "kailash.events.acme.orders.created",
"checkout-service", {"order_id": 42})
)
bus.shutdown()
NatsEventBus delivers at-least-once via JetStream durable consumers;
subjects MUST live under kailash.events.<tenant>.<domain>.<event> (the
broker's stream captures that subtree for tenant-isolated routing).
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 Distributions
Built Distributions
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 kailash_enterprise-4.11.0-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 17.8 MB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
20978d5313b4a8b4cb6ee02413e3e554629447e401948a3c1604fa4fafe10bf4
|
|
| MD5 |
30a7ce11dab343a3921733f69af3f7e2
|
|
| BLAKE2b-256 |
4a26bdd7269c1653fb5e9a638ae9406fb090e77cc324c84bb93bae39f848b503
|
File details
Details for the file kailash_enterprise-4.11.0-cp314-cp314-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp314-cp314-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 19.2 MB
- Tags: CPython 3.14, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ba1057a2bd25bed1d7e102f3faf742bdb20da67c7836dbb4e5ab0d67f6b54e15
|
|
| MD5 |
f781305c735c86689d290b94e8254994
|
|
| BLAKE2b-256 |
8242379aef92f079c1f64987371c2992a28e7fa11c044917bb9b02061a8e0215
|
File details
Details for the file kailash_enterprise-4.11.0-cp314-cp314-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp314-cp314-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 17.9 MB
- Tags: CPython 3.14, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e4e5c4f16c5d48c43467b89527603acb482e2a3b858d242070ba8d940b5b013a
|
|
| MD5 |
69bd6de82769da525c63cb38c5f145d7
|
|
| BLAKE2b-256 |
47043e0fa3297cbb3b105c5bf239f1236b693b65a3750b1beec00e594954681e
|
File details
Details for the file kailash_enterprise-4.11.0-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 16.6 MB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1ec5f7e0ad565dee42be2d101c915ea99082d1dc6644792c7052689491fe45b1
|
|
| MD5 |
65c097dc801e59687e02123838022320
|
|
| BLAKE2b-256 |
e49ae577b3d61dac9fa2802e5cb0d77a5897a92b943124f4f0a59a26511ad66b
|
File details
Details for the file kailash_enterprise-4.11.0-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 17.9 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b744e1a29da13e8186dd7ac97a216fdafee1a98f40d1db61d7bbce563bede95d
|
|
| MD5 |
69e970f3786e08b44bfbe57cf68d5047
|
|
| BLAKE2b-256 |
c6cd9dfd9c209d7c31e30ab914f0854ab6ec554abe396c19033c174f7770f28f
|
File details
Details for the file kailash_enterprise-4.11.0-cp313-cp313-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp313-cp313-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 19.2 MB
- Tags: CPython 3.13, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
722d760cc1964ac7f4d4f9f23cd06fd4263df5ddd316130d2a3e025d18edffee
|
|
| MD5 |
ce9ff58a2872470408d0e5be85336295
|
|
| BLAKE2b-256 |
3a2cceff2bb1cd303ac756532e83a138ba335d3cd46b1572fce79a2a9b421ba2
|
File details
Details for the file kailash_enterprise-4.11.0-cp313-cp313-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp313-cp313-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 18.0 MB
- Tags: CPython 3.13, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
059fd9271eb166cd5f32cd664f1c7a81b1c6a22909ff2b3c5f03a07b5b1125b1
|
|
| MD5 |
b5bfc6f85ba5342926847e4c1d2142a6
|
|
| BLAKE2b-256 |
fa9643049ba335390ebd67afd06826fd88075d377d694b8947a1e7e104cd06d9
|
File details
Details for the file kailash_enterprise-4.11.0-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 16.6 MB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
89182e98e0f12da6c58c100ffe0dfdeda08a753b1a5257d406031e59ae6bb263
|
|
| MD5 |
47f15ed00095b996883292b82a4b1ac8
|
|
| BLAKE2b-256 |
65840ec389da2488ded7ca382d4b39f5f3fb69f76744dbdef69310a255669338
|
File details
Details for the file kailash_enterprise-4.11.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 17.9 MB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eccbf8aae1315db3cb6b7b987d20958a27a697f19ec3c970ee9971a4d3b872eb
|
|
| MD5 |
dca11a83146d4092d628f871932612f3
|
|
| BLAKE2b-256 |
5bf8561ced665ef692b3ee38cf575902fa98fbd6f83e813684cbb61cae6d16ed
|
File details
Details for the file kailash_enterprise-4.11.0-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 19.2 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b1e743c04e1552ce4a24fc9dd78d25cb2ee0f3e4b39d0bd08c79714044fad98a
|
|
| MD5 |
94d80d1d7f6ea678a8dc90d69181ab2a
|
|
| BLAKE2b-256 |
4b10c3965e07858f938b75a6a5509d62c1241a72a636ed5baf4b7b6a26995aa0
|
File details
Details for the file kailash_enterprise-4.11.0-cp312-cp312-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp312-cp312-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 18.0 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c46261320a68d8676ef494778698ef35932412b29f61eaf94d0b77381a350425
|
|
| MD5 |
b556019697474301c4c7d0376d6e2314
|
|
| BLAKE2b-256 |
360e129e1cd3f8e812af43fefd0cfb766b28bc5f637437f35c493f9b4d1a8fb4
|
File details
Details for the file kailash_enterprise-4.11.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 16.6 MB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7f747c9e7315dafb344fc235ce143758ffac1e00b97ddee427512f184edfd68c
|
|
| MD5 |
8f7086b8a823d5f5740a5764d0883843
|
|
| BLAKE2b-256 |
3418a77543aecd80803dadfcf9230b68258a0c9778a99a22edccadfe5e3ef93d
|
File details
Details for the file kailash_enterprise-4.11.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 18.0 MB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97ae8d8fcb825c5b379a3fb9282923e4ff7d241bc646b98c208e5365936e1dd9
|
|
| MD5 |
0f25b4c0aa92a4e20a48cfc22beace6e
|
|
| BLAKE2b-256 |
4b90556902c6a22c0929054d72508281de0344107d3f55c66f39412df9211d78
|
File details
Details for the file kailash_enterprise-4.11.0-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 19.3 MB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8354c5538a445c4cc79526ddd39f81786e44dcd3c656573e797f5557a4ac7e95
|
|
| MD5 |
b5397a2dec461db5b376a0f224bc12f0
|
|
| BLAKE2b-256 |
89b423e9758a7285865b204633a49474cd77b84a89671b0985f58346b7038dda
|
File details
Details for the file kailash_enterprise-4.11.0-cp311-cp311-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp311-cp311-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 18.1 MB
- Tags: CPython 3.11, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b51595c7b253521f93d3b6e95e661b63201135316d55a4ec59dfea169468afd4
|
|
| MD5 |
799a50f7d9fc1a2c1713ec4606d01453
|
|
| BLAKE2b-256 |
73ee7e5d9a5443e2907ab7a2b2e373a1caac49f3f66d5b4373e6fa464bfd4122
|
File details
Details for the file kailash_enterprise-4.11.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 16.8 MB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ccce9bad472880125b2aae38fe18e2867772e9f48f3bbba7df127413a0b370fd
|
|
| MD5 |
2bbdfed32dbd2766805056eae0518a44
|
|
| BLAKE2b-256 |
87bffec3eb8125babf3d7d56c5791c47bccac9c2f5cb71c1abb9486009d31c96
|
File details
Details for the file kailash_enterprise-4.11.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 18.0 MB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d451516b7583b95637869dbdeb44f124ab0e2a9d8c7a511583ea4bd37a6701a5
|
|
| MD5 |
b60e2667067837409c67d576d82795f2
|
|
| BLAKE2b-256 |
9a14d0eb28c52e6cfed524c1841e7c400409ad13a151f937e577a98af8aa492e
|
File details
Details for the file kailash_enterprise-4.11.0-cp310-cp310-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp310-cp310-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 19.3 MB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ded7ce1271d41bbe498993698a063f439593c8a704728455d5c64f77a937076
|
|
| MD5 |
93fe50a5d121181a831082c002546d72
|
|
| BLAKE2b-256 |
61d830e64870e449d44891f102fd1c67c996079c93668cd5e900a0b1a23bf057
|
File details
Details for the file kailash_enterprise-4.11.0-cp310-cp310-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp310-cp310-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 18.1 MB
- Tags: CPython 3.10, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
202274cc9e2800cfd1d7ee8b2ba723b931283c2fb49fbd21ad0f0164a7e2cee3
|
|
| MD5 |
c780f723fdbb5c5c473b25159e520e23
|
|
| BLAKE2b-256 |
69b2b6b550bfe000ef0f99f87c45648051ae8c74be7e7a19ea061f695f75af1b
|
File details
Details for the file kailash_enterprise-4.11.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: kailash_enterprise-4.11.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 16.8 MB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
722748829813f17d2ad32f54a45342b8933478c6f2b778cd59bf9160dcf74c67
|
|
| MD5 |
62728566d70ae086bb277c50c27cc590
|
|
| BLAKE2b-256 |
4fc7d14b733f6e5eb4d6eb391624714a3e132023689a415c6d5865b885e62907
|