Skip to main content

Official Python client for the Agent Ledger API

Project description

agent-ledger-sdk

Python SDK for Agent Ledger. Instrument your agents, stream session data, and enforce budget guardrails with a simple HTTP client.

Installation

pip install agent-ledger-sdk
# or
uv add agent-ledger-sdk

Quick start

from agent_ledger_sdk import AgentLedgerClient, BudgetGuardrailError

ledger = AgentLedgerClient(api_key="alk_abc123")

session_id = ledger.start_session("support-bot")
try:
    ledger.log_llm_call(
        session_id,
        {
            "step_index": 0,
            "model": "gpt-4.1",
            "provider": "openai",
            "prompt": "Draft a welcome email",
            "response": "Hello ...",
            "tokens_in": 120,
            "tokens_out": 96,
            "latency_ms": 2100,
        },
    )
    ledger.end_session(session_id, "success")
except BudgetGuardrailError as exc:
    print("Budget exceeded", exc.details)
    ledger.end_session(session_id, "error", error_message="Budget hit")

API overview

Method Description
AgentLedgerClient(api_key, base_url=None, timeout=10.0) Creates a reusable HTTP client. base_url falls back to AGENT_LEDGER_BASE_URL, otherwise the hosted production endpoint.
start_session(agent_name) Begins a session and returns its ID.
end_session(session_id, status, error_message=None) Completes a session.
log_events(session_id, events) Low-level helper that posts arbitrary event payloads.
log_llm_call, log_tool_call, log_tool_result Typed shortcuts that add the type field for you.

Budget guardrails

When Agent Ledger blocks spending for an agent, the SDK raises BudgetGuardrailError. Inspect the .details attribute to see the remaining budget and attempted spend so you can pause execution gracefully.

Thread safety & async

AgentLedgerClient wraps a single httpx.Client. Reuse the instance across calls and call close() when shutting down, or use it as a context manager. For async workloads, you can build a thin wrapper around httpx.AsyncClient; contributions welcome!

Development

cd packages/sdk-py
python -m venv .venv && source .venv/bin/activate
pip install -e .[dev]
pytest

License

MIT

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

agent_ledger_sdk-0.0.2.tar.gz (3.7 kB view details)

Uploaded Source

Built Distribution

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

agent_ledger_sdk-0.0.2-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file agent_ledger_sdk-0.0.2.tar.gz.

File metadata

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

File hashes

Hashes for agent_ledger_sdk-0.0.2.tar.gz
Algorithm Hash digest
SHA256 1a1c951332050b71356f15529afea6226490ebfc98f451056a2bb953bdad6b08
MD5 1252220d606688fcaa1c4b058f39ad78
BLAKE2b-256 e94e8eb0113007774d05db36bf73d17aded1fc026128ade41772e3d61d3e533a

See more details on using hashes here.

File details

Details for the file agent_ledger_sdk-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for agent_ledger_sdk-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6949880fb3307cfc5e54f555924c711dd7b8461350a08bbc90f75df9de7dd99c
MD5 431dd1f8646bc6913f041cb7bbf1841c
BLAKE2b-256 d8d500d060216155c51e37722ff12709e342265e54f5d1e6e54c83769fcd8b51

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