Skip to main content

Introduction

RunAgent provides native SDKs for multiple programming languages, making it easy to integrate deployed agents into your applications. All SDKs follow consistent patterns while respecting language-specific conventions.

Available SDKs

Python

Full-featured SDK with sync/async support

Rust

High-performance SDK with zero-cost abstractions

JavaScript

Coming Soon - Node.js and browser support

Go

Coming Soon - Idiomatic Go client

Common Features

All SDKs provide:
  • Authentication: API key and token management
  • Synchronous Calls: Request/response pattern
  • Asynchronous Support: Non-blocking operations
  • Streaming: Real-time response streaming
  • Error Handling: Consistent error types
  • Retry Logic: Automatic retry with backoff
  • Type Safety: Language-appropriate typing

Quick Comparison

Basic Usage Pattern

All SDKs follow a similar pattern:

Python

Rust

JavaScript

Go

Authentication

SDKs support multiple authentication methods:

Environment Variable

Set RUNAGENT_API_KEY and SDKs will use it automatically:

Direct Configuration

Pass API key during initialization:

Configuration File

SDKs can read from ~/.runagent/config.json:

Error Handling

All SDKs provide consistent error types:

Advanced Features

Streaming Responses

For real-time applications:

Batch Processing

Process multiple requests efficiently:

Custom Headers

Add custom headers for tracking:

SDK Selection Guide

Choose your SDK based on:

Python SDK

Best for:
  • Data science and ML applications
  • Backend services
  • Scripts and automation
  • Jupyter notebooks

Rust SDK

Best for:
  • High-performance applications
  • Systems programming
  • WebAssembly targets
  • Memory-efficient applications
  • Concurrent processing

JavaScript SDK

Best for:
  • Web applications
  • Node.js backends
  • React/Vue/Angular apps
  • Serverless functions

Go SDK

Best for:
  • Microservices
  • Cloud-native applications
  • CLI tools
  • Concurrent processing

Performance Considerations

Migration Guide

Moving between SDKs? The concepts remain the same:
  1. Client initialization - Same parameters
  2. Method names - Consistent across languages
  3. Response format - JSON-compatible structures
  4. Error handling - Similar error types

Getting Help

  • Documentation: Language-specific guides
  • Examples: GitHub repositories with samples
  • Community: Discord channels for each SDK
  • Support: [email protected]

Next Steps

Python SDK

Start with our most mature SDK

Rust SDK

High-performance native SDK

API Reference

Understand the underlying API

Still have a question?