Catalog PyPI
Back to packageRELEASE DETAILS

0.4.0

PyPI

agentready-sdk

Cut your AI token costs by 40-60%. Drop-in proxy for OpenAI, LangChain, LlamaIndex, CrewAI.

aicompressioncost-reductioncrewailangchainllamaindexllmmcpopenaiproxytokens
Published20 Feb 2026
Direct dependencies5
Transitive dependenciesNot calculated

README

Version 0.4.0 documentation

AgentReady — Python SDK

Cut AI token costs by 40-60%. Drop-in proxy for OpenAI, LangChain, LlamaIndex, CrewAI.

PyPI Python License: MIT

Install & Setup (30 seconds)

pip install agentready-sdk
agentready init

This opens your browser → create a free account → API key is saved to .env automatically.

Just swap your base_url. Zero code changes to your existing OpenAI calls:

from openai import OpenAI

client = OpenAI(
    base_url="https://agentready.cloud/v1",   # ← only change needed
    api_key="ak_...",                          # your AgentReady key
    default_headers={
        "X-Upstream-API-Key": "sk-...",        # your OpenAI key
    },
)

# Everything works exactly like before — but 40-60% cheaper
response = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": your_long_prompt}],
)

One-liner Helper

import agentready

client = agentready.openai("ak_...", upstream_key="sk-...")
response = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "Hello!"}],
)

Async Client

client = agentready.create_client("ak_...", upstream_key="sk-...", async_client=True)
response = await client.chat.completions.create(...)

Method 2 — Monkey-Patch

Patch all OpenAI/Anthropic calls globally with two lines:

from agentready import patch_openai
patch_openai(api_key="ak_...")

# All existing OpenAI code is now compressed automatically
from openai import OpenAI
client = OpenAI()
response = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": your_long_prompt}],
)

Or patch everything at once:

import agentready
agentready.api_key = "ak_..."
agentready.auto()  # patches OpenAI + Anthropic

Method 3 — Manual Compression

For fine-grained control:

import agentready
agentready.api_key = "ak_..."

result = agentready.compress("Your long prompt text here...")
print(result.text)              # compressed text
print(result.tokens_saved)      # 1,247
print(result.reduction_percent) # 52.3
print(result.savings_usd)       # 0.0374

Framework Integrations

LangChain

from agentready.integrations.langchain import TokenCutCallbackHandler
from langchain_openai import ChatOpenAI

handler = TokenCutCallbackHandler(api_key="ak_...")
llm = ChatOpenAI(model="gpt-4o", callbacks=[handler])
response = llm.invoke("Your very long prompt here...")

LlamaIndex

from agentready.integrations.llamaindex import TokenCutPostprocessor

postprocessor = TokenCutPostprocessor(api_key="ak_...")
query_engine = index.as_query_engine(
    node_postprocessors=[postprocessor]
)

CrewAI

from agentready.integrations.crewai import create_crewai_llm
from crewai import Agent, Task, Crew

llm = create_crewai_llm(
    agentready_key="ak_...",
    upstream_key="sk-...",
    model="gpt-4o",
)

agent = Agent(
    role="Researcher",
    goal="Research AI trends",
    backstory="Expert AI researcher.",
    llm=llm,
)

How It Works

AgentReady's proxy sits between your code and OpenAI. Every request is:

  1. Compressed — redundant phrasing removed, verbose text condensed
  2. Forwarded — sent to OpenAI with your upstream key
  3. Returned — response comes back unchanged

Code blocks, URLs, numbers, and key terms are always preserved.

Configuration

# Proxy mode — compression level via header
client = agentready.openai(
    "ak_...",
    upstream_key="sk-...",
    compression_level="aggressive",  # "light", "standard", "aggressive"
)

# Patch mode — configuration via arguments
agentready.auto(
    level="medium",
    preserve_code=True,
    min_tokens=100,
)

Pricing

Beta — Free unlimited usage. After beta: pay-per-token, ~60% less than direct API costs.

Get your API key at agentready.cloud

License

MIT — AgentReady

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 9

Native requirements
5 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
httpx
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
httpx>=0.24.0runtime
openai
Environment
{
  "extras": "",
  "marker": "extra == \"openai\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
openai>=1.0.0; extra == "openai"runtime
langchain-core
Environment
{
  "extras": "",
  "marker": "extra == \"langchain\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
langchain-core>=0.1.0; extra == "langchain"runtime
llama-index-core
Environment
{
  "extras": "",
  "marker": "extra == \"llamaindex\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
llama-index-core>=0.10.0; extra == "llamaindex"runtime
crewai
Environment
{
  "extras": "",
  "marker": "extra == \"crewai\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
crewai>=0.28.0; extra == "crewai"runtime
openai
Environment
{
  "extras": "",
  "marker": "extra == \"all\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
openai>=1.0.0; extra == "all"runtime
langchain-core
Environment
{
  "extras": "",
  "marker": "extra == \"all\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
langchain-core>=0.1.0; extra == "all"runtime
llama-index-core
Environment
{
  "extras": "",
  "marker": "extra == \"all\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
llama-index-core>=0.10.0; extra == "all"runtime
crewai
Environment
{
  "extras": "",
  "marker": "extra == \"all\"",
  "requires_python": ">=3.8",
  "evaluation": "NOT_EVALUATED"
}
crewai>=0.28.0; extra == "all"runtime

Distribution files

2 collected
agentready_sdk-0.4.0-py3-none-any.whl

bdist_wheel · 16.72 KB · Python py3

Source file
agentready_sdk-0.4.0.tar.gz

sdist · 14.32 KB · Python source

Source file

Repository

PENDING
christianbragliasitibt/agentready

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 23:10 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:2d3f21724c65fb2e96e6e4fdde8e2386a972259b33928baf0bc31de53d44fbbb

Other collected versions

View all collected versions →