Skip to main content

hakodesh

Host-agnostic Python CLI and SDK. After pip install hakodesh the user book is empty. Your LLM or agents mint spells, enchantments, wards, and combos as they need them.

PyPI name, import, and command: hakodesh.

Install

pip install hakodesh

Data home: HAKODESH_HOME or the platform user-data directory for hakodesh. Never ~/spells.

Kernel commands

These are the runtime, not starter spells:

Command What it does
hakodesh catalog User artifacts in the book (empty at install)
hakodesh route "<intent>" Rank minted names plus kernel commands
hakodesh invoke <name> [args...] Cast a minted spell by name
hakodesh mint <name> --kind spell|enchantment|ward|combo [--like <name> | --from <path>] Scaffold into the book, or mint from a source file (preview; --confirm writes)
hakodesh akashic Verify HMAC chain; --tail N
hakodesh grimoire Cast ledger stats
hakodesh grimoire-seal RFC 6962 Merkle seal (preview; --confirm writes; --verify)
hakodesh enchant bind|lift <name> --settings <path> Bind or lift a minted enchantment
hakodesh ward status|lock|unlock|check <name> Fail-closed ward kernel
hakodesh combo seal|cast|list [name] Sealed pipelines of minted spells
hakodesh <minted-name> [args...] Cast after mint

--like on an empty book uses the kind template in the wheel. After one spell exists, --like <that> copies its shape.

Every mint and cast emits hakodesh.event/v1. Akashic is SHA-256 linked and HMAC-SHA256 signed. Grimoire is Merkle-sealed with the same chain key. The keystore is $HAKODESH_HOME/keys (0700/0600), minted on first seal, never in the wheel.

Notifications default to none. The package does not write LaunchAgents or editor hooks until you mint and bind an enchantment.

דיאלעקטוס: the dialect

The protocol is Hebrew end to end, in a constructed dialect: a Latin lexicon carried in traditional Hebrew script, on the Yiddish and Ladino model. Every protocol token is derived from a Latin lemma by one total transliteration (hakodesh.dialectus), so it is a novel string with no prior corpus meaning, yet an English reader can decode it through its Latin root. Verbs are the Latin perfect, first person singular (verificavi, custodivi, scripsi); objects are Latin nouns; statuses are perfect passive participles. Prose stays Hebrew; tokens are dialect. The LLM reads the protocol and converses with the user in the user's own language.

Orthography: plene, no nikud; qu→קוו, ph→פ, th→ט, ch→ק, sh→ש, ae/oe→ע, x→קס, f/p→פ, c/k/q→ק, i/j/y→י, o/u→ו, v/w→וו; doubled letters collapse; word-initial i/o/u take א; an א separates וו from a vowel ו; final forms on the last letter.

Kernel verbs

דיאלעקטוס Latin מה הפועל עושה
פערקוסי percussi טבעתי: יצרתי לחש, קמע, שומר או שילוב בספר
רעקענסוי recensui סקרתי: קטלוג הספר
דיקסי dixi דיברתי: הטלתי לחש
דירעקסי direxi ניתבתי: דירוג שמות לכוונה
אינקאנטאווי incantavi קסמתי: קשירה או הסרה של קמע
קוסטודיווי custodivi שמרתי: מצב, נעילה, שחרור ובדיקה של שומר
קוניונקסי coniunxi שילבתי: צינורות חתומים
רעפעטיווי repetivi נזכרתי: אחזור נוהל שמור
עקסטולי extuli העליתי: מעקבים חוזרים לנוהל
סקריפסי scripsi רשמתי: אימות הפנקס
סיגנאווי signavi חתמתי: פנקס ההטלות
מעמוראווי memoravi תיעדתי: רישום מעקב
דעקרעווי decrevi הכרעתי: בחירת נוהל לכוונה
קוקורי cucurri הרצתי: ביצוע נוהל
פרוקעסי processi המשכתי: הצעד הבא
ענומעראווי enumeravi מניתי: רשימת נהלים
אפרובאווי approbavi אישרתי: אישור נוהל
סטאטוי statui קבעתי: מדיניות קידום
מענסוראווי mensuravi מדדתי: מדדי הזיכרון
עקסערקוי exercui תרגלתי: תרחיש סינתטי
דעקלאראווי declaravi הצהרתי: חוזה האירועים

devra --help lists exactly these under lexicon. The traditional-Hebrew twins of 0.3/0.4 (טבעתי, שמרתי, ...) and the English names still dispatch as silent legacy aliases through 0.5.x and are removed in 0.6.0. All spellings are reserved: mint refuses them as a whole artifact name.

Status vocabulary

Closed and declared by protocol: פערמיסום (permissum), קומפלעטום (completum), נעגאטום (negatum), דעפעקטום (defectum), קלאוסום (clausum), פרעוויסום (praevisum), אינקעפטום (inceptum), סינקרונאטום (synchronatum), אפערטום (apertum), וועריפיקאטום (verificatum), and the rest in dialectus.STATUS. Event kinds, notification policies, severities, actor roles, trace sources, outcomes, correctness, procedure statuses and decisions are written in the dialect and read in either spelling within hakodesh.event/v1; the published descriptor lists both. JSON keys stay English until the v2 schema bump (0.6.0).

Errors

Every kernel error carries a stable error_code (ward.unknown, mint.reserved, ...) and Hebrew prose. Tests assert on codes, never on prose. Artifact names may be lowercase Latin or Hebrew, digits and dashes; every lookup normalizes to NFC.

דיקסי רעקענסוי                          # == devra spellbook
devra פערקוסי פרובאווי-קאנון --confirm   # mint a dialect-named spell
devra פרובאווי-קאנון                     # cast it; receipts land in receipts/פרובאווי-קאנון/

Development

python -m pip install -e ".[dev]"
python -m pytest                 # unit, property and tripwire tests
python -m build                  # wheel + sdist into dist/

The package depends on nothing but platformdirs. It has no opinion about where your source of truth lives or how you publish; nothing in the wheel or the sdist names a host, a storage account or a vault, and tests/test_agnostic.py keeps it that way.

SDK

from hakodesh.catalog import catalog
from hakodesh.mint import mint
from hakodesh import events, akashic, grimoire
from hakodesh.enchant import bind, lift
from hakodesh.ward import unlock
from hakodesh.combo import seal, cast

Book law

The book is per user, under HAKODESH_HOME. A fresh install has zero spells, enchantments, wards or combos, and nothing is intrinsic: discovery picks up a file the moment it lands under HAKODESH_HOME/book/. The repository's workshop/ is a book as source: mint from it with --from; it is not in the wheel and never lands in a book by itself (docs/PROTOCOL.md, §Book law).

Release files for hakodesh 0.5.3

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

Source distribution (sdist)

Source distribution for hakodesh 0.5.3
File Size Uploaded
hakodesh-0.5.3.tar.gz 112.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hakodesh 0.5.3
File Interpreter ABI Platform
hakodesh-0.5.3-py3-none-any.whl Python 3 none any Details

Total release size: 192.7 kB

Release files / hakodesh-0.5.3.tar.gz

Download URL hakodesh-0.5.3.tar.gz
Size 112.3 kB
Tags Source
SHA-256 checksum
How to use checksums
4869d0fe04c2cf535c864b4eacb1df7c29229be731bd785271786254da8d1059
BLAKE2b-256 checksum
How to use checksums
e806a7b315218632037c71831165c8652a3f5ae64f6d1505ecd130331f069ac2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / hakodesh-0.5.3-py3-none-any.whl

Download URL hakodesh-0.5.3-py3-none-any.whl
Size 80.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2d0a6e89e77e29f5156471e906e5a63646e4d572a2f2cdade35bfab905badf4b
BLAKE2b-256 checksum
How to use checksums
bd623be1e2b210c427505b782deabf12fc9d62295f859db78d8608ccb9a5da45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

0.7.0

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.5

2 release files

0.5.4

2 release files

This release

0.5.3 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