Skip to main content

CortexHub Python SDK — Runtime governance for AI systems. One decorator, any tool, any framework.

Project description

CortexHub Python SDK

Runtime governance for AI systems. One decorator. Any tool. Any framework.

pip install cortexhub

Python 3.10–3.12.

Optional installs (match your agent stack)

Use bracket extras so peer dependencies install in one step — same shape as the demo app:

Extra Typical use Pair with cortexhub.init(framework=...)
openai-agents or openai-agent OpenAI Agents SDK openai_agents
langchain LangChain / shared ChatModel langchain
langgraph LangGraph + OpenAI chat models (pulls langgraph, langchain-openai, …) langgraph
anthropic or claude Claude / Anthropic Messages API anthropic, claude, or claude_agents
crewai, llama-index, autogen, pydantic-ai, semantic-kernel, google-adk Those ecosystems Fleet label only* — use cx.llm_call for LLM spans unless you route via LangChain / Anthropic / OpenAI hooks
agents LangGraph + OpenAI Agents together (demo-style) Set framework= per vertical

* Automatic llm.call hooks today: OpenAI Agents, LangChain / LangGraph (BaseChatModel.invoke / ainvoke), Anthropic (messages.create, non-streaming). Everything else uses the same @cx.tool policy / approval behaviour; wrap LLM calls with cx.llm_call / cx.record_llm_result or adopt a hooked client above.

pip install 'cortexhub[langgraph,openai-agents]'

Quick start

Identity comes from your agent key only — the control plane assigns the canonical agent id. Set CORTEXHUB_AGENT_KEY (or pass agent_key= to init()).

import cortexhub

cx = cortexhub.init()  # requires CORTEXHUB_AGENT_KEY (or pass agent_key=)

@cx.tool(classification="write")
def process_payment(customer_id: str, amount: str, reference: str) -> dict:
    """Process a payment."""
    return payment_service.charge(customer_id, amount, reference)

# Policies, approvals, and audit trail are configured in the control plane.

Configuration

Env var Description
CORTEXHUB_AGENT_KEY Agent identity secret (required for cloud enforcement)
CORTEXHUB_DEBUG Set to 1 or true for readable SDK logs: tool + arguments, policy name + condition, and decision
CORTEXHUB_LOG_LEVEL e.g. DEBUG, INFO (default INFO)

Debug logging

With CORTEXHUB_DEBUG=1 (or CORTEXHUB_DEBUG_POLICY=1), the SDK logs in real time:

  • Tool encountered — tool name and argument names/values (values redacted when privacy mode is on)
  • Policy evaluated — policy name, condition/reasoning, and decision (allow / deny / escalate)
  • Decision — final effect, policy, and reason for the current tool call

Useful for seeing exactly what CortexHub is evaluating and why a tool was allowed, blocked, or sent for approval.

OpenAI Agents SDK (llm.call telemetry)

If you use the OpenAI Agents SDK, initialise with framework="openai_agents" so each model turn is captured as llm.call spans (assistant reasoning text and tool-call intent), merged automatically with any hooks= you pass to Runner.run.

pip install 'cortexhub[openai-agents]'
# or: pip install 'cortexhub[openai-agent]'
cx = cortexhub.init(framework="openai_agents")

Documentation · Control plane

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

cortexhub-0.5.25.tar.gz (12.9 MB view details)

Uploaded Source

Built Distribution

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

cortexhub-0.5.25-py3-none-any.whl (12.9 MB view details)

Uploaded Python 3

File details

Details for the file cortexhub-0.5.25.tar.gz.

File metadata

  • Download URL: cortexhub-0.5.25.tar.gz
  • Upload date:
  • Size: 12.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for cortexhub-0.5.25.tar.gz
Algorithm Hash digest
SHA256 31a5cf59b943e80ce63e227c9a226d159a13e81dbe62137ef7fed6bbd2324219
MD5 a607f4159c2bc361faf032747ddf9d1a
BLAKE2b-256 e0d30c044e1b90ff983061a08733cf4867c0e3403ace5f07104c6cd9a00538d2

See more details on using hashes here.

File details

Details for the file cortexhub-0.5.25-py3-none-any.whl.

File metadata

  • Download URL: cortexhub-0.5.25-py3-none-any.whl
  • Upload date:
  • Size: 12.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for cortexhub-0.5.25-py3-none-any.whl
Algorithm Hash digest
SHA256 937e05c1b266f3fbc9025c16f974a0f19011c96ee8ed1f762846e3e01fedba07
MD5 e77dce43811a094d30fbb6b17bb0b2df
BLAKE2b-256 97ad37268eb844c6e9b8b934d3a629df5edfd5e965de5936bc38a4efe96fe0b7

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