Skip to main content

Token-based Intent, Behavior, Evidence & Trust - Cryptographic provenance for trustworthy systems

Project description

tibet-core

Token-based Intent, Behavior, Evidence & Trust

Cryptographic provenance for trustworthy systems. Zero dependencies. Audit-ready.

Why TIBET?

Traditional security monitors traffic. TIBET audits actions.

Every function call, every decision, every transformation gets a cryptographic token with:

  • ERIN (What's IN): The content/data of the action
  • ERAAN (What's attached): References, dependencies
  • EROMHEEN (What's around): Context, environment, state
  • ERACHTER (What's behind): Intent, reason, purpose

Compliance Ready

TIBET provides the audit foundation for:

Standard TIBET Support
ISO 5338 AI decision traceability
NIS2 Continuous logging, incident snapshots
BIO2 Government security baseline
OWASP Security event provenance

Installation

pip install tibet-core

Quick Start

from tibet_core import Provider, FileStore

# Create provider with persistent storage
tibet = Provider(
    actor="jis:humotica:my_app",
    store=FileStore("./audit.jsonl")
)

# Record any action
token = tibet.create(
    action="user_login",
    erin={"user_id": "alice", "method": "oauth"},
    eraan=["jis:humotica:auth_service"],
    eromheen={"ip": "192.168.1.1", "user_agent": "Mozilla/5.0"},
    erachter="User authentication for dashboard access"
)

# Token has cryptographic integrity
assert token.verify()
print(token.content_hash)  # SHA-256

# Export audit trail
audit = tibet.export(format="jsonl")

Integration Examples

With rapid-rag (RAG/Search)

from rapid_rag import RapidRAG
from tibet_core import Provider

tibet = Provider(actor="jis:company:rag_system")
rag = RapidRAG("documents", tibet=tibet)

# All operations now have provenance
rag.add_file("contract.pdf")
results = rag.search("liability clause")
answer = rag.query("What are our obligations?")

# Full audit trail
for token in tibet.find(action="search"):
    print(f"{token.timestamp}: {token.erin['query']}")

With oomllama (LLM Routing)

from oomllama import Engine
from tibet_core import Provider

tibet = Provider(actor="jis:company:llm_router")

# Every LLM call is audited
response = engine.generate(
    prompt="Summarize this document",
    tibet=tibet
)

# Know which model answered, why, with what context

With comms-core-rs (Telephony)

// Rust: 0.02 second call setup WITH tibet exchange
let token = tibet.create(
    action: "call_initiated",
    erin: CallData { from, to, codec },
    erachter: "Outbound sales call"
);

Chain Tracing

Follow provenance chains:

from tibet_core import Chain

chain = Chain(tibet.store)

# Trace backwards from any token
history = chain.trace(token.token_id)
for t in history:
    print(f"{t.action}: {t.erachter}")

# Verify entire chain integrity
if chain.verify(token.token_id):
    print("Audit trail intact")

# Get chain summary
summary = chain.summary(token.token_id)
print(f"Chain length: {summary['length']}")
print(f"Actors involved: {summary['actors']}")

Storage Backends

MemoryStore (default)

Fast, ephemeral. Good for testing.

FileStore

Append-only JSONL. Audit-friendly. Tamper-evident.

from tibet_core import FileStore

store = FileStore("./audit.jsonl")

# Verify file integrity
result = store.verify_file()
if not result["integrity"]:
    print(f"Corrupted tokens: {result['corrupted_ids']}")

Performance

TIBET adds minimal overhead:

  • Token creation: ~0.1ms
  • Hash computation: ~0.05ms
  • File append: ~0.2ms

In comms-core-rs, full call setup with TIBET exchange: 0.02 seconds

More code ≠ slower. Trust ≠ overhead.

Philosophy

"Audit de basis voor elke actie, niet voor communicatie verkeer"

"Audit as foundation for every action, not just traffic"

TIBET doesn't watch the wire. It lives inside the action.

License

MIT - Humotica

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tibet_core-0.2.0.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tibet_core-0.2.0-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file tibet_core-0.2.0.tar.gz.

File metadata

  • Download URL: tibet_core-0.2.0.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for tibet_core-0.2.0.tar.gz
Algorithm Hash digest
SHA256 157393af389b83b5561b33d8302618a97a68b38c041075b7f61ba40275649f11
MD5 233f8407a57c59a1065c2f88e11c943c
BLAKE2b-256 5939d01c603c2e35931b9f6e58a50fa5b78dc70cdece17677e3d10b4f2d599be

See more details on using hashes here.

File details

Details for the file tibet_core-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: tibet_core-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for tibet_core-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8730b02a50438b72b587afb5fff40f882381ac0d962d5525e72932767cdbc0dc
MD5 82ca32ba9e841adf6a57f6410a5ed5d1
BLAKE2b-256 e85393d46e939887a791e9ab1e7c5fc080bd47b4dee78341ed3db6b6aa231dc0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page