TIBET Cortex (Python)
Zero-trust AI knowledge processing. Data that protects itself.
Python client for the TIBET Cortex framework. For production use with memory-level security guarantees (mlock, zeroize), use the Rust crates.
Install
pip install tibet-cortex
Quick Start
JIS — Multi-Dimensional Access Control
from cortex import JisClaim, JisPolicy, JisGate
# Partner in strategy, EU, clearance 3
claim = JisClaim(
actor="partner@mckinsey.com",
clearance=3,
role="partner",
department="strategy",
geo=["NL", "DE"],
)
# M&A document policy
policy = JisPolicy(
min_clearance=3,
allowed_roles=["partner"],
allowed_departments=["strategy"],
allowed_geos=["NL", "DE", "FR"],
)
verdict = JisGate.evaluate(claim, policy)
print(f"Access: {verdict.allowed}") # True
# Intern tries same document
intern = JisClaim(actor="intern@mckinsey.com", clearance=1, role="intern")
verdict = JisGate.evaluate(intern, policy)
print(f"Access: {verdict.allowed}") # False
print(f"Reasons: {[d.reason.value for d in verdict.denials]}")
# ['clearance_too_low', 'role_not_allowed', 'department_not_allowed', 'geo_restricted']
Envelope — JIS-Gated Data
from cortex import Envelope, EnvelopeBlock
env = Envelope(id="doc_001")
env.add_block(EnvelopeBlock.new_embedding(b"vector data"))
env.add_block(EnvelopeBlock.new_content(b"M&A strategy for client X", jis_level=3))
# Everyone can search (embedding is JIS 0)
assert env.embedding() is not None
# Only clearance 3+ can read content
assert env.content(accessor_jis_level=1) is None
assert env.content(accessor_jis_level=3) is not None
Airlock — Controlled Processing
from cortex import Airlock
airlock = Airlock()
result, session = airlock.process(
data=b"sensitive document",
actor="analyst@company.com",
jis_level=2,
callback=lambda plaintext: len(plaintext),
)
print(f"Result: {result}")
print(f"Duration: {session.duration_ms:.2f}ms")
print(f"Actor: {session.actor}")
Audit — Blackbox-met-Window
from cortex import AuditTrail
trail = AuditTrail(".cortex/audit.json")
trail.record_session(session, query_hash="sha256:abc", response_hash="sha256:def")
stats = trail.stats()
print(f"Queries: {stats['total_queries']}")
print(f"Chain intact: {stats['chain_intact']}")
Architecture
STORE TBZ envelopes + JIS levels
GATE Multi-dimensional JIS claims (role × dept × time × geo)
AIRLOCK Zero plaintext lifetime (mlock + zeroize in Rust)
AUDIT Blackbox-met-window trail (WHO/WHEN, not WHAT)
TIBET Immutable provenance chain
Links
License
MIT OR Apache-2.0
Credits
Designed by Jasper van de Meent. Built by Jasper and Root AI as part of HumoticaOS.
Stack-positie: Groep agentic · Bootstrap = OSAPI-handshake naar tibet + jis (fail → snaft-rule + tibet-pol-rapport) · ← jis-core · tibet-triage → · See STACK.md · See demo/golden-path/ for the spine end-to-end.
Enterprise
For private hub hosting, SLA support, custom integrations, or compliance guidance:
| Enterprise | enterprise@humotica.com |
| Support | support@humotica.com |
| Security | security@humotica.com |
See ENTERPRISE.md for details.
Release files for tibet-cortex 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tibet_cortex-0.2.1.tar.gz | 11.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tibet_cortex-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 25.6 kB
Release files / tibet_cortex-0.2.1.tar.gz
| Download URL | tibet_cortex-0.2.1.tar.gz |
|---|---|
| Size | 11.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7384a08609059da321fb090d12dc65ba7b224aa693feb8830b69dd4c9a3adcea
|
|
BLAKE2b-256 checksum How to use checksums |
471bb22463e72f50f1384350c662ae2fa984ceea93220c195bf5de2f31f027c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.5
|
Release files / tibet_cortex-0.2.1-py3-none-any.whl
| Download URL | tibet_cortex-0.2.1-py3-none-any.whl |
|---|---|
| Size | 13.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6e10ffcbfde38290dd3ee74a878417a2c94436f1d1aee205b5cd4ffd34293284
|
|
BLAKE2b-256 checksum How to use checksums |
58aca11bf6e5a80c6dce68ac705e0a217ba2e72574b8c35835d590bbe9f73e39
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.5
|