Python SDK
Python SDK: your first call
The Python SDK is one class, CadyClient, that calls the same tools as the CLI from your own code.
import asyncio
from cady_cli import CadyClient
async def main():
async with CadyClient(company="COMPANY_UUID") as cady:
setup = await cady.call("cady_read", {"refs": ["company:setup"]})
print(setup)
asyncio.run(main())call(tool, arguments) sends one call and returns its result as a dictionary. It prints your company’s setup record.
Sign-in
The client reuses the sign-in saved by cady setup on this machine. On a server, pass token= or set CADY_ACCESS_TOKEN.
Company
Pass company= every time. The SDK does not read project or machine defaults, and a call that names a different company fails before anything is sent.
Find tools
await cady.discover()lists the tools this connection serves.await cady.describe("work_read")returns one tool’s exact fields.await cady.run({"tool": ..., "arguments": ...})sends a call that Cady handed back to you.
Install
The SDK is the cady_cli Python package, for Python 3.13 or later. It is not published to a package index yet, and the install script’s cady does not include it.
Next: errors and batches.
Next: Python SDK: errors and batches
For agents: this page as Markdown.