pyjev
Confidence-aware Jev decisions for Python, shell, CI, and automation.
pyjev is a thin operational layer over TypeSafe's official typesafe-sdk. It
preserves Jev probabilities, confidence, and response metadata while adding
reusable named decisions, shell-safe output, credential ergonomics, local
validation, request inspection, and confidence gates.
Install
pip install pyjev
# or: uv tool install pyjev
For a development checkout:
pip install -e '.[dev,docs]'
A first decision
pyjev choice "Where should this ticket go?" \
--state "Stripe checkout fails" \
--option billing="Payments and refunds" \
--option engineering="Technical failures" \
--option sales="Purchasing questions" \
--json
from pyjev import Jev
with Jev() as jev:
result = jev.choice(
"Where should this ticket go?",
state="Stripe checkout fails",
choices={"billing": "Payments", "engineering": "Technical", "sales": "Purchasing"},
)
print(result.value, result.confidence, result.probabilities)
What pyjev adds
- direct Noul, Choice, and Score operations with uncertainty preserved;
- reusable
.pyjev.tomldecisions and mixed-question bundles; - offline validation and request compilation;
- confidence-gated shell automation and stable exit codes;
- keyring, environment, and explicit plaintext-file credential support;
- request IDs, usage, raw metadata, and structured JSON for debugging.
The official typesafe-sdk remains responsible for transport, retries, API
models, authentication at the HTTP layer, and API error semantics. pyjev does
not invent probabilities or confidence calculations.
Learn more
License
Apache-2.0
Release files for pyjev 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyjev-0.1.0.tar.gz | 165.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyjev-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 188.2 kB
Release files / pyjev-0.1.0.tar.gz
| Download URL | pyjev-0.1.0.tar.gz |
|---|---|
| Size | 165.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
48db64c42aa72b2da8440bd21f624a9d691e1b5f62ab88300866a7d053c0051f
|
|
BLAKE2b-256 checksum How to use checksums |
46a58059efe99d9c340f5fb700e975a447c1ebcccf1c005eab6ff53b31f98943
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / pyjev-0.1.0-py3-none-any.whl
| Download URL | pyjev-0.1.0-py3-none-any.whl |
|---|---|
| Size | 22.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5f45468899dec5848abdaff2343375b81745188c37f41686c6b6e3fc6232c9b1
|
|
BLAKE2b-256 checksum How to use checksums |
5b01ab9465fbfefe51982d2465be46a06f621755eb39bafa5ac3a21c92b06d08
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|