Skip to main content

cookwala-samples (Python)

Sample clients, agents, orchestrators, gates, recovery and reporting for the Cookwala Core 0.2 API, the open standard for cooking safely. Standard library only, Python 3.9 or newer.

Samples, not certified software; simulated devices; the executor is always the authority.

pip install cookwala-samples
cookwala-samples demo                      # six orders on a simulated four-device kitchen, as a Markdown report
cookwala-samples demo --format junit       # or json, csv
cookwala-samples gates koshari --device demo-hob-robot-basic --human-present
cookwala-samples plan shakshuka --block eggs
cookwala-samples run lentil koshari --human-present --fault 'example-koshari#n14=overheat'
cookwala-samples serve --port 8080         # the same, as an HTTP service
cookwala-samples demo --hub http://localhost:7878   # against a real hub (python hub/cookwala_hub.py)

The six roles

Role Module What it shows
Clients clients HubClient (HTTP, retries reuse the Idempotency-Key) and LocalClient (simulated executor) share one interface
Agents agents PlannerAgent acts under a mandate, never substitutes around an allergen block, asks a person before anything in confirmBefore; MonitorAgent checks transitions and temperatures
Orchestrators orchestrators gates, dry run on every device, best device, start, poll, recover, log, incident
Gates gates version, hash, recall, mandate, allergen, untrusted text, envelope, attendance, capability; fail closed
Recovery recovery never retry around safety; next device; ask a person; stop; discard and report; transport retries
Reporting reporting JSON, Markdown, JUnit XML, CSV; anonymous IncidentReport

As a library

from cookwala_samples import (BundleCatalog, LocalClient, Orchestrator, PlannerAgent, Reporter,
                              ScriptedHuman, make_mandate, Job)

kitchen = {d: LocalClient.for_device(d) for d in ('demo-hob-robot', 'demo-oven')}
person = ScriptedHuman(present=True)
planner = PlannerAgent('agent:me', make_mandate('household:h-1/person:p-1', 'agent:me'), BundleCatalog(), person)
orch = Orchestrator(kitchen, planner=planner, human=person)
report = Reporter([orch.run(Job('dinner', order={'dish': 'lentil', 'servings': 4}, human_present=True))])
print(report.to_markdown())

Swap LocalClient for HubClient('https://your-hub/…', token=…) to drive a real executor.

Source, the other language ports and every distribution channel: https://github.com/amado2k5/cookwala/tree/main/samples. Apache-2.0; the bundled recipes are CC BY 4.0 and the vocabularies CC0 (see each recipe's source and license).

Metadata

Release files for cookwala-samples 0.2.0

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

Source distribution (sdist)

Source distribution for cookwala-samples 0.2.0
File Size Uploaded
cookwala_samples-0.2.0.tar.gz 59.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cookwala-samples 0.2.0
File Interpreter ABI Platform
cookwala_samples-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 119.8 kB

Release files / cookwala_samples-0.2.0.tar.gz

Download URL cookwala_samples-0.2.0.tar.gz
Size 59.6 kB
Tags Source
SHA-256 checksum
How to use checksums
0df7cda97195ed0f2dc372b94782ebfbe499e186638946b9ee29dacad8889250
BLAKE2b-256 checksum
How to use checksums
6ae20c1b444d67b8760fa1fd64b97925defe2305d7413da0517ffbd7d0a6f680
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 5, 2026.

Transparency log

Release files / cookwala_samples-0.2.0-py3-none-any.whl

Download URL cookwala_samples-0.2.0-py3-none-any.whl
Size 60.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e0e1f2926f9e71ae1ead6294e518d781adfc018358dd490a8d17aafd2906932a
BLAKE2b-256 checksum
How to use checksums
1ad93f2207e6581fff768dc6adf953694be6a9a01e60c0218361b23e2f293d72
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 5, 2026.

Transparency log

Release history Release notifications | RSS feed

0.3.0

2 release files

This release

0.2.0 This release

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