Kailash Python SDK — workflow orchestration, AI agents, database ops, trust governance
10K+
Enterprise Workflow Engine with Cryptographic Trust
The full Kailash SDK in a single container — workflow orchestration, AI agents, database operations, multi-channel deployment, organizational governance, and the CARE/EATP trust framework.
# Interactive Python with the full SDK
docker run -it --rm terrenefoundation/kailash python
# Run a script
docker run --rm -v $(pwd):/app/work terrenefoundation/kailash python /app/work/my_workflow.py
# With environment variables (API keys, database URLs)
docker run --rm --env-file .env terrenefoundation/kailash python /app/work/main.py
This image bundles kailash[all] — every framework and optional dependency:
| Framework | Version | What It Does |
|---|---|---|
| Core SDK | 2.2.1 | 140+ workflow nodes, sync/async runtimes, cyclic workflows |
| Kaizen | 2.3.1 | AI agents with signature-based programming and multi-agent coordination |
| kaizen-agents | 0.5.0 | Delegate architecture for supervised agent execution |
| DataFlow | 1.2.1 | Zero-config database operations — one decorator generates 11 CRUD nodes per model |
| Nexus | 1.6.0 | Deploy as REST API + CLI + MCP tool simultaneously |
| PACT | 0.4.1 | Organizational governance — D/T/R accountability, operating envelopes |
| Trust | included | CARE/EATP cryptographic trust chains, constraint propagation, audit trails |
Plus: PostgreSQL/MySQL/SQLite drivers, Redis, Prometheus, OpenTelemetry, MCP, authentication, scheduling, and more.
from kailash.workflow.builder import WorkflowBuilder
from kailash.runtime import LocalRuntime
workflow = WorkflowBuilder()
workflow.add_node("PythonCodeNode", "process", {
"code": "result = {'message': 'Hello from Kailash!'}"
})
runtime = LocalRuntime()
results, run_id = runtime.execute(workflow.build())
print(results["process"]["result"])
import asyncio, os
from kaizen.api import Agent
async def main():
agent = Agent(model=os.environ["DEFAULT_LLM_MODEL"])
result = await agent.run("Analyze this report for compliance risks")
asyncio.run(main())
from dataflow import DataFlow
db = DataFlow("sqlite:///app.db")
@db.model
class User:
id: str
name: str
email: str
# Auto-generates: CreateUser, ReadUser, UpdateUser, DeleteUser,
# ListUser, CountUser, UpsertUser, BulkCreate/Update/Delete/Upsert
Use with the full development stack (PostgreSQL, Redis, monitoring):
services:
app:
image: terrenefoundation/kailash:latest
env_file: .env
depends_on:
- postgres
- redis
postgres:
image: postgres:16-alpine
environment:
POSTGRES_DB: kailash
POSTGRES_USER: kailash
POSTGRES_PASSWORD: kailash
ports:
- "5432:5432"
redis:
image: redis:7-alpine
ports:
- "6379:6379"
python:3.12-slimkailash (UID 1000, non-root)/applinux/amd64, linux/arm64latest — latest stable releaseX.Y.Z — specific version (e.g., 2.2.1)Apache License 2.0 — Terrene Foundation (Singapore CLG)
Content type
Image
Digest
sha256:fc2329832…
Size
3.3 GB
Last updated
13 days ago
docker pull terrenefoundation/kailashPulls:
69
Last week