
Company News
Socket Joins New OpenJS Program to Fund Node.js Security Work
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.
@dobbyai/sdk
Advanced tools
Official JavaScript/TypeScript SDK for the Dobby AI Platform — Home for your AI agents
Official JavaScript/TypeScript SDK for the Dobby AI Platform — Home for your AI agents.
npm install @dobbyai/sdk
import { DobbyClient } from '@dobbyai/sdk';
const dobby = new DobbyClient({
apiKey: 'gk_user_...', // or set DOBBY_API_KEY env var
orgId: 'org_...',
tenantId: 'tenant_...',
});
// LLM completions (OpenAI-compatible)
const response = await dobby.chat.completions.create({
model: 'claude-sonnet-4-20250514',
messages: [{ role: 'user', content: 'Hello!' }],
});
console.log(response.choices[0].message.content);
Route LLM calls through Dobby's unified gateway with cost tracking, policy enforcement, and audit trail.
// Streaming
const stream = await dobby.chat.completions.create({
model: 'gpt-4o-mini',
messages: [{ role: 'user', content: 'Explain AI agents' }],
stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content || '');
}
const task = await dobby.tasks.create({
title: 'Review PR #42',
description: 'Security review for auth changes',
priority: 'high',
});
const tasks = await dobby.tasks.list({ status: 'pending' });
const pending = await dobby.approvals.list({ status: 'pending' });
await dobby.approvals.approve('task_abc123', 'LGTM');
await dobby.approvals.reject('task_def456', 'Needs tests');
// List all agents
const fleet = await dobby.agents.list();
// Register an external agent
await dobby.agents.register({
name: 'content-writer',
framework: 'crewai',
endpoint_url: 'https://my-agent.example.com/webhook',
});
// Pause / resume
await dobby.agents.pause('ext_abc123');
await dobby.agents.resume('ext_abc123');
// Trigger an agent immediately
const result = await dobby.agents.trigger('ext_abc123', {
payload: { topic: 'AI governance' },
});
// Create a recurring schedule
await dobby.agents.createSchedule('ext_abc123', {
name: 'Daily Blog Writer',
schedule_config: { frequency: 'daily', time: '09:00' },
task_title: 'Write blog post',
trigger_payload: { topic: 'AI governance' },
});
// Get trigger history
const history = await dobby.agents.triggers('ext_abc123', {
include_stats: true,
});
const costs = await dobby.costs.summary({ period: '30d' });
const agentCosts = await dobby.costs.byAgent({ period: '7d' });
const keys = await dobby.keys.list();
const newKey = await dobby.keys.create({
name: 'production-key',
scopes: ['llm:chat', 'mcp:tools'],
});
| Option | Env Variable | Default | Description |
|---|---|---|---|
apiKey | DOBBY_API_KEY | - | Gateway API key (required) |
baseUrl | DOBBY_BASE_URL | https://dobby-ai.com | Platform URL |
orgId | DOBBY_ORG_ID | - | Organization ID |
tenantId | DOBBY_TENANT_ID | - | Tenant/workspace ID |
timeout | - | 120000 | Request timeout (ms) |
maxRetries | - | 2 | Max retry attempts |
import { DobbyClient, DobbyAuthError, DobbyRateLimitError, DobbyBudgetExceededError } from '@dobbyai/sdk';
try {
await dobby.chat.completions.create({ ... });
} catch (err) {
if (err instanceof DobbyAuthError) {
console.error('Invalid or expired API key');
} else if (err instanceof DobbyRateLimitError) {
console.error('Rate limit hit, retry later');
} else if (err instanceof DobbyBudgetExceededError) {
console.error('Budget limit reached');
}
}
MIT
FAQs
Official JavaScript/TypeScript SDK for the Dobby AI Platform — Home for your AI agents
The npm package @dobbyai/sdk receives a total of 0 weekly downloads. As such, @dobbyai/sdk popularity was classified as not popular.
We found that @dobbyai/sdk demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Company News
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.

Security News
Two compromised GitHub Actions were re-enabled with malicious tags intact, exposing thousands of downstream repositories to Mini Shai-Hulud.

Research
/Security News
A malicious Firefox extension fetches its payload after installation to evade detection, steal Google session cookies, and automate account takeover.