Dobby SDKs
Dobby ships two SDK families. Most teams want the Collector — it streams your agent's activity to Dobby for governance + compliance. The Client SDK is an advanced tool for calling Dobby's APIs from your own code. Pick by job:
"I want Dobby to see what my agent is doing"
Native Agent Telemetry — instrument your own agent code, stream events to Dobby for governance + compliance scans.
"I want to call Dobby's APIs from code"
Chat completions, task management, approvals, agent fleet, key management — wrapped as typed resources.
Collector SDK — Native Agent Telemetry
The Collector SDKs instrument YOUR agent code (LangChain / CrewAI / Gemini / Mastra / Vercel AI SDK / custom OpenAI scripts) and stream runs / tool calls / LLM calls to Dobby for governance + compliance scans. This is the path most customers start with.
Python Collector
dobby-collectorInstrument LangChain / CrewAI / AutoGen / OpenAI / Gemini agents. v0.5.0 LIVE on PyPI.
pip install dobby-collectorNode Collector
@dobbyai/collectorInstrument LangChain.js / Mastra / Vercel AI SDK / custom agents. v0.1.0 LIVE on npm.
npm install @dobbyai/collectorClient SDK — Build on the Dobby APIAdvanced
The Client SDK is for building ON the platform — calling Dobby's APIs (LLM gateway, tasks, approvals, agent fleet, key management) from your own code, CI/CD, or another agent. Most customers don't need this; use the Collector above to get governance on your agents.
Don't confuse them — the Collector streams agent telemetry TO Dobby; the Client SDK calls Dobby's APIs. Different packages, different problems.
Python
dobby-ai-sdkOfficial Python API client with sync & async support. Wraps OpenAI SDK for LLM calls.
pip install dobby-ai-sdkJavaScript / TypeScript
@dobbyai/sdkTypeScript-native API client with full type safety. Works in Node.js 18+.
npm install @dobbyai/sdkQuick Start
from dobby_sdk import DobbyClient
client = DobbyClient(api_key="gk_user_...")
# Make an LLM call through Dobby Gateway
response = client.chat.completions.create(
model="claude-sonnet-4-6",
messages=[{"role": "user", "content": "Hello from Dobby!"}],
)
print(response.choices[0].message.content)
# Create a task
task = client.tasks.create(title="Review PR #42", priority="high")
# Check costs
costs = client.costs.summary(period="30d")Client SDK Capabilities
OpenAI Compatible
Use standard OpenAI SDK patterns — just point to Dobby Gateway
Task Management
Create, list, update tasks programmatically
Approvals (HITL)
List pending approvals, approve or reject from code
Agent Fleet
Register external agents, pause/resume, monitor health
Cost Tracking
Query FinOps data — per-agent, per-provider breakdowns
Key Management
Create, rotate, revoke gateway API keys
Authentication
All Client SDK calls are authenticated with a Dobby Gateway API key. You can pass it directly or set the DOBBY_API_KEY environment variable.
| Key Tier | Prefix | Use Case | Rate Limit |
|---|---|---|---|
| User | gk_user_* | IDE users | 100 RPM |
| Service | gk_svc_* | Agents, CI/CD | 500 RPM |
| Temporary | gk_tmp_* | Short-lived | 30 RPM |