Skip to main content

Runtime control plane for AI agents. Vendor-neutral SDK for signed audit logs, policy enforcement, and continuous compliance.

Project description

Praxis

PyPI version License: MIT CI

Praxis — the runtime control plane for AI agents. Wrap any agent in 3 lines, get signed audit logs and policy enforcement.

Install

pip install praxel
uv add praxel

Note — install name vs. import name. Install the package as praxel, but import it as praxis:

from praxis import Praxis

The distribution is published to PyPI as praxel (the name praxis is taken by an unrelated project), while the Python module remains praxis so existing imports keep working.

Quickstart

from praxis import Praxis, Policy, PraxisDeniedException

def agent(prompt: str, *, tool_name: str, tool_input: dict):
    return f"Executed {tool_name} with {tool_input}"

policies = [
    Policy(
        policy_id="limit-1000",
        name="Dollar Limit",
        kind="dollar_limit",
        config={"field_path": "amount", "max_amount": 1000.0},
        enabled=True,
    )
]

wrapped = Praxis.wrap(agent, workspace="demo-workspace", policies=policies)
print(wrapped("Pay vendor", tool_name="transfer_money", tool_input={"amount": 500.0}))

What It Does

  • Signed audit logs for every tool call (tamper-evident event trail).
  • Runtime policy enforcement (allow, deny, require approval).
  • Continuous compliance evidence for investigations, audits, and controls.

Supported Providers

  • Anthropic
  • OpenAI
  • Google
  • Custom agents

Docs

docs.trypraxis.com

Before / After

Before: basic Claude agent, no governance

from anthropic import Anthropic

client = Anthropic(api_key="...")

def transfer_money(amount: float, to_account: str) -> str:
    return f"Transferred ${amount:.2f} to {to_account}"

# Tool call executes directly.
result = transfer_money(5000, "acct-risky-001")

After: wrapped with Praxis

from praxis import Praxis, Policy

policies = [
    Policy(
        policy_id="limit-1000",
        name="Dollar Limit",
        kind="dollar_limit",
        config={"field_path": "amount", "max_amount": 1000.0},
        enabled=True,
    )
]

wrapped_agent = Praxis.wrap(agent, workspace="prod-workspace", policies=policies)
  • Signed audit trail for every tool action.
  • Dollar limit enforced at runtime.
  • Dashboard-ready event stream for review and investigations.

Praxis event viewer UI

License

MIT. See LICENSE.

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

praxel-0.1.0.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

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

praxel-0.1.0-py3-none-any.whl (12.3 kB view details)

Uploaded Python 3

File details

Details for the file praxel-0.1.0.tar.gz.

File metadata

  • Download URL: praxel-0.1.0.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for praxel-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8fe38a6e7fc15f1b744b28ab1b3344072c23e1c829f161c3e6cdf729efdef834
MD5 a5f0b471acacebec97576564227cfcef
BLAKE2b-256 28bf114b321ccd21cdc95fc5a109bc1eeba545f764d6189c85f81fa0bc47b5bc

See more details on using hashes here.

File details

Details for the file praxel-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: praxel-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for praxel-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 de57b1391712c910d37313db09fb956f87bee5a4c21013e91d2c22b2078d7cce
MD5 1c519f11199c07db82ecbc2b91536aea
BLAKE2b-256 4f1697ff3394cb58261bacf04559353a9639ae4db793b5fdee1a141bc72439c0

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