Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

waxell-observe

PyPI - Version Docs License: Apache 2.0

Overview · Quickstart · Installation · Claude Code · CLI Reference

Lightweight observability and governance for any AI agent framework. Add production-grade tracing, cost tracking, and policy enforcement to your agents with a single line of code.

Where this fits. waxell-observe is the standalone observability SDK — install it on its own to instrument an agent you already have (LangChain, OpenAI Agents, CrewAI, …). If you're building agents on Waxell, you don't need to install this separately: pip install waxell brings the runtime, the wax CLI, and observe together, available as waxell.observe.

Installation

# Core (HTTP telemetry only)
pip install waxell-observe

# With OpenTelemetry tracing (recommended)
pip install "waxell-observe[otel]"

# With infrastructure auto-instrumentation (HTTP, databases, caches, queues)
pip install "waxell-observe[infra]"

# With LangChain integration
pip install "waxell-observe[otel,langchain]"

# Everything
pip install "waxell-observe[all]"

# Development (includes test dependencies)
pip install "waxell-observe[dev,otel]"

Quick Start

import waxell_observe

# One-line init — configures tracing, AI/ML instrumentation, and infrastructure instrumentation
waxell_observe.init(api_key="wax_sk_...")

# That's it. All LLM calls, HTTP requests, database queries, and cache operations
# are now traced automatically.

After calling init(), every LLM call, HTTP request, database query, and cache operation made by your agent is automatically captured — model names, token counts, latency, SQL statements, HTTP endpoints, Redis commands — all nested in a trace tree visible in the Waxell dashboard.

Auto-Instrumentation

AI/ML Libraries

init() automatically detects and instruments installed AI/ML libraries:

Library What's Captured
OpenAI SDK All chat.completions.create() calls — model, tokens, latency, streaming
Anthropic SDK All messages.create() calls — model, tokens, latency
LangChain Chain executions, LLM calls, tool invocations via callback handler
+ 145 more Bedrock, Gemini, Mistral, Cohere, Groq, Pinecone, Chroma, etc.

To instrument only specific AI/ML libraries:

waxell_observe.init(api_key="wax_sk_...", instrument=["openai"])

Infrastructure Libraries

When installed with the [infra] extra, init() also instruments infrastructure libraries to capture everything your agent touches:

HTTP Clients:

Library Span Examples
httpx POST api.openai.com, GET api.example.com
requests POST api.stripe.com, GET api.weather.com
urllib3 Lower-level HTTP spans
aiohttp Async HTTP client spans

Databases:

Library Span Examples
psycopg2 / psycopg pg SELECT, pg INSERT
asyncpg / aiopg pg SELECT (async)
SQLAlchemy pg SELECT users, mysql INSERT orders
PyMongo mongo FIND, mongo AGGREGATE
PyMySQL / mysqlclient mysql SELECT, mysql INSERT
pymssql mssql SELECT, mssql INSERT
sqlite3 sqlite SELECT, sqlite CREATE
Elasticsearch es SEARCH, es INDEX
Cassandra cassandra SELECT

Caching:

Library Span Examples
redis redis GET, redis SET, redis HGET
pymemcache memcache GET, memcache SET

Message Queues & Task Brokers:

Library Span Examples
Celery apply_async/task, run/task
kafka-python / confluent-kafka kafka send events, kafka receive events
pika / aio-pika RabbitMQ publish/consume
aiokafka Async Kafka spans

Cloud & RPC:

Library Span Examples
botocore AWS SDK calls (aws s3.PutObject, aws dynamodb.GetItem)
boto3 (SQS) aws sqs.SendMessage
gRPC grpc UserService.GetUser

Example Trace Tree

With both AI/ML and infrastructure instrumentation enabled:

agent: rag-demo.document-qa (3200ms)
├── chain: analyze_query
│   ├── llm: chat gpt-4o (800ms)
│   │   └── tool: POST api.openai.com (790ms)
│   └── tool: redis GET session:abc (5ms)
├── chain: retrieve_documents
│   ├── tool: pg SELECT * FROM documents WHERE ... (15ms)
│   └── tool: POST pinecone.io/query (200ms)
├── chain: synthesize_answer
│   └── llm: chat gpt-4o (1000ms)
│       └── tool: POST api.openai.com (990ms)
└── [governance summary]

Controlling Infrastructure Instrumentation

# Default: auto-detect and instrument everything available
waxell_observe.init()

# Disable all infrastructure instrumentation
waxell_observe.init(instrument_infra=False)

# Only instrument specific libraries (allowlist)
waxell_observe.init(infra_libraries=["redis", "httpx", "psycopg2"])

# Instrument everything except specific libraries (blocklist)
waxell_observe.init(infra_exclude=["celery", "grpc"])

Coexistence with Existing OTel

If your application already uses OpenTelemetry instrumentation, waxell-observe works alongside it:

  • No double-patching: OTel instrumentors have a singleton guard. If you already called RedisInstrumentor().instrument(), our call is a safe no-op.
  • Additive: We add our span processor to the global TracerProvider alongside your existing exporters (Datadog, Jaeger, Honeycomb, etc.). Your spans still flow to your backend AND also appear in Waxell.
  • Context-gated: Outside of agent runs, our processor does nothing — your app's normal telemetry is untouched.

Manual Instrumentation

@waxell_agent Decorator

Wrap any function to create an observed agent run:

from waxell_observe import waxell_agent

@waxell_agent(agent_name="my-agent")
async def run_agent(query: str, waxell_ctx=None) -> str:
    # waxell_ctx is automatically injected when declared as a parameter
    response = openai_client.chat.completions.create(
        model="gpt-4o",
        messages=[{"role": "user", "content": query}],
    )

    # Record steps for hierarchical trace visualization
    waxell_ctx.record_step("llm_response", {"model": "gpt-4o"})

    return response.choices[0].message.content

WaxellContext Context Manager

For more control, use the context manager directly. Works as both async with and plain with:

from waxell_observe import WaxellContext

# Async
async with WaxellContext(agent_name="my-agent") as ctx:
    result = await my_agent.run(query)
    ctx.record_llm_call(model="gpt-4o", tokens_in=150, tokens_out=80)
    ctx.record_step("retrieval", {"documents": 5})
    ctx.set_result({"output": result})

# Sync — ideal for batch scripts, CLI tools, ETL pipelines
with WaxellContext(agent_name="my-agent") as ctx:
    result = my_agent.run(query)
    ctx.record_llm_call(model="gpt-4o", tokens_in=150, tokens_out=80)
    ctx.record_step("retrieval", {"documents": 5})
    ctx.set_result({"output": result})

LangChain Integration

from waxell_observe.integrations.langchain import create_langchain_handler

handler = create_langchain_handler(agent_name="my-langchain-agent")
chain.invoke(input, config={"callbacks": [handler]})
handler.flush_sync()

Claude Code & Cowork

Add observability and security guardrails to Claude Code sessions:

# Set up hooks (basic observability)
wax claude-code setup

# With governance (policy enforcement on Bash/Edit/Write)
wax claude-code setup --governance

# With MCP tools (Claude can check policies proactively)
wax claude-code setup --governance --mcp

Every session is traced as an agent run — tool calls, LLM usage, and cost are captured automatically. The local guard provides instant security checks:

  • Destructive command blocking — rm -rf /, fork bombs, pipe-to-shell
  • Sensitive file protection — .env, private keys, credentials
  • Git safety — block force push, hard reset, config edits on protected branches
  • Path boundary enforcement — block writes outside project directory
  • Network access control — block WebFetch to internal/private URLs
  • CI/CD protection — require confirmation for Dockerfiles, CI configs, Terraform
  • Cowork conflict detection — warn when teammate modified the same file

Customize via .waxell/guard.json:

{
  "git_protected_branches": ["main", "master", "staging"],
  "max_file_changes": 30,
  "path_boundary_enabled": true
}

See the full Claude Code docs for server-side policies, MCP tools, and all configuration options.

Session Tracking

Group related agent runs into sessions:

from waxell_observe import generate_session_id, waxell_agent

session = generate_session_id()  # "sess_" + 16 hex chars

@waxell_agent(agent_name="chat-agent", session_id=session)
async def handle_message(msg: str) -> str:
    ...

Tags and Metadata

Attach searchable metadata to spans:

@waxell_agent(agent_name="my-agent")
async def run_agent(query: str, waxell_ctx=None) -> str:
    waxell_ctx.add_tags(environment="production", version="1.2.0")
    waxell_ctx.add_metadata(user_id="u_123", prompt_template="v3")
    ...

Governance

Policy Enforcement

Policies configured in the Waxell platform are automatically enforced:

from waxell_observe import waxell_agent, PolicyViolationError

@waxell_agent(agent_name="my-agent", enforce_policy=True)
async def run_agent(query: str) -> str:
    ...  # Raises PolicyViolationError if blocked by policy

# Disable policy enforcement for development
@waxell_agent(agent_name="my-agent", enforce_policy=False)
async def run_agent_dev(query: str) -> str:
    ...

Mid-Execution Governance

Enable cooperative policy checks during agent execution:

@waxell_agent(agent_name="my-agent", mid_execution_governance=True)
async def run_agent(query: str, waxell_ctx=None) -> str:
    # Each record_step() triggers a server-side policy check.
    # If a policy blocks, PolicyViolationError is raised.
    waxell_ctx.record_step("step_1", {"tokens_so_far": 5000})
    waxell_ctx.record_step("step_2", {"tokens_so_far": 12000})  # May halt here
    ...

Configuration

Configuration is resolved in priority order:

  1. Explicit init() arguments (highest)
  2. Environment variables
  3. Config file (~/.waxell/config)

init() Parameters

waxell_observe.init(
    # Core
    api_key="wax_sk_...",        # API key (or WAXELL_API_KEY env var)
    api_url="https://...",        # API URL (or WAXELL_API_URL env var)
    debug=False,                  # Enable debug logging + console span export

    # Tracing
    capture_content=False,        # Include prompt/response content in traces
    resource_attributes=None,     # Custom OTel resource attributes on all spans
                                  # e.g. {"deployment.environment": "production"}

    # AI/ML Instrumentation
    instrument=None,              # List of AI/ML libraries (None = auto-detect all)
                                  # e.g. ["openai", "anthropic"]

    # Infrastructure Instrumentation
    instrument_infra=True,        # Enable infra auto-instrumentation
    infra_libraries=None,         # Allowlist (None = auto-detect all installed)
                                  # e.g. ["redis", "httpx", "psycopg2"]
    infra_exclude=None,           # Blocklist — exclude specific libraries
                                  # e.g. ["celery", "grpc"]

    # Prompt Guard
    prompt_guard=False,           # Enable client-side PII/injection detection
    prompt_guard_server=False,    # Enable server-side ML-powered detection
    prompt_guard_action="block",  # "block", "warn", or "redact"
)

Environment Variables

Variable Description Default
WAXELL_API_KEY API key (wax_sk_...) —
WAXELL_API_URL Platform API URL —
WAXELL_OBSERVE Kill switch — set to false to disable all telemetry true
WAXELL_INSTRUMENT_INFRA Enable/disable infrastructure instrumentation true
WAXELL_INFRA_EXCLUDE Comma-delimited list of infra libraries to exclude —
WAXELL_DEBUG Enable debug logging false
WAXELL_CAPTURE_CONTENT Capture prompt/response content false
WAXELL_PROMPT_GUARD Enable prompt guard false

Config File (~/.waxell/config)

INI-format config file with profile support:

[default]
api_url = https://api.waxell.dev
api_key = wax_sk_...
instrument_infra = true
infra_exclude = celery,grpc
debug = false
capture_content = false

[local]
api_url = http://localhost:8001
api_key = wax_sk_...
instrument_infra = true

The config file is created automatically by wax login or can be edited manually.

Kill Switch

Disable all observability with a single environment variable:

export WAXELL_OBSERVE=false  # Disables init(), auto-instrumentation, and span emission

The agent code runs identically — only telemetry emission is suppressed.

Architecture

Your Agent Code
    │
    ├─► waxell-observe SDK (this package)
    │       ├─► Auto-instrumented AI/ML spans (OpenAI, Anthropic, 145+ libraries)
    │       ├─► Auto-instrumented infra spans (HTTP, Redis, PostgreSQL, 30 libraries)
    │       ├─► HTTP REST API (runs, LLM calls, steps, policy checks)
    │       └─► OTel OTLP/HTTP (spans with gen_ai.* semantic conventions)
    │
    └─► Waxell Platform
            ├─► OTel Collector (tenant routing via X-Scope-OrgID)
            ├─► Tempo (distributed traces)
            ├─► Loki (structured logs)
            ├─► PostgreSQL (runs, LLM records, policy audit)
            └─► Grafana (dashboards, trace explorer)

Key design principles:

  • Dual data path: OTel spans flow to Tempo for trace visualization; HTTP REST calls persist structured data to PostgreSQL for cost tracking, governance, and analytics.
  • Zero latency impact: OTel spans export in a background thread via BatchSpanProcessor. Agent execution sees <0.01ms p99 overhead.
  • Fail-safe: If the Waxell backend is unreachable, telemetry is silently dropped. Agent execution continues unimpaired.
  • Multi-tenant: Tenant isolation via API key resolution at SDK init. Spans include waxell.tenant_id as an OTel resource attribute for collector routing.

Requirements

  • Python 3.10+
  • httpx (included in base install)
  • OpenTelemetry SDK 1.20+ (optional, via [otel] extra)
  • Infrastructure instrumentors (optional, via [infra] extra)

Development

# Install with dev dependencies
pip install -e "observe/waxell-observe[dev,otel,infra]"

# Run SDK tests
pytest observe/waxell-observe/tests/ -v

# Run integration tests (requires Django)
cd controlplane/waxell-controlplane
DJANGO_SETTINGS_MODULE=config.settings pytest ../../tests/integration/ -v

# Run benchmarks
pytest tests/benchmarks/ -v --tb=short

License

Apache 2.0 — see LICENSE for details.

Metadata

Release files for waxell-observe 0.1.5a1

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

Built distributions (wheels)

Table of built distributions (wheels) for waxell-observe 0.1.5a1
File
waxell_observe-0.1.5a1-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
waxell_observe-0.1.5a1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
waxell_observe-0.1.5a1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
waxell_observe-0.1.5a1-cp314-cp314-macosx_11_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 11.0+ x86-64 Details
waxell_observe-0.1.5a1-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
waxell_observe-0.1.5a1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
waxell_observe-0.1.5a1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
waxell_observe-0.1.5a1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
waxell_observe-0.1.5a1-cp313-cp313-macosx_11_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 11.0+ x86-64 Details
waxell_observe-0.1.5a1-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
waxell_observe-0.1.5a1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
waxell_observe-0.1.5a1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
waxell_observe-0.1.5a1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
waxell_observe-0.1.5a1-cp312-cp312-macosx_11_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 11.0+ x86-64 Details
waxell_observe-0.1.5a1-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
waxell_observe-0.1.5a1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
waxell_observe-0.1.5a1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
waxell_observe-0.1.5a1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
waxell_observe-0.1.5a1-cp311-cp311-macosx_11_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 11.0+ x86-64 Details
waxell_observe-0.1.5a1-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
waxell_observe-0.1.5a1-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
waxell_observe-0.1.5a1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
waxell_observe-0.1.5a1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
waxell_observe-0.1.5a1-cp310-cp310-macosx_11_0_x86_64.whl CPython 3.10 CPython 3.10 macOS 11.0+ x86-64 Details
waxell_observe-0.1.5a1-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details

Total release size: 128.0 MB

Release files / waxell_observe-0.1.5a1-cp314-cp314-win_amd64.whl

Download URL waxell_observe-0.1.5a1-cp314-cp314-win_amd64.whl
Size 3.0 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
5f090aebc55e89c1c6374bb2b85a5d730d3d270b8f4e86e72ef307e761cfabe9
BLAKE2b-256 checksum
How to use checksums
e80e0a27b023622c9d87e990edbade2f4e42304ab8adaf8e9ff9035b526001c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / waxell_observe-0.1.5a1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL waxell_observe-0.1.5a1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 8.1 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
3cdeedd4c7c385eff4413af46c0e77136556618fba4f2d9e6f9b09222c256616
BLAKE2b-256 checksum
How to use checksums
c36863f249c75f266684aa0e8c88045fa4c5d9be05cebe815edd7a88ad572af9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL waxell_observe-0.1.5a1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 7.9 MB
Tags CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
cd4699f7f27be5a78dcaa36606abb2a69604db3eff678cede1c56e874372dd68
BLAKE2b-256 checksum
How to use checksums
f7e36a138bd6a41e8c6da85d76f14d3901c294f3d55adac77dc42f8975d65658
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp314-cp314-macosx_11_0_x86_64.whl

Download URL waxell_observe-0.1.5a1-cp314-cp314-macosx_11_0_x86_64.whl
Size 3.2 MB
Tags CPython 3.14 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
49b5c358a394443f6c80aa61a467cdacc7b80b5c454c07b236250d293bbb4cc0
BLAKE2b-256 checksum
How to use checksums
110b5ec3f3b66f57452841854052723b86682dca3cb2ccf4759524bbd890bd44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp314-cp314-macosx_11_0_arm64.whl

Download URL waxell_observe-0.1.5a1-cp314-cp314-macosx_11_0_arm64.whl
Size 3.1 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ad500697b6cb1711b359d20575169d420e91ccff869b7ed690e8ae3cbbd64d48
BLAKE2b-256 checksum
How to use checksums
90a9e0b25d6e1012ab3084e0696f449e35619534320fdccd8118c4d93cf7eb75
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp313-cp313-win_amd64.whl

Download URL waxell_observe-0.1.5a1-cp313-cp313-win_amd64.whl
Size 3.0 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
c99f24d279aa71d3f2744212cca3dc5c6af2867b62c3bfb2d15155363d3643b0
BLAKE2b-256 checksum
How to use checksums
4c515a422d5784310c3927dd2654fb309d46dcc08ccbf34d47ba92fb4c58f5df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / waxell_observe-0.1.5a1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL waxell_observe-0.1.5a1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 8.2 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
eacde0fd1e572a8db8629ea21d5fda3e7ecd5888bc380be8fa057ef41fb01aaf
BLAKE2b-256 checksum
How to use checksums
4efc0d91c87f4d539627d14493a9b38e2c631eea96bb6fd9c4aebc7e0c7b93ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL waxell_observe-0.1.5a1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 7.9 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
ab232a1e39f87ce62630684d7b206877f1589967d57d5dc7d6c22f63e419d65c
BLAKE2b-256 checksum
How to use checksums
93be7a057e6882691a6803a002034b0c14f9c62f3e6350d6f98bef43dc91a39d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp313-cp313-macosx_11_0_x86_64.whl

Download URL waxell_observe-0.1.5a1-cp313-cp313-macosx_11_0_x86_64.whl
Size 3.2 MB
Tags CPython 3.13 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
7addde3bf063a8b90c9afa79bce7cfba583388363acfafb34b009df268cfdb3f
BLAKE2b-256 checksum
How to use checksums
ae573f879fa69d8b98ee4252fc64eefb33894bafba504b90aa3c58ea50d17774
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp313-cp313-macosx_11_0_arm64.whl

Download URL waxell_observe-0.1.5a1-cp313-cp313-macosx_11_0_arm64.whl
Size 3.1 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d3f3e72104cf7a86f6fd102e1f6aba748c1a53f9486d59dd20909f08b3d305a3
BLAKE2b-256 checksum
How to use checksums
9e36dccdd5ac952a1ed506e7371cb917b13da3d7e1aeb606d72f12fe78c6c312
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp312-cp312-win_amd64.whl

Download URL waxell_observe-0.1.5a1-cp312-cp312-win_amd64.whl
Size 3.0 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
bb11d900210ae80f495c853a41b67a982efdfb0b6ae8d57db48e4b1fbc23c6f2
BLAKE2b-256 checksum
How to use checksums
d994664bf812a622aa0f982f8fffc1df5bb770cb214c5a6db73d391b96d6f179
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / waxell_observe-0.1.5a1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL waxell_observe-0.1.5a1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 8.2 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4bd3d2bab4e90fd5224200e9f56cd0a35106db948791f227b309885381e1866e
BLAKE2b-256 checksum
How to use checksums
f8c9cc0e229c8a50e9dc9b145ef14495bea15da704862942ffad6fe410d10cce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL waxell_observe-0.1.5a1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 8.0 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
a9cf8c56856c03865129406e5cf71abf1c04b8c754e7f2a083c4fbd6fa86a76f
BLAKE2b-256 checksum
How to use checksums
f892e80362907a5b38d98e4c0e663bbeb4e068b8d66f01209e9d91105e716ec2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp312-cp312-macosx_11_0_x86_64.whl

Download URL waxell_observe-0.1.5a1-cp312-cp312-macosx_11_0_x86_64.whl
Size 3.2 MB
Tags CPython 3.12 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
1350f3c4a18445d63b143562396a9f1c0e3b72f8592e354751192103e7af1922
BLAKE2b-256 checksum
How to use checksums
72301b2fac1f628480e5aaf20e81b81b082c69d0861aaae610835b5ff75256f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp312-cp312-macosx_11_0_arm64.whl

Download URL waxell_observe-0.1.5a1-cp312-cp312-macosx_11_0_arm64.whl
Size 3.1 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
559ad3dd1138460326ceb6334094fd9b0b6cb7adddf58e49a8370b9f3326419c
BLAKE2b-256 checksum
How to use checksums
98ff56cbc41fdee2ffce2fb45fb0976fb121900bd3815373d454ce9d4880fbe6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp311-cp311-win_amd64.whl

Download URL waxell_observe-0.1.5a1-cp311-cp311-win_amd64.whl
Size 3.0 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
faf3221f71eec4181d8d8bd150eb2cafd8567de6a7056b36df198ef2806ba832
BLAKE2b-256 checksum
How to use checksums
c62ef25d74c00ab3ff3454079310079a24797663df1339a6e5325363a40990d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / waxell_observe-0.1.5a1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL waxell_observe-0.1.5a1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 8.5 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ba51ba20081cc9240dc46291d33a780806437e7d7426d85f3940864a95dd61b5
BLAKE2b-256 checksum
How to use checksums
93206eb0942a9fc73e03563963373580af41b9ad8a740962be8291145d1b4920
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL waxell_observe-0.1.5a1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 8.3 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
147157db8c46abf29e056b97254dc8804f2057ba934ab4777491fa7ff87714f2
BLAKE2b-256 checksum
How to use checksums
d242291757f20ce928736dd445aa7d5f7f76157ae716b7ce50c7536821b36a47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp311-cp311-macosx_11_0_x86_64.whl

Download URL waxell_observe-0.1.5a1-cp311-cp311-macosx_11_0_x86_64.whl
Size 3.2 MB
Tags CPython 3.11 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
2d5280658da168a61d8eb796fc4c0620ed2cfd63e3620428032da750e3c90bfd
BLAKE2b-256 checksum
How to use checksums
16c37e37be14a62faa2475dc869958c0bf1583274ce18e426343a939486b853c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp311-cp311-macosx_11_0_arm64.whl

Download URL waxell_observe-0.1.5a1-cp311-cp311-macosx_11_0_arm64.whl
Size 3.1 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
fcf0b3abd6780fe7ece989258ca5e500feca5f707905bd4acdc15d48b9e12b2e
BLAKE2b-256 checksum
How to use checksums
a40ac81625fb5a808c0467167d79e5f859e988002c934c9996284d8a66f9c10f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp310-cp310-win_amd64.whl

Download URL waxell_observe-0.1.5a1-cp310-cp310-win_amd64.whl
Size 3.0 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
b48aea0789d55efcff87125e287bc62b914b2ebc27582b4cafef9a0de9b70b4a
BLAKE2b-256 checksum
How to use checksums
da3ea1c1c89707ce8de31b99cde179c2fb16d9ac6ca292170cb7b1eb28bcc7bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / waxell_observe-0.1.5a1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL waxell_observe-0.1.5a1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 8.2 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
9340092d4594d7e661bb9138796ed02b06f38abcdd3dd4c13c1a4270b40fec7a
BLAKE2b-256 checksum
How to use checksums
72ec3b96167878b85e291033747ece904ef096f23bff62110ad8ec0c964d6c20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL waxell_observe-0.1.5a1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 8.1 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
87a72bbf7e82903cdac433855abfc782aa8178152ce1ebd2d695499404f26eda
BLAKE2b-256 checksum
How to use checksums
f468a4aa19891105bbf084eaa8e5a4c476c18e9713a0f57b30d86f7101259848
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp310-cp310-macosx_11_0_x86_64.whl

Download URL waxell_observe-0.1.5a1-cp310-cp310-macosx_11_0_x86_64.whl
Size 3.2 MB
Tags CPython 3.10 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
9071ab80bfa238c54c3aedaf6019e1b56feabd1662cb389320add7841023cc6a
BLAKE2b-256 checksum
How to use checksums
99824c21a78fbe1ca4c3dfeee2b00843d70a372ae0329dfdbce7f809d6ec6ec6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / waxell_observe-0.1.5a1-cp310-cp310-macosx_11_0_arm64.whl

Download URL waxell_observe-0.1.5a1-cp310-cp310-macosx_11_0_arm64.whl
Size 3.1 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d95172a79b994de8f97db18f2710e2fed78f2989e793f6da308cecb2cf7cbf70
BLAKE2b-256 checksum
How to use checksums
9999f04542fac3c1dd7a13bfaa16738720b2a4640a118243e11b5fd7fd42fd47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12
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